Leitfaden zum GameLift Amazon-Plugin für Unity für Server SDK 4.x - Amazon GameLift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Leitfaden zum GameLift Amazon-Plugin für Unity für Server SDK 4.x

Anmerkung

Dieses Thema enthält Informationen zu einer früheren Version des GameLift Amazon-Plug-ins für Unity. Version 1.0.0 (veröffentlicht im Jahr 2021) verwendet den GameLift Amazon-Server SDK 4.x oder früher. Die Dokumentation zur neuesten Version des Plugins, die Server SDK 5.x verwendet und Amazon unterstützt GameLift Anywhere, finden Sie unterLeitfaden zum GameLift Amazon-Plugin für Unity für Server-SDK 5.x.

Amazon GameLift stellt Tools zur Verfügung, mit denen Sie Ihre Multiplayer-Spieleserver für den Betrieb auf Amazon vorbereiten können GameLift. Das GameLift Amazon-Plugin für Unity erleichtert die Integration von Amazon GameLift in Ihre Unity-Spieleprojekte und die Bereitstellung von GameLift Amazon-Ressourcen für Cloud-Hosting. Verwenden Sie das Plugin für Unity, um auf Amazon zuzugreifen GameLift APIs und AWS CloudFormation Vorlagen für gängige Spieleszenarien bereitzustellen.

Nachdem Sie das Plugin eingerichtet haben, können Sie das Amazon GameLift Unity-Beispiel auf ausprobieren GitHub.

Installieren und richten Sie das Plugin ein

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

In diesem Abschnitt wird beschrieben, wie Sie das GameLift Amazon-Plug-In für Unity, Version 1.0.0, herunterladen, installieren und einrichten.

Voraussetzungen
  • Unity für Windows 2019.4LTS, Windows 2020.3 oder Unity für LTS macOS

  • Aktuelle Version von Java

  • Aktuelle Version von. NET4.x

Um das Plugin für Unity herunterzuladen und zu installieren
  1. Laden Sie das GameLift Amazon-Plugin für Unity herunter. Die neueste Version finden Sie auf der Repository-Seite des GameLift Amazon-Plugins für Unity. Wählen Sie unter der neuesten Version die Option Assets aus und laden Sie dann die com.amazonaws.gamelift-version.tgz Datei herunter.

  2. Starten Sie Unity und wählen Sie ein Projekt aus.

  3. Wählen Sie in der oberen Navigationsleiste unter Fenster die Option Package Manager aus:

    Unity-Menü unter Fenster mit ausgewähltem Paketmanager.
  4. Wählen Sie auf der Registerkarte Paketmanager + und dann Package aus Tarball hinzufügen... :

    Fügen Sie ein Package aus dem Tarball hinzu, das auf der Registerkarte Paketmanager unter dem Pluszeichen markiert ist.
  5. Navigieren Sie im Fenster Pakete auf Festplatte auswählen zu dem com.amazonaws.gamelift Ordner, wählen Sie die Datei com.amazonaws.gamelift-version.tgz aus und klicken Sie dann auf Öffnen:

    Wählen Sie die Tarball-Datei im Fenster „Paket auf Festplatte auswählen“ aus.
  6. Nachdem Unity das Plug-in geladen hat, GameLift erscheint Amazon als neues Element im Unity-Menü. Die Installation und Neukompilierung von Skripten kann einige Minuten dauern. Die Registerkarte Amazon GameLift Plugin-Einstellungen wird automatisch geöffnet.

    Einstellungsmenü des GameLift Amazon-Plug-ins für das Unity-Plugin.
  7. Wählen Sie im SDKBereich „Verwenden“. NET4.x.

    Nach der Konfiguration ändert sich der Status von Nicht konfiguriert zu Konfiguriert.

Teste dein Spiel lokal

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Verwenden Sie Amazon GameLift Local, um Amazon GameLift auf Ihrem lokalen Gerät auszuführen. Sie können Amazon GameLift Local verwenden, um Codeänderungen innerhalb von Sekunden ohne Netzwerkverbindung zu überprüfen.

