summaryrefslogtreecommitdiff
path: root/src/map
AgeCommit message (Collapse)AuthorFilesLines
2014-11-24Correction, safetywall still consumes sp when cast on LP.GrumpyLittlePanda1-1/+6
2014-11-24* 1st Transcendent Spirit, monster position lag fixesMichieru6-29/+102
- 1st Transcendent Spirit will now work as on official servers (#116) * The max total stat that is granted by the skill is now BaseLevel-10 with a maximum of 50 instead of always 50 * It will now work as Marionette Control and calculate the bonus at cast time rather than overwrite all existing bonuses * Agi Up and Blessing will now cancel the soul link - Fixed various problems that caused position lags on the client (#118) * Added a define ACTIVEPATHSEARCH in mob.c; if active (default and official), monsters will only grab targets if the walk path to the target is shorter or equal their search range; search range depends on whether the monster is moving or not (range2 for standing monsters and range3 for walking monsters); this requires a lot of CPU load, if it causes trouble, just comment the define for old behavior * Fixed a bug that made monsters display "irregular movement with position lag" continuously when a status change ended that changed their walk speed * OFFICIAL_WALKPATH now also applies to monsters * If the path search fails while a unit is already moving, we will now issue of fixpos packet so that the unit does not only stop moving on the server, but also on the client * Direction fixes - Updated the config setting attack_direction_change from 15 to 0 (official value); that means that a unit's direction will no longer change when it attacks; knock-back effects from e.g. Firewall will depend on the last direction the target walked into instead (bugreport:1322) - Ensured that the default direction of a monster is always "north", so that immobile monsters will now always be knocked back to the south by e.g. Firewall on default settings, unless a skill like e.g. Backstab changes their direction (bugreport:1322) - Fixed a bug that stopped characters server-sided and caused position lag when closing a skill menu * Magnum Break damage fixed - Targets two cells away will now only take 100%+10%*level damage (#108)
2014-11-23Fixed whitespaceGmOcean1-39/+39
2014-11-23Added Commands to script_commands.txt and script.cGmOcean1-19/+222
2014-11-17(Bugs 5237 and 7979)GrumpyLittlePanda4-17/+15
- Land Protector now behaves more like on official servers * Land Protector now protects from units being placed on it, no matter if they have splash range or not * Land Protector no longer protects from damage from units not outside Land Protector that splash inside * Meteor Storm no longer shows meteors falling if they would land on Land Protector * Pneuma can no longer be placed next to Land Protector * Safety wall no longer consumes gem if cast on LP. * Also cleaned up the code a bit, so the checks are done where they should be done - Ground skill splash ranges updated to their official values * Lord of Vermilion places units in a 11x11 area with 3x3 splash range each * Storm Gust places units in a 9x9 area with 3x3 splash range each * Heaven's Drive places units in a 5x5 area with no splash range * Venom Dust now has a splash range of 3x3 and is consequently larger than before - Storm Gust's knock-back behavior updated to official * Each of Storm Gust's units will knock back "Away from center" * As units in the south-west are processed first, the knock-back direction will usually be north-east * At the edges the knock-back direction will be "to the outside" * Land Protector and Ganbantein will influence the knock-back behavior strongly, e.g. if Storm Gust has a hole in the middle, it will have a "suck in" effect * Added a config option for those who want the old "random direction" behavior from eAthena
2014-11-16Whitespace cleanup (no code changes)Haru52-3608/+3728
This includes, and is not limited to: mixed or wrong indentation, excess whitespace (horizontal and vertical), misalignment, trailing spaces. Signed-off-by: Haru <haru@dotalux.com>
2014-11-16Moved duel_s into duel.cHaru2-1/+3
Signed-off-by: Haru <haru@dotalux.com>
2014-11-15Add support for plugin options in map server config (script.conf).Andrei Karas1-1/+4
2014-11-15Add support for plugin options in map server config (logs.conf).Andrei Karas1-0/+3
2014-11-15Add support for plugin options in map server config (inter-server.conf).Andrei Karas1-0/+2
2014-11-14Add ability to add deprecated command from scripts and plugins.Andrei Karas2-3/+3
2014-11-11Corrected some uninitialized interface functionsHaru1-3/+0
- Detected through the just merged validation tool, special thanks to Andrei Karas. - Added validation tool to the Travis tests. Signed-off-by: Haru <haru@dotalux.com>
2014-11-10Merge pull request #386 from 4144/fixpluginsHaruna11-41/+41
Fix interfaces methods usage.
2014-11-10Fix interfaces methods usage.Andrei Karas11-41/+41
In some places was used direct methods.
2014-11-09Follow git rev: cf18e5578f85bc6c368a2ad4d7c746af8687c7f0Michieru1-0/+1
This fix bug: 8430 Sorry for this I forgot this in my revert... Thanks to Playtester
2014-11-06revert Git:10e6f1a189f20ca346ada2f6199378869b370442Michieru2-21/+6
For now MD_RANDOMTARGET is not use and create problem with clone http://hercules.ws/board/tracker/issue-8424-taekwon-stanceskill-transfered/
2014-11-03Fix compile warning in VC++Michieru1-1/+1
Thanks to Ind
2014-11-03Merge pull request #363 from EPuncker/masterMichieru5-2/+19
Added 4 new permissions
2014-11-03Adjusted roulette logic ( see 239d480487e24294975f35ed55f210837ad1088e )shennetsind1-14/+14
Special Thanks to Yommy and Ziu for the adjusted logic! This commit also introduces the proper coins to obtain the roulette points, thanks to Michieru. Signed-off-by: shennetsind <ind@henn.et>
2014-11-03HPM Hooks UpdateHercules.ws5-115/+115
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2014-11-03* No cell stacking implemented (official version)Michieru9-29/+147
- 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
2014-11-03Re-issuing conflicted-out content on battle.c (see history/follow up)shennetsind1-0/+8
Signed-off-by: shennetsind <ind@henn.et>
2014-11-03Merge branch 'master' of github.com:HerculesWS/Herculesshennetsind20-234/+236
Signed-off-by: shennetsind <ind@henn.et> Conflicts: src/map/battle.c
2014-11-03Introducing 2014-10-22, Roulette and Per-Char Gender!shennetsind9-15/+555
Details in http://hercules.ws/board/topic/7618-2014-10-22-roulette-and-per-char-gender/ Special Thanks to the all-mighty Yommy, Ziu and Haruna! Signed-off-by: shennetsind <ind@henn.et>
2014-11-03Missing 'type' field in itemdb now defaults to IT_ETC rather than IT_UNKNOWNshennetsind1-1/+1
Signed-off-by: shennetsind <ind@henn.et>
2014-11-03Added missing type check to skill_delunitgroupshennetsind1-1/+1
Signed-off-by: shennetsind <ind@henn.et>
2014-11-02Merge pull request #379 from 4144/irccrashHaruna1-2/+3
Fix possible buffer overflow in irc channel name parsing.
2014-11-02Marked commands 'enablearena' and 'disablearena' as deprecated.Haru1-2/+2
- Note: The commands will be completely removed after about a month. Custom, third party scripts will require updates, in case they were using these commands. Please see the commands documentation. Signed-off-by: Haru <haru@dotalux.com>
2014-11-02Marked command 'cmdothernpc' as deprecated.Haru1-1/+1
- 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 'cmdothernpc' documentation. Signed-off-by: Haru <haru@dotalux.com>
2014-11-02Marked command 'save' as deprecated.Haru1-1/+1
- 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 'save' documentation. Signed-off-by: Haru <haru@dotalux.com>
2014-11-02Added min() and max() script commandsHaru1-0/+32
- Special thanks to Streusel, Xgear Signed-off-by: Haru <haru@dotalux.com>
2014-11-01Fix clearance, should work only on mob, party or self and skill can't be ↵Michieru2-12/+7
cast on all players that are not in the party (bug:7050)
2014-11-01Merge pull request #380 from csnv/somefixesMichieru1-4/+3
Fixed ALL_RESURRECTION to not inflict damage on hidden undead type playe...
2014-10-31- If you now cast Icewall on an existing ice wall cell, the duration (HP) ↵Michieru1-2/+3
will no longer be refreshed Thanks to Playtester
2014-10-31- Monster chase range updates (bugreport:7637)Michieru4-22/+47
* 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)
2014-10-31Fixed some errors pointed out by clang's static analyzerHaru2-3/+2
Signed-off-by: Haru <haru@dotalux.com>
2014-10-31Fix possible buffer overflow in irc channel name parsing.Andrei Karas1-2/+3
2014-10-31Merge pull request #378 from HerculesWS/hpmupdatesHaruna3-45/+4
Char and login server preliminary support for the HPM system
2014-10-30Fixed ALL_RESURRECTION to not inflict damage on hidden undead type playerscsnv1-4/+3
- Fixed bug report 8407: http://hercules.ws/board/tracker/issue-8407-resurrection-skill-cant-be-dodged-by-hide/ - Refactorized code
2014-10-30Fixed Bug#8012malufett2-4/+3
-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>
2014-10-29Added 2014 Halloween Event and made status change parameter optional on ↵Taylor Locke6-9/+40
montransform.
2014-10-30Fixed Bug#7915malufett1-2/+2
-http://hercules.ws/board/tracker/issue-7915-mind-breaker/ Signed-off-by: malufett <malufett.eat.my.binaries@gmail.com>
2014-10-30Fixed Bug#7736malufett2-1/+2
-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>
2014-10-30Deprecated checkriding and setriding commandsHaru1-2/+2
Replaced their use in scripts with checkmount and setmount, respectively. Signed-off-by: Haru <haru@dotalux.com>
2014-10-30Deprecated checkdragon and setdragon commandsHaru1-2/+2
Replaced their use in scripts with checkmount and setmount, respectively. Signed-off-by: Haru <haru@dotalux.com>
2014-10-30Deprecated checkmadogear and setmadogear commandsHaru1-2/+2
Replaced their use in scripts with checkmount and setmount, respectively. Signed-off-by: Haru <haru@dotalux.com>
2014-10-30Merge pull request #369 from 4144/sqlpasswordsizeHaruna2-2/+2
Increase sql password field size from 32 to 100 chars.
2014-10-28Added preliminary support for login and char server in the HPMDataCheckHaru3-45/+4
- Special thanks to Ind Signed-off-by: Haru <haru@dotalux.com>
2014-10-28Removed some temporary case-check error messages.Haru3-49/+3
- 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>
2014-10-28Removed some temporary case-check error messages.Haru2-20/+0
- 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>