XR-067:维护多人游戏会话状态 \*

版本 1.1,2020/5/1

在 Xbox 主机上,具有在线多人游戏功能的游戏都必须在 Xbox Live 中维护会话状态信息。 游戏通过 Xbox 多人游戏会话目录 (MPSD) 执行此操作;如果游戏具有自己的多人游戏会话状态功能,则可以选择改为使用多人游戏活动最近互动玩家功能记录玩家互动。

在 Xbox 主机以外的设备上,通过 Xbox 主机提供跨平台多人游戏服务的游戏必须在 Xbox 多人游戏会话目录 (MPSD) 中维护会话状态信息。 如果它们有自己的会话状态功能,则可以改为使用多人游戏活动最近互动玩家功能记录玩家互动。

详细信息

当多个用户正在某个联网体验中一起玩游戏时,该组玩家必须在包含所有玩家的 MPSD 中具有至少一个会话。 当某一会话处于互动的多人游戏中时,该多人游戏会话中的游戏功能必须设置为 True。 随着玩家加入和离开该游戏体验,必须相应将这些玩家加入到 MPSD 会话中或者从该会话中删除。

意图:确保 Xbox 系统知道正在一起在线玩游戏的用户。 此信息用于支持最近互动玩家列表、玩家反馈、使用情况报告以及平台的其他功能。

如果游戏不要求 MPSD 运行,而是使用多人游戏活动最近互动玩家功能,则可以假定游戏将记录游戏过程中发生的所有有意义的互动。 这些互动可能包括游戏会话中的所有玩家,或者可能包括一部分玩家(如果游戏会话较大且玩家互动仅限于所有玩家中的一小部分玩家)。

有关使用 GDK 的 MPSD 的信息,请阅读 多人游戏会话目录概述

实现指南和最佳做法

其他资源

XDK 文档 Net Rumble Cross Play 中的一个主题“Xbox One 中的多人游戏”,可从“GDN 上的示例”获得的一个代码示例

认证测试案例

测试步骤

  1. 登录到某一 Xbox Live 档案并在多台设备上启动游戏。
  2. 完成具有所有玩家的一个 Xbox Live 游戏会话。
  3. 返回主页并且查看最近玩家列表,以便确认来自该游戏会话的所有玩家都已包括在内。
  4. 多次重复步骤 [1]–[3],但此时每次都使用新帐户。
  5. 重复步骤 [1] - [4],但此时在玩游戏期间让一个或多个玩家离开,并且在步骤 [2] 期间确保其档案仍出现在最近玩家列表中。

预期结果
用户必须能够查看每个最近所玩游戏会话中的所有玩家。

通过示例

  1. 所有档案都包括在设备的最近玩家列表中。

失败示例

  1. 不是所有档案都包括在设备的最近玩家列表中。
  2. 在玩多人游戏期间退出的用户不出现在最近玩家列表中。

更改历史记录

日期 文档版本 更改说明
2020 年 5 月 1 日 7.1 更新为在 Xbox 主机上启用跨平台游戏后,需要在非主机设备上集成