接続解除
参加プレイヤーが DISCONNECT
メッセージ をホストプレイヤーに送信すると、接続解除が発生します。これによって、ゲームセッション内のホストプレイヤーからのみ、プレイヤーの接続が解除されます。Relay サーバーからプレイヤーの割り当てが削除されることはありません。
Relay サーバーへの接続を閉じる
Relay サーバーからプレイヤーの割り当てを解除する (プレイヤーの割り当てを Relay サーバーから削除する) には、Relay サーバーに CLOSE
メッセージ を送信する必要があります。結果として、接続を閉じたプレイヤーは、接続フロー を通じて Relay サーバーに再バインドする必要があります。
一般的なゲームセッションでは、すべてのプレイヤーが各自の接続を閉じ、最後にホストプレイヤーが自分の接続を閉じます。参加コードを作成したのはホストプレイヤーであるため、接続を閉じると Relay で以下の処理がトリガーされます。
- ホストプレイヤーの割り当てと、そのプレイヤーが作成した 参加コード を解放する。
- ホストプレイヤーの Relay サーバーへの接続を終了する。
ある プレイヤー が接続を閉じると、Relay サーバーはその接続が解除されたプレイヤーを削除するために、接続されているすべてのプレイヤーを更新します。これにより、Relay サーバー の接続スロットが 1 つ空きます。
Relay サーバーは、接続がタイムアウトした 場合にも、プレイヤーの接続を解除します。接続を維持する ことで、タイムアウトを回避できます。
ノート: Relay には、CLOSE
メッセージを通じて Relay サーバーからホストプレイヤーの接続が解除されたときに、ホストを移行する機能は備わっていません。ただし、残りのプレイヤーをロビーに配置し、新しいホストを選択するカスタムロジックは追加できます。ホスト移行 を参照してください。