Making a balloon fall at a constant speed

I am trying to make a game similar to Plane crazy, but I have found an issue. One of the items will be a balloon, which applies an upward force to the structure it is attached to. I want the balloon to make items fall at a constant speed like in the video I attached, rather than accelerate downwards, however, the VectorForce constraint just causes objects accelerate more slowly. Is there a way I can do this?

3 Likes

Note: I put this in scripting support as I assume it will need scripts

1 Like

I found a solution that might be suitable for your case:

VectorForce.Force = Vector3.new(
   0,
   script.Parent.Parent:GetMass() * workspace.Gravity * FloatMultiplier, -- in my testing FloatMultiplier is set as 1
   0
)

To get the necessary Y force to kind of slow down the fall is to multiply the mass of the assembly and the gravity, and then multiply it with a multiplier if needed

I have tried with even higher heights and it seem to maintain the same downwards velocity

I’ve just tried this and it appears to just hover in the air, stationary.
Setting it to anything higher or lower just causes the same slow acceleration.

2 Likes

not sure why this works but i forgot to mention that i use a while loop to constantly set the y force which seems to work?

while task.wait() do
	script.Parent.Force = Vector3.new(
		0,
		script.Parent.Parent:GetMass() * workspace.Gravity * 1,
		0
	)
end

Still just stays there :confused:
Could you send me a video of it working for you?

1 Like

sure,


as you can see the y downwards velocity stays the same

hmmm… strange
Could you send me a download to that place so I can see what is being done?

1 Like

sure, but not the rbxl file since that also contains my game dev environment, I’ll give you the rbxm tho;
balloonguy.rbxm (4.1 KB)
I’ve also tried to test in another place and it still works fine


(the print is from my debug plugin print)

strange, that works… i’ll need to figure it out

Ah, I think I know why it wasn’t working for me.

Using task.wait causes a slight delay in the execution of the code, allowing the balloon to build up a small amount of velocity before being held at a constant velocity. its kinda hard to explain but yeah

1 Like