BACKND Match
From 1:1 to team battles, supporting Korea's first real-time PvP service.
Create your desired multiplayer game with various options provided by BACKND.
Service Without Traffic Worries
Unlike other services, the server size automatically expands even when users increase suddenly due to influencers or other factors.
Various Matching Modes and Types
Users can be matched according to various conditions like 1:1, individual battles, and team battles.
Additionally, users can be matched without criteria or appropriately matched based on score or MMR according to their skill level.
Real-time Game Environment
BACKND Match is a service that creates matches between users according to set rules to provide a real-time game environment.
Additional Features
Provides various additional features such as result processing, reconnection functionality, and in-game chat.
Getting Started
1. Activate BACKND Match in Console
BACKND Match is a service that matches users playing the game according to rules.- Users must have a nickname.
- BACKND Match must be activated in the console.
2. Create a New Match
You can create a new match in the console.










1. Activate BACKND Match in Console
BACKND Match is a service that matches users playing the game according to rules.- Users must have a nickname.
- BACKND Match must be activated in the console.





2. Create a New Match
You can create a new match in the console.Utilization (Match Server)
1. Connect to Matching Server
Connect to the matching server.2. Create Waiting Room
Create a waiting room to request matching. Whether requesting matching alone or with other users, a waiting room must be created.- The user who creates the waiting room becomes the room host.
3. Invite Users
Users can be invited to the waiting room. Invitation is possible if you know their nickname.4. Invited Users Enter
When an invited user sends an invitation acceptance message to the server, they automatically enter the waiting room.5. Request Matching
Request matching.6. Match Success
When the server finds users matching the conditions, it creates a match. Then, the following information is sent to all matched users:- Matched information (Match card inDate)
- Whether it's a sandbox match
- In-game server address to connect to
- Game room information to connect to

// Connect to matching server
Backend.Match.JoinMatchMakingServer(out errorInfo);
Backend.Match.OnJoinMatchMakingServer += (args) =>
{
// Check if connection to matching server was successful
};

// Create waiting room
Backend.Match.CreateMatchRoom();
Backend.Match.OnMatchMakingRoomCreate += (args) =>
{
// Check if waiting room creation was successful
};

// Invite user
Backend.Match.InviteUser(nickName);
Backend.Match.OnMatchMakingRoomInvite += (args) =>
{
// Check if user invitation was successful
};

// Accept invitation
Backend.Match.AcceptInvitation(roomId, roomToken);
Backend.Match.OnMatchMakingRoomInviteResponse += (args) =>
{
// Check if invitation acceptance was successful
};
Backend.Match.OnMatchMakingRoomUserList += (args) =>
{
// Receive waiting room information
};

// Request matching
Backend.Match.RequestMatchMaking(matchType, modeType, inDate);
Backend.Match.OnMatchMakingResponse += (args) =>
{
// Check if matching request was successful
};

// Match success
Backend.Match.OnMatchMakingResponse += (args) =>
{
// This event is called once more with success when a match is made.
// When a match is made, in-game information for playing the game is included in this event.
};

// Connect to matching server
Backend.Match.JoinMatchMakingServer(out errorInfo);
Backend.Match.OnJoinMatchMakingServer += (args) =>
{
// Check if connection to matching server was successful
};
1. Connect to Matching Server
Connect to the matching server.
// Create waiting room
Backend.Match.CreateMatchRoom();
Backend.Match.OnMatchMakingRoomCreate += (args) =>
{
// Check if waiting room creation was successful
};
2. Create Waiting Room
Create a waiting room to request matching. Whether requesting matching alone or with other users, a waiting room must be created.- The user who creates the waiting room becomes the room host.

// Invite user
Backend.Match.InviteUser(nickName);
Backend.Match.OnMatchMakingRoomInvite += (args) =>
{
// Check if user invitation was successful
};
3. Invite Users
Users can be invited to the waiting room. Invitation is possible if you know their nickname.
// Accept invitation
Backend.Match.AcceptInvitation(roomId, roomToken);
Backend.Match.OnMatchMakingRoomInviteResponse += (args) =>
{
// Check if invitation acceptance was successful
};
Backend.Match.OnMatchMakingRoomUserList += (args) =>
{
// Receive waiting room information
};
4. Invited Users Enter
When an invited user sends an invitation acceptance message to the server, they automatically enter the waiting room.
// Request matching
Backend.Match.RequestMatchMaking(matchType, modeType, inDate);
Backend.Match.OnMatchMakingResponse += (args) =>
{
// Check if matching request was successful
};
5. Request Matching
Request matching.
// Match success
Backend.Match.OnMatchMakingResponse += (args) =>
{
// This event is called once more with success when a match is made.
// When a match is made, in-game information for playing the game is included in this event.
};
6. Match Success
When the server finds users matching the conditions, it creates a match. Then, the following information is sent to all matched users:- Matched information (Match card inDate)
- Whether it's a sandbox match
- In-game server address to connect to
- Game room information to connect to
Utilization (In-game Server)
1. Connect to In-game Server
Connect to the in-game server using the server address and port number received when the match is successful.2. Connect to Game Room
Connect to the game room using the game room token value received when the match is successful. At this time, you receive a list of users currently participating in the room and a game room connection success message.3. Start Game
When all users who were matched together connect to the game room, a game start message is sent to all clients after the game start wait time set in the console has passed.4. Send/Receive Data/Chat Messages
After receiving the game start message, you can send binary data and chat messages. Data sent to the server is broadcast to all users in the game room, including the user who sent it.5. Reconnect
If you leave during the game or the client terminates abnormally, you can reconnect to the ongoing game.6. Summarize Game Results/End Game
When all users in the game room send game result messages to the server, the server summarizes the results based on these messages and reflects them in the database.The game ends simultaneously with the completion of game result summarization. When the game ends, users are automatically disconnected from the in-game server.

