diff options
-rw-r--r-- | conf/char/char-server.conf | 26 | ||||
-rw-r--r-- | conf/map/battle/feature.conf | 2 | ||||
-rw-r--r-- | conf/map/battle/guild.conf | 9 | ||||
-rw-r--r-- | db/mob_skill_db2.conf | 59 | ||||
-rw-r--r-- | db/mob_skill_db2.txt | 54 | ||||
-rw-r--r-- | db/re/mob_skill_db.conf | 228 | ||||
-rw-r--r-- | db/re/mob_skill_db.txt | 73 |
7 files changed, 319 insertions, 132 deletions
diff --git a/conf/char/char-server.conf b/conf/char/char-server.conf index db433244..03f333c4 100644 --- a/conf/char/char-server.conf +++ b/conf/char/char-server.conf @@ -218,6 +218,32 @@ char_configuration: { // Default: 3 // Maximum allowed by clientside: 3 max_tries: 3 + + // Whether or not to refuse pincodes that are blacklisted + // Default: true + check_blacklisted: true + + // Blacklisted pincodes + blacklist: [ + "0000", + "1111", + "2222", + "3333", + "4444", + "5555", + "6666", + "7777", + "8888", + "9999", + "0123", + "1234", + "2345", + "3456", + "4567", + "5678", + "6789", + "7890" + ] } } diff --git a/conf/map/battle/feature.conf b/conf/map/battle/feature.conf index c0c60e47..8d19539b 100644 --- a/conf/map/battle/feature.conf +++ b/conf/map/battle/feature.conf @@ -71,7 +71,7 @@ features: { // false: disable enable_homun_autofeed: true - // Enable Attendance System for clients >= 2018-03-07bRagexeRE or 2018-04-04bRagexe + // Enable Attendance System for clients >= 2018-03-07bRagexeRE or 2018-04-04bRagexe or 2018-04-11aRagexe_zero // true: enable (Default) // false: disable enable_attendance_system: true diff --git a/conf/map/battle/guild.conf b/conf/map/battle/guild.conf index c8f8db8c..90282ef5 100644 --- a/conf/map/battle/guild.conf +++ b/conf/map/battle/guild.conf @@ -39,10 +39,11 @@ 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 +// How guild skills cooldown works? +// 0 - you relog with the same cooldown remaining as from when you logged out +// 1 - restarts the cooldown upon login to its full duration. +// 2 - like 1, but your logged off time is also decreased from the remaining cooldown (Aegis) +guild_skill_relog_delay: 2 // Damage adjustments for WOE battles against defending Guild monsters (Note 2) castle_defense_rate: 100 diff --git a/db/mob_skill_db2.conf b/db/mob_skill_db2.conf new file mode 100644 index 00000000..77d35361 --- /dev/null +++ b/db/mob_skill_db2.conf @@ -0,0 +1,59 @@ +//================= Hercules Database ===================================== +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2018 Hercules Dev Team +//= +//= Hercules is free software: you can redistribute it and/or modify +//= it under the terms of the GNU General Public License as published by +//= the Free Software Foundation, either version 3 of the License, or +//= (at your option) any later version. +//= +//= This program is distributed in the hope that it will be useful, +//= but WITHOUT ANY WARRANTY; without even the implied warranty of +//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//= GNU General Public License for more details. +//= +//= You should have received a copy of the GNU General Public License +//= along with this program. If not, see <http://www.gnu.org/licenses/>. +//========================================================================= +//= Monster Skill Database +//========================================================================= + +mob_skill_db:( +{ +/************************************************************************** + ************* Entry structure ******************************************** + ************************************************************************** + <Monster_Constant>: { + <Skill_Constant>: { + ClearSkills: (boolean, defaults to false) allows cleaning all previous defined skills for the mob. + SkillLevel: (int, defaults to 1) + SkillState: (int, defaults to 0) + SkillTarget: (int, defaults to 0) + Rate: (int, defaults to 1) + CastTime: (int, defaults to 0) + Delay: (int, defaults to 0) + Cancelable: (boolean, defaults to false) + CastCondition: (int, defaults to 0) + ConditionData: (int, defaults to 0) + val0: (int, defaults to 0) + val1: (int, defaults to 0) + val2: (int, defaults to 0) + val3: (int, defaults to 0) + val4: (int, defaults to 0) + Emotion: (int, defaults to 0) + ChatMsgID: (int, defaults to 0) + } + } +**************************************************************************/ + // entries in this file will override the ones in /(pre-)re/mob_skill_db.conf +} +) diff --git a/db/mob_skill_db2.txt b/db/mob_skill_db2.txt deleted file mode 100644 index a670fecb..00000000 --- a/db/mob_skill_db2.txt +++ /dev/null @@ -1,54 +0,0 @@ -// Custom Mob Skill Database -// -// Structure of Database: -// MobID,Dummy value (info only),State,SkillID,SkillLv,Rate,CastTime,Delay,Cancelable,Target,Condition type,Condition value,val1,val2,val3,val4,val5,Emotion,Chat -// -// RATE: the chance of the skill being casted when the condition is fulfilled (10000 = 100%). -// DELAY: the time (in milliseconds) before attempting to recast the same skill. -// -// STATE: -// any (except dead) / idle (in standby) / walk (in movement) / dead (on killed) / -// loot /attack / angry (like attack, except player has not attacked mob yet) / -// chase (following target, after being attacked) / follow (following target, -// without being attacked) / anytarget (attack+angry+chase+follow) -// -// TARGET: -// target (current target) / self / friend / master / randomtarget (any enemy within skill's range) -// -// The following are for ground-skills, a random target tile is selected from the specified area: -// around1 (3x3 area around self) / around2 (5x5 area around self) / -// around3 (7x7 area around self) / around4 (9x9 area around self) / -// around5 (3x3 area around target) / around6 (5x5 area around target) / -// around7 (7x7 area around target) / around8 (9x9 area around target) / -// around = around4 -// -// CONDITION: -// always Unconditional (no condition value). -// onspawn When mob spawns/respawns (no condition value). -// myhpltmaxrate When mob's HP drops to the specified %. -// myhpinrate When mob's HP is in a certain % range (condition value = lower bound, val1 = upper bound). -// mystatuson If mob has the specified abnormality in status. -// mystatusoff If mob has ended the specified abnormality in status. -// friendhpltmaxrate When mob's friend's HP drops to the specified %. -// friendhpinrate When mob's friend's HP is in a certain % range (condition value = lower bound, val1 = upper bound). -// friendstatuson If friend has the specified abnormality in status. -// friendstatusoff If friend has ended the specified abnormality in status. -// attackpcgt When attack PCs become greater than specified number. -// attackpcge When attack PCs become greater than or equal to the specified number. -// slavelt When number of slaves is less than the original specified number. -// slavele When number of slaves is less than or equal to the original specified number. -// closedattacked When close range melee attacked (no condition value). -// longrangeattacked When long range attacked, ex. bows, guns, ranged skills (no condition value). -// skillused When the specified skill is used on the mob. -// afterskill After mob casts the specified skill. -// casttargeted When a target is in cast range (no condition value). -// rudeattacked When mob is rude attacked (no condition value). -// -// Status abnormalities specified through the statuson/statusoff system: -// anybad (any type of state change) / stone / freeze / stun / sleep / -// poison / curse / silence / confusion / blind / hiding / sight (unhidden) -// -// Note: if a negative MobID is provided, the skill will be treated as 'global': -// -1: added for all boss types. -// -2: added for all normal types. -// -4: added for all mobs. diff --git a/db/re/mob_skill_db.conf b/db/re/mob_skill_db.conf new file mode 100644 index 00000000..8eaf5ea8 --- /dev/null +++ b/db/re/mob_skill_db.conf @@ -0,0 +1,228 @@ +//================= Hercules Database ===================================== +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2018 Hercules Dev Team +//= +//= Hercules is free software: you can redistribute it and/or modify +//= it under the terms of the GNU General Public License as published by +//= the Free Software Foundation, either version 3 of the License, or +//= (at your option) any later version. +//= +//= This program is distributed in the hope that it will be useful, +//= but WITHOUT ANY WARRANTY; without even the implied warranty of +//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//= GNU General Public License for more details. +//= +//= You should have received a copy of the GNU General Public License +//= along with this program. If not, see <http://www.gnu.org/licenses/>. +//========================================================================= +//= Monster Skill Database +//========================================================================= + +mob_skill_db:( +{ +/************************************************************************** + ************* Entry structure ******************************************** + ************************************************************************** + <Monster_Constant>: { + <Skill_Constant>: { + ClearSkills: (boolean, defaults to false) allows cleaning all previous defined skills for the mob. + SkillLevel: (int, defaults to 1) + SkillState: (int, defaults to 0) + SkillTarget: (int, defaults to 0) + Rate: (int, defaults to 1) + CastTime: (int, defaults to 0) + Delay: (int, defaults to 0) + Cancelable: (boolean, defaults to false) + CastCondition: (int, defaults to 0) + ConditionData: (int, defaults to 0) + val0: (int, defaults to 0) + val1: (int, defaults to 0) + val2: (int, defaults to 0) + val3: (int, defaults to 0) + val4: (int, defaults to 0) + Emotion: (int, defaults to 0) + ChatMsgID: (int, defaults to 0) + } + } +**************************************************************************/ + Ratto: { + NPC_POISON: { + SkillState: "MSS_BERSERK" + SkillLevel: 20 + Rate: 500 + Delay: 500 + Cancelable: true + SkillTarget: "MST_TARGET" + CastCondition: "MSC_ALWAYS" + } + } + Blub: { + NPC_SUMMONSLAVE: { + SkillState: "MSS_ANY" + SkillLevel: 4 + Rate: 10000 + CastTime: 700 + Delay: 60000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_SPAWN" + val0: 1007 + } + } + Crocotree: { + NPC_REBIRTH: { + SkillState: "MSS_DEAD" + SkillLevel: 2 + Rate: 10000 + Cancelable: true + SkillTarget: "MST_SELF" + CastCondition: "MSC_ALWAYS" + } + NPC_TRANSFORMATION: { + SkillState: "MSS_ANY" + SkillLevel: 1 + Rate: 10000 + CastTime: 700 + Delay: 60000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_AFTERSKILL" + ConditionData: 208 + val0: 1014 + } + } + Frostiana: { + NPC_POISON: { + SkillState: "MSS_BERSERK" + SkillLevel: 5 + Rate: 1000 + Delay: 2000 + Cancelable: true + SkillTarget: "MST_TARGET" + CastCondition: "MSC_ALWAYS" + } + } + Pikpik: { + NPC_SELFDESTRUCTION: { + SkillState: "MSS_BERSERK" + SkillLevel: 1 + Rate: 10000 + CastTime: 1000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_ALWAYS" + } + NPC_SELFDESTRUCTION: { + SkillState: "MSS_RUSH" + SkillLevel: 1 + Rate: 2000 + CastTime: 1000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_ALWAYS" + } + } + CroconutMob: { + NPC_SUICIDE: { + SkillState: "MSS_ANY" + SkillLevel: 1 + Rate: 10000 + CastTime: 1000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_ALWAYS" + } + } + Tipiu: { + NPC_SUMMONSLAVE: { + SkillState: "MSS_IDLE" + SkillLevel: 6 + Rate: 10000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_SPAWN" + val0: 1003 + } + NPC_SUMMONSLAVE: { + SkillState: "MSS_BERSERK" + SkillLevel: 2 + Rate: 2000 + CastTime: 700 + Delay: 10000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_SLAVELE" + ConditionData: 5 + val0: 1003 + } + NPC_SUMMONSLAVE: { + SkillState: "MSS_IDLE" + SkillLevel: 2 + Rate: 7000 + CastTime: 700 + Delay: 10000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_SLAVELE" + ConditionData: 5 + val0: 1003 + } + } + Tipiou: { + NPC_SUMMONSLAVE: { + SkillState: "MSS_IDLE" + SkillLevel: 5 + Rate: 10000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_SPAWN" + val0: 1002 + } + NPC_SUMMONSLAVE: { + SkillState: "MSS_BERSERK" + SkillLevel: 2 + Rate: 2000 + CastTime: 700 + Delay: 10000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_SLAVELE" + ConditionData: 4 + val0: 1002 + } + NPC_SUMMONSLAVE: { + SkillState: "MSS_IDLE" + SkillLevel: 2 + Rate: 7000 + CastTime: 700 + Delay: 10000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_SLAVELE" + ConditionData: 4 + val0: 1002 + } + } + slime: { + NPC_SUMMONMONSTER: { + SkillState: "MSS_DEAD" + SkillLevel: 2 + Rate: 10000 + SkillTarget: "MST_SELF" + CastCondition: "MSC_ALWAYS" + ConditionData: 2 + val0: 1025 + } + } + PoisonSkull: { + NPC_POISON: { + SkillState: "MSS_BERSERK" + SkillLevel: 20 + Rate: 2500 + Delay: 100 + Cancelable: true + SkillTarget: "MST_TARGET" + CastCondition: "MSC_ALWAYS" + } + } +} +) + diff --git a/db/re/mob_skill_db.txt b/db/re/mob_skill_db.txt deleted file mode 100644 index 81767097..00000000 --- a/db/re/mob_skill_db.txt +++ /dev/null @@ -1,73 +0,0 @@ -// Mob Skill Database -// Based on Aegis Episode 14.2 -// -// Structure of Database: -// MobID,Dummy value (info only),State,SkillID,SkillLv,Rate,CastTime,Delay,Cancelable,Target,Condition type,Condition value,val1,val2,val3,val4,val5,Emotion,Chat -// -// RATE: the chance of the skill being casted when the condition is fulfilled (10000 = 100%). -// DELAY: the time (in milliseconds) before attempting to recast the same skill. -// -// STATE: -// any (except dead) / idle (in standby) / walk (in movement) / dead (on killed) / -// loot /attack / angry (like attack, except player has not attacked mob yet) / -// chase (following target, after being attacked) / follow (following target, -// without being attacked) / anytarget (attack+angry+chase+follow) -// -// TARGET: -// target (current target) / self / friend / master / randomtarget (any enemy within skill's range) -// -// The following are for ground-skills, a random target tile is selected from the specified area: -// around1 (3x3 area around self) / around2 (5x5 area around self) / -// around3 (7x7 area around self) / around4 (9x9 area around self) / -// around5 (3x3 area around target) / around6 (5x5 area around target) / -// around7 (7x7 area around target) / around8 (9x9 area around target) / -// around = around4 -// -// CONDITION: -// always Unconditional (no condition value). -// onspawn When mob spawns/respawns (no condition value). -// myhpltmaxrate When mob's HP drops to the specified %. -// myhpinrate When mob's HP is in a certain % range (condition value = lower bound, val1 = upper bound). -// mystatuson If mob has the specified abnormality in status. -// mystatusoff If mob has ended the specified abnormality in status. -// friendhpltmaxrate When mob's friend's HP drops to the specified %. -// friendhpinrate When mob's friend's HP is in a certain % range (condition value = lower bound, val1 = upper bound). -// friendstatuson If friend has the specified abnormality in status. -// friendstatusoff If friend has ended the specified abnormality in status. -// attackpcgt When attack PCs become greater than specified number. -// attackpcge When attack PCs become greater than or equal to the specified number. -// slavelt When number of slaves is less than the original specified number. -// slavele When number of slaves is less than or equal to the original specified number. -// closedattacked When close range melee attacked (no condition value). -// longrangeattacked When long range attacked, ex. bows, guns, ranged skills (no condition value). -// skillused When the specified skill is used on the mob. -// afterskill After mob casts the specified skill. -// casttargeted When a target is in cast range (no condition value). -// rudeattacked When mob is rude attacked (no condition value). -// -// Status abnormalities specified through the statuson/statusoff system: -// anybad (any type of state change) / stone / freeze / stun / sleep / -// poison / curse / silence / confusion / blind / hiding / sight (unhidden) -// -// Note: if a negative MobID is provided, the skill will be treated as 'global': -// -1: added for all boss types. -// -2: added for all normal types. -// -4: added for all mobs. - -//id,name@skill,state,skillid,skilllevel,rate,casttime,delay,cancel,target,cond1,cond2,val0,val1,val2,val3,val4,emotion,chat -1005,Ratto@NPC_POISON,attack,176,20,500,0,500,yes,target,always,0,,,,,,, -1008,Blub@NPC_SUMMONSLAVE,any,196,4,10000,700,60000,no,self,onspawn,0,1007,,,,,, -1010,Crocotree@NPC_REBIRTH,dead,208,2,10000,0,0,yes,self,always,0,,,,,,, -1010,Crocotree@NPC_TRANSFORMATION,any,198,1,10000,700,60000,no,self,afterskill,208,1014,,,,,, -1012,Frostiana@NPC_POISON,attack,176,5,1000,0,2000,yes,target,always,0,,,,,,, -1013,Pikpik@NPC_SELFDESTRUCTION,attack,173,1,10000,1000,0,no,self,always,0,,,,,,, -1013,Pikpik@NPC_SELFDESTRUCTION,chase,173,1,2000,1000,0,no,self,always,0,,,,,,, -1014,Croconut@NPC_SUICIDE,any,175,1,10000,1000,0,no,self,always,0,,,,,,, -1015,Tipiu@NPC_SUMMONSLAVE,idle,196,6,10000,0,0,no,self,onspawn,0,1003,,,,,, -1015,Tipiu@NPC_SUMMONSLAVE,attack,196,2,2000,700,10000,no,self,slavele,5,1003,,,,,, -1015,Tipiu@NPC_SUMMONSLAVE,idle,196,2,7000,700,10000,no,self,slavele,5,1003,,,,,, -1016,Tipiou@NPC_SUMMONSLAVE,idle,196,5,10000,0,0,no,self,onspawn,0,1002,,,,,, -1016,Tipiou@NPC_SUMMONSLAVE,attack,196,2,2000,700,10000,no,self,slavele,4,1002,,,,,, -1016,Tipiou@NPC_SUMMONSLAVE,idle,196,2,7000,700,10000,no,self,slavele,4,1002,,,,,, -1024,Green Slime@NPC_SUMMONMONSTER,dead,209,2,10000,0,0,no,self,always,2,1025,,,,,, -1050,PoisonSkull@NPC_POISON,attack,176,20,2500,0,100,yes,target,always,0,,,,,,, |