[5.7] State Tree Move To in Task finishing prematurely

I’ve got a Mover Character (slightly modified from GASP), controlled by an AIController, patrolling via a StateTree Blueprint task that calls the Move To Location Or Actor node (GoalLocation set from a spline point, AcceptanceRadius 0.1).

The move finishes well before the NPC actually reaches the destination. Before posting I ruled out the obvious culprit: I draw a debug sphere at the destination every time the move starts, and it’s consistently in the correct world location, so this isn’t a bad-coordinates problem. The request itself is accepted (no immediate OnRequestFailed). The NPC starts walking, then the task completes partway there and calls the OnMoveFinished exec.

This is my first time actually using State Trees rather than behaviour trees so I could just be understanding how they work incorrectly. It almost seems as if the states get recalled every 5 seconds or so…

Is this an issue with how I’ve setup the state tree or the actual task itself?

Thanks!

Recording the ST with the debugger shows that there’s a tick transition that happens every 5 or so seconds that fails to trigger completion transition and jumps back to the root state which triggers the move to again. This confuses me because I’m not overriding the tick function and “Should Call Tick Only on Events” is false.

Turns out the issue was related to AIController Move Block Detection returning blocked detection even when it shouldnt be. I believe it is related to Mover Component returning incorrect FeetLocationBased value. (https://issues.unrealengine.com/issue/UE-353449)

Setting the Move block detection in ai controller seems to “Fix” the issue on 5.7, however the actual issue has been fixed on 5.8