Conserving momentum in the air

Reference post: Conserving Momentum in the Air

If you haven’t noticed, characters in roblox all velocity very quickly while in the air. As mentioned in the post above, this isn’t ideal for games based around physics/movement. Here is a video which shows how this issue is affecting my game:

The post mentions you can use the humanoid state “Physics”, which isn’t an option in my case. My script uses humanoid states to detect if the character is in the air or not, which prevents them from during certain actions on the skateboard.

Here is how I’m currently pushing the player while on their board (please note all parts in the workspace are frictionless)

hrp.Velocity = hrp.CFrame.lookVector * SkateboardSpeed -- SkateboardSpeed = 25

Any help is appreciated.

Also note that in the video, I set the skateboard’s speed to 250 instead of 25 to make the issue easier to spot.

You can try this:

Yep definitely try out the new beta humanoid physics controller.

I used it to preserve momentum while jumping on a boat, so you land at the same spot.

That works perfectly! Thank you for the help. There is one issue though, the skateboard technically doesn’t have wheels and it’s just a frictionless part which means it can slide in any direction. Is there a way to use the controllers which makes the skateboard only slide forward?

Not exactly. What you can do is apply opposite force when the character’s velocity moves left or right. You can do this with ApplyImpulse.

2 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.