What method should I use for Smooth Plane Movement?

Hey, this is my first time creating a Plane and I’m looking for some methods for movement.
I originally had TweenService to mind for it, however I feel like there’s a better way.

Also, alternative question, there will be 12 or so other planes flying, should movement be on the Server or Client?

Thanks in advanced!

Your main question:
One attempt might be to use a mix between VectorForce and BodyGyro.

Your alternate question:
You shouldn’t move planes on server side! That just makes players experience worse by creating delays and visual glitches. To let a client take over physical control you could utilize BasePart:SetNetworkOwner(player). If you take that approach remember to create the VectorForce, etc. on the server and THEN give the network ownership to that player, after that you will be able to change the Properties of those on the client and the server accepts the movement.

You should move planes on server side and have a replication for each client visually which follows the “Main plane” controlled by the server, if another client has control of the plane then the other clients will still experience choppiness from when the “owner client” has spikes/delay due to ISP, an example of how you would do this is have a local script which checks for every existing plane + new planes being added and creates a client sided plane that only exists for them and as @BillPlayzToday said use a VectorForce.

Moving them on the server makes player experience worse, because they will have a delay on their controls. The pain of rare visual stutters is smaller than having a permanent controls lag (we’re talking about a lot here, roblox has a min ping of 80-100ms).

Which is why if you read what i typed you have a client representation of every plane, this makes it smooth for every player in game regardless of their ping difference to the client with network ownership of the plane. And example of what I’m on about in a different context:

I don’t get what you want from them right now? Use a random TweenService module that “reduces ping” or move stuff on the server?

Hey, while using VectorForce, is there anyway to limit the speed with it?
As it seems to just keep gaining speed infinitely. As for BodyGyro, I think it’s removed, I can’t find it searching.
I can create it via Instance.new but worried it’ll just be fully removed soon and waste my time using it.


So Movement via ServerSide which gets replicated to every client? How would this work for each Player moving their own plane? Little bit confused there

airplane.rbxl (138.6 KB)
Hi, i saw you wanted help for smooth plane movement.
This game isn’t realistic at all, but it’s a small prototype i made a long time ago.

Hey thanks, been checking it out. The movement is a little weird on it, but regardless thank you very much!