本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
针对 FlexMatch 设置游戏服务器
使用 Amazon GameLift Servers 托管的游戏服务器必须与 Amazon GameLift Servers 服务器 SDK 集成,并具有将 Amazon GameLift Servers 添加至游戏服务器中所述的核心功能。借助此功能,您的游戏服务器将能够在 Amazon GameLift Servers 托管资源上运行并与 Amazon GameLift Servers 服务通信。以下说明描述了添加 FlexMatch 功能所需执行的其他任务。
将 FlexMatch 添加到游戏服务器
-
在开始游戏会话时使用对战数据。您的游戏服务器需实施一个名为
onStartGameSession()的回调函数。创建对战后,Amazon GameLift Servers 查找可用的游戏服务器进程并调用此函数,以提示其为该对战启动游戏会话。此调用包括一个游戏会话对象(GameSession)。您的游戏服务器使用游戏会话信息(包括对战构建器数据)以启动游戏会话。有关启动游戏会话的更多详细信息,请参阅开始游戏会话。有关对战构建器数据的更多信息,请参阅关于对战构建器数据。 -
处理玩家连接。当连接到已经匹配的游戏时,游戏客户端将引用玩家 ID 和玩家会话 ID(请参阅验证新玩家)。设置游戏服务器,以使用玩家 ID 将传入玩家与对战构建器数据中的玩家信息进行关联。对战构建器数据将标识玩家的团队分配,以及在游戏中代表玩家的其他信息。
-
在玩家离开游戏时进行报告。确保您的游戏服务器调用服务器 SDK RemovePlayerSession 来报告退出的玩家。如果您使用 FlexMatch 回填填充现有游戏中的空位置,此步骤非常重要。了解有关在 利用 FlexMatch 回填现有游戏 中实施 FlexMatch 回填的更多信息。
-
要求新玩家填补现有对战(可选)。确定您想要如何回填现有对战。如果您的对战构建器将回填模式设置为“手动”,您可能需要为您的游戏添加回填支持。如果回填模式设置为“自动”,您可能需要一种为单个游戏会话关闭此模式的方法。例如,您可能希望在游戏会话到达游戏中的某个点后停止回填。了解有关如何在 利用 FlexMatch 回填现有游戏 中实施对战回填的更多信息。