BodyGyro not rotating part

So i have this code i’m working on that uses BodyGyro to rotate a part, it’s being used for a plane

local RunService = game:GetService("RunService")

local seat = script.Parent
local plane = seat.Parent
local body = plane:WaitForChild("Body")

local accelleration = body:WaitForChild("Accelleration")
local sideRotation = body:WaitForChild("SideRotation")

local driving = false

accelleration.MaxForce = Vector3.new(math.huge(), math.huge(), math.huge())
sideRotation.MaxTorque = Vector3.new(math.huge(), math.huge(), math.huge())

seat.Changed:Connect(function(property)
	if seat.Occupant ~= nil then
		driving = true
	else
		driving = false
	end
end)

RunService.Stepped:Connect(function()
	if driving == true then
		sideRotation.CFrame = body.CFrame * CFrame.Angles(0, math.rad(1 * -seat.Steer), 0)
		
		local Direction = body.CFrame.LookVector
		local Velocity = 1 * Direction * seat.MaxSpeed
		accelleration.Velocity = Velocity
	end
end)

The problem is that the BodyGyro doesn’t rotate the part.

This is the structure of the model
image

No one of those parts is achored and the WeldConstraint only keeps the seat attached to the body.

These are the the properties of the BodyGyro

image

The MaxTorque is changed by the script and set to infinity. I’m stuck with this problem from a long time at now, i would really appreciate if you can help me understaing what’s the problem.

Make sure the part isn’t anchored, if you haven’t already.

1 Like

I already said it here. all of the parts are unachored