* Listed job with matched map zone is restricted to enter the map.
* Added db file `job_noenter_map.txt` with format: `JobID,FlagZone,GroupLevelBypass`.
* Reserved usage for WOE:TE implementation.
* Typo correction, thanks @aleos89 @Lemongrass3110
* Follow up to bec9845.
* Arrow Shower should not benefit from Camouflage.
* Sharp Shooting and Arrow Storm bonus should be applied to all targets in the area, not just the selected target.
Thanks to @Tokeiburu!
* Camouflage now ends when attacking plant type monsters.
* Camouflage bonus is applied to the first skill after activating Camouflage.
* Corrected movement speed bonus checks.
* Removed INF3_NOENDCAMOUFLAGE enum as it is no longer needed.
* Updated skill_db documentation.
* Properly implemented the Cloud Kill status icon.
* Poison duration is not reduced and lasts if the target leaves the AoE.
- Walking into the AoE a second time resets the Poison status.
* Moved the healing effect to status change timer.
* Warmer's effect will now last the entire life of the unit.
* Warmer's effect will now be removed when a player leaves the unit.
* Corrected Cloud Kill unit flag not being applied.
* Reverted parts of the Earth Quake cleanup.
* Added the missing 100% damage increase for levels 5 and higher.
* Corrected the hit rate to be 2x not 1.2x.
* Commented out the unofficial ATK2 damage increase.
Cleaned up monster group parsing
* Adjusted monster groups to support sv_readdb.
* Updated the import folder documentation for the related monster groups.
* Fixes#1269.
Thanks to @Lemongrass3110!
Cleaned up item group parsing
* Adjusted item groups to support sv_readdb.
* Now allows for proper usage of the import directory for these item groups.
Thanks to @Lemongrass3110!
Expanded the instance system to support new modes
* New modes include: No player attached, single player, and guild.
* Modified the instance_db to allow instance idle time to be adjustable.
* Removed Map1 from the instance_db as the EnterMap is always the same value.
* Adjusted the stored maps of instances to dynamic arrays to conserve memory.
- Max amount of possible maps increased to 255.
* Instances will now be destroyed even if the owner cannot be found.
* Corrected the return value when entering an instance when a character, party, or guild does not have an instance.
* Expanded script command instance_create to take in an owner ID and an optional mode.
* Added a new script command instance_check_guild (works the same as instance_check_party).
* Corrected a few script commands to properly stop the script engine on failures for instance script commands.
* Removed the instance name lookup for when entering an instance as instance_id is now passed.
- Adjusted script command instance_enter to no longer require the instance name.
* Cleaned up script command instance_warpall.
* Adjusted script command instance_announce to check when instance ID is 0 rather than -1 since instance IDs are stored as unsigned now.
* Refactored all instance_id to unsigned short.
* Updated documentation to reflect changes.
* Follow up to 2cfb844.
* Adjusted the instance_db documentation.
* Adjusted script command instance_announce to check when instance ID is 0 rather than -1 since instance IDs are stored as unsigned now.
* Added a couple of checks when sending instance information to the client.
* Fixed a compile warning.
* Follow up to c97be60.
* Added some safety measures when sending the instance name to the client.
* Adjusted the stored maps of instances to dynamic arrays to conserve memory.
- Max amount of possible maps increased to 255.
* Removed Map1 from the instance_db as the EnterMap is always the same value.
* Instances will now be destroyed even if the owner cannot be found.
* Corrected the return value when entering an instance when a character, party, or guild does not have an instance.
* Corrected a few script commands to properly stop the script engine on failures for instance script commands.
* Removed the instance name lookup for when entering an instance as instance_id is now passed.
- Adjusted script command instance_enter to no longer require the instance name.
* Adjusted script command instance_create to keep backwards compatibility.
* Cleaned up script command instance_warpall.
* Updated script documentation to reflect changes.
* Updated instance_db to reflect changes.
* Properly implemented the skill as a unit skill.
* Corrected the damage calculation and removed attempts at diving by zero.
* The skill now ignores the target's defense.
- Marionette Control now has a range of 7 (fixes#1239)
- Mechanic Back/Front Slide skills are no longer blocked by gear that makes you knock-back immune (fixes#1227)
This commit makes those item scripts a little more readable and decreases the chance of mistakenly using an incorrect weapon type id.
Follow up to c6187fa.
- Lunatic Carrot Beat and Catnip Meteor now deal 300% to 700% damage which is calculated once and split between multiple hits rather than calculating damage per hit; despite this, they can still hit plants
- Reduced cast time of Lunatic Carrot Beat from 3000ms to 1500ms and cooldown from 8000ms to 6000ms according to latest tests on kRO
- Fixed Catnip Meteor still having a fixed cast time
- Increased stun chance of Lunatic Carrot Beat from 10% to 20%
- Increased curse chance of Catnip Meteor from 10% to 20%
- Increased cast time of Grand Cross in pre-re to 3000ms (see #1140)
- Fixed Grand Cross sometimes having 4 intervals instead of 3 (see #1140)
* This rewrite allows for better adaptation from the Aegis Class and Attribute fields.
* Refactored the renewal level penalty function.
* Slaves are now properly assigned an official slave mode of CanWalk, CanAttack, and NoRandomWalk.
* Removed extra Boss checks and adjusted others to use their proper functions.
* Properly implemented Skill Immunity mode to match Aegis.
* Separated MVP and Boss modes.
-- MVP mode defines when mobs should give MEXP, MVP Drops, and show the MVP sign.
-- MVP now have their own item drop configurations.
* Updated the mob_db and mob_skill_db to match the new mode structure.
-- Included a Perl tool (tools/convert_monstermode.pl) to allow people to convert their custom mobs to the new mode structure.
Thanks to @Playtester and @Lemongrass3110 for help with debugging and information!
* Summoner HP/SP values are now accurate for both HP/SP tables and the automatic calculation
* Summoner HP/SP adjustments in the code are now at the correct place and only used when the HP/SP tables are not used
* Super Novices now gain +2000 HP at both level 99 and level 150 and the bonus stays even on level 100-149 and 151+ (fixes#979)
* Normal Novices no longer get a HP boost
* Updated HP/SP tables to official values for level 151-175 and extrapolated new values for up to level 500
* Removed 3rd classes from the HP/SP tables in pre-re and replaced them with dummy data (using Novice values)
-- Note: This way updates like this one don't need to be done twice. If you want to use 3rd classes in pre-re just copy over the lines you need from the re folder or even better, use the import folder. You should use it for all customizations you do for easier updating.
* Official implementation of Meteor Storm behavior
-- It deploys all units directly at castend
-- Each unit has a different expiration time
-- On the last interval of a unit the meteor will appear
-- When the unit expires, it will deal damage
-- If the unit gets removed at any time, no meteor will appear and no damage will be dealt
* It is now easily possible to configure Meteor Storm behavior via database files, no more extra coding required
* Fixed Meteor Storm sometimes dealing damage even though no meteor appeared
* Fixed Meteor Storm being able to hit through walls when the caster has moved in the meantime
* Catnip Meteor will now create 3-7 meteors depending on level
* Catnip Meteor now has an interval of 500ms instead of 1000ms
* Catnip Meteor now has a curse duration of 20s instead of 5s
* Fixed a problem that many of the exp requirements were 1 level off
* Removed custom level requirements from the default pre-re/re rAthena files
* Optimized the structure of these files; no more redundant data
* Added a few custom exp rows to import-tmpl/job_exp.txt that can optionally be used
* Updated 1st and 2nd trans job exp requirements to the new official values from 2015
* Fixed a bug that caused monsters to still give 1 base/job exp even though their exp in the db is 0
* Updated Summoner EXP requirements according to latest test results; as Summoner has exactly the same base exp requirements as 3rd classes starting at level 99, it will now use the same row