Age | Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
|
|
- Split config cell_stack_limit into custom_cell_stack_limit (previous feature) and official_cell_stack_limit (see below)
- Expanded map_count_oncell by a flag parameter, currently only one flag is supported: only count standing units (needed for official cell stack feature)
- Added a new function map_closest_freecell that will return the closest free cell using the same order that official servers use
- Monsters will now actively search for a free cell when starting to walk randomly and when unlocking target
- When any unit finishes walking (regularly) and is not on a free cell, it will now actively search for a free cell
- Step actions will be delayed until a suitable cell was found, they will even be executed when the player walked slightly out of attack range
- 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
Mega Thanks to Playtester
|
|
- Updated monster skill use behavior so monsters use skills the same way and at the same rhythm as official servers (bugreport:009326), the changes include:
* Unified the "monster can't move by default" and the "monster trapped" code as it really should behave exactly the same
* Fixed a bug that caused the "monster skill use" routine to be called 20 times more often than it should in some situations
* When a monster attacks you and you run away from it, the monster will now check if it has a ranged skill on "attack" state before switching to chase state
* Monsters will now always do a normal attack before using "attack" state skills
* Fixed a bug that caused monsters to switch to idle mode and never use their chase skills when they get hit continuously
* Changed default for skillrange_from_weapon from 30 (all but player) to 0 (none); monsters will now use all skills at the skill range and not at their own attack range, if they get tanked from farther away than skill range, they won't use these skills
- Updated ranges to work as on official servers (bugreport:009326), the changes include:
* Implemented new functions "check_distance_client" and "distance_client", that instead of the server-sided square range system use the circular one that the client uses; these functions should be used for units that send their commands via the client (players mostly)
* Applied the new distance algorithm to some player-specific range checks, players will now have a circular attack range that reflects their attack range on the client; this makes it impossible to hack the client for more diagonal range
* Removed the arbitrary +1 range bonus at range checks; as monsters now react fluently, they won't need it anymore, that means a monster with for example 4 attack range will now only attack targets within a 9x9 area around it, the moment you step out of this area, the attacks will stop (if the monster can move it will follow you); as for players, the extra cell attack range when on a linear line to the target now is integrated into the distance algorithm, that means a player with attack range 4 can attack from 5 cells away when directly on line with a monster, but no longer diagonally as range is circular for players now
* Implemented a new "step action" feature to reflect official chase range behavior; when an attack or skill is used inside the attack range, it will act exactly as now, the skill is used once the signal from the client was received; however, if an attack or skill is used outside the attack range, the player should move into the chase area which is 1 cell inside the attack range border; the client actually sends us where to use the attack / skill from, but previously we just dropped that information the moment an attack request came; now instead of stopping the player instantly on an attack request, the player will continue moving to the target cell and then automatically use the command received earlier (it will be remembered); this change was absolutely necessary as the client sends the attack request slightly before attack range is reached, execution on official servers only takes place on every full cell moved; the new system copies this behavior
- Implemented an improved hit-lock system (bugreport:007460), the changes include:
* MVPs are no longer immune to being stopped by a hit unless they used Endure
* When hitting any unit, it will stop for its "dMotion" interval, exactly at the end of "dMotion" it will continue walking (official behavior); this helps getting more "move" packets to be displayed
* The unit that was hit will be immune to being stopped for another "dMotion" interval, this allows to slow down any units by hitting them frequently, but makes it almost impossible to completely stop them forever (depends a lot of ASPD and dMotion value); this does not affect special hit-lock properties (some skills and events should set delay anyway)
* The unit that was hit will no longer be "pulled" to the next cell; this caused a lot of position lag, it should be much better now
* Random walking, monster target dropping
- Implemented official behavior for random walking of monsters (bugreport:9340)
* Updated the interval between walks from 3-6 seconds to 4-5 seconds
* Added a define MIN_RANDOMWALKTIME that is now used anywhere the interval is applied so it's easier to change
* Monsters will no longer attempt to walk to the cell they are currently standing on (note: still requires a proper "no cell stacking" implementation)
* Monsters will only target a cell within a 15x15 area around them
- Moved the "mob_ai" 0x008 configuration setting to mob_unlocktarget, so it applies to all cases of monsters unlocking targets
- Cleaned up the unit_stop_attack and unit_stop_stepaction functions
* unit_stop_attack now makes sure that the target is always set to 0, even if no attack timer currently exists
* replaced several calls of unit_set_target that set target to 0 with unit_stop_attack, this is important because the attack timer should always be deleted at the same time the target is set to 0
* this also fixes the problem that caused monsters to sometimes drop their target after an attack
* Minor monster walk and skill use fixes
- Fixed a bug that caused monsters to never use their idle skills even if the define MOB_LAZYSKILLPERC was set
* The default value of the define is now 100% for spotted mobs and 0% for non-spotted mobs as on official servers
- Monsters now use complex path searching for their random walk, so they can also walk around corners now (OFFICIAL_WALKPATH still applies!)
- Fixed spotted monsters using their "walk" skills even if nobody is on the map
- Monsters will no longer stop when using "walk" skills (they are supposed to be used while walking)
* Monster idle skills, chase, final cleanups
- Spotted monsters will now use their idle skills even if no players are on the map
* This is official behavior and allows them to metamorph and heal up even if nobody is on the map
* I originally had concerns about the performance, but as the dynamic mobs option is enabled by default and set to 5 minutes, monsters will only stay "spotted" for 5 minutes when nobody is on the map anyway, this doesn't cost much extra performance
- Increased chase range of monsters by 2
* Tested this thoroughly and the effective chase range is actually 2 cells larger than listed in the "Range3" column
* Special thanks to ultramage and Michieru for helping me testing this
- Some final cleanups in the unit_stop_attack and unit_stop_stepaction functions
* Special thanks to icxbb-xx for pointing these out
Super ultra mega thanks to Playtester (rAthena 2c86ee435670168,ebd3dc97bc7e,f3916c1baf1,b1330a4c6,c2377c8f54,464dd4586380)
|
|
- Complies with CERT DCL37-C
- Fixes issue #293 (special thanks to elfring)
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Fixes bugreport:8184, allowing re-commit of
94657284973f4037596bae468ebfbee5c217e02b
Signed-off-by: Haru <haru@dotalux.com>
|
|
This reverts commit 94657284973f4037596bae468ebfbee5c217e02b.
|
|
This reverts commit b6b3f58795288701d0e162d43fa6f0a47af913b3.
Fixes issue 8184
http://hercules.ws/board/tracker/issue-8184-cart-related/
|
|
- Changed order according to the (upcoming) code style guidelines.
- Fixes several issues caused by missing headers when their include
order is changed or in plugins.
Signed-off-by: Haru <haru@dotalux.com>
|
|
dependency
- Removes the need for map-server to access the interreg table to store the last used ID.
- Login, char and map databases can now be hosted separately.
- Note: the unique_id structure has changed, and it now contains the generator character ID in its upper 32 bits.
- Now NSI_UNIQUE_ID System is enabled always
Special thanks to Haruna.
|
|
-http://hercules.ws/board/tracker/issue-7933-sonic-blow/?gopid=21551#entry21551
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
http://hercules.ws/board/topic/4283-introducing-hpm-datacheck/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Effect would not be applied when mvp is under no status conditions, also adjusted spelling in secure.h
Signed-off-by: shennetsind <ind@henn.et>
|
|
Fixed an issue where character position would not be instantly updated upon using a skill with casttime while in hiding (e.g. cloaking -> soul break), Special Thanks to Michieru!
Turned the feature optional, by commenting out ANTI_MAYAP_CHEAT in src/config/secure.h due it not being entirely able to mimic skill casting out of hiding (read the description in secure.h for further details).
Also fixed some status.c indentation which, unfortunately, considerably increased this commits size.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Aka autotrading merchants survive server restarts.
Originally sekai's (aka me).
Special Thanks to Haruna, Michieru.
Signed-off-by: shennetsind <ind@henn.et>
|
|
When enabled, reflect damage doesn't bypass devotion (and thus damage is passed to crusader)
Configurable in src/config/general.h
As requested by the community (in http://hercules.ws/board/topic/421-suggestion-d/ ) and provided in pull request #209 by Jedzkie. (Committing on his behalf due to issue with automatic merge)
Closes #209
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Warnings detected thanks to Xcode's compiler settings (more strict by
default) and clang, warnings mostly but not only related to data sizes
on 64 bit systems, that were silenced until now by very lax compiler
settings.
- This also decreases by a great deal the amount of warnings produced by
MSVC in x64 mode (for the adventurous ones who tried that)
- Also fixed (or silenced in case of false positives) the potential
issues pointed out by the (awesome) clang static analyzer.
- Patch co-produced with Ind, I'm merging and committing in his place!
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Sanitized all potentially unsafe macros (related eA:15259)
- Improved some function-like macros to evaluate their argument only
once and keep it in a temporary variable. This improves performance
in the damage calculation related code.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Special Thanks to Haruna
Signed-off-by: shennetsind <ind@henn.et>
|
|
Im pretty sure its on the clif.c
Signed-off-by: sevenzz23 <sevenzz23@yahoo.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
(related: b9c8f57)
Most renames are trivial (just to avoid shadowing global variables, even
if they currently did no harm), but there were some cases of partly
renamed variables that caused some NULL checks to always pass and who
knows what could have been happened when they were too subtle to make
the application crash.
Also corrected some potentially unsafe macro definitions
Signed-off-by: Haru <haru@dotalux.com>
|
|
Both Renewal and Pre-Renewal branches will now be built and tested.
Signed-off-by: Haru <haru@dotalux.com>
|
|
-where SR_GENTLETOUCH_REVITALIZE is not working properly.
Fixed Bug#6547 & Bug#6141
-SC_BLOODYLUST should now work properly like as official behavior.
Fixed Bug#7395
-SO_SPELLFIST should now work properly.
Fixed Bug#7477
-removed hidden walkdaley that makes character stop when hit even if SC_ENDURE is active.
Fixed Bug#7475
-fixed error message in SA_AUTOSPELL when cancel button is pressed.
Fixed Bug#7337
-MG_CHANGECART should now work properly.
Fixed Bug#7474
-SC_MAELSTROM should now work properly like as official behavior.
|
|
Ai4rei; thanks!
Another follow up, now to fix maximum value of chatdori setting;
And fixed a bug where warping to a disable map would cause the map-server to crash.
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
|
|
Adjusting for merge.
Signed-off-by: shennetsind <ind@henn.et>
Conflicts:
src/map/battle.c
src/map/status.c
src/map/status.h
|
|
-where 'working in progress' state is not cancel in change map/teleport.
Fixed Bug#7265
-where casting AL_INCAGI into chars force them to stand where it now suppose to be.
Fixed Bug#7337
-fixed some skills that deals 'work in progress' state.
Fixed Bug#7467
-fixed compiling warning message.
Renewal Updates
-Temporary fix for skills final damage reduction.
-Updated NJ_KUNAI to its renewal formula.
-Updated/Fixed some interface messages.
-Implemented additional new 3rd job skills(GN_ILLUSIONDOPING,RK_LUXANIMA,SO_ELEMENTAL_SHIELD,SC_ESCAPE)
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
are already called 'status')
|
|
- Moved PARTY_RECRUIT definition to mmo.h to avoid segfault;
- Check if item is already at maximum refine;
- Fixed that @reloadscript with one npc bug (thanks to akinari).
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
|
|
|
|
Also Introducing the official DB2SQL plugin to quickly update the .sql db files.
http://hercules.ws/board/topic/1105-hercules-wpe-free-june-14th-patch
Signed-off-by: shennetsind <ind@henn.et>
|
|
or —Oh the inconsistency between clients—.
If it doesn't help and you are having problems with party booking search, keep reporting and giving thorough information, so we can actually help.
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
|
|
Rename SC names to eagis standard.
Implement SC Configuration.(see db/sc_config.txt)
Skill updates and fixes.
Some code optimization.
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
There are still some features as blocklist and volunteer that were not worked on due to some lack of information.
Special Thanks to mkbu95, Spira and Yommy
Signed-off-by: shennetsind <ind@henn.et>
|
|
http://hercules.ws/board/tracker/issue-7243-raising-dragon-sphere-count/
Signed-off-by: shennetsind <ind@henn.et>
|
|
* Removed some forgotten references to rAthena.
* Updated script_commands.txt for an upcoming script command modification by @shennetsind.
* Corrected a typo in is_upper script command example.
* Updated doc/sample/npc_test_skill.txt to reflect the type 3 flag.
Signed-off-by: jaBote <j@bot.e>
|
|
http://hercules.ws/board/topic/470-hercules-april-22-patch/
Signed-off-by: shennetsind <ind@henn.et>
|
|
SECURE_NPCTIMEOUT now possesses 3 settings (to mimic official ones)
NPC_SECURE_TIMEOUT_INPUT
NPC_SECURE_TIMEOUT_MENU
NPC_SECURE_TIMEOUT_NEXT
http://hercules.ws/board/tracker/issue-1721-npc-window-timeout/
Signed-off-by: shennetsind <ind@henn.et>
|
|
nothing important really :P
Signed-off-by: shennetsind <ind@henn.et>
|
|
http://hercules.ws/board/tracker/issue-7133-no-cart-display/
Signed-off-by: shennetsind <ind@henn.et>
|
|
It's back. It's efficient. It's awesome.
http://hercules.ws/board/topic/272-re-introducing-console-input/
Signed-off-by: shennetsind <ind@henn.et>
|
|
* Set as off by default, it can be changed in /src/config/core.h.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17080 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
[16969:16991/trunk/src/] will be re-committed in the next 24 hours.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16992 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
Removed /SAFESEH option from MSVC11 projects.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16968 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
-Upd pre-re db (insignia, homon-s, bloodylust, chaospanic)
-fix @zeny for negative amout bugreport:6886
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16923 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16815 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16814 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
rAthena's overall features by letting we know which options are most and least used.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16785 54d463be-8e91-2dee-dedb-b68131a5f0ec
|
|
Fixed bugreport:2018 where CH_PALMSTRIKE deals damage to hidden targets.
Fixed bugreport:6473, bugreport:6325 SC_DEADLYINFECT should now spread status ailments properly.
Fixed bugreport:5541, bugreport:6179, bugreport:6281 where self buff skill is transfer to targets when doing a combo.
Updated AC_VULTURE where in renewal it doesn't show the hit bonus anymore in the status window.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16661 54d463be-8e91-2dee-dedb-b68131a5f0ec
|