本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
GameLift 服务 API 参考(Amazon开发工具包
本主题提供了用于 GameLift 托管托管解决方案的基于任务的 API 操作列表,包括自定义游戏服务器和实时服务器的托管。这些操作已打包到Amazon中的开发工具包aws.gamelift
命名空间。下载Amazon开发工具包
该 API 包括两组用于托管游戏托管的操作:
GameLift 服务 API 还包含用于其他 GameLift 工具和解决方案的操作。有关 FleetIq API 的列表,请参阅FleetIq API 操作. 有关用于配对的 FlexMatch API 的列表,请参阅FlexMatch API 操作.
设置和管理 GameLift 托管资源
调用这些操作为您的游戏服务器配置托管资源,扩展容量以满足玩家需求、访问性能和利用率指标等。这些 API 操作与 GameLift 上托管的游戏服务器一起使用,包括实时服务器。您可以使用GameLift 控制台
为部署准备游戏服务器
上传并配置游戏的游戏服务器代码,以便为部署和在托管资源上启动做好准备。
管理自定义游戏服务器
-
上传构建— 从本地路径上传构建文件并创建新的 GameLift 构建资源。此操作仅作为Amazon CLI命令是上传游戏服务器版本的最常用方法。
-
CreateBuild— 使用存储在 Amazon S3 存储桶中的文件创建新内部版本。
-
ListBuilds— 获取上传到 GameLift 区域的所有内部版本的列表。
-
DescribeBuild— 检索与某个内部版本关联的信息。
-
UpdateBuild— 更改内部版本元数据,包括内部版本名和版本。
-
DeleteBuild— 从 GameLift 中删除内部版本。
管理实时服务器配置脚本
CreateScript— 上传 JavaScript 文件并创建新的 GameLift 脚本资源。
ListScripts— 获取上传到 GameLift 区域的所有实时脚本的列表。
DescribeScript— 检索与实时脚本关联的信息。
UpdateScript— 更改脚本元数据并上传修订后的脚本内容。
DeleteScript— 从 GameLift 中删除实时脚本。
为托管设置计算资源
使用游戏服务器生成包或实时配置脚本配置托管资源,并对其进行部署。
创建和管理车队
-
CreateFleet— 配置和部署新的 GameLift 计算资源队组来运行您的游戏服务器。当部署时,游戏服务器将按配置自动启动,并准备好托管游戏会话。
-
ListFleets— 获取 GameLift 区域中所有队组的列表。
-
DeleteFleet— 终止不再运行游戏服务器或托管玩家的队组。
-
查看/更新队组位置。
-
创建 Fleet 位置— 将远程位置添加到支持多个位置的现有车队
-
描述 FleetFleet 位置属性— 获取机队的所有远程位置的列表并查看每个位置的当前状态。
-
删除 Fleet 位置— 从支持多个位置的队列中移除远程位置。
-
-
查看/更新队组配置。
-
DescribeFleetAttributes/UpdateFleetAttributes— 查看或更改队组的元数据和设置,用于游戏会话保护和资源创建限制。
-
DescribeFleetPortSettings/UpdateFleetPortSettings— 查看或更改队组允许的入站权限(IP 地址和端口设置范围)。
-
DescribeRuntimeConfiguration/UpdateRuntimeConfiguration— 查看或更改队组中的每个实例上要运行的服务器进程(以及数量)。
-
管理队组容量
-
描述 EC2 实例限制— 检索当前允许的最大实例数Amazon账户和当前的使用水平。
-
DescribeFleetCapacity— 检索车队主区域的当前容量设置。
-
描述 FleetFleet 位置容量— 检索多地点车队的每个地点的当前容量设置。
-
UpdateFleetCapacity— 手动调整队组的容量设置。
-
设置 auto-scaling:
-
PutScalingPolicy— 启用基于目标的 auto-scaling,创建自定义 auto-scaling 策略,或者更新现有策略。
-
DescribeScalingPolicies— 检索现有的 auto-scaling 策略。
-
DeleteScalingPolicy— 删除 auto-scaling 策略并阻止其影响队组容量。
-
StartFleetActions— 重新启动队组的 auto-scaling 策略。
-
StopFleetActions— 暂停队组的 auto-scaling 策略。
-
监控队组活动。
-
DescribeFleetUtilization— 检索有关当前在队组上处于活动状态的服务器进程、游戏会话和玩家数量的统计信息。
-
描述 Fleet 位置利用率— 检索多地点队列中每个位置的利用率统计信息。
-
DescribeFleetEvents— 查看在指定的时间范围内队组的已记录事件。
-
DescribeGameSessions— 检索游戏会话元数据,包括游戏的运行时间和当前玩家数量。
设置队列以实现最佳游戏会话位置
设置多队组、多区域队列,以使用最佳可用托管资源放置游戏会话,从而实现成本、延迟和恢复能力等方面的优势。
-
CreateGameSessionQueue— 创建一个队列,供在处理游戏会话位置请求时使用。
-
DescribeGameSessionQueues— 检索 GameLift 区域中定义的游戏会话队列。
-
UpdateGameSessionQueue— 更改游戏会话队列的配置。
-
DeleteGameSessionQueue— 从区域中删除游戏会话队列。
管理别名
使用别名来表示您的队组,或创建终端替代目标。别名在将游戏活动从一个队组转换到另一个队组时非常有用,例如在游戏服务器生成包更新期间。
-
CreateAlias— 定义新别名并可以选择将其分配给队组。
-
ListAliases— 获取 GameLift 区域中定义的所有队组别名。
-
DescribeAlias— 检索有关现有别名的信息。
-
UpdateAlias— 更改别名的设置,例如将其从一个队组重定向到另一个队组。
-
DeleteAlias— 从区域中删除别名。
-
ResolveAlias— 获取指定的别名指向的队组 ID。
访问托管实例
查看有关队组中各个实例的信息,或请求远程访问指定的队组实例以进行故障排除。
-
DescribeInstances— 获取有关队组中每个实例的信息,包括实例 ID、IP 地址、位置和状态。
-
GetInstanceAccess— 请求远程连接到队组中的指定实例时所需的访问凭证。
设置 VPC 对等连接
在 GameLift 托管资源与其他资源之间创建和管理 VPC 对等连接Amazon资源的费用。
-
CreateVpcPeeringAuthorization— 授权与其中一个 VPC 建立对等连接。
-
DescribeVpcPeeringAuthorizations— 检索有效的对等连接授权。
-
DeleteVpcPeeringAuthorization— 删除对等连接授权。
-
CreateVpcPeeringConnection— 在 GameLift 队组的 VPC 和您的一个 VPC 之间建立对等连接。
-
DescribeVpcPeeringConnections— 检索与 GameLift 队组建立的活动或待处理 VPC 对等连接的信息。
-
DeleteVpcPeeringConnection— 删除与 GameLift 队组的 VPC 对等连接。
开发游戏会话并加入玩家
从您的游戏客户端服务调用这些操作,以启动新的游戏会话,获取有关现有游戏会话的信息,以及加入玩家参加游戏会话。这些操作适用于 GameLift 上托管的自定义游戏服务器。如果您使用的是实时服务器,请使用实时服务器客户端 API (C#) 参考.
-
为一个或多个玩家启动新游戏会话。
-
StartGameSessionPlacement— 请求 GameLift 找到最佳可用托管资源并启动新的游戏会话。这是创建新游戏会话的首选方法。它依靠游戏会话队列来跟踪多个区域的托管可用性,并使用 FleetIQ 算法根据玩家延迟、托管成本、位置等来优先放置位置。
-
DescribeGameSessionPlacement— 获取有关位置请求的详细信息和状态。
-
StopGameSessionPlacement— 取消位置请求。
-
CreateGameSession— 在特定的队组位置启动新的空游戏会话。通过此操作,您可以更好地控制开始游戏会话的位置,而不是使用 FleetIQ 评估放置选项。您必须在单独的步骤中添加玩家到新的游戏会话。可在 GameLift 本地版本中使用。
-
-
使玩家进入现有游戏会话。查找具有可用玩家位置的正在运行的游戏会话,并为新玩家预留。
-
CreatePlayerSession— 预留一个开放位置供玩家加入游戏会话。可在 GameLift 本地版本中使用。
-
CreatePlayerSessions— 预留多个开放位置供多个玩家加入游戏会话。可在 GameLift 本地版本中使用。
-
-
处理游戏会话和玩家会话数据。管理有关游戏会话和玩家会话的信息。
-
SearchGameSessions— 请求基于一组搜索标准的活动游戏会话的列表。
-
DescribeGameSessions— 检索特定游戏会话的元数据,包括活跃时长和当前玩家数量。可在 GameLift 本地版本中使用。
-
DescribeGameSessionDetails— 检索一个或多个游戏会话的元数据,包括游戏会话保护设置。
-
DescribePlayerSessions— 获取有关玩家活动的详细信息,包括状态、游戏时间和玩家数据。可在 GameLift 本地版本中使用。
-
UpdateGameSession— 更改游戏会话设置,例如最大玩家数和加入政策。
-
GetGameSessionLogUrl— 获取游戏会话的已保存日志的位置。
-
可用编程语言
这些区域有:AmazonAmazon GameLift 的开发工具包可用于以下语言。有关开发环境支持的详细信息,请参阅相应语言的文档。
-
C++ (开发工具包文档
) (Amazon GameLift ) -
Java (开发工具包文档
) (Amazon GameLift) -
.NET (开发工具包文档
) (Amazon GameLift) -
Go (开发工具包文档
) (Amazon GameLift) -
Python (开发工具包文档
) (Amazon GameLift ) -
Ruby (开发工具包文档
) (Amazon GameLift) -
PHP (开发工具包文档
) (Amazon GameLift) -
JavaScript/Node.js (开发工具包文档
) (Amazon GameLift)