- 代理 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
- 從 XMAT 版本下載目前的 ZIP 檔案。
- 將 ZIP 檔案解壓縮至本機資料夾。
- 以系統管理員身分執行 XMAT。
- 出現提示時,安裝並信任 XMAT 根憑證。XMAT 會使用此憑證解密 HTTPS 流量。
擷取網頁流量
- 在 XMAT 中,選取 + 索引標籤。
- 選取執行遊戲的裝置:
- 若為預設 XBOX 開發主機,請選取 Default XBOX Console。
- 若為其他 XBOX 開發主機,請選取 XBOX Console at IP or Hostname。
- 若為開發電腦上的遊戲,請選取 Local PC。
- 選取 Web Proxy,然後選取 Add Capture。
- 啟動 Proxy:
- 若為 XBOX 開發主機,請選取 Enable XBOX Proxy。主機會重新啟動,並開始透過 XMAT 傳送網頁流量。
- 若為 Windows PC,請選取 Start Capture。
- 啟動遊戲,並執行您要檢查的情境。
- 選取一個連線,以檢查其要求與回應的標頭和本文。
[!IMPORTANT] 如果 XBOX 開發主機在 XMAT 未擷取時仍設定為使用 XMAT Proxy,XBOX 服務檢查與其他網路要求可能會失敗。測試完成後,請選取 Disable XBOX Proxy。主機會重新啟動以套用變更。
識別合作夥伴服務主機
在模擬服務中斷之前,請先擷取遊戲的正常流量:- 啟動 XMAT 網頁 Proxy 擷取。
- 啟動遊戲,並執行每一項使用線上服務的功能,包括:
- 選單與排行榜。
- 多人遊戲工作階段的建立與加入。
- 好友與社交功能。
- 遊戲內商店。
- 限時活動。
- 使用 Host 篩選條件檢閱遊戲所連線的每一個主機。
- 將擷取的主機與遊戲的服務清單比較,找出要測試的合作夥伴託管服務。
封鎖合作夥伴服務
XMAT 指令碼可終止對選定主機的要求,同時讓其他流量維持可用。- 在使用中的網頁 Proxy 擷取中開啟 Script Editor。
- 選取 SSL Connection Request 事件。
-
將範例主機替換為您要封鎖的每一個合作夥伴服務主機。例如:
- 選取 Enable。確認指令碼已成功編譯。
- 執行受影響的遊戲功能,並確認對選定主機的要求會失敗,而 Microsoft、XBOX 與 PlayFab 服務仍然可用。
Params.Continue 設為 false。
若要模擬在遊戲啟動前就無法使用的服務,請在啟動遊戲之前啟用封鎖指令碼。
[!CAUTION] XMAT 指令碼會影響來自所選裝置的即時流量。請將封鎖指令碼限制在測試所需的特定合作夥伴主機,並在測試完成時停用指令碼。
停止擷取
- 停用任何使用中的指令碼。
- 選取 Stop Capture。
- 如果 XBOX 開發主機正在使用 Proxy,請選取 Disable XBOX Proxy 並等待主機重新啟動。
