

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á.

# Migrar para o SDK 5.x do servidor para o Amazon GameLift Servers
<a name="reference-serversdk5-migration"></a>

Para atualizar um projeto de jogo para usar o SDK versão 5.x do servidor, faça as seguintes alterações:

**nota**  
Se você precisar continuar usando o SDK do servidor versão 4.x ou anterior, consulte [SDK do servidor para a versão 4 ou anterior do Amazon GameLift Servers](reference-serversdk4.md) para a documentação e informações do download. Especificamente para a versão 4.0.2 do SDK, você pode baixá-lo nas versões [oficiais GitHub ](https://github.com/amazon-gamelift/amazon-gamelift-servers-csharp-server-sdk/releases).

1. Obtenha o SDK de servidor mais recente para o pacote do Amazon GameLift Servers para seu ambiente de desenvolvimento **[[Site de download](https://aws.amazon.com/gamelift/servers/getting-started-sdks/)]**. Siga as instruções de instalação no `Readme` arquivo do pacote e da versão baixados. Veja essas instruções para usar o servidor SDKs com seu projeto de jogo.
   + [Para ambientes de desenvolvimento que usam C\$1\$1, C\$1 ou Go](gamelift-sdk-server-api.md)
   + [Para projetos do Unreal Engine (somente bibliotecas do SDK do servidor C\$1\$1 para Unreal)](integration-engines-setup-unreal.md)
   + [Para projetos do Unity (somente bibliotecas do SDK do servidor C\$1 para Unity)](integration-engines-unity-using.md)
   + [Para uso com o plug-in do Amazon GameLift Servers para Unreal Engine](unreal-plugin.md)
   + [Para uso com o plug-in do Amazon GameLift Servers para Unity](unity-plug-in.md)

1. Atualize o código do servidor da seguinte forma:
   + Altere a função de retorno de chamada do código do servidor de `onCreateGameSession()` para `onStartGameSession()`.
   + Atualize as entradas `InitSDK()` conforme apropriado: 
     + Se você planeja implantar a compilação do servidor de jogos em uma frota do EC2 gerenciada pelo Amazon GameLift Servers ou em uma frota Anywhere com o Amazon GameLift Servers Agent: 

       Chame `InitSDK()` sem parâmetros ([C\$1\$1](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk)) ([C\$1](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initsdk)) ([Unreal](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk)). Essa chamada configura o ambiente computacional e uma WebSocket conexão com o Amazon GameLift Servers serviço. 
     + Se você planeja implantar a compilação do servidor de jogo em uma frota Anywhere sem o Amazon GameLift Servers Agent:

       Chame `InitSDK()` com parâmetros do servidor ([C\$1\$1](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-initsdk-anywhere)) ([C\$1](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-initsdk-anywhere)) ([Unreal](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-initsdk-anywhere)). Um processo de servidor de jogos usa esses parâmetros para estabelecer uma conexão com o serviço do Amazon GameLift Servers.

1. Se a compilação do servidor de jogos ou outras aplicações hospedadas se comunicarem com outros recursos da AWS durante a execução, será necessário alterar a forma como a aplicação obtém acesso a esses recursos. Substitua o uso de `AssumeRoleCredentials` pela nova ação `GetFleetRoleCredentials()` do SDK do servidor (para servidores de jogos) ou use credenciais compartilhadas (para outras aplicações). Para obter mais informações sobre como implementar essa alteração, consulte [Conecte seu servidor de jogos Amazon GameLift Servers hospedado a outros AWS recursos](gamelift-sdk-server-resources.md).

1. Se o projeto chamou a ação `GetInstanceCertificate()` do SDK do servidor para recuperar um certificado TLS, modifique o código para usar o novo `GetComputeCertificate()` ([C\$1\$1](integration-server-sdk5-cpp-actions.md#integration-server-sdk5-cpp-getcomputecertificate)) ([C\$1](integration-server-sdk5-csharp-actions.md#integration-server-sdk5-csharp-getcomputecertificate)) ([Unreal](integration-server-sdk5-unreal-actions.md#integration-server-sdk5-unreal-getcomputecertificate)).

1. Ao fazer o upload da compilação do jogo para Amazon GameLift Servers (como com [upload-build](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/upload-build.html) ou [CreateBuild())](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_CreateBuild.html), defina o `ServerSdkVersion` parâmetro para a versão 5.x que você está usando (esse parâmetro atualmente é 4.0.2). Esse parâmetro deve corresponder às bibliotecas reais do SDK do servidor na compilação do servidor de jogos. Se você especificar a versão errada para uma compilação de servidor de jogos carregada, todas as frotas criadas com essa compilação falharão. Consulte [Criar uma compilação personalizada do servidor de jogos para o Amazon GameLift Servers](gamelift-build-cli-uploading.md).

   O exemplo a seguir ilustra como especificar a versão do SDK do servidor: 

   ```
   aws gamelift upload-build \
       --operating-system AMAZON_LINUX_2023 \
       --server-sdk-version "5.0.0" \
       --build-root "~/mygame" \
       --name "My Game Nightly Build" \
       --build-version "build 255" \
       --region us-west-2
   ```

1. Se você usa scripts para se conectar remotamente a frotas gerenciadas, atualize os scripts para usar o novo processo, conforme descrito em [Conecte-se às instâncias da frota](fleets-remote-access.md).