其他資訊
在初始啟用期間建立使用者 GDK 簡化使用者模型 初始使用者是透過呼叫 XUserAddAsync(silent) 提供給遊戲,且一律會針對啟動的使用者傳回單一結果。 GDK 進階使用者模型、ERA 及 UWP 多使用者應用程式 如果遊戲使用啟動遊戲的使用者:- 對於 GDK,可以呼叫 XUserAddAsync(silent) 來判斷作用中的使用者。如果系統傳回沒有預設使用者,遊戲必須使用不含 silent 選項的 XUserAddAsync 提示選擇使用者。這會為使用者顯示帳戶選擇器。
- 對於 ERA 和 UWP,可以從應用程式啟用內容的建議使用者 (CoreApplicationContext.CurrentUser) 找到作用中的使用者。如果應用程式啟用內容未提供建議使用者,而遊戲採取與設定檔相關的動作,遊戲必須啟動帳戶選擇器,並根據使用者選取的設定檔設定作用中的使用者。
- 遊戲顯示互動提示,且必須顯示帳戶選擇器。使用者取決於所做的選取。
- 對於 GDK,帳戶選擇器是使用 XUserAddAsync 叫用
- 對於 ERA 和 UWP,帳戶選擇器是使用 ShowAccountPickerAsync 叫用。
- 如果使用者/控制器配對沒有變更,則遊戲必須繼續進行。
- 在 ERA 或 UWP 中,如果遊戲先前作用中的使用者仍處於登入狀態,但位於新的 User 物件上 (通常是因為使用者在遊戲暫停時登出後又重新登入所造成),則遊戲必須使用新的已登入 User 物件來取代已登出的 User 物件。使用方式必須如同使用者從未登出一樣繼續進行。
- 如果所有預期的使用者都與有效但不同的控制器配對,則遊戲必須更新並使用新的系統控制器配對。
- 如果預期的使用者沒有任何有效的控制器,則遊戲必須使用帳戶選擇器為使用者建立作用中的控制器。
- 如果預期的玩家未登入,遊戲必須將該玩家從遊戲中移除,或重新建立使用者和作用中的控制器。遊戲通常會透過顯示帳戶選擇器來達成此目的。如果在重新建立使用者的過程中選擇了新使用者,且遊戲狀態是依使用者儲存,遊戲就必須在遊戲過程中使用該新使用者的狀態。
其他資源
如需使用 GDK 處理玩家身分識別的相關資訊,請參閱使用者章節認證測試案例
下表顯示在使用 GDK 簡化使用者模型,或 GDK 進階使用者模型、ERA 及 UWP 多使用者應用程式時,XR-112 的哪些測試案例適用於您的遊戲。112-02 初始使用者與控制器
測試步驟- 登入設定檔 A 並啟動遊戲。
- 確認作用中的使用者可以控制遊戲。
- 在沒有已登入設定檔的情況下重複步驟 [1],並確認遊戲提示建立作用中的使用者。
- 建立作用中的使用者,並確認該使用者可以控制遊戲。
遊戲必須將作用中的使用者設定為啟動遊戲的控制器/使用者配對,或顯示互動提示以識別控制器和使用者,或顯示帳戶選擇器以進行登入。 通過範例
- 遊戲將作用中的使用者設定為啟動遊戲的控制器/使用者配對。
- 遊戲顯示互動提示以識別控制器和使用者。
- 遊戲顯示帳戶選擇器以進行登入。
- 遊戲不允許使用者以第一個使用的控制器控制遊戲。
- 在沒有使用者登入的情況下啟動時,遊戲未提示使用者建立作用中的使用者。
112-03 沒有已登入的使用者
測試步驟- 確認沒有任何使用者登入。
- 啟動遊戲,並進入每個支援儲存使用者資料的模式。
- 驗證每個模式都會在發生任何資料遺失之前,提供使用者登入的機會。
- 取消登入的機會,並確認遊戲提供警告,指出進度將不會儲存。
如果遊戲處於通常會儲存使用者資料或遊戲狀態的模式,遊戲必須提供使用者登入的機會。如果使用者未登入就繼續遊戲過程,遊戲必須通知使用者其進度將不會儲存 通過範例
- 未登入的使用者在存取通常會儲存使用者資料或遊戲狀態的遊戲模式時,會收到登入提示。
- 系統通知使用者,如果在未登入的情況下繼續該模式,進度將不會儲存。
- 在通常會儲存使用者資料或遊戲狀態的模式中,未通知使用者如果在未登入的情況下繼續該模式,進度將不會儲存。
- 在資料遺失已經發生之後,才通知使用者將無法儲存其進度。
112-04 作用中使用者指示
測試步驟- 登入一個先前未曾看過該遊戲且沒有相關聯存檔資料的設定檔。
- 啟動遊戲。
- 確認遊戲在執行任何與設定檔相關的動作之前,於 UI 中識別作用中的使用者。「與設定檔相關的動作」的範例包括變更使用者的已儲存遊戲或喜好設定、將資料儲存至使用者的設定檔、授予成就、為使用者寫入統計資料,或任何其他本機或雲端對使用者資料或狀態的使用或操作。
- 建立存檔。
- 重新啟動遊戲,並確認遊戲在執行任何與設定檔相關的動作之前,於 UI 中識別作用中的使用者。
- 中斷與 XBOX Live 的連線。
- 重新啟動遊戲,並確認遊戲在執行任何與設定檔相關的動作之前,於 UI 中識別作用中的使用者。
遊戲必須在第一個與設定檔相關的動作之前,指出目前的使用者內容。 通過範例
- 遊戲在執行任何與設定檔相關的動作之前,於遊戲中顯示使用者的玩家代號和/或玩家圖示。
- 不使用使用者設定檔的遊戲不會指出作用中的使用者。
- 對於支援多位使用者的遊戲模式,遊戲會顯示多位作用中的使用者。
- 遊戲在執行與設定檔相關的動作之前,未指出遊戲作用中的使用者。
112-05 存取帳戶選擇器
測試步驟- 登入設定檔並啟動遊戲。
- 確認遊戲允許作用中的使用者在遊戲中存取帳戶選擇器,並選取不同的設定檔。
遊戲必須允許使用者在遊戲中存取帳戶選擇器,以變更作用中的使用者。 通過範例
- 遊戲允許使用者在遊戲中存取帳戶選擇器。
- 遊戲不允許使用者在遊戲中存取帳戶選擇器。
112-06 處理設定檔變更
測試步驟- 登入設定檔並啟動遊戲。
- 存取帳戶選擇器並選取不同的設定檔。
- 確認遊戲做出適當反應,並將作用中使用者的內容切換至新的設定檔。
- 針對遊戲中每個可存取帳戶選擇器的位置,重複步驟 1-4。
遊戲必須允許使用者順暢地切換至另一位使用者的內容。 通過範例
- 遊戲通知使用者,變更作用中的使用者可能導致資料遺失,並在進入帳戶選擇器之前提示使用者確認。
- 遊戲適當地更新為新作用中使用者的內容。
- 遊戲未適當地更新為新作用中使用者的內容。
112-07 受限模式期間的使用者變更
測試步驟- 登入設定檔 A 並啟動遊戲。
- 在遊戲中的各個位置按下 XBOX button,使遊戲進入受限狀態。
- 遊戲處於受限狀態時,登出設定檔 A 並登入設定檔 B。
- 繼續遊戲。
- 確認遊戲針對新的作用中使用者做出相應的反應。
- 應用程式在繼續時,自動將作用中使用者內容切換至設定檔 B。
- 遊戲自動將設定檔 A 從遊戲中移除,或重新建立新使用者,並在遊戲過程中使用該新使用者的狀態。
- 遊戲未更新以將設定檔 A 從作用中使用者的內容中移除。
- 選取新設定檔後,遊戲仍繼續在遊戲過程中使用設定檔 A 的狀態。
112-08 暫停期間的使用者變更
在零售版主機上,遊戲會在下列情況下暫停:- 當電源模式設為「立即開機」時關閉主機,使主機進入連線待命狀態。
- 當遊戲失去焦點達十分鐘時。例如,啟動「設定」等應用程式並讓其保持焦點十分鐘。
- 登入 XBOX 設定檔並啟動遊戲。
- 在整個遊戲中的各個位置暫停遊戲。
- 遊戲暫停時,登出設定檔 A 並登入設定檔 B。
- 繼續遊戲,並確認遊戲針對新的作用中使用者做出相應的反應。
- 以新的作用中使用者進入遊戲過程,並確認該使用者能夠取得進度。
- 當遊戲從暫停繼續時,遊戲必須確認先前參與的所有使用者是否仍登入主機。
- 遊戲在繼續時,自動將作用中使用者內容切換至設定檔 B。
- 遊戲自動將設定檔 A 從遊戲中移除,或重新建立新使用者,並在遊戲過程中使用該新使用者的狀態。
- 遊戲未更新以將設定檔 A 從作用中使用者的內容中移除。
- 選取新設定檔後,遊戲仍繼續在遊戲過程中使用設定檔 A 的狀態。
