Testez votre intégration à l'aide des GameLift Anywhere flottes Amazon - Amazon GameLift

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Testez votre intégration à l'aide des GameLift Anywhere flottes Amazon

Vous pouvez utiliser une GameLift Anywhere flotte Amazon pour créer et tester de manière itérative l'intégration de votre jeu avec AmazonGameLift. Configurez votre propre matériel en tant que Anywhere flotte avec une connexion au GameLift service Amazon, puis installez et exécutez votre serveur de jeu sur celui-ci. Utilisez une application de test pour exécuter des scénarios tels que le démarrage/l'arrêt de sessions de jeu, le suivi des connexions des joueurs et la gestion des remblais de matchmaking. Avec une Anywhere flotte, vous pouvez mettre à jour la version de votre serveur de jeu selon vos besoins et bénéficier d'une visibilité complète sur l'activité d'hébergement.

Vous pouvez utiliser GameLift Anywhere des flottes Amazon avec des jeux intégrés au SDK Amazon GameLift Server version 5 ou ultérieure.

Développement initial

Vous avez développé votre jeu et vous êtes en train de l'intégrer au SDK GameLift du serveur Amazon. Pour tester votre intégration, vous pouvez charger chaque nouvelle version de votre serveur de jeu sur Amazon GameLift et créer une flotte. Par ailleurs, l'utilisation d'une Anywhere flotte avec votre ordinateur portable de développement vous permet de réaliser des développements et des tests itératifs de manière plus efficace.

Utilisez les procédures suivantes pour créer une Anywhere flotte et démarrer une session de jeu sur votre ordinateur portable à l'aide de la GameLift console Amazon ou du AWS Command Line Interface (AWS CLI).

