Download

Setting character to use specific Nav agent

Hi,

I’ve defined 2 Nav Agents in project navigation system settings (and both have auto-generated their associated navmesh bounds volumes in the game map). Both agents have exactly the same sizes (basically same character, different skills), but one can only step up to a height of 40, and the other can step up to a height of 100. If I understand the Navigation system correctly, it automatically chooses which nav agent to use for a character based on the characters size fitting the sizes defined for the nav agents.

So is there a way to hard code a character to use a specific nav agents navmesh? I’ve tried changing his “Character blueprint > Character Movement Component > Details > Nav Movement > NavAgent Step Height” to 50, but he still uses the default agent navmesh.

Any ideas would be great…

Hey, sorry to bump, but really need to find an answer to this… :()

Thanks,
Bruce

Any help would be great…

Thanks

Hey sorry to bump but did you ever find a way to use the Nav Agent Properties? If so could you let me know how you got it working?

Hi,

I’m actually trying to solve this issue, too. But I simply can’t figure out how to assign a specific Agent to a character.

I created a new “Default” type (Project Settings -> Navigation System -> Agents) but I just can’t figure out how to actually assign those settings to a specific character :frowning:

Is this even possible in BP?

Hi,

I’ve found a way to work around that, it’s not exactly setting the Nav Agent but it’s a way. In the Character Movement Component, you can use a node called “Set Nav Agent Props” where you can override the settings you need (Nav Agent Radius, Step Height, etc). This will force an update and will adjust the Nav Agent based on the settings you provide. I tried it out with 2 agents a big one with 88 half height and a small with 34. I’ve done the whole thing in BP.

Cheers

CharacterMovementComponent doesn’t have a public property NavAgentProps that I can set (it seems to be protected). How did you do that?

I found the NavAgentProps node, if I create a new blueprint which would inherit from MovementComponent, but that’s not an option unfortunately.

Hey,

Sorry for taking so long, I just noticed that there was a question. Here’s a photo on how to implement it, I call this function on “begin play”.

Hope this helps!

[ATTACH=JSON]{“data-align”:“none”,“data-size”:“full”,“data-tempid”:“temp_195003_1592039697704_93”,“title”:“NavAgentOverride.png”}[/ATTACH]

Hi, could you re-upload that image? Cheers!

Hey, I’m not the most active member huh. Lost the photo but I took a new one!

Hey, could you please post the photo, I think it got lost with the forum update :confused:

Use FNavAgentProperties& UCharacterMovement::GetNavAgentPropertiesRef()

It gives reference to nav agent properties.

In Pawn Class, GetCharacterMovement()->>GetNavAgentPropertiesRef().XXX = value;