Jump to content

  •  

Bug Tracker Migration

June 3rd
Good news everyone! The staff has decided that it is time to slowly kill off this Bug Tracker. We will begin the process of slowly migrating from this Bug Tracker over to our Github Issues which can be found here: https://github.com/HerculesWS/Hercules/issues

Over the next couple of days, I will be closing off any opportunity to create new reports. However, I still will keep the opportunity to reply to existing Bug Reports. Doing this will allow us to slowly fix any bug reports we have listed here so that we can easily migrate over to our Issue Tracker.

Update - June 7th 2015: Creating new bug posts has been disabled. Please use our https://github.com/HerculesWS/Hercules/issues tracker to post bugs. Users are still able to reply to existing bug posts.

- Administration

Issue Information

  • #007454

  • 0 - None Assigned

  • Fixed

Issue Confirmations

  • Yes (0)No (0)
Photo

Ice wall

Posted by Beret on 01 July 2013 - 10:15 PM

Using ice wall in hercules I can't do the same in the official.

http://www.nicovideo...watch/sm9322576

note that the 17:20

Youtube mirror of the video (for those who don't have a nicovideo account and/or don't want to install Flash Player)

I believe some parts of that are possible in Hercules ( after commits https://github.com/H...41711233ee711e3 and https://github.com/H...a5fa2b29541f684 ), but there's still something off. I'm not completely sure what though, as I'm a bit too clumsy to be able to play a wizard properly.

Currently trying to fix that on rAthena myself, it's quite hard to fix, though.


But if anyone is interested what really happens here:


Official:
- if a monster is directly on an icewall cell, it can only walk to the south and the west
- the monster will drop the target but because standing on the icewall cell itself makes it still see the target, it will want to chase it again right afterwards
- the monster keeps on trying to chase its target but the pathfinding routine returns "just go one cell east you idiot" while the actual movement routine tells the monster "can't walk to the next cell, stop movement", so it gets kind of caught in an endless loop until it sees another target west or south of it or its target (the wizard) walks south or west of the wall (or the icewall expires)
- if you now cast an icewall east of your previous icewall, the pathfinding routine finally returns "well you need to walk west around the wall" and then the monster will finally leave the icewall to the west
- the "trick" is now to prepare a narrow path to the west that is filled with firewall, because the monster can walk out of the icewall in west direction but can NOT be knocked back into it, it will take all hits at once just like undead monsters would
- also on officials the direction to a target usually returns "diagonal" unless you are on a line with it or it's further away than 3-4 cells (this is a general bug, but is important because that's why you can build diagonal walls easier as in the video)


rAthena/Herc problems:
- monster in icewall can walk in any direction
- monster in icewall can NOT see into any direction (if you let it drop target, it won't move again until its random walk interval)
- both our pathfinding and movement routines allow moving out of icewall in any direction, so there won't be an endless loop
- you are more often considered horizontally/vertically aligned with the target than on official servers, causing more horizontal and vertical walls to appears than officially


The rest are just follow-up errors. The hardest part is to simulate the "endless loop" the monster goes through. It's hard to do in our current code structure, not to mention that our pathfinding routine is not the same as the client uses so it will cause huge position lag errors if you work with icewall on emulators like that, making it basically impossible to use it effectively (you rely a lot on the client displaying the monster where it really is). That's why I pushed the fix back until I (or someone else) figures out what pathfinding algorithm is used in the client.

Edited by Playtester, 02 October 2014 - 11:23 AM.


Update: Pathfinding is now fixed, so fixing Icewall should now be possible too. :-)

I fixed Icewall on rAthena now: https://github.com/r...ab822f83e8015f4

Notified Michieru.

changed status to: Fixed