跳轉到主要內容
XBOX Multiplayer Analysis Tool (XMAT) 可擷取、檢查與修改來自 XBOX 開發主機與 Windows PC 的網路流量。請下載最新的 XMAT 版本。 XMAT 可以:
  • 代理 HTTP 與 HTTPS 流量。
  • 解密並顯示要求與回應資料。
  • 依主機、狀態碼與方法篩選擷取的流量。
  • 執行可修改或終止要求與回應的 C# 指令碼。
  • 擷取並分析來自 XBOX 開發主機的低階網路流量。
  • 分析即時或已儲存的擷取,找出有問題的 XBOX 服務呼叫模式。

需求

XMAT 需要:
  • 執行 Windows 10 版本 1809 (組建 17763) 或更新版本,或 Windows 11 的開發電腦。
  • 開發電腦上的系統管理員權限。
  • 適用於 Windows x64 的 .NET 10 Desktop Runtime 與 ASP.NET Core Runtime,或適用於 Windows x64 的 .NET 10 SDK。
  • 若要進行主機擷取,需要執行 recovery 2106 或更新版本的 XBOX 開發主機。
  • 若要使用連線至 XBOX 開發主機的 XMAT 功能,需要 GDK Extensions for XBOX。

安裝 XMAT

  1. 從 XMAT 版本下載目前的 ZIP 檔案。
  2. 將 ZIP 檔案解壓縮至本機資料夾。
  3. 以系統管理員身分執行 XMAT。
  4. 出現提示時,安裝並信任 XMAT 根憑證。XMAT 會使用此憑證解密 HTTPS 流量。

擷取網頁流量

  1. 在 XMAT 中,選取 + 索引標籤。
  2. 選取執行遊戲的裝置:
    • 若為預設 XBOX 開發主機,請選取 Default XBOX Console。
    • 若為其他 XBOX 開發主機,請選取 XBOX Console at IP or Hostname。
    • 若為開發電腦上的遊戲,請選取 Local PC。
  3. 選取 Web Proxy,然後選取 Add Capture。
  4. 啟動 Proxy:
    • 若為 XBOX 開發主機,請選取 Enable XBOX Proxy。主機會重新啟動,並開始透過 XMAT 傳送網頁流量。
    • 若為 Windows PC,請選取 Start Capture。
  5. 啟動遊戲,並執行您要檢查的情境。
  6. 選取一個連線,以檢查其要求與回應的標頭和本文。
使用 Host、Status 與 Method 篩選條件來隔離相關流量。在 File 功能表上選取 Save Captures,將擷取儲存為 XMATCAP 檔案。
[!IMPORTANT] 如果 XBOX 開發主機在 XMAT 未擷取時仍設定為使用 XMAT Proxy,XBOX 服務檢查與其他網路要求可能會失敗。測試完成後,請選取 Disable XBOX Proxy。主機會重新啟動以套用變更。

識別合作夥伴服務主機

在模擬服務中斷之前,請先擷取遊戲的正常流量:
  1. 啟動 XMAT 網頁 Proxy 擷取。
  2. 啟動遊戲,並執行每一項使用線上服務的功能,包括:
    • 選單與排行榜。
    • 多人遊戲工作階段的建立與加入。
    • 好友與社交功能。
    • 遊戲內商店。
    • 限時活動。
  3. 使用 Host 篩選條件檢閱遊戲所連線的每一個主機。
  4. 將擷取的主機與遊戲的服務清單比較,找出要測試的合作夥伴託管服務。
測試合作夥伴服務連線時,請勿封鎖 Microsoft、XBOX 或 PlayFab 服務主機。請確認每個主機的擁有者,而不要只依賴其名稱中的子字串來判斷。

封鎖合作夥伴服務

XMAT 指令碼可終止對選定主機的要求,同時讓其他流量維持可用。
  1. 在使用中的網頁 Proxy 擷取中開啟 Script Editor。
  2. 選取 SSL Connection Request 事件。
  3. 將範例主機替換為您要封鎖的每一個合作夥伴服務主機。例如:
  4. 選取 Enable。確認指令碼已成功編譯。
  5. 執行受影響的遊戲功能,並確認對選定主機的要求會失敗,而 Microsoft、XBOX 與 PlayFab 服務仍然可用。
SSL Connection Request 事件會封鎖 HTTPS 連線。如果合作夥伴服務使用未加密的 HTTP,請將相同的主機條件套用至 Web Request 事件,並將 Params.Continue 設為 false。 若要模擬在遊戲啟動前就無法使用的服務,請在啟動遊戲之前啟用封鎖指令碼。
[!CAUTION] XMAT 指令碼會影響來自所選裝置的即時流量。請將封鎖指令碼限制在測試所需的特定合作夥伴主機,並在測試完成時停用指令碼。

停止擷取

  1. 停用任何使用中的指令碼。
  2. 選取 Stop Capture。
  3. 如果 XBOX 開發主機正在使用 Proxy,請選取 Disable XBOX Proxy 並等待主機重新啟動。
如需已知問題與支援選項,請參閱 XMAT 專案文件與 XMAT 支援原則。
最後修改於 2026年10月20日