Character is bouncing when moving on inclines?

Hey all, I have a very strange problem. My character is bouncing when moving downwards on an incline. When the character moves up on an incline it works perfectly fine. I tried playing with the gravity settings but there are two issues; First, when I bump of the gravity, the character still bounces… The bouncing is just shorter and faster. The second issue with increasing gravity is that the character can no longer jump off of ramps and such. I basically want my character to always be “stuck” to the ground, except for when it goes over a ramp and there is nothing under it, then it can fly in the air. Any suggestions? See video below for my issue. Thanks!

If I remember correctly, you’re using a character blueprint for this, meaning you have an inherited character movement component. Also, if I remember correctly, you have a very specific movement method implemented - one that the component may not understand or expect.

Were you to move the whole thing with either…


…this issue should not manifest. The movement component is actually very keen on keeping you glued to the ground at all times and will correctly detect floor angles and ledges. This allows you to manually jump up, and walk off ledges.

If you run the 3rd person template, you’ll see how the character behaves when climbing and walking down steep includes.

You may need to take a step back and rejiggle your base movement logic. Do tell if I’m wrong and whether you are actually using the above-mentioned nodes with directional vectors.

Thank you, I am currently not using either of the movement methods that you posted (See below for my movement logic). The reason why I’m using the method below is because I want my character to move infinitely forward without stopping. You then have the ability to move left, right, forward, backward with 90 degree turns. Maybe your method would be easy to implement in a similar way?

It could be as simple / crude as this:

You wouldn’t then need to worry about tracing ahead or surface normals. Unless there’s a specific behaviour required when you hit the ramp, ofc. The above produces this with the default character:

Thank you, this is a partial solution for me. I’m getting almost like an ice skating effect where there is no longer a 90 degree turn, it is rounded. I’m assuming this is because the character is moving forward and the velocity isnt being stopped when I begin to turn left or right, resulting in a curved turning path?

It’s because you were not taking advantage of the movement component before. It does a lot of interpolation since it’s designed to move a biped in a somewhat natural fashion. Now you have access to all this:

Start by cranking up acceleration. There’s more stuff you can fiddle with.

Technically speaking, I’d use a Pawn + Floating Pawn Movement for this rather than a character; but you may find a way to utilise some of the features that Character Movement component comes with.

Thanks again for all of your help. I’ll start digging into this more!