GameLift 服务 API 参考(Amazon开发工具包 - 亚马逊 GameLift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

GameLift 服务 API 参考(Amazon开发工具包

本主题提供了用于 GameLift 托管托管解决方案的基于任务的 API 操作列表,包括自定义游戏服务器和实时服务器的托管。这些操作已打包到Amazon中的开发工具包aws.gamelift命名空间。下载Amazon开发工具包要么查看 Amazon GameLift API 参考文档.

该 API 包括两组用于托管游戏托管的操作:

GameLift 服务 API 还包含用于其他 GameLift 工具和解决方案的操作。有关 FleetIq API 的列表,请参阅FleetIq API 操作. 有关用于配对的 FlexMatch API 的列表,请参阅FlexMatch API 操作.

设置和管理 GameLift 托管资源

调用这些操作为您的游戏服务器配置托管资源,扩展容量以满足玩家需求、访问性能和利用率指标等。这些 API 操作与 GameLift 上托管的游戏服务器一起使用,包括实时服务器。您可以使用GameLift 控制台对于大多数资源管理任务,也可以使用Amazon Command Line Interface(Amazon CLI) 工具或AmazonSDK。

为部署准备游戏服务器

上传并配置游戏的游戏服务器代码,以便为部署和在托管资源上启动做好准备。

管理自定义游戏服务器

  • 上传构建— 从本地路径上传构建文件并创建新的 GameLift 构建资源。此操作仅作为Amazon CLI命令是上传游戏服务器版本的最常用方法。

  • CreateBuild— 使用存储在 Amazon S3 存储桶中的文件创建新内部版本。

  • ListBuilds— 获取上传到 GameLift 区域的所有内部版本的列表。

  • DescribeBuild— 检索与某个内部版本关联的信息。

  • UpdateBuild— 更改内部版本元数据,包括内部版本名和版本。

  • DeleteBuild— 从 GameLift 中删除内部版本。

管理实时服务器配置脚本

  • CreateScript— 上传 JavaScript 文件并创建新的 GameLift 脚本资源。

  • ListScripts— 获取上传到 GameLift 区域的所有实时脚本的列表。

  • DescribeScript— 检索与实时脚本关联的信息。

  • UpdateScript— 更改脚本元数据并上传修订后的脚本内容。

  • DeleteScript— 从 GameLift 中删除实时脚本。

为托管设置计算资源

使用游戏服务器生成包或实时配置脚本配置托管资源,并对其进行部署。

创建和管理车队

管理队组容量

监控队组活动。

设置队列以实现最佳游戏会话位置

设置多队组、多区域队列,以使用最佳可用托管资源放置游戏会话,从而实现成本、延迟和恢复能力等方面的优势。

管理别名

使用别名来表示您的队组,或创建终端替代目标。别名在将游戏活动从一个队组转换到另一个队组时非常有用,例如在游戏服务器生成包更新期间。

  • CreateAlias— 定义新别名并可以选择将其分配给队组。

  • ListAliases— 获取 GameLift 区域中定义的所有队组别名。

  • DescribeAlias— 检索有关现有别名的信息。

  • UpdateAlias— 更改别名的设置,例如将其从一个队组重定向到另一个队组。

  • DeleteAlias— 从区域中删除别名。

  • ResolveAlias— 获取指定的别名指向的队组 ID。

访问托管实例

查看有关队组中各个实例的信息,或请求远程访问指定的队组实例以进行故障排除。

  • DescribeInstances— 获取有关队组中每个实例的信息,包括实例 ID、IP 地址、位置和状态。

  • GetInstanceAccess— 请求远程连接到队组中的指定实例时所需的访问凭证。

设置 VPC 对等连接

在 GameLift 托管资源与其他资源之间创建和管理 VPC 对等连接Amazon资源的费用。

开发游戏会话并加入玩家

从您的游戏客户端服务调用这些操作,以启动新的游戏会话,获取有关现有游戏会话的信息,以及加入玩家参加游戏会话。这些操作适用于 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 的开发工具包可用于以下语言。有关开发环境支持的详细信息,请参阅相应语言的文档。