Amazon GameLift Server SDK (Go)-Referenz: Datentypen - 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.

Amazon GameLift Server SDK (Go)-Referenz: Datentypen

Sie können diese Amazon- GameLift Go-Server-SDK-Referenz verwenden, um Ihr Multiplayer-Spiel für die Verwendung mit Amazon vorzubereiten GameLift. Weitere Informationen zum Integrationsprozess finden Sie unter Füge Amazon GameLift zu deinem Spieleserver hinzu.

LogParameters

Ein Objekt, das Dateien identifiziert, die während einer Spielsitzung generiert wurden und die Amazon nach dem Ende der Spielsitzung GameLift hochladen und speichern soll. Der Spieleserver stellt Amazon GameLift als Teil eines ProcessParameters Objekts in einem ProcessReady() Aufruf LogParameters zur Verfügung.

Eigenschaften

Beschreibung
LogPaths

Die Liste der Verzeichnispfade zu Spielserver-Protokolldateien, die Amazon für GameLift den zukünftigen Zugriff speichern soll. Der Serverprozess generiert diese Dateien während jeder Spielsitzung. Sie definieren Dateipfade und -namen auf Ihrem Spieleserver und speichern sie im Stammspiel-Build-Verzeichnis.

Die Protokollpfade müssen absolute Werte sein. Wenn Ihr Spiele-Build beispielsweise Spielsitzungsprotokolle in einem Pfad wie speichertMyGame\sessionLogs\, befindet sich der Pfad c:\game\MyGame\sessionLogs auf einer Windows-Instance.

Typ: []string

Required: No

ProcessParameters

Ein Objekt, das die Kommunikation zwischen einem Serverprozess und Amazon beschreibt GameLift. Der Serverprozess stellt diese Informationen Amazon GameLift mit einem Aufruf von zur VerfügungProcessReady().

Eigenschaften

Beschreibung
LogParameters Ein Objekt mit Verzeichnispfaden zu Dateien, die während einer Spielsitzung generiert werden. Amazon GameLift kopiert und speichert die Dateien für den zukünftigen Zugriff.

Typ: LogParameters

Required: No

OnHealthCheck Die Rückruffunktion, die Amazon GameLift aufruft, um einen Zustandsstatusbericht vom Serverprozess anzufordern. Amazon GameLift ruft diese Funktion alle 60 Sekunden auf und wartet 60 Sekunden auf eine Antwort. Der Serverprozess gibt zurückTRUE, wenn er fehlerfrei ist, FALSE wenn er nicht fehlerfrei ist. Wenn keine Antwort zurückgegeben wird, GameLift zeichnet Amazon den Serverprozess als nicht fehlerfrei auf.

Typ: OnHealthCheck func() bool

Required: No

OnProcessTerminate Die Callback-Funktion, die Amazon GameLift aufruft, um das Herunterfahren des Serverprozesses zu erzwingen. Nach dem Aufruf dieser Funktion GameLift wartet Amazon 5 Minuten, bis der Serverprozess heruntergefahren und mit einem -ProcessEnding()Aufruf geantwortet hat, bevor der Serverprozess heruntergefahren wird.

Typ: OnProcessTerminate func()

Erforderlich: Ja

OnStartGameSession Die Callback-Funktion, die Amazon GameLift aufruft, um ein aktualisiertes Spielsitzungsobjekt an den Serverprozess zu übergeben. Amazon GameLift ruft diese Funktion auf, wenn eine Match-Backfill-Anforderung verarbeitet wurde, um aktualisierte Matchmaker-Daten bereitzustellen. Es übergibt ein GameSession Objekt, eine Statusaktualisierung (updateReason) und die Match-Backfill-Ticket-ID.

Typ: OnStartGameSession func (model.GameSession )

Erforderlich: Ja

OnUpdateGameSession Die Callback-Funktion, die Amazon GameLift aufruft, um aktualisierte Spielsitzungsinformationen an den Serverprozess zu übergeben. Amazon GameLift ruft diese Funktion nach der Verarbeitung einer Match-Backfill-Anforderung auf, um aktualisierte Matchmaker-Daten bereitzustellen.

Typ: OnUpdateGameSession func (model.UpdateGameSession)

Required: No

