Some Help with some "jump issues"

hello guys i’m having some issues toward “jump” command and animation.

i was using the default "jump command blueprint like " prex x buttom jump, release the buttom stop jump, for the default unreal jump and some jump animations it works almost perfect however some specific animations like here for exemple:

the jump animation start with the character "flexing his legs like crouch before jump, however as soon as you click “to jump” he do that on air, the character already on the air in the moment you press jump, where it is supposed only to start to “jump” after he do the “leg flex” or in the middle of the animation not on the beginning then for cases like that where the character is not supposed to be on the air at the animation beginning and only after some frames passed.

the second problem is also at the end followin the same problem or even happening in the defaul animations but much less noticiable and reproduced is which you can "do a sort of “double jump” even if you didn’t make it, it’s seens which the character don’t need to really "touch the ground to be able to jump again, if you click jump buttom in the right timing you can “jump again while still on air” before the character touch the ground, in some cases or animations it is much more noticiable like in the case of the military animation you can literally keep jump forever in the air and really at high height diference from the ground, like literally one full leg, the defaul animation it’s more hard and it’s like few centimerters like 1 or 2 or in frames i would say 1 to 3 frames before it touch the ground, you are allowed to jump,

then any one which had noticed this have any way to fix it a way to make the character "only start to jump when it actually proper stop touch the ground, a proper check to the animation or capsule to make sure it only start to jump when the character start to leave the ground and only can jump back (if i’m not allowing double jump) if the character touched the ground or any other place if it’s still on the air it can’t really jump and even that based on the animation like a animation where the character is also flexing his legs when touch the ground to wait the animation finish before it can “jump again”.

basically a check to see if the character is actually not jumping or in the air before it can jump again because the default check is “when release the buttom” then you can keep pressing like crazy to make this “bug happens” the proper check would be:

press buttom, animation start to play, as soon the character leave the ground in the animation it start to jump, then you can only “call again a jump” after the character get back in the ground and finish it animation, then you can start to jump again, which the default jump don’t see to proper work.

I downloaded the asset you showed and played around with the anims. Using animation notifies in the start and end anims, I made the jump as you described. I set it up so when I hit the jump key I check my value bCanJump in my Char and it true I set it to false and I set the anim bp value I created called bStartJump to true which is used in the trasition rule from going to Idle/Run to StartJump in the animBP. I also change the blend settings duration to 0.05 here to prevent some bleding issues. In the Jump_start anim I put an Anim Notify right at the 7th frame which is when the player starts to leave the ground. I called it jump. This notify is called in the anim bp, gets the owner and casts to the charachter bp to call Jump. At the end of the Jump_Start anim, frame 15, I put another notify called JumpStartFinished which is called in the animBP and sets the bJumpStart to false. The transistion into the loop requires 2 checks. Is in air and time remaining ratio of the Jump Start Anim (<.2) If you dont understand that look at the trasition going from landing to idle for an example. I changed the Blend duration here as well to .1 for the same reason as earlier. Finally, in the jump end anim, I put a notify called Landed around fram 11. This notify, called in the anim bp, goes back to the char to set bCanJump to true. You can move this around to find the sweet spot for it. Requiring the char to stand straight up again to jump is slow and not fun. I also changed the values to transition from endJump to idle ratio to be <.2.

1 Like

thanks, really interesting, if not asking too much you could show what you did in the blueprints, while overal i could understand part of the logic would be good to see it in the bp to get the full understand ofcourse if it’s not a issue for you.

anyway again thanks for the replay.

1 Like