Konfigurieren Sie lokale Tests

  1. Wählen Sie im Fenster des Plug-ins für Unity die Registerkarte Test aus.

  2. Wählen Sie im Bereich Test die Option Amazon GameLift Local herunterladen. Das Plugin für Unity öffnet ein Browserfenster und lädt die GameLift_06_03_2021.zip Datei in Ihren Download-Ordner herunter.

    Der Download beinhaltet den C#-ServerSDK,. NETQuelldateien und ein. NETKomponente, die mit Unity kompatibel ist.

  3. Entpacken Sie die heruntergeladene GameLift_06_03_2021.zip-Datei.

  4. Wählen Sie im Fenster Amazon GameLift Plugin-Einstellungen Amazon GameLift Local Path, navigieren Sie zum entpackten Ordner, wählen Sie die Datei GameLiftLocal.jar aus und wählen Sie dann Öffnen.

    Wenn konfiguriert, ändert sich der lokale Teststatus von Nicht konfiguriert zu Konfiguriert.

  5. Überprüfen Sie den Status vonJRE. Wenn der Status Nicht konfiguriert lautet, wählen Sie Herunterladen JRE und installieren Sie die empfohlene Java-Version.

    Nachdem Sie die Java-Umgebung installiert und konfiguriert haben, ändert sich der Status in Konfiguriert.

Starte dein lokales Spiel

  1. Wählen Sie auf der Registerkarte „Plugin für Unity“ die Registerkarte „Test“.

  2. Wählen Sie im Bereich Test die Option Open Local Test UI aus.

  3. Geben Sie im Fenster Lokales Testen einen ausführbaren Serverpfad an. Wählen Sie... um den Pfad und den Namen der ausführbaren Datei Ihrer Serveranwendung auszuwählen.

  4. Geben Sie im Fenster Local Testing einen lokalen GL-Port an.

  5. Wählen Sie Deploy & Run, um den Server bereitzustellen und auszuführen.

  6. Um deinen Gameserver zu beenden, wähle Stopp oder schließe das Spielserver-Fenster.

Stellen Sie ein Szenario bereit

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Ein Szenario verwendet eine AWS CloudFormation Vorlage, um die Ressourcen zu erstellen, die Sie für die Bereitstellung einer Cloud-Hosting-Lösung für Ihr Spiel benötigen. In diesem Abschnitt werden die von Amazon GameLift bereitgestellten Szenarien und deren Verwendung beschrieben.

Voraussetzungen

Um das Szenario bereitzustellen, benötigen Sie eine IAM Rolle für den GameLift Amazon-Service. Informationen zum Erstellen einer Rolle für Amazon finden Sie GameLift unterRichten Sie ein AWS-Konto.

Für jedes Szenario sind Berechtigungen für die folgenden Ressourcen erforderlich:

  • Amazon GameLift

  • Amazon S3

  • AWS CloudFormation

  • API-Gateway

  • AWS Lambda

  • AWS WAFV2

  • Amazon Cognito

Szenarien

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Das Amazon GameLift Plug-in für Unity umfasst die folgenden Szenarien:

Nur Auth

In diesem Szenario wird ein Spiele-Backend-Dienst erstellt, der die Spielerauthentifizierung ohne Spielserverfunktion durchführt. Die Vorlage erstellt die folgenden Ressourcen in Ihrem Konto:

  • Ein Amazon Cognito Cognito-Benutzerpool zum Speichern von Spielerauthentifizierungsinformationen.

  • Ein API REST endpunktgestützter Amazon AWS Lambda Gateway-Handler, der Spiele startet und Verbindungsinformationen zu Spielen anzeigt.

Flotte mit nur einer Region

