How I should do vehicle system? (Motors, servos are client/server sided, network owner is client/server)

Hello guys. I’m making vehicle system, where player can build his own vehicle with given mesh and base parts and some special items, like servos, motors, jets… MY VEHICLES DON’T USE ANYTHING RELATED TO BUILT-IN VEHICLESEAT, they are JUST part with name “Seat”, and if you press “F” near it, character will be welded to it + some initial functions called.
But I want also to make it so special items WILL consume energy from battary when you use them.
And due to this requirements, I got question: How I need structure car system:

  1. Vehicle’s specials activated on client, and Vehicle’s network owner is client
  2. Vehicle’s specials activated on server, and Vehicle’s network owner is server
  3. Vehicle’s specials activated on server, and Vehicle’s network owner is client
    I know that setting network owner to client is dangerous, but If I set it to server, players with high ping can easilly run off-road or even crash into something.
4 Likes