ドキュメント

サポート

Lobby

Lobby

パーティ

Create and manage player parties to enable groups of players to join game matches together.
読み終わるまでの所要時間 2 分最終更新 8日前

パーティは、ゲーム内でのパーティ体験を作成する方法を示します。パーティはプレイヤーが形成するプレイヤーのグループで、ゲームセッション (ゲームの起動からゲームの終了まで) の間存続します。パーティは、ロビー、マッチメイキング、ゲームプレイなど、複数のゲーム # 状態にわたり存続します。友達リスト (プレイヤーの永続的なグループ) とは異なり、パーティは単一のゲームセッションの継続時間のみ続きます。 続行する前に、Unity Hub およびサポートされるバージョンの Unity エディターを ダウンロードしてインストール してください。パーティでは、以下の Unity エディターバージョンがサポートされます。
  • Unity 2020.3 LTS 以降

要件

パーティの使用を準備する前に、以下の要件を満たす必要があります。
  • Unity Lobby SDK をインストールする
  • Unity プロジェクトが Lobby サービスに オンボード されている。
  • TextMesh Pro の必須事項。
    • エディターで、Window (ウィンドウ) > Textmesh Pro > Import TMP Essential Resources (TMP Essential リソースのインポート) に移動します。

高レベルのワークフロー

パーティを使用した一般的なパーティメンバーの行程は以下のとおりです。
  1. プレイヤー A がパーティを開始する
  2. プレイヤー A がプレイヤー B に招待コードを送信する
  3. プレイヤー B がコードを使用してパーティに参加する
  4. プレイヤー A と B の両者がパーティに存在し、マッチ 1 を開始する
  5. マッチ 1 が終了し、パーティはまだ存在しているため、プレイヤー A と B はマッチ 2 を再度一緒にプレイできる

概念

パーティ

パーティはプレイヤーが形成するプレイヤーのグループで、ゲームセッション (ゲームの起動からゲームの終了まで) の間存続します。

パーティリーダー

パーティリーダーはパーティのホストです。パーティを管理し、プレイヤーの追加と追放を行うことができます。

パーティメンバー

パーティメンバーは、パーティの一部であるプレイヤーです。パーティメンバーは、招待コードを送信することで他のプレイヤーを追加できます。

パーティの管理

LobbyManager から以下のロビーコードサンプルを使用して、パーティ操作を実行します。

パーティの作成

async void CreateLobby(){ try { var partyLobbyOptions = new CreateLobbyOptions() { IsPrivate = true, Player = m_LocalPlayer }; var partyLobbyName = $"{k_LobbyNamePrefix}_{m_LocalPlayer.Id}"; m_PartyLobby = await LobbyService.Instance.CreateLobbyAsync(partyLobbyName, m_MaxPartyMembers, partyLobbyOptions); await OnJoinedParty(m_PartyLobby); } catch (LobbyServiceException e) { PopUpLobbyError(e); }}

パーティリードとして別のプレイヤーを割り当て (パーティリードとして)

async Task TrySetHost(string playerId){ if (!m_LocalPlayer.IsHost) return; try { var setHostOptions = new UpdateLobbyOptions() { HostId = playerId }; await LobbyService.Instance.UpdateLobbyAsync(m_PartyLobby.Id, setHostOptions); } catch (LobbyServiceException e) { PopUpLobbyError(e); }

パーティにプレイヤーを招待 / パーティに参加

プレイヤーに招待を送信するためのメソッドを作成する必要があります。ただし、プレイヤーに招待を送信する機能の代わりに、プレイヤーはテキスト通信を介して LobbyCode を共有できます。
async void TryLobbyJoin(string joinCode){ try { var joinOptions = new JoinLobbyByCodeOptions() { Player = m_LocalPlayer }; m_PartyLobby = await LobbyService.Instance.JoinLobbyByCodeAsync(joinCode, joinOptions); await OnJoinedParty(m_PartyLobby); } catch (LobbyServiceException e) { var joinFailMessage = FormatLobbyError(e); m_LobbyJoinPopupPopupView.JoinPartyFailed(joinFailMessage); }}

パーティからの退出

async void OnLeaveLobby(){ await RemoveFromParty(m_LocalPlayer.Id); NotificationEvents.onNotify?.Invoke( new NotificationData( "You", "Left the Party!", 1)); //Leave Lobby Regardless of result OnLeftParty();}

パーティからのプレイヤーの削除 (パーティリードとして)

async Task RemoveFromParty(string playerID){ try { await LobbyService.Instance.RemovePlayerAsync(m_PartyLobby.Id, playerID); } catch (LobbyServiceException e) { PopUpLobbyError(e); }}

サポート

以下の方法のどれかを使用して、Lobby サポートチームに連絡できます。