로비 만들기
Create a new lobby with customizable properties including name, visibility, capacity, password protection, and custom data.
읽는 시간 1분최근 업데이트: 한 달 전
플레이어가 새 로비를 만드는 경우 create 호출을 사용하여 다음 프로퍼티를 설정할 수 있습니다.
- Lobby name(필수)
- Lobby visibility(공개 또는 비공개)
- Lobby size(최대 수용 인원)
- 코드에서는 최대 플레이어 수라고 합니다.
- Password
- 로비에 참여하려면 8~64자로 구성된 비밀번호를 사용해야 합니다.
- Initial custom lobby data
- 모든 임의의 데이터가 여기에 해당할 수 있습니다. 그 예로 맵 ID와 게임 모드가 있습니다.
- 문자열 또는 숫자 값 포함 로비 데이터는 인덱싱할 수 있으며, 쿼리에서 해당 인덱스에 따라 필터링 및 정렬할 수 있습니다.
- Initial (host) player data
- 플레이어 표시 이름, 기술, 캐릭터를 예로 들 수 있습니다.
공개 로비 만들기
공개 로비는 로비 코드 없이도 참여할 수 있으며, 누구나 참여할 수 있도록 쿼리 결과에 표시됩니다. 다음 코드 샘플은 공개 로비를 만드는 방법을 보여 줍니다. C#string lobbyName = "new lobby";int maxPlayers = 4;CreateLobbyOptions options = new CreateLobbyOptions();options.IsPrivate = false;Lobby lobby = await LobbyService.Instance.CreateLobbyAsync(lobbyName, maxPlayers, options);
비공개 로비 만들기
비공개 로비는 쿼리 결과에 절대 표시되지 않으며, 신규 플레이어에게 수동으로 로비 코드 또는 ID를 제공해야 합니다. 다음 코드 샘플은 비공개 로비를 만드는 방법을 보여 줍니다. C#string lobbyName = "new lobby";int maxPlayers = 4;CreateLobbyOptions options = new CreateLobbyOptions();options.IsPrivate = true;Lobby lobby = await LobbyService.Instance.CreateLobbyAsync(lobbyName, maxPlayers, options);
인덱싱되지 않은 표준 데이터로 로비 만들기
로비 데이터는 후속 업데이트 요청뿐 아니라 생성 요청에도 포함될 수 있습니다. 다음 코드 샘플은 인덱싱되지 않은 표준 데이터로 로비를 만드는 방법을 보여 줍니다. C#string lobbyName = "new lobby";int maxPlayers = 4;CreateLobbyOptions options = new CreateLobbyOptions();options.Data = new Dictionary<string, DataObject>(){ { "ExamplePublicLobbyData", new DataObject( visibility: DataObject.VisibilityOptions.Public, // Visible publicly. value: "ExamplePublicLobbyData") },};Lobby lobby = await LobbyService.Instance.CreateLobbyAsync(lobbyName, maxPlayers, options);
인덱싱된 문자열 데이터로 로비 만들기
다음 코드 샘플은 인덱싱된 문자열 데이터로 로비를 만드는 방법을 보여 줍니다. C#string lobbyName = "new lobby";int maxPlayers = 4;CreateLobbyOptions options = new CreateLobbyOptions();options.Data = new Dictionary<string, DataObject>(){ { "GameMode", new DataObject( visibility: DataObject.VisibilityOptions.Public, // Visible publicly. value: "Conquest", index: DataObject.IndexOptions.S1) },};Lobby lobby = await LobbyService.Instance.CreateLobbyAsync(lobbyName, maxPlayers, options);
인덱싱된 숫자 데이터로 로비 만들기
다음 코드 샘플은 인덱싱된 숫자 데이터로 로비를 만드는 방법을 보여 줍니다. C#string lobbyName = "new lobby";int maxPlayers = 4;CreateLobbyOptions options = new CreateLobbyOptions();options.Data = new Dictionary<string, DataObject>(){ { "MinimumSkillLevel", new DataObject( visibility: DataObject.VisibilityOptions.Public, // Visible publicly. value: "25", index: DataObject.IndexOptions.N1) },};Lobby lobby = await LobbyService.Instance.CreateLobbyAsync(lobbyName, maxPlayers, options);
호스트용 플레이어 데이터로 로비 만들기
로비 데이터와 마찬가지로 호스트용 플레이어 데이터 역시 별도의 업데이트 요청으로 추가하는 대신 생성 요청에 포함될 수 있습니다. 다음 코드 샘플은 호스트용 플레이어 데이터로 로비를 만드는 방법을 보여 줍니다. C#string lobbyName = "new lobby";int maxPlayers = 4;CreateLobbyOptions options = new CreateLobbyOptions();// Ensure you sign-in before calling Authentication Instance.// See IAuthenticationService interface.options.Player = new Player( id: AuthenticationService.Instance.PlayerId, data: new Dictionary<string, PlayerDataObject>() { { "ExampleMemberPlayerData", new PlayerDataObject( visibility: PlayerDataObject.VisibilityOptions.Member, // Visible only to members of the lobby. value: "ExampleMemberPlayerData") } });Lobby lobby = await LobbyService.Instance.CreateLobbyAsync(lobbyName, maxPlayers, options);