* Fixed#167 - Dragon Breath burning chance is now 15% for all levels. Also corrected damage calculation. Thanks to @exneval.
* Fixed#270 - Cleaned up Reverberation and how it's triggered.
* Fixed#321 - Follow up to 1b6be4e. Fixed MATK calculation for for all player, monster, homunculus, mercenary, etc.
* Fixed#332 - Camouflage now hides player from targeting skills. Added missing DEF/DEF2 bonus.
* Fixed#335 - Check to make sure script has data before trying to free null values.
* Fixed Full Throttle SP drain amount and movement speed increase value. Updated cooldown value to 30 minutes.
* Fixed Bloody Lust skill type from magic to none.
* Fixed Mix Cooking, Make Bomb, Special Pharmacy, Change Material, and Rune Mastery success and fail animations.
* Cleaned up some more compile warnings.
* Fixed#145 - Corrected the duration of Frigg's Song ending too quickly.
* Fixed#202 - Added damage bonus for Rifle when using Piercing Shot (renewal).
* Fixed#257 - Adjusted get_status() in athena-start to return the correct string.
* Fixed#272 - Blood Lust not leeching HP from target.
* Fixed#298 - Corrected the renewal calculation of ATK and ASPD for Homunculus.
* Fixed#309 and #313 - Cleaned up warnings during compile.
* Fixed#321 - Monsters not calculating MATK at spawn (renewal).
* Added missing renewal calculations for Mercenary.
- Removed Kaahi timer system (fixes#320)
* Kaahi will now heal BEFORE the damage is dealt
* Heals will no longer get lost due to timer system
* Decreased Kaahi duration 1800->350 seconds
- Implemented recent Arrow Shower Renewal updates (fixes#310)
* Arrow Shower now has 3x3 AoE on level 1~5 and 5x5 AoE on level 6~10
* Arrow Shower now has a fixed after cast delay of 500ms
* Note: The bug that causes the skill to hit twice is still present (couldn't fix it)
* Enable it by uncomment `#define PACKET_OBFUSCATION` in mmo.h
* Obfuscation keys are defined in db/packet_db.txt, each packet_ver has their own default keys (for temperory lookup) in `packet_keys:` right after `packet_ver:`
* Keys can be refined (user-defined keys) by defining the keys in `packet_keys_use:` in file db/[import/]packet_db.txt
* This feature only for client 20110817 or newer
* `@reloadpacketdb` won't changes the keys, so make sure define everything before run the map-server.
Thank to @icxbb-xx, @aleos, 5a942993dd
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
- Move requests one cell west will now be ignored if the target cell is occupied
- You can now set official_cell_stack_limit to 0 to completely disable it including the limitation above
* Moved hardcoded `DEFAULT_MAP`, `DEFAULT_MAP_X`, and `DEFAULT_MAP_Y` definition to conf/char_athena.conf: `default_map`, `default_map_x`, and `default_map_y` for `DEFAULT_MAP`
* Default map existance check only will be checked once, after map_index finished load by char-server, previously map-server also do a check that maybe cause unnecessary debug message
* `instance_start` value should be init'd with `map_num` not by `map_num + 1`. I was causing send extra 1 empty map to char-server.
* A little clean up in `chmapif_parse_getmapname()` and `doc/packet_interserv.txt`
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Changed 'JobLevel' to 'NeedLevel' and don't make it as optional.
* Make sure homun_skill_tree.txt column number is 15!
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Moved out intimacy required to evo the homun to conf/battle/homunc.conf: 'homunculus_evo_intimacy_need'
* Moved out intimacy reset after evo the homun to conf/battle/homunc.conf: 'homunculus_evo_intimacy_reset'
* Follow up eca4fa0e38c060c0f9918d11899ee00d099a16f7, missed the '/100' for intimacy info.
* Corrected intimacy set after using skill 'HVAN_EXPLOSION' to 1 (100, Hate with passion) instead of 2 (200, is for HFLI_SBR44)
* Init 'hardcoded' homunculus intimacy grade tables for some lookups
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
Bonus HP/SP Vanish updates:
* Added 'bonus3 bHPVanishRaceRate,r,n,x' (2074) and 'bonus3 bSPVanishRaceRate,r,n,x' (2075)
* Corrected documentation about 'bHPVanishRate' and 'bSPVanishRate', rate should be n/100%, 10000 for 100%
* 'bHPVanishRate' and 'bSPVanishRate' applied regardless the target's Race and map (before, if target is player bHPVanishRate only works in PVP/GVG maps)
* Changed Velum item scripts:
* (1294) Velum_Scare to 'bonus3 bSPVanishRaceRate,RC_Player,10000,10;'
* (1395) Velum_Buster to 'bonus3 bSPVanishRaceRate,RC_Player,10000,10;'
* (18113) Velum_Arbalest to 'bonus3 bSPVanishRaceRate,RC_Player,10000,4;'
* (21002) Velum_Katzbalger to 'bonus3 bHPVanishRaceRate,RC_Player,10000,8;'
Bonus Script clean up
* Removed fixed array size (MAX_PC_BONUS_SCRIPT) of bonus_script on players, changed to link list.
* Changed fixed script string on player's bonus_script to StringBuf, reduce memory usage for each connected player.
* Added new flags to expand duplicated script and flag to allow duplicate script.
* Reduced buf length from 1024 to 512 on bonus_script_data (used for saving/loading bonus_script from char-server). Still, MAX_PC_BONUS_SCRIPT is used to gives limit data can be loaded.
* Merged 'pc_bonus_script_clear_all' to 'pc_bonus_script_clear'
* Now bonus script will be saved on auto-save timer or other save request, prevent losing the bonus when "something" happen. But, saving when player is quitting will removes the bonus that won't be saved on logout.
* Fixed Superstar_Snack (22843) and Sealed_Dracula_Card (22846) fields
NOTE:
Please import 'upgrade_20150131.sql' for `bonus_script` table changes
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Added 'bonus3 bHPVanishRaceRate,r,n,x' (2074) and 'bonus3 bSPVanishRaceRate,r,n,x' (2075)
* Corrected documentation about 'bHPVanishRate' and 'bSPVanishRate', rate should be n/100%, 10000 for 100%
* 'bHPVanishRate' and 'bSPVanishRate' applied regardless the target's Race and map (before, if target is player bHPVanishRate only works in PVP/GVG maps)
* Changed Velum item scripts:
* (1294) Velum_Scare to 'bonus3 bSPVanishRaceRate,RC_Player,10000,10;'
* (1395) Velum_Buster to 'bonus3 bSPVanishRaceRate,RC_Player,10000,10;'
* (18113) Velum_Arbalest to 'bonus3 bSPVanishRaceRate,RC_Player,10000,4;'
* (21002) Velum_Katzbalger to 'bonus3 bHPVanishRaceRate,RC_Player,10000,8;'
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Changed skill_db array to better memory allocation.
* Reduced MAX_SKILL_LEVEL from 100 to 10 (part of Hercules 0f4a50d135), also has changes on skill_get checks for skill level that more than 10.
* Reduced MAX_SKILL from 5020 to 1200 (actually only 1109 skills are used).
* Added macros for checking Homunculus, Guild, Mercenary, & Elemental skill ranges.
* Added skill check & index validation when player logged in and when @reloadskilldb.
* Corrected `enum e_skill_flag` order for SKILL_FLAG_REPLACED_LV_0's sake.
* Merged 'addtoskill' script command just as alias of 'skill' script command.
* Fixed#277
* Changed 'skill' script command flag to constant value
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
NOTE:
* Decreased memory usage by map-server reduced up to 50 MB.
* Decreased memory for each player because of mmo_charstatus::skill[] only has 1200 array, before is 5020.
* Please use skill_get_index() for accessing sd->status.skill[] or skill_db[], don't reckless use skill_id as array index.
* Please import upgrade_20150211_skillset.sql
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
* Fixed Severe Rainstorm not being able to be copied by Reproduce. (bugreport:9361)
* Fixed#137 - Updated Homunculus S Race and Element values to official.
* Fixed#163 - Proper renewal calculations for Homunculus. Merge from HerculesWS/Hercules@8faef4f
* Fixed#254 - Corrected King's Grace cooldown to be 60 seconds.
* +20 Foods cannot be dispelled or removed by death.