> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XR-132 服务访问限制

> 超出游戏和用户限制或忽略 XBOX network 重试策略的游戏可能会被限流，从而阻止发布或导致服务被暂停。

# XR-132：服务访问限制 \*

版本 1.2，2025 年 11 月 1 日

在调用 XBOX network 服务时超出基于游戏和用户的限制、或不遵守 XBOX network 服务重试策略的游戏可能会被限流，进而可能导致服务中断或降级。未能遵守指定的限制可能会阻止游戏发布；已发布游戏在生产环境中的问题可能会导致 XBOX network 服务被暂停，甚至可能被下架。

<Note>
  虽然 XR-132 聚焦于多人游戏，但如果单人游戏访问了 XBOX network 服务，也同样适用。例如，如果单人游戏使用云存档、成就或其他 XBOX network 功能，就必须遵守 XR-132 指南。
</Note>

## 认证测试用例

### 132-01 服务访问限制

#### 所需工具

* 主机版 Fiddler 或 PC 版 Fiddler
* 来自 GDK 开发工具下载包的 [XBOX services Trace Analyzer](https://aka.ms/xboxlivetoolspackage)。它用于查看游戏发出的服务调用，并发现调用模式中的任何违规。

#### 测试步骤

**使用 Fiddler Classic：**

1. 在启动游戏之前，启动 Fiddler Classic，并确保其配置为从主机或 Windows 10 PC（相关游戏运行的位置）捕获网络流量。
2. 在 Fiddler Classic 运行并捕获网络流量的状态下，启动游戏并遍历所有区域，包括但不限于：
   * 创建游戏存档，重启主机并加载存档
   * 快速连续更改丰富状态（rich presence）（如可能）
   * 解锁并查看成就
   * 向所有排行榜发布内容，并使用所有筛选器查看所有排行榜
   * 查看游戏内好友列表（包括一位屏蔽显示状态的好友），并快速在页面之间切换
   * 获得并查看 Hero Stat
   * 匹配加入所有在线模式，包括无法找到可用会话的情况（如可能），并产生语音流量
   * 创建、保存并分享游戏片段
   * 访问游戏内商店（如适用）
3. 测试结束后，将 Fiddler 捕获保存到本地目录。
4. 在 GDK/XDK 命令提示符中运行 `XblTraceAnalyzer -data filepath -outputdir filepath`。
5. 打开第 4 步的输出目录，并打开 'index' 文件（如果提示，选择"允许被阻止的内容"）。

**使用 `xbtrace.exe`**

请注意，`xbtrace.exe` 只有在游戏启动后才能开始工作，但应尽快启动以捕获游戏在启动期间发出的任何 XBOX 服务调用。因此，捕获游戏流量的首选方法是 Fiddler Classic，因为它可以在启动游戏之前先运行。

1. 在游戏运行的状态下，运行 `xbtrace start xboxliveservices`，并遍历游戏的所有区域，包括但不限于：
   * 创建游戏存档，重启主机并加载存档
   * 快速连续更改丰富状态（如可能）
   * 解锁并查看成就
   * 向所有排行榜发布内容，并使用所有筛选器查看所有排行榜
   * 查看游戏内好友列表（包括一位屏蔽显示状态的好友），并快速在页面之间切换
   * 获得并查看 Hero Stat
   * 匹配加入所有在线模式，包括无法找到可用会话的情况（如可能），并产生语音流量
   * 创建、保存并分享游戏片段
   * 访问游戏内商店（如适用）
2. 测试结束后，运行 `xbtrace stop` 两次。
3. 浏览主机文件，在 `SystemScratch > xbtrace` 中会找到 csv 文件。检查时间戳以确认其记录了你停止录制的时间。将其复制到本地。
4. 在 XDK 命令提示符中运行 `Xbltraceanalyzer -data filepath -outputdir filepath`。
5. 打开第 4 步的输出目录，并打开 'index' 文件（如果提示，选择"允许被阻止的内容"）。

#### 预期结果

游戏必须确保其对 XBOX 端点的服务调用低于指定的突发和持续限制，且其 XBOX services Trace Analyzer 报告中不能出现红色结果。

XBOX services Trace Analyzer 工具会生成一个 `report.txt` 文件，指明发现违规的规则以及这些违规的详细信息。

<Tip>
  **解读 XBOX services Trace Analyzer 报告**

  * **红色** — 表示超出细粒度限流生效阈值 10 倍的问题。在认证中这是严重问题。
  * **黄色** — 表示由于游戏超出了服务允许的调用频率而被限流，但未达到会在认证中构成严重问题的阈值。游戏应设法解决。
  * **绿色** — 表示游戏对 XBOX 服务的调用频率低于会触发限流的频率。
</Tip>

**通过示例**

1. 游戏在调用 XBOX 服务时未超过持续限制。
2. XBOX services Trace Analyzer 报告仅包含黄色和/或绿色结果。

**不通过示例**

1. 游戏超过持续限制（限流生效点）10 倍。例如，如果细粒度限流生效的持续限制设为 300 秒内 300 次调用，则达到或超过 300 秒内 3000 次调用的游戏将不通过。
2. XBOX services Trace Analyzer 报告包含一个或多个红色结果。

### 132-02 游戏事件限制

#### 测试步骤

1. 安装游戏，并在游戏运行的状态下遍历游戏的所有区域，包括但不限于：
   * 创建游戏存档，重启主机并加载存档
   * 快速连续更改丰富状态（如可能）
   * 解锁并查看成就
   * 向所有排行榜发布内容，并使用所有筛选器查看所有排行榜
   * 查看游戏内好友列表（包括一位屏蔽显示状态的好友），并快速在页面之间切换
   * 获得并查看 Hero Stat
   * 匹配加入所有在线模式，包括无法找到可用会话的情况（如可能），并产生语音流量
   * 创建、保存并分享游戏片段
   * 访问游戏内商店（如适用）
2. 在测试期间，观察游戏是否会出现"游戏事件限制"（Game Event Limitations）系统提示。

#### 预期结果

游戏不得触发"游戏事件限制"系统提示。

**通过示例**

1. 游戏未触发"游戏事件限制"系统提示。

**不通过示例**

1. 游戏触发了"游戏事件限制"系统提示。
