So this pawn will only walk on the tiles, and understands when a tile is missing and won’t walk on the gap.
There’s no array of tiles. I just made a tile BP. It just has a flattened cube, and a collision volume set to block all
When I try to move forward, the pawn does a line trace to see if there is a tile there. It ignores the tile underneath:
If there is a tile, then it moves forward. Both the forward movement and turning are locked with a DoOnce, until the code is happy the pawn had finished the movement:
I just use tick to re-align the pawn and check if it’s ok to enable movement again