Sustained AddMovementInput

Some background real quick: My character can interact with a ladder. When overlapping, the character can climb the ladder. The ladder works perfectly fine the first time. The character can climb up and down with no issues. However, when the player leaves the ladder, the next time they try to climb it they with continuously float upwards until they are off the ladder again (shown in video). Now the strange part is that if you jump in between two different climbs (first display in video), they both function normally. I’ll attach a video with the AxisValue printing to show when I am pressing W or S.

[Video][1]

Heres an absurd amount of my code. Thanks in advance for the help!

Ok 2 things. Where do you set that “GetOffBot” because if that doesnt go to true, then you never set the movement mode back to walking, and your floating makes me suspect your still flying. Also, I would think the if axis value < 0 should become <= 0. Since simply letting go of the thumbstick should stop you climbing.

The reason Jump would fix you is the jump will switch you movement system to falling and therefore clearing the flying flag.

So I have figured out that the issue lies with the canClimb boolean. For whatever reason if the player lands on the ground while still in the ladder’s overlap the canClimb is set to false. I made the hitbox slightly larger and now the glitch isn’t happening. It’s a solution, but to a problem that I still don’t fully understand.