Age | Commit message (Collapse) | Author | Files | Lines |
|
cast on all players that are not in the party (bug:7050)
|
|
Fixed ALL_RESURRECTION to not inflict damage on hidden undead type playe...
|
|
will no longer be refreshed
Thanks to Playtester
|
|
* 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
* Improved Icewall walk block implementation
- 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)
- Cleaned up the rudeattacked code a little so it's easier to read
- Fire Pillar is no longer a trap and can no longer be hit or knocked back in renewal
Thanks to Playtester (rathena b43b855d2, 902c920b734cd)
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Char and login server preliminary support for the HPM system
|
|
- Fixed bug report 8407: http://hercules.ws/board/tracker/issue-8407-resurrection-skill-cant-be-dodged-by-hide/
- Refactorized code
|
|
-http://hercules.ws/board/tracker/issue-8012-bonus-bvariablecastrate-and-bfixedcastrate-not-working-properly/?gopid=21893#entry21893
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
montransform.
|
|
-http://hercules.ws/board/tracker/issue-7915-mind-breaker/
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
-http://hercules.ws/board/tracker/issue-7736-fist-spell-w-double-attack-and-similar-effects/?gopid=20575#entry20575
Fixed RE ATK random variance. Thanks to Angelmelody.
Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
|
|
Replaced their use in scripts with checkmount and setmount,
respectively.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Replaced their use in scripts with checkmount and setmount,
respectively.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Replaced their use in scripts with checkmount and setmount,
respectively.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Increase sql password field size from 32 to 100 chars.
|
|
- Special thanks to Ind
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Special thanks to Ind
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Control flow statements (break, case, continue, default, do, for, if,
switch, whilei, else) and sub-function declarations (function) will no
longer show a custom error message when they are incorrectly
capitalized.
- Note: This does not mean that they are no longer case-sensitive. This
only means that no special message will be shown in case such an error
is detected. The script engine will throw a normal error, as it would
with any other kind of typo, rather than treating this as a special
case. Enough time was given to update third party scripts, and it is
now time to clean up our parsing code and get rid of these special
warnings.
- Variables, labels and commands will still show a warning for the time
being, since the side-effects of silently ignoring it could be quite
dangerous. An alternative approach to the case-check will be presented
in future. For now, those who want to disable it (and save a bit on
execution time and memory use), can simply comment out the #define
ENABLE_CASE_CHECK line in script.h, as usual.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Top level commands (function, warp, shop, cashshop, script, trader,
duplicate, monster, boss_monster, mapflag) will no longer show a
custom error message when they are incorrectly capitalized.
- Note: This does not mean that the commands are no longer
case-sensitive. This only means that no special message will be shown
in case such an error is detected. The script engine will throw a
normal error, as it would with any other kind of typo, rather than
treating this as a special case. Enough time was given to update third
party scripts, and it is now time to clean up our parsing code and get
rid of these special warnings.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Use questprogress instead.
- Note: The command will be completely removed after about a month.
Custom, third party scripts will require updates, in case they were
using this command. It is recommended to use questprogress instead.
Please see the checkquest documentation for more information.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Report:8415
http://hercules.ws/board/tracker/issue-8415-gentle-touch-change-crash/
|
|
- The command should be replaced by petskillsupport in any custom
scripts.
- Updated the custom SOHEE pet skill script to use petskillsupport with
level 10 AL_HEAL.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- The command implementation is kept, with an internal-use prefix, to be
used by the script engine (for direct assignment commands).
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Added prefixed version for internal use.
- Note: The command will be completely removed after about a month.
Custom, third party scripts will require updates, in case they were
using this command. Please see the jump_zero documentation.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Commands marked as deprecated will trigger a warning when the script
is loaded. (there are currently no commands marked as such, but some
will come soon)
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
|
|
to Ind
- Service for you now work properly on all skill level.
- Fixed a problem that sometimes randomly a status change was removed on logout although it shouldn't. Special thanks to Playtester
|
|
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
|
|
monster behavior fixes
- Fixed cast time of Sightrasher in pre-renewal (700ms -> 500ms)
- Official Sight Blaster behavior (bugreport:6945, partially bugreport:144)
* Sight Blaster's AoE is now 3x3 even in pre-renewal (it was originally larger so it hits traps before they trigger)
* Sight Blaster will now prevent traps from triggering as long as they are knocked back
* Fixed a bug that caused Sight Blaster to not work on traps and ice walls at all
* Sight Blaster will no longer expire when the attack was reflected
* Sight Blaster will now expire when hitting an ice wall
* Sight Blaster will now properly protect you from being attacked from its AoE range
- Sight, Ruwach and Sight Blaster will now check for a target every 20ms (previously every 250ms)
- Step action will now be canceled when being knocked back (skills won't be executed anymore when knocked out of range)
- When knock back magic is reflected it will no longer lead to the caster being knocked back (related to bugreport:6945)
- Activated traps can no longer be hit
- Fixed a problem that left "trap ghosts" forever on the screen when a trap was knocked out of the screen
- Monster behavior fixes
* Monsters will no longer be able to do normal attacks when hiding
* If out of any reason a monster on "attack" state can't move and can't do normal attacks, it will now use "attack" state skills
* The order of monster thought processing is now equal to official servers
- Fixed some potential map server crashes
Mega thanks to Playtester (rathena b88e95381d6a7)
|
|
- The issue was caused by memcmp failing because of garbage in structs
padding.
- Fixes bugreport:8410, special thanks (and credits for the fix) to Garr
http://hercules.ws/board/tracker/issue-8410-autotradeat-issue/
- Also reduced scope of some variables, where appropriate.
- Thanks to Ind.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
|
|
Some Quality of Life Changes
- setdragon, setmadogear and setriding deprecated; use setmount instead.
- checkdragon, checkmadogear, checkriding deprecated; use checkmount
instead.
Signed-off-by: Haru <haru@dotalux.com>
|
|
To avoid ambiguity:
- The script command ismounting is now hascashmount
- The script command setmounting is now setcashmount
- The at-command @mount2 is now @cashmount
Signed-off-by: Haru <haru@dotalux.com>
|
|
- pc_isriding is now renamed to pc_isridingpeco, since that's what it
checks (to avoid confusion).
- pc_hasmount is added, to check for any of Peco, Dragon, Mado Gear, Wug
Rider.
- pc->setridingdragon is added.
- pc->setridingwug is added.
- pc->setfalcon type is changed.
- pc->setmadogear type is changed.
- pc->setridign is changed to pc->setridingpeco to avoid confusion.
- Changed direct accesses to sd->sd.option to the proper pc_is*
accessors, where applicable.
- Special thanks to Kisuka.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Added the questactive script command.
- While this information may not be needed by official scripts, it was
offered by the now deprecated checkquest, and as such it is made
available again.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Some Quality of Life Changes
- checkquest deprecated; Use questprogress instead for a more logical
quest log checking command.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Some Quality of Life Changes
- getbrokencount command added to get amount of broken equipment.
Signed-off-by: Haru <haru@dotalux.com>
|
|
This option enable static build for server binaries and map cache.
For plugins this option enable static linking with gcc.
|
|
This fixes the warning on some compilers, about the fread return value
being ignored.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Parameters passed to bindatcmd-invoked labels are now properly
space-delimited.
- This is in order to support strings containing multiple spaces or
containing a trailing space. Previously it was impossible to create a
bindatcmd command that could accept a player name such as
'This name has two spaces' or 'Sir Trailingspace '.
- Added documentation and usage examples, especially wrt space handling.
See doc/script_commands.txt for details.
- NOTE: Your custom atcommand labels may need edits, as we're no longer
trimming multiple sequantial spaces or trailing spaces, in order to
gain more flexibility. It is your care to do that.
- Special thanks to Dastgir, jaBote.
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
- Now monsters will walk into an icewall from the south and west if they already started moving to that cell
* This will make it slightly easier to trap a monster in an icewall (this is official as can be seen in the videos I linked in the main commit)
* This only applies if the icewall_walk_block configuration setting was not set to 0 (disabled)
Special thanks to Playtester (rathena 753f4c5b314910)
|
|
|
|
is about.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- This reverts commit 4ac673941714032ada6d26fb60936ec510bbe496.
- The commit breaks some legacy code. It'll be pushed again once some
things are fixed.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
|
|
* Official Icewall implementation and other fixes
- Reverted all the icewall-related changes done in SVN r15777 and following as testing shows they aren't official and are actually pretty exploitable (bugreport:7412)
- Instead implemented the official icewall characteristic that monsters can only leave an icewall cell to the west or south, the changes include:
* The "sight" path check no longer checks for the current cell so standing on an icewall allows you to see/attack into any direction
* The path finding will still ignore the current cell as before but the walk routine will not allow to walk east or north while standing on an icewall cell
* This leads monsters in the situation where they go through an AI loop not allowing them to escape the icewall (if their target is north or east of them)
* Monster in this situation will use idle skills and if they get attacked will use their rudeattacked skills if available, similar to traps like Spiderweb
* Added a configuration icewall_walk_block that allows to configure how long a monster should go through the AI loop before the server allows it any movement, this "safety" system is official and seems to equal about 75 AI loops; if you want to disable the whole icewall system so that monsters don't get stuck in icewall at all, just set this to 0
* Here are videos from jRO showing how this system works: http://ragdo.blog56.fc2.com/blog-entry-763.html
- Implemented the official calculation for "direction"; now you will be considered horizontal/vertical/diagonally aligned with a target cell in the exact same way as on official servers, this is for example used to determine whether an icewall or a firewall should be horizontal, vertical or diagonal; the only thing that is still unofficial is the default direction (officially always "west"); effectively now there are more situations considered diagonal than before
- Further cleanups on the idle skill use code for immobile monsters and monsters near a player but without a target (now skill using will always go via mob_unlocktarget)
* This also fixes that monsters switched to idle mode and start to use idle skills one second too late
Mega thanks to Playtester (rathena 5540d89cb0e)
|
|
32 chars is very small for password.
|
|
checkquest deprecated; Use questprogress instead for a more logical
quest log checking command.
getbrokencount command added to get amount of broken equipment.
setdragon and setmadogear deprecated; use setriding instead.
setriding now handles all combat mounts.
|
|
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
|