关于 Amazon GameLift 托管资源 - Amazon GameLift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

关于 Amazon GameLift 托管资源

本主题简要介绍了在使用托管 GameLift 服务来托管游戏时,您将处理的关键资源。在 Amazon GameLift 的工作原理中详细了解 GameLift 的工作原理。

下图说明了 GameLift 资源的基本结构及其彼此之间的关系。如图所示,您可以构造资源集,以通过单个生成包或脚本部署一个或多个队组。


            图中显示如何排列 GameLift 资源对象:使用生成包或脚本创建队组,向队组提供别名,队组可以按其别名添加到游戏会话队列中。对于使用 FlexMatch 对战的游戏,使用游戏会话队列和对战规则集来创建对战配置。GameLift 资源集可以包含基于生成包或脚本的一个或多个队组。游戏会话队列可以指向多个队组别名。
构建

在 GameLift 上运行并为玩家托管游戏会话的自定义生成游戏服务器软件。游戏生成包表示在特定操作系统上运行游戏服务器的一组文件。您可以有许多不同的生成包,如针对不同的游戏风格的生成包。游戏生成包必须与 GameLift 服务集成。您可以在计划部署游戏的每个区域中,将游戏生成包文件上传到 GameLift 服务。

Script

用于 实时服务器 的配置和自定义游戏逻辑。实时服务器 由 GameLift 提供来代替自定义游戏服务器。您可以使用 JavaScript 创建脚本,为游戏客户端配置 实时服务器,并视情况添加自定义游戏逻辑来托管玩家的游戏会话。您可以在计划部署游戏的每个区域中,将 Realtime 脚本上传到 GameLift 服务。

队列

运行游戏服务器并托管玩家的游戏会话的虚拟托管资源集合。您在某个区域中创建队组,部署自定义游戏生成包或 Realtime 服务器脚本,您配置希望队组运行游戏的方式。您设置扩展规则来管理队组的大小,这确定队组可以支持的游戏会话和玩家数量。您可以为一个生成包创建多个队组;例如,您可以为一个生成包创建一个 Spot 队组和一个按需队组。在多个区域中部署游戏时,您可以在计划部署游戏的每个区域中创建一个队组。

别名

队组的抽象标识符。您可以随时更改它指向的队组。由于在您更新自定义游戏生成包时就会替换队组,因此最佳做法是,创建别名,并在需要引用特定队组时(例如在游戏会话队列中)使用别名。当您替换了队组并准备好使其上线时,请切换别名以指向新的队组并在不中断的情况下重定向玩家。您在与队组指向的相同区域中创建别名。

游戏会话队列

可以托管游戏会话的目标(队组或别名)列表。对新游戏会话的请求必须提供特定队组 ID 或游戏会话队列 ID,以此来指定放置会话的位置。队列可以跨区域指向目标,从而实现更快、更高效的游戏会话放置。您可以设置队列以强制实施玩家延迟限制,以免玩家遇到不可接受的游戏延迟。使用 FlexMatch 对战或 Spot 队组的游戏需要使用队列。您可以在任意区域创建游戏会话队列。

对战配置

您针对 FlexMatch 应如何处理对战请求所进行的配置。其中的两个关键配置是对战规则集和游戏会话队列。对战规则集向 GameLift 说明如何为对战评估潜在玩家。游戏会话队列向 GameLift 说明在为对战托管新游戏会话的位置。您可以有多个对战配置。针对新对战的每个请求必须指定要使用的对战配置。您可以在任何区域创建对战配置。

对战规则集

您针对如何为游戏尽可能生成最佳的对战提供的说明。规则集定义了对战团队结构和规模,并包含用于评估潜在玩家的规则。规则可以针对单个玩家或整个团队设置要求。规则集还可以设置准则,规定随时间放松规则的时机和方式,以最大限度地减少玩家的等待时间。规则集由对战配置使用。您在使用对战规则集的对战配置所在的区域中创建该规则集。