Aaah wonderful! Thanks.
I was confused with some terminology.
Magic stuff, this networking.
I was surprised to see that Network.Instantiate does in fact does something similair to a “buffered NPC” call.
I did instantiate some spheres when pressing the space bar, and another client who logged on later, was perfectly in sync with the level (which I did not expect).
info : NetworkMessageInfo must come last in the receiver. You don’t need to put it into the networkView.RPC. It will just be used if it’s in the function or ignored if it’s not.
My NetworkMessageInfo.m_Sender fields always have index 0, even though I have 2 clients and a server sending to each other. Create an RPC function with NetworkMessageInfo as the last parameter.
Repro steps:
compile and run a Unity app that uses Network via the C# scripting API, so that you have 1 server and 2 clients on the same machine
connect the clients to the server
send an RPC from NetworkPlayer 1 (RPCMode.Others). Notice that it is received with NetworkMessageInfo.m_Sender == 0
send an RPC from NetworkPlayer 2 (RPCMode.Others). Notice that it is received with NetworkMessageInfo.m_Sender == 0