Configura i test locali con Amazon GameLift Servers Anywhere - 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à.

Configura i test locali con Amazon GameLift Servers Anywhere

Nota

Questo argomento tratta dei test locali per i giochi integrati con l'SDK del server per la Amazon GameLift Servers versione 5.x. Se il gioco utilizza la versione 4.x o precedente dell'SDK per server, consulta. Testa la tua integrazione utilizzando Amazon GameLift Servers Locale

Usa una flotta Amazon GameLift Servers Anywhere e il tuo hardware per creare e testare in modo iterativo i componenti del gioco in un ambiente ospitato simulato. Configura una flotta Anywhere e registra un dispositivo locale per stabilire una connessione al Amazon GameLift Servers servizio. Installa il server di gioco integrato sul dispositivo, avvia un processo del server di gioco e verifica le funzionalità di gioco secondo necessità. Puoi aggiornare la build del server di gioco tutte le volte che vuoi per testare ogni nuova build.

Con una flotta Anywhere, puoi eseguire i test utilizzando la AWS CLI o con script di test. Se hai integrato un client di gioco conAmazon GameLift Servers, puoi eseguire il client sullo stesso dispositivo locale o su un dispositivo diverso.

I test locali con una flotta Anywhere sono particolarmente utili per testare l'integrazione del server di gioco conAmazon GameLift Servers. Hai piena visibilità su tutte le attività di hosting sul computer locale, nonché sugli eventi e sui dati di registrazione.

Nota

Stai usando il Amazon GameLift Servers plugin per Unreal Engine o Unity? Questi strumenti includono flussi di lavoro guidati per l'impostazione di test locali con una flotta Anywhere. Segui la documentazione per Plugin per Unity: configura i test locali con Anywhere Amazon GameLift Servers oPlugin per Unreal: ospita il tuo gioco localmente con Anywhere Amazon GameLift Servers.

Configura una flotta Anywhere locale

Segui questi passaggi per creare una flotta Anywhere per la tua workstation locale. Per istruzioni dettagliate sull'utilizzo della AWS CLI o del moduloAmazon GameLift Servers, AWS Management Console consulta. Crea un Amazon GameLift Servers Flotta ovunque

Per creare la flotta Anywhere
  1. Crea una posizione personalizzata per la tua workstation locale. (AWS CLI o console). Una posizione personalizzata è semplicemente un'etichetta per la risorsa di elaborazione che intendi includere nella tua flotta Anywhere. I nomi delle località personalizzate devono iniziare concustom-. Ad esempio: custom-my_laptop. Consultare Creare una posizione personalizzata.

  2. Crea una flotta Anywhere (AWS CLI o console). In questo passaggio, crea la risorsa del parco veicoli con la posizione personalizzata per la workstation locale. Consultare Crea una flotta Anywhere.

    Prendi nota dell'ID o del valore ARN del nuovo parco veicoli. Tale valore servirà nella fase successiva.

  3. Registra la tua workstation locale come unità di calcolo della flotta (solo AWS CLI). Una flotta Anywhere deve disporre di almeno una risorsa di elaborazione per ospitare i server di gioco. Consultare Aggiungi un computer alla flotta. Per aggiungere un computer alla flotta, sono necessarie le seguenti informazioni:

    • Un nome di calcolo. Ogni calcolo di un parco dati deve avere un nome univoco.

    • L'identificatore della flotta Anywhere. Puoi usare FleetID oFleetArn.

    • Le informazioni sulla connessione del computer. Specifica un IpAddress oppure il valore DnsName. Ecco come i client Amazon GameLift Servers di gioco si connetteranno ai server di gioco.

    • Una posizione personalizzata nella flotta Anywhere.

    Prendi nota del valore GameLiftServiceSdkEndpoint restituito. Questo valore ti servirà quando aggiorni il tuo server di gioco per farlo funzionare su una flotta Anywhere.

Aggiorna e installa il tuo server di gioco

Questa attività presuppone che tu abbia già integrato una build di server di gioco con il Amazon GameLift Servers server SDK 5.x. Il processo di integrazione prevede l'aggiunta di codice al server di gioco in modo che possa interagire con il Amazon GameLift Servers servizio per avviare e gestire le sessioni di gioco.

