azerothcore / azerothcore-wotlk

Complete Open Source and Modular solution for MMO
http://www.azerothcore.org
GNU Affero General Public License v3.0
6.63k stars 2.65k forks source link

Creatures do not path around gameobjects. #18024

Open avarishd opened 11 months ago

avarishd commented 11 months ago

Current Behaviour

Creatures do not path around gameobjects.

(When you pull them (which you shouldn't, cause your pet shouldn't be allowed to go through the door to begin with) they will follow and come to you)

https://github.com/azerothcore/azerothcore-wotlk/assets/46330494/7d6ea4af-da0e-4128-aa20-04b9ac6afa41

Expected Blizzlike Behaviour

Creatures should path around gameobjects.

Source

Pets follow that logic, safe to assume creatures do too. - recycled (classic)

Steps to reproduce the problem

Add a temporary/DB spawn object. .mmap path, notice it's a straight line. Pull the mob, it paths as shown via mmap.

Extra Notes

https://github.com/TrinityCore/TrinityCore/issues/14120

This may not be applied to all gameobject types. (e.g flames at @ Utgarde Keep forge (type 1, button) allow to be casted through, type 0 (door) (Utgarde Pinnacle door to last boss) does not allow casting/pathing.

All default settings for MAPS. Edge case: Sometimes (can't reproduce) even normal LoS (Casting LOS) returns true, even when behind a GO.

WoWScrnShot_121723_120042

AC rev. hash/commit

03d06da87b85084e0a6891bed1c03807e30e663d

Operating system

Windows 10

Custom changes or Modules

mod-brawlers-guild

Kitzunu commented 11 months ago

Issues like these are very good if you post the output of .server debug

Nyeriah commented 11 months ago

They don't always path around objects e.g https://github.com/chromiecraft/chromiecraft/issues/6172

avarishd commented 11 months ago

Is this specific to a GO type? Tested with a bunch of types, all return the same result. And what are the cases where it's not "always"?

Issues like these are very good if you post the output of .server debug

VMAPs/MMAPs are both enabled, with all settings. (default)

(missclicked close)

avarishd commented 11 months ago

Type 0 (door) should block both VMAP & GObj LoS, there is a specific data field (6) ignoredByPathing (which currently does nothing) that should allow the GO to not block vmap pathing, allegedly.

SELECT entry,name,DATA6 FROM gameobject_template WHERE TYPE = 0 AND DATA6 

I'm not so sure about other types, but doors (type 0) are semi confirmed.