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

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

GameLift 服务 API 已打包到 AWS 开发工具包中。下载 AWS SDK查看 Amazon GameLift API 参考文档

使用游戏会话和玩家

使用托管 GameLift 解决方案时,请从游戏客户端服务调用这些操作,以启动或加入游戏会话并访问游戏和玩家会话数据。这些操作适用于在 GameLift 上托管的自定义游戏服务器上的游戏。如果您正在使用实时服务器,请参阅实时服务器 客户端 API (C#) 参考

  • 为一个或多个玩家启动新游戏会话。 找到当前可用的最佳托管资源,并使用它启动新的游戏会话。或者,在一个指定的队组上创建新的游戏会话。

  • 使玩家进入现有游戏。 查找具有可用玩家位置的现有游戏,并为新玩家预留。

    • SearchGameSessions – 检索所有可用的游戏会话,或者搜索符合一组条件的游戏会话。

    • CreatePlayerSession – 预留一个开放位置供一个玩家加入游戏会话。在 GameLift 本地可用。

    • CreatePlayerSessions – 预留多个开放位置供多个玩家加入游戏会话。在 GameLift 本地可用。

  • 处理游戏会话和玩家会话数据。 检索现有游戏会话和玩家会话的当前数据,并根据需要进行更新。

    • DescribeGameSessions – 检索一个或多个游戏会话的元数据,包括活跃时长和当前玩家数量。在 GameLift 本地可用。

    • DescribeGameSessionDetails – 检索一个或多个游戏会话的元数据和游戏会话保护设置。

    • GetGameSessionLogUrl – 获取游戏会话的已保存日志的位置。

    • DescribePlayerSessions – 获取有关玩家活动的详细信息,包括状态、游戏时间和玩家数据。在 GameLift 本地可用。

    • UpdateGameSession – 更改游戏会话设置,例如最大玩家数和加入政策。

使用托管的 GameLift 托管资源

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

设置游戏服务器

为您的游戏配置游戏服务器,这些服务器部署在队组中以进行托管。

自定义游戏服务器生成包

  • CreateBuild – 使用 Amazon S3 存储桶中存储的文件创建新内部版本。要从本地路径创建内部版本和上传文件,请使用仅用于 AWS CLI 的命令 upload-build

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

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

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

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

实时服务器 配置脚本

  • CreateScript – 创建要在 实时服务器 上运行的新服务器脚本。

  • ListScripts – 获取上传到某个 Realtime 区域的所有 GameLift 脚本的列表。

  • DescribeScript – 检索与 Realtime 脚本关联的信息。

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

  • DeleteScript – 从 GameLift 中删除Realtime脚本。

管理计算资源

配置托管资源并部署游戏服务器生成包或Realtime配置脚本。

机群

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

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

游戏会话队列

管理队组别名

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

别名

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

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

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

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

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

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

访问托管实例

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

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

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

设置 VPC 对等连接

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

使用 FlexMatch 对战

使用托管 GameLift 解决方案时,请使用这些操作为您的游戏设置自定义对战,并为玩家请求对战。您可以使用自定义游戏生成包或实时服务器将 FlexMatch 添加到游戏。

设置对战规则和流程

配置 FlexMatch 对战构建器并定义一组用于创建对战和团队的规则。

对战配置

对战规则集

请求对战

从游戏客户端服务调用这些操作来管理玩家对战请求。成功的对战将自动放在新的游戏会话中。

  • StartMatchmaking – 为一个玩家或想要一起玩的一组玩家请求对战。

  • DescribeMatchmaking – 获取有关对战请求的详细信息,包括状态。

  • AcceptMatch – 对于需要玩家接受的比赛,在玩家接受推荐的比赛时进行注册。

  • StopMatchmaking – 取消对战请求。

  • StartMatchBackfill – 请求其他玩家匹配以填充现有游戏会话中的空位。

使用 GameLift FleetIQ

使用这些独立的 GameLift FleetIQ 解决方案时,通过这些操作可以管理与 Auto Scaling 组一起托管在 Amazon EC2 资源上的游戏服务器组和游戏服务器。

游戏服务器组

游戏服务器

  • RegisterGameServer – 从新的游戏服务器进行调用,以通知 GameLift FleetIQ 游戏服务器已准备好托管游戏。

  • ListGameServers – 从游戏客户端服务进行调用,以获取当前在游戏服务器组中运行的所有游戏服务器的列表。

  • ClaimGameServer – 从游戏客户端服务进行调用,以查找并保留游戏服务器以托管新游戏会话。

  • DescribeGameServer – 检索游戏服务器的元数据。

  • UpdateGameServer – 更改游戏服务器元数据、运行状况或利用率状态。

  • DeregisterGameServer – 从终止游戏服务器进行调用,以提示 GameLift FleetIQ 从游戏服务器组中删除游戏服务器。

可用编程语言

AWS SDK和 Amazon GameLift 提供以下语言版本。有关开发环境的支持详情,请参阅每种语言的文档。