Hi guys, I wanted to create a Dash ability to my AI character but seems the Launch character node does not work for AI characters. I tried two methods in these posts but they all cause problems to my behavior tree. If I use the stop brain logic method, in the behavior tree, the current node will be stuck inside the dash task leaf. If I use the falling movement mode method, it does not move my character. I’m using UE 4.13.2
Get brain component - stop logic - Launch - restart logic:
[Launch Character not working properly - Character & Animation - Unreal Engine Forums]
Change movement methods to falling:
My logic is: AI sees player - AI check the distance with the player - if <600 - AI dash to player
this is the dash task, I have both method nodes there, but they dont work:
this is my behavior tree:
this is when I set back the brain or the movement mode, in Animation Notifier of my dash animation:
Is there any way to work around this? I can use lerp+setlocation but that would go through wall…Thank you guys!
something like this: - YouTube
Use the movement speed for max walk speed and temporarily set it to a higher value for the time of the dashing and then set it back to normal afterwards. That is how the demo video is doing it.
In the image it is setup for the player character but the same can be used with AI you just have to call it from your dash function.
Thank you for the reply! Somehow it’s not working for me. I did this in my dash function, but nothing happened. Maybe it’s different in player character and the AI, like the launch character node.
This is in my Dash function.
How are you setting Hero Char variable? and is it a direct reference to the AI character? Since I posted my answer I tested it with AI directly in the AI character BP so it should work from the BT, another option is to set it up in the AI characterBP and use a custom event and call that event from the BT.
I’m setting the Hero Char by this (this is inside the leaf node “dash” in BT):
I will also try this with a custom event to see what went wrong. Thank you for the reply!
During your testing you may want to increase the delay amount and add a print string so that you can better verify that it is firing.
I still cant achieve the effect in your video…Maybe I did something wrong somewhere else. However, I found this post that does the exact thing I wanted for me:
This method is working for me, but I think I will keep trying your method later to figure out what I did wrong.
Anyway, thanks for the help!