Amazon GameLift 服务 API 参考(AWS 开发工具包)
Amazon GameLift 服务 API 已打包到 AWS 开发工具包中。下载 AWS SDK或查看 Amazon GameLift API 参考文档。
此页面列出了基于功能和任务的可用 API 操作。GameLift 服务 API 包括两个主要类别:(1) 开始游戏会话和让玩家进入游戏的操作,以及 (2) 管理 GameLift 托管资源的操作。
用于管理游戏和玩家的操作
从您的游戏客户端服务调用这些 API 操作,以启动新的游戏会话,请求对战,在活动游戏中保留玩家位置,以及处理游戏和玩家会话数据。
-
为一个或多个玩家启动新游戏会话。 使用游戏会话位置来启动新游戏,并使用最佳可用托管资源放置该游戏。或者,在一个特定队组上创建一个新的游戏会话。
-
StartGameSessionPlacement – 请求新的游戏会话位置并添加一个或多个玩家。
-
DescribeGameSessionPlacement – 获取位置请求的详细信息,包括状态。
-
StopGameSessionPlacement – 取消位置请求。
-
CreateGameSession – 在一个特定队组上启动一个新游戏会话。在 GameLift 本地可用。
-
-
通过 FlexMatch 对战使玩家进入游戏会话。 将玩家组团并为他们启动一个新游戏会话。使用匹配回填查找现有游戏的新玩家。
-
StartMatchmaking – 为一个玩家或想要一起玩的一组玩家请求对战。
-
DescribeMatchmaking – 获取有关对战请求的详细信息,包括状态。
-
AcceptMatch – 对于需要玩家接受的比赛,在玩家接受推荐的比赛时进行注册。
-
StopMatchmaking – 取消对战请求。
-
StartMatchBackfill – 请求其他玩家匹配以填充现有游戏会话中的空位。
-
-
使玩家进入现有游戏。 查找具有可用玩家位置的现有游戏,并为新玩家预留。
-
SearchGameSessions – 检索所有可用的游戏会话,或者搜索符合一组条件的游戏会话。
-
CreatePlayerSession – 预留一个开放位置供一个玩家加入游戏会话。在 GameLift 本地可用。
-
CreatePlayerSessions – 预留多个开放位置供多个玩家加入游戏会话。在 GameLift 本地可用。
-
-
处理游戏会话和玩家会话数据。 检索现有游戏会话和玩家会话的当前数据,并根据需要进行更新。
-
DescribeGameSessions – 检索一个或多个游戏会话的元数据,包括活跃时长和当前玩家数量。在 GameLift 本地可用。
-
DescribeGameSessionDetails – 检索一个或多个游戏会话的元数据和游戏会话保护设置。
-
GetGameSessionLogUrl – 获取游戏会话的已保存日志的位置。
-
DescribePlayerSessions – 获取有关玩家活动的详细信息,包括状态、游戏时间和玩家数据。在 GameLift 本地可用。
-
UpdateGameSession – 更改游戏会话设置,例如最大玩家数和加入政策。
-
用于管理游戏托管资源的操作
使用这些 API 操作为您的游戏配置托管资源,扩展容量以满足玩家需求、访问性能和利用率指标等。大多数资源管理功能在 GameLift 控制台中可用,不过您也可以使用 AWS Command Line Interface (AWS CLI) 工具或 AWS SDK直接调用服务。
-
管理游戏内部版本。 处理自定义游戏服务器的内部版本,这些版本会上传到 GameLift 服务并部署在队组上。
-
CreateBuild – 使用 Amazon S3 存储桶中存储的文件创建新内部版本。要从本地路径创建内部版本和上传文件,请使用仅用于 AWS CLI 的命令 upload-build。
-
ListBuilds – 获取上传到 GameLift 区域的所有内部版本的列表。
-
DescribeBuild – 检索与某个内部版本关联的信息。
-
UpdateBuild – 更改内部版本元数据,包括内部版本名称和版本。
-
DeleteBuild – 从 GameLift 中删除内部版本。
-
-
管理Realtime脚本。 处理配置脚本以与 实时服务器 结合使用。与自定义游戏内部版本不同,脚本可以在上传到 GameLift 服务后进行更新。
-
CreateScript – 创建要在 实时服务器 上运行的新服务器脚本。
-
ListScripts – 获取上传到某个 Realtime 区域的所有 GameLift 脚本的列表。
-
DescribeScript – 检索与 Realtime 脚本关联的信息。
-
UpdateScript – 更改脚本元数据并上传修订后的脚本内容。
-
DeleteScript – 从 GameLift 中删除Realtime脚本。
-
-
管理队组用于游戏托管。 配置托管资源队组,并将您的游戏服务器或Realtime脚本部署到队组。
-
CreateFleet – 配置并激活新的队组,以运行您的自定义游戏服务器内部版本或Realtime脚本。
-
ListFleets – 获取 GameLift 区域中所有队组的列表。
-
DeleteFleet – 终止不再运行游戏服务器或托管玩家的队组。
-
查看/更新队组配置。
-
DescribeFleetAttributes/UpdateFleetAttributes – 查看或更改队组的元数据和设置,用于游戏会话保护和资源创建限制。
-
DescribeFleetPortSettings/UpdateFleetPortSettings – 查看或更改队组允许的入站权限(IP 地址和端口设置范围)。
-
DescribeRuntimeConfiguration/UpdateRuntimeConfiguration – 查看或更改在队组中的每个实例上运行的服务器进程(以及数量)。
-
-
-
扩展队组容量。 设置队组自动扩展或者手动设置队组容量。
-
DescribeEC2InstanceLimits – 检索当前 AWS 账户允许的最大实例数和当前使用量级别。
-
DescribeFleetCapacity – 检索队组当前容量设置。
-
UpdateFleetCapacity – 手动调整队组容量设置。
-
管理自动扩展。
-
PutScalingPolicy – 启用基于目标的自动扩展,创建自定义自动扩展策略,或者更新现有策略。
-
DescribeScalingPolicies – 检索现有的自动扩展策略。
-
DeleteScalingPolicy – 删除自动扩展策略并阻止其影响列队的容量。
-
StartFleetActions – 重新启动队组的自动扩展策略。
-
StopFleetActions – 暂停队组的自动扩展策略。
-
-
-
管理游戏会话队列。 设置多队组、多区域队列,以便使用最佳可用托管资源放置游戏会话。FlexMatch 对战需要队列。
-
CreateGameSessionQueue – 创建一个队列,供在处理游戏会话位置请求时使用。
-
DescribeGameSessionQueues – 检索 GameLift 区域中定义的游戏会话队列。
-
UpdateGameSessionQueue – 更改游戏会话队列的配置。
-
DeleteGameSessionQueue – 从该区域删除游戏会话队列。
-
-
管理 FlexMatch 资源。 为您的游戏配置对战构建器,并指定匹配规则以创建玩家团队来满足您的自定义规范。
-
CreateMatchmakingConfiguration – 创建对战配置,其中包含构建玩家组和加入新游戏会话的说明。
-
DescribeMatchmakingConfigurations – 检索 GameLift 区域中定义的对战配置。
-
UpdateMatchmakingConfiguration – 更改对战配置队列的设置。
-
DeleteMatchmakingConfiguration – 从区域中删除对战配置。
-
CreateMatchmakingRuleSet – 创建一组在搜索玩家匹配时使用的规则。
-
DescribeMatchmakingRuleSets – 检索 GameLift 区域中定义的对战规则集。
-
ValidateMatchmakingRuleSet – 验证一组对战规则的语法。
-
DeleteMatchmakingRuleSet – 从区域中删除对战规则集。
-
-
监控队组活动。 获取有关某个队组上服务器进程和游戏会话活动的最新信息。
-
DescribeFleetUtilization – 检索有关当前在队组上处于活动状态的服务器进程、游戏会话和玩家数量的统计信息。
-
DescribeFleetEvents – 查看在指定的时间范围内队组的已记录事件。
-
DescribeGameSessions – 检索游戏会话元数据,包括游戏的运行时间和当前玩家数量。
-
-
远程访问实例。 监控指定的队组实例上的活动或排查活动的问题。
-
DescribeInstances – 获取有关队组中每个实例的信息,包括实例 ID、IP 地址和状态。
-
GetInstanceAccess – 请求远程连接到队组中的指定实例时所需的访问凭证。
-
-
管理队组别名。 使用别名来表示您的队组或者指定替代目标。
-
CreateAlias – 定义新别名并可以选择将其分配给队组。
-
ListAliases – 获取 GameLift 区域中定义的所有队组别名。
-
DescribeAlias – 检索有关现有别名的信息。
-
UpdateAlias – 更改别名的设置,例如将其从一个队组重定向到另一个队组。
-
DeleteAlias – 从区域中删除别名。
-
ResolveAlias – 获取指定的别名指向的队组 ID。
-
-
管理队组的 VPC 对等连接。 使用 VPC 对等在您的 GameLift 和其他 AWS 资源之间建立安全访问。
-
CreateVpcPeeringAuthorization – 授权与其中一个 VPC 建立对等连接。
-
DescribeVpcPeeringAuthorizations – 检索有效的对等连接授权。
-
DeleteVpcPeeringAuthorization – 删除对等连接授权。
-
CreateVpcPeeringConnection – 在 GameLift 队组的 VPC 和您的一个 VPC 之间建立对等连接。
-
DescribeVpcPeeringConnections – 检索与 GameLift 队组建立的活动或待处理 VPC 对等连接的信息。
-
DeleteVpcPeeringConnection – 删除与 GameLift 队组建立的 VPC 对等连接。
-
可用编程语言
AWS SDK和 Amazon 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)