I have 3 types of Ai: Non-parkour, Parkour, Big sized.
I want the Non-parkour and parkour ai to be a bit similar but want the non-parkour ones to use only particular Nav-links.
Also I’d like to have a Navmesh where the Big-sized Ai doesnt try to go through narrow pasasge.
.
I did try to add agents in “supported agents” in the project settings but there is no option to specify the agent in the character actor Bp
I doesn’t test this yet.
Use NavigationModifierVolumes to assign AreaClass to Navigation Mesh and Use NavaigationQueryFilter to selectively choose AreaClass.
NavaigationQueryFilter can be assigned to agent.
NavigationModifierVolumes need to be placed in LevelEditor.
The AreaClass can modify the cost of NavigationMesh or completely block it.
The NavigationQueryFilter can exclude certains AreaClass.
Aha!
I bumped into the same issue yesterday.
There is no flag to specify the agent type, which is pretty strange, so when I started debugging the code I noticed that the agent type is detected based on the approximated Nav Movement settings in the Character Movement Component.
So, you need to go to the pawn or character configuration, select that component and check the options Nav Movement where you have Nav Agent Radius, Nav Agent Height, etc…
As you see there is a checkbox called Update Nav Agent with Owners Collision. I recommend to uncheck this, since that will update your properties with the Capsule Component configuration. I personally recommend to detach the capsule component configuration from the AI Navigation data.
So, these options needs to match as much as possible the options configured in Project Settings → Navigation System → Supported Agents: and open the options of the agent you want to assign.
If the properties in your pawn are the same that in your Supported Agent, then the pawn will make use of that. It is a pretty bizarre way of doing it, and the only reason I can think of is legacy code and try to not break compatibility with people that has been doing this forever.
Cheers!
I personally Use GameplayTags to control these type of things.
How ? Please tell us deeply