How can I make the player slow to a stop?

Normally, when the player stops moving by, for example, letting go of the W key they almost instantly stop all momentum, which I do not want as it give unrealistic movement and just doesn’t feel right.

What I want is for players to slowly ease to a stop, similar to how Source Engine games (like Half-Life 2) slows the player down once they let go of a movement key.

2 Likes

I can give you an idea of what you can do, modifying the movement of the player detects if he stopped and with a tweenservice you make a transition with the walkspeed to 0 depending on the seconds.

TweenService
Humanoid

You should try modifying the ControlModule for the character to gradually increase / decrease the MoveDirection of the humanoid, or make your own ControlModule all together.

1 Like

You should make a custom movement system with velocity Instances.
and I would recommend you making it with LinearVelocity.

And to make this, you should make player doesn’t get controlled by coreModule/scripts.
and then make a linear velocity inside HumanoidRootPart, and change Force of linearVelocity when Humanoid’s MoveDirection property changes.

And then you can write accelerate/deaccelerate code yourself.

1 Like