Pathfinding Keeps getting stuck on tree and rocks

Hello,

I have been sitting for hours trying to figure out why would my monster keep getting stuck into rocks and trees when there are Pathfinding Modifiers in each of the MeshParts. Here is the part where it get stuck several times:



Here is my AgentParams:

local lurker_agentParams = {
	AgentRadius = 6,
	AgentCanJump = true,
	AgentCanClimb = true,
	Costs = {
		avoid = 10.0,
		collectables = 5.0,
		wall = 10.0
	}
}

All of the Costs are named 100% according to the labels.

For the work of the PathFinding, I use this module:
https://create.roblox.com/marketplace/asset/6744337775/SimplePath-Pathfinding-Module

Any sort of advice would be appreciated. Thank you.

1 Like

Question. What is the RenderFidelity on these mesh parts? That may effect collisions.

1 Like

So, the RenderFidelity is on Precise. Any idea what that may do?

How about CollisionFidelity? What is that set to? If not already, try setting it to PreciseConvexDecompition.

I have tried setting to that setting, but the monster still runs into the rock like a clumsy goat. Are the agent params an issue though?

Have you already tried using PathfindingModifiers?

Used those in all of the rocks and tree trunks. Here is a rock one:


The label is wall, which matches the Costs.

Interesting, maybe try increasing the cost values?

All modifiers were tested PassThrough on both booleans.

I have once increased to math.huge, then as high as up to 50.0. Anything wrong with them? Because the monster still manages to get stuck going in a loop near a tree.

What happens when you set CollisionFidelity to Box? Have you tried it, and if so, what happened?

Still manages to run into the rocks. I do not know if the problem could either be related to the meshes, the params, or the SimplePath module itself. But if you did look at it, is there something thats wacky?

In that case, it might be the module that is the issue.

Im sorry, but I have no clue what else it could be.

If the monster doesnt have to jump, maybe set the CanJump to false.

Thats the only thing I could think to do.