Port Die Portnummer, die der Serverprozess auf neue Player-Verbindungen überwacht. Der Wert muss innerhalb des Port-Bereich liegen, der für eine Flotte definiert wurde, die diesen Spiel-Server-Build verwendet. Diese Portnummer ist in Spielsitzungs- und Spielersitzungsobjekten enthalten, die die Spielsitzungen bei der Verbindung mit einem Serverprozess verwenden.

Typ: int

Erforderlich: Ja

UpdateGameSession

Die aktualisiert ein Spielsitzungsobjekt, das den Grund für die Aktualisierung der Spielsitzung und die zugehörige Backfill-Ticket-ID enthält, wenn Backfill verwendet wird, um Spielersitzungen in der Spielsitzung zu füllen.

Eigenschaften Beschreibung
GameSession Ein von der Amazon GameLift API definiertes GameSession Objekt. Das -GameSessionObjekt enthält Eigenschaften, die eine Spielsitzung beschreiben.

Typ: GameSession GameSession()

Erforderlich: Ja

UpdateReason Der Grund, warum die Spielsitzung aktualisiert wird.

Typ: UpdateReason UpdateReason()

Erforderlich: Ja

BackfillTicketId Die ID des Backfill-Tickets, das versucht, die Spielsitzung zu aktualisieren.

Typ: String

Required: No

GameSession

Die Details einer Spielsitzung.

Eigenschaften Beschreibung
GameSessionId

Eine eindeutige Kennung für die Spielsitzung. Ein Amazon-Ressourcenname (ARN) für Spielsitzungen hat das folgende Format: arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token>.

Typ: String

Required: No

Name

Eine beschreibende Bezeichnung der Spielsitzung.

Typ: String

Required: No

FleetId

Eine eindeutige Kennung für die Flotte, auf der die Spielsitzung ausgeführt wird.

Typ: String

Required: No

MaximumPlayerSessionCount

Die maximale Anzahl von Spielerverbindungen zur Spielsitzung.

Typ: Integer

Required: No

Port

Die Portnummer für die Spielsitzung. Um eine Verbindung zu einem Amazon- GameLift Spielserver herzustellen, benötigt eine App sowohl die IP-Adresse als auch die Portnummer.

Typ: Integer

Required: No

IpAddress

Die IP-Adresse der Spielsitzung. Um eine Verbindung zu einem Amazon- GameLift Spielserver herzustellen, benötigt eine App sowohl die IP-Adresse als auch die Portnummer.

Typ: String

Required: No

GameSessionData

Eine Reihe von benutzerdefinierten Spielsitzungseigenschaften, die als einzelner Zeichenfolgenwert formatiert sind.

Typ: String

Required: No

MatchmakerData

Die Informationen über den Matchmaking-Prozess, der zum Erstellen der Spielsitzung verwendet wurde, in JSON-Syntax, formatiert als Zeichenfolge. Zusätzlich zur verwendeten Matchmaking-Konfiguration enthält sie Daten zu allen Spielern, die dem Match zugewiesen sind, einschließlich Spielerattributen und Teamzuweisungen.

Typ: String

Required: No

GameProperties

Eine Reihe von benutzerdefinierten Eigenschaften für eine Spielsitzung, formatiert als Schlüssel-Wert-Paare. Diese Eigenschaften werden mit einer Anfrage zum Starten einer neuen Spielsitzung übergeben.

Typ: map[string] string

Required: No

DnsName

Die DNS-ID, die der Instance zugewiesen ist, die die Spielsitzung ausführt. Werte haben das folgende Format:

  • TLS-fähige Flotten: <unique identifier>.<region identifier>.amazongamelift.com.

  • Nicht TLS-fähige Flotten: ec2-<unique identifier>.compute.amazonaws.com.

Wenn Sie eine Verbindung zu einer Spielsitzung herstellen, die auf einer TLS-fähigen Flotte ausgeführt wird, müssen Sie den DNS-Namen verwenden, nicht die IP-Adresse.

Typ: String

Required: No

ServerParameters

Informationen, die verwendet werden, um die Verbindung zwischen einem Amazon GameLift Anywhere-Server und dem Amazon- GameLift Service aufrechtzuerhalten. Diese Informationen werden verwendet, wenn neue Serverprozesse mit gestartet werdenInitSDK(). Verwenden Sie für Server, die auf von Amazon GameLift verwalteten EC2-Instances gehostet werden, ein leeres Objekt.

