LinearVelocity not moving in the correct direction

I’m attempting to make a thruster which moves multiple weldconstrained parts as a spaceship. The code simply enables and disables a LinearVelocity inside the thruster part, which is based on an attachment in the part. However, I noticed that the spaceship is sometimes moving in the wrong direction with the LinearVelocity, based on another static part and the particle trail. How can I fix this? I’m willing to switch to another velocity type if necessary but I need it to be matching the direction of the thruster because the spaceship can be turned.

Edit: Forgot to mention but each part of the spaceship has a 0,0,0 BodyVelocity to make it float, and the core has an AlignOrientation to keep it up.

Video showing the issue:

BodyVelocity is deprecated

Obviously it can still be used but try switching everything to LinearVelocity since it’s more up to date.