"Loading Please Wait...." Message problem

Options
Hello,

I'm using Photon PUN.

When the game starts, all the clients and the master client puts up a "Loading Please Wait...." message.

Then the master client network instantiates all the scene objects, then removes the "Loading Please wait...." message.

But the client does NOT know when to remove this message because it does not know when the master client has finished instantiating the LAST scene object (client doesnt even know how many scene objects the master client will instantiate) so this "Loading Please Wait....." message is never removed from the clients.

Also players who joined the game late, gets all these backed up network instantiated scene objects, and it doesnt know when the last scene object has been instantiated, so it never removes the "Loading Please Wait..." message either.

Anybody knows how to solve this?

Thanks


Comments

  • Hi dreadlocks,

    is it important, that the MasterClient instantiates all the objects at runtime or is there the possibility to pre-build the scene already containing the objects. This would have less buffered messages which delay the connection time for clients who join later.

    About the 'Loading' message. You can use a RPC to tell other clients, that the game has started. You can use a buffered RPC to do the same, but this time clients will also know when to start even if they joined afterwards. The best way however might be to use the Room Properties and store a value in there, which let clients know, that the game has started.
  • Hello Christian,

    When the game starts I dynamically call a bunch of InstantiateSceneObjects to instatiate all the scene objects, but they are a lot and take around 30 seconds instantiate all of them. During that time I put up the Loading message.

    The problem is that the clients dont know how many scene objects will be instantiated, so they dont know when to clear remove the loading screen. If i use RPC sent from master client, then any new player will get that even before all the objects are instantiated and the loading screen will be removed before all the instantiated objects are completed.