Server SDK (Unreal) per Amazon GameLift Servers -- Azioni - Amazon GameLift Servers

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Server SDK (Unreal) per Amazon GameLift Servers -- Azioni

Usa l'SDK del server per Unreal per integrare il tuo gioco multiplayer con cui ospitare. Amazon GameLift Servers Per indicazioni sul processo di integrazione, consulta. Aggiungi Amazon GameLift Servers al tuo server di gioco con l'SDK del server

Nota

Questo riferimento si riferisce a una versione precedente del server SDK forAmazon GameLift Servers. Per la versione più recente, consulta Server C++ (Unreal) SDK 5.x per -- Azioni Amazon GameLift Servers.

Questa API è definita in GameLiftServerSDK.h e GameLiftServerSDKModels.h.

Per configurare il plugin Unreal Engine e vedere esempi di codice Integrazione Amazon GameLift Servers in un progetto Unreal Engine.

Server SDK (Unreal) perAmazon GameLift Servers: tipi di dati

AcceptPlayerSession()

Notifica al Amazon GameLift Servers servizio che un giocatore con l'ID di sessione del giocatore specificato si è connesso al processo del server e deve essere convalidato. Amazon GameLift Serversverifica che l'ID della sessione del giocatore sia valido, ovvero che l'ID giocatore abbia riservato uno slot nella sessione di gioco. Dopo la convalida, Amazon GameLift Servers modifica lo stato dello slot giocatore da RESERVED (RISERVATO) ad ACTIVE (ATTIVO).

Sintassi

FGameLiftGenericOutcome AcceptPlayerSession(const FString& playerSessionId)

Parameters

playerSessionId

ID univoco rilasciato dal Amazon GameLift Servers servizio in risposta a una chiamata all'azione dell'API AWS SDKAmazon GameLift Servers. CreatePlayerSession Il client di gioco fa riferimento a questo ID durante la connessione al processo del server.

Tipo: FString

Obbligatorio: sì

Valore restituito

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

ActivateGameSession()

Notifica al servizio Amazon GameLift Servers che il processo del server ha attivato una sessione di gioco ed è pronto per ricevere le connessioni dei giocatori. Questa operazione deve essere chiamata come parte della funzione di callback onStartGameSession(), dopo il completamento dell'inizializzazione di tutte le sessioni di gioco.

Sintassi

FGameLiftGenericOutcome ActivateGameSession()

Parameters

Questa operazione non prevede parametri.

Valore restituito

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

DescribePlayerSessions()

Recupera i dati della sessione giocatore, tra cui le impostazioni, i metadati della sessione e i dati dei giocatori. Utilizza questa operazione per ottenere le informazioni per una singola sessione giocatore, per tutte le sessioni giocatore in una sessione di gioco o per tutte le sessioni giocatore associate a un singolo ID giocatore.

Sintassi

FGameLiftDescribePlayerSessionsOutcome DescribePlayerSessions(const FGameLiftDescribePlayerSessionsRequest &describePlayerSessionsRequest)

Parameters

describePlayerSessionsRichiesta

Un oggetto FDescribePlayerSessionsRequest che descrive le sessioni giocatore da recuperare.

Obbligatorio: sì

Valore restituito

Se l'esito è positivo, restituisce un oggetto FDescribePlayerSessionsRequest contenente un set di oggetti di sessione giocatore corrispondente ai parametri della richiesta. Gli oggetti della sessione Player hanno una struttura identica al tipo di PlayerSessiondati dell'Amazon GameLift ServersAPI AWS SDK.

GetGameSessionId()

Recupera l'ID della sessione di gioco attualmente ospitata dal processo del server, se il processo del server è attivo.

Sintassi

FGameLiftStringOutcome GetGameSessionId()

Parameters

Questa operazione non prevede parametri.

Valore restituito

Se l'esito è positivo, l'ID della sessione di gioco verrà restituito come oggetto FGameLiftStringOutcome. Se l'esito è negativo, verrà restituito un messaggio di errore.

GetInstanceCertificate()

Recupera la posizione del file di un certificato TLS con codifica pem associato alla flotta e alle relative istanze. AWS Certificate Manager genera questo certificato quando crei un nuovo parco veicoli con la configurazione del certificato impostata su GENERATED. Utilizza questo certificato per stabilire una connessione sicura con un client di gioco e per crittografare la comunicazione client/server.

Sintassi