In diesem Szenario wird ein Spiele-Backend-Service mit einer einzigen GameLift Amazon-Flotte erstellt. Es werden die folgenden Ressourcen erstellt:

  • Ein Amazon Cognito Cognito-Benutzerpool, über den sich ein Spieler authentifizieren und ein Spiel starten kann.

  • Ein AWS Lambda Handler zur Suche nach einer bestehenden Spielsitzung mit einem offenen Spielerplatz auf der Flotte. Wenn es keinen offenen Slot finden kann, erstellt es eine neue Spielsitzung.

Flotte mit mehreren Regionen, Warteschlange und benutzerdefiniertem Matchmaker

In diesem Szenario werden Spiele mithilfe von GameLift Amazon-Warteschlangen und einem benutzerdefinierten Matchmaker gebildet, um die ältesten Spieler im Wartepool zusammenzufassen. Es erstellt die folgenden Ressourcen:

  • Ein Thema von Amazon Simple Notification Service, zu dem Amazon Nachrichten GameLift veröffentlicht. Weitere Informationen zu SNS Themen und Benachrichtigungen finden Sie unterRichten Sie eine Eventbenachrichtigung für die Platzierung von Spielsitzungen ein.

  • Eine Lambda-Funktion, die durch die Nachricht aufgerufen wird, die die Platzierungs- und Spielverbindungsdetails übermittelt.

  • Eine Amazon DynamoDB-Tabelle zum Speichern von Platzierungs- und Spielverbindungsdetails. GetGameConnectionAufrufe lesen aus dieser Tabelle und geben die Verbindungsinformationen an den Spielclient zurück.

Finde Flotten mit einer Warteschlange und einem benutzerdefinierten Matchmaker

In diesem Szenario werden mithilfe von GameLift Amazon-Warteschlangen und einem benutzerdefinierten Matchmaker Matches erstellt und drei Flotten konfiguriert. Es erstellt die folgenden Ressourcen:

  • Zwei Spot-Flotten, die unterschiedliche Instance-Typen enthalten, um Stabilität bei Nichtverfügbarkeit von Spot zu gewährleisten.

  • Eine On-Demand-Flotte, die als Backup für die anderen Spot-Flotten dient. Weitere Informationen zur Gestaltung Ihrer Flotten finden Sie unter. Leitfaden zur GameLift Amazon-Flottenplanung

  • Eine GameLift Amazon-Warteschlange, um die Serververfügbarkeit hoch und die Kosten niedrig zu halten. Weitere Informationen und bewährte Methoden zu Warteschlangen finden Sie unterEntwerfen Sie eine Warteschlange für Spielsitzungen.

FlexMatch

In diesem Szenario wird ein verwalteter Matchmaking-Dienst verwendet FlexMatch, um Spieler zusammenzubringen. Weitere Informationen zu FlexMatch finden Sie unter Was ist Amazon GameLift FlexMatch. In diesem Szenario werden die folgenden Ressourcen erstellt:

  • Eine Lambda-Funktion zum Erstellen eines Matchmaking-Tickets, nachdem Anfragen eingegangen sind. StartGame

  • Eine separate Lambda-Funktion zum Abhören von FlexMatch Match-Ereignissen.

Um unnötige Kosten für Sie zu vermeiden AWS-Konto, entfernen Sie die Ressourcen, die durch jedes Szenario erstellt wurden, nachdem Sie sie nicht mehr verwendet haben. Löschen Sie den entsprechenden AWS CloudFormation Stapel.

AWS Anmeldeinformationen aktualisieren

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Das GameLift Amazon-Plugin für Unity benötigt Sicherheitsanmeldedaten, um ein Szenario bereitzustellen. Sie können entweder neue Anmeldeinformationen erstellen oder vorhandene Anmeldeinformationen verwenden.

Weitere Informationen zur Konfiguration von Anmeldeinformationen finden Sie unter Grundlegendes zu Ihren AWS Anmeldeinformationen und zum Abrufen.

