'Finding Path to Actor/Location Synchronously' works differently in v4.8

Hi, I’m using ‘Finding Path to Actor/Location Synchronously’ to get path points to determine if a path exists between two points. Everything was working fine in v4.7, as it created zero path points when there was something obstructing the path.

But after updating to v4.8, it continues to create partial paths that stop near the obstructing mesh. Combined with the ‘Does Path Exist’ bug when dealing with dynamic nav mesh rebuilds, I’m not aware of any methods to check if a path exists between two points. Of course there are some hacks that could work in very specific cases, but no direct approach to deal with this in v4.8.

It would be great if someone could clarify if this change in functionality was intentional or if I need to report it as a bug.

This is a bug. The reason it broke is because we unified some parameters that are driving path finding under the hood, and the blueprint functions you mention didn’t get a way to set these parameters - namely disallowing “partial paths”, because that’s what your getting now. I’ll file this as a bug to fix and I have a workaround for you.

All you need to do to figure out if the path you got is partial or not is to see if the last point of the received path is within TetherDistance of the your goal location.

Regarding that “Does Path Exist” issue I wasn’t able to repro it (out QA is looking into consistent repro), but have you tried configuring the decorator to use regular pathfinding rather than hierarchical (the PathQueryType parameter)?

Cheers,

–mieszko

Cool, thanks Mieszko. I’m using a similar workaround to the one you suggested, for now by comparing the last path point with my target location projected to nav mesh.

As for the ‘Does Path Exist’ issue, I had submitted a bug report couple of weeks back along with a sample project and crash report data: https://answers.unrealengine.com/questions/241261/using-does-path-exist-decorator-with-dynamic-nav-m.html

As per your suggestion, I tried out Regular Pathfinding. It is crashing in that scenario as well. The only scenario where it’s not crashing is when I use ‘Navmesh Raycast 2D’ path query. But when I use that, it’s showing that a path doesn’t exist.