Running in Circles - Solved (maybe)
Posted: 13 Sep 2015, 00:29
Feature 2229 notes that Actors have a "habit of running" in circles. And I've been working on fixing this.
So far, I've found 5 causes of this.
So far, I've found 5 causes of this.
- Flying creatures check that creature had reached navpoint did not allow for vertical distance between creature and navPoint. Fixed.
- Infrequent checking to see if actor reached a navpoint resulted in Fast moving actors overshooting navpoints between checks, then circle back to try an hit it again. Partial fix: Now test each frame. so long as rate is above about 15 FPS, overshoot should not occur, even for actors with speed of 100.
- AiFollow/AiCombat. When navigation toggles from "line of sight" short-cutting to "follow pathgrid". If nearest navpoint is behind actor, Actor would circle back to nearest point before continuing. Not fixed. Loss of "Line of Sight" means player should not see this either.
- Bug in pathing logic, turns actor in wrong direction when moving south. Fixed in Monday's commit.
- "Psudo circling". When Actor has AiWander with a short distance (<= 128), actor moves between two very close navPoints. This resembles running in a circle with the center between the two nav points. Not fixed, as not a bug and behaviour can be seen in Vanilla. Example: Phane Rielle in Balmora's South wall cornerclub.