Multiplayer

API References for Multiplayer Service

Explore the list of API functions available in Unity for multiplayer, including detailed descriptions and usage examples.

Room Management

Create Room

Create a room in initial state

var room = await ServiceHub.Services.MultiPlayer.RoomService.CreateRoom(new CreateRoomParams
{
    Name = "room name",
    IsPrivate = false,
    IsPermanent = false,
    MinPlayer = 0,
    MaxPlayer = 0,
    MinXp = 0,
    MaxXp = 1000,
    Status = RoomStatus.Initial,
    IsTurnBasedGame = false,
    GameOrderType = GameOrderType.RoundRobin,
    Metadata = "any data",
    Players = null
});

Create Room and Open it

Create a room in initial state

var room = await ServiceHub.Services.MultiPlayer.RoomService.CreateAndOpenRoom(new CreateRoomParams
{
    Name = "room name",
    IsPrivate = false,
    IsPermanent = false,
    MinPlayer = 0,
    MaxPlayer = 0,
    MinXp = 0,
    MaxXp = 1000,
    Status = RoomStatus.Initial,
    IsTurnBasedGame = false,
    GameOrderType = GameOrderType.RoundRobin,
    Metadata = "any data",
    Players = null
});

Join by AutoMatch

Looking for a suitable room to join or create one

var room = await ServiceHub.Services.MultiPlayer.RoomService.AutoMatch();

Get all existing rooms

The function will return all available rooms to join

var rooms = await ServiceHub.Services.MultiPlayer.RoomService.GetAllRooms(new GetAllRoomsParams
{
    Skip = 0,
    Take = 0
});

Get all existing rooms Match user's XP

The function will return all available rooms to join according to the user's xp

var rooms = await ServiceHub.Services.MultiPlayer.RoomService.GetAllMatchedRooms(new GetAllRoomsParams
{
    Skip = 0,
    Take = 0
});

Get Room By ID

The function will return room's details by room's ID

var room = await ServiceHub.Services.MultiPlayer.RoomService.GetRoomById(roomID);

Get Room By Name

The function will return room's details by room's name

var room = await ServiceHub.Services.MultiPlayer.RoomService.GetRoomByName(roomName);

Join

Joining to a room by room's ID

var room = await ServiceHub.Services.MultiPlayer.RoomService.Join(roomID);

Leave

Leaving a room by room's ID

await ServiceHub.Services.MultiPlayer.RoomService.Leave(roomID);

Delete Room

Delete a room by it's ID

await ServiceHub.Services.MultiPlayer.RoomService.DeleteRoom(roomID);

Match Management

Make Match

Create a new Match

var match = await ServiceHub.Services.MultiPlayer.MatchService.MakeMatch(roomId, lockRoom);

Make and Start Match

Create a new Match and start it

var match = await ServiceHub.Services.MultiPlayer.MatchService.MakeAndStartMatch(roomId, lockRoom);

Load Match

Load a match by its ID

var match = await ServiceHub.Services.MultiPlayer.MatchService.LoadMatch(matchId);

GetMyMatches

Get user's matches

var matches = await ServiceHub.Services.MultiPlayer.MatchService.GetMyMatches();

Last updated