Author: Fauzan Wahyu Jatmiko (Ojan), PM - Play (Armada)

In order to allow your players to connect with each other and play together, whether as individuals or in a team, you need strong matchmaking services. This blog post will cover how matchmaking works, the backend matchmaking features that need to be built, and the basic flow of matchmaking at AccelBte.

How Does Matchmaking Work?

Matchmaking allows parties to be paired to compete against each other in your game. With AccelByte matchmaking services, you can create your own matchmaking rules for how parties are matched. Matchmaking Rating (MMR) are used to determine how parties are matched up under ideal conditions. You can also create flex rules, which dictate how to match parties when ideal matches aren’t possible. These flex rules usually include time limits for the matchmaking process, to ensure that players don’t have to wait too long to play your game.

What Backend Matchmaking Features Need to be Built?

A Lobby System

Lobbies are used so players can see ongoing or upcoming game sessions they can join, review the outcome of the last match they were in, adjust their game settings, communicate with other players and request a match from the matchmaking service. Lobbies have become a standard in all multiplayer games, but in cross-platform games they’re even more critical as they become the first place that players from different platforms can come together.

AccelByte lobby services provide continuous connection between the players and the game. We ensure reliable, real-time data transfer by allowing two-way communication between the server and clients.

A Party System

A party is a group of players working together as a single entity in a match. The system matches a party with another or other parties to play in a game session. Parties can either be filled by player’s invited friends, or random players who are joined together for the match. In a cross-platform game, the party system enables players from different platforms to group together and play as a team.

AccelByte matchmaking service employs flexible party matching configuration with customizable attributes. Our party system also enables players to create a party, leave a party, invite friends to a party, join a party, and kick party members.

A Chat System

In a multiplayer game it is essential for players to be able to communicate, not only during gameplay, but also throughout the matchmaking process. Giving players chat service to use in party forming helps players to strategize better before the game begins.

Our lobby and matchmaking system supports global, party, and individual real-time text based communication in-game.

A Friends System

The ability to add other players as in-game friends is crucial for modern games. A friend system makes it possible for a player to save like-minded people in the game to team up in matches, or to challenge other players to a friendly match. In cross-platform multiplayer games, it is essential for a player to be able to befriend other players from different platforms to bring your whole player community together.

AccelByte supports both in-game friends and platform or launcher level friends. In-game friends can chat and play together within a game title, whereas platform level friends allow players of different games to interact with each other.

A Server Browser

It is convenient for players to be able to browse servers or game sessions to play in. It is common to browse for a game session based on filter criteria such as the server name, its location, game mode, player count, and latency.

Our Armada service is a smart game server manager for multiplayer games that can help you deal with all those problems mentioned here. With our server manager, servers can be spun up on the fly and you can mix and match server providers to maximize performance and minimize cost.

Ranking/Score History

In a match, players expect to know who won and how well they performed. By having the scores from each match recorded and shown at the end of the match, players that do well get the satisfaction of achievement.

Within our backend platform, we have player data management that works cross-platform. Game devs and publishers can track players’ progression and attributes in one system, regardless of where they are playing.

The AccelByte Leaderboard Service enables you to keep track of players’ scores and ranking in the game by collecting data from the Statistics service, such as the number of matches played, the player’s matchmaking rating, and their experience points. Combined with our Achievement service, you can foster deeper enjoyment of your game and loyalty to your brand.

The Basic Flow of Matchmaking at AccelByte

  1. Start Matchmaking: A party leader can make a request to initiate the matchmaking process.
  2. Confirm Players are Ready: During the matchmaking process, each player needs to confirm they are ready to play. When all of the players are ready to start, the game will begin.
  3. Re-matchmaking Matchmaking: Will restart if any players in the matchup aren’t ready to play.
  4. Cancel Matchmaking Party: Leaders can cancel the matchmaking process before it’s completed.

You can configure all of the matchmaking rules in our Admin Portal. To get more details on matchmaking, request a demo.