The problem that I’m facing is that the AngularVelocity that I’m using to spin the beyblade interferes with the tilt, and the tilt system also interferes with the AngularVelocity.
The problem isn’t that the X and Z values are wrong, rather that the AngularVelocity which I’m using to spin the Beyblade interferes with this line of code.
You can’t expect Roblox physics constraints to work well when paired with scripted CFrame changes on the same part.
The solution here is to either figure out a way to make the tilt occur using constraints, or to make the spin occur using code. They should work with the same “forces,” you could call them; code or constraints.
I don’t know what the tilting motion is supposed to look like. I’m also not that familiar with all the different constraint motions. Use gyazo to record a gif of the object tilting without any scripted spin, and link it here.