diff options
Diffstat (limited to 'conf/map')
-rw-r--r-- | conf/map/battle.conf | 85 | ||||
-rw-r--r-- | conf/map/battle/battle.conf | 180 | ||||
-rw-r--r-- | conf/map/battle/battleground.conf | 40 | ||||
-rw-r--r-- | conf/map/battle/client.conf | 174 | ||||
-rw-r--r-- | conf/map/battle/drops.conf | 148 | ||||
-rw-r--r-- | conf/map/battle/exp.conf | 114 | ||||
-rw-r--r-- | conf/map/battle/feature.conf | 73 | ||||
-rw-r--r-- | conf/map/battle/gm.conf | 66 | ||||
-rw-r--r-- | conf/map/battle/guild.conf | 73 | ||||
-rw-r--r-- | conf/map/battle/homunc.conf | 68 | ||||
-rw-r--r-- | conf/map/battle/items.conf | 121 | ||||
-rw-r--r-- | conf/map/battle/misc.conf | 173 | ||||
-rw-r--r-- | conf/map/battle/monster.conf | 267 | ||||
-rw-r--r-- | conf/map/battle/party.conf | 82 | ||||
-rw-r--r-- | conf/map/battle/pet.conf | 100 | ||||
-rw-r--r-- | conf/map/battle/player.conf | 227 | ||||
-rw-r--r-- | conf/map/battle/skill.conf | 326 | ||||
-rw-r--r-- | conf/map/battle/status.conf | 47 | ||||
-rw-r--r-- | conf/map/charhelp.txt | 28 | ||||
-rw-r--r-- | conf/map/help.txt | 307 | ||||
-rw-r--r-- | conf/map/logs.conf | 181 | ||||
-rw-r--r-- | conf/map/map-server.conf | 113 | ||||
-rw-r--r-- | conf/map/maps.conf | 78 | ||||
-rw-r--r-- | conf/map/script.conf | 64 |
24 files changed, 3135 insertions, 0 deletions
diff --git a/conf/map/battle.conf b/conf/map/battle.conf new file mode 100644 index 000000000..927b82b0b --- /dev/null +++ b/conf/map/battle.conf @@ -0,0 +1,85 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +//= Battle Configuration File +//========================================================================= + +battle_configuration: { + // General battle-related settings. + @include "conf/map/battle/battle.conf" + + // Settings specific to the client. + @include "conf/map/battle/client.conf" + + // General drop-related configs. + @include "conf/map/battle/drops.conf" + + // Experience rates, exp penalties, stats and max level settings. + @include "conf/map/battle/exp.conf" + + // GM levels, atcommands and hack-related configs. + @include "conf/map/battle/gm.conf" + + // Guild and WoE settings + @include "conf/map/battle/guild.conf" + + // Battleground settings + @include "conf/map/battle/battleground.conf" + + // Item/card-specific and crafting related options. + @include "conf/map/battle/items.conf" + + // Mob related configuration + @include "conf/map/battle/monster.conf" + + // Party related configuration + @include "conf/map/battle/party.conf" + + // Pet related configuration + @include "conf/map/battle/pet.conf" + + // Homunc related configuration + @include "conf/map/battle/homunc.conf" + + // Player specific settings + @include "conf/map/battle/player.conf" + + // Skill related settings + @include "conf/map/battle/skill.conf" + + // Status change related settings + @include "conf/map/battle/status.conf" + + // Feature control (on/off) settings + @include "conf/map/battle/feature.conf" + + // Anything else that didn't fit anywhere else. + // Includes duel, day/night, mute/manner, log settings. + @include "conf/map/battle/misc.conf" +} + + // Your custom config goes here. +import: "conf/import/battle.conf" diff --git a/conf/map/battle/battle.conf b/conf/map/battle/battle.conf new file mode 100644 index 000000000..2e73a0aa8 --- /dev/null +++ b/conf/map/battle/battle.conf @@ -0,0 +1,180 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Battle) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// Who should have a baseatk value (makes str affect damage)? (Note 3) +enable_baseatk: 9 + +// Who can have perfect flee? (Note 3) +enable_perfect_flee: 1 + +// Who can have critical attacks? (Note 3) +// (Note that there are some skills that always do critical hit regardless of this) +enable_critical: 17 + +// Critical adjustment rate for non-players (Note 2) +mob_critical_rate: 100 +critical_rate: 100 + +// Should normal attacks give you a walk delay? (Note 3) +// If false, characters can move as soon as they start an attack (attack animation +// or walk animation may be omitted client-side, causing cropped attacks or +// monsters that teleport to you) +// Otherwise, the delay is equal to the 'attack animation' (amotion) +attack_walk_delay: 15 + +// Move-delay adjustment after being hit. (Note 2) +// The 'can't walk' delay after being hit is calculated as a percentage of the damage animation duration. +// NOTE: Only affects the normal delay from a single attack, not the delay added by the multihit_delay option below. +pc_damage_walk_delay_rate: 20 +damage_walk_delay_rate: 100 + +// Move-delay adjustment for multi-hitting attacks. +// When hit by a multi-hitting skill like Lord of Vermillion or Jupitel Thunder, characters will be +// unable to move for an additional "(number of hits -1) * multihit_delay" milliseconds. +// 80 is the setting that feels like Aegis (vs Sonic Blows) +// 230 is the setting that makes walkdelay last until the last hit (vs Jupitel thunder) +multihit_delay: 80 + +// Damaged delay rate for players (Note 2) +// (Setting to false/0 will be like always endure) +player_damage_delay_rate: 100 + +// Should race or element be used to consider someone undead? +// 0 = element undead +// 1 = race undead +// 2 = both (either one works) +undead_detect_type: 0 + +// Does HP recover if hit by an attribute that's same as your own? (Note 1) +// (Will not work in Renewal) +attribute_recover: false + +// What is the minimum and maximum hitrate of normal attacks? +min_hitrate: 5 +max_hitrate: 100 + +// Type of penalty that is applied to FLEE when more than agi_penalty_count monsters are targetting player +// 0 = no penalty is applied +// 1 = agi_penalty_num is reduced from FLEE as a % +// 2 = agi_penalty_num is reduced from FLEE as an exact amount +agi_penalty_type: 1 + +// When agi penalty is enabled, to whom it should apply to? (Note 3) +// By default, only players get the penalty. +agi_penalty_target: 1 + +// Amount of enemies required to be targetting player before FLEE begins to be penalized +agi_penalty_count: 3 + +// Amount of FLEE penalized per each attacking monster more than agi_penalty_count +agi_penalty_num: 10 + +// Type of penalty that is applied to both equipment and vit DEF when more than vit_penalty_count monsters are targetting player +// 0 = no penalty is applied +// 1 = vit_penalty_num is reduced from DEF as a % +// 2 = vit_penalty_num is reduced from DEF as an exact amount +vit_penalty_type: 1 + +// When vit penalty is enabled, to whom it should apply to? (Note 3) +// By default, only players get the penalty. +vit_penalty_target: 1 + +// Amount of enemies required to be targetting player before defense begins to be penalized +vit_penalty_count: 3 + +// Amount of VIT defense penalized per each attacking monster more than vit_penalty_count +vit_penalty_num: 5 + +// Use alternate method of DEF calculation for physical attacks. +// With 0, disabled (use normal def% reduction with further def2 reduction) +// At 1 or more defense is subtraction of (DEF* value). +// eg: 10 + 50 def becomes 0 + (10*type + 50) +weapon_defense_type: 0 + +// MDEF, same as above....(MDEF*value) +magic_defense_type: 0 + +// Change attacker's direction to face opponent on every attack? (Note 3) +// NOTE: On official servers knockback of some skills like Firewall is always based on the +// last direction walked. Even when attacking in a completely different direction, the +// knockback direction won't change, so e.g. if you walk north and then attack an enemy to +// the south you will still be knocked back to the south by Firewall. Immobile monsters +// will always be knocked back to the south as their default direction is north. +attack_direction_change: 0 + +// For those who is set, their innate attack element is "not elemental" +// (100% versus on all defense-elements) (Note 3) +// NOTE: This is the setting that makes it so non-players can hit for full +// damage against Ghost-type targets with normal attacks (eg: vs. Ghostring). +attack_attr_none: 14 + +// Rate at which equipment can break (base rate before it's modified by any skills) +// 1 = 0.01% chance. Default for official servers: 0 +equip_natural_break_rate: 0 + +// Overall rate of which your own equipment can break. (Note 2) +// This rate affects penalty breaking rate of skills such as power-thrust and your natural breaking rate +// (from equip_natural_break_rate). If a Sage's endow skill fails and this is above 0, the selected char's +// weapon will be broken. +equip_self_break_rate: 100 + +// Overall rate at which you can break target's equipment. (Note 2) +// This affects the behaviour of skills like acid terror and meltdown +equip_skill_break_rate: 100 + +// Do weapon attacks have a attack speed delay before actual damage is applied? (Note 1) +// NOTE: The official setting is true, even thought it degrades performance a bit. +delay_battle_damage: true + +// Are arrows/ammo consumed when used on a bow/gun? +// 0 = No +// 1 = Yes +// 2 = Yes even for skills that do not specify arrow consumption when said +// skill is weapon-based and used with ranged weapons (auto-guesses which +// skills should consume ammo when it's acquired via a card or plagiarize) +arrow_decrement: 1 + +// Should the item script bonus 'Autospell' check for range/obstacles before casting? +// Official behavior is false, setting this to true will make skills use their defined +// range. For example, Sonic Blow requires a 2 cell distance before autocasting is allowed. +// This setting also affects autospellwhenhit. +autospell_check_range: false + +// If both the attacker and the target are on the same tile, should the target be knocked back to the left? +// Official behavior is true, setting this to false will knock the target back behind the attacker. +knockback_left: true + +// Should the target be able of dodging damage by snapping away to the edge of the screen? +// Official behavior is false +snap_dodge: false diff --git a/conf/map/battle/battleground.conf b/conf/map/battle/battleground.conf new file mode 100644 index 000000000..629a664f7 --- /dev/null +++ b/conf/map/battle/battleground.conf @@ -0,0 +1,40 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Battlegrounds) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// Flee penalty on BG grounds. +// NOTE: It's %, not absolute, so 20 is -20% of your total flee +bg_flee_penalty: 20 + +// Interval before updating the bg-member map mini-dots (milliseconds) +bg_update_interval: 1000 diff --git a/conf/map/battle/client.conf b/conf/map/battle/client.conf new file mode 100644 index 000000000..e4a646f95 --- /dev/null +++ b/conf/map/battle/client.conf @@ -0,0 +1,174 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Client) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// Whether to enable the official packet obfuscation support (good vs WPE) +// 0: disabled +// 1: optional (not recommended) -- identifies whether it is required +// 2: enabled (recommended) +packet_obfuscation: 0 + +// Minimum delay between whisper/global/party/guild messages (in ms) +// Messages that break this threshold are silently omitted. +min_chat_delay: 0 + +// Valid range of dyes and styles on the client. +min_hair_style: 0 +max_hair_style: 29 +min_hair_color: 0 +max_hair_color: 20 +min_cloth_color: 0 +max_cloth_color: 4 +min_body_style: 0 +max_body_style: 4 + +// When set to true, the damage field in packets sent from woe maps will be set +// to -1, making it impossible for GMs, Bots and Hexed clients to know the +// actual damage caused by attacks. (Note 1) +hide_woe_damage: true + +// "hair style" number that identifies pet. +// NOTE: The client uses the "hair style" field in the mob packet to tell them apart from mobs. +// This value is always higher than the max hair-style available in said client. +// Known values to work (all 2005 clients): +// older sakexes: 20 +// sakexe 0614: 24 +// sakexe 0628 (and later): 100 +pet_hair_style: 100 + +// Visible area size (how many squares away from a player can they see) +area_size: 14 + +// Chat area size (how many squares away from a player can they chat) +chat_area_size: 14 + +// Maximum walk path (how many cells a player can walk going to cursor) +// default: 17(official) +max_walk_path: 17 + +// Maximum allowed 'level' value that can be sent in unit packets. +// Use together with the aura_lv setting to tell when exactly to show the aura. +// NOTE: You also need to adjust the client if you want this to work. +// NOTE: Default is 99. Values above 127 will probably behave incorrectly. +// NOTE: If you don't know what this does, don't change it!!! +max_lv: 99 + +// Level required to display an aura. +// NOTE: This assumes that sending max_lv to the client will display the aura. +// NOTE: aura_lv must not be less than max_lv. +// Example: If max_lv is 99 and aura_lv is 150, characters with level 99~149 +// will be sent as being all level 98, and only characters with level +// 150 or more will be reported as having level 99 and show an aura. +aura_lv: 99 + +// Units types affected by max_lv and aura_lv settings. (Note 3) +// Note: If an unit type, which normally does not show an aura, is +// set it will obtain an aura when it meets the level requirement. +// Default: 0 (none) +client_limit_unit_lv: 0 + +// Will tuxedo and wedding dresses be shown when worn? (Note 1) +wedding_modifydisplay: false + +// Save Clothes color. (This will degrade performance) (Note 1) +save_clothcolor: true + +// Save body styles? (Note 1) +// Note: Don't turn this on unless you know what your doing. +// Sprites are not released officially. +save_body_style: false + +// Do not display cloth colors for the wedding costume? +// Note: Both save_clothcolor and wedding_modifydisplay have to be enabled +// for this option to take effect. Set this to true if your cloth palettes +// pack doesn't has wedding palettes (or has less than the other jobs) +wedding_ignorepalette: false + +// Do not display cloth colors for the Xmas costume? +// Set this to true if your cloth palettes pack doesn't has Xmas palettes (or has less than the other jobs) +xmas_ignorepalette: false + +// Do not display cloth colors for the Summer costume? +// Set this to true if your cloth palettes pack doesn't has Summer palettes (or has less than the other jobs) +summer_ignorepalette: false + +// Do not display cloth colors for the Hanbok costume? +// Set this to true if your cloth palettes pack doesn't has Hanbok palettes (or has less than the other jobs) +hanbok_ignorepalette: false + +// Do not display cloth colors for the Oktoberfest costume? +// Set this to true if your cloth palettes pack doesn't has Oktoberfest palettes (or has less than the other jobs) +oktoberfest_ignorepalette: false + +// Do not display cloth colors for the Summer 2 costume? +// Set this to true if your cloth palettes pack doesn't has Summer 2 palettes (or has less than the other jobs) +summer2_ignorepalette: false + +// Show Hercules version to users when the login? +display_version: false + +// When affected with the "Hallucination" status effect, send the effect to client? (Note 1) +// Note: Set to false if the client lags due to the "Wavy" screen effect. +display_hallucination: true + +// Set this to 1 if your client supports status change timers and you want to use them +// Clients from 2009 onward support this +display_status_timers: true + +// Randomizes the dice emoticon server-side, to prevent clients from forging +// packets for the desired number. (Note 1) +client_reshuffle_dice: true + +// Sorts the character and guild storage before it is sent to the client. +// Official servers do not sort storage. (Note 1) +// NOTE: Enabling this option degrades performance. +client_sort_storage: false + +// Duration of client's self mute in minutes. +// Note: Do not enable this, if you enabled commands for players, +// because the client sees multiple commands in succession as spam. +// Default: 0 (means disabled) +client_accept_chatdori: 0 + +// Limits use of blank (transparent) pixels in guild emblems to a set +// percentage of the total. +// Official servers do not enforce this technically to date, but some disallow +// use of blank emblems in their rules. (Note 2) +// A value of 100 (allowing 100% blank pixels) disables this check. +// NOTE: Enabling this option slightly degrades performance. +client_emblem_max_blank_percent: 100 + +// Show the MVP EXP reward message for clients 2013-12-23cRagexe and newer? (Note 1) +// kRO removed the packet and this re-enables the message. +// Official: false. +mvp_exp_reward_message: false diff --git a/conf/map/battle/drops.conf b/conf/map/battle/drops.conf new file mode 100644 index 000000000..4dbbf8fd5 --- /dev/null +++ b/conf/map/battle/drops.conf @@ -0,0 +1,148 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Drops) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +//========================================================================= + +// If an item is dropped, does it go straight into the users inventory? (Note 1) +item_auto_get: false + +// How long does it take for an item to disappear from the floor after it is dropped? (in milliseconds) +flooritem_lifetime: 60000 + +// Grace time during which only the person who did the most damage to a monster can get the item? (in milliseconds) +item_first_get_time: 3000 + +// Grace time during which only the first and second person who did the most damage to a monster can get the item? (in milliseconds) +// (Takes effect after item_first_get_time elapses) +item_second_get_time: 1000 + +// Grace time during which only the first, second and third person who did the most damage to a monster can get the item? (in milliseconds) +// (Takes effect after the item_second_get_time elapses) +item_third_get_time: 1000 + +// Grace time to apply to MvP reward items when the Most Valuable Player can't get the prize item and it drops on the ground? (in milliseconds) +mvp_item_first_get_time: 10000 + +// Grace time for the first and second MvP so they can get the item? (in milliseconds) +// (Takes effect after mvp_item_first_get_time elapses) +mvp_item_second_get_time: 10000 + +// Grace time for the first, second and third MvP so they can get the item? (in milliseconds) +// (Takes effect after mvp_item_second_get_time elapses) +mvp_item_third_get_time: 2000 + +// Item drop rates (Note 2) + +// The rate the common items are dropped (Items that are in the ETC tab, besides card) +item_rate_common: 100 +item_rate_common_boss: 100 +item_drop_common_min: 1 +item_drop_common_max: 10000 + +// The rate healing items are dropped (items that restore HP or SP) +item_rate_heal: 100 +item_rate_heal_boss: 100 +item_drop_heal_min: 1 +item_drop_heal_max: 10000 + +// The rate at which usable items (in the item tab) other then healing items are dropped. +item_rate_use: 100 +item_rate_use_boss: 100 +item_drop_use_min: 1 +item_drop_use_max: 10000 + +// The rate at which equipment is dropped. +item_rate_equip: 100 +item_rate_equip_boss: 100 +item_drop_equip_min: 1 +item_drop_equip_max: 10000 + +// The rate at which cards are dropped +item_rate_card: 100 +item_rate_card_boss: 100 +item_drop_card_min: 1 +item_drop_card_max: 10000 + +// The rate adjustment for the MVP items that the MVP gets directly in their inventory +item_rate_mvp: 100 +item_drop_mvp_min: 1 +item_drop_mvp_max: 10000 + +// The rate adjustment for card-granted item drops. +item_rate_adddrop: 100 +item_drop_add_min: 1 +item_drop_add_max: 10000 + +// Rate adjustment for Treasure Box drops (these override all other modifiers) +item_rate_treasure: 100 +item_drop_treasure_min: 1 +item_drop_treasure_max: 10000 + +// Use logarithmic drops? (Note 1) +// Logarithmic drops scale drop rates in a non-linear fashion using the equation +// Droprate(x,y) = x * (5 - log(x)) ^ (ln(y) / ln(5)) +// Where x is the original drop rate and y is the drop_rate modifier (the previously mentioned item_rate* variables) +// Use the following table for an idea of how the rate will affect drop rates when logarithmic drops are used: +// Y: Original Drop Rate +// X: Rate drop modifier (eg: item_rate_equip) +// X\Y | 0.01 0.02 0.05 0.10 0.20 0.50 1.00 2.00 5.00 10.00 20.00 +// -----+--------------------------------------------------------------- +// 50 | 0.01 0.01 0.03 0.06 0.11 0.30 0.62 1.30 3.49 7.42 15.92 +// 100 | 0.01 0.02 0.05 0.10 0.20 0.50 1.00 2.00 5.00 10.00 20.00 +// 200 | 0.02 0.04 0.09 0.18 0.35 0.84 1.61 3.07 7.16 13.48 25.13 +// 500 | 0.05 0.09 0.22 0.40 0.74 1.65 3.00 5.40 11.51 20.00 33.98 +// 1000 | 0.10 0.18 0.40 0.73 1.30 2.76 4.82 8.28 16.47 26.96 42.69 +// 2000 | 0.20 0.36 0.76 1.32 2.28 4.62 7.73 12.70 23.58 36.33 53.64 +// 5000 | 0.50 0.86 1.73 2.91 4.81 9.11 14.45 22.34 37.90 53.91 72.53 +//10000 | 1.00 1.67 3.25 5.28 8.44 15.24 23.19 34.26 54.57 72.67 91.13 +//20000 | 2.00 3.26 6.09 9.59 14.83 25.49 37.21 52.55 77.70 97.95 100% +//50000 | 5.00 7.87 13.98 21.12 31.23 50.31 69.56 92.48 100% 100% 100% +item_logarithmic_drops: false + +// Can the monster's drop rate become 0? (Note 1) +// Default: false (as in official servers). +drop_rate0item: false + +// Makes your LUK value affect drop rates on an absolute basis. +// Setting to 100 means each luk adds 0.01% chance to find items +// (regardless of item's base drop rate). +drops_by_luk: 0 + +// Makes your LUK value affect drop rates on a relative basis. +// Setting to 100 means each luk adds 1% chance to find items +// (So at 100 luk, everything will have double chance of dropping). +drops_by_luk2: 0 + +// Whether or not Marine Spheres and Floras summoned by Alchemist drop items? +// This setting has three available values: +// 0: Nothing drops. +// 1: Only marine spheres drop items. +// 2: All alchemist summons drop items. +alchemist_summon_reward: 1 diff --git a/conf/map/battle/exp.conf b/conf/map/battle/exp.conf new file mode 100644 index 000000000..3a38c1c6c --- /dev/null +++ b/conf/map/battle/exp.conf @@ -0,0 +1,114 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Experience) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: The max level of classes is stored in the exp table. +// See files db/exp.txt and db/exp2.txt to change them. +//========================================================================= + +// Rate at which exp. is given. (Note 2) +base_exp_rate: 100 + +// Rate at which job exp. is given. (Note 2) +job_exp_rate: 100 + +// Turn this on to allow a player to level up more than once from a kill. (Note 1) +multi_level_up: false + +// Setting this can cap the max experience one can get per kill specified as a +// % of the current exp bar. (Every 10 = 1.0%) +// For example, set it to 500 and no matter how much exp the mob gives, +// it can never give you above half of your current exp bar. +max_exp_gain_rate: 0 + +// Method of calculating earned experience when defeating a monster: +// 0 = uses damage given / total damage as damage ratio +// 1 = uses damage given / max_hp as damage ratio +// NOTE: Using type 1 disables the bonus where the first attacker gets +// his share of the exp doubled when multiple people attack the mob. +exp_calc_type: 0 + +// Experience increase per attacker. That is, every additional attacker to the +// monster makes it give this much more experience +// (eg: 5 people attack with 25 here, +(25*4)% -> +100% exp) +exp_bonus_attacker: 25 + +// Max number of attackers at which exp bonus is capped +// (eg: if set at 5, the max bonus is 4*bonus-per-char regardless of attackers) +exp_bonus_max_attacker: 12 + +// MVP bonus exp rate. (Note 2) +mvp_exp_rate: 100 + +// Rate of base/job exp given by NPCs. (Note 2) +quest_exp_rate: 100 + +// The rate of job exp. from using Heal skill (100 is the same as the heal amount, 200 is double. +// The balance of the exp. rate is best used with 5 to 10) +heal_exp: 0 + +// The rate of exp. that is gained by the process of resurrection, a unit is 0.01%. +// Experience calculations for the experience value * level difference of the person revived / 100 * resurrection_exp/10000 which the revived player has can be got. +resurrection_exp: 0 + +// The rate of job exp. when using discount and overcharge on an NPC +// (in 0.01% increments - 100 is 1%, 10000 is normal, 20000 is double.) +// The way it is calculated is (money received * skill lv) * shop_exp / 10000. +shop_exp: 0 + +// PVP exp. Do players get exp in PvP maps +// (Note: NOT exp from players, but from normal leveling) +pvp_exp: true + +// When a player dies, how should we penalize them? +// 0 = No penalty. +// 1 = Lose % of current level when killed. +// 2 = Lose % of total experience when killed. +death_penalty_type: 1 + +// Base exp. penalty rate (Each 100 is 1% of their exp) +death_penalty_base: 100 + +// Job exp. penalty rate (Each 100 is 1% of their exp) +death_penalty_job: 100 + +// When a player dies (to another player), how much zeny should we penalize them with? +// NOTE: It is a percentage of their zeny, so 100 = 1% +zeny_penalty: 0 + +// Will display experience gained from killing a monster. (Note 1) +disp_experience: false + +// Will display zeny earned (from mobs, trades, etc) (Note 1) +disp_zeny: false + +// Use the contents of db/statpoint.txt when doing a stats reset and leveling up? (Note 1) +// If false, an equation will be used which preserves statpoints earned/lost +// through external means (ie: stat point buyers/sellers) +use_statpoint_table: true diff --git a/conf/map/battle/feature.conf b/conf/map/battle/feature.conf new file mode 100644 index 000000000..e01c7f93d --- /dev/null +++ b/conf/map/battle/feature.conf @@ -0,0 +1,73 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Feature) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +//========================================================================= + +features: { + // Buying store (Note 1) + // Requires: 2010-04-27aRagexeRE or later + buying_store: true + + // Search stores (Note 1) + // Requires: 2010-08-03aRagexeRE or later + search_stores: true + + // Atcommand suggestions (Note 1) + // If one type incomplete atcommand, it will suggest the complete ones. + atcommand_suggestions: false + + // Banking (Note 1) + // Requires: 2013-07-24aRagexe or later + banking: true + + // Auction (Note 1) + // Feature became unstable on clients 2012 onwards (exact date not known), + // it has been fixed on clients 2013-05-15 onwards however. + auction: false + + // Roulette (Note 1) + // Requires: 2014-10-22bRagexe or later + // Disabled by default while test version is out; enable at your own risk -- the mean dev. + roulette: false + + // Enabled RoDEX (Note 1) + // Requires: 2015-05-13aRagexe or later + rodex: true + + // Allow usage of "Account Mail" box in RoDEX? + // Requires: 2016-03-16aRagexeRE or later + // This is disabled in client-side in some client versions + // Disabled by default + rodex_use_accountmail: false + + // Allow Homunculus autofeeding + // true: enable (Default) + // false: disable + enable_homun_autofeed: true +} diff --git a/conf/map/battle/gm.conf b/conf/map/battle/gm.conf new file mode 100644 index 000000000..ffc4946ab --- /dev/null +++ b/conf/map/battle/gm.conf @@ -0,0 +1,66 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (GM) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +//========================================================================= + +// The maximum quantity of monsters that can be summoned per GM command (0 denotes an unlimited quantity) +atcommand_spawn_quantity_limit: 100 + +// Maximum number of slave-clones that can be have by using the @slaveclone at command. (0 denotes unlimited quantity) +atcommand_slave_clone_limit: 25 + +// If false, commands require exact player name. If true, entering a partial +// name will work, as long as there's only one match from all players in the +// current map server. +partial_name_scan: false + +// (@) @allstats/@str/@agi/@vit/@int/@dex/@luk +// allow gms to bypass the maximum stat parameter? ( if true gm stats can go up to 32k ) +// default: false +atcommand_max_stat_bypass: false + +// Ban people that try trade dupe. +// Duration of the ban, in minutes (default: 5). To disable the ban, set 0. +ban_hack_trade: 5 + +// requires RENEWAL_DROP to be enabled (src/map/config/renewal.h) +// modifies @mobinfo to display the users' real drop rate as per renewal_drop formula +// modifies @iteminfo to not display the minimum item drop rate (since it can't tell the mob level) +atcommand_mobinfo_type: 0 + +// Ignore warpable area configuration. +// Set the minimum group id to ignore invalid cells when warping. +// Default group is 2. Use 100 to disable this setting. +gm_ignore_warpable_area: 2 + +// Should atcommands trigger level up events for NPCs? (Note 1) +// This option is for @baselevelup and @joblevelup +// Default: false +atcommand_levelup_events: false diff --git a/conf/map/battle/guild.conf b/conf/map/battle/guild.conf new file mode 100644 index 000000000..c8f8db8c3 --- /dev/null +++ b/conf/map/battle/guild.conf @@ -0,0 +1,73 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Guild) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +//========================================================================= + +// When making a guild, an Emperium is consumed? (Note 1) +guild_emperium_check: true + +// Maximum tax limit on a guild member. +guild_exp_limit: 50 + +// Maximum castles one guild can own (0 = unlimited) +guild_max_castles: 0 + +// Restart guild skills cooldown by relog? (Note 1) +// When false, you relog with the same cooldown remaining as from when you +// logged out, true restarts the cooldown upon login to its full duration. +guild_skill_relog_delay: false + +// Damage adjustments for WOE battles against defending Guild monsters (Note 2) +castle_defense_rate: 100 + +// Flee penalty on gvg grounds. Official value is 20 (Note 2) +// NOTE: It's %, not absolute, so 20 is -20% of your total flee +gvg_flee_penalty: 20 + +// Can the 'Glory of Guild' skill be learnt in the Guild window, +// and does changing emblems require it? (Note 1) +// P.S: This skill is not implemented on official servers +require_glory_guild: false + +// Limit Guild alliances. Value is 0 to 3. +// If you want to change this value, clear the guild alliance table. +// Default is 3 +max_guild_alliance: 3 + +// When to re-display the guild notice +// Upon teleporting (regardless of changing maps): 2 (official) +// Upon changing maps: 1 +// Do not re-display: 0 (disabled) +guild_notice_changemap: 2 + +// Can guild members invite/expel members inside guild castles in WoE/GvG? (Note 1) +// default: false +guild_castle_invite: false +guild_castle_expulsion: false diff --git a/conf/map/battle/homunc.conf b/conf/map/battle/homunc.conf new file mode 100644 index 000000000..0bf2a4b98 --- /dev/null +++ b/conf/map/battle/homunc.conf @@ -0,0 +1,68 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Homunculus) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// Homunculus setting (Note 3) +// Activates various 'quirks' that makes them behave unlike normal characters. +// 0x001: Can't be targetted by support skills (except for their master) +// 0x004: Mobs will always go after them instead of players until attacked +// 0x008: Copy their master's speed on spawn/map-change +// 0x010: They display luk/3+1 instead of their actual critical in the +// stat window (by default they don't crit) +// 0x020: Their Min-Matk is always the same as their max +// 0x040: Skill re-use delay is reset when they are vaporized. +hom_setting: 0x1D + +// The rate a homunculus will get friendly by feeding it. (Note 2) +homunculus_friendly_rate: 100 + +// Can you name a homunculus more then once? (Note 1) +hom_rename: false + +// Intimacy needed to use Evolved Vanilmirth's Bio Explosion +hvan_explosion_intimate: 45000 + +// Show stat growth to the owner when an Homunculus levels up +homunculus_show_growth: true + +// Does autoloot work, when a monster is killed by homunculus only? +homunculus_autoloot: true + +// Should homunculi Vaporize when Master dies? +homunculus_auto_vapor: true + +// Max level for regular Homunculus +homunculus_max_level: 99 + +// Max level for Homunculus S +homunculus_S_max_level: 150 diff --git a/conf/map/battle/items.conf b/conf/map/battle/items.conf new file mode 100644 index 000000000..f7ffd3f32 --- /dev/null +++ b/conf/map/battle/items.conf @@ -0,0 +1,121 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Items) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// The highest value at which an item can be sold via the merchant vend skill. (in zeny) +vending_max_value: 1000000000 + +// Whether to allow buying from vending chars that are at their max. zeny limit. +// If set to true, the rest of the zeny above the char's capacity will disappear. +vending_over_max: true + +// Tax to apply to all vending transactions (eg: 10000 = 100%, 50 = 0.50%) +// When a tax is applied, the item's full price is charged to the buyer, but +// the vender will not get the whole price paid (they get 100% - this tax). +vending_tax: 200 + +// Show the buyer's name when successfully vended an item +buyer_name: true + +// Forging success rate. (Note 2) +weapon_produce_rate: 100 + +// Prepare Potion success rate. (Note 2) +potion_produce_rate: 100 + +// Do produced items have the maker's name on them? (Note 3) +// 0x01: Produced Weapons +// 0x02: Produced Potions +// 0x04: Produced Arrows +// 0x08: Produced Holy Water/Ancilla +// 0x10: Produced Deadly Potions +// 0x80: Other produced items. +produce_item_name_input: 0x03 + +// Is a monster summoned via dead branch aggressive? (Note 1) +dead_branch_active: true + +// Should summoned monsters check the player's base level? (dead branches) (Note 1) +// On officials this is false - monsters summoned from dead/bloody branches can be ANY level. +// Change to true to only summon monsters less than or equal to the player's base level. +random_monster_checklv: false + +// Can any player equip any item regardless of the gender restrictions +// NOTE: Wedding Rings and Whips/Musical Instruments will check gender regardless of setting. +ignore_items_gender: true + +// Item check? (Note 1) +// On map change it will check for items not tagged as "available" and +// auto-delete them from inventory/cart. +// NOTE: An item is not available if it was not loaded from the item_db or you +// specify it as unavailable in db/item_avail.txt +item_check: false + +// How much time must pass between item uses? +// Only affects the delay between using items, prevents healing item abuse. Recommended ~500 ms +// On officials this is 0, but it's set to 100ms as a measure against bots/macros. +item_use_interval: 100 + +// Required level of bNoMagicDamage before Status Changes are blocked (Golden Thief Bug card). +// For example, if left at 50. An item can give bNoMagicDamage,40; +// which reduces magic damage by 40%, but does not blocks status changes. +gtb_sc_immunity: 50 + +// Enable autospell card effects to stack? +// NOTE: Different cards that grant the same skill will both +// always work independently of each other regardless of setting. +autospell_stacking: false + +// Will disabled consumables (disabled by map_zone_db.conf) be consumed when trying to use them? +// Default: true (official) +item_restricted_consumption_type: true + +// Enable all NPC to allow changing of equipments while interacting? (Note 1) +// Script commands 'enable_items/disable_items' will not be override. (see doc/script_commands.txt) +// Default: true (official) +item_enabled_npc: true + +// Unequip the equipments that has disabled by map_zone_db.conf ? +// 0 : disabled equipments and cards are nullify (official) +// 1 : disabled equipments are unequip, disabled cards are nullify +// 2 : disabled equipments are nullify, disabled cards will caused the equipment to unequip +// 3 : disabled equipments are unequip, disabled cards will caused the equipment to unequip (1+2) +unequip_restricted_equipment: 0 + +// When unequip a bow with arrow equipped, it also unequip the arrow? +// Default: true (Official behavior, applies only in Renewal) +bow_unequip_arrow: true + +// How much should rental mounts increase a player's movement speed? (Note 2) +// Official: 25 (Default) +boarding_halter_speed: 25 diff --git a/conf/map/battle/misc.conf b/conf/map/battle/misc.conf new file mode 100644 index 000000000..2f88dbe0e --- /dev/null +++ b/conf/map/battle/misc.conf @@ -0,0 +1,173 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Misc) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// PK Server Mode. +// Turns entire server pvp(excluding towns). +// Experience loss is doubled if killed by another player. +// When players hunt monsters over 20 levels higher, they will receive 15% +// additional exp., and 25% chance of receiving more items. +// There is a nopvp.txt for setting up maps not to have pk on in this mode. +// Novices cannot be attacked and cannot attack. +// Normal pvp counter and rank display are disabled as well. +// Note: If pk_mode is set to 2 instead of 1, players will receive a +// manner penalty of 5 each time they kill another player (see manner_system +// config to adjust how this will affect players) +pk_mode: 0 + +// Manner/karma system configuration. Specifies how does negative manner +// (red no chat bubble) affects players (add as needed): +// 0: No penalties. +// 1: Disables chatting (includes whispers, party/guild msgs, etc) +// 2: Disables skill usage +// 4: Disables commands usage +// 8: Disables item usage/picking/dropping +// 16: Disables room creation (chatrooms and vending shops) +manner_system: 31 + +// For PK Server Mode. Change this to define the minimum level players can start PK-ing +pk_min_level: 55 + +// For PK Server Mode. It specifies the maximum level difference between +// players to let them attack each other. 0 disables said limit. +pk_level_range: 0 + +// Display skill usage in console? (for debug only) (default: false) (Note 3) +skill_log: false + +// Display battle log? (for debug only) (default: false) (Note 1) +battle_log: false + +// Display other stuff? (for debug only) (default: false) (Note 1) +etc_log: false + +// Do you want to debug warp points? If set to true, warp points will appear as flags.(Note 1) +// It will also run on start-up a warp-check to print out which warp points lead directly on +// top of on-touch npcs (which can lead to infinite loopback warping situations) +warp_point_debug: false + +// Choose if server begin with night (true) or day (false) +night_at_start: false + +// Define duration in msec of the day (default: 7200000 = 2 hours) +// Set to 0 to disable day cycle (but not @day GM command). +// Except 0, minimum is 60000 (1 minute) +day_duration: 0 + +// Define duration in msec of the night (default: 1800000 = 30 min) +// Set to 0 to disable night cycle (but not @night GM command). +// Except 0, minimum is 60000 (1 minute) +night_duration: 0 + +// Using duel on pvp-maps +duel_allow_pvp: false + +// Using duel on gvg-maps +duel_allow_gvg: false + +// Allow using teleport/warp when dueling +duel_allow_teleport: false + +// Autoleave duel when die +duel_autoleave_when_die: true + +// Delay between using @duel in minutes +duel_time_interval: 1 + +// Restrict duel usage to same map +duel_only_on_same_map: false + +// Determines max number of characters that can stack within a single cell. +// Official - Only affects the walking routines of characters, including monsters. +// If a unit stops walking and is on a cell with more than stack limit +// characters on it, it will walk to the closest free cell. +// Custom - This variation will make every full cell to be considered a wall. +// NOTE: For this setting to take effect you have to use a server compiled +// with Cell Stack Limit support (see src/map/map.h) +official_cell_stack_limit: 0 +custom_cell_stack_limit: 1 + +// If false while walking not check occupied cells +// If true while walking check occupied cells +check_occupied_cells: false + +// Allow autotrade only in map with autotrade flag? +// Set this to "false" will allow autotrade where no "autotrade" mapflag is set +// Set this to "true" to only allow autotrade on maps with "autotrade" mapflag +at_mapflag: false + +// Set this to the amount of minutes autotrade chars will be kicked from the server. +at_timeout: 0 + +// Auction system, fee per hour. Default is 12000 +auction_feeperhour: 12000 + +// Auction maximum sell price +auction_maximumprice: 500000000 + +// Minimum delay between each store search query in seconds. +searchstore_querydelay: 10 + +// Maximum amount of results a store search query may yield, before +// it is canceled. +searchstore_maxresults: 30 + +// Whether or not gaining and loosing of cash points is displayed (Note 1). +// Default: false +cashshop_show_points: false + +// Whether or not mail box status is displayed upon login. +// Default: 0 +// 0 = No +// 1 = Yes +// 2 = Yes, when there are unread mails +mail_show_status: 0 + +// Is monster transformation disabled during Guild Wars? +// If set to true, monster transforming is automatically removed/disabled when entering castles during WoE times +mon_trans_disable_in_gvg: false + +// Whether AegisName and SpriteName lookups are case sensitive +// Default: true (as in official servers) +// When this is set to true, item and monster lookups through atcommands and +// script commands will match AegisNames and SpriteNames only when the case +// matches. Display name lookups are not affected by this setting. +// Example: Given the two items: +// - { Id: 553, AegisName: "Bun", Name: "Bao" } +// - { Id: 6115, AegisName: "Bun_", Name: "Bun" } +// query when true when false +// @item bun # 6115 # 553 +// @item Bun # 553 # 553 +// @item Bao # 553 # 553 +// @item Bun_ # 6115 # 6115 +case_sensitive_aegisnames: true diff --git a/conf/map/battle/monster.conf b/conf/map/battle/monster.conf new file mode 100644 index 000000000..beffda982 --- /dev/null +++ b/conf/map/battle/monster.conf @@ -0,0 +1,267 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Monster) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// The HP rate of MVPs. (Note 2) +mvp_hp_rate: 100 + +// The HP rate of normal monsters (that is monsters that are not MVP's) (Note 2) +monster_hp_rate: 100 + +// The maximum attack speed of a monster +monster_max_aspd: 199 + +// Defines various mob AI related settings. (Note 3) +// 0x001: When enabled mobs will update their target cell every few iterations +// (normally they never update their target cell until they reach it while +// chasing) +// 0x002: Makes mob use their "rude attack" skill (usually warping away) if they +// are attacked and they can't attack back regardless of how they were +// attacked (eg: GrimTooth), otherwise, their rude attack" is only activated +// if they can't melee reach the target (eg: sniping) +// 0x004: If not set, mobs that can change target only do so when melee attacked +// (distance player/mob < 3), otherwise mobs may change target and chase +// ranged attackers. This flag also overrides the 'provoke' target. +// 0x008: When set, mobs scatter as soon as they lose their target. Use this mode +// to make it much harder to mob-train by hiding and collecting them on a +// single spot (ie: GrimTooth training) +// 0x010: If set, mob skills defined for friends will also trigger on themselves. +// 0x020: When set, the monster ai is executed for all monsters in maps that +// have players on them, instead of only for mobs who are in the vicinity +// of players. +// 0x040: When set, when the mob's target changes map, the mob will walk towards +// any npc-warps in it's sight of view (use with mob_warp below) +// 0x100: When set, a mob will pick a random skill from it's list and start from +// that instead of checking skills in orders (when unset, if a mob has too +// many skills, the ones near the end will rarely get selected) +// 0x200: When set, a mob's skill re-use delay will not be applied to all entries of +// the same skill, instead, only to that particular entry (eg: Mob has heal +// on six lines in the mob_skill_db, only the entry that is actually used +// will receive the delay). This will make monsters harder, especially MvPs. +// 0x400: Set this to make mobs have a range of 9 for all skills. Otherwise, they +// will obey the normal skill range rules. +// Example: 0x140 -> Chase players through warps + use skills in random order. +monster_ai: 0x001 + +// How often should a monster rethink its chase? +// 0: Every 100ms (MIN_MOBTHINKTIME) +// 1: Every cell moved +// 2: Every 2 cells moved +// 3: Every 3 cells moved (official) +// x: Every x cells moved +// Regardless of this setting, a monster will always rethink its chase if it has +// reached its target. Increase this value if you want to make monsters continue +// moving after they lost their target (hide, no line of sight, etc.). +monster_chase_refresh: 2 + +// Should mobs be able to be warped (add as needed)? +// 0: Disable. +// 1: Enable mob-warping when standing on NPC-warps +// 2: Enable mob-warping when standing on Priest Warp Portals +// 4: Disable warping when the target map is a 'nobranch' map. +mob_warp: 0 + +// If these are set above 0, they define the time (in ms) during which monsters +// will have their 'AI' active after all players have left their vicinity. +mob_active_time: 0 +boss_active_time: 0 + +// Mobs and Pets view-range adjustment (range2 column in the mob_db) (Note 2) +view_range_rate: 100 + +// Chase Range is the base minimum-chase that a mob gives before giving up +// (as long as the target is outside their field of view). This is the range3 +// column in the mob_db. (Note 2) +chase_range_rate: 100 + +// Allow monsters to be aggresive and attack first? (Note 1) +monster_active_enable: true + +// Should the mob_db names override the mob names specified in the spawn files? +// 0: No +// 1: always use the mob_db Name column (english mob name) +// 2: always use the mob_db JName column (original Kro mob name) +override_mob_names: 0 + +// Monster damage delay rate (Note 2) +// Setting to 0 is like they always have endure. +monster_damage_delay_rate: 100 + +// Looting monster actions. +// 0 = Monster will consume the item. +// 1 = Monster will not consume the item. +monster_loot_type: 0 + +// Chance of mob casting a skill (Note 2) +// Higher rates lead to 100% mob skill usage with no/few normal attacks. +// Set to 0 to disable mob skills. +mob_skill_rate: 100 + +// Mob skill delay adjust (Note 2) +// After a mob has casted a skill, there is a delay before being able to +// re-cast it. Note that skills with a delay of 0 can't be affected by this +// setting. +mob_skill_delay: 100 + +// Rate of monsters on a map, 200 would be twice as many as normal. (Note 2) +mob_count_rate: 100 + +// Respawn rate of monsters on a map. 50 would make mobs respawn twice as fast (half delay time) (Note 2) +//Note: This does not affects mobs with immediate respawn (most normal mobs) +mob_spawn_delay: 100 +plant_spawn_delay: 100 +boss_spawn_delay: 100 + +// Should mobs not spawn within the viewing range of players? +// 0 is disabled, otherwise it is the number of retries before giving up +// and spawning the mob within player-view anyway, unless the max (100) is used, +// in which case the mob will not be spawned, and it'll be retried again in +// 5 seconds. +// NOTE: This has no effect on mobs that always spawn on the very same cell +// (like ant eggs) except if you set it to the max. +no_spawn_on_player: 0 + +// Should spawn coordinates in the mob-spawn files be ignored? (Note 1) +// If set to true, all monsters will have a random respawn spot across the whole +// map regardless of what the mob-spawn file says. +force_random_spawn: false + +// Do summon slaves inherit the passive/aggressive traits of their master? +// 0: No, retain original mode. +// 1: Slaves are always aggressive. +// 2: Slaves are always passive. +// 3: Same as master's aggressive/passive state. +slaves_inherit_mode: 2 + +// Do summon slaves have the same walking speed as their master? +// NOTE: The default is 3 for official servers. +// 0: Never. +// 1: If the master can walk +// 2: If the master can't walk (even motionless mobs have a speed +// entry in their mob_db) +// 3: Always +slaves_inherit_speed: 3 + +// Will summoned monsters (alchemists, or @summon'ed monsters) attack cause a +// chance of triggering the master's autospell cards? (Note 1) +summons_trigger_autospells: true + +// When a mob is attacked by another monster, will the mob retaliate against the master of said mob instead of the mob itself? +// NOTE: Summoned mobs are both those acquired via @summon and summoned by Alchemists +retaliate_to_master: true + +// Whether mobs should change target temporarily when a skill triggers a counter mob skill (Note 1) +// eg: Mob attacks player B, and player A casts a skill C. If set to true and the +// mob has a skill that is triggered by skill C, then A will be the target of +// the skill, otherwise B will be targetted by the reaction skill. +mob_changetarget_byskill: false + +// If monster's class is changed will it fully recover HP? (Note 1) +monster_class_change_full_recover: true + +// Display some mob info next to their name? (add as needed) +// (does not works on guardian or Emperium) +// 1: Display mob HP (Hp/MaxHp format) +// 2: Display mob HP (Percent of full life format) +// 4: Display mob's level +show_mob_info: 0 + +// Zeny from mobs +zeny_from_mobs: false + +// Monsters level up (monster will level up each time a player is killed and they will grow stronger) +// Exp rate is calculated ((monster level-original monster level)*(exp*(mobs_level_up_exp rate/100))) +// NOTE: Does not apply to WoE Guardians. +mobs_level_up: false +mobs_level_up_exp_rate: 1 + +// Dynamic Mobs Options +// Use dynamic mobs? (recommended for small-medium sized servers) +dynamic_mobs: true + +// Remove Mobs even if they are hurt +mob_remove_damaged: true + +// Delay before removing mobs from empty maps (default 5 min = 300 secs) +mob_remove_delay: 300000 + +// Defines on who the mob npc_event gets executed when a mob is killed. +// Type 1: On the player that killed the mob (if killed by a non-player, resorts to type 0) +// Type 0: On the player that did the most damage to the mob. +// NOTE: This affects who gains the Castle when the Emperium is broken. +mob_npc_event_type: 1 + +// Time in milliseconds to activate protection against Kill Steal +// Set to 0 to disable it. +// If this is activated and a player is using @noks, damage from others players (KS) not in the party +// will be reduced to 0. +ksprotection: 0 + +// Should MVP slaves retain their target when summoned back to their master? +mob_slave_keep_target: true + +// Whether or not to spawn the mvp tomb. +// See http://irowiki.org/wiki/MVP#Gravestone +mvp_tomb_enabled: true + +// Show hp bar on monsters? (Default: yes) +// NOTE: only works on client 2012-04-04aRagexeRE onwards +show_monster_hp_bar: true + +// Whether or not the size of specially summoned mobs influences experience, drop rates, +// and stats. The rates will be doubled for large mobs, and halved for small ones. +// This is only invoked under the 'monster' command, @monsterbig, and @monstersmall. (Note 1) +// Default: false +mob_size_influence: false + +// How should a monster be trapped by an icewall casted directly on it? +// On official servers, monsters can only leave an icewall to the west and south. If their target is north or east of +// them they will continously try to chase it but fail doing so. This brings them into a loop during which they will use +// idle and chase skills. Boss monsters on the other hand will behave like a trapped monster, do not move and will use +// idle and rudeattacked skills (when attacked). +// 0: Monster won't be stuck in icewall at all. +// 1: Monster will behave like a trapped monster. +// 2-255: Number of loops a monster will go through the behavior described above before it frees itself from icewall. +// NOTE: On some servers, normal monsters can free themselves after 15-35 second depending on their speed. On other +// servers, they will be stuck inside icewall until it expires. Also, many official servers (e.g. iRO) have casting +// icewall completely blocked on all maps that have boss monsters on them. +// Default (least exploitable): mob - 75, boss - 0 +// Default (most official): mob - 220, boss - 1 +mob_icewall_walk_block: 220 +boss_icewall_walk_block: 1 + +// Which level of of Vulture's Eye and Snake's Eye should monsters have learned? +// Officially monsters don't have these skills learned, so their ranged skills +// only have a range of 9. If you put a number higher than 0, their range will +// be increased by that number. +monster_eye_range_bonus: 0 diff --git a/conf/map/battle/party.conf b/conf/map/battle/party.conf new file mode 100644 index 000000000..f1d4ab4ed --- /dev/null +++ b/conf/map/battle/party.conf @@ -0,0 +1,82 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Party) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +//========================================================================= + +// If someone steals (gank/steal skills), show name in party? (Note 1) +show_steal_in_same_party: false + +// Interval before updating the party-member map mini-dots (milliseconds) +party_update_interval: 1000 + +// Method used to update party-mate hp-bars: +// 0: Aegis - bar is updated every time HP changes (bandwidth intensive) +// 1: Athena - bar is updated with the party map dots (up to 1 second delay) +party_hp_mode: 0 + +// When changing party leader, should the new leader be in the same map +// as the current leader. (Note 1) +// true: Aegis - They must be in the same map +// false: Athena - They can be in different maps +party_change_leader_same_map: false + +// When 'Party Share' item sharing is enabled in a party, +// announce in the party which party-member received the item and what's he received? (Note 1) +show_party_share_picker: true + +// What types of items are going to be announced when 'show_party_share_picker' is active? +// 1: IT_HEALING, 2: IT_UNKNOWN, 4: IT_USABLE, 8: IT_ETC, +// 16: IT_WEAPON, 32: IT_ARMOR, 64: IT_CARD, 128: IT_PETEGG, +// 256: IT_PETARMOR, 512: IT_UNKNOWN2, 1024: IT_AMMO, 2048: IT_DELAYCONSUME +// 262144: IT_CASH +show_picker_item_type: 112 + +// Method of distribution when item party share is enabled in a party: +// 0: Normal (item goes to a random party member) +// 1: Item Share is disabled for non-mob drops (player/pet drops) +// 2: Round Robin (items are distributed evenly and in order among members) +// 3: 1+2 +party_item_share_type: 0 + +// Is exp/item sharing disabled for idle members in the party? +// Set to 0, or the amount of seconds (NOT milliseconds) that need to pass before considering +// a character idle. +// Characters in a chat/vending are always considered idle. +// A character's idle status is reset upon item use/skill use/attack (auto attack counts too)/movement. +idle_no_share: 0 + +// Give additional experience bonus per party-member involved on even-share parties (excluding yourself)? +// ex. If set to 10, an even-share party of 5 people will receive +40% exp (4 members * 10% exp): +// 140% party experience in total, so each member receives 140%/5 = 28% exp (instead of 20%). +party_even_share_bonus: 0 + +// Display party name regardless if player is in a guild. +// Official servers do not display party name unless the user is in a guild. (Note 1) +display_party_name: true diff --git a/conf/map/battle/pet.conf b/conf/map/battle/pet.conf new file mode 100644 index 000000000..a07963b98 --- /dev/null +++ b/conf/map/battle/pet.conf @@ -0,0 +1,100 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Pet) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// Rate for catching pets (Note 2) +pet_catch_rate: 100 + +// Can you name a pet more then once? (Note 1) +pet_rename: true + +// The rate a pet will get friendly by feeding it. (Note 2) +pet_friendly_rate: 100 + +// The rate at which a pet will become hungry. (Note 2) +pet_hungry_delay_rate: 100 + +// If your pet is hungry by how much will the friendlyness decrease by. (Default is 5) +// Note: The friendlyness is 0-1000 total, at 0 the pet runs away. +pet_hungry_friendly_decrease: 5 + +// Does the pet need its equipment before it does its skill? (Note 1) +pet_equip_required: true + +// When the master attacks a monster, whether or not the pet will also attack. (Note 1) +pet_attack_support: false + +// When the master receives damage from the monster, whether or not the pet attacks back. (Note 1) +pet_damage_support: false + +// Minimum intimacy necessary for a pet to support their master. Default is 900 +// (intimacy goes from 0 to 1000). At this minimum, support rate is 50% of pet's normal value. +// At max (1000) support rate is 150%. +pet_support_min_friendly: 900 + +// Same as above, but this is to use the pet_script field with official pet abilities. +pet_equip_min_friendly: 900 + +// Whether or not the pet's will use skills. (Note 1) +// Note: Offensive pet skills need at least pet_attack_support or +// pet_damage_support to work (they trigger while the pet is attacking). +pet_status_support: false + +// Rate at which a pet will support it's owner in battle. (Note 2) +// Affects pet_attack_support & pet_damage_support. +pet_support_rate: 100 + +// Does the pets owner receive exp from the pets damage? +pet_attack_exp_to_master: false + +// The rate exp. is gained from the pet attacking monsters +pet_attack_exp_rate: 100 + +// Pet leveling system. Use 0 to disable (default). +// When enabled, a pet's level is a fixed % of the master's. (Note 2) +// If 200%, pet has double level, if 50% pet has half your level, etc. +pet_lv_rate: 0 + +// When pet leveling is enabled, what is the max stats for pets? +pet_max_stats: 99 + +// When pet leveling is enabled, these are the imposed caps on +// min/max damage. Note that these only cap atk1 and atk2, if you +// enable pet_str, their max damage is then their base_atk + pet_max_atk2 +pet_max_atk1: 500 +pet_max_atk2: 1000 + +// Are pets disabled during Guild Wars? +// If set to true, pets are automatically returned to egg when entering castles during WoE times +// and hatching is forbidden within as well. +pet_disable_in_gvg: false diff --git a/conf/map/battle/player.conf b/conf/map/battle/player.conf new file mode 100644 index 000000000..b8fe28a3c --- /dev/null +++ b/conf/map/battle/player.conf @@ -0,0 +1,227 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Player) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. +//========================================================================= + +// Players' maximum HP rate? (Default is 100) +hp_rate: 100 + +// Players' maximum SP rate? (Default is 100) +sp_rate: 100 + +// Whether or not cards and attributes of the left hand are applied to the right hand attack (Note 1) +// (It is true on official servers) +left_cardfix_to_right: true + +// The amount of HP a player will respawn with, 0 is default. +// (Unit is in percentage of total HP, 100 is full heal of HP, 0 is respawn with 1HP total.) +restart_hp_rate: 0 + +// The amount of SP a player will respawn with, 0 is default. +// (Unit is in percentage of total SP, 100 is full heal of SP, 0 is respawn with 1SP total.) +restart_sp_rate: 0 + +// Can a normal player by-pass the skill tree? (Note 1) +player_skillfree: false + +// When set to true, forces skill points gained from 1st class to be put into 1st class +// skills, and forces novice skill points to be put into the basic skill. (Note 1) +player_skillup_limit: true + +// Quest skills can be learned? (Note 1) +// Setting this to true can open an exploit on your server! +quest_skill_learn: false + +// When skills are reset, quest skills are reset as well? (Note 1) +// Setting this to true can open an exploit on your server! +// NOTE: If you have quest_skill_learn set to true, quest skills are always reset. +quest_skill_reset: false + +// You must have basic skills to be able to sit, trade, form a party or create a chatroom? (Note 1) +basic_skill_check: true + +// When teleporting, or spawning to a map, how long before a monster sees you if you don't move? (time is in milliseconds) +// That is, when you go to a map and don't move, how long before the monsters will notice you. +// When moving, attacking or doing similar actions, the effect ends instantly. +// Value is also affected by 'invincible_time_inc' mapflag +player_invincible_time: 5000 + +// When set to true, it prevent portal abuse for avoid hits. Official value is false. +fix_warp_hit_delay_abuse: true + +// The time interval for HP to restore naturally. (in milliseconds) +natural_healhp_interval: 6000 + +// The time interval for SP to restore naturally. (in milliseconds) +natural_healsp_interval: 8000 + +// Automatic healing skill's time interval. (in milliseconds) +natural_heal_skill_interval: 10000 + +// The maximum weight for a character to carry when the character stops healing naturally. (in %) +natural_heal_weight_rate: 50 + +// Maximum atk speed. (Default 190, Highest allowed 199) +max_aspd: 190 + +// Same as max_aspd, but for 3rd classes. (Default 193, Highest allowed 199) +max_third_aspd: 193 + +// Maximum walk speed rate (200 would be capped to twice the normal speed) +max_walk_speed: 300 + +// Maximum HP. (Default is 1000000) +max_hp: 1000000 + +// Maximum SP. (Default is 1000000) +max_sp: 1000000 + +// Max limit of char stats. (agi, str, etc.) +max_parameter: 99 + +// Same as max_parameter, but for 3rd classes. +max_third_parameter: 130 + +// Same as max_parameter, but for extended classes (Ex. Super Novice, Kagero/Oboro, Rebellion). +max_extended_parameter: 125 + +// Same as max_parameter, but for summoner class +max_summoner_parameter: 120 + +// Same as max_parameter, but for baby classes. +max_baby_parameter: 80 + +// Same as max_parameter, but for baby 3rd's. +max_baby_third_parameter: 117 + +// Max armor def/mdef +// NOTE: This setting have no effect if server is run on Renewal Mode (RENEWAL) +// NOTE: does not affects skills and status effects like Mental Strength +// If weapon_defense_type is non-zero, it won't apply to max def. +// If magic_defense_type is non-zero, it won't apply to max mdef. +max_def: 99 + +// Def to Def2 conversion bonus. If the armor def/mdef exceeds max_def, +// the remaining is converted to vit def/int mdef using this multiplier +// (eg: if set to 10, every armor point above the max becomes 10 vit defense points) +over_def_bonus: 0 + +// Max weight carts can hold. +max_cart_weight: 8000 + +// Prevent logout of players after being hit for how long (in ms, 0 disables)? +prevent_logout: 10000 + +// When should the server prevent a player from logging out? Have no effect if prevent_logout is disabled. (Note 3) +// Official servers prevent players from logging out after attacking, casting skills, and taking damage. +// 0 = Players can always logout +// 1 = Prevent logout on login +// 2 = Prevent logout after attacking +// 4 = Prevent logout after casting skill +// 8 = Prevent logout after being hit +prevent_logout_trigger: 14 + +// Display the drained hp/sp values from normal attacks? (Ie: Hunter Fly card) +show_hp_sp_drain: false + +// Display the gained hp/sp values from killing mobs? (Ie: Sky Deleter Card) +show_hp_sp_gain: true + +// Show the critical bonus for katar class weapon in player status window? On +// official server, the critical bonus from katar class weapon isn't display. +// (Default: false) +show_katar_crit_bonus: true + +// If set, when A accepts B as a friend, B will also be added to A's friend +// list, otherwise, only A appears in B's friend list. +// NOTE: this setting only enables friend auto-adding; auto-deletion does not work yet +friend_auto_add: true + +// Are simultaneous trade/party/guild invite requests automatically rejected? +invite_request_check: true + +// Players' will drop a 'Skull' when killed? +// 0 = Disabled +// 1 = Dropped only in PvP maps +// 2 = Dropped in all situations +bone_drop: 0 + +// Do mounted (on Peco) characters increase their size +// 0 = no +// 1 = only Normal Classes on Peco have Big Size +// 2 = only Baby Classes on Peco have Medium Size +// 3 = both Normal Classes on Peco have Big Size +// and Baby Classes on Peco have Medium Size +character_size: 0 + +// Idle characters can receive autoloot? +// Set to the time in seconds where an idle character will stop receiving +// items from Autoloot (0: disabled). +idle_no_autoloot: 0 + +// Minimum distance a vending/chat room must be from a NPC in order to be placed +// Default: 3 (0: disabled). +min_npc_vendchat_distance: 3 + +// If min_npc_vendchat_distance is enabled, +// can players vend/chat room nearby hidden npc? (Ie: FAKE_NPC/HIDDEN_WARP_NPC) +vendchat_near_hiddennpc: false + +// Super Novice's fury is enabled to increments of 10%, such as at 10.0%, 20.0% - 80.0%, 90.0% +// Changing snovice_call_type config to 1 enables its use at 0%, for maxed super novices. +// default: 0 +snovice_call_type: 0 + +// How the server should measure the character's idle time? (Note 3) +// 0x001 - Walk Request +// 0x002 - UseSkillToID Request ( targetted skill use attempt ) +// 0x004 - UseSkillToPos Request ( aoe skill use attempt ) +// 0x008 - UseItem Request ( including equip/unequip ) +// 0x010 - Attack Request +// 0x020 - Chat Request ( whisper, party, guild, bg, etca ) +// 0x040 - Sit/Standup Request +// 0x080 - Emotion Request +// 0x100 - DropItem Request +// 0x200 - @/#Command Request +// Please note that at least 1 option has to be enabled. +// Be mindful that the more options used, the easier it becomes to cheat features that rely on idletime (e.g. checkidle()). +// Default: walk ( 0x1 ) + useskilltoid ( 0x2 ) + useskilltopos ( 0x4 ) + useitem ( 0x8 ) + attack ( 0x10 ) = 0x1F +idletime_criteria: 0x1F + +// Can players get ATK/DEF from refinements on costume/shadow equips? +// Default: yes (Official behavior not known) +costume_refine_def: true +shadow_refine_def: true +shadow_refine_atk: true + +// Keep player facing direction after warping? +// Default: false (on official servers players always faces north) +player_warp_keep_direction: true diff --git a/conf/map/battle/skill.conf b/conf/map/battle/skill.conf new file mode 100644 index 000000000..b88c5d141 --- /dev/null +++ b/conf/map/battle/skill.conf @@ -0,0 +1,326 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Skill) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// The rate of time it takes to cast a spell (Note 2, 0 = No casting time) +casting_rate: 100 + +// Delay time after casting (Note 2) +delay_rate: 100 + +// Does the delay time depend on the caster's DEX and/or AGI? (Note 1) +// Note: On Official servers, neither Dex nor Agi affect delay time +delay_dependon_dex: false +delay_dependon_agi: false + +// Minimum allowed delay for ANY skills after casting (in milliseconds) (Note 1) +// Note: Setting this to anything above 0 can stop speedhacks. +min_skill_delay_limit: 100 + +// This delay is the min 'can't walk delay' of all skills. +// NOTE: Do not set this too low, if a character starts moving too soon after +// doing a skill, the client will not update this, and the player/mob will +// appear to "teleport" afterwards. +default_walk_delay: 300 + +//Completely disable skill delay of the following types (Note 3) +//NOTE: By default mobs don't have the skill delay as specified in the skill +// database, but follow their own 'reuse' skill delay which is specified on +// the mob skill db. When set, the delay for all skills become +// min_skill_delay_limit. +no_skill_delay: 2 + +// At what dex does the cast time become zero (instant cast)? +castrate_dex_scale: 150 + +// How much (dex*2+int) does variable cast turns zero? +vcast_stat_scale: 530 + +// What level of leniency should the skill system give for skills when +// accounting attack motion (ASPD) for casting skills (Note 2, between 0 and 300) +// +// NOTE: Setting this to 100% may cause some issues with valid skills not being cast. +// The time difference between client and server varies so allowing 90% leniency +// should be enough to forgive very small margins of error. +skill_amotion_leniency: 90 + +// Will normal attacks be able to ignore the delay after skills? (Note 1) +skill_delay_attack_enable: true + +// Range added to skills after their cast time finishes. +// Decides how far away the target can walk away after the skill began casting before the skill fails. +// 0 disables this range checking (default) +skill_add_range: 0 + +// If the target moves out of range while casting, do we take the items and SP for the skill anyway? (Note 1) +skill_out_range_consume: false + +// Does the distance between caster and target define if the skill is a ranged skill? (Note 3) +// If set, when the distance between caster and target is greater than 3 the skill is considered long-range, otherwise it's a melee range. +// If not set, then the range is determined by the skill's range (if it is above 5, the skill is ranged). +// Default 14 (mobs + pets + homun) +skillrange_by_distance: 14 + +// Should the equipped weapon's range override the skill's range defined in the skill_db for most weapon-based skills? (Note 3) +// NOTE: Skills affected by this option are those whose range in the skill_db are negative. By default always the skill range is used. +// Note that if you want all monster skills to have a range of 9 you need to set monster_ai&0x400. +skillrange_from_weapon: 0 + +// Should a check on the caster's status be performed in all skill attacks? +// When set to true, meteors, storm gust and any other ground skills will have +// no effect while the caster is unable to fight (eg: stunned). +skill_caster_check: true + +// Should ground placed skills be removed as soon as the caster dies? (Note 3) +clear_skills_on_death: 0 + +// Should ground placed skills be removed when the caster changes maps? (Note 3) +clear_skills_on_warp: 15 + +//Setting this to true will override the target mode of ground-based skills with the flag 0x01 to "No Enemies" +//The two skills affected by default are Pneuma and Safety Wall (if set to true, those two skills will not protect everyone, but only allies) +//See db/skill_unit_db.txt for more info. +defunit_not_enemy: false + +// Do skills do at least 'hits' damage when they don't miss/are blocked? +//(for example, will firebolts always do "number of bolts" damage versus plants?) +//Values (add as appropriate): 1 for weapon-based attacks, 2 for magic attacks, 4 for misc attacks. +skill_min_damage: 6 + +// The delay rate of monk's combo (Note 2) +combo_delay_rate: 100 + +// Use alternate auto Counter Attack Skill Type? (Note 3) +// For those characters on which it is set, 100% Critical, +// Otherwise it disregard DEF and HIT+20, CRI*2 +auto_counter_type: 15 + +// Can ground skills be placed on top of each other? (Note 3) +// By default, skills with UF_NOREITERATION set cannot be stacked on top of +// other skills, this setting will override that. (skill_unit_db) +skill_reiteration: 0 + +// Can ground skills NOT be placed underneath/near players/monsters? (Note 3) +// If set, only skills with UF_NOFOOTSET set will be affected (skill_unit_db) +skill_nofootset: 1 + +// Should traps (hunter traps + quagmire) change their target to "all" inside gvg/pvp grounds? (Note 3) +// Default on official servers: true for player-traps +gvg_traps_target_all: 1 + +// Some traps settings (add as necessary): +// 1: Traps are invisible to those who come into view of it. When unset, all traps are visible at all times. +// (Invisible traps can be revealed through Hunter's Detecting skill) +traps_setting: 0 + +// Restrictions applied to the Alchemist's Summon Flora skill (add as necessary) +// 1: Enable players to damage the floras outside of versus grounds. +// 2: Disable having different types out at the same time +// (eg: forbid summoning anything except hydras when there's already +// one hydra out) +summon_flora_setting: 3 + +// When songs are canceled, terminated or the character goes out of the +// area of effect, there's an additional effect that lasts for 20 seconds +// Should that time be reset for each song? +// 0: No, you must recast the song AFTER those 20 seconds to have the effect again (Aegis) +// 1: Yes, recasting songs reset the 20 seconds timer (eathena) +song_timer_reset: 0 + +// Whether placed down skills will check walls (Note 1) +// (Makes it so that Storm Gust/Lord of Vermillion/etc when cast next to a wall, won't hit on the other side) +skill_wall_check: true + +// When cloaking, Whether the wall is checked or not. (Note 1) +// Note: When the skill does not checks for walls, you will always be considered +// as if you had a wall-next to you (you always get the wall-based speed). +// Add the settings as required, being hit always uncloaks you. +// 0 = doesn't check for walls +// 1 = Check for walls +// 2 = Cloaking is not canceled when attacking. +// 4 = Cloaking is not canceled when using skills +player_cloak_check_type: 1 +monster_cloak_check_type: 4 + +// Can't place unlimited land skills at the same time (Note 3) +land_skill_limit: 9 + +//Determines which kind of skill-failed messages should be sent: +// 0 - Enable by default +// 1 - Disable all skill-failed messages. +// 2 - Disable skill-failed messages due to can-act delays. +// 4 - Disable failed message from Snatcher +// 8 - Disable failed message from Envenom +display_skill_fail: 0 + +// Can a player in chat room (in-game), be warped by a warp portal? (Note 1) +chat_warpportal: false + +// What should the wizard's "Sense" skill display on the defense fields? +// 0: Do not show defense +// 1: Base defense [RE default] +// 2: Vit/Int defense +// 3: Both (the addition of both) +sense_type: 1 + +// Which finger offensive style will be used? +// 0 = Aegis style (single multi-hit attack) +// 1 = Athena style (multiple consecutive attacks) +finger_offensive_type: 0 + +// Grandcross Settings (Don't mess with these) +// If set to false, hit interval is increased based on the amount of mobs standing on the same cell +// (means that when there's stacked mobs in the same cell, they won't receive all hits) +gx_allhit: false + +// Grandcross display type (Default 1) +// 0: Yellow character +// 1: White character +gx_disptype: 1 + +// Max Level Difference for Devotion +devotion_level_difference: 10 + +// If false than you can use the ensemble skills alone. (Note 1) +player_skill_partner_check: true + +// Remove trap type +// 0 = Aegis system : Returns 1 'Trap' item +// 1 = Athena system : Returns all items used to deploy the trap +skill_removetrap_type: 0 + +// Does using bow to do a backstab give a 50% damage penalty? (Note 1) +backstab_bow_penalty: true + +// How many times you could try to steal from a mob. +// Note: It helps to avoid stealing exploit on monsters with few rare items +// Use 0 to disable (max allowed value is 255) +skill_steal_max_tries: 0 + +// Can Rogues plagiarize advanced job skills +// 0 = no restriction +// 1 = only stalker may plagiarize advanced skills +// 2 = advanced skills cannot be plagiarized by anyone +// Official servers setting: 2 +copyskill_restrict: 2 + +// Does Berserk/Frenzy cancel other self-buffs when used? +berserk_cancels_buffs: false + +// Level and Strength of "MVP heal". When someone casts a heal of this level or +// above, the heal formula is bypassed and this value is used instead. +max_heal: 9999 +max_heal_lv: 11 + +// Emergency Recall Guild Skill setting (add as appropriate). +// Note that for the skill to be usable at all, +// you need at least one of 1/2 and 4/8 +// 1: Skill is usable outside of woe. +// 2: Skill is usable during woe. +// 4: Skill is usable outside of GvG grounds +// 8: Skill is usable on GvG grounds +//16: Disable skill from "nowarpto" maps +// (it will work on GVG castles even if they are set to nowarpto, though) +emergency_call: 11 + +// Guild Aura Skills setting (add as appropriate). +// (This affects GD_LEADERSHIP, GD_GLORYWOUNDS, GD_SOULCOLD and GD_HAWKEYES) +// Note that for the skill to be usable at all, +// you need at least one of 1/2 and 4/8 +// 1: Skill works outside of woe. +// 2: Skill works during woe. +// 4: Skill works outside of GvG grounds +// 8: Skill works on GvG grounds +//16: Disable skill from affecting Guild Master +guild_aura: 31 + +// Allows players to skip menu when casting Teleport level 1 +// Menu contains two options. "Random" and "Cancel" +skip_teleport_lv1_menu: false + +// Allow use of SG skills without proper day (Sun/Moon/Star) ? +allow_skill_without_day: false + +// Allow use of ES-type magic on players? +allow_es_magic_player: false + +// Miracle of the Sun, Moon and Stars skill ratio (100% = 10000) +sg_miracle_skill_ratio: 2 + +// Miracle of the Sun, Moon and Stars skill duration in milliseconds +sg_miracle_skill_duration: 3600000 + +// Angel of the Sun, Moon and Stars skill ratio (100% = 10000) +sg_angel_skill_ratio: 10 + +// Skills that bHealPower has effect on +// 1: Heal, 2: Sanctuary, 4: Potion Pitcher, 8: Slim Pitcher, 16: Apple of Idun, 32: Highness Heal +skill_add_heal_rate: 7 + +// Whether the damage of EarthQuake with a single target on screen is able to be reflected. +// Note: On official server, EQ is reflectable when there is only one target on the screen, +// which might be an exploit to hunt the MVPs. +eq_single_target_reflectable: true + +// On official server, you will receive damage from Reflection and some Tarot Card even in invincible status. +// When this setting is enabled, it allows you to immune to all kinds of damage, including those stated previous. +// (The number will show but no actual damage will be done) +invincible_nodamage: false + +// Dancing Weapon Switch +// On official server, a fix is in place that prevents the switching of weapons to cancel songs. +// Default: true +dancing_weaponswitch_fix: true + +// Skill Trap Type (GvG) +// 0: (official) Traps in GvG only make player stop moving after its walk path is complete, and it activates other traps on the way. +// 1: Traps in GvG make player stop moving right when stepping over it. +skill_trap_type: 0 + +// Max Possible Level of Monster skills +// Note: If your MVPs are too tough, reduce it to 10. +mob_max_skilllvl: 100 + +// Area of Bowling Bash chain reaction +// 0: Use official gutter line system +// 1: Gutter line system without demi gutter bug +// 2-20: Area around caster (2 = 5x5, 3 = 7x7, 4 = 9x9, ..., 20 = 41x41) +// Note: If you knock the target out of the area it will only be hit once and won't do splash damage +bowling_bash_area: 0 + +// On official servers, Storm Gust consists of 81 units that all deal 3x3 splash damage "away from center". Due to +// south-western cells being processed first, this usually leads to a knockback to the northeast. Knockback at the +// edges will be away from SG. Knockback direction can also be influenced by Ganbantein and Land Protector. If you +// punch a hole into SG it will for example create a "suck in" effect. +// If you disable this setting, the knockback direction will be completely random (eAthena style). +stormgust_knockback: true diff --git a/conf/map/battle/status.conf b/conf/map/battle/status.conf new file mode 100644 index 000000000..37b2e013d --- /dev/null +++ b/conf/map/battle/status.conf @@ -0,0 +1,47 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +// Battle (Status) Configuration File +//========================================================================= +// Note 1: Value is a config switch (true/false) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, +// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary) +//========================================================================= + +// Should skill casting be canceled when inflicted by curse/stun/sleep/etc (includes silence) (Note 3)? +status_cast_cancel: 0 + +// Adjustment for the natural rate of resistance from status changes. +// If 50, status defense is halved, and you need twice as much stats to block +// them (eg: 200 vit to completely block stun) +pc_status_def_rate: 100 +mob_status_def_rate: 100 + +// Maximum resistance to status changes. (100 = 100%) +// NOTE: Cards and equipment can go over this limit, so it only applies to natural resist. +pc_max_status_def: 100 +mob_max_status_def: 100 diff --git a/conf/map/charhelp.txt b/conf/map/charhelp.txt new file mode 100644 index 000000000..e3acddbb4 --- /dev/null +++ b/conf/map/charhelp.txt @@ -0,0 +1,28 @@ + 40:--- CHARACTER CMD --- + 40:#statsall <char name> - Set all stats of a player to maximum. + 40:#itemlist <char name> - Displays all items of a player. + 40:#storagelist <char name> - Displays all items of a player's storage. + 40:#stats <char name> - Displays a characters stats. + 60:#option <char name> <param1> <param2> <param3> - Like @option command but only to target character. + 50:#mountpeco <char name> - Give/remove to a player a peco (Class is required, but not skill). + 50:#petrename <char name> - Re-enable pet rename to a player. + 60:#save <char name> <map> <x> <y> - Changes the target players respawn point. + 60:#baselvl/#blvl <char name> <#> - Change a characters base level. + 60:#joblvl/#jlvl <char name> <#> - Change a characters job level. + 60:#job/#jobchange <char name> <job ID> - Changes target characters job. + 60:#zeny <char name> <amount> - Give/take a players Zeny + 60:#cash <char name> <amount> - Give/take a player cash points + 60:#points <char name> <amount> - Give/take a player Kafra points + 60:#stpoint <char name> <amount> - Give/take a players stat points + 60:#skpoint <char name> <amount> - give/take a players skill points + 60:#skreset <char name> - Reset skills of a character. + 60:#streset <char name> - Reset stats of a character. + 60:#reset <char name> - Reset stats AND skills of a character. + 60:#questskill <char name> <#> - Gives to a player the specified quest skill. + 60:#lostskill <char name> <#> - Takes away the specified quest skill from the player. + 60:#delitem <char name> <item_name_or_ID> <quantity> - Remove items from a character + 50:#model <char name> <hair type> <hair color> <clothes color> - Changes a player's model + 60:#disguise <char name> <monster_name_or_monster_ID> - Changes disguise of a player + 60:#undisguise <char name> - Cancels disguise of a player + 60:#changesex <char name> - Changes sex of a player (all characters of the account) + 60:#warp/#rura+ <char name> <mapname> <x> <y> - Warps character to location of choice diff --git a/conf/map/help.txt b/conf/map/help.txt new file mode 100644 index 000000000..846c16276 --- /dev/null +++ b/conf/map/help.txt @@ -0,0 +1,307 @@ +// This is help file that contains help messages for atcommands/charcommands. + +// Format: +// <command>: "<help message>" + +// This file uses libconfig syntax. + +help: "Params: <command>\n" "Shows help for specified command." +noask: "Auto rejects deals/invites." +me: "Params: <message>\n" "Displays normal text as a message in this format: *name message* (like /me in mIRC)." +fakename: "Params: <name>\n" "Changes your name to your choice temporarily." +npctalk: "Params: <NPC name> <message>\n" "Forces a NPC to display a message in normal chat." +broadcast: "Params: <message>\n" "Broadcasts a message with your name (in yellow)." +kami: "Params: <message>\n" "Broadcasts a message without your name (in yellow)." +kamib: "Params: <message>\n" "Broadcasts a message without your name (in blue)." +localbroadcast: "Params: <message>\n" "Broadcasts a message with your name (in yellow) only on your map." +commands: "Displays a list of commands that you can use." +rates: "Displays the server's current rates." +uptime: "Displays how long the server has been online." +showdelay: "Shows/hides the \"There is a delay after this skill\" message." +exp: "Displays current levels and % progress." +mobinfo: "Params: <monster name|ID>\n" "Shows monster info (stats, exp, drops etc)." +iteminfo: "Params: <item name|ID>\n" "Shows item info (type, price etc)." +whodrops: "Params: <item name|ID>\n" "Shows who drops an item (monster with highest drop rates)." +version: "Displays SVN version of the server." +email: "Params: <current email> <new email>\n" "Changes your account e-mail address." +where: "Params: <char name>\n" "Tells you the location of a character." +time: "Shows the date and time of the server." +showexp: "Displays/hides experience gained." +showzeny: "Displays/hides Zeny gained." +mobsearch: "Params: <monster name|ID>\n" "Shows the location of a certain mob on the current map." +who: "Params: [<name>]\n" "Shows a list of online players and their party and guild." +who2: "Params: [<name>]\n" "Shows a list of online players and their job." +who3: "Params: [<name>]\n" "Shows a list of online players and their location." +whomap: "@whomap/@whomap2/@whomap3 [map] - like @who/@who2/@who3 but only for specified map." +whogm: "Params: [match_text] - Like @who+@who2+who3, but only for GM." +guildspy: "Params: <guild name|id> - You will receive all messages of the guild channel (Chat logging must be enabled)" +partyspy: "@partyspy <party name|id> - You will receive all messages of the party channel (Chat logging must be enabled)" +mapinfo: "Params: [<0-3> [map]] - Give information about a map (general info +: 0: no more, 1: players, 2: NPC, 3: shops/chat)." +go: "Params: <city name|number>\n" "Warps you to a city.\n" + " -3: (Memo point 2) 14: louyang 31: mora\n" + " -2: (Memo point 1) 15: start point 32: dewata\n" + " -1: (Memo point 0) 16: prison/jail 33: malangdo island\n" + " 0: prontera 17: jawaii 34: malaya port\n" + " 1: morocc 18: ayothaya 35: eclage\n" + " 2: geffen 19: einbroch\n" + " 3: payon 20: lighthalzen\n" + " 4: alberta 21: einbech\n" + " 5: izlude 22: hugel\n" + " 6: aldebaran 23: rachel\n" + " 7: xmas (lutie) 24: veins\n" + " 8: comodo 25: moscovia\n" + " 9: yuno 26: midgard camp\n" + " 10: amatsu 27: manuk\n" + " 11: gonryun 28: splendide\n" + " 12: umbala 29: brasilis\n" + " 13: niflheim 30: el dicastes\n" +jumpto: "Params: <char name>\n" "Warps you to selected character." +follow: "Params: <char name>\n" "Follow a player." +mount: "Give/remove you a peco (Class is required, but not skill)" +disguise: "Params: <monster name|ID>\n" "Change your appearence to other players to a mob." +undisguise: "Restore your normal appearance." +disguiseguild: "Disguises all online characters of a guild." +undisguiseguild: "Restore the normal appearance of all characters of a guild." +model: "Params: <hair ID: 0-17> <hair color: 0-8> <clothes color: 0-4> - Changes your characters appearence." +size: "Params: <1-3> Changes your size (1-Smallest 2-Biggest 3-Normal)" +sizeall: "Changes the size of all players." +sizeguild: "Changes the size of all online characters of a guild." +hide: "Makes you character invisible (GM invisibility). Type again to become visible." +save: "Sets respawn point to current spot." +load: "Warps you to your save point." +warp: "Params: <mapname> [<x> <y>]\n" "Warps you to the selected map and position." +jump: "Params: [<x> [<y>]]\n" "Randomly warps you like a flywing." +jobchange: "Params: <job name|ID>\n" "Changes your job.\n" + "----- Novice / 1st Class -----\n" + " 0 Novice 1 Swordman 2 Magician 3 Archer\n" + " 4 Acolyte 5 Merchant 6 Thief\n" + "----- 2nd Class -----\n" + " 7 Knight 8 Priest 9 Wizard 10 Blacksmith\n" + " 11 Hunter 12 Assassin 14 Crusader 15 Monk\n" + " 16 Sage 17 Rogue 18 Alchemist 19 Bard\n" + " 20 Dancer\n" + "----- High Novice / High 1st Class -----\n" + "4001 Novice High 4002 Swordman High 4003 Magician High 4004 Archer High\n" + "4005 Acolyte High 4006 Merchant High 4007 Thief High\n" + "----- Transcendent 2nd Class -----\n" + "4008 Lord Knight 4009 High Priest 4010 High Wizard 4011 Whitesmith\n" + "4012 Sniper 4013 Assassin Cross 4015 Paladin 4016 Champion\n" + "4017 Professor 4018 Stalker 4019 Creator 4020 Clown\n" + "4021 Gypsy\n" + "----- 3rd Class (Regular) -----\n" + "4054 Rune Knight 4055 Warlock 4056 Ranger 4057 Arch Bishop\n" + "4058 Mechanic 4059 Guillotine Cross 4066 Royal Guard 4067 Sorcerer\n" + "4068 Minstrel 4069 Wanderer 4070 Sura 4071 Genetic\n" + "4072 Shadow Chaser\n" + "----- 3rd Class (Transcendent) -----\n" + "4060 Rune Knight 4061 Warlock 4062 Ranger 4063 Arch Bishop\n" + "4064 Mechanic 4065 Guillotine Cross 4073 Royal Guard 4074 Sorcerer\n" + "4075 Minstrel 4076 Wanderer 4077 Sura 4078 Genetic\n" + "4079 Shadow Chaser\n" + "----- Expanded Class -----\n" + " 23 Super Novice 24 Gunslinger 25 Ninja 4045 Super Baby\n" + "4046 Taekwon 4047 Star Gladiator 4049 Soul Linker 4050 Gangsi\n" + "4051 Death Knight 4052 Dark Collector 4190 Ex. Super Novice 4191 Ex. Super Baby\n" + "4211 Kagerou 4212 Oboro 4215 Rebellion 4218 Summoner\n" + "----- Baby Novice And Baby 1st Class -----\n" + "4023 Baby Novice 4024 Baby Swordman 4025 Baby Magician 4026 Baby Archer\n" + "4027 Baby Acolyte 4028 Baby Merchant 4029 Baby Thief\n" + "---- Baby 2nd Class ----\n" + "4030 Baby Knight 4031 Baby Priest 4032 Baby Wizard 4033 Baby Blacksmith\n" + "4034 Baby Hunter 4035 Baby Assassin 4037 Baby Crusader 4038 Baby Monk\n" + "4039 Baby Sage 4040 Baby Rogue 4041 Baby Alchemist 4042 Baby Bard\n" + "4043 Baby Dancer\n" + "---- Baby 3rd Class ----\n" + "4096 Baby Rune Knight 4097 Baby Warlock 4098 Baby Ranger 4099 Baby Arch Bishop\n" + "4100 Baby Mechanic 4101 Baby Glt. Cross 4102 Baby Royal Guard 4103 Baby Sorcerer\n" + "4104 Baby Minstrel 4105 Baby Wanderer 4106 Baby Sura 4107 Baby Genetic\n" + "4108 Baby Shadow Chaser\n" + "---- Modes And Others ----\n" + " 22 Wedding 26 Christmas 27 Summer 4048 Star Gladiator (Union)\n" +option: "Params: <param1> <param2>(stackable) <param3>(stackable)\n" "Adds different visual effects on or around your character.\n" +" <param1> <param2> <param3>\n" +"01: Stone 01: Sight 01: Sight 512: Cart Lv. 4\n" +"02: Frozen 02: Curse 02: Hiding 1024: Cart Lv. 5\n" +"03: Stun 04: Silence 04: Cloaking 2048: Orc Head\n" +"04: Sleep 08: Signum 08: Cart Lv. 1 4096: Wedding\n" +"06: Petrify 16: Blind 16: Falcon 8192: Ruwach\n" +"07: Burning 32: Angelus 32: Riding 16384: Chasewalk\n" +"08: Imprison 64: Bleeding 64: Invisible\n" +"16: (Nothing) 128: D. Poison 128: Cart Lv. 2\n" +"32: (Nothing) 256: Fear 256: Cart Lv. 3" +heal: "Params: [<HP> <SP>]\n" "Heals the desired amount of HP and SP. No value specified will do a full heal." +dye: "Params: <clothes palette no.>\n" "Changes your characters clothes color." +hairstyle: "Params: <hairstyle no.>\n" "Changes your hair style." +haircolor: "Params <hair palette no.>\n" "Changes your hair color." +speed: "Params: <1-1000>\n" "Changes you walking speed. 1 being the fastest and 1000 the slowest. Default is 150." +effect: "Params: <effect id> [<flag>]\n" "Give an effect to your character." +dropall: "Throws all your possession on the ground." +storeall: "Puts all your possessions in storage." +killable: "Make your character killable." +memo: "Params: [memo position]\n" "Set/change a memo location (no position: display memo points)." +spiritball: "Params: <1-100>\n" "Gives you \"spirit spheres\" like from the skill \"Call Spirits\".\n" +questskill: "Params: <#>\n" "Gives you the specified quest skill\n" +"Novice = 142: First Aid, 143: Act Dead\n" +"Archer = 147: Create Arrow, 148: Charge Arrow\n" +"Swordman = 144: Moving HP Recovery, 145: Attack Weak Point, 146: Auto Berserk\n" +"Acolyte = 156: Holy Light\n" +"Thief = 149: Throw Sand, 150: Back Sliding, 151: Take Stone, 152: Throw Stone\n" +"Merchant = 153: Cart Revolution, 154: Change Cart, 155: Crazy Uproar, 2535: Open Buying Store\n" +"Magician = 157: Energy Coat\n" +"Hunter = 1009: Phantasmic Arrow\n" +"Bard = 1010: Pang Voice\n" +"Dancer = 1011: Wink of Charm\n" +"Knight = 1001: Charge Attack\n" +"Crusader = 1002: Shrink\n" +"Priest = 1014: Redemptio\n" +"Monk = 1015: Ki Translation, 1016: Ki Explosio\n" +"Assassin = 1003: Sonic Acceleration, 1004: Throw Venom Knife\n" +"Rogue = 1005: Close Confine\n" +"Blacksmith = 1012: Unfair Trick, 1013: Greed\n" +"Alchemist = 238: Basis of Life\n" +"Wizard = 1006: Sight Blaster\n" +"Sage = 1007: Create Elemental Converter, 1008: Elemental Change (Water), 1017: Elemental Change (Earth), 1018: Elemental Change (Fire), 1019: Elemental Change (Wind)" +lostskill: "Params: <#>\n" "Takes away the specified quest skill from you\n" +"Novice = 142: First Aid, 143: Act Dead\n" +"Archer = 147: Create Arrow, 148: Charge Arrow\n" +"Swordman = 144: Moving HP Recovery, 145: Attack Weak Point, 146: Auto Berserk\n" +"Acolyte = 156: Holy Light\n" +"Thief = 149: Throw Sand, 150: Back Sliding, 151: Take Stone, 152: Throw Stone\n" +"Merchant = 153: Cart Revolution, 154: Change Cart, 155: Crazy Uproar, 2535: Open Buying Store\n" +"Magician = 157: Energy Coat\n" +"Hunter = 1009: Phantasmic Arrow\n" +"Bard = 1010: Pang Voice\n" +"Dancer = 1011: Wink of Charm\n" +"Knight = 1001: Charge Attack\n" +"Crusader = 1002: Shrink\n" +"Priest = 1014: Redemptio\n" +"Monk = 1015: Ki Translation, 1016: Ki Explosio\n" +"Assassin = 1003: Sonic Acceleration, 1004: Throw Venom Knife\n" +"Rogue = 1005: Close Confine\n" +"Blacksmith = 1012: Unfair Trick, 1013: Greed\n" +"Alchemist = 238: Basis of Life\n" +"Wizard = 1006: Sight Blaster\n" +"Sage = 1007: Create Elemental Converter, 1008: Elemental Change (Water), 1017: Elemental Change (Earth), 1018: Elemental Change (Fire), 1019: Elemental Change (Wind)" +skillid: "Params: <name>\n" "Look up a skill by name" +useskill: "Params: <skillid> <skillv> <target>\n" "Use a skill on target" +skilltree: "Params: <skillnum> <charname>\n" "Prints the skill tree needed to get a skill for the target player." +marry: "Params: <player name>\n" "Marry another player." +divorce: "Divorce player." +alive: "Revives yourself from death." +blvl: "Params: <number of levels>\n" "Raises your base level the desired number of levels." +jlvl: "Params: <number of levels>\n" "Raises your job level the desired number of levels." +allskill: "Give you all skills." +stpoint: "Params: <number of points> - Gives you the desired number of stat points." +skpoint: "Params: <number of points> - Gives you the desired number of skill points." +zeny: "Params: <amount> - Gives you desired amount of Zeny." +cash: "Params: <amount> - Gives you the specified amount of cash points." +points: "Params: <amount> - Gives you the specified amount of Kafra Points." +str: "Params: <amount>\n" "Raises STR by given amount." +agi: "Params: <amount>\n" "Raises AGI by given amount." +dex: "Params: <amount>\n" "Raises DEX by given amount." +vit: "Params: <amount>\n" "Raises VIT by given amount." +int: "Params: <amount>\n" "Raises INT by given amount." +luk: "Params: <amount>\n" "Raises LUK by given amount." +allstats: "Params: <value>\n" "Adds value in all stats (maximum if no value)." +addwarp: "Params: <map name> <x coord> <y coord>\n" +killmonster2: "Kills all monsters of your map (without drops)." +monster: "Params: <monster name|ID> [<number to spawn> [<desired_monster_name> [<x coord> [<y coord>]]]]\n" + "@monster2 <desired_monster_name> <monster name|ID> [<number to spawn> [<x coord> [<y coord>]]]\n" +"@spawn/@monster/@summon/@monster2 \"desired monster name\" <monster name|ID> [<number to spawn> [<x coord> [<y coord>]]]\n" +"@spawn/@monster/@summon/@monster2 <monster name|ID> \"desired monster name\" [<number to spawn> [<x coord> [<y coord>]]]\n" +" Spawns the desired monster with any desired name." +monstersmall: "Params: <monster name|ID>\n" "Spawns a smaller version of a monster." +monsterbig: "Params: <monster name|ID>\n" "Spawns a larger version of a monster." +killmonster: "Params: <map>\n" "Kill all monsters of the map (they drop)" +autoloot: "Params: <on|off|#>\n" "Makes items go straight into your inventory." +autotrade: "Allows you to vend while you are offline." +changegm: "Params: <charname>\n" "Changes the leader of your guild (You must be guild leader)" +changeleader: "Params: <charname>\n" "Changes the leader of your party (You must be party leader)" +request: "Params: <message>\n" "Sends a message to all connected GMs (via the gm whisper system)" +sound: "Params: <path to file in data folder or GRF file>\n" "Plays a sound from the data folder or GRF file located on the client." +clone: "Params: <charname>\n" "Spawns a supportive clone of the given player." +slaveclone: "Params: <charname>\n" "Spawns a supportive clone of the given player that follows the creator around." +evilclone: "Params: <charname>\n" "Spawns an aggressive clone of the given player." +changesex: "Changes your gender." +duel: "Starts a duel." +invite: "Invites a player to a duel." +accept: "Accepts an invitation to a duel." +reject: "Rejects an invitation to a duel." +leave: "Leaves a duel." +mail: "Open mail box." +storage: "Opens storage." +itemreset: "Remove all your items." +guildstorage: "Opens guild storage." +idsearch: "Params: <part_of_item_name>\n" "Search all items that name have part_of_item_name" +refine: "Params: <equip position> <+/- amount>" +produce: "Params: <equip name or equip ID> <element> <# of very's>\n" +" Element: 0=None 1=Ice 2=Earth 3=Fire 4=Wind\n" +" You can add up to 3 Star Crumbs and 1 element\n" +repairall: "Repair all items of your inventory" +item: "Params: <item name or ID> <quantity>\n" "Gives you the desired item." +item2: "Params: <item name or ID> <quantity> <identified_flag> <refine> <broken_flag> <Card1> <Card2> <Card3> <Card4>\n" "Gives you the desired item." +pvpon: "Turns pvp on on the current map" +pvpoff: "Turns pvp off on the current map" +gvgon: "Turns gvg on on the current map" +gvgoff: "Turns gvg off on the current map" +agitstart: "Starts War of Emperium" +agitend: "End War of Emperium" +party: "Params: <party_name>\n" "Create a party." +guild: "Params: <guild_name>\n" "Create a guild." +glvl: "Params: <# of levels>\n" "Raise Guild by desired number of levels" +guildrecall: "Params: <guild name|ID>\n" "Warps all online characters of a guild to you." +partyrecall: "Params: <party name|ID>\n" "Warps all online characters of a party to you." +petrename: "Re-enable pet rename" +pettalk: "Params: <message>\n" "Makes your pet say a message." +petfriendly: "Params: <#>\n" "Set pet friendly amount (0-1000) 1000 = Max" +pethungry: "Params: <#>\n" "Set pet hungry amount (0-100) 100 = Max" +hatch: "Create a pet from your inventory eggs list." +makeegg: "Params: <pet_id>\n" "Gives pet egg for monster number in pet DB" +kick: "Params: <char name>\n" "Kicks specified character off the server" +unjail: "Params: <char name>\n" "Discharges specified character/prisoner" +kill: "Params: <char name>\n" "Kills player." +recall: "Params: <char name>\n" "Warps target character to you." +raise: "Params: <char name>\n" "Revives target character." +block: "Params: <char name>\n" "Permanently blocks an account." +unblock: "Params: <char name>\n" "Unblocks an account." +ban: "Params: <time> <name>\n" "Temporarily ban an account.\n" + " time usage: adjustment (+/- value) and element (y/a, m, d/j, h, mn, s)\n" + " Example: @ban +1m-2mn1s-6y testplayer\n" +unban: "Params: <name> - Unban a account" +jail: "Params: <char name> - Sends specified character in jails" +trade: "Params: <char name> - Open a trade window with a another player" +recallall: "Warps every character online to you." +doom: "Kills all NON GM chars on the server." +doommap: "Kills all non GM characters on the map." +raisemap: "Resurrects all characters on the map." +night: "Enables night mode on all maps, all characters are affected." +day: "Disables night mode and restores regular lighting, all characters are affected." +skillon: "turn skills on for a map" +skilloff: "turn skills on for a map" +snow: "Makes all maps to have the snow weather effect." +clouds: "Makes all maps to have the cloudy weather effect." +clouds2: "Makes all maps to have another cloudy weather effect." +fog: "Makes all maps to have the fog weather effect." +fireworks: "Makes all maps to have the fireworks weather effect." +sakura: "Makes all maps to have the sakura weather effect." +leaves: "Makes all maps to have the leaves weather effect." +shownpc: "Params: <NPC name>\n" "Enable a NPC" +hidenpc: "Params: <NPC name>\n" "Disable a NPC" +loadnpc: "Params: <path to script>\n" "Load the specified script file path." +unloadnpc: "Params: <NPC name>\n" "Unload the specified NPC according to name." +adjgroup: "Params: <level> <char name> - Do a temporary adjustment of the GM level of a player" +kickall: "Kick all characters off the server" +mapexit: "Kick all players and shut down map-server." +reloaditemdb: "Reload item database." +reloadmobdb: "Reload monster database." +reloadquestdb: "Reload quest database." +reloadskilldb: "Reload skills definition database." +reloadscript: "Reload all scripts." +gat: "For debugging (you inspect around gat)" +send: "For debugging (packet variety)" +nuke: "Params: <char name>\n" "Blow somebody up, including those surrounding them." +autoloottype: "Manage a list of autolooting item types.\n" +" To add an item type to the list, use \"@autoloottype +<type name>\".\n" +" To remove an item type, use \"@autoloottype -<type name>\".\n" +" Type List: healing, usable, etc, weapon, armor, card, petegg, petarmor, ammo.\n" +" \"@autoloottype reset\" will clear your autoloottype list." diff --git a/conf/map/logs.conf b/conf/map/logs.conf new file mode 100644 index 000000000..4f3a8a4db --- /dev/null +++ b/conf/map/logs.conf @@ -0,0 +1,181 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +//= Hercules Log configuration file. +//========================================================================= +// Note 1: Value is a config switch (on/off, yes/no or 1/0) +// Note 2: Value is in percents (100 means 100%) +// Note 3: Value is a bit field. If no description is given, assume unit +// types (1: Pc, 2: Mob, 4: Pet, 8: Homun) +//========================================================================= + +map_log: { + // Enable Logs? (Note 3) + // 0x0000000 - Don't log at all + // 0x0000001 - (T) Log trades + // 0x0000002 - (V) Log vending transactions + // 0x0000004 - (P) Log items drop/picked by players + // 0x0000008 - (L) Log items drop/looted by monsters + // 0x0000010 - (S) Log NPC transactions (buy/sell) + // 0x0000020 - (N) Log Script transactions (items deleted/acquired through quests) + // 0x0000040 - (D) Log items stolen from mobs (Steal/Gank) + // 0x0000080 - (C) Log player-used items (consumables/pet&hom&merc food/items used for skills&attacks) + // 0x0000100 - (O) Log produced/ingredient items + // 0x0000200 - (U) Log MVP prize items + // 0x0000400 - (A) Log player created/deleted items (through @/# commands) + // 0x0000800 - (R) Log items placed/retrieved from storage. + // 0x0001000 - (G) Log items placed/retrieved from guild storage. + // 0x0002000 - (E) Log mail system transactions. + // 0x0004000 - (I) Log auction system transactions. + // 0x0008000 - (B) Log buying store transactions + // 0x0010000 - (X) Log other transactions + // 0x0020000 - (K) Log account bank transactions + // 0x0040000 - (Y) Divorce + // 0x0080000 - (Z) Roulette + // 0x0100000 - (W) Rental + // 0x0200000 - (Q) Card + // 0x0400000 - (J) Invalid in inventory + // 0x0800000 - (H) Invalid in cart + // 0x1000000 - (@) Egg + // 0x2000000 - (0) Quest + // 0x4000000 - (1) Skill + // 0x8000000 - (2) Refine + // Example: Log trades+vending+script items+created items: 1+2+32+1024 = 1059 + // Please note that moving items from inventory to cart and back is not logged by design. + enable: 0xFFFFFFF + + // Logging files/tables + // Following settings specify where to log to. If 'use_sql' is + // true, SQL tables are assumed, otherwise flat files. + database: { + // Use MySQL Logs? (Note 1) + use_sql: true + + // Flat files + // log_gm_db: "log/atcommandlog.log" + // log_branch_db: "log/branchlog.log" + // log_chat_db: "log/chatlog.log" + // log_mvpdrop_db: "log/mvplog.log" + // log_npc_db: "log/npclog.log" + // log_pick_db: "log/picklog.log" + // log_zeny_db: "log/zenylog.log" + // SQL tables + log_gm_db: "atcommandlog" + log_branch_db: "branchlog" + log_chat_db: "chatlog" + log_mvpdrop_db: "mvplog" + log_npc_db: "npclog" + log_pick_db: "picklog" + log_zeny_db: "zenylog" + } + + // Log Dead Branch Usage (Note 1) + log_branch: false + + // Track Zeny Changes + // Filter settings + // 0 - don't log; 1 - log any zeny changes; 2.....1000000 - minimal absolute logging zeny value + log_zeny: 0 + + // Log MVP Monster Drops (Note 1) + // Outdated. Use Pick_Log instead. But this log could be useful to keep track slayed MVPs + log_mvpdrop: false + + // Log AtCommands & Charcommands (Note 1) + // Only commands issued by player groups ('conf/groups.conf') with + // 'log_commands' setting set to 'true' will be logged. + log_commands: true + + // Log NPC 'logmes' commands (Note 1) + log_npc: false + + // Logging filters + filter: { + item: { + // Filters + // if any condition is true then the item will be logged + // 0 = Don't log at all + // 1 = Log any item + // Advanced Filter Bits by item type: || + // 0x002 - Healing items (0) + // 0x004 - Etc Items(3) + Arrows (10) + // 0x008 - Usable Items(2) + Lures,Scrolls(11) + Usable Cash Items(18) + // 0x010 - Weapon(4) + // 0x020 - Shields,Armor,Headgears,Accessories,etc(5) + // 0x040 - Cards(6) + // 0x080 - Pet Accessories(8) + Eggs(7) (well, monsters don't drop 'em but we'll use the same system for ALL logs) + // 0x100 - Log expensive items ( >= price_items_log) + // 0x200 - Log big amount of items ( >= amount_items_log) + // 0x400 - Log refined items (if their refine >= refine_items_log ) + // 0x800 - Log rare items (if their drop chance <= rare_items_log ) + // Examples: (log filters) + // log_filter: 1 = logs ANY items + // log_filter: 0x2 = logs only HEALING items + // log_filter: 0x4 = logs only Etc Items and Arrows + // log_filter: 0x40 = logs only Cards + // log_filter: 0x142 = logs only Healing items, Cards and those items which price is >= price_items_log + // log_filter: 0xff0 = logs all items (including all rare, big amount) except healing, etc, arrows and useble ones + log_filter: 1 + + // Log Items which Refine >= refine_items_log + refine_items_log: 5 + + // Log Items whith min drop rate <= rare_items_log + // 1 = 0.01%, 100 = 1% drop chance, etc + rare_items_log: 100 + + // don't log it if the current item buy price < price_items_log + price_items_log: 1000 + + // don't log it if the current item amount < amount_items_log + amount_items_log: 100 + } // item + + chat: { + // Log CHAT (Global, Whisper, Party, Guild, Main chat) (Note 3) + // LOGGING FILTERS + // ============================================================= + // 0x00 = Don't log at all + // 0x01 - Log Global messages + // 0x02 - Log Whisper messages + // 0x04 - Log Party messages + // 0x08 - Log Guild messages + // 0x10 - Log Main chat messages + // Example: + // log_chat: 0x5 = logs both Whisper & Party messages + // log_chat: 0x8 = logs only Guild messages + // log_chat: 0x1f = logs everything + // FIXME: This isn't fully functional, as of now it's only checking + // if the log is active or not [Panikon] + log_chat: 0x1f + + // Disable chat logging when WoE is running? (Note 1) + log_chat_woe_disable: false + } // chat + } // filter +} + +import: "conf/import/logs.conf" diff --git a/conf/map/map-server.conf b/conf/map/map-server.conf new file mode 100644 index 000000000..a651c3570 --- /dev/null +++ b/conf/map/map-server.conf @@ -0,0 +1,113 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +//= Map Server Configuration File +//========================================================================= + +map_configuration: { + @include "conf/global/console.conf" + @include "conf/import/sql_connection.conf" + + // map_list and map_removed + @include "conf/map/maps.conf" + + // When @help or @h is typed when you are a gm, this is displayed for helping new gms understand gm commands. + help_txt: "conf/map/help.txt" + charhelp_txt: "conf/map/charhelp.txt" + + // Enable the @guildspy and @partyspy at commands? + // Note that enabling them decreases packet sending performance. + enable_spy: false + + // Read map data from GATs and RSWs in GRF files or a data directory + // as referenced by grf-files.txt rather than from the mapcache? + use_grf: false + + // When employing more than one language (see db/translations.conf), + // this setting is used as a fallback + default_language: "English" + + // Information related to inter-server behavior + inter: { + // Interserver communication passwords, set in the login server database + userid: "s1" + passwd: "p1" + + // Character Server IP + // The map server connects to the character server using this IP address. + // NOTE: This is useful when you are running behind a firewall or are on + // a machine with multiple interfaces. + //char_ip: "127.0.0.1" + + // The map server listens on the interface with this IP address. + // NOTE: This allows you to run multiple servers on multiple interfaces + // while using the same ports for each server. + //bind_ip: "127.0.0.1" + + // Map Server IP + // The IP address which clients will use to connect. + // Set this to what your server's public IP address is. + //map_ip: "127.0.0.1" + + @include "conf/import/ports.conf" + } + + database: { + // Where should all database data be read from? + db_path: "db" + + // Database autosave time + // All characters are saved on this time in seconds (example: + // autosave of 60 secs with 60 characters online -> one char is + // saved every second) + autosave_time: 300 + + // Min database save intervals (in ms) + // Prevent saving characters faster than at this rate (prevents + // char-server save-load getting too high as character-count + // increases) + minsave_time: 100 + + // Apart from the autosave_time, players will also get saved + // when involved in the following (add as needed): + // 0x001: After every successful trade + // 0x002: After every vending transaction + // 0x004: After closing storage/guild storage. + // 0x008: After hatching/returning to egg a pet. + // 0x010: After successfully sending a mail with attachment + // 0x020: After successfully submitting an item for auction + // 0x040: After successfully get/delete/complete a quest + // 0x080: After every buying store transaction + // 0x100: After every bank transaction (deposit/withdraw) + // NOTE: These settings decrease the chance of dupes/lost items + // when there's a server crash at the expense of increasing the + // map/char server lag. If your server rarely crashes, but + // experiences interserver lag, you may want to set these off. + save_settings: 0x1ff + } +} + +import: "conf/import/map-server.conf" diff --git a/conf/map/maps.conf b/conf/map/maps.conf new file mode 100644 index 000000000..2eccce590 --- /dev/null +++ b/conf/map/maps.conf @@ -0,0 +1,78 @@ +map_removed: ( +) +map_list: ( + "000-0-0", + "000-0-1", + "000-0", + "000-1", + "000-2-0", + "000-2-1", + "000-2-2", + "000-2-3", + "000-2-4", + "001-1", + "001-2-0", + "001-2-1", + "001-2-10", + "001-2-11", + "001-2-12", + "001-2-13", + "001-2-14", + "001-2-15", + "001-2-16", + "001-2-17", + "001-2-18", + "001-2-19", + "001-2-2", + "001-2-20", + "001-2-21", + "001-2-22", + "001-2-23", + "001-2-24", + "001-2-25", + "001-2-26", + "001-2-27", + "001-2-28", + "001-2-29", + "001-2-3", + "001-2-30", + "001-2-31", + "001-2-32", + "001-2-33", + "001-2-34", + "001-2-35", + "001-2-36", + "001-2-37", + "001-2-38", + "001-2-39", + "001-2-4", + "001-2-40", + "001-2-41", + "001-2-42", + "001-2-5", + "001-2-6", + "001-2-7", + "001-2-8", + "001-2-9", + "001-3-0", + "001-3-1", + "008-1", + "008-2-0", + "008-2-1", + "008-2-10", + "008-2-11", + "008-2-12", + "008-2-13", + "008-2-14", + "008-2-2", + "008-2-3", + "008-2-4", + "008-2-5", + "008-2-6", + "008-2-7", + "008-2-8", + "008-2-9", + "029-1", + "test", + "testbg", +) diff --git a/conf/map/script.conf b/conf/map/script.conf new file mode 100644 index 000000000..78514e637 --- /dev/null +++ b/conf/map/script.conf @@ -0,0 +1,64 @@ +//================= Hercules Configuration ================================ +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2014-2016 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/>. +//========================================================================= +//= Hercules Script Configuration File. +//========================================================================= + +script_configuration: { + // Specifies whether or not an error should be outputed when there's a + // mismatch between the number of provided arguments and of expected + // arguments + // Default: true + warn_func_mismatch_paramnum: true + + // Specifies whether or not each built-in function's arguments are + // checked for correct type. When a function is given an argument + // different from what it expects, a warning is thrown before the + // function is ran anyway. + // Default: true + warn_func_mismatch_argtypes: true + + // Maximum number of operations before considering a set of operations too intensive + // Defaults to 655360 + check_cmdcount: 655360 + + // Maximum number of iterations before considering a loop infinite + // Defaults to 2048 + check_gotocount: 2048 + + // Default value of the 'min' argument of the script command 'input'. + // When the 'min' argument isn't provided, this value is used instead. + // Defaults to 0. + //input_min_value: 0 + + // Default value of the 'max' argument of the script command 'input'. + // When the 'max' argument isn't provided, this value is used instead. + // Defaults to INT_MAX. + //input_max_value: 2147483647 + input_max_value: 10000000 +} + +import: "conf/import/script.conf" |