This is going to be a very tough issue to describe.
Basically, I have a plane system. The plane uses a combination of remotes, local scripts, and the old BodyMovers to move. You hop in the plane, a localscript is parented to you, and then sends information on your mouse’s position, buttons you press, etc. to a remote in the plane, which replicates these onto the server.
Most of the planes are meant to transport only one person, which works fine, but when multiple passengers hop on, there are problems.
I brought my younger brother out to help me test, and the following screenshots will be feature him and me.
Here we are, at the runway. I will be spawning a plane, become the pilot, and he will be the passenger.
Moments before take-off, everything looks smooth on my end.
Here we are, flying. Or at least I am.
In this GIF, this is what my brother sees on his end. A ton of flickering, no movement of the plane, but he can see the plane’s orientation changing.. If he hops out of the plane, the plane disappears and then teleports over to me, and carries on as usual. Or, if I make a low pass over him, he and I get synched together and there’s no issue.
I am not sure why this issue happens. At first, I thought it was because I had the changes in the Gyro of the plane done on the local side rather than the server, but when I did that, the issue kept occurring. The only thing that make this issue happen less, was getting rid of setting the NetworkOwnership of the PilotSeat to the person in it. Even still, the issue occurs from time to time.
I’m not really sure why this is happening. I have ground vehicles in the game that don’t use BodyMovers and just use constraints to move around, and they use NetworkOwnership stuff, and they work absolutely fine with even 8 people in them. I’m not sure if this is because I am using BodyMovers instead of constraints or if there is something going on, but I am trying to switch to constrains, it’s just not going well, as you can see in my recent DevForum post about it.
Can someone help me out with this?