My ai gets stuck going around corners sometimes. Making the Agent Radius bigger stopped the ai from just walking into the wall, but now sometimes they just get stuck, like the Agent Radius is inside the wall and they can’t move, just just give up. I’ve tried finding a balance on the size of the Agent Radius but it’s either run into the wall and slowly slide off it or get completely stuck beside it.
Maybe have the actual actor detect when it’s not moving?
Like… if it gets stuck, it’s movement velocity will be slowed considerably… so maybe set up a bool for when that happens, and have the thing that’s moving “move to” a location that’s behind it (subtract or add from that location to make a new one), and then resume it’s path?
It seems your problem is connected to the fact that your characters punch holes in the navmesh. Do you have a real reason for having this feature enabled? I’m asking because this is a bit of a hack, character avoidance should be handled by either RVO or detour crowds. The only good reason to have this enabled is to have paths generated around characters that are not moving, and this can be still achieved with dynamically toggling whether a character affects navmesh (so that it doesn’t update navmesh while moving). If you enable navmesh drawing while your character is moving you’ll see what I’m talking about.
Having said that we have something in the pipeline that will make it work both better and faster. It should be available in version 4.8.