LogoLogo
  • SWNetwork SDK Overview
  • Installation
    • Custom Unity Package
  • Tutorials
    • Third-Person Shooter
      • Starter Project Introduction
      • Install SWNetwork
      • Setting up the NetworkClient
      • Sync Player Transform
      • Setting up the Scene Spawner
      • Test and Play
      • Remote Events
      • SyncProperties
      • Player Respawn
      • Updating Room States
      • Winning the Game
    • Basic Lobby
      • Lobby-start
      • Installing SWNetwork SDK and configuring NetworkClient
      • Registering Player
      • Room CRUD
      • Managing Teams
      • Chat
  • SDK
    • Network Client
      • Check-in
      • Game Servers
      • Network Status Event (beta)
      • Classes
        • NetworkClient Class
      • Methods
        • CheckIn() Method
        • ConnectToRoom(Action<bool>) Method
        • DisconnectFromRoom () Method
        • FindSpawner(ushort) Method
    • Game Play
      • Network ID
      • Realtime Agent
      • Remote Event
      • Sync Property
        • Restore Sync Properties
        • Conflict Resolution
      • SceneSpawner
      • RoomPropertyAgent
      • RoomRemoteEventAgent
    • Lobby
      • Register Player
      • Message Player
      • Create Room
      • Change Room Settings
      • Get Rooms
      • Filter Rooms
      • Join Room
      • Message Room
      • Get Players in Room
      • Get Room Custom Data
      • Change Room Custom Data
      • Kick Players
      • Start Room
      • Leave Room
      • Lobby Room Events
        • OnLobbyConnectedEvent
        • OnPlayerMessageEvent
        • OnRoomCustomDataChangeEvent
        • OnNewPlayerJoinRoomEvent
        • OnPlayerLeaveRoomEvent
        • OnNewRoomOwnerEvent
        • OnRoomStartingEvent
        • OnRoomReadyEvent
        • OnFailedToStartRoomEvent
        • OnKickedEvent
        • OnRoomMessageEvent
      • Classes
        • SWLobby Class
        • SWPlayer Class
        • SWRoom Class
        • SWRegisterReply Class
        • SWGetRoomReply Class
        • SWJoinRoomReply Class
        • SWGetRoomCustomDataReply Class
        • SWGetPlayersReply Class
        • SWLobbyIndexData Class
        • SWLobbyFilterData Class
        • SWGetRoomFilterReply Class
        • SWLobbyError Class
        • SWMessagePlayerEventData Class
        • SWMessageRoomEventData Class
        • SWRoomCustomDataChangeEventData Class
        • SWJoinRoomEventData Class
        • SWLeaveRoomEventData Class
        • SWRoomChangeOwnerEventData Class
        • SWStartRoomEventData Class
        • SWRoomReadyEventData Class
        • SWFailedToStartRoomEventData Class
      • Methods
        • Register(Action<bool, SWRegisterReply, SWLobbyError>) Method
        • MessagePlayer(string, string, Action<bool, SWLobbyError>) Method
        • CreateRoom(bool, int, Action<bool, string, SWLobbyError>) Method
        • ChangeRoomSettings(int, int, Action<bool, SWLobbyError>) Method
        • GetRooms(int, int, Action<bool, SWGetRoomReply, SWLobbyError>) Method
        • FilterRoom(SWLobbyFilterData, byte, Action<bool, SWGetRoomFilterReply, SWLobbyError>) Method
        • JoinRoom(string, Action<bool, SWJoinRoomReply, SWLobbyError>) Method
        • JoinRoomRandomly(Action<bool, SWJoinRoomReply, SWLobbyError>) Method
        • JoinOrCreateRoom(bool, int, int, Action<bool, SWJoinRoomReply, SWLobbyError>) Method
        • MessageRoom(string, Action<bool, SWLobbyError>) Method
        • GetRoomCustomData(Action<bool, SWGetRoomCustomDataReply, SWLobbyError>) Method
        • GetPlayersInRoom(Action<bool, SWGetPlayersReply, SWLobbyError>) Method
        • ChangeRoomCustomData(string, Action<bool, SWLobbyError>) Method
        • StartRoom(Action<bool, SWLobbyError>) Method
        • LeaveRoom(Action<bool, SWLobbyError>) Method
  • Open Source Software Used
    • Credits
Powered by GitBook
On this page

Was this helpful?

  1. SDK
  2. Lobby

Create Room

Overview

Creates a new room and automatically joins the room as its room owner.

Methods

Called by players to begin an asynchronous operation to create a room and using the specified wantRT, and PlayerLimit.

Called by players to begin an asynchronous operation to create a room and using the specified string room custom data, wantRT, and PlayerLimit.

Called by players to begin an asynchronous operation to create a room and using the specified serializable object room custom data, wantRT, and PlayerLimit.

Called by players to begin an asynchronous operation to create a room and using the specified string room custom data, wantRT, PlayerLimit, and index data.

Called by players to begin an asynchronous operation to create a room and using the specified serializable object room custom data, wantRT, PlayerLimit, and index data.

Called by players to begin an asynchronous operation to create a room and using the specified string room custom data, wantRT, PlayerLimit, PlayerTimeToLive, isPrivate, and index data.

Called by players to begin an asynchronous operation to create a room and using the specified serializable object room custom data, wantRT, PlayerLimit, PlayerTimeToLive, isPrivate, and index data.

Class

The index data object of a room.

The error that occurred when a lobby API operation failed.

Maximum size of a room custom data is 5KB.

Examples

In this example, we created a room with serializable object as its custom data. The custom room data has two teams and we assigned the local player to team1.

// Serializable classes for room custom data
[Serializable]
public class RoomCustomData {
	public string name;
	public TeamCustomData team1;
	public TeamCustomData team2;
}

[Serializable]
public class TeamCustomData {
	public List < string > players = new List < string > ();
}
// Create a new RoomCustomData object;
RoomCustomData roomData = new RoomCustomData();

// Set its name to "New Room"
roomData.name = "New Room";

// Create two TeamCustomData objects
// Assign them to team1 and team2 of the RoomCustomData object
roomData.team1 = new TeamCustomData();
roomData.team2 = new TeamCustomData();

// Assign local player to team1 by 
// adding local player's PlayerId to the players list of team1
roomData.team1.players.Add(NetworkClient.Lobby.PlayerId);

// create a new room with the RoomCustomData serializable object
NetworkClient.Lobby.CreateRoom(roomData, true, 4, (successful, roomId, error) =>{
	if (successful) {
		Debug.Log("Room created " + roomId);
	}
	else {
		Debug.Log("Failed to create room " + error);
	}
});
PreviousMessage PlayerNextChange Room Settings

Last updated 5 years ago

Was this helpful?

CreateRoom(bool, int, Action<bool, string, SWLobbyError>)
SWLobbyIndexData
SWLobbyError
CreateRoom(string, bool, int, Action<bool, string, SWLobbyError>)
CreateRoom(object, bool, int, Action<bool, string, SWLobbyError>)
CreateRoom(string, bool, int, SWLobbyIndexData, Action<bool, string, SWLobbyError>)
CreateRoom(object, bool, int, SWLobbyIndexData, Action<bool, string, SWLobbyError>)
CreateRoom(string, bool, int, int, bool, SWLobbyIndexData, Action<bool, string, SWLobbyError>)
CreateRoom(object, bool, int, int, bool, SWLobbyIndexData, Action<bool, string, SWLobbyError>)