I am currently working on a project of my game. I have been looking and searching for help about the AI Melee Attack Animation but I had found nothing helpful or workable for my Blueprint.
I am not making it complex at all, the AI is only going to play one animation montage that I had created meaning I do not want a behaviour tree. This animation montage does work, however, I do not know how to let the AI play the Animation Montage when he is near to the player.
In a more simple term, I basically want the Animation Montage to begin as soon as the Player as enter the Box Collision as known as Damage Range that I renamed.
Would it be possible for anyone to help my project, please?
I really need this urgent before next week.
Video I use to help me create the Damage: - YouTube
You will need to set up an Animation Blueprint.
If you do not know how these work, either look up a tutorial, or check out the one used for the default player mesh included with the engine.
Once you know how this works:
Create a Bool (and a matching bool in the Anim BP) called something like āAttackā
When the enemy overlaps your player (or however you wish to activate the attack) set the bool to true
In your Anim BP, create a state with the attack animation in it.
Going into this state should require the Attack bool to be true, coming out of it back into the main animation loop should be the bool being false.
In your attack animation, create a notify at the end of the animation (or the point you want it to end) called AttackEnd
In your AnimBP, right click and search for AttackEnd to get the notify event for it, and drag off a Set Attack boolean and make it set to false.
That should be it.
Doing this off of memory, so it might be a hair off.
Animation Blueprints are basically a must-use for animating your actors. Check out some tutorials on how to use them, it will save you a lot of hassle.
Basically, besides adding the boolean in the Event graph of the anim BP, you just need to add this Attack state like this to the existing Anim BP for the default mannequin
The āAttack Endā notify needs to be created within the attack animation. Open your attack animation, right click on the ānotifiesā bar towards the bottom (make sure you right click near the end frame of the animation) and hit New Notify (and name it Attack End or whatever you want). Then in your Anim BP, you can create the call to the notify like in the screenshot above.
Then just set up your character to set his attack bool to true when the button is pressed. Also throw in a check to make sure the bool isnāt already true, so the player canāt spam the button to continue the animation.
You can also use a notify in the animation to trigger damage, for example, if you are doing a punch, you can make a notify when the punch is in the middle of a swing, etc etc.
Oh, I remember seeing something similar this in the 3rdPersonBP tutorial when you are punching. I thought this only applies with the Player Character only.
So I am using their punching animation and already created the montage for it. I just did not know how to set it up for AIs attack their animation because I thought the AIs setup is different to the Players.
This was kinda solved, not 100% but in a way it did. I was only able to figure out for the animation to attack looping only, which still works if you are creating a game that focuses on the hands. I apologise for this confirmation to take long but I was really hoping for a reply from one of the issues I had encountered.
Many thanks to, palvand for creating a solution for it. It was not the exact thing I wanted because I still needed the character to stop looping after the player is out of the trigger box, but itās better than nothing. I am sure some of you out there will find a way to fix it.
I hope my question helps people out there who was looking into it. Please remember this is on the 4.13 version of Unreal Engine.
Hey palvand the problem now is the NPC only plays the animation once per āAttackā trigger, so he gets within range plays the animation and then stops until you move or shoot him again to trigger the attack. Any idea how I could fix that.