Per una flotta Anywhere, devi configurare manualmente alcune impostazioni del server di gioco. In una flotta Amazon GameLift Servers gestita, queste impostazioni vengono configurate automaticamente.

Per preparare il tuo server di gioco per una flotta Anywhere
  1. Ottieni un token di autenticazione. Il tuo server di gioco deve includere un token di autenticazione in ogni comunicazione con il Amazon GameLift Servers servizio. Amazon GameLift Serversi token di autenticazione sono di breve durata e devono essere aggiornati regolarmente.

    È consigliabile creare uno script per completare le seguenti attività:

    • Richiama l'azione AWS CLI. get-compute-auth-token

    • Memorizza il valore del token restituito dove i processi del server di gioco possono recuperarlo, ad esempio in una variabile di ambiente sul calcolo locale.

    Installa lo script con il tuo server di gioco sul computer. Imposta lo script in modo che venga eseguito prima di iniziare il primo processo del server di gioco. Mentre i processi del server di gioco sono attivi, esegui lo script regolarmente per mantenere un token di autenticazione valido. Tutti i processi del server di gioco sul computer possono utilizzare lo stesso token di autenticazione.

  2. Aggiorna il codice del server Amazon GameLift Servers di gioco. Quando hai integrato il codice del server di gioco con l'SDK del server perAmazon GameLift Servers, hai aggiunto un invito all'azioneInitSdk(). Quando il server di gioco funziona su una flotta Anywhere, questa chiamata richiede parametri server aggiuntivi. Per ulteriori informazioni, consulta Inizializza il processo del server la sezione Server SDK 5.x per Amazon GameLift Servers relativa al linguaggio di sviluppo in uso. I parametri del server sono:

    • webSocketUrl— Imposta questo parametro sul GameLiftServiceSdkEndpoint valore che viene restituito quando registri un calcolo nella flotta.

    • hostId— Imposta questo parametro sul nome del calcolo che specifichi quando registri un calcolo nella flotta Anywhere.

    • fleetId— Imposta questo parametro sull'ID della flotta Anywhere.

    • authToken— Imposta questo parametro sul token che viene restituito in risposta a una richiesta di recupero di un token di autenticazione per un calcolo.

    • processId— Imposta questo parametro per identificare un processo del server di gioco in esecuzione sul computer locale. Ogni processo simultaneo del server di gioco deve avere un ID di processo univoco.

    I valori dei parametri del server utilizzati da ogni processo del server di gioco devono essere specifici per l'elaborazione della flotta Anywhere su cui è in esecuzione il processo. Per i dettagli su come ottenere i valori appropriati per un calcolo, consulta. Aggiungi un computer alla flotta Come procedura consigliata webSocketUrl hostIdfleetId, imposta e authToken come variabili di ambiente nell'elaborazione locale. Tutti i processi del server eseguiti sul computer utilizzeranno questi valori.

  3. Installa la build del server di gioco sul computer locale. Includi tutte le dipendenze necessarie per far funzionare il server di gioco.

  4. Avvia uno o più processi del server di gioco in esecuzione sul computer locale. Quando il processo del server di gioco richiama l'azione SDK del serverProcessReady(), il processo è pronto per ospitare una sessione di gioco.

Verifica l'attività della sessione di gioco

Verifica l'integrazione del tuo server di gioco lavorando con le sessioni di gioco. Se non disponi di un client di gioco integrato con Amazon GameLift Servers funzionalità, puoi utilizzare la AWS CLI per avviare sessioni di gioco. Prova i seguenti scenari:

  • Creare una sessione di gioco. create-game-session Comando di chiamata (o operazione CreateGameSessionAPI). Specificate l'ID e la posizione personalizzata della vostra flotta Anywhere. Questa chiamata restituisce un identificatore univoco per la nuova sessione di gioco.

  • Controlla lo stato della sessione di gioco.describe-game-sessionsComando di chiamata (o azione DescribeGameSessionsAPI). Specificate l'ID della sessione di gioco. Questa chiamata restituisce informazioni dettagliate sulla sessione di gioco, incluso lo stato della sessione di gioco. Le sessioni di gioco in stato Attivo sono pronte per consentire ai giocatori di connettersi. Per ottenere un elenco di tutte le sessioni di gioco per la flotta, chiama il list-game-sessionscomando (o l'azione ListGameSessionsAPI).

  • Connect alla sessione di gioco. Se il tuo client di gioco ha la possibilità di partecipare a una sessione di gioco, utilizza le informazioni di connessione incluse nelle informazioni sulla sessione di gioco.

