Version: en

Getting Started with Unity Matchmaker

warning

This documentation is now deprecated. If you are using Matchmaker Self Serve though UDash, please use the documentation here.

The Different Moving Parts#

There are a few core concepts that need to be understood before diving deeper into Unity Matchmaker.

Game Client#

This is what the players use to play the game. Since Unity Matchmaker is engine agnostic, the developer can create their game using any game engine.

Matchmaking Logic#

This is the core of Unity Matchmaker. Developers are able to customize the matchmaking logic to better suit their games. There are two different types of matchmaking logic the developer can configure: standard, and rule-based.

Game Service#

This is an online service that handles authentication/communication between the game clients and the Matchmaking Logic.

Dedicated Game Server (DGS)#

This is the game server binary that handles the game logic, this is what the Matchmaking Logic will route the game clients to upon successful matches.

Unity User Authentication Service (UAS)#

This is a player authentication and authorization service offered by Unity.

Terminology#

Some of the commonly used terminology you will find accross the Matchmaking documentation.

Tickets#

A ticket is a matchmaking request that originates from the game client and is created on the matchmaking logic by the game service. This is the core element of requesting a match. The ticket would contain information about the players and clients requesting a match.

Quality of Service (QoS)#

Quality of service is the description or measurement of the connection between the game client and the DGS. The QoS used in Unity Matchmaker consists of Latency, Packet Loss and a Region ID.

Match#

A match is connection information to the DGS that is attached to the ticket assignment. This is used by the game client to connect to the DGS.

Assignments#

Assignments are information the matchmaking logic attaches to the ticket whether a match was found or an error occurred.

Prerequisites#

Onboarding with Multiplay#

To start the onboarding process with Multiplay, you need to have a Unity Project ID (UPID) and provide it to your sales representative. After onboarding is complete, you will be provided with an onboarding package that includes:

  • A document pack with different documentation of how to integrate with Multiplay
  • Multiplay service identifiers including:
    • Account ID (AKA. MH or ASID)
    • Game ID
    • Game Image IDs
    • Jump Machine ID
    • Fleet ID
    • Profile ID
    • Region ID
    • API information

Onboarding with Unity User Authentication Service (UAS)#

The developer needs to be onboarded to the Unity User Authentication Service (UAS). During the matchmaker beta, this should happen automatically.

After onboarding is complete, you will be provided with the following information:

  • client_id
  • client_secret
note

Because client_secret is used to secure server-to-server API calls, it is sent by using a secure process.

What's Next?#