So i was just creating some systems which includes some seat parts for some client controlled systems.
I have a rotational velocity “clamp” in my main game and this issue arised, so i tried to recreate it in a fresh baseplate. And i did.
All i had to do was have a simple script which clamped the angular velocity every frame just as how i did in my main game.
And then when i playtested, the character was very funky.
The server seemed to want to gain network control over the character and overall it just broke the whole game.
One thing which made the issue bigger and even prompted it was having an anchored seat and sitting and exiting the seat with the angular velocity clamping running.
local plr = game:GetService("Players").LocalPlayer
local char = plr.Character or plr.CharacterAdded:Wait()
while task.wait() do
local root = char.PrimaryPart
root.AssemblyAngularVelocity = root.AssemblyAngularVelocity.Unit * math.min(11, root.AssemblyAngularVelocity.Magnitude)
end
After further testing it seems that setting the root.AssemblyAngularVelocity to Vector3.new(0, 0, 0) doesn’t produce the same result. I think it’s gotta do with how im setting it