Thanks for the useful video! For those who are interested in making a smooth stop: rather than setting velocity to "0,0,0" to stop the character (9:20), you can do the following: - if your flying actor's velocity.length < distance to target: Set Fly Braking Decelration to something large like 1000 - Otherwise, set Fly Braking Decelration to 0 (the default setting). With that the flyer will decelerate and come to a stop at target location rather than floating by it.
So this video made me realize that 1) a nav mesh is not strictly necessary for AI to work, and 2) it seems like you can call pretty much anything from these BT tasks. This is opening up a world of possibilities for me and I'm pretty sure I've got a working idea now of how I can get an AI based turret to follow the player along a predefined track (a spline to be precise). I've even got some functions already made for dealing with spline based movement that I made for a different gameplay mechanic that could be used for this, so I think that'll be my next assignment.
Project-ready Flying AI asset on Epic Marketplace: www.unrealengine.com/marketplace/en-US/product/flying-ai Other marketplace content: - Endless Random World: www.unrealengine.com/marketplace/en-US/product/endless-procedural-worlds-with-level-streaming - Enemy Waves: www.unrealengine.com/marketplace/en-US/product/enemy-wave-spawner-multiplayer-supported
Cool video, thanks ! So we did not need to set the CharacterMovement to "flying" ? Also, did you drop a NavMesh in there ? I must have missed that part.
Interesting solution. One potential issue I see is that it finishes execution recurringly which could be tricky to use in a BT with other tasks. Wondering if you have a solution with a latent movement that would finish execute when the AI reaches or fails to reach the destination (this is how the normal AI MoveTo works)?
I get an error on 'get owner' when I compile for some reason. 2:03 "This blueprint (self) is not a Actor, therefore Target must have a connection." Using UE5
@@esotericgamedev Hey I just bought your marketplace Assets for this "Easy Flying AI Movement and Behaviors (Setup In Minutes)" Gonna mess around with it tomorrow. I'm trying to make some AI Boids that have flocking behaviour and obstacle avoidance but also react to the player, (like gun shot sound stimulus). If you have any videos on anything similar to that it'd be a great help :D Or if you can release a video making a boids flocking simulation using that asset pack within the next few days I'll paypal you £50 or something lmao. I have a university deadline to come up with something in unreal engine by 2nd May.
Can you create boat ai using this method. Assuming boat ai needs to have buoyancy and its static mesh needs to be a physic actor so that it can float on water.
So from what i understand.... It's impossible to make a flying IA using the pre-made "move to" function. So, we basically have to create our own... Ok !
im trying this with floating pawn movement component BUT.. no matter what i try i cant change the speed that the floating pawn moves. it moves but its slow.. any help guys would be great. thanks
Jacson that's an awesome tutorial. Could you also make some flashy game over screen like in super Mario 3D World, where a screen pops up in diagonal way.
Maybe check that all the cast to character nodes are replaced with cast to pawn nodes. Likewise with get player character, replace with get player pawn
Really great stuff here, thanks for making such rich content. I managed to get this working with an issue: the AI only wants to go wherever my player pawn starts and just stays there, doesn't seem to want to update its location to my player vector. Any thoughts? Cheers
@@esotericgamedev It has done that with a few of my troubleshooting work traveling to 000, but with 'correct' setups it will travel to my Player Start (not 000) or Play From Here locations and stop there.
Ok, I think I found the solution. In the FlyingAI Object, select the top level component (self). In the details section on the right, under Pawn, make sure the AI Controller Class is set as "AIController". And the Auto Possess AI is "Placed in World or Spawned". Good luck.
@@TheTombot yeah I had mine spawn as a child actor to another actor. Which means it got reparented and therefore the aicontroller became null. I made a spawner and having it spawn through that fixed it
I would recommend against that. I tried to make an AI turret purely in blueprints before I learned anything about Unreal's AI system or what behavior trees were. It worked ok unless some set of conditions somehow got set in a certain way that I didn't anticipate and the whole thing would break. A lot of what I was doing to make this work in blueprint are the kinds of branching conditional logic already taken care of by how the behavior tree works. Use the behavior trees, I can tell you from experience.
@@madmodder I can tell you from experience.... Behavior Trees are the easiest and worst way to make IA.... simple why: Crowd Manager, after 200 in the scene IA starts failling... that's why from my experience AAA... hate.... HATE ... to use Behaviour Trees, and there is another reason why: each BT uses a tick.... so you have houndreds of ticks per actor... in the other hand Blueprint IA has no limits... you can have 10,000, like some AAA do, real example: Jurassic World Evolution, BT are for amateur designers learning about UE, BTrees are the Metahuman's from last decade, they look easy to make, they work for amateur designers without time and resources, but not even Indie companies are actually using them... talking from experience, at least not now...
@@blakegt.7326 You mean like Alien Isolation, few of the Halo Games, hell The Division... just to name a few AAA games that use behavior trees. There have been lectures from AAA companies about BT's and their amazing uses in their games. Avalanche Studios for examples raves about them and their uses. From my experience in watching GDC's and other lectures about game development and following indie development, they very much ARE using behaviors trees.
Thanks for the useful video!
For those who are interested in making a smooth stop: rather than setting velocity to "0,0,0" to stop the character (9:20), you can do the following:
- if your flying actor's velocity.length < distance to target: Set Fly Braking Decelration to something large like 1000
- Otherwise, set Fly Braking Decelration to 0 (the default setting).
With that the flyer will decelerate and come to a stop at target location rather than floating by it.
So this video made me realize that 1) a nav mesh is not strictly necessary for AI to work, and 2) it seems like you can call pretty much anything from these BT tasks. This is opening up a world of possibilities for me and I'm pretty sure I've got a working idea now of how I can get an AI based turret to follow the player along a predefined track (a spline to be precise). I've even got some functions already made for dealing with spline based movement that I made for a different gameplay mechanic that could be used for this, so I think that'll be my next assignment.
Awesome 😄
lifesaver omg thank you
Ive been looking for this for so long. Thank you good sir.
My pleasure
thanks man, i'll check out that behavior tree video you made also. thanks for sharing info!
My pleasure
Thank you very much!! That was amazing!!
Project-ready Flying AI asset on Epic Marketplace: www.unrealengine.com/marketplace/en-US/product/flying-ai
Other marketplace content:
- Endless Random World: www.unrealengine.com/marketplace/en-US/product/endless-procedural-worlds-with-level-streaming
- Enemy Waves: www.unrealengine.com/marketplace/en-US/product/enemy-wave-spawner-multiplayer-supported
That's my favorite type of tutorial, Quick and useful. More like this content 👍👍
Cool video, thanks ! So we did not need to set the CharacterMovement to "flying" ? Also, did you drop a NavMesh in there ? I must have missed that part.
@@WrathOfAl no need for nav mesh. Movement mode flying works well too
@@esotericgamedev yeah thats right, forgot that NavMesh does not support 3D space yet, thanks mate !
Interesting solution. One potential issue I see is that it finishes execution recurringly which could be tricky to use in a BT with other tasks. Wondering if you have a solution with a latent movement that would finish execute when the AI reaches or fails to reach the destination (this is how the normal AI MoveTo works)?
Good video. Thanks!!
My pleasure
Hey I know this is very old video, my object stutters & jitters when I become stationary but when I’m moving it follows me fluidly, any ideas?
@@MaZeHeptiK maybe try playing with the target location tolerance - it might be starting and stopping and overshooting
it looks like you can't add a vector in unreal 5. Looking for the step at 7:07
They changed the node
@@esotericgamedev yea do you have any idea of what that node would be?
@@austinc2997 I used a multiply node and just set all 3 axis
@@projectzombiesurvival9405 thanks
I get an error on 'get owner' when I compile for some reason. 2:03
"This blueprint (self) is not a Actor, therefore Target must have a connection."
Using UE5
Probably wrong get owner node. There is a different one for actors versus for components
@@esotericgamedev Hey I just bought your marketplace Assets for this
"Easy Flying AI Movement and Behaviors (Setup In Minutes)"
Gonna mess around with it tomorrow. I'm trying to make some AI Boids that have flocking behaviour and obstacle avoidance but also react to the player, (like gun shot sound stimulus).
If you have any videos on anything similar to that it'd be a great help :D
Or if you can release a video making a boids flocking simulation using that asset pack within the next few days I'll paypal you £50 or something lmao. I have a university deadline to come up with something in unreal engine by 2nd May.
Can you create boat ai using this method. Assuming boat ai needs to have buoyancy and its static mesh needs to be a physic actor so that it can float on water.
No but I did a flying AI using physics in my AI made easy series. Might be more like what you’re looking for
So from what i understand.... It's impossible to make a flying IA using the pre-made "move to" function.
So, we basically have to create our own... Ok !
That’s correct
im trying this with floating pawn movement component BUT.. no matter what i try i cant change the speed that the floating pawn moves. it moves but its slow..
any help guys would be great. thanks
Let's Gooooo!
I'm in a dilemma, how do I get off the ground?
Jacson that's an awesome tutorial. Could you also make some flashy game over screen like in super Mario 3D World, where a screen pops up in diagonal way.
it would be nice to have 3D nav-mesh volume thus we can use IA move to - _ -
agreed lol
@@esotericgamedev This would explode the resources on the pc :)
So this is working without a nav mesh right?
Yep
Does it need to have simulate physics enabled? (UE5)
No, in previous tutorials I've done it did but not this one
My controlled character is a flying pawn. How would i get the AI to follow because right now he just falls to elevated height?
Maybe check that all the cast to character nodes are replaced with cast to pawn nodes. Likewise with get player character, replace with get player pawn
only problem is i cant get the ai to face the player character as it chases it
Check out my AI made easy series Flying AI section of you like
Use find look at rotation with set rotation.
Really great stuff here, thanks for making such rich content. I managed to get this working with an issue: the AI only wants to go wherever my player pawn starts and just stays there, doesn't seem to want to update its location to my player vector. Any thoughts? Cheers
The target vector probably isn’t being set and the AI is moving to 000
@@esotericgamedev It has done that with a few of my troubleshooting work traveling to 000, but with 'correct' setups it will travel to my Player Start (not 000) or Play From Here locations and stop there.
I've got a null reference for the AI Controller?
same :(
It seems the Self works, but then there is no AIController component on Self.
Ok, I think I found the solution. In the FlyingAI Object, select the top level component (self). In the details section on the right, under Pawn, make sure the AI Controller Class is set as "AIController". And the Auto Possess AI is "Placed in World or Spawned". Good luck.
@@TheTombot yeah I had mine spawn as a child actor to another actor. Which means it got reparented and therefore the aicontroller became null. I made a spawner and having it spawn through that fixed it
Can you do this with a pawn with the floating pawn movement component?
I did. Do all same but have FloatingPawnMovement in your Pawn's BP.
Nice ! But how do you make it move up and down
it does
How about clicking faster, I almost got half of the video...?
Think faster
Lol
I’ve got another course called AI Made Easy where I do flying AI slower and in more depth. It’s a multi part series. Maybe that would be better
@@esotericgamedev 😂😂😂
how does this differ from your other flying ai tutorials?
shorter and not as detailed
@@esotericgamedev better late than never lol, I've already made this into a pretty sweet enemy type. big up.
@@svenrawandreloaded hahahah yeah sometimes I completely miss comments :/ and that's awesome 😎
AND.... how to make Flying IA 100% Blueprint Based? no Behavior Trees.
Why
I would recommend against that. I tried to make an AI turret purely in blueprints before I learned anything about Unreal's AI system or what behavior trees were. It worked ok unless some set of conditions somehow got set in a certain way that I didn't anticipate and the whole thing would break. A lot of what I was doing to make this work in blueprint are the kinds of branching conditional logic already taken care of by how the behavior tree works. Use the behavior trees, I can tell you from experience.
@@madmodder I can tell you from experience.... Behavior Trees are the easiest and worst way to make IA.... simple why: Crowd Manager, after 200 in the scene IA starts failling... that's why from my experience AAA... hate.... HATE ... to use Behaviour Trees, and there is another reason why: each BT uses a tick.... so you have houndreds of ticks per actor... in the other hand Blueprint IA has no limits... you can have 10,000, like some AAA do, real example: Jurassic World Evolution, BT are for amateur designers learning about UE, BTrees are the Metahuman's from last decade, they look easy to make, they work for amateur designers without time and resources, but not even Indie companies are actually using them... talking from experience, at least not now...
@@blakegt.7326 Welp, seems like you're the expert so why don't you teach us a better way to do it?
@@blakegt.7326 You mean like Alien Isolation, few of the Halo Games, hell The Division... just to name a few AAA games that use behavior trees. There have been lectures from AAA companies about BT's and their amazing uses in their games. Avalanche Studios for examples raves about them and their uses. From my experience in watching GDC's and other lectures about game development and following indie development, they very much ARE using behaviors trees.
Lmao the intro is so funny.
Lol 😅
0:06 hehehehehhehehe
Dude! Take your face off the video!!!
I disagree