XBOX 服务 Title Storage 的功能
XBOX 服务 Title Storage 包括以下高级功能。- 可跨玩家、title 和各种平台共享
- 支持 JSON、二进制和配置文件
存储类型
限流限制
每分钟一个 title 可执行的读取和写入次数没有硬性限制,但在一小时会话内,平均每分钟通常不能超过一次。例如,一个 title 可在会话开始时进行 60 次读取或写入,但在该小时的其余时间内不能再执行更多。Title 应做好准备,以应对之后调用被限制的情况,以防 XBOX 服务需要对请求进行限流。如果你的 title 有特殊的分区需求(例如额外的读取或写入),请联系你的 Microsoft 代表。
数据类型
本节介绍三种受支持的类型。二进制信息
二进制信息包括图像、声音和自定义数据等。由于数据必须通过 HTTP 传输,二进制数据必须编码为 HTTP 可接受的字符。例如,你可以将数据转换为十六进制字符串,或使用 base64 编码。Title Storage 不会处理已编码的数据,因此你的游戏在从 Title Storage 读取和写入数据时,必须使用相同的方案进行编码和解码。JSON 信息
JSON 信息包括结构化数据(键值对)。你可以在支持的语言(例如 JavaScript)中使用 JSON 对象。从 JSON 文件检索数据时,游戏可以提供selectQuery 参数,以返回结构中特定的项。例如,你可以使用包含以下信息的 JSON 文件。
出于安全原因,JSON 数据的第一个元素不能是数组。以数组为根提交的 JSON 数据将被服务拒绝。
selectQuery(例如 weapon.name),然后将收到以下内容:
配置信息
配置 blob 是存储在 global title storage 中的数据结构。配置 blob 的格式类似于 JSON 对象。配置 blob 可以包含虚拟节点,这些节点会从可能的选项列表中返回一个设置。虚拟节点对于为特定情形(例如某个 title 或区域设置)提供设置非常有用。虚拟节点包括多个可能的设置,以及用于从这些值中选择的值和条件。在下面的示例中,defaultCardDesign 设置可以取虚拟节点中的一个值。
\_sourceNodes 数组中选择一个值。在本例中,该项是根据游戏的 title ID 选择的。例如,玩游戏 12456799 的玩家会看到以下内容:
customSelector 参数中传入字符串以选择要返回的项。例如,要获取第二个选项,游戏应将 gameMode.serious 作为 selectQuery 请求。
开始使用 XBOX 服务 Title Storage
- 确定你要存储哪种数据。示例包括已保存的游戏、游戏状态、每日挑战、游戏地图和美术资源。
- 确定哪些 title 和平台需要访问该数据。Title Storage 支持从单个平台上的单个 title 以及多个平台上的多个 title 进行云数据访问。
