遷移至 Amazon GameLift 伺服器 SDK 5.x - Amazon GameLift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

遷移至 Amazon GameLift 伺服器 SDK 5.x

若要更新遊戲專案以使用伺服器 5.x SDK版,請進行下列變更:

  1. 為您的開發環境取得最新的 Amazon GameLift Server SDK套件 下載網站 。請遵循已下載套件和版本的 Readme 檔案中的安裝指示。請參閱這些將伺服器SDKs與遊戲專案搭配使用的指示。

  2. 更新您的伺服器程式碼,如下所示:

    • 將伺服器程式碼回呼函數onCreateGameSession()變更為 onStartGameSession()

    • 視需要更新InitSDK()輸入:

      • 如果您計劃將遊戲伺服器建置部署到 Amazon GameLift 受管EC2機群或 Anywhere 使用 Amazon GameLift Agent 的機群:

        InitSDK() 無參數呼叫 (C++) (C#) (Unreal )。此呼叫會設定運算環境以及 Amazon GameLift 服務的 WebSocket 連線。

      • 如果您計劃將遊戲伺服器建置部署到 Anywhere 沒有 Amazon GameLift Agent 的機群:

        InitSDK() 使用伺服器參數 (C++) (C#) (Unreal ) 呼叫 。遊戲伺服器程序使用這些參數來建立與 Amazon GameLift 服務的連線。

  3. 如果您的遊戲伺服器建置或其他託管應用程式在執行時與其他 AWS 資源通訊,您將需要變更應用程式存取這些資源的方式。使用AssumeRoleCredentials新的 Amazon GameLift 伺服器SDK動作 GetFleetRoleCredentials()(適用於遊戲伺服器) 或使用共用憑證 (適用於其他應用程式) 取代 的使用。如需如何實作此變更的詳細資訊,請參閱 與機群中的其他 AWS 資源通訊

  4. 如果您的專案呼叫伺服器SDK動作GetInstanceCertificate()來擷取TLS憑證,請修改程式碼以改用新的 GetComputeCertificate()C++) (C#) (Unreal )。

  5. 將遊戲組建上傳至 Amazon 時 GameLift (例如使用 upload-buildCreateBuild()),請將 ServerSdkVersion 參數設定為您正在使用的 5.x 版本 (此參數目前預設為 4.0.2)。此參數必須與遊戲伺服器建置中的實際伺服器SDK程式庫相符。如果您為上傳的遊戲伺服器建置指定錯誤的版本,則使用該建置建立建立的任何機群都會失敗。請參閱 部署 Amazon GameLift 託管的自訂伺服器建置

    下列範例說明如何指定伺服器SDK版本:

    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
  6. 如果您使用指令碼遠端連線至受管機群,請更新指令碼以使用新程序,如 中所述遠端連線至 Amazon GameLift 機群執行個體