Hub Space

Hi all, I've a question in terms of setting this type of layout:

From my understanding, the Photon Lobby is local player only and no other players can join. A Photon Room is where all players can join and interact with each other, but they cannot see other possible available rooms.

Currently I have a set up where when the player is ready to play in the Lobby, they join the Waiting Room. Here, they can interact with other players that are waiting as well. There I have scripts that are talking to our cloud database and pulls any matchmaking logic (1v1 type matches). Once the players receive said information, they get kicked back to the Lobby, the first player of that match creates a room and hosts it, while the secondary player waits until the room is created and then joins it.

Is this the right approach where players still have the ability to interact with other players as well as attempting to create and find rooms? Is there a more simpler or elegant solution?

I appreciate any advice and insights. Thanks!
Andy

Comments

  • JohnTube
    JohnTube ✭✭✭✭✭
    Hi @AndyWasHere,

    The "Waiting Room" is not a supported use case if you will allow too many players to join.
    Some use cases require such room "matchmaking room" or "lobby room" which is useful for GROUP matchmaking (TEAM, PARTY, FRIENDS, CLAN, GUILD, etc.).
    For a 1 vs. 1 game, you do not need this room.

    Instead, you can use or combine the following to allow interaction outside of rooms:

    - Photon Chat
    - "Social network" features (e.g. facebook)
    - Push Notifications
    - Web Service
    - Another service...e.g. PlayFab, Google Play...

    So you can exchange invitation and do the non-random matchmaking this way.

    There I have scripts that are talking to our cloud database and pulls any matchmaking logic (1v1 type matches).
    I see you are already using a web service, you should use it for this as well.
  • Much appreciation for your answer!

    Yes, our matchmaking has already been done so that's not really the issue. It's more in the gameplay aspects where we want players to be able to see and interact with each other, regardless if there are 2 players or 200 players. But when it's game time, they're all pushed into 1v1 type matches.

    Nonetheless, I've managed to create solution I mentioned before. It feels super clunky in code but it works well enough.

    Thanks,
    Andy