Moving the ai to a static mesh

Hi,

I am having the same problem as described in https://answers.unrealengine.com/que…tolerance.html. I am creating a real-time strategy game where the player places buildings that affect the navigation mesh. As such, I have the navigation mesh set to dynamic generating in the project settings. However, when an actor tries to approach one of these buildings in order to attack it, the move will fail. My assumption is that it is failing because the building is technically not on the navigation mesh, but how do I solve this properly?

I have already tried increasing the acceptance radius, but this doesn’t appear to do anything. I have additionally set the Move To node to project the goal location. Given its description I would assume this means that it will take the location of the actor and pick the closest point on the navigation mesh, but that also doesn’t seem to be happening.

Thanks!

A work around without having to mess with the navmesh settings would be to make the static mesh an actor and adding a component that won’t effect the nav mesh – like an arrow component.

Then have the arrow component in location that’s close to the static mesh but also in the navmesh. Instead of have the character move directly to the actor, have the character get the actor’s arrow component location and then move there.

I’m not sure, but I think acceptance radius only means at what distance the ai will stop moving, but it does NOT act as a “tolerance radius” around the target location for calculating the initial path.

Instead of AiMoveTo You could try MoveToActor
https://api.unrealengine.com/INT/Blu…tor/index.html
and set “allow partial path” to true, so it should try to calculate a path even if it can’t reach it completely, so it’ll still move as close as the nav mesh allows.

Hi,

Thanks for the insights! It seems that the problem was actually with the AI selecting a navmesh. I had the settings for Agent Radius and Agent Height wrong. After I had sufficiently reduced those, it started properly working again.