AI moving through different height levels
I am currently making a game with procedural maps and I wish to include enemies. I made an AI that runs to an objective following this tutorial: https://docs.unrealengine.com/latest/INT/Engine/AI/BehaviorTrees/QuickStart/index.html
The problem is when the objective is on a different height level of the map, the AI can't reach it. How can I make the AI climb or jump down (just 1 block, so it has to find a suitable path) to reach his objective?
I attach three images.
asked Feb 07 '16 at 04:52 PM in Blueprint Scripting
there is an character movement option called Step Height, do you tried that?
answered Feb 10 '16 at 05:36 PM
If this issue is still relevant, you should be able to alter the Agent Max Slope and the Agent Max Step Height under the RecastNavMesh settings. Or the Nav Agent Step Height and Nav Walking Search Height Scale in your Pawns Movement Component.
The Nav Mesh zones are connected, it's just that the AI is being told that they cannot path there due to the Step Height being out of their range.
You could also use Nav Link's but doing that proceduraly would be a nightmare.
answered May 24 '17 at 08:32 PM
There is an idea to use your own calculations to determine the step and use the jump to reach the desired point.
/** Queue a pending launch with velocity LaunchVel. */ virtual void UCharacterMovementComponent::Launch(FVector const& LaunchVel);
answered Jun 10 '17 at 08:50 PM
Hi, an its easy fix actually: 2 options
1 most useful: deploy a basic parkour system, so your NPC spots where an obstacle in in their path to a target, and checks what the height of the obstacle is. then a climb animation is used via the parkour move logic, ie trigger to climb and or move capsue, on meeting a obstacle no more than x height. i use this. so you would set x height to bit more than one box.
But 2 Looking at the picture, to me its a scaling issue. a human cant easily walk up a slope with a box at waist height. The dimensions themselves look unwieldy. try resizing the player actor to larger and try and make a box as height as one knee joint, it might move more naturally. then you can set max slope and use use unreals own walking up down. Assuming you have a good animation linked to angle of walking.
answered Jul 05 '18 at 03:05 PM
Follow this question
Once you sign in you will be able to subscribe for any updates here