How to calculate force required to lift player?

Hello, everyone.

How do I calculate how much force is required to lift a player?
My player is currently massless as a whole. I realized that if I have vector force Y value on 2000, it’ll have low gravity effects. If I have it on 20000, it’ll fly up like crazy.

But how do I determine that edge number, where the force is just enough to make my player go up based on its weight, or just enough to make it come back to the ground?

Sincerely,
-coolguyweir

2 Likes

Use Part.AssemblyMass and apply the Force = Mass * Acceleration formula

local Mass = Part.AssemblyMass
local Acceleration = 100 --Accelerate by 100 studs
local Force = Mass * Acceleration

Part:ApplyImpulse(Part.CFrame.LookVector * Force)

Also, try messing around with the Friction of the Part
image

I want to use vector force as I want to make a glider.
But would this work as well?

I’m pretty sure this works with any Instance that involves Velocity.
(Youll have to change up the parameters a bit to make it do what you want but this is the core equation to stick to)

I heard applyimpulse isn’t smooth though… And it has to do with network ownership.

If you’re worried about Ownership you could use :GetMass() on the Part instead, to see if that has a different result.

Would I apply impulse on a loop?

No, you can apply constant force by using a BodyMover or Velocities like LineForce VectorForce or LinearVelocity

ApplyImpulse is to just apply force on an object once, emulating throwing for example.

1 Like

I’m making glider so I’d say applyimpulse doesn’t work.

But that comes back to my question.
For vector forces, when y is 2000, the character simulates low gravity. when y is 20000, character flies up and never lands again.

But how would I know that number between 2000 and 20000 where the character is near balanced? Like, a little below the number will allow the character to still land, and a little above will allow the player to fly up forever?

Some movers has a Property called Force if you dont want to do the complicated math required to pull something like that off with a generic force

VectorForce has a Force property which tells it how hard it should push said part in a specified direction, you can tween the force down to weaken it, which emulates the part losing velocity.

VectorForce

Theoretically then I can still use f=ma, and all the other physics stuff, and assume that vector force’s “force” is the same as the f=ma force?

Force is the F part of the equation, just get the Gravity of the workspace and multiply it by the mass like workspace.Gravity * Part:GetMass()

(From there you can add a *.1 to weaken it, so *.5 would make it so the vectorforce applies half of the force required to lift the Part)

1 Like

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