Eigenschaften Beschreibung
WebSocketURL

Amazon GameLiftServerSdkEndpoint GameLift gibt zurück, wenn Sie RegisterCompute für eine Amazon GameLift Anywhere-Rechenressource verwenden.

Typ: string

Erforderlich: Ja

ProcessID

Eine eindeutige Kennung, die für den Serverprozess registriert ist, der Ihr Spiel hostet.

Typ: string

Erforderlich: Ja

HostID

Die eindeutige Kennung der Rechenressource, die den neuen Serverprozess hostet.

Die HostID wird ComputeName verwendet, als Sie Ihre Datenverarbeitung registriert haben. Weitere Informationen finden Sie unter RegisterCompute.

Typ: string

Erforderlich: Ja

FleetID Die eindeutige Kennung der Flotte, bei der die Datenverarbeitung registriert ist. Weitere Informationen finden Sie unter RegisterCompute.

Typ: string

Erforderlich: Ja

AuthToken Das von Amazon generierte Authentifizierungstoken GameLift , das Ihren Server bei Amazon authentifiziert GameLift. Weitere Informationen finden Sie unter GetComputeAuthToken.

Typ: string

Erforderlich: Ja

StartMatchBackfillRequest

Informationen, die zum Erstellen einer Matchmaking-Backfill-Anforderung verwendet werden. Der Spieleserver teilt Amazon diese Informationen GameLift in einem StartMatchBackfill() Anruf mit.

Eigenschaften Beschreibung
GameSessionArn

Die eindeutige Kennung der Spielsitzung. Die API-Operation gibt die Kennung im ARN-Format GetGameSessionId zurück.

Typ: String

Erforderlich: Ja

MatchmakingConfigurationArn

Die eindeutige Kennung (in Form eines ARN), die der Matchmaker für diese Anforderung verwenden soll. Der Matchmaker-ARN für die ursprüngliche Spielsitzung befindet sich im Spielsitzungsobjekt in der Matchmaker-Dateneigenschaft. Weitere Informationen zu Matchmaker-Daten finden Sie unter Arbeiten mit Matchmaker-Daten.

Typ: String

Erforderlich: Ja

Players

Ein Datensatz, der alle Spieler darstellt, die sich derzeit in der Spielsitzung befinden. Der Matchmaker verwendet diese Informationen, um nach neuen Spielern zu suchen, die zu den aktuellen Spielern passen.

Typ: []model.Player

Erforderlich: Ja

TicketId

Die eindeutige Kennung für ein Matchmaking- oder Match-Backfill-Anforderungsticket. Wenn Sie keinen Wert angeben, GameLift generiert Amazon einen. Verwenden Sie diesen Bezeichner, um den Status des Backfill-Tickets zu verfolgen oder die Anfrage bei Bedarf abzubrechen.

Typ: String

Required: No

Player

Das Objekt, das einen Spieler im Matchmaking darstellt. Wenn eine Matchmaking-Anfrage beginnt, verfügt ein Spieler über eine Spieler-ID, Attribute und möglicherweise Latenzdaten. Amazon GameLift fügt Teaminformationen hinzu, nachdem ein Match durchgeführt wurde.

Eigenschaften Beschreibung
LatencyInMS

Eine Reihe von Werten, die in Millisekunden ausgedrückt werden und die Latenz angeben, die ein Spieler erfährt, wenn er eine Verbindung zu einem Standort herstellt.

Wenn diese Eigenschaft verwendet wird, wird der Spieler nur mit den aufgelisteten Standorten abgeglichen. Wenn ein Matchmaker eine Regel hat, die die Latenz der Spieler auswertet, müssen die Spieler die zu vergleichende Latenz melden.

Typ: map[string] int

Required: No

PlayerAttributes

Eine Sammlung von Schlüssel-Wert-Paaren, die Spielerinformationen für die Verwendung im Matchmaking enthalten. Spielerattributschlüssel müssen mit dem in einem Matchmaking-Regelsatz PlayerAttributes verwendeten übereinstimmen.

