I can't seem to add the correct amount of velocity to my character

Hello, so I’ve been trying to add velocity directly to my character but I’ve been running into trouble with adding small amounts of velocity. Specifically look at this example:

It seems that if I add a vector over approximately 11.7 units in length then the character will start moving. However, if I were to add a vector of length 10 then the character wouldn’t move at all.

I have a feeling that this has something to do with the ground friction of the character, but the weird part is that there is no smooth curve of movement speed choices. What I mean is that if I add a vector of 11.6 to velocity each frame the character doesn’t move at all, but if I add a vector of length 11.7 then the character suddenly moves quickly (printing out the character velocity length reports an approx. speed of 84!). It’s like a weird binary switch between either move at a velocity of 84 or don’t move at all.

I need to add a force that is between those two options, so I need to know how to properly add velocity to the character so that I can move it at a very slow (almost zero) speed.

Thanks!

Not really, just tweaked a couple variables like max walk speed.

Have you done anything to change the character movement component?

did you tried to move your player using the add movement input?

Yes add movement input works but I want to control the exact amount of force I am adding, additionally I don’t want to be limited by the range of values you are stuck with when using add movement input (i.e. you can’t set a scale value over 1).

well you can trick and add a multiplicator to the value. :slight_smile: it s just a float

I figured out that my problem was that the character movement component has a braking deceleration value that is applied only when the player is not applying movement input. When you are moving the character with the add movement input node (no matter what speed) then the braking deceleration is not applied. However, as soon as the player is not inputting any movement the braking deceleration is applied.

This means that while I was moving my character (by directly adding to the velocity) I had to overcome the braking deceleration before the character could move. If you have this problem then I suggest setting braking deceleration to zero (what I did in this case). If that is not acceptable then you should temporarily zero out braking deceleration, or perhaps spoof that there was player movement input somehow so that the braking deceleration is not applied!

Thanks for everybody who helped me out!