PUN Classic (v1), PUN 2 and Bolt are in maintenance mode. PUN 2 will support Unity 2019 to 2022, but no new features will be added. Of course all your PUN & Bolt projects will continue to work and run with the known performance in the future. For any upcoming or new projects: please switch to Photon Fusion or Quantum.
Frequently Asked Questions
- Which Photon Product Is The Right One For Me?
- Is It Possible To Disable Some Regions?
- How To Quickly Rejoin A Room After Disconnection?
Which Photon Product Is The Right One For Me?
The answer to this depends mostly on your project and team. Generally, we suggest to use either Fusion or Quantum, which are our most advanced client solutions.
For a quick overview, both product sheets contain the product picker "Quadrant":
Additionally, this page discusses using the photon cloud or photon server?.
Feel free to reach out to us for any questions.
Is It Possible To Disable Some Regions?
Yes. It works in the other way around by defining a list of allowed regions. Read more about the "dashboard regions filtering".
How To Quickly Rejoin A Room After Disconnection?
To recover from an unexpected disconnection while joined to a room, the client can attempt to reconnect and rejoin the room. We call this a "quick rejoin". A quick rejoin will succeed only if:
- the room still exits on the same server or can be loaded: If a player leaves a room, the latter can stay alive on Photon server if other players are still joined. If the player is the last one to leave and the room becomes empty then the EmptyRoomTTL is how long it will remain alive waiting for players to join or rejoin. If after EmptyRoomTTL the room is still empty and no one joined then it will be removed from Photon server. If persistence conditions are met and webhooks are setup, the room state can be saved on the configured web service to be loaded later.
- the actor is marked as inactive inside: an actor with the same UserId exists inside the actors' list but not currently joined to the room. This requires PlayerTTL to be different from 0.
- the PlayerTTL for the inactive actor did not expire: when an actor leaves a room with the option to come back we save his Deactivation timestamp. As long as the room is alive, if PlayerTTL milliseconds are elapsed after Deactivation time the respective actor is removed from the actors' list. Otherwise, when the actor tries to rejoin, if the difference in milliseconds between the time of the rejoin attempt and Deactivation time exceeds PlayerTTL then the actor is removed from the actors' list and the rejoin fails. So an inactive actor can rejoin a room only for PlayerTTL milliseconds after Deactivation time.
In PUN you can call