Weld C1 Rotation Glitch

Hello, I’m trying to rotate Part1 in a Motor6D weld.

The Spinning Code

RS.Stepped:Connect(function(Delta)
	C1Rotation += 0.35

	Bey:WaitForChild('Weld').C1 = CFrame.Angles(0,C1Rotation,0)

end)

The Welding Code:

		local Weld = Instance.new('Motor6D')
		Weld.Parent = Bey
		Weld.Part0 = MainBodyPart
		Weld.Part1 = Object
		Weld.C0 = MainBodyPart.CFrame:Inverse() * Object.CFrame
		Weld.Name = 'Weld'

All parts are unanchored, massless and cancollide is false. MainBodyPart is the PrimaryPart. ConnectionOne is welded to another part named ConnectionTwo which further is welded to a part named ConnectionThree. From there the rest of the bodyparts are welded to ConnectionThree.

This is what happens when I run it:

I’ve tried lerping instead, but the same problem exists so I guess I’ve done something wrong while I’ve welded.

Any help is appreciated.

The part that rotates is the part that is furthest away from the root part.

Try checking the root part

https://developer.roblox.com/en-us/api-reference/function/BasePart/GetRootPart

And editing it using root priority giving it a higher number.

https://developer.roblox.com/en-us/api-reference/property/BasePart/RootPriority

Thanks man! It solved my problem immediately.