If you ignore M2 you end up pathing around objects. That wasn't how it was before and not how it was on retail. Ignoring none means that the raycast that occurs, which is obviously linear, will include M2s when computing whether or not the target is in LoS. Essentially it's like a linear pathfinding check but really it's just a ray cast from the chest, probably, to the other object.Gnurg wrote:Would feeding in ObjectIgnoreFlags::IGNORE_NONE instead of ObjectIgnoreFlags::IGNORE_M2 in the changed functions in Spell.cpp make it like before?Glader wrote:
If you use ObjectIgnoreFlags::IGNORE_NONE for Charge you should end up with behaviour that will not allow charging around objects, which is how it was on retail, and if you use ObjectIgnoreFlags::IGNORE_M2 it will ignore M2s in the check meaning so long as a valid path can me made, linear or not, you can charge around things. I cannot stress enough how this isn't blizzlike and can lead to crazy insane charging behavior, especially if the resulting path isn't checked for distance. I can't recall if it is.
Edit: Previously behavior technically was ObjectIgnoreFlags::IGNORE_NONE.