Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
✓ ANSWER ACCEPTED

Jump Height and Gravity

I am not asking anyone to scirpt for me, I just want to know if there is a way to make someone's jump go higher, or less gravity ingame via a shop. Do you have to add your own script to the character or change the existing one?

3 comments

0

connor ._., I thought you were an advanced programmer

0

this was four years ago

0

True dat

1 answer

✓ Accepted answer

[ I'm on mobile, so sorry for any errors I have ]

You can just use a BodyForce object to help you counter the force of gravity.

BodyForce applies a constant force on an object. You probably don't know what force is, so I'll explain the basics.

Force is the acceleration multiplied by the mass of an object. The force of gravity then is the gravitational acceleration constant multiplied by the mass of the part.

On ROBLOX, the gravitational constant is equal to 196.2. You can get the mass of a part by using the method GetMass. But, keep in mind that gravity pulls an object downwards. This means we will need a negative sign. So, assuming the variable Part refers to your target Part...

ForceOfGravity = -196.2 * Part:GetMass() -- acceleration multiplied by mass

So how can you use this to your advantage?

If you know the force of gravity, you know the force you need to counteract it.

To completely counter the force of gravity, just insert a BodyForce with the Y component of the force property to the negative of the force of gravity. This will cancel it out because the net force is the sum of all of the forces, so ForceOfGravity + (-ForceOfGravity) = 0.

Instance.new("BodyForce", Part).force = Vector3.new(0, -ForceOfGravity, 0)

But that counteracts gravity for a part. I'm assuming you want to counteract gravity for a player. All you have to figure out is the total mass of the character and recalculate the force of gravity like you did before. Assuming character is a reference to a player's character...

TotalMass = 0
for _, part in pairs(character:GetChildren())
     if part:IsA("Part") then
          TotalMass = TotalMass + part:GetMass()
     end
end

ForceOfGravity = -196.2 * TotalMass

Instance.new("BodyForce", character.Torso).force = Vector3.new(0, -ForceOfGravity, 0)

This discussion is preserved as it was. New answers, comments, and votes are closed.