Need Help With Launch Character

I am making a dash system in my 2d game, i used launch character node


it works when character is on ground normally but if the dash causes the player to drop of a ledge or just making him fall anywhere the distance player goes become 3,4 times more. I put a branch before “Do Once” to stop player dashing while jumping and falling but i cant stop them dashing into a non floor space. How can i reduce the distance that player goes on air while dashing?

I think what you’re referring to is the character ending up somewhere far away then intended when the player uses the dashing mechanic on an elevation, due to it keeping it’s velocity on air. You can simply fix it like this:

And there’s no need for the Do Once node :blush:

Hope this helps! :innocent:

1 Like

I was using that to prevent player to spam the ability.

Made it like you showed and it works but stopping the movement instantly looks kinda odd


i can leave it like this but if you have any idea to make it look better i would be glad to hear it

maybe like instead of stoping the movement after a delay but after a lets say 1 meter and speeding up the forward vector multiplier to a much higher value it can like teleport instead of dashing. But idk how to stop it after moving a specific distance

Have a look at the movement component. Characters in the walking mode have braking deceleration cranked up real high - that’s what makes them stop. Launching a character enters flying / jumping / falling mode (most likely) whose deceleration is set to 0 by default. I’d start playing with that value first.

1 Like