Load Scene Additive Unet

I have looked for this a number of times over the last two years and I still can’t seem to find an answer. How can I load scenes additively in a multiplayer project and have their objects’ network identities synched. I know how to add a scene additively locally and I figure I could destroy and network.spawn every object in the scene, but there HAS to be a better way to do it. Does anybody know?

I am looking for a way to do this in Vanilla unity, without any extra software packages or items from the store.

While the thread isn’t explicitly for this topic, I had a similar issue and used it as a reference for how to get Additive Scene Loading working in a networked game.

Here is my solution to this problem:

The solution is this:

The essence of the problem is that even if send messages to each client to load a scene along with the server, they will end up re-using the NetworkIdentity.sceneId. My solution after exploring a few options, was to force all scene ids to an explicit ID (consistently) on load, and therefore allow them to be spawned properly.