So aktualisieren Sie Ihre AWS Anmeldedaten
  1. Wählen Sie in Unity auf der Registerkarte Plugin für Unity die Registerkarte Bereitstellen aus.

  2. Wählen Sie im Bereich Bereitstellen die Option AWS Credentials aus.

  3. Sie können neue AWS Anmeldeinformationen erstellen oder vorhandene Anmeldeinformationen auswählen.

    • Um Anmeldeinformationen zu erstellen, wählen Sie Neues Anmeldeinformationsprofil erstellen aus und geben Sie dann den neuen Profilnamen, die AWS Zugriffsschlüssel-ID, den AWS geheimen Schlüssel und an AWS-Region.

    • Um vorhandene Anmeldeinformationen auszuwählen, wählen Sie Bestehendes Anmeldeinformationsprofil auswählen und wählen Sie dann einen Profilnamen und AWS-Region.

  4. Wählen Sie im Fenster „ AWS Anmeldeinformationen aktualisieren“ die Option „Anmeldedatenprofil aktualisieren“.

Aktualisieren Sie den Konto-Bootstrap

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Der Bootstrap-Speicherort ist ein Amazon S3 S3-Bucket, der während der Bereitstellung verwendet wird. Es wird verwendet, um Spieleserver-Assets und andere Abhängigkeiten zu speichern. Die Region, die AWS-Region Sie für den Bucket auswählen, muss dieselbe Region sein, die Sie für die Szenariobereitstellung verwenden werden.

Weitere Informationen zu Amazon S3 S3-Buckets finden Sie unter Amazon Simple Storage Service-Buckets erstellen, konfigurieren und damit arbeiten.

Um den Bootstrap-Speicherort des Kontos zu aktualisieren
  1. Wählen Sie in Unity auf der Registerkarte Plugin für Unity die Registerkarte Bereitstellen aus.

  2. Wählen Sie im Bereich „Bereitstellen“ die Option „Account Bootstrap aktualisieren“.

  3. Im Fenster Account Bootstrapping wählen Sie einen vorhandenen Amazon S3 S3-Bucket aus oder erstellen einen neuen Amazon S3 S3-Bucket:

    • Um einen vorhandenen Bucket auszuwählen, wählen Sie Bestehenden Amazon S3 S3-Bucket auswählen und Aktualisieren, um Ihre Auswahl zu speichern.

    • Wählen Sie Neuen Amazon S3 S3-Bucket erstellen, um einen neuen Amazon Simple Storage Service-Bucket zu erstellen, und wählen Sie dann eine Richtlinie aus. Die Richtlinie legt fest, wann der Amazon S3 S3-Bucket abläuft. Wählen Sie Create, um den Bucket zu erstellen.

Stellen Sie ein Spielszenario bereit

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Sie können ein Szenario verwenden, um Ihr Spiel mit Amazon zu testen GameLift. Jedes Szenario verwendet eine AWS CloudFormation Vorlage, um einen Stack mit den erforderlichen Ressourcen zu erstellen. Die meisten Szenarien erfordern eine ausführbare Datei und einen Build-Pfad für den Spieleserver. Wenn Sie das Szenario bereitstellen, GameLift kopiert Amazon im Rahmen der Bereitstellung Spielressourcen an den Bootstrap-Speicherort.

Sie müssen AWS Anmeldeinformationen und einen AWS Konto-Bootstrap konfigurieren, um ein Szenario bereitzustellen.

