In an attempt to utilize Climbable Trusses with PathfindingService, I found that path could never be generated using a Truss unless I created Pathfinding Links connecting the top and the bottom of each truss.
According to the announcement that PathfindingService supports Climbable Trusses, it is specifically cited that this feature is intended to replace the use Pathfinding Links. I would expect PathfindingService to find and generate paths that are as good/better as manually creating Pathfinding Links.
Below is an image of the NavigationMesh generated, and as you can see there are no climbable nodes generated, unlike what you might see with a standalone truss. While the geometry around the truss is somewhat complicated, our maps are designed specifically to play nice with pathfinding, using only Roblox BaseParts and Wedges in these harder to navigate areas.
In this video, you can see how Pathfinding can find a path up to a standalone truss, but cannot find a way up the two trusses placed in the hole, instead opting to go around the entire map using a set of stairs.
This problem persists even if I decimate the surrounding geometry and add 5 trusses. This is not a problem of the AgentRadius, and is not/should not be a problem with the surrounding geometry.
Even if the NPC can make its way onto the truss (which is only done when it has line of sight with the player and we instead use :MoveTo() directly), it will become stuck as it can no longer pathfind off of the truss.
When looking at the NavMesh of this simplified geometry, you can see only one climb node starts at the ground. The others are a few studs up in the air, and two of them attempt to go through the walls/floor.
However, if I disable AgentCanClimb
and instead create Pathfinding Links manually, the NPC can navigate the original geometry of the truss with no problems at all.
Expected behavior
Adding the AgentCanClimb
parameter was specifically added to prevent developers from needing to use Pathfinding Links on climbable trusses, and as such I should expect Pathfinding to be able to generate paths using these trusses in conditions where they are entirely clear of any sort of potential obstruction.
A private message is associated with this bug report