Matchmaking
In the Intro scene, there is only a single Play button that tries to directly enter an online game via matchmaking. Due to the asset's nature and tutorial character, it is designed for mobile and desktop applications, having the minimum amount of friction for players in mind. As such, one button is sufficient to start or join a game - no lobby, waiting room, countdown or anything like that which could throw off potential players. This approach is called quick-join.
With quick-join, a simple workflow handles players behavior and routing them into a game. The code for this is in the NetworkManagerCustom
script. If something fails during the connection, an error window shows up. As an overview, the matchmaking workflow looks like this:
This asset supports different game modes and maps. Each game mode has a separate matchmaking queue and only players with the same game mode selection (e.g. Team Deathmatch) are matched into a game. The matchmaking separation based on maps was not done, since each additional queue would further split the player base and requires more and more active users to retain a healthy game population. When adding new game modes or matchmaking queues, you should keep this in mind to not overwhelm your players.