* Resolves an issue with skill normalizations.
* Resolves an issue with becoming a High Novice automatically giving players the Basic Skill fully leveled.
* Updated the Job EXP table for Doram to match official. Still missing Base EXP table.
* Implemented official behavior when attacking icewalls and traps with skills (fixes#1056)
-- Skills hitting icewalls and traps: Arrow Shower, Cold Slower, Tornado Kick, Sightless Mind, Meteor Assault, Spread Attack, Throw Huuma, Sightrasher, Sight Blaster, Earth Shaker, Rampage Blaster, Feint Bomb, Magnum Break, Fire Trap, Ice Trap, Cart Revolution, Napalm Vulcan, Triple Attack, Occult Impaction, Throw Spirit Sphere, Asura Strike, Spear Stab, Spiral Pierce, Holy Cross
-- Can target icewalls and traps but have strange behavior: Bowling Bash, Focused Arrow Strike, First Wind
-- Can hit icewalls and traps, but not target traps: Grimtooth, Raging Thrust, Blitz Beat, Napalm Beat, Fireball, Vulcan Arm, Tiger Cannon
-- Can hit icewalls and traps ONLY in PVP: Dragon Breath, Suicidal Destruction, Axe Tornado, Sky Blow
-- Can hit icewalls only: All other single target skills, Counter Slash
-- Can target icewalls but have strange behavior: Brandish Spear, Wind Cutter, Cannon Spear, Flame Launcher
-- Can not hit icewalls and traps: All unit skills, Frost Nova, Comet, Arms Cannon, Fatal Menace, Lion Howling
-- Can destroy traps but not hit icewalls: Claymore Trap
* When monsters use skills, they hit icewalls and traps and the damage displays, but they will no longer deal actual damage to the icewall or trap
-- Added an option to skill.conf with which you can define which types can damage icewalls and traps, by default it's 1 (player only), if you want to revert to previous behavior, set it to 31 (all)
* Fixed an issue where traps could not hit icewalls and other traps in PVP
* Taekwon combos can now trigger on traps
* Fixed an issue that caused damage to be displayed twice when attacking a trap with certain skills
* Fixed Feint Bomb causing knock-back to the target (see #1070)
* Fixed Talkie Box being triggered by monsters (fixes#1074)
* Requires client 2015-10-01 and newer.
* All skills are usable from from the base list to all 3 branch types.
-- Some skills still need their official activation chance and durations.
* Adjusted the char-server start point and start item split functions to be more dynamic.
Thanks to Rytech and @NovaRagnarok for their information!
* The chance of Decrease Agi and Adoramus is now reduced by a fixed 1% per MDEF
* Decrease Agi can now overwrite itself with a lower level
* The base chance to cause blind when Adoramus activates is now 1000%
* Adoramus now has a blind duration of 7s+1s*level and an Adoramus duration of 10s+5s*level for both players and monsters
* Adoramus and Decrease Agi cancel each other out
* Adoramus no longer reduces speed (only AGI reduction and blind)
* Adoramus no longer cancels ASPD/Speed increasing buffs
* Adoramus can no longer be blocked/canceled by ASPD/Speed increasing buffs
* When Adoramus ends, it will no longer automatically end blind at the same time
* Epiclesis will now properly check for hidden players every 5 seconds.
* Adjusted the skill unit interval to check every second rather than every 3 seconds.
* Fixed a problem with monsters always ending up in the south-western corner eventually
* Fixed a problem that monsters had a high chance to stick to walls
* Fixed a problem that monsters didn't actually check all cells before giving up
* Code even more optimized as a free cell will now be found faster than before on average
Trap Invisibility, Fixes#892
* Changed `traps_setting` config values.
* 0 = Always visible (default)
* 1 = Enable invisibility in versus maps (GVG/PVP/BG)
* 2 = Enable invisibility in all maps
* Added skill unit flag `UF_HIDDEN_TRAP = 0x20000` for trap invisibility. By default, there are (renewal) Hunter traps with this flag:
* HT_SKIDTRAP
* HT_LANDMINE
* HT_ANKLESNARE
* HT_SHOCKWAVE
* HT_SANDMAN
* HT_FLASHER
* HT_FREEZINGTRAP
* HT_TALKIEBOX
* Added some skills and effects that can reveal hidden traps. By default, Detect, Sight, Ruwach, and Improve Concentration can reveal hidden traps.
* Entering or leaving duel will now remove all the skill units you've placed
* Entering or leaving duel will now behave like warping / moving on a different tile
Fixes to some quests and typo errors
* Corrected miscellaneous Korean to English translations.
* Corrected the position and facing direction of NPC [Promotional Staff#iz] from [Onward to the New World] Quest (pre-renewal).
* Fixed NPC [Iromo's Mother#ep3_2] from [Alberta Boy] Quest where players could have their quest progress reset.
* Fixed NPC [The Blacksmith#rus06] from [Koschei the Immortal] Quest giving Iron_Boots01 instead of Iron_Boots02 to Ninja and Gunslinger classes.
Thanks to @AtlantisRO!
The boots Iron_Boots01 is only equipable by Swordsman Class, Archer Class, Merchant Class and Thief Class.
Any other job must receive Iron_Boots02 (included Ninja and Gunslinger).
* Boarding Halter will now properly be removed on expiration when a player is logged out. (fixes#1035)
* Removed hard coded checks for other official rental items.
* Rental items now call the OnUnequip Script of the item which can be used to remove player states.
* Updated various items in the database to match the new format.
When player is in step 9 from Alberta Boy quest (variable "ep13_2_hiki"), this NPC restart the entire quest, because there is no case to prevent variable > 8.
* Snap now has a server-sided range of 14
* Snap, Ganbantein and Gravitational Field will no longer cause you to move if you target a cell out of range
* Snap and Flying Kick will now check for obstacles on a linear path rather than on the normal walkpath
* Range specified in skill_db is now equal to the client-sided range
* Some range code cleanup
* Fear now causes the SC_ANKLE status change for 2 seconds rather than having a weird custom implementation
* Fear now removes blind and makes you immune to it
* Fixed SC_ANKLE not properly blocking teleportation
* Some code optimizations
* Created a better structure for status changes with intervals and integrated the status changes Stone, Poison, Deadly Poison, Bleeding, Magic Mushroom, Burning, Pyrexia, Leech's End and Toxin into the new structure
-- The exact remaining duration of these status changes will now be stored
-- The correct duration is reloaded when logging back in, you can't avoid a single tick be re-logging
-- It will now show the correct duration on the icon of the status change after re-logging, no longer negative values
-- The durations are now accurately transferred when using Deadly Infect
-- These status changes now use unified code, which makes it much easier to integrate more status changes into this structure with low risk of breaking something
* Removed all the status change specific logging of damage and integrated it into the normal logging behavior
-- The following skills deal "No source" damage: Stone, Poison, Deadly Poison, Bleeding, Coma, Magic Mushroom
-- The following skills deal "Self" damage: Burning, Pyrexia, Leech's End, Toxin
-- "No source" will neither be logged nor contribute to the total damage, your exp share doesn't increase from the damage, but it also won't cause the monster to give less EXP, it won't break freeze or similar status changes, it won't make you stand up, it won't make you stop moving, it won't prevent you from logging out
-- "Self" damage will now be logged and contribute to the total damage, it makes monster give the exp tap bonus, but also makes monsters give less exp the more "self damage" they've taken, it will break freeze and similar status changes, it will make you stand up properly now, it will make you flinch and stop moving, it will prevent you from logging out, but angry type monsters will not lose their aggressive bit from it and it will not cause monsters to use their rude-attack skill
-- Monsters will now use their rude-attack skill on the first rude-attack as long as the damage does not come from self
-- When a monster takes damage from a status change, its HP meter will now be updated
* Burning now has an interval of 3s and a minimum duration of 10s
* Pyrexia now causes blind for Pyrexia's duration instead of just 30s
* Ground Drift's poison base duration is now 60s in pre-re (follow-up to e7150ee)
* Fixed a bug where the minimum duration failed to apply when the received duration was below 1ms
* map_foreachindir and map_foreachinshootarea will now properly print their function names in case of an error
* Updated documentation (transferring source ID is no longer required, remaining tick should now always be in val4)
If this breaks anything, please report asap.
* Fixed#980.
* Job Quest EXP always be shown in yellow color.
* Miracle Tonic (12259) and Leap of Fantasy (12261) give fixed EXP through `pc_setparam` that ignore EXP item bonuses and exp rates. Not as Quest EXP from `getexp` script.
* If given EXP is 0 by `getexp`, it won't be notified in client EXP log.
* If given EXP for base/job that reach max level, client will be notified as 0 EXP gained.
* Follow up 20588abcd83fab53f9e52deafc08bfcddfe1658a
* Some clean up on `pc_gainexp`.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>