Esegui un'iterazione sul tuo server di gioco

Puoi usare la stessa Anywhere flotta e lo stesso calcolo per testare altre versioni della build del tuo server di gioco.

  1. Pulisci il tuo esistenteGameSession. Se il processo del server di gioco si blocca o non chiamaProcessEnding(), Amazon GameLift Servers pulisce GameSession dopo che il server di gioco ha interrotto l'invio dei controlli di integrità.

  2. Genera una nuova build del server di gioco. Apporta modifiche al tuo server di gioco e crea una build rivista.

  3. Aggiorna la build del server di gioco sul tuo computer locale. La tua flotta Anywhere precedente è ancora attiva e il tuo laptop è ancora registrato come risorsa di elaborazione nel parco.

  4. Ottieni un token di autorizzazione aggiornato. Chiama il comando get-compute-auth-tokenCLI e archivia il token sul calcolo locale.

  5. Avvia uno o più processi del server di gioco in esecuzione sul computer locale. Quando il processo del server di gioco chiamaProcessReady(), è pronto per essere utilizzato per i test.

Trasforma il tuo gioco in flotte Amazon GameLift Servers gestite

Dopo aver completato i test di sviluppo e pronto a prepararti per il lancio, questo è un buon momento per passare alle flotte Amazon GameLift Servers gestite. Usa le flotte gestite per perfezionare e testare le tue risorse di hosting di giochi. Implementa la tua soluzione di posizionamento delle sessioni di gioco (code e matchmaker), seleziona l'hardware di hosting (comprese le flotte Spot) e le sedi ottimali e scegli una strategia per aumentare la capacità. Potresti anche iniziare a AWS CloudFormation utilizzarla per gestire in modo più efficiente i cicli di vita di tutte le tue risorse di hosting di giochi, tra cui flotte, code e matchmaker.

È necessario apportare alcune modifiche minori per passare da una flotta di test Anywhere locale a una flotta gestita. Amazon GameLift Servers Puoi riutilizzare le stesse code e gli stessi matchmaker. Esegui le seguenti attività:

  • Cambia la chiamata in codice del server di gioco inInitSdk(). Rimuovi i parametri del server. Per una flotta gestita, tiene traccia Amazon GameLift Servers automaticamente di queste informazioni.

  • Crea una risorsa di Amazon GameLift Servers compilazione. Con una flotta di test Anywhere, devi distribuire manualmente la build e le dipendenze del server di gioco su ogni computer della flotta. Con una flotta gestita, puoi creare e caricare il tuo pacchetto di build di gioco suAmazon GameLift Servers, che lo distribuisce automaticamente su tutti i computer della flotta. Implementa una build di server personalizzata per Amazon GameLift Servers hostingPer ulteriori informazioni su come impacchettare i file di build del gioco e creare una risorsa di compilazione con file in un bucket Amazon S3, consulta la pagina. Non includere script che registrano un'elaborazione e ottengono un token di autenticazione, poiché gestisce Amazon GameLift Servers automaticamente queste attività con flotte gestite.

  • Crea una flotta gestita. Crea una flotta utilizzando la console o la AWS CLI, specificando una EC2 flotta gestita. Questo tipo di parco veicoli richiede impostazioni di configurazione aggiuntive, tra cui la specificazione delle risorse di compilazione e dei tipi di istanze. Dovete tutti impostare una configurazione di runtime per gestire il ciclo di vita dei server di gioco su ogni computer della flotta. Crea una EC2 flotta Amazon GameLift Servers gestitaPer ulteriori informazioni sulla creazione di una flotta gestita, consulta la sezione.

  • Reindirizza gli alias del parco veicoli (opzionale). Se configuri alias da utilizzare con le tue flotte Anywhere, puoi riutilizzare gli stessi alias per le flotte gestite. Vedi Crea un Amazon GameLift Servers alias per i dettagli sulla creazione o l'aggiornamento di un alias.