Um ein Szenario bereitzustellen
  1. Wählen Sie in Unity auf der Registerkarte Plugin für Unity die Registerkarte Bereitstellen aus.

  2. Wählen Sie im Bereich „Bereitstellen“ die Option „Bereitstellungsoberfläche öffnen“.

  3. Wählen Sie im Bereitstellungsfenster ein Szenario aus.

  4. Geben Sie einen Namen für das Spiel ein. Dieser Wert muss eindeutig sein. Der Spielname ist Teil des AWS CloudFormation Stack-Namens, wenn Sie das Szenario bereitstellen.

  5. Wählen Sie den Pfad zum Build-Ordner für den Gameserver. Der Pfad zum Build-Ordner verweist auf den Ordner, der die ausführbare Serverdatei und die Abhängigkeiten enthält.

  6. Wählen Sie den Game Server Build .exe-Dateipfad. Der Pfad der ausführbaren Build-Datei verweist auf die ausführbare Datei des Spielservers.

  7. Wählen Sie „Bereitstellung starten“, um mit der Bereitstellung eines Szenarios zu beginnen. Sie können den Status des Updates im Fenster Bereitstellung unter Aktueller Status verfolgen. Die Bereitstellung von Szenarien kann mehrere Minuten dauern.

    Aktualisierung des Status der Szenario-Bereitstellung
  8. Wenn die Bereitstellung des Szenarios abgeschlossen ist, wird der aktuelle Status aktualisiert und enthält nun die Cognito-Client-ID und den APIGateway-Endpunkt, die Sie kopieren und in das Spiel einfügen können.

    Aktualisierung des Status der Szenario-Bereitstellung
  9. Um die Spieleinstellungen zu aktualisieren, wählen Sie im Unity-Menü die Option Gehe zu Client-Verbindungseinstellungen. Dadurch wird auf der rechten Seite des Unity-Bildschirms ein Inspektor-Tab angezeigt.

  10. Deaktivieren Sie den lokalen Testmodus.

  11. Geben Sie den APIGateway-Endpunkt und die Coginito Client-ID ein. Wählen Sie dasselbe aus, das AWS-Region Sie für die Szenariobereitstellung verwendet haben. Anschließend kannst du den Spielclient mithilfe der bereitgestellten Szenario-Ressourcen neu erstellen und ausführen.

Löschen von Ressourcen, die durch das Szenario erstellt wurden

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Um die für das Szenario erstellten Ressourcen zu löschen, löschen Sie den entsprechenden AWS CloudFormation Stack.

Um Ressourcen zu löschen, die durch das Szenario erstellt wurden
  1. Wählen Sie im Fenster GameLift Amazon-Plug-In für Unity Deployment die Option View AWS CloudFormation Console aus, um die AWS CloudFormation Konsole zu öffnen.

  2. Wählen Sie in der AWS CloudFormation Konsole Stacks und dann den Stack aus, der den bei der Bereitstellung angegebenen Spielnamen enthält.

  3. Wähle Löschen, um den Stapel zu löschen. Das Löschen eines Stacks kann einige Minuten dauern. Nachdem der vom Szenario verwendete Stack AWS CloudFormation gelöscht wurde, ändert sich sein Status aufROLLBACK_COMPLETE.

Integrieren Sie Spiele mit Amazon GameLift in Unity

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Integrieren Sie Ihr Unity-Spiel mit Amazon, GameLift indem Sie die folgenden Aufgaben erledigen:

Das folgende Diagramm zeigt ein Beispiel für den Ablauf der Integration eines Spiels. In der Abbildung wird eine Flotte mit dem Spieleserver auf Amazon bereitgestellt GameLift. Der Spielclient kommuniziert mit dem Spieleserver, der mit Amazon kommuniziert. GameLift

Architekturdiagramm der Integration von Unity mit Amazon GameLift.

Importiere ein Beispielspiel und führe es aus

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Das GameLift Amazon-Plugin für Unity enthält ein Beispielspiel, mit dem Sie die Grundlagen der Integration Ihres Spiels mit Amazon erkunden können GameLift. In diesem Abschnitt erstellen Sie den Spielclient und den Spieleserver und testen dann lokal mit Amazon GameLift Local.

Voraussetzungen

Erstelle den Beispiel-Spielserver und führe ihn aus

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Richten Sie die Spielserverdateien des Beispielspiels ein.

  1. Wählen Sie in Unity im Menü Amazon GameLift und dann Beispielspiel importieren aus.

  2. Wählen Sie im Fenster „Beispielspiel importieren“ die Option „Importieren“, um das Spiel, seine Inhalte und Abhängigkeiten zu importieren.

  3. Baue den Spieleserver. Wählen Sie in Unity im Menü Amazon GameLift und dann Apply Windows Sample Server Build Settings oder Apply macOS Sample Server Build Settings aus. Nachdem Sie die Spielserver-Einstellungen konfiguriert haben, kompiliert Unity die Assets neu.

  4. Wählen Sie in Unity im Menü Datei und dann Build. Wählen Sie Server Build, dann Build und dann einen Build-Ordner speziell für Serverdateien.

    Unity erstellt den Beispielspielserver und platziert die ausführbare Datei und die erforderlichen Ressourcen im angegebenen Build-Ordner.

