Body velocity reversed in weird ways

  1. What do you want to achieve?
    I’m trying to make a basic aircraft for testing and the body velocity seems to be reversed…
  2. What is the issue?
    The plane seems to fly straight but the controls are inverted in terms of physics,
  3. What solutions have you tried so far?
    I’ve tried looking it up but haven’t found a solution…

Overview: Basically it flies straight but goes the opposite direction of where its pointing, Example: you pitch up but the plane goes down.

Script:

local bodyVelocity = Instance.new("BodyVelocity")
bodyVelocity.P = 3000
bodyVelocity.Velocity = Vector3.new(0,0,0)
bodyVelocity.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
bodyVelocity.Parent = script.Parent
while wait() do
	local seat = script.Parent
	if script.Parent.Parent.Go.Value == false then
	print("no")
	end
	if script.Parent.Parent.Go.Value == true then
		bodyVelocity.Velocity = script.Parent.CFrame.LookVector * -50
		print(bodyVelocity.Velocity)
	end
end

Thanks,

–Luke

try to removing the minus sign like this
bodyVelocity.Velocity = script.Parent.CFrame.LookVector * 50

This should be work

I’ve tried that already, fixes it but the plane flies backwards.

Maybe try just putting a minus for some elements of it?
e.g.

bodyVelocity.Velocity = Vector3.new(
    script.Parent.CFrame.LookVector.X * -50,
    script.Parent.CFrame.LookVector.Y * 50, 
    script.Parent.CFrame.LookVector.Z * -50
)
1 Like