summaryrefslogblamecommitdiff
path: root/db/re/achievement_db.conf
blob: 6833484002f571b4c1c48f919cdd5a9256ca3a74 (plain) (tree)





































































































































                                                                                                                                                        
//================= Hercules Database =====================================
//=       _   _                     _
//=      | | | |                   | |
//=      | |_| | ___ _ __ ___ _   _| | ___  ___
//=      |  _  |/ _ \ '__/ __| | | | |/ _ \/ __|
//=      | | | |  __/ | | (__| |_| | |  __/\__ \
//=      \_| |_/\___|_|  \___|\__,_|_|\___||___/
//================= License ===============================================
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
//= Copyright (C) 2018  Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
//= the Free Software Foundation, either version 3 of the License, or
//= (at your option) any later version.
//=
//= This program is distributed in the hope that it will be useful,
//= but WITHOUT ANY WARRANTY; without even the implied warranty of
//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//= GNU General Public License for more details.
//=
//= You should have received a copy of the GNU General Public License
//= along with this program.  If not, see <http://www.gnu.org/licenses/>.
//=========================================================================
//= Achievement Database
//=========================================================================

achievement_db: (
/*****************************************************************
 *                   Entry Structure
 *****************************************************************
{
	Id: (int)                           Unique ID of the achievement representing it's client-side equivalent.
	Name: (string)                      Name/Title of the Achievement.
	Type: (string)                      Validation type for the achievement.
	                                     [Type]                             [Validation Description] (Trigger)
	                                    ACH_QUEST:                          Specific achievement objective update (Script).
	                                    ACH_KILL_PC_TOTAL:                  (Accumulative) Total kill count. (Player kill)
	                                    ACH_KILL_PC_JOB:                    Kill a player of the specified job. (Player Kill)
	                                    ACH_KILL_PC_JOBTYPE:                Kill a player of the specified job type. (Player Kill)
	                                    ACH_KILL_MOB_CLASS:                 Kill a particular mob class. (Mob Kill)
	                                    ACH_DAMAGE_PC_MAX:                  Maximum damage caused on a player. (Player Damage)
	                                    ACH_DAMAGE_PC_TOTAL:                (Accumulative) Damage on players. (Player Damage)
	                                    ACH_DAMAGE_PC_REC_MAX:              Maximum damage received by a player. (Receive Player Damage)
	                                    ACH_DAMAGE_PC_REC_TOTAL:            (Accumulative) Damage received by players. (Receive Player Damage)
	                                    ACH_DAMAGE_MOB_MAX:                 Maximum damage caused on a monster. (Monster Damage)
	                                    ACH_DAMAGE_MOB_TOTAL:               (Accumulative) Damage caused on monsters. (Monster Damage)
	                                    ACH_DAMAGE_MOB_REC_MAX:             Maximum damage received by a monster. (Receive Monster Damage)
	                                    ACH_DAMAGE_MOB_REC_TOTAL:           (Accumulative) Damage received by monsters. (Receive Monster Damage)
	                                    ACH_JOB_CHANGE:                     Change to a specific job. (Job Change)
	                                    ACH_STATUS:                         Acquire a specific amount of a particular status type. (Stat Change)
	                                    ACH_STATUS_BY_JOB:                  Acquire a specific amount of a status type as a job class. (Stat Change)
	                                    ACH_STATUS_BY_JOBTYPE:              Acquire a specific amount of a status type as a job type. (Stat Change)
	                                    ACH_CHATROOM_CREATE_DEAD:           (Accumulative) Create a chatroom when dead. (Chatroom Creation)
	                                    ACH_CHATROOM_CREATE:                (Accumulative) Create a chatroom. (Chatroom Creation)
	                                    ACH_CHATROOM_MEMBERS:               Gather 'n' members in a chatroom. (Chatroom Join)
	                                    ACH_FRIEND_ADD:                     Add a specific number of friends. (Friend Addition)
	                                    ACH_PARTY_CREATE:                   (Accumulative) Create a specific number of parties. (Party Creation)
	                                    ACH_PARTY_JOIN:                     (Accumulative) Join a specific number of parties. (Party Join)
	                                    ACH_MARRY:                          (Accumulative) Marry a specified number of times. (Marriage)
	                                    ACH_ADOPT_BABY:                     (Accumulative) Get Adopted. (Adoption) 
	                                    ACH_ADOPT_PARENT:                   (Accumulative) Adopt a Baby. (Adoption)
	                                    ACH_ZENY_HOLD:                      Hold a specific amount of zeny in your inventory. (Gain Zeny)
	                                    ACH_ZENY_GET_ONCE:                  Gain a specific amount of zeny in one transaction. (Gain Zeny)
	                                    ACH_ZENY_GET_TOTAL:                 (Accumulative) Gain a specific amount of zeny in total. (Gain Zeny)
	                                    ACH_ZENY_SPEND_ONCE:                Spend a specific amount of zeny in one transaction. (Pay Zeny)
	                                    ACH_ZENY_SPEND_TOTAL:               (Accumulative) Spend a specific amount of zeny in total. (Pay Zeny)
	                                    ACH_EQUIP_REFINE_SUCCESS:           Refine an item to +N. (Successful Refine)
	                                    ACH_EQUIP_REFINE_FAILURE:           Fail to refine an item of +N refine. (Failed Refine)
	                                    ACH_EQUIP_REFINE_SUCCESS_TOTAL:     (Accumulative) Refine an item successfully N times. (Success Refine)
	                                    ACH_EQUIP_REFINE_FAILURE_TOTAL:     (Accumulative) Fail to refine an item N times. (Failed Refine)
	                                    ACH_EQUIP_REFINE_SUCCESS_WLV:       Refine a Weapon of a particular Level to +N. (Success Refine)
	                                    ACH_EQUIP_REFINE_FAILURE_WLV:       Fail to refine a Weapon of a particular level from +N. (Failed Refine)
	                                    ACH_EQUIP_REFINE_SUCCESS_ID:        Refine a particular Item successfully to +N. (Success Refine)
	                                    ACH_EQUIP_REFINE_FAILURE_ID:        Fail to refine a particular item successfully from +N. (Failed Refine)
	                                    ACH_ITEM_GET_COUNT:                 Acquire N amount of an item of a particular ID. (Acquire Item)
	                                    ACH_ITEM_GET_COUNT_ITEMTYPE:        Acquire N amount of items of a particular type mask. (Acquire Item)
	                                    ACH_ITEM_GET_WORTH:                 Acquire an item of buy value N. (Acquire Item)
	                                    ACH_ITEM_SELL_WORTH:                Sell an item of sell value N. (NPC Sell Item)
	                                    ACH_PET_CREATE:                     Successfully tame a pet of a particular mob class. (Successful Pet Tame)
	                                    ACH_ACHIEVE:                        Achieve an Achievement. (Achievement Completion)
	                                    ACH_ACHIEVEMENT_RANK:               Achieve an Achievement Rank. (Achievement Rank Increase)
	Objectives: {                       [Mandatory Field] Objectives of an achievement. Up to 10 objectives per achievement.
	                                    To comply with the client's order of objectives, this list must be in order.
	    *1: {
	        Description: (string)       [Mandatory Field] Description of a particular objective.
	        Criteria: {                 This is a field for achievements whose objectives must meet
	                                    certain criteria before evaluating the player's progress for it.
	            MobId: (mixed)          MonsterId required for an objective.
	                                    For types such as ACH_KILL_MOB_CLASS and ACH_PET_CREATE. Can be either int or string constant.
	            JobId: (mixed)          Array or Single entry of JobIds.
	                                    For types - ACH_KILL_PC_JOBTYPE, ACH_JOB_CHANGE or ACH_STATUS_BY_JOBTYPE.
	                                    Can be either a numeric or string constant.
	            ItemId: (mixed)         ItemId required for an objective.
	                                    For Types such as ACH_ITEM_GET_COUNT. Can be either int or string constant.
	            StatusType: (mixed)     Status Type required for an objective.
	                                    For Types such as ACH_STATUS, ACH_STATUS_BY_JOB, ACH_STATUS_BY_JOBTYPE.
	                                    Types -
	                                    "SP_STR"        - Strength
	                                    "SP_AGI"        - Agility
	                                    "SP_VIT"        - Vitality
	                                    "SP_INT"        - Intelligence
	                                    "SP_DEX"        - Dexterity
	                                    "SP_LUK"        - Luck
	                                    "SP_BASELEVEL"  - Base Level
	                                    "SP_JOBLEVEL"   - Job Level
	                                    Can be either int or string constant.
	            ItemType: (mixed)       Item type that is required for this achievement.
	                                    For Types such as ACH_ITEM_GET_COUNT_ITEMTYPE.
	                                    Can be either int, string or list.
	                                    Refer "Item types" Constants from constants.conf
	            WeaponLevel: (int)      Weapon Level that is required for this achievement. (Eg. 0, 1, 2, 3 or 4).
	                                    For Types such as ACH_EQUIP_REFINE_SUCCESS_WLV and ACH_EQUIP_REFINE_FAILURE_WLV.
	            Achieve: (int)          AchievementID to be achieved.
	                                    For Type - ACH_ACHIEVE.
	        }
	        Goal: (int)                 Target amount to be met for the completion of the objective. Default is 1.
	    }
	    ...
	    *10: {...}
	}
	Rewards: {
	    Bonus: <""> (script)            Script code bonus to be given as a reward for an achievement.
	    Items: {                        Item rewards per achievement. With a maximum defined in mmo.h as MAX_ACHEIVEMENT_ITEM_REWARDS.
	        Apple: 1 (int)              Item ID (int or string constant) : Amount (int)
	    }
	    TitleId: (int)                  ID of the Title (from the Title System) awarded.
	}
	Points: (int)                       Points per achievement given on it's successful completion.
}
 *****************************************************************/
)