I have a game scenario where 2+ players can drive around inside a game arena and push around rigidbody boxes (RBB’s).
All RBB’s are Network.Instantiated from the server, and spawn correctly on the server and clients.
Each RBB has a NetworkRigidbody script attatched to it and a networkView that is looking at the NetworkRigidbody script with Reliable Delta Compressed set.
Each RBB also has a script that turns OFF the NetworkRigidbody script on the server version of RBB (based on networkView.isMine) and makes sure the NetworkRigidbody script is on on the client versions (clones).
Everyone still with me?
Ok, so this is the result…
On the server, I can drive into the RBB’s and they bounce around after impact and all clients reflect the movement and all is good!
On ALL client machines, the cars drive into the RBB’s and they can hardly even nudge the RBB’s like the RBB’s have a mass of 10000.
This is consistent on ALL clients (Mac or PC), no matter who is the server.
So…
To me it looks like the networkView sync is going one way only, and that any updates on the server is reflected, but any updates on the clients are kinda not happening because the server version of the RBB hasn’t moved and the clients are syncing with the server position/status.
So to me it’s looking like a one way synchronization.
So, how am I supposed to setup a box with a collider and rigidbody in my scene to be able to be pushed around by any player at any time and have it updated correctly for all players?