Hello, I’m having a small issue with animations and not retriggering them. Basically, take a jump animation. If I press the jump button again at exactly the same time as I land it will jump again but it will start the animation from where the previous animation was ending, which happens to be the end of the animation. The same thing happens for my sword attack also. If I click to attack right at the end of the animation of another attack, it pretty much holds that final frame rather than starting a second animation. Everything works like normal if I just wait that split second longer to let the animation finish. Has anyone come across this?
Hey @Du57mi73!
So for your attacks, do you have an “IsAttacking?” Bool on your character’s BP (not animBP)? You definitely want to call on that for your animations- and tell your character to NOT allow an attack until the animation finishes and you get “IsAttacking?” back to false. That way you can’t double up.
For the jumping it’s something called “Distance matching.” Basically you tell your character to start the landing sequence before actually hitting the ground by using a raycast downwards. It’s also used for beginning/stopping run animations, and turning the character in a convincing manner.
These issues seem worse than they are when they’re actually very similar to the original ThirdPersonCharacter. The jump animations on that are a bit more sophisticated to give a better illusion- yours are functioning the same way, the TPC also has a falling animation, not just one for in the air, that’s why it looks different.
Thank you for your response.
I use the same bool to trigger the animation as I do to check if it’s already attacking. Turning off the Bool is the very last thing in the sequence.
I will say, I did just add this “CanAttack?” type of check. Before I added it, I was able to reproduce the main issue I was having but I could do it while in the middle of the attack. With the check in place, It only happens if I repeat the command exactly at the end of the previous one.
Briefly explaining the video, I attack normally twice by pressing the attack button (Slashing Animation) with an appropriate amount of time between each press. Then, I press attack again and right as the animation stops I hit it again. This triggers a second activation (as you can tell from the grunt sounds), it adds time to the animation play timer, but doesn’t actually restart the animation. I reiterate this in the video by repeating the issue. After that I accidently didnt a no motion jump which has no relevance to the conversation since the animation doesnt really have sequence. Next I show the same issue I have with the attack animation but how it occurs with Jumping. The first leap is normal, but each consecutive leap is just the very last few frames of the first jump animation, again as if time is being added to the animation timer, but the animation doesnt restart. When I say “adds time to the animation timer”, I am only stating that hypothetically. I don’t know what its actually doing. That’s why I need help.
Ah, I get you. Try going into the state machine, and selecting the animation, then in the details check the looping box. Give that a go and see if that fixes it!
It should still exit the animation at the appropriate time- you can also try moving the animnotify for allowing new attacks to happen a little earlier or later. Animation is a lot of very small adjustments like that- you want to make sure you give ample frames for something to happen, as the final one is often skipped.
I have set the looping on those animations and it worked. As you mentioned, I still need to work on the timing. It starts back at a weird position. I really appreciate it! Thank you.
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.