虛幻引擎的亞馬遜GameLift服務器開發套件參考:數據類型 - Amazon GameLift

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

虛幻引擎的亞馬遜GameLift服務器開發套件參考:數據類型

這個亞馬遜GameLift伺服器開發套件參考可以幫助您準備虛幻引擎遊戲專案,以便與亞馬遜GameLift搭配使用。如需整合流程的詳細資訊,請參閱 添加 Amazon GameLift 到您的遊戲服務器

此 API 定義於 GameLiftServerSDK.hGameLiftServerSDKModels.h

若要設定 Unreal Engine 外掛程式,並查看程式碼範例 GameLift 將 Amazon 集成到虛幻引擎項目中

F DescribePlayerSessionsRequest

此資料類型用於指定要擷取的玩家工作階段,您可利用下列方式使用:

  • 提供一個PlayerSessionId要求特定玩家工作階段。

  • 提供一個GameSessionId要求指定遊戲工作階段中的所有玩家工作階段。

  • 提供一個PlayerId要求指定玩家的所有玩家工作階段。

對於大量的玩家工作階段,可使用分頁參數於循序區塊擷取結果。

目錄

GameSessionId

獨一無二的遊戲工作階段識別項。請使用此參數要求特定遊戲工作階段的所有玩家工作階段。遊戲工作階段 ID 格式如下:arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>。<ID string> 的值可能是自訂 ID 字串 (若在建立遊戲工作階段時有指定 ID),或是產生的字串。

類型:字串

必要:否

限制

回傳結果的數量上限。搭配使用此參數可NextToken取得一組連續頁面的結果。若指定玩家工作階段 ID,此參數將遭到忽略。

類型:整數

必要:否

NextToken

字符顯示下一個結果循序頁面的開始處。使用前一個呼叫此動作傳回的字符。指定結果集的開始處時,請勿指定值。若指定玩家工作階段 ID,此參數將遭到忽略。

類型:字串

必要:否

PlayerId

玩家的唯一識別項。玩家 ID 是由開發人員定義。請參閱 產生玩家 ID

類型:字串

必要:否

PlayerSessionId

玩家工作階段的唯一識別項。

類型:字串

必要:否

PlayerSessionStatusFilter

用於篩選結果的玩家工作階段狀態。可能的玩家工作階段狀態包括下列項目:

  • RESERVED – 玩家工作階段要求已收到,但玩家尚未連線至伺服器程序及/或通過驗證。

  • ACTIVE – 玩家已由伺服器程序驗證,目前已連線。

  • COMPLETED – 玩家連線已中斷。

  • TIMEDOUT – 玩家工作階段要求已收到,但玩家並未在逾時限制 (60 秒) 內連線及/或通過驗證。

類型:字串

必要:否

F ProcessParameters

此資料類型包含在ProcessReady()呼叫中傳送至 Amazon GameLift 服務的一組參數。

目錄

port

伺服器處理的連接埠號碼將為新玩家連線進行接聽。值必須屬於為部署此遊戲伺服器組建之機群所設定的連接埠範圍。此連接埠號碼包含在遊戲工作階段和遊戲工作階段物件中,遊戲工作階段會使用該物件來連接到伺服器程序。

類型:整數

必要:是

logParameters

含對遊戲工作階段日誌檔之目錄路徑清單的物件。

類型:TArray<FString>

必要:否

onStartGame階段

Amazon GameLift 服務呼叫以啟動新遊戲工作階段的回呼函數名稱。亞馬遜GameLift調用此函數以響應客戶端請求CreateGameSession。回調函數接受一個GameSession對象(在亞馬遜GameLift服務 API 參考中定義)。

類型:F OnStartGameSession

必要:是

onProcessTerminate

Amazon GameLift 服務呼叫以強制伺服器處理序關閉的回呼函數名稱。呼叫此函數之後,Amazon 會GameLift等待五分鐘讓伺服器處理序關閉並回應呼ProcessEnding()叫,然後再關閉伺服器處理序。

類型:F SimpleDelegate

必要:否

onHealthCheck

Amazon GameLift 服務呼叫以從伺服器處理序要求健康狀態報告的回呼函數名稱。亞馬遜每 60 秒GameLift調用一次此函數。調用此函數後,亞馬遜GameLift等待 60 秒的響應,如果沒有收到任何響應。將服務器進程記錄為不健康。

類型:F OnHealthCheck

必要:否

onUpdateGame階段

Amazon GameLift 服務呼叫以將更新的遊戲工作階段物件傳遞至伺服器處理序的回呼函數名稱。Amazon 會在處理比賽回填請求以提供更新的分房系統資料時GameLift呼叫此函數。它傳遞一個GameSession對象,一個狀態更新(updateReason)和匹配回填票證 ID。

類型:F OnUpdateGameSession

必要:否

F StartMatchBackfillRequest

此項資料類型用於傳送配對回填要求。該信息在通StartMatchBackfill()話中傳達給亞馬遜GameLift服務。

目錄

GameSessionArn

獨一無二的遊戲工作階段識別項。API 動作 GetGameSessionId() 以 ARN 格式傳回識別項。

類型:FString

必要:是

MatchmakingConfigurationArn

以 ARN 為格式的唯一識別項,讓配對建構器使用此項要求。尋找用於建立原始遊戲工作階段的配對建構器時,請查看配對建構器資料屬性之中的遊戲工作階段物件。請參閱使用分房系統資料,進一步了解分房系統資料。

類型:FString

必要:是

Players

表示目前遊戲工作階段之中所有玩家的一組資料。配對建構器使用此項資訊搜尋適合配對現有玩家的新玩家。有關播放器對象格式的說明,請參閱 Amazon GameLift API 參考指南。尋找玩家屬性、ID 及團隊指派時,請查看配對建構器資料屬性之中的遊戲工作階段物件。若配對建構器使用延遲,您可收集現有區域更新後的延遲,並將其納入各個玩家資料之中。

類型:TArray<FPlayer>

必要:是

TicketId

配對或配對回填要求票證的唯一識別項。如果這裡沒有提供任何值,亞馬遜GameLift將以 UUID 的形式生成一個值。您可使用此識別項依據需求追蹤配對回填票證狀態或取消要求。

類型:FString

必要:否

F StopMatchBackfillRequest

此項資料類型用於取消配對回填要求。該信息在通StopMatchBackfill()話中傳達給亞馬遜GameLift服務。

目錄

GameSessionArn

與遭取消要求有關的唯一遊戲工作階段識別碼。

類型:FString

必要:是

MatchmakingConfigurationArn

做為此要求傳送目標的配對建構器唯一識別項。

類型:FString

必要:是

TicketId

遭取消回填要求票證的唯一識別碼。

類型:FString

必要:是