Character goes insane after changing the position of the HumanoidRootPart

I don’t think you even have to use :SetPrimaryPartCFrame as the joints make it stay consistent when modifying the CFrame. For some reason, this doesn’t work when setting the position and gives odd behaviour.

Position:

workspace['7z99'].HumanoidRootPart.Position = Vector3.new(0,20,0)

Result:

CFrame:

workspace['7z99'].HumanoidRootPart.CFrame = CFrame.new(0,20,0)

Result:

Another thing, joints are more reliable than :SetPrimaryPointCFrame as that function can cause floating point errors. That bug is as old as time itself and it’s honestly really annoying.

2 Likes