Integre o Amazon GameLift FleetIQ a um cliente de jogo - Amazon GameLift

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Integre o Amazon GameLift FleetIQ a um cliente de jogo

Este tópico descreve as tarefas necessárias para preparar seu cliente do jogo ou serviço de criação de jogos para comunicação com o Amazon GameLift FleetIQ a fim de adquirir um servidor de jogos para hospedar uma sessão de jogo.

Crie um método que permita que o cliente de jogo ou marcador de jogos solicite um recurso de servidor de jogos para jogadores. Você tem algumas opções de como fazer isso:

  • Faça com que o Amazon GameLift FleetIQ escolha um servidor de jogos disponível. Essa opção aproveita as otimizações do Amazon GameLift FleetIQ para usar instâncias spot de baixo custo e para escalabilidade automática.

  • Solicite todos os servidores de jogos disponíveis e selecione um a ser usado (geralmente conhecido como "lista e escolha").

Deixar que o Amazon GameLift FleetIQ escolha um servidor de jogos

Para que o Amazon GameLift FleetIQ escolha um servidor de jogos disponível, chame ClaimGameServer() sem especificar um ID de servidor de jogos. Nesse cenário, o Amazon GameLift FleetIQ não exerce sua lógica para encontrar um servidor de jogos em uma instância que seja viável para hospedagem de jogos e otimizada para escalabilidade automática.

AWS gamelift claim-game-server \ --game-server-group-name MyLiveGroup

Em resposta a uma solicitação de reivindicação, o Amazon GameLift FleetIQ identifica o recurso GameServer, as informações de conexão e os dados do jogo, que os clientes podem usar para se conectar ao servidor de jogos. O status de reivindicação do servidor de jogos é definido como CLAIMED por 60 segundos. Seu servidor de jogos ou serviço ao cliente precisa atualizar o status do servidor de jogos no Amazon GameLift FleetIQ depois que os jogadores se conectarem ou o jogo começar. Isso garante que o Amazon GameLift FleetIQ não forneça esse servidor de jogos em resposta a solicitações subsequentes de capacidade do servidor de jogos. Atualize o status do servidor de jogos chamando updateGameServer().

AWS gamelift update-game-server \ --game-server-group-name MyLiveGroup \ --game-server-id UniqueId-1234 \ --health-check HEALTHY \ --utilization-status UTILIZED

Escolha o servidor de jogos

Com o método de “lista e escolha”, faça o cliente do jogo ou o matchmaker solicita uma lista de servidores de jogos disponíveis chamando ListGameServers(). É possível usar dados do servidor de jogos para fornecer informações adicionais que os jogadores ou seu marcador de jogos podem usar ao selecionar um servidor de jogos. Para controlar como os resultados são retornados, você pode solicitar resultados paginados e classificar os servidores de jogos pela data de registro. A solicitação a seguir retorna 20 servidores de jogos ativos e disponíveis no grupo de servidores de jogos especificado, classificados por horário de registro, com os servidores de jogos mais novos listados primeiro.

AWS gamelift list-game-servers \ --game-server-group-name MyLiveGroup \ --limit 20 \ --sort-order DESCENDING

Com base na lista de servidores de jogos disponíveis, o cliente ou serviço de criação de jogos seleciona um servidor de jogos e o reivindica chamando claimGameServer () com o ID específico do servidor de jogos. Nesse cenário, o Amazon GameLift FleetIQ não exerce nenhuma de suas lógicas de otimização de tipo de instância, conforme descrito em Lógica do Amazon GameLift FleetIQ.

AWS gamelift claim-game-server \ --game-server-group-name MyLiveGroup \ --game-server-id UniqueId-1234