What would be the best way to make Controlled Gravity?

How would I go about making controlled gravity? I don’t mean freely walking on walls, like this.
image

I want a way to create “Gravity Zones” that allow players to fall “down” or “inwards” to a body (or part)

The only problem (at least for me) is that I don’t know how to make this. If anybody has any ideas, please let me know.

I would recommend checking out this Gravity Controller by egomoose

Is there any way I can make my own, or is this the only way?

You could make your own, but it would take a lot of time and math. That is a great resource that is already made and proven to work.

Oh, okay. A few questions before I use it, can you stay on a planet but not walk on top of walls, and can you make “Gravity Zones”, like I originally wanted?

After testing it, I think you could, but you may need to make a custom camera system as well. Just try testing the game Gravity Controller (The game listed in the gravity controller article.)

Resolved:

I am now using a script from the Roblox Wiki to detect when players enter the “Gravity Zone”. The script doesn’t do anything, but I am going to add code to it later.

Thanks for all the help!

I am now using a script from the Roblox Wiki to detect when players enter the “Gravity Zone”. The script doesn’t do anything, but I am going to add code to it later.

Thanks for all the help!

This is the code I am currently using: local GravityWell = script.Parent.Parent local GravityWellRadius = GravityWell.Size.x/2 local Players = game:service(“Players”) function OnTouch(Part) local Character = Part.Parent if Character:IsA(“Model”) then local Humanoid = Character:WaitForChild(“Humanoid”) if Humanoid and Humanoid:IsA(“Humanoid”) then – The player is not affected by gravity. Humanoid.PlatformStand = true elseif Humanoid and Humanoid:IsA(“Humanoid”) then – The player is affected by gravity. Humanoid.PlatformStand = false end end end GravityWell.Touched:connect(OnTouch) I am trying to make it so that when a player is in the “Gravity Zone”, their Humanoid.PlatformStand = true. However, when I run this script, it does nothing. I don’t understand why it doesn’t work. Can anybody help?

Also, I want to make it so that the “Gravity” only effects players, and not objects. Can anybody help me with that?

Thanks for all the help!

I’m not quite sure what you mean by “I want to make it so that the ‘Gravity’ only effects players, and not objects”.

The script will only affect players (and not other objects) by default, because only Humanoids have a PlatformStand property, and only players have Humanoids.

One thing that you’re doing wrong is your line if Humanoid and Humanoid:IsA(“Humanoid”) then .

You’re checking here if Humanoid is a Humanoid, which it is (because you just checked that Line 15).

Are you a bot?

This thing is very confusing.