Weitere Informationen zu Spielerattributen finden Sie unter AttributeValue.

Typ: map[string] AttributeValue

Required: No

PlayerId

Eine eindeutige Kennung für einen Spieler.

Typ: String

Required: No

Team

Der Name des Teams, dem der Spieler in einem Spiel zugewiesen ist. Sie definieren den Teamnamen im Matchmaking-Regelsatz.

Typ: String

Required: No

DescribePlayerSessionsRequest

Ein Objekt, das angibt, welche Player-Sitzungen abgerufen werden sollen. Der Serverprozess stellt diese Informationen mit einem DescribePlayerSessions() Aufruf von Amazon bereit GameLift.

Eigenschaften Beschreibung
GameSessionID

Eine eindeutige Spielsitzungs-ID. Verwenden Sie diesen Parameter, um alle Spielersitzungen für die angegebene Spielsitzung anzufragen.

Das ID-Format für Spielsitzungen ist arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>. ist GameSessionID eine benutzerdefinierte ID-Zeichenfolge oder eine generierte Zeichenfolge.

Typ: String

Required: No

PlayerSessionID

Die eindeutige Kennung für eine Player-Sitzung. Verwenden Sie diesen Parameter, um eine einzelne spezifische Player-Sitzung anzufordern.

Typ: String

Required: No

PlayerID

Die eindeutige Kennung für einen Spieler. Verwenden Sie diesen Parameter, um alle Player-Sitzungen für einen bestimmten Player anzufordern. Siehe Generieren Sie Spieler-IDs.

Typ: String

Required: No

PlayerSessionStatusFilter

Der Status der Player-Sitzung, nach dem die Ergebnisse gefiltert werden sollen. Zu den möglichen Player-Sitzungsstatus gehören:

  • RESERVED – Die Player-Sitzungsanforderung wurde empfangen, aber der Player hat keine Verbindung zum Serverprozess hergestellt oder validiert.

  • ACTIVE – Der Player wurde vom Serverprozess validiert und ist verbunden.

  • COMPLETED – Die Player-Verbindung wurde unterbrochen.

  • TIMEDOUT – Eine Player-Sitzungsanforderung wurde empfangen, aber der Player hat keine Verbindung hergestellt oder wurde nicht innerhalb des Timeout-Limits (60 Sekunden) validiert.

Typ: String

Required: No

NextToken

Das Token, das den Beginn der nächsten Ergebnisseite angibt. Um den Anfang der Ergebnismenge anzugeben, geben Sie keinen Wert an. Wenn Sie eine Player-Sitzungs-ID angeben, wird dieser Parameter ignoriert.

Typ: String

Required: No

Limit

Die maximale Anzahl der auszugebenden Ergebnisse. Wenn Sie eine Player-Sitzungs-ID angeben, wird dieser Parameter ignoriert.

Typ: int

Required: No

StopMatchBackfillRequest

Informationen, die zum Abbrechen einer Matchmaking-Backfill-Anforderung verwendet werden. Der Spieleserver teilt diese Informationen dem Amazon- GameLift Service in einem StopMatchBackfill() Anruf mit.

Eigenschaften Beschreibung
GameSessionArn

Die eindeutige Spielsitzungs-ID der abgebrochenen Anfrage.

Typ: string

Required: No

MatchmakingConfigurationArn

Die eindeutige Kennung des Matchmakers, an den diese Anforderung gesendet wurde.

Typ: string

Required: No

TicketId

Die eindeutige Kennung des zu stornierenden Backfill-Anforderungstickets.

Typ: string

Required: No

GetFleetRoleCredentialsRequest

Die Rollenanmeldeinformationen, die den eingeschränkten Zugriff auf Ihre AWS Ressourcen auf den Spieleserver erweitern. Weitere Informationen finden Sie unter Einrichten einer IAM-Servicerolle für Amazon GameLift.

Eigenschaften Beschreibung
RoleArn Der ARN der Servicerolle, die den eingeschränkten Zugriff auf Ihre -AWSRessourcen erweitert.

Typ: string

Erforderlich: Ja

RoleSessionName Der Name der Sitzung, die die Verwendung der Rollenanmeldeinformationen beschreibt.

Typ: string

Erforderlich: Ja