适用于 Unreal Engine 的 Amazon GameLift 服务器 SDK:数据类型
使用适用于 Unreal 的 Amazon GameLift 服务器 SDK 参考将要托管的多人游戏与 Amazon GameLift 集成。有关集成过程的指南,请参阅将 Amazon GameLift 添加到您的游戏服务器。
此 API 在 GameLiftServerSDK.h
和 GameLiftServerSDKModels.h
中定义。
设置 Unreal Engine 插件并查看代码示例将 Amazon GameLift 集成到 Unreal Engine 项目中。
适用于 Unreal Engine 的 Amazon GameLift 服务器 SDK:操作
fdescribePlayer 会话请求
此数据类型用于指定检索哪些玩家会话。您可以按如下方式使用它:
-
提供 PlayerSessionId 以请求特定的玩家会话。
-
提供 GameSessionId 以请求指定游戏会话中的所有玩家会话。
-
提供 PlayerId 以请求指定玩家的所有玩家会话。
对于大型玩家会话集合,请使用分页参数以在有序数据块中检索结果。
内容
- GameSessionId
-
游戏会话的唯一标识符。使用此参数可请求指定游戏会话的所有玩家会话。游戏会话 ID 的格式如下所示:
arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>
。<ID string> 的值为自定义 ID 字符串(如果在创建游戏会话时指定了一个)或者是生成的字符串。类型:字符串
必需:否
- 限制
-
要返回的最大结果数量。使用此参数和 NextToken 以一组连续页面的格式获取结果。如果指定玩家会话 ID,将忽略此参数。
类型:整数
必需:否
- NextToken
-
令牌指示结果的下一个连续页面的开头。使用之前的调用返回此操作的令牌。要指定结果集的开始,请不要指定值。如果指定玩家会话 ID,将忽略此参数。
类型:字符串
必需:否
- PlayerId
-
玩家的唯一标识符。玩家 ID 由开发人员定义。请参阅生成玩家 ID。
类型:字符串
必需:否
- PlayerSessionId
-
玩家会话的唯一标识符。
类型:字符串
必需:否
- PlayerSessionStatusFilter
-
用于筛选结果的玩家会话状态。可能的玩家会话状态包括以下内容:
-
RESERVED - 已收到玩家会话请求,但玩家尚未连接到服务器进程和/或进行验证。
-
ACTIVE - 服务器进程已验证玩家,当前已连接。
-
COMPLETED - 玩家连接已断开。
-
TIMEDOUT - 收到了玩家会话请求,但玩家在超时限制(60 秒)内未连接和/或未通过验证。
类型:字符串
必需:否
-
FProcessParameters
此数据类型包含一组在 调用中发送到 服务的参数。
内容
- port
-
服务器进程侦听新玩家连接的端口号。该值必须在部署此游戏服务器构建的任意实例集上所配置的端口范围内。此端口号包含在游戏会话和玩家会话对象中,游戏会话在连接到服务器进程时会使用该端口号。
类型:整数
必需:是
- logParameters
-
包含游戏会话日志文件目录路径列表的对象。
类型:TArray<FString>
必需:否
- onStartGameSession
-
服务调用用于激活新游戏会话的回调函数的名称。 调用此函数响应客户端请求 CreateGameSession。回调函数采用 GameSession 对象(在 服务 API 参考 中定义)。
类型:FOnStartGameSession
必需:是
- onProcessTerminate
-
服务调用以强制关闭服务器进程的回调函数的名称。调用此函数之后, 等待五分钟以便服务器进程关闭,然后使用 调用响应,再关闭服务器进程。
类型:FSimpleDelegate
必需:否
- onHealthCheck
-
服务调用以从服务器进程请求运行状态报告的回调函数的名称。 每隔 60 秒调用此函数。调用此函数后, 将等待 60 秒接收响应,如果未收到响应,则会将服务器进程记录为不正常。
类型:FOnHealthCheck
必需:否
- onUpdateGameSession
-
Amazon GameLift 服务为将更新的游戏会话对象传递给服务器进程而调用的回调函数的名称。为了提供更新的匹配数据而处理了匹配回填请求,Amazon GameLift 会调用此函数。它会传递一个 GameSession 对象、状态更新 (
updateReason
) 以及对战回填票证 ID。类型:FOnUpdateGameSession
必需:否
FStartMatchBackfillRequest
此数据类型用于发送对战回填请求。此信息在 调用中传递给 服务。
内容
- GameSessionArn
-
游戏会话的唯一标识符。此 API 操作 GetGameSessionId() 返回采用 ARN 格式的标识符。
类型:FString
必需:是
- MatchmakingConfigurationArn
-
采用 ARN 格式的唯一标识符,适用于用于此请求的对战构建器。要查找用于创建原始游戏会话的对战构建器,请查看对战构建器数据属性中的游戏会话对象。在使用对战构建器数据中了解有关对战构建器数据的更多信息。
类型:FString
必需:是
- 玩家
-
一组表示当前正在游戏会话中的所有玩家的数据。对战构建器使用此信息搜索与当前玩家非常匹配的新玩家。有关玩家对象格式的描述,请参阅 Amazon GameLift API 参考指南。要查找玩家属性、ID 和团队任务,请查看对战构建器数据属性中的游戏会话对象。如果对战构建器使用了延迟,则收集当前区域中更新的延迟并将其包含在每个玩家的数据中。
类型:TArray<FPlayer>
必需:是
- TicketId
-
对战或匹配回填请求票证的唯一标识符。如果此处未提供任何值,则 Amazon GameLift 将生成一个采用 UUID 形式的值。使用此标识符可跟踪匹配回填票证状态或取消请求 (如需要)。
类型:FString
必需:否
FStopMatchBackfillRequest
此数据类型用于取消对战回填请求。此信息在 调用中传递给 服务。
内容
- GameSessionArn
-
与被取消的请求关联的唯一游戏会话标识符。
类型:FString
必需:是
- MatchmakingConfigurationArn
-
此请求发送到的对战构建器的唯一标识符。
类型:FString
必需:是
- TicketId
-
要取消的回填请求票证的唯一标识符。
类型:FString
必需:是