I found this bug after my game’s pathfinding broke in a completely unexplainable way and I had to spend a few hours narrowing down the root cause of it.
It’s a very rare case that no one else seems to have stumbled across so I don’t expect this bug report to be taken particularly seriously - but it’s probably good to make record of it for anyone else who may come across it.
Explanation
In my game, I had set FallenPartsDestroyHeight to -50000 so if a user’s pets fall off the map, it has enough time to automatically teleport back to the player without being consumed by the void.
Yesterday however, my game’s pathfinding suddenly stopped working and producing random paths with different start/endpoints to the ones that I provided.
After hours of swapping round scripts and deleting bits of the Workspace, the culprit turned out to be a single, Un-Anchored, CanCollide false part falling through the map to a considerably low Y position of around -8000.
When this happens, Path:ComputeAsync appears to break completely.
Screenshots
Expand
Working pathfinding with the pink, anchored block at Y = 0
Broken pathfinding after the pink, anchored block is now at Y = -8000
I have an example place that re-produces it if that is needed but it’s fairly easy to do.
Specs
AMD Ryzen 7 4800HS, NVIDIA GeForce RTX 2060TL;DR
- Path:ComputeAsync fails to work when a part exists in the Workspace below the position Y = -8000
- Though this is a fairly unlikely bug, it could affect any game with Pathfinding & either parts that can fall through the map or are intended to be at very low heights.