Spieleserver und Lobbies
In diesem Artikel wird erläutert, wie Sie PlayFab Lobbies von einem Spieleserver verwenden.
Aktivieren von Spieleserver-APIs im PlayFab Multiplayer SDK
Um die Spieleserver-APIs in PlayFab Multiplayer zu aktivieren, müssen Sie PFMULTIPLAYER_INCLUDE_SERVER_APIS definieren, bevor Sie PFLobby.h einschließen.
#define PFMULTIPLAYER_INCLUDE_SERVER_APIS
#include <PFMultiplayer.h>
#include <PFLobby.h>
Erstellen servereigener Lobbies
Führen Sie die folgenden Schritte aus, um servereigene Lobbies zu erstellen:
- Melden Sie sich als game_server PlayFab-Entität mit AuthenticateGameServerWithCustomId an, und rufen Sie das Entitätsschlüssel- und Tokenpaar ab.
- Geben Sie den Entitätsschlüssel und das Token des game_server mit PFMultiplayerSetEntityToken für das PlayFab Multiplayer SDK an.
- Rufen Sie PFMultiplayerCreateAndClaimServerLobby mit dem Entitätsschlüssel des game_server auf.
Weitere Informationen und Beispielcode finden Sie unter Erstellen eines Wartebereichs.
Server sind keine Mitglieder
In kundeneigenen Lobbys ist der Besitzer der Lobby auch Mitglied der Lobby.
Servereigene Lobbies unterscheiden sich in dieser Hinsicht. Die game_server Entität, die die Lobby besitzt, ist kein Mitglied der Lobby.
Serverbesitzer können globale Lobbyeigenschaften ändern, verfügen aber nicht über einen eigenen Membereigenschaftenabschnitt.
Weitere Informationen zu dieser Unterscheidung finden Sie unter Lobbybesitzer im Vergleich zu Mitgliedern.
Migrationsrichtlinie für Besitz und Besitz
Im Gegensatz zu clienteigenen Lobbies gibt es nur eine gültige Besitzmigrationsrichtlinie für servereigene Lobbies: die "Server"-Besitzermigrationsrichtlinie.
Dies hat wichtige Auswirkungen auf die Besitzmigration und die Wiederherstellung von Lobbys.
Wenn der Besitzer einer servereigenen Lobby die Verbindung trennt ( z. B. weil der Server abgestürzt ist), wird der Besitz der Lobby nicht automatisch auf eines der Mitglieder in der Lobby übertragen. Stattdessen wird die Lobby in den Suchergebnissen der Lobby verborgen (um zu vermeiden, dass neue Mitglieder unbeabsichtigt dieser Lobby beitreten), und es liegt am Titel, einige Wiederherstellungslogik zu koordinieren.
Bei der nächsten verfügbaren Gelegenheit sollte die game_server entität, die abgestürzt ist, nach Lobbies suchen, die sie mithilfe des Suchschlüssels lobby/amOwner über PFMultiplayerFindLobbies wiederherstellen muss.
Nachdem sie die Lobbys gefunden haben, die wiederherstellt werden müssen, kann der Spielserver entweder versuchen, die Spielsitzung fortzusetzen oder den Wartebereich zu löschen.
Weitere Informationen zu Besitzeränderungen finden Sie unter Besitzänderungen.