I’m trying to optimize a vehicle system which clients can use (posses) in my multiplayer game. Currently though the client moves said vehicle ( a cannon) around and each couple of microseconds an RPC is used from the client to the server to tell the server where the client moved said cannon (well rotated actually). This works fine, but is sending a massive amount of data over the network and is pretty much eating up all our bandwith. So i’m looking for a far more efficient way of doing this.
The problem is that on this particular kind of vehicle (cannon) I can’t simply set the rotation directly on the server and then replicate it back to the client, because aiming with the cannon needs to be really really responsive and smooth so the rotating needs to happen on the client and then somehow end up on the server after which it gets replicated down to all the other clients. Things is though it doesn’t need to be very accurate on the server, as the projectile is launched from the exact rotation the client has. The server purely receives the rotation for cosmetic purposes. I’ve tried lowering the RPC frequency down to half a second which is still a lot and this sadly makes it look really choppy and weird, so I need a better way, preferably without an RPC.
Anyone know what the best way to do this would be?