* `monster_loot_search_type` default is `1` for official behavior in e6caa95, and `0` for old Athena style -closest- item.
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
- Fixed Autobonus not working in combos (bugreport:8300)
* Combos will now have a "pos" variable that saves the combination of equipment slots used
* Autobonus now works with combined positions rather than just a single position
* Autobonus should now also work with all equipment slots instead of just the first 15
* This does NOT fix problems with multiple auto-bonuses activating at the same time
- Monsters will now stop instantly if their target is completely non-existent
* This is mainly for looters that had their loot taken
* Hide and most other situations still use the configuration setting monster_chase_refresh
- Created a new function unit_blown_immune that will now serve as the central function to determine if an object can be knocked back or stopped (bugreport:7637)
* Moved the check code from skill_blown to unit_blown_immune
* Several stopping effects and traps will now use unit_blown_immune to check if the object can be stopped, if not, the object will always move to its target cell before stopping
* Bosses and monsters immune to knockback will now no longer be stopped by such traps
* Expanded the configuration skill_trap_type and moved its checks into unit_blown_immune, so it's possible to switch the "no stop" behavior off for GVG/BG and monsters individually
* Long-term we should make all skills use this function to check for knockback immunity, it will make the checks a lot cleaner and more centralized
- Monster chase range updates (bugreport:7637)
* Updated monster_chase_range in monster.conf from 1 to 3; I originally thought official value is 1, but doing some in-depth tests myself I realized it's 3 for the most important situations
* When a monster cannot issue new "move" commands because it was affected by a status change, but is still moving due to knockback immunity, it will no longer unlock its target and stop
* Fixed a bug that always caused the chase path monsters calculated to be 1 cell too short causing them to recalculate their path one cell before their goal every single time
- Fixed the direction calculation once again and optimized it at the same time (bugreport:9373)
* Now the calculated direction is 100% official, really truly, checked it myself with every single cell and various skills
* Added a new function map_calc_dir_xy that allows to check for a direction between two cells without the need of a block_list
* map_calc_dir will now just use map_calc_dir_xy to avoid duplicate code
- Implemented Skid Trap properly (bugreport:9373)
* The direction of the knockback will now be "away from position of the caster during cast" rather than "away from trap"
* Skid Trap will now stop the target for 3 seconds; this works even in GVG/BG and on bosses, even though the actual knockback doesn't happen
- Moved the configuration setting "icewall_walk_block" to monster.conf
- Split the configuration into mob_icewall_walk_block and boss_icewall_walk_block so it can be configured for bosses separately
- Expanded the configuration
* If the value is set to 1, monsters on an ice wall cell will behave like trapped monsters, that means they won't be able to move at all, they will use idle skills and if they are attacked while nobody is in their attack range, they will use their rudeattacked skills; this is equal to official behavior of bosses
* If the value is set to 2-255, it will behave as before but monsters in the AI loop now use both idle and chase skills, but will no longer use their rudeattacked skills even if attacked from range; this is equal to official behavior of normal monsters
* Official values would be "220" for normal monsters (loop until Icewall expiration) and "1" for bosses (behave like trapped monster) on most official servers, but as some official servers have a less exploitable implementation (from looping AI only a limited amount of times up to outright blocking Icewall on all maps with bosses), we decided for less exploitable default values for now which are 75 for normal monsters (loop 15-35 seconds) and 0 for bosses (impossible to trap in Icewall)
- Cleaned up the rudeattacked code a little so it's easier to read
* Monsters will now attack immediately when they are chasing a target and it comes into attack range (bugreport:7370)
* Monsters will now chase their target during their aDelay, but they still have to wait for aMotion to be able to move again (bugreport:9269)
* Monsters will now rethink their chase in a configurable interval (see monster_chase_refresh in monster.conf), official value is once per cell, previously it was once per 3 cells
* Monsters will now stop when they rethink their chase and their target is gone (player hides or target loot was picked), regardless of the monster_ai setting (note: if you want the old, stupid behavior, just increase monster_chase_refresh instead)
* Cleaned up spelling and extra spaces in documentation. (credits: Akkarin)
* Sending whisper to a player from an admin account (group 99) will also display the message as a self-announce to the player. (Hercules 8568f17)
* Reins of Mount (12622) can now be used when sitting and will ignore delay when it fails. (Hercules 2316772)
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17370 54d463be-8e91-2dee-dedb-b68131a5f0ec
Fixed a typo in monster.conf.
Removed old functionality from showmobs command to make room for show_bossmobs.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16445 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Fixed option 'monster_ai' referring to setting 'mob_npc_warp' rather than 'mob_warp' (follow up to r8135).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14744 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Changed the confusing Rare Drop Announce. (bugreport:4037)
- Fixed an extra space in item script. (bugreport:4032)
- Renamed the upgrade_svn file in last commit to match revision number.
- Updated SQL item/mob databases to latest.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14243 54d463be-8e91-2dee-dedb-b68131a5f0ec
- When yes (default) MVP slaves will always keep their prior targets.
- When no the old behavior of switching to the closest target is enabled.
* Updated MAX_MOB_DB to 4000 (Monsters are starting to appear in the 2k ranges)
* Changed default respawn time (when 0) to 500 from 5000.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14119 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Monsters shouldn't use skills if the target is within its attack range but is out of the skill range.
- Monsters' skill range is no longer 9 by default.
- Range for players' attacks and skills should always check for a circular area.
- The range of Magnetic Earth is 2.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13944 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Script induced status changes can now be reduced by stats/cards (but only trigger rate is reduced, not duration)
- Battle delay timers will now check if the target player has the invincible timer active or not.
- Adjusted mob_ai_sub_hard to return a bool indicating whether the AI was executed or not.
- Adjusted clif_damage and clif_skill_damage to set the endure type value based on dmotion and damage, rather than hardchecking for SC_ENDURE.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12315 54d463be-8e91-2dee-dedb-b68131a5f0ec
- Added a code to activate a Kill Steal protection and the required mapflags.
* (I will explain this later on forums).
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12203 54d463be-8e91-2dee-dedb-b68131a5f0ec