How do I code a plane or helicopter from scratch?

I’ve ‘made’ planes and helicopters in the past through heavily editing older systems, and adding onto them. I’ve never really made these systems from the ground up, and as a result, they can be janky, and when I try to make them from the ground up, I run into a lot of issues I don’t understand.

When trying to make a plane, I’ve had difficulty trying to determine if it’s best to run general plane movements through the client or server; I know running it through the client is best for fluidity, but I’ve had issues with a plane system a developer of mine made that use this method. When it was destroyed server-side by another player, this didn’t register on the pilot’s client and they continue to fly around.
I’ve made them server-sided, but the movement was NOT as fluid, which I know relates to the look vector of a BodyGyro Cframe in its parent part.
In both, I’ve had issues trying to check for changes in the player’s movement (I would have this done via checking the player’s mouse movements); for example, if I wanted to run a loop to constantly check it, it would crash my Studio. The system built by one of my developers did not have this issue, and it used the same thing. Having it run by events (Mouse.Moved:Connect) yielded issues with fluidity, such as when the plane was pointed at an angle, the plane would continue to fly in a straight line. This really screwed up the plane banking system I had that would angle the plane along the x-axis depending on your mouse, which was really cool…

For helicopters, I have dreamed about making a system like one seen in this game: 🚀 Starship Shooters - Roblox, where using the basic player controls A) makes it cross-platform friendly and B) has the nice helicopter banking to it.

Obviously, I can use kits or hire someone but I’m tired of relying on external sources for these things when my games are heavily reliant on aerial vehicles. I want to figure out how to do it myself!

id recommend looking into body movers and alligners.
they use roblox physics so u can basically move a model. use alligners though so it doesnt flip out in the x/z axis though and so that u can at least have it sturdier in the x/z axis theres really a lot to them so you should just look at youtube videos on them or the documentation

I’m familiar with them. I’m struggling on how to manipulate them with user input from mouse movements though.

you should post topics on those then in scripting support (also i played your game when i was younger!)

1 Like