FGameLiftGetInstanceCertificateOutcome GetInstanceCertificate()

Parameters

Questa operazione non prevede parametri.

Valore restituito

In caso di successo, restituisce un GetInstanceCertificateOutcome oggetto contenente la posizione del file di certificato TLS e della catena di certificati della flotta, che sono archiviati nell'istanza. Nell'istanza viene inoltre archiviato un file di certificato radice, estratto dalla catena di certificati. Se l'esito è negativo, verrà restituito un messaggio di errore.

Per ulteriori informazioni sul certificato e sui dati della catena di certificati, consulta GetCertificate Response Elements nell' AWS Certificate Manager API Reference.

GetSdkVersion()

Restituisce il numero di versione corrente dell'SDK integrato nel processo del server.

Sintassi

FGameLiftStringOutcome GetSdkVersion();

Parameters

Questa operazione non prevede parametri.

Valore restituito

Se l'esito è positivo, restituisce la versione corrente dell'SDK come oggetto FGameLiftStringOutcome. La stringa restituita include solo il numero di versione (ad esempio «3.1.5"). Se l'esito è negativo, verrà restituito un messaggio di errore.

Esempio

Aws::GameLift::AwsStringOutcome SdkVersionOutcome = Aws::GameLift::Server::GetSdkVersion();

InitSDK()

Inizializza l'SDK Amazon GameLift Servers. Questo metodo deve essere chiamato all'avvio, prima che avvenga qualsiasi altra inizializzazione correlata a Amazon GameLift Servers.

Sintassi

FGameLiftGenericOutcome InitSDK()

Parameters

Questa operazione non prevede parametri.

Valore restituito

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

ProcessEnding()

Avvisa il servizio Amazon GameLift Servers che il processo del server è in fase di arresto. Questo metodo deve essere richiamato dopo tutte le altre attività di pulizia, tra cui l'arresto di tutte le sessioni di gioco attive. Questo metodo deve uscire con il codice 0; un codice di uscita diverso da zero genera un messaggio di evento che indica che il processo non è terminato correttamente.

Sintassi

FGameLiftGenericOutcome ProcessEnding()

Parameters

Questa operazione non prevede parametri.

Valore restituito

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

ProcessReady()

Notifica al servizio Amazon GameLift Servers che il processo del server è pronto per l'hosting delle sessioni di gioco. Chiama questo metodo dopo aver richiamato InitSDK() e completato con successo le attività di configurazione necessarie prima che il processo del server possa ospitare una sessione di gioco. Questo metodo deve essere chiamato solo una volta per processo.

Sintassi

FGameLiftGenericOutcome ProcessReady(FProcessParameters &processParameters)

Parameters

FProcessParametri

Un oggetto FProcessParametri che comunica le informazioni seguenti sul processo del server:

  • Nomi di metodi di callback, implementati nel codice del server di gioco, che il servizio Amazon GameLift Servers richiama per comunicare con il processo del server.

  • Numero di porta sulla quale è in ascolto il processo del server.

  • Percorso verso qualsiasi file specifico di una sessione di gioco che Amazon GameLift Servers deve acquisire e archiviare.

Obbligatorio: sì

Valore restituito

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.

Esempio

Consulta il codice di esempio nella sezione relativa all'utilizzo del plug-in Unreal Engine.

RemovePlayerSession()

Notifica al servizio Amazon GameLift Servers che un giocatore con l'ID della sessione giocatore specificato si è disconnesso dal processo del server. In risposta, Amazon GameLift Servers modifica lo slot giocatore su disponibile, consentendone l'assegnazione a un nuovo giocatore.

Sintassi

FGameLiftGenericOutcome RemovePlayerSession(const FString& playerSessionId)

Parameters

playerSessionId

ID univoco rilasciato dal Amazon GameLift Servers servizio in risposta a una chiamata all'azione CreatePlayerSessiondell'Amazon GameLift ServersAPI AWS SDK. Il client di gioco fa riferimento a questo ID durante la connessione al processo del server.

Tipo: FString

Obbligatorio: sì

Valore restituito

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

StartMatchBackfill()

Invia una richiesta per trovare nuovi giocatori per gli slot aperti in una sessione di gioco creata con FlexMatch. Vedi anche l'azione AWS SDK StartMatchBackfill(). Con questa operazione, è possibile avviare le richieste di backfill degli abbinamenti da un processo del server di gioco che ospita la sessione di gioco. Scopri di più sulla funzione di FlexMatchriempimento.

Questa operazione è asincrona. Se i nuovi giocatori sono stati abbinati in modo corretto, il servizio Amazon GameLift Servers invia i dati del matchmaker aggiornati tramite la funzione di callback OnUpdateGameSession().

Un processo del server può avere un solo backfill degli abbinamenti attivo alla volta. Per inviare una nuova richiesta, chiama prima StopMatchBackfill() per annullare la richiesta originale.

Sintassi

FGameLiftStringOutcome StartMatchBackfill (FStartMatchBackfillRequest &startBackfillRequest);

Parameters

FStartMatchBackfillRequest

Un oggetto FStartMatchBackfillRequest che comunica le informazioni seguenti:

  • ID del ticket da assegnare alla richiesta di backfill. Questa informazione è facoltativa; se l'ID non viene fornito, Amazon GameLift Servers ne creerà automaticamente uno.

  • Matchmaker a cui inviare la richiesta. L'ARN di configurazione completo è obbligatorio. Questo valore può essere acquisito dai dati del matchmaker della sessione di gioco.

  • ID della sessione di gioco che è in fase di backfilling.

  • Dati di abbinamento disponibili per i giocatori correnti della sessione di gioco.

Obbligatorio: sì

Valore restituito

Se completato, restituisce il ticket di backfill degli abbinamenti come oggetto FGameLiftStringOutcome. Se l'esito è negativo, verrà restituito un messaggio di errore. Lo stato del ticket può essere monitorato utilizzando l'azione AWS DescribeMatchmaking SDK ().

StopMatchBackfill()

Annulla una richiesta di backfill degli abbinamenti attiva creata con StartMatchBackfill(). Vedi anche l'azione AWS StopMatchmaking SDK (). Scopri di più sulla funzione di FlexMatchriempimento.

Sintassi

FGameLiftGenericOutcome StopMatchBackfill (FStopMatchBackfillRequest &stopBackfillRequest);

Parameters

StopMatchBackfillRequest

Un oggetto FStopMatchBackfillRequest che identifica il ticket di abbinamento da annullare:

  • ID del ticket assegnato alla richiesta di backfill in fase di annullamento

  • matchmaker a cui è stata inviata la richiesta di backfill

  • sessione di gioco associata alla richiesta di backfill

Obbligatorio: sì

Valore restituito

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

TerminateGameSession()

Questo metodo è obsoleto con la versione 4.0.1. Invece, il processo del server dovrebbe richiamare ProcessEnding() dopo la fine di una sessione di gioco.

Notifica al Amazon GameLift Servers servizio che il processo del server ha terminato la sessione di gioco corrente. Questa azione viene richiamata quando il processo del server rimane attivo e pronto per ospitare una nuova sessione di gioco. Dovrebbe essere chiamata solo dopo il completamento della procedura di interruzione della sessione di gioco, perché segnala Amazon GameLift Servers che il processo del server è immediatamente disponibile per ospitare una nuova sessione di gioco.

Questa azione non viene eseguita se il processo del server verrà chiuso dopo l'interruzione della sessione di gioco. Invece, chiama ProcessEnding() per segnalare che sia la sessione di gioco che il processo sul server stanno terminando.

Sintassi

FGameLiftGenericOutcome TerminateGameSession()

Parameters

Questa operazione non prevede parametri.

Valore restituito

Restituisce un risultato generico composto da successo o fallimento con un messaggio di errore.

UpdatePlayerSessionCreationPolicy()

Aggiorna la capacità della sessione di gioco corrente di accettare nuove sessioni giocatore. Una sessione di gioco può essere configurata per accettare o rifiutare tutte le nuove sessioni giocatore. (Vedi anche l'operazione UpdateGameSession() nella documentazione di riferimento per l'API del servizio Amazon GameLift Servers.)

Sintassi

FGameLiftGenericOutcome UpdatePlayerSessionCreationPolicy(EPlayerSessionCreationPolicy policy)

Parameters

Policy

Valore che indica se la sessione di gioco accetta nuovi giocatori.

Tipo: enum. EPlayerSessionCreationPolicy. I valori validi includono:

  • ACCEPT_ALL: accetta tutte le nuove sessioni giocatore.

  • DENY_ALL: rifiuta tutte le nuove sessioni giocatore.

Obbligatorio: sì

Valore restituito

Restituisce un risultato generico costituito da esito positivo o negativo con un messaggio di errore.