其他資訊
遊戲應根據自身網路作業的效能做出反應,和/或使用 Windows.XBOX.Networking 網路品質 API 來判斷目前的網路狀況。遊戲也應透過傳輸較少資料、選擇適當的使用者角色或運用雲端服務來適度降級。處理非 XBOX 服務的問題
遊戲遇到合作夥伴服務的問題 (例如非暫時性逾時、網路 API 錯誤,或影響使用者體驗的服務設定遺失) 時,應提醒使用者無法使用的特定功能或服務。遊戲應妥善地失敗並回到安全狀態,讓使用者進行疑難排解,或回到使用者可以手動重試的狀態。 使用者易懂的訊息範例如下:「很抱歉,非 Microsoft 服務_目前無法使用。請稍後再試。如需詳細資訊,請連絡_非 Microsoft 支援連絡資訊。」
處理 XBOX 服務的問題
如果與 XBOX 服務的連線中斷,某些功能可能會無法使用。在這類情況下,遊戲應使用清楚且使用者易懂的訊息告知使用者。 如果服務無法使用,遊戲可以重試其要求,但只能在 XBOX 允許的參數範圍內進行。如需 XBOX 主機遊戲之服務復原能力的詳細資訊,包括必要的 HTTP 重試和輪詢間隔邏輯,以及個別服務的使用者互動指引,請參閱遊戲的服務中斷復原能力需要 XBOX 連線
為 XBOX 主機開發時,大部分功能都需要連線至網際網路 (尤其是 XBOX) 的遊戲,可能會想在其 AppX 資訊清單中加入布林值旗標RequireXboxLive。這會在 XBOX 無法使用時阻止遊戲在 XBOX 主機上啟動,並在連線中斷時暫停遊戲,接著終止遊戲。
如需使用 GDK 進行網路功能的相關資訊,請參閱網路功能章節。
認證測試案例
074-01 與 XBOX 服務的 WAN 連線中斷
測試步驟- 登入 XBOX 設定檔。
- 在執行下列動作時,中斷 WAN 網路連線。如果您使用乙太網路交換器/集線器,請從網路裝置拔除上行纜線。如果裝置是透過 Wifi 連線,請從無線存取點連線拔除上行纜線:
- 建立新的存檔點
- 載入存檔點
- 到達自動存檔點
- 列舉已儲存遊戲的清單
- 搜尋並加入線上工作階段
- 嘗試建立線上工作階段
- 檢視排行榜 (如果適用)
- 離線遊玩
如果主機無法連線至 XBOX 服務,遊戲應以使用者易懂的錯誤訊息回應。 通過範例
- 遊戲顯示錯誤訊息,指出與 XBOX 服務的網路連線已中斷。
- 在遊玩不需要 XBOX 服務的本機遊戲模式時,遊戲不會顯示錯誤訊息。
- AppX 資訊清單中包含
RequireXboxLive的遊戲,在連線中斷時會暫停,然後終止。
- 使用者無法完成非線上的 XBOX 遊戲工作階段。
- 遊戲進入沒有回應或不穩定的狀態。
074-02 直接中斷連線
測試步驟- 啟動遊戲並登入 XBOX 設定檔。
- 在遊戲中執行下列動作時,從裝置拔除網路線,或關閉 WAP 或無線路由器的電源:
- 建立新的存檔點。
- 載入存檔點。
- 到達自動存檔點。
- 列舉已儲存遊戲的清單。
- 搜尋並加入線上工作階段。
- 嘗試建立線上工作階段。
- 檢視排行榜 (如果適用)。
- 離線遊玩。
如果裝置與 XBOX 服務的連線中斷,遊戲應以使用者易懂的錯誤訊息回應。 通過範例
- 遊戲在線上遊戲模式中顯示使用者易懂的訊息。
- 遊戲在離線遊戲模式中不會中斷遊戲過程。
- AppX 資訊清單中包含
RequireXboxLive的遊戲,在連線中斷時會暫停,然後終止。
- 在離線遊戲模式中顯示錯誤訊息。
- 遊戲進入沒有回應或不穩定的狀態。
- 網路離線後,使用者仍能檢視線上功能表或檢視已緩衝的媒體。
074-03 暫停期間與 XBOX 服務的連線中斷
在零售版主機上,遊戲會在下列情況下暫停:- 當電源模式設為「立即開機」時關閉主機,使主機進入連線待命狀態。
- 當遊戲失去焦點達十分鐘時。例如,啟動「設定」等應用程式並讓其保持焦點十分鐘。
- 在主機電源模式設為「立即開機」的情況下,登入 XBOX 設定檔。
- 啟動遊戲並進入遊戲過程。
- 在遊戲中的各個時間點暫停遊戲。
- 繼續遊戲,並確認遊戲妥善處理連線中斷。
- 在整個遊戲過程中重複步驟 3-4。
如果主機在暫停後無法連線至 XBOX 服務,遊戲必須成功繼續、妥善處理該情況,並在適當時以使用者易懂的錯誤訊息回應。 通過範例
- 在線上 XBOX 多人工作階段期間,遊戲顯示錯誤訊息,指出與 XBOX 服務的網路連線已中斷。
- 在遊玩不需要 XBOX 服務的本機遊戲模式時,遊戲不會顯示錯誤訊息。
- 使用者無法完成非線上的 XBOX 遊戲工作階段。
- 遊戲進入沒有回應或不穩定的狀態。
- 遊戲在繼續後顯示誤導或不正確的錯誤訊息。
074-04 暫停期間重新連線至 XBOX 服務
在零售版主機上,遊戲會在下列情況下暫停:- 當電源模式設為「立即開機」時關閉主機,使主機進入連線待命狀態。
- 當遊戲失去焦點達十分鐘時。例如,啟動「設定」等應用程式並讓其保持焦點十分鐘。
- 在主機電源模式設為「立即開機」的情況下,登入 XBOX 設定檔,並確保主機位於首頁。
- 在沒有連線至 XBOX 但保留本機網路連線的情況下,啟動遊戲。
- 如果使用乙太網路交換器/集線器,請從網路裝置拔除上行纜線。
- 如果裝置是透過 Wifi 連線,請從無線存取點拔除上行纜線。
- 在遊戲中的各個時間點暫停遊戲。
- 重新連接上行纜線,並等待主機重新連線至 XBOX 服務。
- 繼續遊戲,並確認遊戲妥善處理重新連線。
- 在整個遊戲過程中重複步驟 2-5。
如果主機在暫停後無法連線至 XBOX 服務,遊戲必須成功繼續、妥善處理該情況,並在適當時以使用者易懂的錯誤訊息回應。 通過範例
- 使用者能夠繼續遊戲,並在不中斷的情況下完成離線的 XBOX 遊戲工作階段。
- 遊戲保持穩定且不會當機。
- 使用者無法完成非線上的 XBOX 遊戲工作階段。
- 遊戲進入沒有回應或不穩定的狀態。
- 遊戲在繼續後顯示誤導或不正確的錯誤訊息。
074-07 動態連線中斷
所需工具: 設定 XMAT 以封鎖合作夥伴服務 如需安裝、擷取設定和指令碼撰寫的指示,請參閱使用 XBOX Multiplayer Analysis Tool 檢查和修改網路流量。- 以系統管理員身分啟動 XMAT,並為受測裝置新增 Web Proxy 擷取。
- 在 XBOX 開發主機上,選取 Enable XBOX Proxy,並等待主機重新啟動。
- 在 Windows 上,選取 Start Capture。
- 在 XMAT 擷取期間,啟動遊戲並瀏覽所有功能表、完成一場多人工作階段、載入每個遊戲模式,並瀏覽遊戲的所有區域,包括:
- 功能表。
- 排行榜。
- 伺服器 (建立一個伺服器並加入其他人的伺服器)。
- 朋友清單。
- 遊戲內商店。
- 限時活動。
- 使用 Host 篩選器,找出一般遊戲過程中所連線的合作夥伴服務主機。封鎖所選主機之前,請確認這些主機不屬於 Microsoft、XBOX 或 PlayFab。
- 開啟 Script Editor,選取 SSL Connection Request 事件,並建立指令碼,針對每個合作夥伴服務主機將
Params.Continue設為false。 - 啟用指令碼,並確認指令碼編譯成功。接著停用指令碼,讓合作夥伴服務在測試開始時保持可用。讓 XMAT 擷取持續執行。
- 在停用 XMAT 封鎖指令碼的情況下,登入 XBOX 設定檔並啟動遊戲。
- 瀏覽至使用合作夥伴託管服務的遊戲功能,並確認該功能可用。
- 在不關閉遊戲的情況下,啟用 XMAT 封鎖指令碼。
- 繼續進行遊戲,並操作所有適用的區域,包括:
- 功能表
- 排行榜
- 伺服器 (建立一個伺服器並加入其他人的伺服器)
- 朋友清單
- 遊戲內商店
- 限時活動
- 確認遊戲不會顯示指出 XBOX network 發生問題的錯誤訊息。
遊戲妥善處理與非 Microsoft 服務的連線中斷。 通過範例
- 與合作夥伴託管服務的連線中斷時,遊戲不會停止回應或當機。
- 顯示的訊息暗示 Microsoft 服務發生問題。
- 顯示不具描述性的錯誤訊息。
- 遊戲當機、變得不穩定,或導致主機重新開機。
074-08 啟動前的停機
所需工具:- GDK/XDK 中的 xbstress.exe
- 適用於 Windows 的 XBOX Multiplayer Analysis Tool (XMAT)。
- 在主機上,使用下列命令,以 xbstress.exe 為非 Microsoft 流量建立中斷的網路通道:
xbstress set channel=0 network=broken addresses=[semicolon delimited list of addresses]
- 使用下列命令啟動網路模擬:
xbstress simulate network=channels。 - 如果在 Windows 上進行測試,請在啟動遊戲之前,設定 XMAT Web Proxy 擷取,並啟用封鎖適用合作夥伴服務主機的指令碼。
- 登入 XBOX 設定檔。
- 啟動遊戲。
- 存取非 Microsoft 線上功能。
遊戲應提供使用者易懂的錯誤訊息,指出連線至非 Microsoft 服務時發生問題,並應提供重試連線的機會。 通過範例
- 與合作夥伴託管服務的連線中斷時,遊戲不會停止回應或當機。
- 顯示的錯誤暗示 Microsoft 服務發生問題。
- 顯示不具描述性的錯誤訊息。
- 遊戲當機、變得不穩定,或導致主機重新開機。