Console
  1. Ouvrez la GameLiftconsole Amazon.

  2. Dans le volet de navigation, sous Hébergement, choisissez Emplacements.

  3. Choisissez Créer un lieu.

  4. Dans la boîte de dialogue Créer un emplacement, procédez comme suit :

    1. Entrez un nom de lieu. Cela indique l'emplacement des ressources informatiques qu'Amazon GameLift utilise pour exécuter vos jeux au sein de Anywhere flottes. Les noms de lieux personnalisés doivent commencer par custom-.

    2. Sélectionnez Create (Créer).

  5. Pour créer une Anywhere flotte, procédez comme suit :

    1. Dans le volet de navigation, sous Hébergement, choisissez Fleets.

    2. Sur la page Fleets (Flottes), choisissez Create fleet (Créer une flotte).

    3. À l'étape Choisir le type de calcul, choisissez N'importe où, puis cliquez sur Suivant.

    4. À l'étape Définir les détails du parc, définissez votre nouveau parc. Pour plus d'informations, veuillez consulter Créez une nouvelle GameLift flotte Amazon.

    5. À l'étape Sélectionner les emplacements, sélectionnez l'emplacement personnalisé que vous avez créé.

    6. Effectuez les étapes de création de flotte restantes pour créer votre Anywhere flotte.

  6. Enregistrez votre ordinateur portable en tant que ressource informatique dans le parc que vous avez créé. Utilisez la register-computecommande (ou l'opération de RegisterComputel'API). Incluez ce qui fleet-id a été créé à l'étape précédente et ajoutez-en un compute-name et celui de votre ordinateur portableip-address.

    aws gamelift register-compute \ --compute-name DevLaptop \ --fleet-id fleet-1234 \ --ip-address 10.1.2.3 \ --location custom-location-1

    Exemple de sortie :

    Compute { FleetId = fleet-1234, ComputeName = DevLaptop, Status = ACTIVE, IpAddress = 10.1.2.3, GameLiftServiceSdkEndpoint = wss://12345678.execute-api.amazonaws.com/, Location = custom-location-1 }
  7. Démarrez une session de débogage sur votre serveur de jeu.

    1. Obtenez le jeton d'autorisation pour votre ordinateur portable dans le parc que vous avez créé. Utilisez la get-compute-auth-tokencommande (ou l'opération de GetComputeAuthTokenl'API).

      aws gamelift get-compute-auth-token \ --fleet-id fleet-1234 \ --compute-name DevLaptop

      Exemple de sortie :

      ComputeAuthToken { FleetId = fleet-1234, ComputeName = DevLaptop, AuthToken = abcdefg123, ExpirationTime = 1897492857.11 }
    2. Lancez une instance de débogage de l'exécutable de votre serveur de jeu. Pour exécuter l'instance de débogage, votre serveur de jeu doit appelerInitSDK(). Une fois que le processus est prêt à héberger une session de jeu, le serveur de jeu appelleProcessReady().

  8. Créez une session de jeu pour tester votre première intégration avec Amazon GameLiftAnywhere. Utilisez la create-game-sessioncommande (ou l'opération de CreateGameSessionl'API). Spécifiez l'emplacement personnalisé de la flotte.

    aws gamelift create-game-session \ --fleet-id fleet-1234 \ --name DebugSession \ --maximum-player-session-count 2 \ --location custom-location-1

    Exemple de sortie :

    GameSession { FleetId = fleet-1234, GameSessionId = 1111-1111, Name = DebugSession, IpAddress = 10.1.2.3, Port = 1024, ... }

    Amazon GameLift envoie un onStartGameSession() message au processus de serveur que vous avez enregistré. Le message contient l'GameSessionobjet de l'étape précédente avec les propriétés du jeu, les données des sessions de jeu, les données du système de matchmaking, et plus d'informations sur la session de jeu.

  9. Ajoutez de la logique à votre serveur de jeu afin que le processus de votre serveur réponde au onStartGameSession() message parActivateGameSession(). L'opération envoie un accusé de réception à Amazon indiquant GameLift que votre serveur a reçu et accepté le message de création d'une session de jeu. Pour plus d'informations, consultez Référence GameLift du SDK pour serveurs Amazon.

Votre serveur de jeu lance à présent une session de jeu que vous pouvez tester et utiliser pour des itérations. Pour savoir comment itérer sur votre serveur de jeu, passez à la section suivante.

AWS CLI
  1. Créez un emplacement personnalisé à l'aide de la create-locationcommande (ou de l'opération CreateLocationAPI). Un emplacement personnalisé indique l'emplacement de votre matériel qu'Amazon GameLift utilise pour exécuter vos jeux en Anywhere flottes.

    aws gamelift create-location \ --location-name custom-location-1

    Exemple de sortie :

    { Location { LocationName = custom-location-1 } }
  2. Créez une Anywhere flotte avec votre emplacement personnalisé à l'aide de la create-fleetcommande (ou de l'opération CreateFleetAPI). Amazon GameLift crée la flotte dans votre région d'origine et les emplacements personnalisés que vous fournissez.

    aws gamelift create-fleet \ --name LaptopFleet \ --compute-type ANYWHERE \ --locations "location=custom-location-1"

    Exemple de sortie :

    Fleet { Name = LaptopFleet, ComputeType = ANYWHERE, FleetId = fleet-1234, Status = ACTIVE ... }
  3. Enregistrez votre ordinateur portable en tant que ressource informatique dans le parc que vous avez créé. Utilisez la register-computecommande (ou l'opération de RegisterComputel'API). Incluez ce qui fleet-id a été créé à l'étape précédente et ajoutez-y un compute-name et le public de votre ordinateur portableip-address.

    aws gamelift register-compute \ --compute-name DevLaptop \ --fleet-id fleet-1234 \ --ip-address 10.1.2.3 \ --location custom-location-1

    Exemple de sortie :

    Compute { FleetId = fleet-1234, ComputeName = DevLaptop, Status = ACTIVE, IpAddress = 10.1.2.3, GameLiftServiceSdkEndpoint = wss://12345678.execute-api.amazonaws.com/, Location = custom-location-1 }
  4. Démarrez une session de débogage sur votre serveur de jeu.

    1. Obtenez le jeton d'autorisation pour votre ordinateur portable dans le parc que vous avez créé. Utilisez la get-compute-auth-tokencommande (ou l'opération de GetComputeAuthTokenl'API).

      aws gamelift get-compute-auth-token \ --fleet-id fleet-1234 \ --compute-name DevLaptop

      Exemple de sortie :

      ComputeAuthToken { FleetId = fleet-1234, ComputeName = DevLaptop, AuthToken = abcdefg123, ExpirationTime = 1897492857.11 }
    2. Lancez une instance de débogage de l'exécutable de votre serveur de jeu. Pour exécuter l'instance de débogage, votre serveur de jeu doit appelerInitSDK(). Une fois que le processus est prêt à héberger une session de jeu, le serveur de jeu appelleProcessReady().

  5. Créez une session de jeu pour tester votre première intégration avec Amazon GameLiftAnywhere. Utilisez la create-game-sessioncommande (ou l'opération de CreateGameSessionl'API).

    aws gamelift create-game-session \ --fleet-id fleet-1234 \ --name DebugSession \ --maximum-player-session-count 2

    Exemple de sortie :

    GameSession { FleetId = fleet-1234, GameSessionId = 1111-1111, Name = DebugSession, IpAddress = 10.1.2.3, Port = 1024, ... }

    Amazon GameLift envoie un onStartGameSession() message au processus de serveur que vous avez enregistré. Le message contient l'GameSessionobjet de l'étape précédente avec les propriétés du jeu, les données des sessions de jeu, les données du système de matchmaking, et plus d'informations sur la session de jeu.

  6. Ajoutez de la logique à votre serveur de jeu afin que le processus de votre serveur réponde au onStartGameSession() message parActivateGameSession(). L'opération envoie un accusé de réception à Amazon indiquant GameLift que votre serveur a reçu et accepté le message de création d'une session de jeu. Pour plus d'informations, consultez Référence GameLift du SDK pour serveurs Amazon.

Votre serveur de jeu lance à présent une session de jeu que vous pouvez tester et utiliser pour des itérations. Pour savoir comment itérer sur votre serveur de jeu, passez à la section suivante.

Itérez sur votre serveur de jeu

Dans ce cas d'utilisation, imaginez un scénario dans lequel vous avez configuré et testé votre serveur de jeu et découvert un bogue. Avec Amazon GameLiftAnywhere, vous pouvez modifier votre code et éviter la configuration fastidieuse liée à l'utilisation d'un parc Amazon EC2.

  1. Nettoyez votre existantGameSession, si possible. Si le serveur de jeu tombe en panne ou s'il n'appelle pasProcessEnding(), Amazon le GameLift nettoie une GameSession fois que le serveur de jeu a cessé d'envoyer des bilans de santé.

  2. Modifiez le code sur votre serveur de jeu, compilez-le et préparez-vous pour le prochain test.

  3. Votre Anywhere parc précédent est toujours actif et votre ordinateur portable est toujours enregistré en tant que ressource informatique dans le parc. Pour recommencer les tests, créez une nouvelle instance de débogage.

    1. Récupérez le jeton d'autorisation pour votre ordinateur portable dans le parc que vous avez créé. Utilisez la get-compute-auth-tokencommande (ou l'opération de GetComputeAuthTokenl'API).

      aws gamelift get-compute-auth-token \ --fleet-id fleet-1234 \ --compute-name DevLaptop

      Exemple de sortie :

      ComputeAuthToken { FleetId = fleet-1234, ComputeName = DevLaptop, AuthToken = hijklmnop456, ExpirationTime = 1897492857.11 }
    2. Lancez une instance de débogage de l'exécutable de votre serveur de jeu. Pour exécuter l'instance de débogage, votre serveur de jeu doit appelerInitSDK(). Une fois que le processus est prêt à héberger une session de jeu, le serveur de jeu appelleProcessReady().

  4. Votre flotte dispose désormais d'un processus de serveur disponible. Créez votre session de jeu et effectuez vos prochains tests. Utilisez la create-game-sessioncommande (ou l'opération de CreateGameSessionl'API).

    aws gamelift create-game-session \ --fleet-id fleet-1234 \ --name SecondDebugSession \ --maximum-player-session-count 2

    Amazon GameLift envoie un onStartGameSession() message au processus de serveur que vous avez enregistré. Le message contient l'GameSessionobjet de l'étape précédente avec les propriétés du jeu, les données de session de jeu, les données du système de matchmaking et plus d'informations sur la session de jeu.

  5. Ajoutez de la logique à votre serveur de jeu afin que le processus de votre serveur réponde au onStartGameSession() message parActivateGameSession(). L'opération envoie un accusé de réception à Amazon indiquant GameLift que votre serveur a reçu et accepté le message de création d'une session de jeu. Pour plus d'informations, consultez Référence GameLift du SDK pour serveurs Amazon.

Une fois que vous aurez fini de tester votre serveur de jeu, vous pourrez continuer à utiliser Amazon GameLift pour la gestion de votre flotte et de vos serveurs de jeu. Pour plus d'informations, veuillez consulter Créez une GameLift Anywhere flotte Amazon.