// Connect to in-game server
Backend.Match.JoinGameServer(serverAddress, serverPort, false, out errorInfo);
Backend.Match.OnSessionJoinInServer += (args) =>
{
// Check if connection to in-game server was successful
};

// Connect to game room
Backend.Match.JoinGameRoom(roomToken);
Backend.Match.OnSessionListInServer += (args) =>
{
// Receive game room user information
};
Backend.Match.OnMatchInGameAccess += (args) =>
{
// Receive game room user entry message
};

// All users enter the game room, and after the time specified in the console, the following event is called.
Backend.Match.OnMatchInGameStart = () =>
{
// TODO
};

// Send binary data
Backend.Match.SendDataToInGameRoom(data);
// Receive binary data
Backend.Match.OnMatchRelay += (args) =>
{
// Process binary data
};
// Send chat message
Backend.Match.ChatToGameRoom(matchChatModeType, message);
// Receive chat message
Backend.Match.OnMatchChat += (args) =>
{
// Process chat message
};

// Check if there is a game that can be reconnected
BackendReturnObject bro = Backend.Match.IsGameRoomActivate();
if (bro.IsSuccess())
{
// Check for reconnectable game room
}
// Perform reconnection based on game room information checked in the above function
if (!JoinGameServer(addr, port, true, out errorInfo))
{
// Check error
return;
}

// Summarize game results
Backend.Match.MatchEnd(matchGameResult);
Backend.Match.OnMatchResult += (args) =>
{
// Check if game result summarization was successful
};

// Connect to in-game server
Backend.Match.JoinGameServer(serverAddress, serverPort, false, out errorInfo);
Backend.Match.OnSessionJoinInServer += (args) =>
{
// Check if connection to in-game server was successful
};
1. Connect to In-game Server
Connect to the in-game server using the server address and port number received when the match is successful.
// Connect to game room
Backend.Match.JoinGameRoom(roomToken);
Backend.Match.OnSessionListInServer += (args) =>
{
// Receive game room user information
};
Backend.Match.OnMatchInGameAccess += (args) =>
{
// Receive game room user entry message
};
2. Connect to Game Room
Connect to the game room using the game room token value received when the match is successful. At this time, you receive a list of users currently participating in the room and a game room connection success message.
// All users enter the game room, and after the time specified in the console, the following event is called.
Backend.Match.OnMatchInGameStart = () =>
{
// TODO
};
3. Start Game
When all users who were matched together connect to the game room, a game start message is sent to all clients after the game start wait time set in the console has passed.
// Send binary data
Backend.Match.SendDataToInGameRoom(data);
// Receive binary data
Backend.Match.OnMatchRelay += (args) =>
{
// Process binary data
};
// Send chat message
Backend.Match.ChatToGameRoom(matchChatModeType, message);
// Receive chat message
Backend.Match.OnMatchChat += (args) =>
{
// Process chat message
};
4. Send/Receive Data/Chat Messages
After receiving the game start message, you can send binary data and chat messages. Data sent to the server is broadcast to all users in the game room, including the user who sent it.
// Check if there is a game that can be reconnected
BackendReturnObject bro = Backend.Match.IsGameRoomActivate();
if (bro.IsSuccess())
{
// Check for reconnectable game room
}
// Perform reconnection based on game room information checked in the above function
if (!JoinGameServer(addr, port, true, out errorInfo))
{
// Check error
return;
}
5. Reconnect
If you leave during the game or the client terminates abnormally, you can reconnect to the ongoing game.
// Summarize game results
Backend.Match.MatchEnd(matchGameResult);
Backend.Match.OnMatchResult += (args) =>
{
// Check if game result summarization was successful
};
6. Summarize Game Results/End Game
When all users in the game room send game result messages to the server, the server summarizes the results based on these messages and reflects them in the database.The game ends simultaneously with the completion of game result summarization. When the game ends, users are automatically disconnected from the in-game server.
Trusted by over 5,000 game developers worldwide
PC, console, mobile games. Try BACKND now.