Erstellen Sie den Beispiel-Spielclient und führen Sie ihn aus

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Richten Sie die Spielclient-Dateien des Beispielspiels ein.

  1. Wählen Sie in Unity im Menü Amazon GameLift und dann Apply Windows Sample Client Build Settings oder Apply macOS Sample Client Build Settings aus. Nachdem die Einstellungen des Spielclients konfiguriert wurden, kompiliert Unity die Assets neu.

  2. Wählen Sie in Unity im Menü die Option Gehe zu Client-Einstellungen aus. Dadurch wird auf der rechten Seite des Unity-Bildschirms ein Inspektor-Tab angezeigt. Wählen Sie auf der Registerkarte GameLift Amazon-Client-Einstellungen die Option Lokaler Testmodus aus.

  3. Baue den Spielclient. Wählen Sie in Unity im Menü die Option Datei aus. Vergewissern Sie sich, dass Server Build nicht aktiviert ist, wählen Sie Build und wählen Sie dann einen Build-Ordner speziell für Client-Dateien aus.

    Unity erstellt den Beispiel-Spielclient und platziert die ausführbare Datei und die erforderlichen Ressourcen im angegebenen Client-Build-Ordner.

  4. Sie haben den Spielserver und den Client noch nicht erstellt. In den nächsten Schritten führst du das Spiel aus und siehst, wie es mit Amazon GameLift interagiert.

Testen Sie das Beispielspiel lokal

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Führen Sie das Beispielspiel aus, das Sie mit Amazon GameLift Local importiert haben.

  1. Starte den Spieleserver. Wählen Sie in Unity auf der Registerkarte Plugin für Unity die Registerkarte Bereitstellen aus.

  2. Wählen Sie im Bereich Test die Option Open Local Test UI aus.

  3. Geben Sie im Fenster Lokales Testen einen Pfad für die EXE-Datei für den Game Server an. Der Pfad muss den Namen der ausführbaren Datei enthalten. z. B. C:/MyGame/GameServer/MyGameServer.exe.

  4. Wählen Sie Deploy and Run. Das Plugin für Unity startet den Spieleserver und öffnet ein Amazon GameLift Local-Protokollfenster. Das Fenster enthält Protokollnachrichten, einschließlich Nachrichten, die zwischen dem Spieleserver und Amazon GameLift Local gesendet wurden.

  5. Starte den Spielclient. Suchen Sie mit dem Beispiel-Spielclient den Build-Speicherort und wählen Sie die ausführbare Datei aus.

  6. Geben Sie im GameLift Amazon-Beispielspiel eine E-Mail-Adresse und ein Passwort ein und wählen Sie dann Anmelden. Die E-Mail-Adresse und das Passwort wurden nicht validiert oder verwendet.

  7. Wählen Sie im GameLift Amazon-Beispielspiel die Option Start aus. Der Spielclient sucht nach einer Spielsitzung. Wenn er keine Sitzung finden kann, erstellt er eine. Der Spielclient startet dann die Spielsitzung. Sie können die Spielaktivitäten in den Protokollen sehen.

