blob: dee92f5ce461ba8ae9443b42274125bb8f27a845 (
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.
}
*****************************************************************/
)
|