Alright, guise. So I’ve been working with the new Unity Networking, and have managed to get a lobby functional, with players transferring customization data from their local game, to the lobby, and into the game “online” scene (which is networked, of course).
When they enter the game, the gameplayer prefab is instantiated. On it, is a script, which requests their visual model from the server, according to settings in the script.
At this point, from what I’ve gathered and SEEN WORK from Mike Geig’s tutorials, it’s supposed to go like this:
Player sends a [Command] to server, in which it INSTANTIATES the shipmodel LOCALLY, and then does NetworkServer.Spawn() on it. Only problem is, this doesn’t work - the shipmodel isn’t spawned on the network. (The gameplayer prefab has the LocalPlayer authority, the script that spawns the model is on this root object as well, so has access to the client authority, and should be able to send the command)
The way it’s working NOW however, is the player sends a [Command], which triggers a [ClientRpc], which then distributes the shipmodel to all Clients on the Network.
And I can sort of understand that logic.
But I don’t get why it’s then working for Mike ? This is both in his Unity networking live tutorials, as well as a video on YouTube on channel ByteCrafter I found. He only does the local instantiate with a [Command] and NetworkServer.Spawn() - and it works.
I’m thinking I’m doing something wrong, somewhere, which’ll migrate into other bugs in the future, which I’d like to avoid. Please halp!