how to correctly use lobbies ?

edited October 2019 in Native

I'm currently working to emulate steam with photon. The main issue that I'm facing right now is how to make lobbies(steam). What I want is to enumerate lobbies(steam) that I can join (enougth space in the lobby, friends only, etc).

Today I'm making a global lobby(photon) where I create rooms that are used like a steam lobby, the problem is that all my players will be in this global lobby and that is not acceptable I think.

Is what I have today possible (storing all my players in a single global lobby) ?

If I'm using lobbies wrongly, how should I use them ?


  • Hi @benjaml.

    Are you intending to join a lobby of LobbyType:DEFAULT or of LobbyType::SQL_LOBBY?

    The amount of clients, who are inside the same lobby, is not really limited. We have games running on Photon Clouds where tens of thousands of players are inside the same lobby at the same time (rule of thumb: 1 CCU (concurrent user) equals about 20 DAU (daily average users) and 400 MAU (monthly average users) for the average game, so for 100,000 CCU a game would need to have about 40 million active players and usually at any given time most of those 100,000 concurrent players would be actively playing inside game rooms and not residing in the lobby, so even with that many players the amount of clients inside the lobby is in the low ten thousands max).

    However with the size of the initial room lists when entering a lobby can become big enough to basically drown every client which joins that lobby with the pure amount of incoming data, especially when you make custom properties available to the lobby.
    So the limitation is not how many clients are inside the same lobby, but how many open and visible rooms are listed in that lobby at the same time and how many and how big custom properties that are visible to the lobby, those rooms have.

    Unlike with LobbyType:DEFAULT with LobbyType::SQL_LOBBY there is not really a point in joining a lobby anyway: Just use opGetRoomList() to retrieve filtered room lists without joining a lobby at all.