... 2021-09-15T19:55:3495 PID:20728 Log :) GAMELIFT AWAKE 2021-09-15T19:55:3512 PID:20728 Log :) I AM SERVER 2021-09-15T19:55:3514 PID:20728 Log :) GAMELIFT StartServer at port 33430. 2021-09-15T19:55:3514 PID:20728 Log :) SDK VERSION: 4.0.2 2021-09-15T19:55:3556 PID:20728 Log :) SERVER IS IN A GAMELIFT FLEET 2021-09-15T19:55:3577 PID:20728 Log :) PROCESSREADY SUCCESS. 2021-09-15T19:55:3577 PID:20728 Log :) GAMELIFT HEALTH CHECK REQUESTED (HEALTHY) ... 2021-09-15T19:55:3634 PID:20728 Log :) GAMELOGIC AWAKE 2021-09-15T19:55:3635 PID:20728 Log :) GAMELOGIC START 2021-09-15T19:55:3636 PID:20728 Log :) LISTENING ON PORT 33430 2021-09-15T19:55:3636 PID:20728 Log SERVER: Frame: 0 HELLO WORLD! ... 2021-09-15T19:56:2464 PID:20728 Log :) GAMELIFT SESSION REQUESTED 2021-09-15T19:56:2468 PID:20728 Log :) GAME SESSION ACTIVATED 2021-09-15T19:56:3578 PID:20728 Log :) GAMELIFT HEALTH CHECK REQUESTED (HEALTHY) 2021-09-15T19:57:3584 PID:20728 Log :) GAMELIFT HEALTH CHECK REQUESTED (HEALTHY) 2021-09-15T19:58:0334 PID:20728 Log SERVER: Frame: 8695 Connection accepted: playerIdx 0 joined 2021-09-15T19:58:0335 PID:20728 Log SERVER: Frame: 8696 Connection accepted: playerIdx 1 joined 2021-09-15T19:58:0338 PID:20728 Log SERVER: Frame: 8697 Msg rcvd from playerIdx 0 Msg: CONNECT: server IP localhost 2021-09-15T19:58:0338 PID:20728 Log SERVER: Frame: 8697 Msg rcvd from player 0:CONNECT: server IP localhost 2021-09-15T19:58:0339 PID:20728 Log SERVER: Frame: 8697 CONNECT: player index 0 2021-09-15T19:58:0339 PID:20728 Log SERVER: Frame: 8697 Msg rcvd from playerIdx 1 Msg: CONNECT: server IP localhost 2021-09-15T19:58:0339 PID:20728 Log SERVER: Frame: 8697 Msg rcvd from player 1:CONNECT: server IP localhost 2021-09-15T19:58:0339 PID:20728 Log SERVER: Frame: 8697 CONNECT: player index 1
12:55:26,000 INFO || - [SocketIOServer] main - Session store / pubsub factory used: MemoryStoreFactory (local session store only) 12:55:28,092 WARN || - [ServerBootstrap] main - Unknown channel option 'SO_LINGER' for channel '[id: 0xe23d0a14]' 12:55:28,101 INFO || - [SocketIOServer] nioEventLoopGroup-2-1 - SocketIO server started at port: 5757 12:55:28,101 INFO || - [SDKConnection] main - GameLift SDK server (communicates with your game server) has started on http://localhost:5757 12:55:28,120 INFO || - [SdkWebSocketServer] WebSocketSelector-20 - WebSocket Server started on address localhost/127.0.0.1:5759 12:55:28,166 INFO || - [StandAloneServer] main - GameLift Client server (listens for GameLift client APIs) has started on http://localhost:8080 12:55:28,179 INFO || - [StandAloneServer] main - GameLift server sdk http listener has started on http://localhost:5758 12:55:35,453 INFO || - [SdkWebSocketServer] WebSocketWorker-12 - onOpen socket: /?pID=20728&sdkVersion=4.0.2&sdkLanguage=CSharp and handshake /?pID=20728&sdkVersion=4.0.2&sdkLanguage=CSharp 12:55:35,551 INFO || - [HostProcessManager] WebSocketWorker-12 - client connected with pID 20728 12:55:35,718 INFO || - [GameLiftSdkHttpHandler] GameLiftSdkHttpHandler-thread-0 - GameLift API to use: ProcessReady for pId 20728 12:55:35,718 INFO || - [ProcessReadyHandler] GameLiftSdkHttpHandler-thread-0 - Received API call for processReady from 20728 12:55:35,738 INFO || - [ProcessReadyHandler] GameLiftSdkHttpHandler-thread-0 - onProcessReady data: port: 33430 12:55:35,739 INFO || - [HostProcessManager] GameLiftSdkHttpHandler-thread-0 - Registered new process with pId 20728 12:55:35,789 INFO || - [GameLiftSdkHttpHandler] GameLiftSdkHttpHandler-thread-0 - GameLift API to use: ReportHealth for pId 20728 12:55:35,790 INFO || - [ReportHealthHandler] GameLiftSdkHttpHandler-thread-0 - Received API call for ReportHealth from 20728 12:55:35,794 INFO || - [ReportHealthHandler] GameLiftSdkHttpHandler-thread-0 - ReportHealth data: healthStatus: true 12:56:24,098 INFO || - [GameLiftHttpHandler] Thread-12 - API to use: GameLift.DescribeGameSessions 12:56:24,119 INFO || - [DescribeGameSessionsDispatcher] Thread-12 - Received API call to describe game sessions with input: {"FleetId":"fleet-123"} 12:56:24,241 INFO || - [GameLiftHttpHandler] Thread-12 - API to use: GameLift.CreateGameSession 12:56:24,242 INFO || - [CreateGameSessionDispatcher] Thread-12 - Received API call to create game session with input: {"FleetId":"fleet-123","MaximumPlayerSessionCount":4} 12:56:24,265 INFO || - [HostProcessManager] Thread-12 - Reserved process: 20728 for gameSession: arn:aws:gamelift:local::gamesession/fleet-123/gsess-59f6cc44-4361-42f5-95b5-fdb5825c0f3d 12:56:24,266 INFO || - [WebSocketInvoker] Thread-12 - StartGameSessionRequest: gameSessionId=arn:aws:gamelift:local::gamesession/fleet-123/gsess-59f6cc44-4361-42f5-95b5-fdb5825c0f3d, fleetId=fleet-123, gameSessionName=null, maxPlayers=4, properties=[], ipAddress=127.0.0.1, port=33430, gameSessionData?=false, matchmakerData?=false, dnsName=localhost 12:56:24,564 INFO || - [CreateGameSessionDispatcher] Thread-12 - GameSession with id: arn:aws:gamelift:local::gamesession/fleet-123/gsess-59f6cc44-4361-42f5-95b5-fdb5825c0f3d created 12:56:24,585 INFO || - [GameLiftHttpHandler] Thread-12 - API to use: GameLift.DescribeGameSessions 12:56:24,585 INFO || - [DescribeGameSessionsDispatcher] Thread-12 - Received API call to describe game sessions with input: {"FleetId":"fleet-123"} 12:56:24,660 INFO || - [GameLiftSdkHttpHandler] GameLiftSdkHttpHandler-thread-0 - GameLift API to use: GameSessionActivate for pId 20728 12:56:24,661 INFO || - [GameSessionActivateHandler] GameLiftSdkHttpHandler-thread-0 - Received API call for GameSessionActivate from 20728 12:56:24,678 INFO || - [GameSessionActivateHandler] GameLiftSdkHttpHandler-thread-0 - GameSessionActivate data: gameSessionId: "arn:aws:gamelift:local::gamesession/fleet-123/gsess-59f6cc44-4361-42f5-95b5-fdb5825c0f3d"

Serverprozess herunterfahren

Anmerkung

Dieses Thema bezieht sich auf das GameLift Amazon-Plugin für Unity Version 1.0.0, das Server SDK 4.x oder früher verwendet.

Wenn Sie mit Ihrem Beispielspiel fertig sind, fahren Sie den Server in Unity herunter.

  1. Wählen Sie im Spielclient „Beenden“ oder schließen Sie das Fenster, um den Spielclient zu beenden.

  2. Wählen Sie in Unity im Fenster Lokales Testen die Option Stopp oder schließen Sie das Spielserverfenster, um den Server zu beenden.