Part velocity bug

normal orientation - Vector3.new(0, 0, 0)
https://gyazo.com/7e87b174eeeace2d8835b94db99b8298

different orientation - Vector3.new(0, -54.42, 0)
https://gyazo.com/3b58d931b84b5dc068eaddb504759041

why doesnt the velocity go where the part is facing and it goes to the other direction instead of going forward and brings the player to the side

Well which way do you have the force pointing when you change the velocity? In other words how are you aiming the Part’s Velocity?

Might help if you post your code, we can’t fix what you don’t explain.

Velocity is relative to the world, not to the part. You should be setting the velocity while taking into the account the orientation of the part

its not a code its a part velocity

how do i do that without it glitching

Maybe a BodyVelocity is what you are looking for?

You must have code in there to make the avatar do what’s going on in the video.
As indicated in the BasePart.Velocity link I put up and by @heII_ish, if you put a Velocity in a Part it doesn’t care which way it faces because Velocity works on the X,Y,Z axes of the world, not the X,Y,Z axes of the Part.
I think you may be looking at BodyThrust:

Velocity is relative to the origin, 0,0,0. It doesn’t account for the rotation of the specific part but 0,0,0. If you want the velocity to be where the part is facing, you can simple use CFrame.LookVector and multiply it by a certain number which will act as the “speed” of the velocity.

Demonstration:

workspace.Part.Velocity = workspace.Part.CFrame.LookVector * 45