BasePart.Velocity property is capped at (16384, 16384, 16384) while using forces

When you apply any type of Force to a BasePart object (VectorForce, BodyForce, BodyThrust), which doesn’t have a max speed setting (like BodyVelocity), each axis on the Velocity property will always freeze at positive or negative 16384.

EDIT: After some further investigation with the help of @kingdom5, I have discovered that this issue only occurs on clients which do not have network ownership, or the server (if the network owner is a client).

After running the following code, you can tell that 16384 is not actually the part’s velocity on each axis:

local LastAltitude = workspace.Rocket.PrimaryPart.CFrame.Y
game:GetService('RunService').Heartbeat:Connect(function(Step)
	print(LastAltitude - workspace.Rocket.PrimaryPart.CFrame.Y) / Step)
	LastAltitude = workspace.Rocket.PrimaryPart.CFrame.Y
end)

Your output will be much higher than (16384, 16384, 16384)

This bug is very easy to reproduce

image

Just add a BodyForce to VectorForce to a part, with a huge force, and watch how the part’s velocity will always cap at 16384.

image

Repro file:
repro.rbxl (15.2 KB)

1 Like

This just seems to be how studio shows the value. Using the script below it will output the values.

local part = script.Parent
local cf = part.CFrame
while true do
	for i=1, 100 do
		print(part.Velocity)
		wait()
	end
	part.Velocity = Vector3.new()
	part.CFrame = cf
end

Studio does update the values but you need to reselect them, most of the time it does show this calue though.

I originally thought this was a Studio Bug, until I discovered printing the Velocity always results in ‘16384’ for me - both in studio and in game. What is the output of this code?

(bad quality)

1 Like

Interesting. I was doing mine on the client, so this could be a client-sided issue. I will see what the property is in server mode

Might be a Network Ownership issue?

1 Like

I’ve just tested this, everyone without Network Ownership gets 16384 (including the server)

Screenshot of it working with me as the network owner:
image

1 Like

It’s been over 3 months, the issue still persists, and I’ve heard nothing from staff. Will this limitation ever be lifted? It can’t be too complicated to change it to a value that can hold a greater number than 16384.

1 Like