サーティフィケーションでテストされる Xbox 本体のゲームの Xbox 要件
バージョン 13.1 - 10/01/2024
概要
Xbox 要件 (XR) は、Xbox 本体のタイトルのすべてのデベロッパーとパブリッシャーが従う必要のあるポリシー、技術要件、および製品コンポーネント関連の要件で構成されています。 XR では、Xbox 本体向けに作成された製品が安定していて信頼できるだけでなく、一貫性があり、安全で、セキュリティ保護された楽しめるユーザー エクスペリエンスを提供することが確認されます。
特に明記されない限り、すべての Xbox 要件は、Xbox One および Xbox Series X|S の両方の本体世代に適用されます。
- このページでは、Xbox サーティフィケーションでテストされる Xbox 本体ゲームに関する XR を規定します。 Xbox サーティフィケーションでテストされないものを含むすべての XR の一覧については、「Xbox 要件」を参照してください。
- このリリースでの変更の概要については、このページの下部にある「このリリースの変更点」を参照してください。
- XR とテスト ケースの履歴変更ログを確認するには、「Xbox 要件とテスト ケースの変更履歴」を参照してください。
- 本体で上位 10 件の失敗したテスト ケースを表示します。
基本要件
このカテゴリーの要件は、コーディングの標準、タイトルの動作、タイトルの提出に関する一般的なルールに適用されます。
XR-001: タイトルの安定性 *
タイトルは、タイトルの安定性に関する Microsoft Store ポリシーに準拠している必要があります。 この要件には、次のポリシーが適用されます。
10.1.2
製品は完全に機能し、対象となるシステムとデバイスに適切な機能を提供する必要があります。
001-01 タイトルの安定性
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- タイトルのすべてのエリアを操作します。たとえば以下が含まれますが、これらに限りません。
- ゲームプレイ
- メニューおよび機能
- ダウンロード コンテンツ (DLC)
- 以前の保存データがない新しい Xbox プロファイルを使用して、Xbox サービスから切断されている間に手順 1 ~ 3 を繰り返します。
想定される結果
「タイトルが不安定である」とは、ユーザー入力が認識されない状態、またはソフトウェア クラッシュによりタイトルが進行せず、それがユーザーに通知されない状態を指します。
成功例
- タイトルが安定していること。
- タイトルでユーザー データの意図しない消失が発生しません。
失敗例
- タイトルがクラッシュする、無反応状態になる、または本体が再起動します。
- タイトルでユーザー データの消失が発生する。
- ゲームが反応を示さない状態または静止画面が、20 秒以上続く。
- 進行状況が表示されないまま 2 分以上続く読み込み画面がタイトルに含まれる。
- 進行状況インジケーターが表示された状態が 3 分以上続く読み込み画面がタイトルに含まれる。
001-02 一時停止後のタイトルの安定性
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動し、ゲームプレイを開始します。
- タイトル内のさまざまなポイントで、
xbapp suspend [PFN]
を使用してタイトルを中断します。 - タイトルが完全に一時停止し、一時停止によってすべての HTTP 要求が中断されるまで、少なくとも 30 秒待ちます。
- タイトルが正常に一時停止したら、[Home (ホーム)] からタイルを選択してそのタイトルに戻ります。
- タイトルが問題なく再開すること、および最後のセーブ ポイントから作成された進行状況のセーブ データで続行できることを確認します。
- 次のセーブ ポイントまで進行し、ゲームを保存して、メイン メニューに戻ります。
- 手順 7 で作成されたセーブ データを再度読み込み、すべての進行状況がまだ存在することを確認します。
- タイトル全体を通じて手順 3 ~ 8 を繰り返します。
想定される結果
「タイトルが不安定である」とは、ユーザー入力が認識されない状態、またはソフトウェア クラッシュによりタイトルが進行せず、それがユーザーに通知されない状態を指します。 さらに、ゲームプレイに戻った後で、ユーザーが進行状況のセーブ データを失ってはなりません。
成功例
- タイトルが安定していること。
- タイトルでユーザー データの意図しない消失が発生しません。
- ゲームが一時停止状態から戻り、ユーザーはすぐに最後のゲームプレイの場所から続行できる。
- ゲームが一時停止状態から戻り、ユーザーは最後のゲームプレイの場所から続行するかどうか選択するよう求められる。
- ゲームが一時停止状態から戻り、ゲームは前のメニューまたは起動直後のインタラクティブ状態に戻るが、ユーザーは最後のセーブの場所を読み込むことができる。
- オンライン サービスの接続が必要なオンライン ゲームプレイ中の一時停止の後、ゲームは一時停止状態から戻り、ユーザーは前のメニューまたは起動直後のインタラクティブ状態に戻る。
- システムがタイトルを終了した結果として (通常は、接続されていたストレージの非同期化の結果)、パッケージ実行状態は 'Package execution state: 4 (terminated)' になっている。 タイトルは終了状態から起動されるので、再開動作は予期されません。 実行状態は、コマンドラインから
xbapp query <Package Full Name>
を実行することで観察できます。
失敗例
- 一時停止失敗の結果として、パッケージ実行状態は 'Package execution state: 0 (unknown)' になっています。 実行状態は、コマンドラインから
xbapp query <Package Full Name>
を実行することで観察できます。 - ゲームは一時停止状態から戻り、パッケージ実行状態が 'Package execution state: 0 (unknown)' になっている。 実行状態は、コマンドラインから
xbapp query <Package Full Name>
を実行することで観察できます。 - ゲームは一時停止状態から戻った後、再起動して初期起動シーケンスに戻る。
- ユーザーはパートナーがホストするサービスとの接続を再確立できません。
001-03 コネクト スタンバイ後のタイトルの安定性
環境設定:
次のように構成された 1 台の本体:
- [設定] -> [アカウント] -> [サインイン、セキュリティ、パスキー] -> [インスタント サインイン] -> [インスタント サインインを使用] でインスタント サインインが有効になっています。
- [設定] -> [一般] -> [スリープ モードと起動] -> [スタンバイ] でスタンバイが設定されています。
テスト手順
- 本体で [Instant-on] (インスタントオン) 設定および [Instant sign-in] (インスタント サインイン) 設定を有効にします (「構成」を参照)。
- ユーザーのホーム本体として設定された本体で、タイトルのライセンスを使用して Xbox プロフィールにサインインします。
- タイトルを起動し、プロフィールにサインインして、ゲームプレイを開始します。
- 本体の電源ボタンを押して電源ボタンが点滅しなくなるまで待ち、コネクト スタンバイに入ります。
- 本体上の電源ボタンを使用してスタンバイから再開します。
- 自動サインインを使用して手順 1 と同じ Xbox プロフィールにサインインします。
- タイトルを再起動し、ユーザーが中断した場所からタイトルを続行します。
- 次のセーブ ポイントまで進行し、ゲームを保存して、メイン メニューに戻ります。
- 手順 8 で作成されたセーブ データを再度読み込み、すべての進行状況がまだ存在することを確認します。
- タイトル全体を通じて手順 3 ~ 9 を繰り返します。
想定される結果
「タイトルが不安定である」とは、ユーザー入力が認識されない状態、またはソフトウェア クラッシュによりタイトルが進行せず、それがユーザーに通知されない状態を指します。 さらに、ゲームプレイに戻った後で、ユーザーが進行状況のセーブ データを失ってはなりません。
成功例
- ゲームがコネクト スタンバイから戻り、ユーザーはすぐに最後のゲームプレイの場所から続行できます。
- ゲームがコネクト スタンバイから戻り、ユーザーは最後のゲームプレイの場所から続行するかどうか選択するよう求められる。
- ゲームがコネクト スタンバイから戻り、ゲームは前のメニューまたは起動直後のインタラクティブ状態に戻るが、ユーザーは最後のセーブの場所を読み込むことができる。
- オンライン サービスの接続が必要なオンライン ゲームプレイ中にコネクト スタンバイになった後、ゲームはコネクト スタンバイから戻り、ユーザーは前のメニューまたは起動直後のインタラクティブ状態に戻る。
- システムがタイトルを終了した結果として (通常は、接続されていたストレージの非同期化の結果)、パッケージ実行状態は 'Package execution state: 4 (terminated)' になっている。 タイトルは終了状態から起動されるので、再開動作は予期されません。 実行状態は、コマンドラインから
xbapp query <Package Full Name>
を実行することで観察できます。
失敗例
- 一時停止失敗の結果として、パッケージ実行状態は 'Package execution state: 0 (unknown)' になっています。 実行状態は、コマンドラインから
xbapp query <Package Full Name>
を実行することで観察できます。 - ゲームはコネクト スタンバイから戻り、パッケージ実行状態が 'Package execution state: 0 (unknown)' になっている。 実行状態は、コマンドラインから
xbapp query <Package Full Name>
を実行することで観察できます。 - ゲームはコネクト スタンバイから戻った後、再起動して初期起動シーケンスに戻る。
- ユーザーはパートナーがホストするサービスとの接続を再確立できません。
XR-003: 提出用タイトルの品質 *
サーティフィケーションのために提出するタイトルは、機能的に完全でテスト可能であり、Xbox 本体の品質基準を満たす必要があります。
機能的に完了し、テスト可能:
タイトルの提出には、すべてのクライアント コード、提出時のアイテム、およびダウンロード コンテンツが含まれていなければならない。 サーバーによるサービスがテストおよびサーティフィケーション用に利用可能であり、正しく構成されていなければならない。 Microsoft にタイトルを提出する際には、サブミッション バリデーターの最新バージョンを使用して、何も問題がない状態で正しくパッケージングしなければならず、サブミッション バリデーターのログが提出に含まれていなければならない。
Xbox 品質基準:
Xbox 本体のゲームは、プレイヤーのニーズを満たすために、さまざまなシナリオでゲーム モード間で正しく機能する必要があります。
- タイトルの整合性: ユーザーは、すべてのゲーム モードを完了できる必要があります。タイトルは、プレイヤーに一貫して再生可能なエクスペリエンスを提供する必要があります。 プレイ可能なエクスペリエンスはタイトルごとに異なりますが、一般的に、進行の大きな妨げやグラフィクス表示の崩壊などの原因となるフレーム レートの重大な低下、フリーズ、行き詰まり、バグなどがまったくないということを意味します。
- オプションと設定: オプション、コントロール、言語などのゲーム設定は、ゲームで更新され、タイトルを終了してもう一度起動した後に正しく適用されます。 必要に応じて、コンソールの既定の設定が適用されます。
- ナビゲーションとコンテンツの可用性: コンテンツにデッド エンドはなく、ゲーム メニューを移動でき、すべてのコンテンツを利用できます (該当する場合)。
- フレンドの少ない / 多いプレイヤーのサポート: プレイヤーのフレンドがまったくいない、または沢山いる場合にも安定した状態が維持されます。 通常、フレンドが沢山いると、統計の投稿/取得に関係する領域で問題が発生する可能性があります
- ゲームプレイは許可された人数のローカルまたはオンラインのマルチプレイヤーで機能: ゲームプレイ モードは、サポートされているモードを使用して、ローカルとオンライン プレイヤーのサポートされている組み合わせを使用して機能します。
- ゲーム データの互換性: ゲーム データやプレイヤーの進捗状況は、コンテンツの更新後も引き続き機能します。 さらに、ベース ディスク バージョンで更新された保存を読み込むときに、永続的な保存データの損失が発生しないようにする必要があります。
- 中断と再開: コネクト スタンバイまたは中断から再開すると、タイトルの進捗状況が保持されます。
003-02 タイトルの整合性
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- すべてのメニューおよびサブメニューを操作し、すべての種類のメディアや機能を確認し、すべてのゲーム モードに入ってそれぞれのモードを完了します。
- ゲーム: すべてのメニュー UI、特別コンテンツ、シングル プレイヤー モード、およびマルチプレイヤー モードを (すべての追加機能を含めて) 動作確認します。 該当する場合、オフライン、オンライン、分割画面、システム リンクの各モードでテストします。 可能な場合は常に、最大数のプレイヤーでマルチプレイヤー ゲーム モードをテストします。
- アプリ: すべての種類のメディア コンテンツを (すべての追加機能を含めて) 動作確認します。
想定される結果
すべてのタイトルは、信頼できる公正で一貫性のある完全な Xbox エンターテインメント体験をユーザーに提供する必要があります。
成功例
- タイトルはすべてのモードで完了できます。
失敗例
- タイトルがある特定のレベルの最後にクラッシュします。
- ユーザーが既に別のモードを完了していた場合、特定のモードを完了できません。
003-03 オプション
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 各オプション設定について、すべての可能な値がテストされるように、テスト チーム全体で各種オプションを設定します。
- この場合、ゲームを実行中に確認できるゲーム設定およびシステム設定内のすべてのオプションを扱う必要があります。
- タイトルのメニュー内のすべての設定およびオプション (明るさ、コントラスト、オーディオ音量、難易度など) がエンドユーザー エクスペリエンスに正しく反映されることを確認します。
- タイトルをいったん終了してから再起動した後、すべての設定とオプションが変わっていないことを確認します。
- テスト チームにタイトルのすべてのエリアのオプション設定を変更してもらい、これらがタイトル全体にわたって正確に反映されることを確認します。
想定される結果
タイトル内のすべてのオプション設定が期待どおりに機能し、タイトルの再起動後にオプションと設定の値が変わっていない必要があります。
成功例
- ゲーム中の言語オプションをオランダ語に設定した場合、タイトルはオランダ語の字幕のみを使用します。
失敗例
- プレイヤーがポーズ メニューで横方向または縦方向のカメラ コントロールを反転させた場合、ゲーム内でカメラ コントロールが変化しません。
- ゲームプレイの間に設定したオプションの値は、タイトルを終了して再起動すると既定値にリセットされます。
003-04 言語サポート
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 本体の言語設定に移動し、言語を、使用している本体ロケールのものに合わせて設定します。
- 順に言語を設定して、ゲームが正しく起動し、ゲームでサポートされる言語ごとに正しくローカライズ版が表示されることを確認します。
- タイトル内の進行に不可欠で、ゲームに重要なすべてのテキストが判読できることを確認します。
想定される結果
タイトルは、すべての言語設定で正しく起動し、ゲームで対応しているすべての言語のローカライズ版が正しく表示される必要があります。 対応言語のテキストが表示される場所で、ディスプレイ設定に関係なくテキストが読み取り可能である必要があります。
成功例
- すべてのローカライズ版がすべての言語で正しく表示されます。
- 対応していない言語に本体を設定してタイトルを起動すると、英語のテキストのみが表示されます。
失敗例
- ドイツ語ローカライズ版がフランス語で表示されます。
- 本体をドイツ語に設定すると、重大なローカライズの問題が見つかる。
- 対応していない言語に本体を設定してタイトルを起動すると、テキストが表示されないか、または NULL 文字が表示されます。
003-05 ナビゲーション
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- コントローラーですべてのメニュー画面とオプション画面 (フロントエンド、ゲーム内、およびその他のエリア) に移動し、すべてのナビゲーション ボタンが期待どおりに機能することを確認します。
- いずれかのメニュー UI でボタンのラベルまたはコマンド プロンプトが表示される場合は、各コマンドを正しく発行できることを確認します。
- ナチュラル ユーザー インターフェイス (NUI) がサポートされていて、センサーが接続されて有効になっている場合は、ステップ 3 を繰り返します。
- 音声ユーザー インターフェイス (VUI) がサポートされていて、センサーが接続されて有効になっている場合は、ステップ 3 を繰り返します。
- 既定のコマンド以外の追加の VUI コマンドを使用できる場合は、対応しているすべての言語ですべての VUI コマンドが正確であることを確認します。
想定される結果
ナビゲーション コマンドが期待どおりに機能する必要があります。
成功例
- タイトルのすべてのエリアに期待どおりに移動できます。
失敗例
- 特定のメニューに入るときに、コントローラーのボタンに関連付けられたイメージが表示されますが、それを押しても機能しません。
003-07 ランキング
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 本体 A および B: 互いにフレンドであるプロフィールにサインインします。
- 本体 A: ランキング アップロードが可能なタイトルの画面に移動します (タイトルがランキングに対応している場合のみ)。
- テスターは、ゲーム中ランキングとシステムに表示されるランキングの両方を確認する必要があります。
- 必要な最小要件を満たし、ランキングにアップロードするためのすべての手順を実行します。
- 本体 A: スコアをアップロードした後、統計がランキングに正しくアップロードされていることを確認します。また、付属のフィルターを使用してこれらの統計を並べ替えできることを確認します。
- 本体 B: ランキング メニューに移動し、本体 A の統計がランキングに正しくアップロードされていることを確認します。また、付属のフィルターを使用して、これらの統計を並べ替えできることを確認します。
- すべてのゲーム モードで、手順 2 から 7 を繰り返します。
- 本体 A および B: Xbox 経由で競い合いを目的とした協力プレイが実行できる場合は、各ゲーム モードで手順 2 から 7 を繰り返します。
- 同じ本体にある複数の Xbox プロフィールを使用して、マルチプレイヤーの分割画面ゲームプレイが実行できる場合は、次のいずれかのようになることを確認します。
- ユーザーが各ランキングにアップロードできる
- 少なくとも、主要プロフィールがスコアを各ランキングにアップロードできる。
- 両方のユーザーがランキングにスコアをアップロードできることをタイトルが示している場合は、各参加者のスコアが正しく登録されている
想定される結果
プレイヤーは、使用できるすべてのランキングに統計をアップロードでき、付属するフィルターを使用してランキングの並べ替えができる必要があります。
成功例
- すべてのランキングに正常にアップロードできます。
失敗例
- ランキング A からランキング B に移動中にゲームが応答を停止します。
- ユーザーは特定のランキングにアップロードできません。
003-08 フレンド数が少ない場合と多い場合
テスト手順
- Xbox プロフィールにサインインします。
- 100 人のフレンドが登録されているプロフィールを使用してサインインします。
- タイトルを起動します。
- 次の操作を実行します (適用可能な場合)。
- 利用可能なすべてのランキングを表示し、すべてのフィルター オプションを使用します。
- フレンドのゲーマー カードを表示します。
- フレンドのリッチプレゼンス情報を表示します。
- フレンドをゲーム セッションに招待し、完了するまでプレイします。
- 友達がいないアカウントを使用してステップ 4 を繰り返します (サポートされている場合は、「最近のプレイヤー」リストを使用してステップ 4 を確認します)。
- 100 人を超えるフレンドを持つプロファイルを使用して、手順 4 を繰り返します。
- 正常に機能しない挙動の事例をすべて報告します。
想定される結果
プロフィールのフレンド リストにあるフレンドの数がタイトル機能に悪影響を及ぼしてはなりません。
成功例
- 最小フレンド数と最大フレンド数の両方がタイトルに悪影響を及ぼしません。
失敗例
- フレンドが登録されていない Xbox 対応のプロフィールを使用しているときに、プレイヤーがランキングに参加して「フレンドのみ」フィルターを表示した場合に「エラー。 Xbox に接続していません」のようなメッセージが誤って表示される。
- フレンドのランキング結果を表示しようとすると、空白のページが表示される。 「フレンド」からフィルターを切り替えると、「ランキング統計の読み取りに失敗しました」のようなエラー メッセージが表示される。
- 100 人を超えるフレンドがいるゲーマー プロフィールを使用しているときにプライベート マッチを作成する場合、マルチプレイヤー モードに入るときにユーザーのフレンド リストにアクセスできない。
003-14 ローカルの複数のプレイヤー
テスト手順
- ゲームが対応する、本体 1 台あたりのプレイヤーの最大数を設定します。
- 本体 A および B: 本体 1 台あたりのプレイヤーの最大数と同じ数のコントローラーを接続します。
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 本体 A: 両方の本体の最大数のプレイヤーが参加するのに十分な数のスロットを用意し、Xbox マルチプレイヤー ゲーム セッションを作成します。
- 本体 B: 本体 A がホストであるマルチプレイヤー ゲーム セッションを見つけます。
- すべてのプレイヤーがマルチプレイヤー ゲーム セッションに参加できることを確認します。
- 本体 A: ゲーム セッションを開始し、次を確認します。
- すべてのプレイヤーがゲームプレイを開始できる。
- 処理落ちが発生しない。
- グラフィック上の問題がない。
- 音の問題がない。
- ゲームプレイに悪影響がない。
- すべてのプレイヤーがゲーム セッションを完了できる。
想定される結果
対応しているすべての Xbox ゲーム モードにおいて、本体 1 台あたりの最大プレイヤー数でエラーなしにプレイできる必要があります。
成功例
- 本体 1 台で 2 人のプレイヤーがプレイしているときに、フレーム レートへの悪影響が発生しません。
失敗例
- Xbox ゲーム セッションで、参加しているいずれかの本体でプレイヤーの最大数に達すると、グラフィックや音声の再生が遅くなります。
003-16 セーブの互換性
テスト手順
- Xbox プロフィールにサインインします。
- Xbox ネットワーク に接続しないでアップデートされていないタイトルを起動します。
- ゲームプレイを開始し、しばらくプレイしてから各モードでゲームの進行状況を保存します (ゲームの進行状況、オプションや設定、アバターの作成など)。
- ゲームを再起動し、手順 3 の進行状況のゲーム セーブを読み込み、ゲームを再開できることを確認します。
- Xbox に接続し、ベース タイトルのコンテンツ アップデートをダウンロードします。
- コンテンツ アップデートの適用後、手順 3 で作成した進行状況のセーブ データを読み込み、再開できることを確認します。
- ゲームを再起動し、新しいゲームを開始して、しばらくプレイしてからゲームの進行状況を再度保存します。
- ゲームを終了してアンインストールします。
- Xbox ネットワーク に接続しないでアップデートされていないタイトルを起動します。
- 次のいずれかのようになることを確認します。
- 進行状況が保存されたゲーム セーブをエラーなしに読み込んで再開することができる。
- Xbox ネットワーク からコンテンツ アップデートを適用しないと、進行状況のセーブ データを使用できないことを示すメッセージが表示される。
- 手順 6 で保存したセーブ データは表示されない。
- ゲームを再起動し、Xbox ネットワーク に接続してコンテンツ アップデートを受け取ります。
- コンテンツ アップデートの適用後、進行状況のセーブ データを読み込み、再開できることを確認します。
想定される結果
コンテンツ アップデートが適用されているバージョンのタイトルは、コンテンツ アップデートが適用されていないバージョンのタイトルを使用して作成されたセーブ データを正常に読み込めなければなりません。
成功例
- コンテンツ アップデートを適用したバージョンのゲームはすべてのセーブ データを正常に読み込むことができます。
- ベース バージョンを起動して更新後のセーブ データを読み込むと、コンテンツが不足していることがユーザーに通知され、そのセーブ データを読み込めなかった理由が表示されます。または、コンテンツ アップデートを適用したバージョンで作成されたセーブ データは、ベース バージョンでは表示されません。
失敗例
- コンテンツが更新されたバージョンのタイトルでは、手順 3 で作成されたセーブ データを読み込むことができません。
- コンテンツ アップデートを適用したバージョンのタイトルで実行された保存を読み込むと、タイトルの基本バージョンがクラッシュする。
003-17 ヘッドセットの状態変更
テスト手順
- Xbox オーディオ設定で Windows Sonic for Headphones をヘッドセット形式として有効にします。
- ヘッドホンをコントローラーに接続するか、ヘッドホンを Xbox にワイヤレスで接続します。
- タイトルを起動し、ゲームプレイを開始します。
- オーディオがテレビとヘッドホンから聞こえることを確認します。
- ヘッドホンを外し、オーディオが短時間で戻ることを確認します。
- ヘッドホンをもう一度接続し、オーディオがテレビとヘッドホンから聞こえることを確認します。
- タイトル全体を通じて手順 5 ~ 6 を繰り返します。
想定される結果
オーディオが引き続き問題なく聞こえます。
成功例
- ヘッドホンが取り外されるたびにオーディオが問題なく戻る。
- ヘッドホンが接続されると、オーディオが問題なく戻る。
失敗例
- ヘッドセットの状態が変更されると、オーディオが聞こえなくなる。
- ヘッドセットの状態が変更されると、オーディオが歪んで聞こえる、または破損します。
003-18 中断後のヘッドセットの状態変更
テスト手順
- Xbox オーディオ設定で Windows Sonic for Headphones をヘッドセット形式として有効にします。
- ヘッドホンをコントローラーに接続するか、ヘッドホンを Xbox にワイヤレスで接続します。
- タイトルを起動し、ゲームプレイを開始します。
- オーディオがテレビとヘッドホンから聞こえることを確認します。
- タイトルを自然に一時停止します。
- ヘッドホンを外します。
- タイトルを再開し、オーディオがテレビから聞こえることを確認します。
- ヘッドホンをもう一度接続して、オーディオがテレビとヘッドホンから聞こえることを確認します。
- タイトル全体を通じて手順 5 ~ 8 を繰り返します。
想定される結果
オーディオが引き続き問題なく聞こえます。
成功例
- ヘッドホンが取り外されるたびにオーディオが問題なく戻る。
- ヘッドホンが接続されるとオーディオが問題なく戻ります。
失敗例
- ヘッドセットの状態が変更されると、オーディオが聞こえなくなる。
- ヘッドセットの状態が変更されると、オーディオが歪んで聞こえる、または破損します。
003-19 コネクト スタンバイ後のヘッドセットの状態変更
環境設定:
次のように構成された 1 台の本体:
- [設定] -> [アカウント] -> [サインイン、セキュリティ、パスキー] -> [インスタント サインイン] -> [インスタント サインインを使用] でインスタント サインインが有効になっています。
- [設定] -> [一般] -> [スリープ モードと起動] -> [スタンバイ] でスタンバイが設定されています。
テスト手順
- ユーザーのホーム本体として設定された本体で、タイトルのライセンスを使用して Xbox プロフィールにサインインします。
- Xbox オーディオ設定で Windows Sonic for Headphones をヘッドセット形式として有効にします。
- ヘッドホンをコントローラーに接続するか、ヘッドホンを Xbox にワイヤレスで接続します。
- タイトルを起動し、ゲームプレイを開始します。
- オーディオがテレビとヘッドホンから聞こえることを確認します。
- 本体をコネクト スタンバイの状態にします。
- ヘッドホンを外します。
- 本体の電源をもう一度入れ、ゲームを再開します。
- オーディオがテレビから聞こえることを確認します。
- ヘッドホンをもう一度接続し、オーディオがテレビとヘッドホンから聞こえることを確認します。
- タイトル全体で手順 4 ~ 11 を繰り返します。
想定される結果
オーディオが引き続き問題なく聞こえます。
成功例
- ヘッドホンが取り外されるたびにオーディオが問題なく戻る。
- ヘッドホンが接続されるとオーディオが問題なく戻ります。
失敗例
- ヘッドセットの状態が変更されると、オーディオが聞こえなくなる。
- ヘッドセットの状態が変更されると、オーディオが歪んで聞こえる、または破損します。
XR-130: Xbox 本体のファミリーと世代 *
特定の本体世代を対象とするすべてのゲーム タイトルでは、その世代のファミリー全体のデバイスをサポートする必要があります。
スマート デリバリーを使用していない Xbox One ゲームは、互換モードの Xbox Series X|S で既定で機能します。 スマート デリバリーを使用するゲームは、Xbox Series X|S で互換モードで実行されている場合に適切に動作する必要があります。
すべての本体世代の間で一貫性を維持するために、各ゲームは次の要件を満たす必要があります。
- ゲームパッド入力によるナビゲーションをサポートする。 事前の承認があれば、タイトルでその他の周辺機器の使用を必須にすることができます。
- セーブ データがその世代のすべての本体機種で機能することを保証する。
- その世代の本体機種によってオンライン プレイヤーがセグメント化されないことを保証する。
- その世代の本体機種間で同一のゲーム モードが提供されることを保証します。
- 世代間 (Xbox One と Xbox Series X|S) で、同一の TitleID を持つ各タイトルは、次の要件を満たす必要があります:
- 両世代で提供されているコンテンツについて、セーブ データのローミングをサポートします (XR-052: ユーザー状態とタイトル セーブの場所、ローミング、依存関係)。
- 必須ではありませんが、協力型の場合も対戦型の場合も、マルチプレイヤー エクスペリエンスがサポートされているシナリオでは、マッチメイキング ホッパーを少なくとも 1 つ提供し、共有コンテンツ エクスペリエンスへの世代間の招待と参加を行えるようにすることをお勧めします。
130-01 コントローラー入力
必要なツール
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- タイトルのすべてのエリアに移動し、タイトルが各エリアでコントローラー入力による操作を受け入れることを確認します。
- 上記のすべての手順を、デバイスのすべての世代で繰り返します。
想定される結果
タイトルのすべてのエリアでコントローラーを使用した操作がサポートされます。キーボードやマウスなどのその他の入力デバイスが必須となることはありません。 事前の承認があれば、タイトルでその他の周辺機器の使用を必須にすることができます。
成功例
- タイトルのすべてのエリアでコントローラーからの入力が受け入れられます。
失敗例
- タイトルの特定のエリアで、キーボードおよびマウスからの入力だけが受け入れられます。
130-02 セーブ データのローミング
必要なツール
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- デバイス A で Xbox プロフィールにサインインして、タイトルを起動します。
- ゲームプレイを開始し、進行状況をセーブします (可能な場合は、設定を変更するか新しい設定を追加することで、設定のセーブを作成します)。
- タイトルを終了します。
- 手順 1 で使用したものと同じプロフィールを使って、同じ世代からの別のデバイスにサインインします。
- 手順 1 と同じタイトルを起動し、すべてのセーブ データや任意の設定または構成ファイルにアクセスしてそれらが正しく読み込めること、およびそれらが特定の同一世代のデバイスに依存していないことを確認します。
- 上記のすべての手順を、同じ世代の各デバイスで繰り返します。
- 世代間 (Xbox One と Xbox Series X) で同じ TitleID を共有しているゲームについては、両方の世代で提供されているコンテンツについて、手順 1 から 4 を繰り返します。
想定される結果
セーブ データは、同じ世代内で完全に動作する必要があります。また、2 つの世代 (Xbox One と Xbox Series X) で提供されているコンテンツの場合は、セーブ データは、世代間で同じ TitleID を共有しているゲームで完全に動作する必要があります。
成功例
- Xbox One デバイスのファミリー全体で、Xbox One S で保存したセーブ データが Xbox One および Xbox One X で機能し、またその逆も機能する。
- 2 つの世代 (Xbox One と Xbox Series X) で提供されているコンテンツの場合は、セーブ データは、世代間で同じ TitleID を共有しているゲームで完全に動作する必要があります。
失敗例
- 特定の世代 (Xbox One または Xbox Series X) で保存されたセーブ データが、その世代のすべてのデバイス機種間では完全に読み込まれない。
- 2 つの世代 (Xbox One と Xbox Series X) で提供されているコンテンツの場合は、セーブ データは、世代間で同じ TitleID を共有しているゲームでは完全には読み込まれません。
130-03 オンライン セグメンテーション
必要なツール
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- Xbox プロフィールにサインインし、同じ世代のすべてのデバイス機種でタイトルを起動します。
- すべてのデバイスが参加する Xbox ネットワーク マルチプレイヤー ゲーム セッションを完了します。
- タイトルによってサポートされるすべての Xbox ネットワーク マルチプレイヤー モードで手順 2 を繰り返します。
想定される結果
Xbox ネットワーク プレイヤーは、同じ世代の本体機種であれば、いずれの機種を使用した場合でも他の Xbox ネットワーク プレイヤーに加わることができる必要があります。
成功例
- 同じデバイス世代のすべての本体は、マルチプレイヤー ゲームプレイにおいてデバイス間で対戦できる。
失敗例
- Xbox ネットワーク オンライン プレイヤーが、プレイヤーの Xbox One 本体の機種ごとに、世代内でセグメント化されている。
130-04 備わっているゲーム モード
必要なツール
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- Xbox プロフィールにサインインして、タイトルを起動します。
- 備わっているすべてのゲーム モードにアクセスします。
- 上記のすべての手順を、同世代の各機種で繰り返し、各デバイスですべてのゲーム モードが同一であることを確認します。
想定される結果
同世代の各デバイスで同一のゲーム モードが提供されている必要があります。
成功例
- 同じ機種世代のすべての本体で同じゲーム モードのセットが提供される。
失敗例
- 同じ機種世代の 1 つ以上の機種で、その機種と同じ世代の本体機種に応じた、異なるゲーム モードが提供される。
130-05 互換モード
必要なツール
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- Xbox One タイトルの場合は、Xbox プロフィールにサインインしてタイトルを起動します。
- タイトルをプレイし、互換モードでタイトルが期待どおりに動作することを確認します。
- Xbox Series X と Xbox One X の間で、ゲームのパフォーマンス、ビジュアル、オーディオが著しく劣る部分があるかどうかを確認します。
- パフォーマンスの問題については、すべての異なる解像度出力を確認します。
- HDR 対応画面で自動 HDR を確認します。
- 手順 3 を繰り返しますが、今回は Xbox Series S のゲーム パフォーマンス、ビジュアル、またはオーディオが Xbox One S よりも著しく劣る領域を特定します。
- Xbox Series X|S デバイス間、および Xbox One と Xbox Series X|S デバイス間 (サポートされている場合) のマルチプレイヤーの忠実度を保証します。
- マッチメイキングを確認します。
- 両方向の招待を確認します。
- 両方向でシェルを介した参加を確認します。
- 一時停止状態への移行と復帰が期待どおりに機能することを確認します。
- 本体の再起動後も、すべてのゲームの保存が維持されることを確認します。
- Xbox One (ファミリの任意の一部) から Xbox Series X|S (ファミリの任意の一部) へのローミングを保存し、再び機能するようにします。
想定される結果
スマート デリバリーに対応していない Xbox One ゲームは、Xbox Series X|S 上で機能またはパフォーマンスの問題なく実行する必要があります。
成功例
- タイトルは、Xbox Series X|S で実行する場合、パフォーマンスの問題はありません。
- タイトルは、Xbox Series X|S で実行する場合、機能的な問題はありません。
- タイトルは、Xbox One と Xbox Series の間でマルチプレイヤーをプレイする場合を含め、Xbox Series 本体間で実行する場合、すべてのマルチプレイヤー モードを正しく開始、プレイ、および終了できます。
- タイトルは、Xbox Series X|S 本体上で実行する場合、一時停止と再開を正しくサポートします。
- Xbox Series X|S 本体で保存したユーザーのセーブ データは、フル タイトルの再起動後も保持されます。
- Xbox One で保存したユーザーのセーブ データを Xbox Series X|S にローミングしても、すべての進行状況が表示されます。 同じゲームを Xbox One にローミングしても、すべての進行状況が維持されます。
失敗例
- タイトルは、Xbox Series X|S で実行する場合、パフォーマンスの問題が発生します。
- タイトルは、Xbox Series X|S で実行する場合、機能的な問題が発生します。
- ユーザーは、Xbox Series 本体間で実行する場合、または Xbox One と Xbox Series の間でマルチプレイヤーをプレイする場合、すべてのモードのマルチプレイヤーを開始、プレイ、または終了できません。
- タイトルは、Xbox Series X|S 本体で実行する場合、正しく一時停止および再開されません。
- Xbox Series X|S 本体で保存したユーザーのセーブ データまたはセーブ データの一部は、フル タイトルの再起動後に保持されません。
- Xbox One で保存されたユーザーのセーブ データは、Xbox Series X|S にローミングすると進行状況が失われます。 同じセーブ データを Xbox One にローミングしても、一部またはすべての進行状況が失われます。
XR 131: ゲーム録画およびスクリーンショットに関するディスプレイ モードのサポート *
タイトルは、すべてのディスプレイ モードおよびディスプレイの種類で、ゲーム録画とスクリーンショットが正しく動作することを確認する必要があります。 HDR 表示のタイトルでこれを実現するには、SDR と HDR の両方のスワップ チェーンをレンダリングします。これは、SDR のスクリーンショット、ブロードキャスト、ゲーム録画には SDR のスワップ チェーンが使われるためです。
131-01 ゲーム録画とスクリーンショット
必要なツール
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
- 1 4K/HDR ディスプレイ
テスト手順
- HDR ディスプレイを接続した Xbox One S 本体と Xbox Series S 本体にサインインします。本体は HDR 出力に構成し、1080p に設定します。
- タイトルを起動します。
- タイトルの実行中に、本体設定で HDR を無効にします。
- タイトルに戻り、表示されたグラフィックスに問題がないことを確認します。
- Xbox One X 本体と Xbox Series X 本体で、4K で手順 1 ~ 4 を繰り返します。
想定される結果
HDR/4K 出力を SDR に切り替えたとき、表示されるグラフィックスに問題が発生しません。
成功例
- 黒い画面、黒いバー、および目に見える明らかな欠陥はありません。
失敗例
- SDR イメージが、HDR イメージよりもかなり明るく、または暗くなります。
- SDR イメージが、HDR イメージよりも小さくなります。
- SDR イメージで、目立つ黒いバーや境界線が表示されます。
XR-022: 公式用語の使用ガイドライン *
タイトルは、Xbox 本体/Xbox ネットワーク 機能に関する最新リリースの用語集 (ターミノロジー リスト) で定義されている用語を使用しなければならない。
Xbox 本体のタイトルは画像を表示してはならず、また用語集に掲載されていない用語を使って本体のシステムや周辺機器の構成部分に言及してはならない。
022-01 公式用語の使用ガイドライン
テスト手順
- タイトルを起動します。
- タイトルのすべてのエリアを確認します。
- すべてのメニューおよびサブメニューを操作します。
- 利用可能なすべての設定およびオプションを変更します。
- タイトルがセーブに対応している場合は、可能なすべてのゲーム タイプを保存して読み込みます。
- すべてのムービーを確認します。
- 表示されているすべてのテキストと画像をメモします。
想定される結果
すべてのテキストは最新の用語集 (ターミノロジー リスト) に従っています。 画像は、用語集に記載されていない用語を使って、本体のシステムや周辺機器の構成部分を表示してはならない。
成功例
なし
失敗例
- タイトルで、競合他社のプラットフォーム独自の用語または画像が使用されています。
- タイトルが、用語集に掲載されていない用語を使って本体のシステムや周辺機器の構成部分に言及しています。
XR-074: Xbox およびパートナー サービスの接続の喪失 *
タイトルは、Xbox およびパートナー サービスの接続性に関するエラーを円滑に処理する必要があります。 タイトルは、エラーが発生した後、Xbox サービスへの要求を再試行するとき、Xbox が設定した再試行ポリシーを尊重する必要があります。 タイトルは、サービスが利用不可になった場合のユーザーへのメッセージを適切に管理する必要があります。 パートナー サービスが利用できない場合、Xbox ネットワーク の問題であるとゲームに表示することはできません。 ネットワーク サービスの速度が低下した場合や、断続的にしか利用できない場合に、タイトルのクラッシュやハングが発生しないようにする必要があります。
074-01 Xbox サービスに対する WAN 接続の切断
テスト手順
- Xbox プロフィールにサインインします。
- 次の操作の実行中に、WAN ネットワークを切断します (イーサネット スイッチまたはハブを使用している場合は、ネットワーク デバイスからアップリンク ケーブルを切断します。デバイスが Wifi 経由で接続されている場合は、ワイヤレス アクセス ポイントからアップリンク ケーブルを取り外します)。
- 新しいセーブ ポイントを作成する。
- セーブ ポイントを読み込む。
- オートセーブ ポイントに到達する。
- 保存したゲームの一覧を作成する。
- オンライン セッションを検索して参加する。
- オンライン セッションの作成を試みる。
- ランキングを表示する (該当する場合)。
- オフラインでプレイする。
想定される結果
本体が Xbox サービスに到達できない場合、タイトルはわかりやすいエラー メッセージを表示して状況を説明します。
成功例
- Xbox サービスへのネットワーク接続の喪失を示すエラー メッセージが表示されます。
- Xbox サービスを必要としないローカル ゲーム モードでのプレイ中には、エラー メッセージは表示されません。
- AppX マニフェストに RequireXboxLive を含むタイトルは、接続が失われた場合、中断した後に終了します。
失敗例
- ユーザーは、オンラインでない Xbox ゲーム セッションを完了できません。
- タイトルが応答しない状態または不安定な状態になります。
074-02 直接の切断
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- タイトルで次の操作の実行中に、デバイスからネットワーク ケーブルを外すか、WAP またはワイヤレス ルーターの電源を切ります。
- 新しいセーブ ポイントを作成する。
- セーブ ポイントを読み込む。
- オートセーブ ポイントに到達する。
- 保存したゲームの一覧を作成する。
- オンライン セッションを検索して参加する。
- オンライン セッションの作成を試みる。
- ランキングを表示する (該当する場合)。
- オフラインでプレイする。
想定される結果
デバイスが Xbox サービスへの接続を失った場合、タイトルはわかりやすいエラー メッセージを表示して状況を説明します。
成功例
- オンライン ゲーム モードに入っている場合に、わかりやすいメッセージが表示されます。
- オフライン ゲーム モード中にゲームプレイは中断されません。
- AppX マニフェストに RequireXboxLive を含むタイトルは、接続が失われた場合、中断した後に終了します。
失敗例
- オフライン ゲーム モードでエラー メッセージが表示されます。
- ネットワークがオフラインになった後にユーザーがオンライン メニューを表示できるか、バッファーされたメディアを表示できます。
074-03 Xbox サービスに対する接続の一時停止
環境設定
このテスト ケースは、本体にのみ適用されます。 タイトルをインストールし、GDK の xbapp list
を使用して、タイトルのパッケージ フルネーム (PFN)を返します。
テスト手順
- Xbox プロフィールにサインインして、タイトルを起動します。
- メイン メニューまたはフロントエンド メニューで、次のいずれかを行います。
-
xbapp suspend [PFN]
を実行してタイトルを中断するか、タイトルが自然に完全に一時停止し、一時停止によって HTTP 要求が中断されるまで 30 秒待ちます。 - タイトルを再開します。
-
- 次のエリアがサポートされている場合は、それらエリアで手順 2 ~ 4 を繰り返します。
- シングルプレイヤー ゲーム セッションの実行中。
- オンライン マルチプレイヤー セッションの実行中。
- セッション前のマルチプレイヤー ロビーにいる間。
- オンライン ランキングの表示中。
- ビデオまたはオーディオの再生中。
想定される結果
一時停止の後に本体が Xbox サービスに到達できない場合、タイトルは再アクティベーションを正常に実行した後、状況に適切に対処し、必要に応じてわかりやすいエラー メッセージを表示して状況を説明しなければなりません。
成功例
- Xbox オンライン マルチプレイヤー セッションの実行中に、Xbox サービスへのネットワーク接続の喪失を示すエラー メッセージが表示されます。
- Xbox サービスを必要としないローカル ゲーム モードでのプレイ中には、エラー メッセージは表示されません。
失敗例
- ユーザーは、オンラインでない Xbox ゲーム セッションを完了できません。
- ゲームが応答しない状態または不安定な状態になります。
- 再開すると、タイトルに誤解を招くまたは不正確なエラー メッセージが表示されます。
074-04 一時停止中の Xbox サービスの再接続
環境設定
このテスト ケースは、本体にのみ適用されます。 タイトルをインストールし、GDK の xbapp list
を使用して、タイトルのパッケージ フルネーム (PFN)を返します。
テスト手順
- Xbox プロフィールにサインインして、本体が [Home (ホーム)] に設定されていることを確認します。
- Xbox ネットワークには接続せず、ローカル ネットワーク接続を維持したままで、タイトルを起動します。
- メイン メニューまたはフロントエンド メニューで、次のいずれかを行います。
-
xbapp suspend [PFN]
を実行してタイトルを中断するか、タイトルが自然に一時停止し、一時停止によって HTTP 要求が中断されるまで 30 秒待ちます。
-
- タイトルが完全に一時停止し、一時停止によってすべての HTTP 要求が中断されるまで、少なくとも 30 秒待ちます。
- アップリンク ケーブルを元通りに取り付け、本体が Xbox ネットワーク に再接続するまで待ちます。
- タイトルを再開します。
- 次の追加エリアがサポートされている場合は、それらのエリアで手順 2 ~ 6 を繰り返します。
- シングルプレイヤー ゲーム セッションの実行中。
- ゲームを保存する前/読み込む前の、保存/読み込みのメニュー内。
想定される結果
一時停止の後に本体が Xbox サービスに到達できない場合、タイトルは再アクティベーションを正常に実行した後、状況に適切に対処し、必要に応じてわかりやすいエラー メッセージを表示して状況を説明しなければなりません。
成功例
- ユーザーは、タイトルを再開して、中断なしにオフラインの Xbox ゲーム セッションを完了することができます。
- タイトルは安定した状態を保ち、クラッシュしません。
失敗例
- ユーザーは、オンラインでない Xbox ゲーム セッションを完了できません。
- ゲームが応答しない状態または不安定な状態になります。
- 再開すると、タイトルに誤解を招くまたは不正確なエラー メッセージが表示されます。
074-05 一定の狭い帯域幅
必要なツール:
GDK/XDK の xbstress.exe。
環境設定
ネットワーク シミュレーションは、コマンドライン ストレス ツール xbstress.exe によって制御されます。 このツールは、ネットワーク シミュレーションを含む、さまざまな本体へのストレス誘発要因を構成します。
xbstress.exe はネットワーク処理のために Xbox デバイス上の専用ドライバーを制御し、パケットのドロップ、遅延の挿入、スループットの制限を行います。
xbstress.exe には、minimum、average、excellent の 3 つの構成済みシミュレーション プロファイルがあり、重要なネットワーク シナリオを容易にシミュレートすることができます。 この XR には最小プロファイルを使用します。
テスト手順
- XBStress の最小プロファイルを使用して、接続の帯域幅を Xbox One の最小動作要件まで制限します。
- ゲームに関連する次のオンライン操作を実行します。ただし、これらの操作に限定されません。
- すべてのメニューを操作する。
- オンライン ゲーム セッションでプレイする。
想定される結果
ユーザーのインターネット接続が 192 Kbps を下回ったときに、タイトルのクラッシュやユーザー データの消失が発生してはなりません。
成功例
- 狭い帯域幅によってオンライン プレイが影響を受ける可能性があることをわかりやすく伝えるメッセージが表示されます。
- タイトルのクラッシュやユーザー データの消失が発生しません。
失敗例
- タイトルのクラッシュまたはユーザー データの消失が発生します。
074-06 可変の狭い帯域幅
必要なツール
GDK/XDK の xbstress.exe。
環境設定
ネットワーク シミュレーションは、コマンドライン ストレス ツール xbstress.exe によって制御されます。 このツールは、ネットワーク シミュレーションを含む、さまざまな本体へのストレス誘発要因を構成します。
xbstress.exe はネットワーク処理のために Xbox デバイス上の専用ドライバーを制御し、パケットのドロップ、遅延の挿入、スループットの制限を行います。
xbstress.exe には、minimum、average、excellent の 3 つの構成済みシミュレーション プロファイルがあり、重要なネットワーク シナリオを容易にシミュレートすることができます。 この XR には最小プロファイルを使用します。
テスト手順
- xbstress ですべてのネットワーク制限を無効にします。
- ゲームに関連する次のオンライン操作を実行します。ただし、これらの操作に限定されません。
- すべてのメニューを操作する。
- オンライン ゲーム セッションでプレイする。
- 手順 2 の実行中、xbstress の最小プロファイルを有効にします。
想定される結果
ユーザーのインターネット接続が 192 Kbps を下回ったときに、タイトルのクラッシュやユーザー データの消失が発生してはなりません。
成功例
- 狭い帯域幅によってオンライン プレイが影響を受ける可能性があることをわかりやすく伝えるメッセージが表示されます。
- タイトルのクラッシュやユーザー データの消失が発生しません。
失敗例
- タイトルのクラッシュまたはユーザー データの消失が発生します。
074-07 動的な接続性の喪失
必要なツール
- コンソールの場合は、GDK/XDK の xbstress.exe。
- Windows 10 の場合は、Fiddler Classic。
環境設定:
Xbox デバイスの場合、ネットワーク シミュレーションは、コマンドライン ストレス ツール xbstress.exe によって制御されます。
xbstress.exe では、ドメイン名および IP のリストをブロックできます。このテストは、Microsoft 以外のトラフィックをブロックするために用意されたアドレスのリストを使用して行われます。
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- Microsoft 以外がホストするオンライン機能にアクセスします。
- Xbox 本体でテストする場合は、xbstress で次のコマンドを使用して、Microsoft 以外のトラフィックに対して切断状態のネットワーク チャネルを作成します。
xbstress set channel=0 network=broken addresses=[semicolon delimited list of addresses]
-
xbstress simulate network=channels
を使用してネットワーク シミュレーションを開始します。 - Windows 10 でテストする場合は、Fiddler を使用してダウンタイムをエミュレートします。
想定される結果
タイトルは、Microsoft 以外のサービスへの接続の喪失に円滑に対処します。
成功例
- パートナーがホストするサービスへの接続が失われたときに、タイトルはハングまたはクラッシュしません。
失敗例
- Microsoft のサービスに関する問題が発生したように受け取れるエラー メッセージが表示されます。
- 説明が不十分なエラー メッセージが表示されます。
- タイトルがクラッシュするか、不安定な状態になるか、本体が再起動します。
074-08 起動前のダウンタイム
必要なツール
- コンソールの場合は、GDK/XDK の xbstress.exe。
- Windows 10 の場合は、Fiddler Classic。
環境設定:
コンソールの場合、ネットワーク シミュレーションはコマンド ライン ストレス ツールの _xbstress.exe で設定できます。
xbstress.exe では、ドメイン名および IP のリストをブロックできます。 このテストは、Microsoft 以外のトラフィックをブロックするために用意されたアドレスのリストを使用して行われます。
テスト手順
- Xbox デバイスでテストする場合は、xbstress で次のコマンドを使用して、Microsoft 以外のトラフィックに対して切断状態のネットワーク チャネルを作成します。
xbstress set channel=0 network=broken addresses=[semicolon delimited list of addresses]
。 -
xbstress simulate network=channels
を使用してネットワーク シミュレーションを開始します。 - Windows 10 でテストする場合は、Fiddler を使用してダウンタイムをエミュレートします。
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- Microsoft 以外がホストするオンライン機能にアクセスします。
期待される結果 タイトルには、Microsoft 以外のサービスへの接続に問題があることを示すわかりやすいエラー メッセージが表示され、接続を再試行する機会が与えられるはずです。
成功例
- パートナーがホストするサービスへの接続が失われたときに、タイトルはハングまたはクラッシュしません。
失敗例
- Microsoft のサービスに関する問題が発生したように受け取れるエラー メッセージが表示されます。
- 説明が不十分なエラー メッセージが表示されます。
- タイトルがクラッシュするか、不安定な状態になるか、本体が再起動します。
XR-132: サービスへのアクセス制限 *
Xbox ネットワーク サービスの呼び出し時にタイトルおよびユーザーベースの制限を超えるタイトル、または Xbox ネットワーク サービスの再試行ポリシーに従わないタイトルは、レート制限を受ける場合があり、その結果サービスの中断や停止につながることがある。 指定された制限に従わないと、タイトルをリリースできない可能性がある。また、リリース済みタイトルで実運用中に問題が発生した場合、タイトルを削除するまで Xbox ネットワーク サービスの利用が一時中断されることもある。
132-01 サービスへのアクセス制限
必要なツール
- Windows 10、Xbox Series X|S、または GDK ベースのタイトルの場合、Fiddler Classic。
- Xbox 本体の場合、Fiddler Classic または XblTraceAnalyzer.exe (GDK から)
- Xbox サービス Trace Analyzer を使用して XblTraceAnalyzer.exe および/または Fiddler からの出力ファイルを解析する
テスト手順
Fiddler Classic の使用
- タイトルを起動する前に、Fiddler Classic を起動し、本体または Windows 10 PC (問題のタイトルが実行されている場所) からネットワーク トラフィックをキャプチャするように構成されていることを確認します。
- Fiddler Classic を実行してネットワーク トラフィックをキャプチャしたら、タイトルを起動して、以下を含むがこれらに限定されないすべての領域を移動します。
- セーブ データを保存し、本体を再起動して、セーブ データを読み込む
- リッチ プレゼンス状態をすばやく連続的に変更する (可能な場合)
- 実績を解除して表示する
- すべてのランキングにアップロードし、すべてのフィルターを使用してすべてのランキングを表示する
- ゲーム内のフレンド リスト (プレゼンスがブロックされているフレンドを含む) を表示し、ページ間をすばやく移動する
- ヒーロー スタッツを獲得して表示する
- すべてのオンライン モードにマッチメイキングする。これには、使用可能なセッションが見つからず (可能な場合)、音声トラフィックを生成できない場合を含む
- ゲーム クリップを作成して保存し、共有する
- ゲーム内ストアにアクセスする (該当する場合)
- テストが終了したら、Fiddler キャプチャをローカル ディレクトリに保存します。
- GDK コマンド プロンプトで、
xbltraceAnalyzer -data filepath -outputdir filepath
を実行します。 - 手順 4 で指定した出力ディレクトリを開き、'index' ファイルを開きます (プロンプトが表示された場合は、[ブロックされたコンテンツを許可] を選択します)。
xbtrace.exe の使用
xbtrace.exe は、タイトルが起動するまで起動できませんが、起動中にタイトルが行う Xbox サービスの呼び出しをキャプチャするためにできるだけ早く起動する必要があります。 このため、タイトル トラフィックをキャプチャするための推奨される方法は、タイトルを起動する前に開始できる Fiddler Classic です。
- タイトルの実行中に
xbtrace start xboxliveservices
を実行し、タイトルのすべてのエリアに移動しながらさまざまな操作を行います。これには以下が含まれますが、これらに限定されません。- セーブ データを保存し、本体を再起動して、セーブ データを読み込む
- リッチ プレゼンス状態をすばやく連続的に変更する (可能な場合)
- 実績を解除して表示する
- すべてのランキングにアップロードし、すべてのフィルターを使用してすべてのランキングを表示する
- ゲーム内のフレンド リスト (プレゼンスがブロックされているフレンドを含む) を表示し、ページ間をすばやく移動する
- ヒーロー スタッツを獲得して表示する
- すべてのオンライン モードにマッチメイキングする。これには、使用可能なセッションが見つからず (可能な場合)、音声トラフィックを生成できない場合を含む
- ゲーム クリップを作成して保存し、共有する
- ゲーム内ストアにアクセスする (該当する場合)
- テストが終了したら、2 回
run xbtrace stop
します。 - 本体のファイル システムで SystemScratch > xbtrace に移動し、csv ファイルを探します。 タイムスタンプを見て、記録を停止した時刻のファイルが存在することを確認します。 そのファイルをローカルにコピーします。
- XDK コマンド プロンプトで、
Xbltraceanalyzer -data filepath -outputdir filepath
を実行します。 - 手順 4 で指定した出力ディレクトリを開き、'index' ファイルを開きます (プロンプトが表示された場合は、[ブロックされたコンテンツを許可] を選択します)。
想定される結果
ゲームでは Trace Analyzer の出力結果に重大な警告が表示されていてはいけません。 タイトルによる Xbox エンドポイントへのサービス呼び出しが、指定されたバースト制限およびサステイン制限を超えないようにする必要があります。
成功例
- タイトルが Xbox サービスを呼び出すときにサステイン制限を超えません。
失敗例
- タイトルがサステイン制限 (これを超えるとレート制限が適用される限界) を 10 倍超えています。 たとえば、きめ細かなレート制限が適用されるサステイン制限が 300 秒間に 300 回の呼び出しに設定されている場合、300 秒間に 3000 回以上の呼び出しを行うタイトルは不合格になります。
132-02 ゲーム イベントの制限事項
テスト手順
タイトルをインストールして実行し、タイトルのすべてのエリアに移動しながらさまざまな操作を行います。これには以下が含まれますが、これらに限定されません。
- セーブ データを保存し、本体を再起動して、セーブ データを読み込む
- リッチ プレゼンス状態をすばやく連続的に変更する (可能な場合)
- 実績を解除して表示する
- すべてのランキングにアップロードし、すべてのフィルターを使用してすべてのランキングを表示する
- ゲーム内のフレンド リスト (プレゼンスがブロックされているフレンドを含む) を表示し、ページ間をすばやく移動する
- ヒーロー スタッツを獲得して表示する
- すべてのオンライン モードにマッチメイキングする。これには、使用可能なセッションが見つからず (可能な場合)、音声トラフィックを生成できない場合を含む
- ゲーム クリップを作成して保存し、共有する
- ゲーム内ストアにアクセスする (該当する場合)
テスト中に、ゲーム イベントの制限のシステム トーストがタイトルに表示されるかどうか確認します。
想定される結果
ゲーム イベントの制限事項のシステム トーストが発生しません。
成功例
- タイトルでは、ゲーム イベントの制限事項のシステム トーストが発生しません。
失敗例
- タイトルで、ゲーム イベントの制限のシステム トーストが発生します。
XR-133: ローカル ストレージの書き込み制限 \*
ローカル ストレージを使用するタイトルの場合、永続的なローカル ストレージまたは一時ストレージへの 5 分間あたりの総書き込み量が 1 GiB を超えることはできません。
GDK を使用した Xbox 本体上のローカル記憶域の詳細については、「ローカル記憶域」のセクションを参照してください。
133-01 ローカル ストレージの書き込み制限
テスト手順
- タイトルをインストールして実行し、タイトルのすべてのエリアに移動しながらさまざまな操作を行います。これには以下が含まれますが、これらに限定されません。
- セーブ データを保存し、本体を再起動して、セーブ データを読み込む
- すべてのゲーム モードをプレイし、実績のロックを解除/表示
- テスト中に、ローカル記憶域の書き込み制限のシステム トーストがタイトルに表示されるかどうか確認します。
想定される結果
ゲームはローカル記憶域の書き込み制限システム トーストをトリガーしてはなりません。
成功例
- タイトルは、ローカル記憶域の書き込み制限システム トーストをトリガーしません。
失敗例
- タイトルはローカル記憶域の書き込み制限システム トーストをトリガーします。
オンラインの安全性とプライバシー
このカテゴリーの要件は、ユーザーの安全とプライバシーの保護に関するものです。
XR-013: Microsoft アカウントとパブリッシャー アカウントのリンク *
Xbox では、パートナーがホストするサービスまたは資格情報を必要とするアカウントを使用するタイトルは、すべての Xbox ユーザーをサポートし、そのアカウントをユーザーの Microsoft アカウントにリンクすることを提案する必要があります。 Xbox 本体以外では、アカウントのリンクを使ってゲーム エクスペリエンスをサポートすることを選択できます。
タイトルでパブリッシャー アカウントのサインインが有効になっている場合は、次のルールが適用されます。
パブリッシャー アカウントのサインイン
すべてのユーザーに対応する
ゲーム機能 (シングル プレイヤー、マルチプレイヤー、クロス ネットワーク ゲームプレイ、ランキング) にパブリッシャー アカウント サインインが必要な場合、サインインとサインアップは、ゲーム タイトルが提供され、年齢別レーティングに関係なく地域または地域の法律で許可されているすべてのユーザーの種類、年齢、地域をサポートする必要があります。- ゲーム パブリッシャーは、パブリッシャー アカウントの特定のリージョン、年齢などをサポートしないように選択できます。 リージョン、年齢グループ、またはその他のプレイヤー グループがアカウントを作成またはサインインできない場合、タイトルは、それらのユーザーがゲーム機能のアカウントでサインインすることを要求することはできません。
- タイトル ベースのサインアップ エクスペリエンス (年齢やリージョンなど) で特定のアカウント設定がサポートされていない場合、そのユーザーがサポートされている外部サイトまたはモバイル最適化エクスペリエンスにサインアップするためのメッセージングを提供することで、タイトルを適切に処理する必要があります。
同意を得て、アカウント情報の使用条件を提供する
タイトルがサインアップ/アカウント作成エクスペリエンスを自動的に設定するには、プレイヤーの Microsoft アカウントの情報の使用を要求し、そのための同意を得る必要があります。 パブリッシャー アカウント作成プロセスの間、タイトル内で適用されるすべての使用条件、プライバシー、その他のポリシー (または通知とそれらの情報へのリンク) を、ユーザーに提供する必要があります。開示要件
ゲームプレイや追加機能にパブリッシャー アカウントが必要な場合は、タイトルの製品の説明と、年齢などの制限を含む物理的なパッケージに開示する必要があります。 タイトルでは、ゲームでパブリッシャー アカウントの理由と使用方法を定義する必要があります。 パブリッシャー アカウントが子供用アカウントのエクスペリエンスを限定あるいは制限する場合は、購入者が認識できるよう、このテキストをストアの詳細ページに追加することをおすすめします。
オンライン マルチプレイヤー、コミュニケーション、その他のオンライン機能を含むゲームの一部の機能には、Xbox の子供用アカウントからアクセスできない場合があります。 Xbox では、地域の法律で異なる指定がない限り、子供とは 13 歳未満のプレイヤーを意味します。
パブリッシャー アカウント/Microsoft アカウントのリンク
Xbox セキュア トークン サービス (XSTS) を使用した認証
ユーザーのパブリッシャー アカウントをユーザーの Microsoft アカウントにリンクする際は、認証用の ID 情報を提供するために XSTS トークンを使用する必要があります。 XSTS トークン認証の詳細については、「タイトル サービス用 Xbox サービス認証認可が必須です」を参照してください。同意を得て選択肢を提供する
ユーザーに対しては、そのユーザーのパブリッシャー アカウントと Microsoft アカウントがリンクされていることを、通知する必要があります。 アカウントをリンクする場合は、ユーザーにオプトアウトの選択肢を提供する必要があります。 ユーザーが、アカウントのリンクを解除できるようにする必要があります。すべてのユーザーに対応する
ゲーム機能 (シングル プレイヤー、マルチプレイヤー、クロス ネットワーク ゲームプレイ、ランキング) にパブリッシャー アカウント サインインが必要な場合、ゲーム タイトルが提供されていて、年齢別レーティングに関係なく、地域の法律でそれらの機能が許可されているすべてのユーザーの種類、年齢、地域を、サインインとサインアップがサポートする必要があります。
注意
パブリッシャーは、リンクされたアカウントが新しいデバイスから初めてサインインしたときに、2 要素認証などの追加の不正防止メカニズムを割り込みで実装する場合があります。 この動作は、この XR の違反ではありません。
013-01 Microsoft アカウントとパブリッシャー アカウントのリンク
テスト手順
- タイトルがサービスや機能について Xbox 以外のアカウントまたはログインに対応しているか、またはそれらを必須としていることを検証します。
- 新規に作成した Xbox プロフィールを使用し、パブリッシャーが提供しているサービス アカウントまたはログインを使用して初期設定中に Xbox 以外のアカウント資格情報を入力します。
- アカウントのリンク設定を完了する前に、ユーザーがアプリ内で利用規約を表示することがタイトルで許可されていること、または利用規約を表示する方法がユーザーに通知されていることを確認します。
- ユーザーがどの場所でも非 Xbox アカウントの資格情報を再入力するように求められないことを確認します。
- タイトルの実行中にサインアウトし、再度サインインします。
- 手順 [4] を繰り返します。
- タイトルを終了し、同じプロフィールを使用して再度アクティブにします。
- 手順 [4] を繰り返します。
- タイトルを終了します。
- タイトルによって作成された可能性があるセーブ ファイルを削除することで、Xbox 以外のアカウント資格情報がローカルに保存されないことを確認します。
- ゲームを再度アクティブにして手順 [4] を繰り返します。
- 別の本体で、同じプロフィールを使用してタイトルを起動し、手順 [4] を繰り返します。
- ユーザーが Xbox 以外のアカウントから Xbox プロフィールのリンクを解除することができることを確認します。
- ゲームの年齢区分に含まれる Xbox 子供用アカウント (13 歳未満) で手順 [1] - [13] を繰り返します。
想定される結果
タイトルでは、ゲームの年齢区分に含まれるすべてのユーザーに対してパブリッシャー アカウントの作成を許可する必要があります。 ユーザーに資格情報の提供を求めるのは 1 回だけとし、アカウントのリンク設定を完了する前にユーザーが使用条件を表示できるようにするか、使用条件を表示する方法をユーザーに通知します。 ユーザーには、Xbox 以外のアカウントから Xbox プロフィールのリンクを解除する方法が提供されます。
成功例
- ユーザーは最初に自分の Xbox 以外のアカウント資格情報またはログイン資格情報を入力した後、その後のいかなる時点においてもこれらの資格情報の再入力を求められることはありません。さらに、リンクの設定プロセスの最中、およびアカウントがリンクされている限り、タイトルから使用条件の通知が提供されます。
- タイトルでは、ゲームの年齢区分に含まれるすべてのユーザーに対してパブリッシャー アカウントを作成できます。
失敗例
- タイトルを起動するたびに、Xbox 以外のアカウント資格情報またはログイン資格情報を入力するよう要求されます。
- ユーザーが別の本体からタイトルを実行する際、タイトルは Xbox 以外のアカウントまたはログイン資格情報の入力を要求します。
- アカウント リンク プロセス中に使用条件を表示する方法が提供されません。
- タイトルは、Xbox 以外のアカウントから Xbox プロフィールのリンクを解除するための方法を提供しません。
- タイトルでは、ゲームの年齢区分に含まれるすべてのユーザーに対してパブリッシャー アカウントを作成することはできません。
XR-014: プレーヤー データと個人情報 *
ゲーム パブリッシャーは、特にユーザーが子供である場合に適用される法令に従ってエンド ユーザー データを収集および処理する責任を単独で負います。
さらに、タイトルに Xbox から取得したプレイヤー、またはプレイヤーとの直接の関係 (Web サイトやモバイル アプリなど) から取得したプレイヤーに関する情報がある場合、タイトルを他のプレイヤーに表示することはできません。
- ユーザーに金銭的損害を与えるために使用される可能性のある情報 (社会保障番号やクレジット カード番号など)。
- 国/地域以外でユーザーの住所を漏洩させる情報。
- アカウントの資格情報など、プレイヤーがオンライン上で別のユーザーになりすますことを可能にする情報。
子データの処理
お子様または 13 才以上対象の年齢グループのアカウントからデータを収集する場合、タイトルは年齢の確認または保護者の同意の取得に必要な個人データのみを要求できます。
定義
住所には、市町村レベルまでユーザーの位置情報を特定できる情報も含まれます。 たとえば以下が含まれますが、これらに限りません。
- 実際の住所
- 郵便の宛先
- 請求先住所
- 郵便番号
- IP アドレスなどの関連情報
- 地理的な位置情報
014-01 個人情報
テスト手順
- ゲームのすべてのエリア (可能なすべての Xbox マルチプレイヤー セッションを含む) にアクセスします。
- コンテンツが保存されたり、または Xbox ネットワークやゲーム サーバーに送信される可能性のあるすべての画面にアクセスします。
想定される結果
XR の本体に詳しく説明されているように、タイトルは別のユーザーに関する個人情報を表示してはなりません。
成功例
- 別の本体上のユーザーに関する居住国の情報が表示され、共有されます。
- タイトルで、ユーザーの IP アドレスを使用してユーザーの大まかな位置情報 (都道府県や国/地域までを特定) を明確にし、その位置情報をランキング上の他のユーザーに表示する。
失敗例
- タイトルは、ユーザーの個人情報を他の本体のユーザーと送信して共有します。 例: メール アドレス、場所 (州や国/地域よりも具体的な場所)、名前、生年月日、プロフィールのパスコード、秘密の質問、パスワード、クレジット カードの詳細情報。
014-02 データ収集
テスト手順
- お子様または 13 才以上対象のアカウントを使用してタイトルを起動します。
- タイトルのすべての領域 (可能なすべてのシングルおよび Xbox マルチプレイヤー ゲーム モードを含む) にアクセスします。
- ユーザーから要求されているデータを確認します。
想定される結果
タイトルは、年齢の確認や保護者の同意 (親のメール アドレスなど) を取得するために必要なものを超えて、お子様または 13 才以上対象のユーザーにデータを要求することはできません。
成功例
- タイトルは、お子様または 13 才以上対象のユーザーにデータを要求しません。
- タイトルはユーザーの生年月日を要求し、年齢を確認するためにこれが必要であることを示します。
- タイトルは、保護者の同意を提供できるように、親のメール アドレスを要求します。
失敗例
- タイトルは、年齢の確認や親からの同意の取得以外の目的で使用できるデータを要求します。
- タイトルには、要求されたデータが何のために必要なのかは記載されていません。たとえば、親のメール アドレスを要求していますが、その理由については記載されていません。
XR-015: プレイヤー間の通信の管理 *
ユーザーのプライバシー設定で許可されていない場合、タイトルは Xbox 経由でユーザー データを転送したり、通信を許可したりしてはならない。
タイトルはこの XR を満たすために、Xbox サービスからデータを取得するものとする。 独自のサービスを使用するタイトルは、セッションの開始時、または新しいユーザーがセッションに参加するときに、ユーザーのプライバシーに関する許可を確認する必要がある。 セッションの外部でユーザーによって開始されたシナリオについては、タイトルはこの要件を満たすために、ユーザーのデータを表示する前、および操作を実行する前にプライバシーを確認するものとする。 タイトルで確認できるプライバシー設定の一覧を以下に示します。
権限名 | 説明 |
---|---|
CommunicateUsingText | プレイヤーがターゲット プレイヤーにテキスト コンテンツを含むメッセージを送信できるかどうかをチェックします。 |
CommunicateUsingVoice | ユーザーが音声を使用してターゲット ユーザーと通信できるかどうかをチェックします。 |
Xbox プレイヤーと Xbox 以外のネットワークのプレイヤーとの間での通信が可能なタイトルは、ゲームプレイ セッション中に Xbox 以外のプレイヤーをミュートできる機能を提供する必要があります。
015-01 ユーザー コミュニケーション
環境設定:
- 「他のユーザーは音声、テキスト、または招待で通信できます」を全員、フレンド、ブロックに設定したプロフィールのセットを作成します。
- Xbox Live の外部での通信をサポートするタイトルの場合、「Xbox Live の外部で音声とテキストを使用して通信できます」を、許可、ゲーム内のフレンド、およびブロックに設定したプロフィールのセットを作成します。
注意
「許可」と「ゲーム内の友達」の友達オプションの違いは、「許可」は、ネットワークを越えてすべてのユーザー (ランダムなマッチメイキングで出会ったプレーヤーを含む) と話すことができることを意味します。 「ゲーム内の友達」とは、ゲーム内のフレンド リストに追加することで、明示的に一緒にプレイすることを選択したユーザーのことです。
テスト手順
- デバイス 1 で、「環境設定」に従って特定のアクセス許可で構成されたプロフィールにサインインします。
- デバイス 2 で、コミュニケーション制限のないプロフィールにサインインします。
- 両方のデバイスでタイトルを起動し、対応しているすべての場所でテキスト、音声 (Kinect 経由とヘッドセット経由の両方)、ビデオを使用した通信を試み、マルチプレイヤー ゲームの招待を送信しようとします。
- すべてのプロフィールに対して、構成手順の 1 から 3 を繰り返します。
想定される結果
タイトルは、プライバシーとオンラインの安全性に関連する操作に関するユーザーの許可について Xbox サービスを確認する必要があります。また、ユーザーのプライバシーとオンラインの安全性の設定で許可されていない場合は、ユーザー データを送信したり、Xbox を介したコミュニケーションを許可したりしないでください。
成功例
- 特定のコミュニケーション方法が [ブロック] に設定されているユーザーは、Xbox 上で音声およびテキストでコミュニケーションすることはできません。
- 特定のコミュニケーション方法が [ブロック] に設定されているユーザーは、その方法を使用して Xbox 以外でコミュニケーションすることはできません。
- これが制限されている場合、タイトルは、ユーザーが Xbox 上でマルチプレイヤー ゲームの招待を受信できないようにします。
失敗例
- ユーザーは、該当するコミュニケーション方法が [ブロック] に設定されている場合に Xbox 上で音声およびテキストでコミュニケーションすることができます。
- ユーザーは、該当するコミュニケーション方法が [ブロック] に設定されている場合に Xbox 以外で音声およびテキストでコミュニケーションすることができます。
- 制限に設定されていても、タイトルは、ユーザーが Xbox 上でマルチプレイヤー ゲームの招待を受け取ることを許可します。
015-02 ミュートへの対応
テスト手順
- ユーザー A として、ユーザー B をミュートにします。
- 両方のユーザーを Xbox マルチプレイヤー セッションに参加させます。
- ユーザー B からユーザー A にボイス チャットの送信を試みます。
- ユーザー A がユーザー B からのボイス チャットを受信できないことを確認します。
想定される結果
ユーザー A がユーザー B の声を聞くことができなくなります。
成功例
- ミュートを設定したユーザーがミュートの対象となる相手の声を聞くことができません。
失敗例
- ミュートを設定したユーザーがミュートの対象となる相手の声を聞くことができます。
015-03 ブロックされたユーザー
テスト手順
- ユーザー A として、ユーザー B をブロックします。
- 両方のユーザーを Xbox マルチプレイヤー セッションに参加させます。
- ユーザー B からユーザー A に音声とテキストの送信を試みます。
- ユーザー B からユーザー A に、マルチプレイヤー ゲームへの招待の送信を試みます。
- ユーザー A は、ユーザー B から、どのような通信やマルチプレイヤー ゲームの招待も受信できないようになります。
想定される結果
ユーザー A では、ユーザー B からの声を聞けなくし、通信内容の表示もできなくする必要があります。ユーザー A が、ユーザー B からのマルチプレイヤー ゲームの招待を受けとることはありません。
成功例
- ブロックを設定したユーザーがブロックの対象となる相手の声を聞いたり、その相手から送られてきたテキストを見たりすることができません。
- ブロック対象の相手からのマルチプレイヤー ゲームの招待を、その制限を設定したユーザーが受け取ることはありません。
失敗例
- ブロックを設定したユーザーがブロックの対象となる相手の声を聞いたり、その相手から送られてきたテキストを見たりすることができます。
- ブロック対象の相手からのマルチプレイヤー ゲームの招待を、その制限を設定したユーザーが受け取ります。
XR-017: タイトルのレーティング *
Xbox のタイトルのレーティング
この ホワイト ペーパー では、Xbox 本体のコンテンツの分類と制限に関連する 2 つの重要な概念に焦点を当てています:
- レーティング: 各種のコンテンツが各地域のレーティング機関で適切と判断される年齢レベルを指定します。
- 保護者による制限: アプリケーション内でユーザーがプレイまたは表示できるコンテンツの制限が最も厳しいレーティング レベルを定義する Xbox 本体でのプロフィール設定を指します。
017-01 年齢別レーティングの検証
Important
デジタルのみのタイトルまたは緑色のディスクなしのテストについては、代わりにテスト ケース BVT 000-13 を参照してください。
環境設定:
- タイトルはディスク提出である必要があり、テスト ディスクはテスト手順 2 および 3 を実行するために使用できる必要があります。
- 最終 (ベース/コンテンツ アップデート) – 証明書を必要とするすべてのロケールについて、証明書が必要です。
- 範囲外/テスト不要 - Xbox Live サービスに接続しないと起動できない DLC、ゲーム内コンテンツ、タイトル。
- 提出資料 (証明書)
- Microsoft パートナー センターで宣言されているタイトルの年齢レーティング
テスト手順
- Microsoft パートナー センター内のレーティング値を、タイトルの提出資料で提供されるレーティング証明書と比較し、その逆の比較も行います。 これは、それぞれのレーティング値に対応する証明書が存在すること、また、それぞれの証明書がパートナー センターに記録されていることを確認するために行います。
- パートナー センター内のすべてのレーティング値に対して、一致する証明書が存在する必要があります。 証明書が存在しないレーティング値がある場合、間違いを強調している可能性があるため、エスカレーションの必要があります。
- テスト ディスクが必要 - ディスク メディアを RETAIL に設定された専用のオフライン本体に挿入し、タイトルをインストールして、テスト中に本体が Xbox Live サービスに接続されていないことを確認します。
- タイトルでサポートされている各レーティング機関について: オフライン本体を、本体の設定でレーティング機関が管理する 1 つの場所/国に設定し、対応する年齢制限を有効にして Xbox プロフィールにサインインし、タイトルを起動して次のことを確認します。
- プロフィールの年齢別レーティング値がシステムの年齢別レーティング証明書よりも低く設定されている場合、タイトルはユーザーをチャレンジします。
- プロフィールの年齢別レーティング値がタイトルの年齢別レーティング証明書と同じである場合、システムはユーザーをチャレンジせず、最初の法的情報/ライセンス画面よりも先にタイトルの起動が進みます。
想定される結果
本体の場所が、タイトルで対応しているそれぞれの年齢別レーティング地域と一致する場合、次のようになります。
- 本体の年齢別レーティングの値がタイトルの年齢別レーティング証明書の値よりも低く設定されている場合、タイトルの起動時にユーザーをチャレンジする必要があります。
- 年齢別レーティングの値がタイトルの年齢別レーティング証明書の値と同じく設定されている場合、タイトルの起動時にユーザーをチャレンジせずに起動が進行する必要があります。
XR-018: ユーザー作成コンテンツ *
ユーザー作成コンテンツとは、ユーザーがアプリや製品に投稿し、他のユーザーがオンライン状態で表示またはアクセスできるコンテンツです。 製品に UGC が含まれている場合は、以下を実行する必要があります。
- 製品の使用条件やユーザー作成コンテンツに関するコンテンツ ガイドラインをゲーム内またはタイトルの Web サイトで ユーザーに公開および使用可能にすること。
- 製品内の不適切なコンテンツや有害なコンテンツを報告する手段をユーザーに提供し、開発者による確認後にガイドラインに違反するコンテンツを削除/無効化できるようにする、または不適切な UGC や有害な UGC をプロアクティブに検出するための方法 (テキストのフィルタリングなど) を実装すること。
- Microsoft から要求された場合、タイトルが UGC を削除/無効化すること。
- ユーザーがゲーム内で UGC にアクセスできないシナリオを適切に処理すること。
- サードパーティの MOD プラットフォームと統合されたタイトルは、(使用可能な場合は) 製品のレポート/苦情APIと統合される必要があり、それぞれのサードパーティの契約において必要な場合は、コンテンツを調整する必要があります。 サードパーティの MOD プラットフォームと統合されたタイトルは、コンテンツが開発者から配信されたものではない場合、免責事項、ダイアログ、または視覚的な合図をユーザーに提示する必要があります。
018-01 不適切なコンテンツの報告と UGC テキスト文字列の検証
テスト手順
- タイトルに Xbox 以外のフレンドの間でテキストを入力できるエリアがあり、そのテキストを別のデバイスのユーザーが見ることができる場合、そのようなエリアをすべて確認します。
- 他のユーザーによる不適切なコンテンツをタイトルまたは Microsoft に報告する方法が提供されていることを確認します。
- 不適切なコンテンツを報告するための手段がない場合、各エリアで、制限される単語の公開リストに含まれる文字列、部分文字列などを入力します。
- 制限されている単語を直接入力します (例: "BannedWord")。
- 制限されている単語を、別の制限されていない単語と共にスペースで区切って入力します (例: "Good BannedWord")。
- キャラクター名などの UGC をオフライン状態で作成できるタイトルの場合は、デバイスをネットワークから切断して、制限されている単語の組み合わせを入力し、ネットワークに再接続します。
- 適切でない文字列が、別のデバイスにいる他のどのユーザーにも表示されないことを確認します。
- タイトルでサポートされている言語ごとに、一致するロケールの制限される単語を使用して、手順 3 - 5 を繰り返します。
想定される結果
タイトルは、他のユーザーによる不適切なコンテンツを報告できる方法をユーザーに提供しなければなりません。または、不適切な言葉はエラー メッセージで制限されなければなりません。あるいは、有害な言葉は無害な代替文字列に置き換えられるか、マスクされなければなりません。
成功例
- ユーザーが入力したテキスト メッセージのうち、ゲーム内でリアルタイムに共有されるもの (ロビーや、ゲームのテキスト オーバーレイなど) またはフレンド間でのみ共有されるものは、フィルター処理されません。
- 他のユーザーによる不適切なコンテンツをタイトルまたは Microsoft に報告する方法がユーザーに提供されている。
- タイトルは不適切な言葉の投稿を禁止し、投稿が失敗した理由をユーザーに通知する。
- ゲームは不適切な用語を代替の単語や文字 ([BLOCKED] や [!$%and£$] など) に置き換えます。
- 有害な文字列は、ローカルの本体のユーザーには表示されますが、ローカルの本体以外の Xbox ではない他のフレンドには送信されません。
失敗例
- 他のユーザーによる不適切なコンテンツを報告する方法がユーザーに提供されておらず、適切でない文字列が別の本体の Xbox 以外のフレンドに表示されます。
- タイトルでは、ユーザーは UGC をオフライン状態で作成することによって、タイトルの不適切なコンテンツのフィルターを逃れることができます。
コンテンツ パッケージとアップデート
このカテゴリーの要件では、Xbox One ゲーム タイトルをパッケージ化するときに使用しなければならない方法と、それらのタイトルが追加コンテンツ パッケージとやり取りする方法を指定します。
XR-034: 初期プレイ マーカーのストリーミング インストール *
初期プレイ マーカーを含むタイトルは、初期プレイ マーカーから起動したときにゲームプレイ エクスペリエンスを提供する必要があります。
GDK を使用したストリーミング インストールまたはインテリジェント配信の詳細については、「ストリーミング インストールとインテリジェント配信 の概要」を参照してください。
034-01 ストリーミング インストール
テスト手順
- Xbox プロフィールにサインインします。
- タイトルをインストールし、初期プレイ マーカーのインストールが完了したらタイトルを起動します。
- フル インストールが完了する前にタイトルのすべてのエリアに入ることを試行します。
想定される結果
初期プレイ マーカーのインストールでは、ゲームプレイ エクスペリエンス (チュートリアル、最初のレベルのプレイ、1 つのゲームモードでのクイック マルチプレイヤー マッチなど ) を提供する必要があります。
成功例
- タイトルは、最初のプレイ マーカーから起動したとき、ゲームプレイ エクスペリエンス (チュートリアル、最初のレベルのプレイ、1 つのゲームモードでのクイック マルチプレイヤー マッチなど ) を提供する必要があります。
失敗例
- 最初のプレイ マーカーがインストールされた後、タイトルはゲームプレイ エクスペリエンスを提供しません。 エクスペリエンスに次のような問題が発生します。
- 進行状況バーが表示されるだけで、他には何も起こらない
- ビデオまたは一連の画像の再生
- メインメニューへのアクセスのみが提供される
- その他の非インタラクティブなエクスペリエンス
XR-129: インテリジェント デリバリー コンテンツの管理 *
インテリジェント デリバリーをサポートするタイトルは、現在インストールされていないコンテンツが必要になったとき、それを円滑に処理しなければならない。 これを実現するには、ディスクまたは Xbox ネットワークから追加コンテンツをインストールしなければならないときに GDK で PackageInstallChunksAsync
を呼び出すか、XDK で AddChunkSpecifiersAsync
を呼び出します。
GDK を使用したストリーミング インストールまたはインテリジェント配信の詳細については、「ストリーミング インストールとインテリジェント配信の概要」を参照してください。
129-01 言語パックのインテリジェント デリバリー
必要なツール:
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- Xbox One 本体を、対応している言語に設定します。
- タイトルをインストールします。
- タイトルを起動します。
- タイトルを操作し、本体で選択した言語とエクスペリエンスが一致していることを確認します。
- ゲーム内メニューに言語を切り替えるオプションがある場合は、各言語を選択して、その言語の各チャンクをインストールします。
- 対応しているすべての言語で、手順 1 - 5 を繰り返します。
- すべての世代のデバイスで手順 1 - 6 を繰り返します。
想定される結果
必要な言語パックが期待どおりにインストールされます。
成功例
- 本体の言語設定に基づく必要な言語パックがインストールされます。
- メニュー オプションで別の言語を選択すると、適切な言語パックがインストールされます。
- タイトルは安定した状態を保ち、クラッシュしたり無反応状態になったりしません。
失敗例
- 本体の言語設定に基づく必要な言語パックがインストールされません。
- メニュー オプションで別の言語を選択しても、適切な言語パックがインストールされません。
- タイトルが、クラッシュするか無反応状態になります。
129-02 デバイス固有のコンテンツのインテリジェント デリバリー
必要なツール:
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- Xbox One 本体を、対応している言語に設定します。
- タイトルをインストールします。
- タイトルを起動します。
- タイトルを操作し、Xbox One 固有のコンテンツのみがインストールされていることを確認します。
- すべての世代のデバイスで手順 1 - 4 を繰り返し、すべての世代固有のコンテンツがインストールされていることを確認します。
- 対応しているすべての言語で、手順 1 - 5 を繰り返します。
想定される結果
必要なデバイス固有のコンテンツが期待どおりにインストールされます。
成功例
- 必要なデバイス固有のコンテンツがインストールされます。
- タイトルは安定した状態を保ち、クラッシュしたり無反応状態になったりしません。
失敗例
- 必要なデバイス固有のコンテンツがインストールされません。
- タイトルが、クラッシュするか無反応状態になります。
129-03 デバイス固有のコンテンツの移行
必要なツール:
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- Xbox One 本体: Xbox One 本体を対応している言語に設定します。
- Xbox One 本体: 外部 USB デバイスにタイトルをインストールします。
- Xbox One 本体: タイトルを起動します。
- Xbox One 本体: タイトルを操作し、Xbox One 固有のコンテンツのみがインストールされていることを確認します。
- USB デバイスを Xbox One X 本体に移動します。
- Xbox One X 本体: 更新プログラムを取得して Xbox One X 固有のコンテンツをインストールします。
- Xbox One X 本体: タイトルを起動し、Xbox One X の追加コンテンツのインストールが円滑に処理されることを確認します。
- USB デバイスを Xbox One 本体に戻します。
- Xbox One 本体: タイトルを操作し、インストール中の両方のプラットフォームのコンテンツが円滑に処理されることを確認します。
- Xbox One Series X で手順 5 - 9 を繰り返します。
想定される結果
必要なデバイス固有のコンテンツが期待どおりにインストールされます。
成功例
- 必要なデバイス固有のコンテンツがインストールされます。
- タイトルは安定した状態を保ち、クラッシュしたり無反応状態になったりしません。
失敗例
- タイトルが、クラッシュするか無反応状態になります。
129-04 オンデマンド コンテンツのインテリジェント デリバリー
必要なツール:
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- Xbox One 本体を、対応している言語に設定します。
- タイトルをインストールします。
- タイトルを起動します。
- オンデマンド コンテンツをすべてインストールします。
- 対応しているすべての言語で、手順 1 - 4 を繰り返します。
- すべての世代のデバイスで手順 1 - 5 を繰り返します。
想定される結果
オンデマンド コンテンツが期待どおりにインストールされます。
成功例
- オンデマンド コンテンツが期待どおりにインストールされます。
- タイトルは安定した状態を保ち、クラッシュしたり無反応状態になったりしません。
失敗例
- オンデマンド コンテンツが期待どおりにインストールされません。
- タイトルが、クラッシュするか無反応状態になります。
129-05 機能とレシピ
必要なツール:
- 1 x Xbox One
- 1 x Xbox One S
- 1 x Xbox One X
- 1 x Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
テスト手順
- ベース タイトルを、機能とレシピに関連付けられているオプションのコンテンツなしでインストールします。
- タイトルのすべての領域に移動し、インストールされていないコンテンツへのアクセスを試み、タイトルが安定していることを確認します。
- システム UI に公開される各機能ごとに、機能をインストールし、タイトル内でアクセスを試み、タイトルが安定していることを確認します。
- システム UI に公開されていない各機能ごとに、タイトル内 UI オプションを使用して機能ビューをインストールし、タイトルが安定していることを確認します。
- レシピごとに、ユーザーが関連するストアの資格を所有していることを確認し、新しいインストールを実行します。
- レシピに含まれるすべての機能が、タイトル内にインストールされ、アクセスできることを確認します。
想定される結果
タイトルは、オプションのコンテンツがインストールされていない場合は、安定した状態を維持し、インストールされている場合は、オプションのコンテンツへのアクセスを許可します。
成功例
- オプションのコンテンツがインストールされていない場合、タイトルは安定した状態を維持します。
- オプションのコンテンツがインストールされている場合、タイトルはオプションのコンテンツへのアクセスを許可します。
失敗例
- タイトルは、オプションのコンテンツがインストールされていないときに、クラッシュするか無反応状態になります。
- タイトルは、オプションのコンテンツがインストールされているときに、オプションのコンテンツへのアクセスを許可しません。
XR-123: ゲームプレイ中のゲーム アドオンまたは消耗品アイテムのインストール/ロック解除 *
ダウンロード コンテンツ (DLC) を提供するタイトルは、ユーザーがゲームを終了して再起動しなくても、そのコンテンツをダウンロード/ロック解除および使用できるようにしなければなりません。
ゲームでの DLC へのアクセスと列挙の詳細については、ダウンロード コンテンツ (DLC) パッケージのセクションを参照してください。
123-01 ゲームプレイ中のゲーム アドオンまたは消耗品アイテムのインストール/ロック解除
テスト手順
- タイトルを起動し、アクティブなゲームプレイに進みます。
- Xbox ストアからゲームのアドオンまたは消費型アイテムの購入を開始します。
- バックグラウンド ダウンロードを完了させます。
- ユーザーがゲームプレイを続行でき、バックグラウンド ダウンロードの完了によってゲームが悪影響を受けないことを確認します。
- ゲームを終了して再起動しなくても、そのコンテンツを使用できることを確認します。
- タイトルが制限モードに入っている間に、手順 1 〜 5 を繰り返します。
- タイトルが一時停止している間に、手順 1 ~ 5 を繰り返します (タイトルが完全に一時停止し、一時停止によってすべての HTTP 要求が中断されるまで、30 秒以上待ちます)。
- タイトルがゲーム内ストア機能をサポートしている場合、その機能を使用して追加コンテンツまたはゲームのダウンロードを開始し、手順 1 ~ 5 を繰り返します。
想定される結果
ダウンロード コンテンツ (DLC) や消費型アイテムを提供するタイトルは、ユーザーがゲームを終了して再起動しなくても、そのコンテンツをダウンロードおよびロック解除して使用できるようにする必要があります。
成功例
- ユーザーは、ゲームを終了して再起動しなくても、そのコンテンツをダウンロードおよび使用できます。
- 新しい DLC を読み込むために、ゲーム内のメッセージによってユーザーにメニューに戻るよう指示されます。
失敗例
- ユーザーは、コンテンツを使用するために、ゲームを終了して再起動する必要があります。
123-02 ストリーミング インストール中のメイン ゲーム パッケージの一部としてのゲーム アドオンまたは消耗品アイテムのインストール/ロック解除
テスト手順
- タイトルがゲーム アドオンまたは消費型アイテムをサポートしていることを確認します。
- 完全版ゲームのインストール前に、各種のゲーム アドオンまたは消費型アイテムをインストールします。
- メイン ゲーム パッケージのインストールを開始し、初期プレイ マーカーから起動します (プレイ マーカーがサポートされている場合)。
- インストールが完了する前に、DLC の使用を試みます。
想定される結果
ユーザーがゲーム アドオンまたは消費型アイテムにアクセスできることに気づける必要があります。さらに、ユーザーが DLC を使用しようとした場合、使用が許可されるか、またはインストールが完了するまで DLC を使用できないことがユーザーに通知される必要があります。
成功例
- ユーザーは、コンテンツにアクセスできることに気づくことができます。
- ユーザーがコンテンツを使用しようとした場合、タイトルがまだインストール中であることが通知されます。
失敗例
- コンテンツが表示されません。
- コンテンツは表示されますが、ユーザーがコンテンツを使用できない理由が表示されません。
XR-037: コンテンツ パッケージに対する依存性 *
ユーザーがベース ゲームのすべてのメイン機能またはシナリオを完了するために、追加コンテンツ (消耗品または非消耗品) の購入が必須であってはならない。 オプショナル コンテンツ パッケージは、その他のオプショナル コンテンツ パッケージに依存してはならない。 つまり、ユーザーが特定のコンテンツ パッケージを使用するために追加のコンテンツ パッケージのダウンロードを強制されてはならない。 アドオン コンテンツに関連付けられた一意のコンテンツを含むゲーム セーブは、引き続きベース ゲームに読み込むか、読み込むことができない理由を説明する明確なメッセージングを提供する必要があります。
037-01 ベース タイトルにコンテンツ パッケージとセーブ データへの依存性がない
テスト手順
- Xbox プロフィールにサインインして、タイトルを起動します。
- ベース タイトルのすべての機能とコンテンツへのアクセスを試みます。 ユーザーがどの追加コンテンツのダウンロードも要求されないことを確認します。
- タイトル内で使用できる利用可能なコンテンツ パッケージを 1 つダウンロードします。
- コンテンツ パッケージを読み込んで使用し、十分進んでから、コンテンツに基づくセーブ データを作成します。
- [Home (ホーム)] に戻ってコンテンツ パッケージを削除します。
- そのタイトルをもう一度起動します。
- セーブ データを正常に読み込めること、ゲームプレイを継続できること、または継続できない場合にはユーザーに対してその理由が明確に通知されることを確認します。
- メッセージングは明確でわかりやすく、この問題のトラブルシューティングに関する具体的な方法をユーザーに通知するものでなければなりません。
- 対応しているその他すべてのコンテンツ パッケージについて、手順 1 - 8 を繰り返します。
想定される結果
ユーザーは追加コンテンツを購入せずに、ベース タイトルのすべてのメイン機能やシナリオを完了できなければなりません。 ユーザーがコンテンツ パッケージを削除した後、タイトルは正常に機能するか、またはタイトルが正常に機能できない理由をユーザーに明確に通知しなければなりません。
成功例
- ユーザーは追加コンテンツを購入せずに、ベース タイトルに含まれているすべてのメイン機能やシナリオを完了できます。 ユーザーがコンテンツ パッケージを削除した後、タイトルのあらゆる操作が問題なくできます。
- コンテンツ パッケージによって提供される領域内にセーブを作成した後にコンテンツ パッケージを削除すると、ゲームはセーブ データを読み込むにはコンテンツ x をインストールする必要があることを示すメッセージをユーザーに明確に表示します。 タイトルは、クエリを実行してユーザーがそのコンテンツを利用する権限を持っているかどうかを確認することもできます。また、次のいずれかを実行します。
- 既に所有している場合には、特定のコンテンツのダウンロードをユーザーに求めるメッセージを表示します。
- 所有していない場合は、そのコンテンツの購入の可能性をユーザーに求めるメッセージを表示します。
失敗例
- ユーザーはベース タイトルに含まれているメイン機能やシナリオを完了するために、追加コンテンツを購入するように要求されます。 手順 3 でコンテンツ パッケージ 1 とコンテンツ パッケージ 2 をダウンロードした後にコンテンツ パッケージ 1 を削除すると、ゲーム内でコンテンツ パッケージ 2 を使用できなくなります。
- コンテンツのセーブ データの依存関係が存在し、コンテンツがインストールされていない場合、セーブ データを読み込むにはコンテンツをインストールする必要があることを示すメッセージはユーザーに明確に表示されません。
037-02 037-02 その他のコンテンツ パッケージに対する依存性がない
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- タイトルが対応している単一の追加コンテンツをダウンロードします。
- タイトル内でそのコンテンツの使用を試みます。
- 手順 3 のコンテンツを使用するために、ユーザーが追加コンテンツのダウンロードを要求されないことを確認します。
- タイトルを終了し、手順 3 のコンテンツを削除します。
- タイトルが対応しているコンテンツごとに、手順 2 - 6 を繰り返します。
想定される結果
ユーザーが特定のコンテンツ パッケージを使用するために追加のコンテンツ パッケージのダウンロードを強制されてはなりません。 コンテンツ パッケージは他に依存せずに使用できる必要があります。
成功例
- ユーザーが個別のコンテンツ パッケージを使用するために、追加コンテンツのダウンロードは強制されません。
失敗例
- ユーザーが個別のコンテンツ パッケージを使用するために、追加コンテンツのダウンロードが強制されます。
037-03 DLC 依存性
テスト手順
- Xbox プロフィールにサインインします。
- タイトル用のダウンロード コンテンツ (DLC) をダウンロードします。
- ゲームプレイを開始し、DLC を使用して進行状況を保存します。
- タイトルを終了します。
- 本体から DLC を削除します。
- タイトルを起動し、保存された進行状況へのアクセスを試みます。
想定される結果
DLC が既にアンインストールされた場合でも、その DLC を使用して作成されたセーブ データが円滑に処理されます。
成功例
- ユーザーが自分で保存した進行状況を読み込み、問題なくタイトルを操作できます。
- セーブ データにアクセスするには特定の DLC が必要であるというメッセージがユーザーに表示されます。
失敗例
- DLC が存在しないと、タイトルが使用できなくなります。
- ユーザーが保存された進行状況にアクセスできず、その理由もユーザーに通知されません。
037-04 マルチプレイヤー DLC
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 本体 A: マルチプレイヤー ゲームプレイで使用できるすべての利用可能なダウンロード コンテンツをダウンロードします。
- 本体 A: ダウンロード コンテンツ (レベル、キャラクター、自動車、コースなど) を使用して Xbox ゲーム セッションをホストします。
- 本体 B: 可能なすべての方法を使用して、本体 A で作成されたゲーム セッションへの参加を試みます。
- ゲーム セッションに参加できない場合は、参加できない理由を説明する通知、またはその理由を簡単に推測できる通知が明確に表示されることを確認します。
- すべてのゲーム モードで手順 3 - 6 を繰り返します。
- 本体 B をホストとして使用し、手順 3 - 6 を繰り返します。
想定される結果
マルチプレイヤー ゲームプレイに必要なダウンロード コンテンツに対応するタイトルは、ダウンロード コンテンツがインストールされていないユーザーに対して明確に通知する必要があります。
成功例
- プレイヤーが DLC 要件を必要とするセッションに参加しようとしたときに、プレイヤーがその要件を満たしていない場合、適切なメッセージがプレイヤーに表示され、問題の解決方法 (ダウンロード、再ダウンロードなど) に関する情報が提供されます。
- プレイヤーが DLC 要件を必要とするセッションに参加しようとしたときに、プレイヤーがその要件を満たしていない場合、アイコンなどの画面上の要素を通じてプレイヤーに明確に通知され、問題の解決方法 (ダウンロード、再ダウンロードなど) に関する情報が提供されるか、そうした情報を簡単に推測することができます。
- マルチプレイヤー マッチの DLC 要件を満たしているプレイヤーはセッションに参加してプレイすることができます。
失敗例
- マルチプレイヤー セッションの DLC 要件を満たしていないプレイヤーに、DLC 要件について視覚的に明確に通知されず、その解決方法が表示されません。
- マルチプレイヤー セッションの DLC 要件を満たしているプレイヤーが一緒に参加できません。
ゲーム内ストアおよび Microsoft Store からの購入
このカテゴリーの要件では、ゲーム内ストアおよび Microsoft Store から購入を行う方法を指定します。 価格、メタデータ、オファーのポリシーについては、「Xbox 発行元ガイド」を参照してください。
XR-036: タイトル内の価格情報 *
プロモーションまたはサブスクリプション ベースの割引など (ただし、これらに限定されない)、タイトル内で表示される現実世界の通貨価格は、Xbox カタログ価格から提供されたものでなければならない。
GDK を使用したゲーム コマースの詳細については、「コマース」を参照してください。
036-01 コンテンツ価格の検証
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 価格が表示されるタイトルのすべての画面にアクセスします。
- 表示された価格が Xbox カタログの価格と一致することを確認します。
- タイトルを終了し、サポート対象の次の配布地域について、言語、言語が話される地域、および国や地域のシステム設定を再構成します。
- サポート対象のすべての配布地域で、手順 1 - 4 を繰り返します。
想定される結果
タイトル内のコンテンツに対して表示される価格は Xbox カタログの同じコンテンツの価格と一致しなければなりません。
成功例
- タイトル内で表示される価格は、Xbox カタログの価格と一致しています。
失敗例
- タイトル内で表示される価格は、Xbox カタログの価格と異なります。
ユーザー プロフィール
このカテゴリの要件は、ゲームが Xbox ユーザー モデル、プロファイル、ユーザー データの保存とのやり取りを行う方法に適用されます。
XR-112 最初のアクティブ化と再開時のユーザーとコントローラーの設定 *
タイトルは、タイトル内でプライマリ ユーザーとして機能する 1 人または数人のアクティブ ユーザーを設定し、一時停止状態および制限モードから再開するときにユーザーを処理しなければならない。 タイトルは、GDK で簡易ユーザー モデルまたは高度なユーザー モデルのいずれかを使用してこれを実行します。
GDK の簡易ユーザー モデルのタイトル
GDK のシンプルなユーザー モデルは、タイトルに代わって既定のユーザー獲得を取り扱います。 ただし、コントローラーがユーザーに割り当てられていることを確認し、ユーザーがそのコントローラーをゲーム入力に使用することを確認する責任は引き続きタイトルにあります。 既定のユーザーにコントローラーが割り当てられていない場合、タイトルは XUserFindControllerForUserWithUiAsync を使用してシステム ダイアログを操作し、コントローラーを選択してプレイヤーからの入力を受け入れ始める必要があります。
GDK の高度なユーザー モデル、ERA、および UWP のマルチユーザー アプリケーション
最初のアクティブ化時に、ゲームでは、ゲームのデザインおよび設定に基づいて、タイトルを起動したユーザーを使用するか、またはユーザーに明示的にプロンプトを表示することによって初期ユーザーの決定方法を選択できます。
タイトルは、ユーザーのプロフィールで最初のプロフィール関連の操作 (進行や設定の保存など) が実行される前に、アクティブなユーザーを示す必要があります。
高度なユーザー モデルを使用するすべての Microsoft Game Development Kit (GDK) タイトル、ERA、および UWP のマルチユーザー アプリケーション (MUA) タイトルは、アクティブ ユーザーを変更するアカウント ピッカーへのエントリ ポイントを提供する必要があります。
一時停止から再開されたタイトルや制限モードから出たタイトルは、ユーザーとコントローラーのペアリングを確認し、前のユーザーのセッションを再開するか、または新しいユーザーを取得することで適切に対処する必要がある。
注意
次の表は、GDK のシンプルなユーザー モデル、GDK の高度なユーザー モデル、ERA および UWP マルチ ユーザー アプリケーションを使用している場合に、XR-112 のどのテスト ケースがタイトルに適用されるかを示します。
テスト ケース | GDK のシンプルなユーザー モデルに適用可能 | GDK の高度なユーザー モデル、ERA、および UWP MUA に適用可能 |
---|---|---|
112-02 起動直後のユーザーとコントローラー | いいえ | はい |
112-03 サインインしていないユーザーの確認 | いいえ | はい |
112-04 アクティブ ユーザーの表示 | はい | はい |
112-05 アカウント ピッカーへのアクセス | いいえ | はい |
112-06 プロフィール切り替えの処理 | いいえ | はい |
112-07 制限モードに入っている状態でのユーザー変更 | いいえ | はい |
112-08 一時停止状態でのユーザー変更 | いいえ | はい |
112-02 起動直後のユーザーとコントローラー
テスト手順
- プロフィール A にサインインして、タイトルを起動します。
- アクティブなユーザーがタイトルを制御できることを確認します。
- サインインしていないユーザーのプロフィールで手順 1 を繰り返し、アクティブなユーザーを確立するよう求めるタイトル プロンプトを確認します。
- アクティブなユーザーを確立し、ユーザーがタイトルを制御できることを確認します。
想定される結果
タイトルは、アクティブなユーザーをタイトルを起動したコントローラー/ユーザーの組み合わせに設定するか、エンゲージ プロンプトを表示してコントローラーとユーザーを識別するか、またはサインインするためのアカウント ピッカーを表示する必要があります。
成功例
- タイトルが、アクティブなユーザーをタイトルを起動したコントローラー/ユーザーの組み合わせに設定する。
- タイトルは、エンゲージ プロンプトを表示してコントローラーとユーザーを識別する。
- タイトルは、サインインするためのアカウント ピッカーを表示します。
失敗例
- タイトルで、ユーザーが最初に使用したコントローラーを使用してタイトルを制御できない。
- ユーザーがサインインしていないときに、タイトルがアクティブなユーザーを確立するようユーザーに求めるプロンプトを表示しない。
112-03 サインインしていないユーザーの確認
テスト手順
- ユーザーがサインインしていないことを確認します。
- タイトルを起動し、ユーザー データの保存に対応しているすべてのモードに入ります。
- データの消失が発生する前に、各モードでサインインする機会がプレイヤーに提供されることを確認します。
- サインインする機会をキャンセルし、進行状況が保存されないことを示す警告が表示されることを確認します。
想定される結果
通常であればユーザー データやゲームの状態が保存されるモードにある場合、サインインする機会がユーザーに提供されなければなりません。 ユーザーがサインインしないでゲームプレイを続行した場合は、進行状況が保存されないことがユーザーに通知されなければなりません。
成功例
- 通常であればユーザー データやゲームの状態が保存されるタイトル モードにアクセスすると、サインインしていないプレイヤーにサインインを求めるメッセージが表示されます。
- ユーザーがサインインしないでモードを続行した場合は、進行状況が保存されないことがユーザーに通知されます。
失敗例
- 通常であればユーザー データやゲームの状態が保存されるモードで、プレイヤーがサインインしないでそのモードを続けても、進行状況が保存されないことがプレイヤーに通知されません。
- 既にプレイの状態が失われた後に、進行状況を保存できないことがプレイヤーに通知される。
112-04 アクティブ ユーザーの表示
テスト手順
- 以前にタイトルを表示したことがなく、セーブ データが関連付けられていないプロフィールにサインインします。
- タイトルを起動します。
- プロフィール関連の操作を実行する前に、タイトルが UI 内でアクティブ ユーザーを特定できることを確認します。 "プロフィール関連の操作" の例には、ユーザーのセーブ データや設定の変更、ユーザーのプロフィールへのデータの保存、実績の付与、ユーザーの統計情報の書き込みなど、ローカルまたはクラウドでユーザー データやユーザーの状態を使用または操作するあらゆる操作が含まれます。
- セーブ データを保存します。
- タイトルを再起動し、プロフィール関連の操作を実行する前に、タイトルが UI 内でアクティブ ユーザーを特定できることを確認します。
- Xbox ネットワークとの接続を解除します。
- タイトルを再起動し、プロフィール関連の操作を実行する前に、タイトルが UI 内でアクティブ ユーザーを特定できることを確認します。
想定される結果
最初のプロフィール関連の操作を実行する前に、タイトルに現在のユーザー コンテキストが表示されなければなりません。
成功例
- プロフィール関連の操作を実行する前に、ユーザーのゲーマータグまたはゲーマーアイコン (あるいはその両方) がタイトル内に表示される。
- ユーザー プロフィールを使用しないタイトルでは、アクティブ ユーザーが表示されない。
- 複数のユーザーに対応しているゲーム モードでは、タイトルに複数のアクティブ ユーザーが表示されます。
失敗例
- プロフィール関連の操作を実行する前に、タイトルのアクティブ ユーザーが表示されません。
112-05 アカウント ピッカーへのアクセス
テスト手順
- プロフィールにサインインして、タイトルを起動します。
- アクティブ ユーザーがタイトルのアカウント ピッカーにアクセスして、別のプロフィールを選択できることを確認します。
想定される結果
タイトルは、アクティブ ユーザーを変更するために、ユーザーがタイトルのアカウント ピッカーにアクセスできるようにする必要があります。
成功例
- ユーザーがタイトルのアカウント ピッカーにアクセスできる。
失敗例
- ユーザーがタイトルのアカウント ピッカーにアクセスできない。
112-06 プロフィール切り替えの処理
テスト手順
- プロフィールにサインインして、タイトルを起動します。
- アカウント ピッカーにアクセスして別のプロフィールを選択します。
- タイトルが適切に対応し、アクティブ ユーザーのコンテキストが新しいプロフィールに切り替わったことを確認します。
- タイトル内のアカウント ピッカーにアクセスできるすべての場所で、手順 1 - 4 を繰り返します。
想定される結果
タイトルは、ユーザーが別のユーザーのコンテキストにシームレスに切り替えられるようにする必要があります。
成功例
- タイトルは、アクティブ ユーザーの変更によってデータが失われる可能性があることをユーザーに通知し、アカウント ピッカーにアクセスする前にユーザーに確認を求めます。
- タイトルが新しいアクティブ ユーザーのコンテキストに適切に更新されます。
失敗例
- タイトルが新しいアクティブ ユーザーのコンテキストに適切に更新されません。
112-07 制限モードに入っている状態でのユーザー変更
環境設定:
GDK の xbapp list
を使用して、タイトルのアプリケーション パッケージのフルネーム (PFN) を返します。
テスト手順
- プロフィール A にサインインして、タイトルを起動します。
- タイトル内のさまざまな場所で、Xbox ボタンを押して [ホーム] を選択してタイトルを制限モードにします。
-
running xbapp query [PFN]
で、タイトルが制限状態になったことを確認します。 - タイトルが制限モードに入っている間に、プロフィール A からサインアウトして、プロフィール B にサインインします。
- [Home (ホーム)] からタイルを選択してタイトルを再開します。
- タイトルが新しいアクティブ ユーザーに適切に対応していることを確認します。
想定される結果
制限モードから再開されたタイトルは、サインインしていたすべてのユーザーがまだ本体にサインインしているかどうかを確認しなければなりません。
成功例
- アプリケーションでは、再開したときにアクティブ ユーザーのコンテキストがプロフィール B に自動的に切り替わります。
- ゲームでは、タイトルからプロフィール A が自動的に削除されるか、新しいユーザーが再設定されて新しいユーザーの状態がゲームプレイに使用される。
失敗例
- アクティブ ユーザーのコンテキストからプロフィール A が削除されません。
- 新しいプロフィールが選択された後も引き続きプロフィール A の状態がゲームプレイに使用される。
112-08 一時停止状態でのユーザー変更
環境設定:
GDK の xbapp list
を使用して、タイトルのアプリケーション パッケージのフルネーム (PFN) を返します。
テスト手順
- プロフィール A にサインインして、タイトルを起動します。
- タイトル内のさまざまな場所で、
xbapp suspend [PFN]
を使用してタイトルを一時停止します。 - タイトルが完全に一時停止し、一時停止によってすべての HTTP 要求が中断されるまで、少なくとも 30 秒待ちます。
-
xbapp query [PFN]
を実行して、タイトルが一時停止状態になったことを確認します。 - タイトルが一時停止している間に、プロフィール A からサインアウトして、プロフィール B にサインインします。
- [Home (ホーム)] からタイルを選択してタイトルを再開します。
- タイトルが新しいアクティブ ユーザーに適切に対応していることを確認します。
- 新しいアクティブ ユーザーでゲームプレイに入り、ユーザーがゲームを進行できることを確認します。
想定される結果
一時停止から再開されたタイトルは、サインインしていたすべてのユーザーがまだ本体にサインインしているかどうかを確認しなければなりません。
成功例
- アプリケーションでは、再開したときにアクティブ ユーザーのコンテキストがプロフィール B に自動的に切り替わります。
- ゲームでは、タイトルからプロフィール A が自動的に削除されるか、新しいユーザーが再設定されて新しいユーザーの状態がゲームプレイに使用される。
失敗例
- アクティブ ユーザーのコンテキストからプロフィール A が削除されません。
- 新しいプロフィールが選択された後も引き続きプロフィール A の状態がゲームプレイに使用されます。
XR-115: ゲームプレイ中のユーザーの追加と削除またはコントローラーの追加と取り外し *
複数のユーザーをサポートするタイトルは、次のように、ユーザーの追加と削除、またはゲームプレイ中にアクティブ プレイヤーにコントローラーが割り当てられていないか、コントローラーを損失したシナリオに対応する必要があります。
コントローラーの追加:
タイトルが、初期ユーザーとコントローラーを選択または提供した場合、タイトルは必要に応じて他のコントローラーからの入力を受け付けることができます。 マルチプレイヤー エクスペリエンスをサポートするタイトルは、追加のプレイヤーまたはコントローラーがゲーム プレイに追加される方法、および XUserAddAsync
を使用してユーザーにバインドされる方法を考慮する必要がある。 たとえば、'A ボタンを押して参加する' またはコントローラーのシルエットをプレイヤー選択画面に表示します。
コントローラーの削除:
ゲームプレイを主導しているプレイヤーのコントローラーがゲームプレイ中に削除された場合、タイトルは新規にアクティブになったコントローラーの再設定を許可する必要があります (たとえば、有効なコントローラーを使用しているアクティブ ユーザー用に "A ボタンを押して続行する" を表示するか、ERA で ControllerPairingChanged
を受け取るか、GDK で XUserDeviceAssociationChangedCallback
イベントを受け取ります)。 タイトルは、XUserFindControllerForUserWithUiAsync
を使用してシステム UX を呼び出して、コントローラーとペアリングし、ゲームプレイに戻るようユーザーに求めることもできます。
ユーザーの追加:
ERA または UWP を使用して新しいユーザーがサインインした場合、タイトルがマルチユーザー エクスペリエンスをサポートしていれば、そのユーザーをタイトルに追加できます。ただし、アクティブ ユーザーを新しいユーザーに自動的に切り替えたり、新しくサインインしたユーザーのイベントに基づいてアクティブ ユーザーのエクスペリエンスを中断したりすることはできません。
GDK (簡易ユーザー モデルまたは高度なユーザー モデルを使用して) を使用している場合、タイトルが XUserAddAsync
を呼び出す場合にのみ、ユーザーが追加されます。
プライマリ ユーザーの削除:
ERA または GDK の高度なユーザー モデルを使用するタイトルでは、プライマリ ユーザーが (ガイド、SPOP、その他の方法で) サインアウトした場合、タイトルはそのプレイヤーをゲームから削除するか、ユーザーとアクティブなコントローラーを再設定する必要があります。
GDK の簡易ユーザー モデルを使用しているタイトルの場合、プライマリ プレイヤーが削除されると、タイトルはシステム レベルで中断されます。
すべてのシナリオで、タイトルはゲームを正常な状態にして、削除/終了を処理します。 これには、Connected Storageへの書き込み、ユーザーが離れた関連する MPSD セッションへの通知、適切なサインインする場所へのユーザーの誘導 (新しいユーザーが追加されていない場合) が含まれる。
追加/セカンダリ ユーザーの削除:
タイトルは、通常はプレイヤーをゲーム プレイから直ちに削除したり、マルチプレイヤー エクスペリエンスのコンテキストで再び参加するよう求めたりして、自分の判断でこのイベントを処理できます。
注意
次の表は、GDK の簡易ユーザー モデル、GDK の高度なユーザー モデル、ERA および UWP マルチ ユーザー アプリケーションを使用している場合に、XR-115 のどのテスト ケースがタイトルに適用されるかを示します。
テスト ケース | GDK のシンプルなユーザー モデルに適用可能 | GDK の高度なユーザー モデル、ERA、および UWP MUA に適用可能 |
---|---|---|
115-01 ユーザーの追加 | いいえ | はい |
115-02 コントローラーの取り外し | はい | はい |
115-03 ユーザーの削除 | いいえ | はい |
115-01 ユーザーの追加は、ERA および UWP マルチ ユーザー アプリケーションにのみ適用されます。 GDK で、タイトルには意図的に追加されたユーザーだけが表示されます。 シェルを介して追加されたユーザーはタイトルには表示されません。
115-01 ユーザーの追加
テスト手順
- プロフィール A にサインインし、他のプロフィールにサインインしていないことを確認します。
- タイトルを起動し、ゲームプレイを開始します。
- タイトルの使用中にさまざまなポイントで、2 つ目のコントローラーを接続してプロフィール B にサインインします。
- プロフィール B がコントローラーを使用してタイトルへの入力を試みます。
想定される結果
ERA または UWP MUA のタイトルは、アクティブ ユーザー エクスペリエンスを自動的に中断することはできません。
成功例
- アクティブ ユーザーが新しいユーザーに自動的に切り替わらず、アクティブ ユーザーのゲームも中断されません。
- 現在のコンテキストに応じてプロフィール B がゲームをコントロールすることを選択できます。
失敗例
- コンテキストが直ちに切り替わり、プロフィール B がアクティブ ユーザーになります。
115-02 コントローラーの取り外し
テスト手順
- プロフィールにサインインして、タイトルを起動します。
- タイトルの使用中のさまざまなポイントで、コントローラーからバッテリーを取り出します。
- コントローラー内のバッテリーを交換し、ユーザーがタイトルを引き続き使用できることを確認します。
- 手順 1 - 3 を繰り返しますが、今度はバッテリーを交換せずに 2 台目のコントローラーを接続します。
想定される結果
タイトルは、コントローラーの追加と取り外しに正しく対応する必要があります。
成功例
- アクティブ ユーザーは、コントローラーを追加または取り外した後にタイトルを続行できます。
- ユーザーは、新しいアクティブなコントローラーを再設定するよう求められます (たとえば、"A ボタンを押して続行する" を表示するか、システム UX を起動する)。
失敗例
- ユーザーは、コントローラーを取り外した後にタイトルを続行できません。
115-03 ユーザーの削除
テスト手順
- プロフィール A にサインインし、他のプロフィールにサインインしていないことを確認します。
- タイトルを起動し、ゲームプレイを開始します。
- タイトルの使用中にさまざまなポイントで、プロフィール A からサインアウトします。
- タイトルがアカウント ピッカーを呼び出すか、またはユーザーをフロントエンドに戻すことを確認します。
- 可能な場合は、次の方法でタイトルを操作します。
- プロフィール A にサインインし、タイトルがユーザーのエクスペリエンスを中断しないことを確認します。
- プロフィール B にサインインし、タイトルが新しいユーザーのコンテキストに更新されることを確認します。
想定される結果
タイトルはそのプレイヤーをゲームから削除するか、ユーザーとアクティブなコントローラーを再設定する必要がある。 プレイヤーがゲームから削除された場合、タイトルは正常な状態が保たれる必要がある。 これには、Connected Storageへの書き込み、ユーザーが離れた関連する MPSD セッションへの通知、適切なサインインする場所へのユーザーの誘導 (新しいユーザーが追加されていない場合) が含まれる。
成功例
- タイトルはゲームからプレイヤーを削除し、フロントエンドに戻ります。
- ユーザーは新しいユーザーを再確立し、関連するユーザー コンテキストに適切に更新することができます。
失敗例
- タイトルがユーザーの状態の変更に対応できません。
- 新しいプロフィールが選択された後も引き続きプロフィール A のユーザーの状態がタイトルで使用されます。
XR-045: Xbox ネットワークとアカウント特権 *
Xbox ネットワークは、ユーザーおよびその子供に期待されるレベルのプライバシーとオンラインの安全性をユーザーに提供する。 これを実現するため、タイトルは、Xbox ネットワーク サービス内またはタイトル内の体験に関して特定の操作を完了するための権限を、Xbox ネットワーク サービスで確認しなければならない。
特権の確認と遵守はすべてのアカウントに適用されますが、特にお子様のアカウントのエクスペリエンスと期待に注意することが重要です。 お子様のアカウントの場合、年齢に応じた初期設定や、お子様の家族管理者 (保護者の方) による構成により、特定のアクティビティの制限がブロックされる場合があります。 お子様は自分で構成を変更することはできませんが、特定のアクティビティでは、タイトルが必要なシステム UI を呼び出し、その関連アクティビティの承認フローを介して、幼いプレイヤーが例外を要求できるようにすることが期待されています。 このような状況では、たとえば幼いプレイヤーはグローバルにマルチプレイをブロックされる可能性がありますが、家族の保護者がシステム UI を介して特定のタイトルのマルチプレイを承認することで、お子様はその特定のタイトルのこのゲームモードにアクセスできるようになりますし、そうする必要があります。
操作 | ID | 権限名 | 注意 |
---|---|---|---|
マルチプレイヤー ゲーム セッションでのプレイ | 254 | XPRIVILEGE_MULTIPLAYER_SESSIONS |
次のようなシナリオでユーザーが (ボットでない)実際のユーザーとのマルチプレイヤー ゲームプレイ セッションにオンラインで参加することを許可します。同じセッションに同時参加するプレイヤー対プレイヤーのゲームプレイ、非同期のターン (順番) 制のゲームプレイ、チーム ベースのゲームプレイ、ユーザーが開始したマッチメイキング、招待の送信または承諾、途中参加セッション。 この特権は、同じデバイスで実行されるローカル マルチプレイヤー ゲームには関係しないことに注意してください。 |
クロス ネットワーク ゲーム プレイ セッションでプレイする | 185 | AuthPrivileges.CrossNetworkPlay |
同じセッションに同時参加するプレイヤー対プレイヤーのゲームプレイ、非同期のターン制のゲームプレイ、チーム ベースのゲームプレイ、ユーザーが開始したマッチメイキング、招待の送信または承諾、途中参加セッションなどのシナリオで、ユーザーが Xbox ネットワークにサインインしていない他の実際のプレイヤーとのゲームプレイ セッションに参加することを許可します。 |
あらゆるユーザーとのコミュニケーション | 252 | XPRIVILEGE_COMMUNICATIONS |
ユーザーが他の Xbox ネットワーク ユーザーと音声またはテキストで通信することを許可します。 |
共有ゲーミング セッション | 189 | XPRIVILEGE_SESSIONS |
ユーザーは、共有環境での接続された 1 人プレイ モードや、無料プレイと有料プレイでのマルチプレイヤーのハイブリッド タイトルのシナリオに参加することができ、この権限を使って、これらのエクスペリエンスを Xbox 本体でゲートすることができます。 1 人プレイ環境には、権限 252 または 254 でカバーされる機能 (それぞれ、コミュニケーションとマルチプレイヤー) が含まれてはなりません。 この権限の使用は、プラットフォームの承認が必要なタイトルの機能です。 |
ユーザー作成コンテンツ (UGC) | 247 | XPRIVILEGE_USER_CREATED_CONTENT |
ユーザーが他のユーザーの UGC をオンラインで表示すること、他のユーザーの UGC をダウンロードすること、自分の UGC をオンラインで共有することを許可します。 これは、以前にダウンロードした UGC の使用方法を制限しません。 |
ソーシャル ネットワークとの共有 | 220 | XPRIVILEGE_SOCIAL_NETWORK_SHARING |
Xbox ネットワーク 本体のみ: ユーザーが Xbox ネットワークの外部で、ゲームの進行状況、Kinect で生成されたコンテンツ、ゲーム クリップなどの情報を共有することを許可します。 |
プレイ無料のタイトル、体験版、またはベータ版では、Game Pass サブスクライバーではないプレイヤーに対してマルチプレイヤー ゲームプレイ (ID 254) を許可するように構成できます。 これはサービス側の構成によって行われるため、開始するには Microsoft の担当者にお問い合わせください。 これらのタイトルは、保護者による制限とプレイヤーの選択を尊重するため、引き続きマルチプレイヤー ゲームの特権を確認する必要があります。
045-01 ユーザー権限の尊重
テスト手順
- Xbox プロフィールにサインインして、タイトルを起動します。
- XR の「備考」で示した権限ごとに、タイトルがその権限に関連付けられている操作に対応しているかどうかを確認します。
- 手順 2 で示した該当する各権限の指定可能な設定ごとに、以下の操作を実行します。
- タイトルを終了し、その権限に関するユーザーの設定を変更します。
- 本体を再起動します。
- 同じプロフィールにサインインして、タイトルを起動します。
- タイトルのすべての関連エリアにアクセスし、その権限に関連するすべてのタイトル機能を使用して、タイトルがユーザーの現在の権限設定を反映していることを確認します。
- Silver Xbox プロファイルを使用して、すべてのオフライン エリアとオンライン エリアにアクセスしてみます。
想定される結果
タイトルは、ユーザーの権限に関する設定を正しく反映しなければなりません。
成功例
- タイトルは、ユーザーの権限に関する設定を反映しています。
- 部分的に許可される権限設定は、その権限が無効になっている/許可されていないものとして扱われます (たとえば、ユーザー作成コンテンツ (UGC) の権限が「フレンドのみ」に設定されている場合、タイトルはその権限が「制限」に設定されているものとして動作します)。
- XDK を使用してるタイトルでは、システム UI を呼び出して権限の競合をユーザーに警告します (タイトルでは
Store::Product::CheckPrivilegeAsync
API を使用する必要があります)。 システム UI を呼び出せない場合 (特権 252、189、247) は、情報メッセージを表示して、参加できないことをユーザーに知らせます。 - GDK を使用してるタイトルでは、システム UI を呼び出して権限の競合をユーザーに警告します (タイトルでは
XUserCheckPrivilege
とXUserResolvePrivilegeWithUiAsync
API を使用する必要があります)。 システム UI を呼び出せない場合 (特権 252、189、247) は、情報メッセージを表示して、参加できないことをユーザーに知らせます。 - XSAPI を使用するタイトルでは、情報メッセージを表示して、参加できないことをユーザーに知らせます。
失敗例
- ユーザーの権限に関する設定が永続化されていて、権限を変更した後にそれがユーザーの実際の権限に反映されません。
- 部分的に許可される権限設定は、その権限が最も制約の少ない設定になっているものとして扱われます (たとえば、ユーザー作成コンテンツ (UGC) の権限が「フレンドのみ」に設定されている場合、タイトルはその権限が「許可」に設定されているものとして動作します)。
- XDK または GDK を使用するタイトルで、ゲーム内メッセージングを使用して権限の競合をユーザーに警告し、システム UI を表示しません。
- XSAPI を使用するタイトルで、参加できないことをユーザーに知らせる情報メッセージを表示しません。
045-02 ユーザー権限の尊重 - Xbox Family
セットアップと構成のテスト
- 以下の Microsoft アカウントを含む Xbox ファミリ。
- オーガナイザーとして指定されている大人 (19 歳以上)。
- 次の子供向けの権限設定を持つ子供 (13 歳未満)。
操作 | 12 歳以下向け初期設定特権の設定 |
---|---|
オンライン マルチプレイヤー ゲームへ参加できます | Block |
クロスネットワーク プレイに参加できます | Block |
音声、テキスト、または招待状で通信できます | Friends |
Xbox ネットワーク以外で音声やテキストによるコミュニケーションを取ることができます。 | Block |
コミュニティの作品を確認してアップロードできます | Block |
Xbox 以外で共有できます | Block |
参照とリンク
テスト手順
- 大人用とお子様用の Microsoft アカウントにサインインし、お子様のアカウントでタイトルを起動します。
- XR の「備考」で示した権限ごとに、タイトルがその権限に関連付けられている操作に対応しているかどうかを確認します。
- 手順 2 で示した該当する各権限の指定可能な設定ごとに、以下の操作を実行します。
- 関連するアクティビティが、アカウント権限に基づいて許可されているか許可されていないかを確認します。 例: マルチプレイヤーをサポートしているタイトルで、お子様のアカウントでマルチプレイヤー権限がブロックされている場合。 タイトルでお子様のすべてのマルチプレイヤー アクティビティがブロックされ、お子様がマルチプレイヤー アクティビティに参加しようとしたときに保護者の許可プロンプト (システム TCUI) が表示されることを確認します。
- タイトルを終了し、タイトルでサポートされている特権アクティビティのユーザーのお子様の特権設定をブロックから許可に変更します。 例: マルチプレイヤーやユーザー生成コンテンツをブロックから許可に変更します。
- 本体を再起動します。
- 同じプロフィールにサインインして、タイトルを起動します。
- タイトルのすべての関連エリアにアクセスし、その権限に関連するすべてのタイトル機能を使用して、タイトルがユーザーの現在の権限設定を反映していることを確認します。 例: タイトルがマルチプレイヤーをサポートしています。 お子様はブロックされていましたが、今はマルチプレイヤーが許可されています。 タイトルで、お子様がマルチプレイヤー ゲーム モードにアクセスすることが適切に許可されています。
- コンソールにログイン していない 親アカウントで手順 2 - 3 を繰り返します。
想定される結果
タイトルは、すべての Xbox ファミリー メンバーの権限設定を尊重する必要があります。
成功例
- タイトルは、お子様の権限に関する設定を尊重しています。
- タイトルは、そのアクティビティに対する特権が許可されている場合に、お子様がアクティビティに参加することを許可します。
- タイトルは、そのアクティビティに対する特権がブロックされている場合に、お子様がアクティビティに参加することを許可しません。
- タイトルは、そのアクティビティのアクセス許可が保護者によって (保護者の許可 UI 経由で) 許可された後に、ブロックされているアクティビティにお子様が参加することを許可します。
- タイトルは、ブロックされているアクティビティにお子様が参加することを許可せず、そのアクティビティのアクセス許可は保護者によって (保護者の許可 UI 経由で) 許可されていません。
- 部分的に許可される権限設定は、その権限が無効になっている/許可されていないものとして扱われます (たとえば、ユーザー作成コンテンツ (UGC) の権限が「フレンドのみ」に設定されている場合、タイトルはその権限が「制限」に設定されているものとして動作します)。
- XDK を使用してるタイトルでは、システム UI を呼び出して権限の競合をユーザーに警告します (タイトルでは
Store::Product::CheckPrivilegeAsync
API を使用する必要があります)。 システム UI を呼び出せない場合 (特権 252、189、247) は、情報メッセージを表示して、参加できないことをユーザーに知らせます。 - GDK を使用してるタイトルでは、システム UI を呼び出して権限の競合をユーザーに警告します (タイトルでは XUserCheckPrivilege と
XUserResolvePrivilegeWithUiAsync
API を使用する必要があります)。 システム UI を呼び出せない場合 (特権 252、189、247) は、情報メッセージを表示して、参加できないことをユーザーに知らせます。 - XSAPI を使用するタイトルでは、情報メッセージを表示して、参加できないことをユーザーに知らせます。
失敗例
- タイトルは、お子様の権限に関する設定を尊重していません。
- 例: このタイトルはマルチプレイヤーをサポートしており、マルチプレイヤーをブロックされたお子様がマルチプレイヤー ゲーム モードにアクセスすることを許可します。
- タイトルは、お子様に特権の競合に関する警告や通知のための適切な UI を呼び出しません。
- 例: タイトルはマルチプレイヤーをサポートしているが、特権がブロックされている場合に、お子様が保護者の許可を求めるプロンプトが表示されません。
- タイトルは、そのアクティビティに対する特権がブロックされている場合に、お子様がアクティビティに参加することを許可します。
- タイトルは、そのアクティビティに対する特権が許可されている場合に、お子様がアクティビティに参加することを許可しません。
- タイトルは、ブロックされているアクティビティにお子様が参加することを許可し、そのアクティビティのアクセス許可は保護者によって (保護者の許可 UI 経由で) 許可されていません。
- タイトルは、ブロックされているアクティビティにお子様が参加することを許可せず、そのアクティビティのアクセス許可は保護者によって (保護者の許可 UI 経由で) 許可されています。
- ユーザーの権限に関する設定が永続化されていて、権限を変更した後にそれがユーザーの実際の権限に反映されません。
- 例: タイトルがマルチプレイヤーをサポートしています。 お子様のアカウントはマルチプレイヤーがブロックされていますが、システム UI を通じて保護者から許可されています。 権限が付与されているにもかかわらず、タイトルがマルチプレイヤーをブロックし続けています。
- タイトルは、権限が最も制限の緩い設定に指定されているかのように、部分的に許可される権限設定を処理します。 例: ユーザー作成コンテンツ (UGC) 権限が [フレンドのみ] に設定されている場合、タイトルは権限が [許可] に設定されているかのように動作します。
- XDK を使用してるタイトルでは、権限の競合をユーザーに警告するためにシステム UI を呼び出すことはありません (タイトルでは
Store::Product::CheckPrivilegeAsync
API を使用する必要があります)。 システム UI を呼び出せない場合 (特権 252、189、247) は、参加できないことをユーザーに知らせる情報メッセージを表示しません。 - GDK を使用してるタイトルでは、権限の競合をユーザーに警告すためにシステム UI を呼び出すことはありません (タイトルでは
XUserCheckPrivilege
とXUserResolvePrivilegeWithUiAsync
API を使用する必要があります)。 システム UI を呼び出せない場合 (特権 252、189、247) は、参加できないことをユーザーに知らせる情報メッセージを表示しません。 - XSAPI を使用するタイトルで、参加できないことをユーザーに知らせる情報メッセージを表示しません。
XR-046: 表示名とゲーマーアイコン *
Xbox 本体では、タイトルでゲーマータグをプライマリ表示名として使用する必要があります。
デザインの選択に基づいて、タイトルはプレイヤーのモダン ゲーマータグとクラシック ゲーマータグのどちらかを選択できます。 モダン ゲーマータグは GDK で使用でき、クラシック ゲーマータグは ERA と GDK の両方で使用できます。
本体以外のプラットフォームでは、必須ではありませんが、ゲーム タイトルのエクスペリエンス内の適切な場所で Xbox ネットワーク プレイヤーのゲーマータグを使用することをお勧めします。
ゲーマータグは、使用するゲーマータグの種類に基づいてタイトルに正しく表示する必要があります。
モダン ゲーマータグ
一意のモダン ゲーマータグの 16 文字をすべて表示します。これには、12 文字までのモダン ゲーマータグと、その後に続く # およびサフィックス番号 (存在する場合) が含まれます。 例: Major Nelson (サフィックスが存在しない) または Major Nelson#881。 モダン ゲーマータグが使用されている場合、モダン ゲーマータグで使用できるすべての Unicode 文字範囲がサポートされている必要があります。 最新のゲーマータグ情報とベスト プラクティスについては、GDK 開発ドキュメントの記事「モダン ゲーマータグの概要」を参照してください。
従来のゲーマータグ
従来のゲーマータグの 15 文字をすべて正確に表示します。 従来のゲーマータグには ASCII 文字の a ~ z、A ~ Z、0 ~ 9、コンマ (,)、スペース (ASCII 文字 0x20) のみを含めることができます。 例: Major Nelson
GDK では、これらの項目は XUserGetGamertag API を使用して返されます。 ERA では、GetUserProfileAsync
API を使用してゲーマータグを取得します。
046-01 表示名と表示ゲーマーアイコン
必要なツール
- GDK からの XblTestAccountGui.exe
準備
次のそれぞれの名前に対して 4 つのテスト アカウントを作成し、XblTestAccountGui.exe を使用して各テスト アカウントのゲーマータグを次のように変更します。
- สฐ众нь컴퓨
- आथाώঙぁヺ
- øÜêþЯЂў
- gttest1
テスト手順
- タイトル内でゲーマータグが表示される場所を探して表示します。
- 手順 [1] で識別されたすべての領域にユーザーのゲーマータグがどのように表示されるかを確認します。
- タイトルにユーザーの画像が表示されている場合は、各アカウントの正しい Microsoft アカウント画像またはゲーマー画像が表示されていることを確認します。
想定される結果
ユーザーのゲーマータグが正しく表示される必要があります。
成功例
- モダン ゲーマータグを使用すると、ゲーマータグによって Unicode 文字 (自動生成のサフィックスを含む) が正しく表示されます。
- クラシック ゲーマータグを使用すると、ゲーマータグが正しく表示されます。
失敗例
- Unicode 文字は空白文字として表示されるため、ゲーマータグはまったくレンダリングされません。
- 従来のゲーマータグを使用すると、ゲーマータグが正しく表示されません。
XR-047: ユーザー プロフィールへのアクセス *
タイトルでは、他の Xbox ネットワーク ユーザーの表示名が列挙される場合には必ずそれらのユーザーのゲーマーカードにアクセスできるようにする必要があります。
047-01 ユーザー プロフィールへのアクセス
テスト手順
- デバイス 1 および 2: タイトルを起動します。
- デバイス 1 と 2: Xbox プロフィールにサインインします。
- デバイス 1: Xbox マルチプレイヤー ゲーム セッションを設定します。
- デバイス 2: 本体 1 で作成したゲーム セッションを見つけて参加します。
- デバイス 2 がゲーム セッションに参加した後、次を確認します。
- セッション前のロビー内で、別の Xbox ユーザーのゲーマータグを選択して、そのユーザーのゲーマーカードにアクセスします。
- ゲームプレイ中に、別の Xbox ユーザーのゲーマータグを選択して、そのユーザーのゲーマーカードにアクセスします。 (この操作ができるかどうかはタイトルによって異なります)。
- ゲーム終了後の統計画面で、別の Xbox ユーザーのゲーマータグを選択して、そのユーザーのゲーマーカードにアクセスします。
- ランキング画面で、別の Xbox ユーザーのゲーマータグを選択して、そのユーザーのゲーマーカードにアクセスします。
- ゲーマータグが一覧表示される他のエリアをすべて探し、別の Xbox ユーザーのゲーマータグを選択して、そのユーザーのゲーマーカードにアクセスします。
想定される結果
ユーザーは他の Xbox ユーザーのゲーマーカード情報を表示できる必要があります。
成功例
- ゲーマータグが表示され、UI ナビゲーションが利用可能なすべての画面で、ユーザーは別の Xbox ユーザーのゲーマーカードにアクセスできます。
失敗例
- ゲーマータグが表示され、UI ナビゲーションが利用可能な画面では、ユーザーは別の Xbox ユーザーのゲーマーカードにアクセスできません。
XR-048: プロフィール設定の使用 *
Xbox ネットワークは、Xbox ユーザー プロファイル情報の真実のソースです。 これをサポートするために、タイトルは、ネットワーク切断のシナリオをサポートすることを目的としたローカルに保存されたキャッシュを超えて、Xbox ネットワークから提供されたユーザーの情報 (プロファイル データ、基本設定、ゲーマータグなど) を格納してはなりません。 オフライン キャッシュは、サービスへの次に使用可能な接続時に更新する必要があります。
048-01 プロフィール設定の使用
環境設定
- 2 Xbox デバイス
テスト手順
- プロフィールを選択し、セーブ データを保存します。
- ユーザーのプロフィール データを変更します。たとえば、ゲーマータグやアカウント名を更新します。
- タイトルを起動し、手順 [2] で作成したセーブ データを読み込みます。
- ゲームプレイ中に表示されるユーザー プロフィール データが変更されたこと、およびユーザー プロフィール データがセーブ データに保存されていないことを確認します。
- (タイトルによって自動的に作成された) ゲーマータグへの参照がすべて更新されていることを確認します。 これには、タイトル内の参照に加えて、サーバーでホストされる機能上での参照も含まれます。
- 2 台目のデバイスでタイトルを起動し、更新されたゲーマータグが正しく表示されていることを確認します。
想定される結果
ユーザー プロフィール データは保存されてはなりません。 たとえば、タイトルがゲーム内 (ウェルカム メッセージなど) や Xbox 以外のサーバー (アップロードされたデータの名前付けなど) でゲーマータグを使用する場合、ユーザーがゲーマータグを変更した場合は保持しないでください。 ユーザーがゲーマータグを手動で入力した場合、これは適用されません。
成功例
- ユーザー プロフィール データや初期設定は、変更された後、すべての表示箇所で更新されます。
失敗例
- 更新されたユーザーのゲーマータグや Microsoft アカウント名がタイトル内で表示されないか、リプレイ、セーブ、オプション、マップ、チームなどローカルに保存されているセーブ データに関して Xbox ホーム上に表示されません。
- 「ゲームクリップ」、「リプレイ」、「ランキング」のような永続的な投稿、あるいはメッセージ、掲示板の投稿、ユーザーのチャレンジ、コスチューム、テーマ、カスタム ペイント、トーナメント、リーグなどのその他のカスタム投稿上で、ユーザーのゲーマータグが更新されません。 注: これは新規に作成される投稿と既に作成されている投稿の両方に適用されます。
- タイトルには、リプレイ、保存、オプション、マップ、チームなど、ユーザーの保存されたデータに対するユーザーのゲーマータグが格納され、ユーザーがゲーマータグまたはアカウント名を変更した場合に保存データが使用できなくなります。
XR-052: ユーザー状態とタイトル セーブの場所、ローミング、依存性 *
タイトルは、進行状況、保存状態、初期設定、実績、およびその他のリワードを、その進行状況を記録、初期設定を選択、またはリワードを獲得したユーザーと関連付ける必要があります。 タイトルは、ユーザー変更通知を適切に処理することで、これを達成する。 タイトルは、サインインしていないユーザーの状態が保存されないようにしなければならない。 ゲームのセーブ データは、共有コンテンツまたはローカル ストレージに依存してはなりません。
プラットフォーム、デバイス、および/または本体世代の間で同一の TitleID を使用するゲームの場合、セーブデータの進行状況はユーザーが次の方法で Xbox ネットワークにサインインしたときにローミングする必要があります。
- 同じプラットフォーム内 (Xbox 本体)。
- 同じプラットフォームのデバイス内 (Xbox One と Xbox One S など)。
- デバイスのプラットフォームの世代間 (Xbox One と Xbox Series X|S など)。
- Windows プラットフォームの PC 間 (2 つの異なる PC 間など)。
- Windows プラットフォームと Xbox 本体のプラットフォーム間 (Windows と Xbox Series X|S など) ではセーブ データのローミングは必須ではありませんが、プレイヤーのエクスペリエンスをサポートするために推奨されます。
- Microsoft 以外のプラットフォーム (iOS、Android、Switch、PlayStation® など) の場合、セーブ データのローミングは必須ではありませんが、プレイヤーのエクスペリエンスをサポートするために推奨されます。
注意
次の表は、GDK の簡易ユーザー モデル、GDK の高度なユーザー モデル、ERA および UWP マルチ ユーザー アプリケーションを使用している場合に、どのテスト ケースがタイトルに適用されるかを示します。 シンプルなユーザー モデルと高度なユーザー モデルの使用に関する詳細については、「XR-112」を参照してください。
テスト ケース | GDK のシンプルなユーザー モデルに適用可能 | GDK の高度なユーザー モデル、ERA、および UWP MUA に適用可能 |
---|---|---|
052-01 ユーザーのサインインおよびサインアウト | いいえ | はい |
052-02 一時停止状態または終了状態でのユーザー変更 | いいえ | はい |
052-05 正確なユーザーの関連付け | はい | はい |
052-06 クラウド ストレージ: ローミング | はい | はい |
052-01 ユーザーのサインインおよびサインアウト
環境設定:
このテスト ケースは、本体にのみ適用されます。 Xbox デバイスでは、xbuser
コマンド ライン ユーティリティを使用して、ユーザーのサインインまたはサインアウトをいつでもテストできます。
xbuser signin /i:\<user ID> [/p:password]
xbuser signin /e:\<email> [/p:password]
xbuser signout /i:\<user ID> [/p:password]
xbuser signout /e:\<email> [/p:password]
テスト手順
- プロフィール A とプロフィール B で本体がホームに設定されていることを確認します。
- プロフィール A にゲームの進行状況やユーザーの初期設定などのセーブ データがあることを確認します。
- プロフィール B にセーブ データがないことを確認します。
- プロフィール A にサインインして、タイトルを起動します。 タイトルのすべてのエリアを確認して (たとえば以下が含まれますが、これらに限りません)、すべてのセーブ データと初期設定が保持されていることを確認します。
- シングルプレイヤーまたはマルチプレイヤー ゲーム セッション
- メニュー
- ビデオまたはオーディオの再生
- プロフィール A からサインアウトして、プロフィール B にサインインします。
- 手順 4 で確認したタイトルのすべてのエリアを再び確認して、プロフィール B のユーザー進行状況、保存状態、初期設定、実績、またはその他のアワードが正しく更新されていることを確認します。
- ゲームプレイを開始して、進行状況のセーブ データを保存し、プロフィール B のユーザー初期設定を変更します。
- タイトルを終了して再び起動し、手順 7 のセーブ データが正しく反映されていることを確認します。
- プロフィール B からサインアウトします。
- プロフィール A からセーブ データ 'Everywhere' を削除し、手順 4 から 8 を繰り返します。
想定される結果
アクティブ ユーザーの変更がタイトルによって適切に処理されなければなりません。
成功例
- ユーザーの変更後、ユーザーの進行状況、保存状態、初期設定、実績、およびその他のアワードが正しいユーザーに関連付けられています。
失敗例
- ユーザーの変更後、ユーザーの進行状況、保存状態、初期設定、実績、およびその他のアワードがユーザーに適切に関連付けられていません。
- 引き続き最初のユーザーにセーブ データが書き込まれます。
- 前のユーザーがサインアウトした後、新しいユーザーが前のユーザーのセーブ データ、状態、プロフィールを変更できます。
052-02 一時停止状態または終了状態でのユーザー変更
環境設定:
このテスト ケースは、本体にのみ適用されます。 プロセス ライフタイム管理 (PLM) の状態遷移をテストするために、以下のコマンドを GDK/XDK で実行すると便利です。
xbapp suspend [package full name]
xbapp resume [package full name]
注意: コマンド プロンプトではなく GUI で作業する場合は、Xbox One Manager の使用を検討してください。 これは、ユーザーの管理や PLM イベントのテストを他の一般的なタスクと同様に本体上で実行できるデスクトップ アプリケーションです。
テスト手順
- プロフィールにサインインして、タイトルを起動します。
- タイトルのすべてのエリアを確認します。たとえば以下が含まれますが、これらに限りません。
- シングルプレイヤーまたはマルチプレイヤー ゲーム セッション
- メニュー
- ビデオまたはオーディオの再生
- xbapp suspend [パッケージ フルネーム] を実行してタイトルを一時停止します。
- タイトルが完全に一時停止し、一時停止によってすべての HTTP 要求が中断されるまで、少なくとも 30 秒待ちます。
- アクティブ ユーザーをサインアウトし、別のユーザーとしてサインインします。
- 新しいユーザーを使用してタイトルを起動し、以前のユーザーの場所からタイトルを続けます。
- タイトルのすべてのエリアについて手順 1 から 6 を繰り返します。
- 手順 1 から 7 を繰り返し、タイトルを一時停止する代わりに終了します。
想定される結果
アクティブ ユーザーの変更がタイトルによって適切に処理されなければなりません。
成功例
- 別のユーザーで起動したとき、タイトルの状態はコンテキストに応じてタイトルのタイプにふさわしい状態になります。
- ユーザーの変更後、ユーザーの進行状況、保存状態、初期設定、実績、およびその他のアワードが正しいユーザーに関連付けられています。
失敗例
- ユーザーの変更後、ユーザーの進行状況、保存状態、初期設定、実績、およびその他のアワードがユーザーに適切に関連付けられていません。
- 引き続き最初のユーザーにセーブ データが書き込まれます。
- 前のユーザーがサインアウトした後、新しいユーザーが前のユーザーのセーブ データ、状態、プロフィールを変更できます。
052-05 正確なユーザーの関連付け
テスト手順
- プロフィールにサインインして、タイトルを起動します。
- ゲームプレイを開始し、ゲームの進行状況を保存します。
- タイトルを終了します。
- 手順 1 のプロフィールからサインアウトし、新しいプロフィールにサインインします。
- タイトルを起動し、保存された進行状況へのアクセスを試みます。
想定される結果
元のユーザーに関する進行状況のセーブ データが新しいプロファイルによって表示またはアクセスできないようにする必要があります。
成功例
- 手順 4 でユーザーに関連付けられた進行状況のセーブ データだけが手順 5 で表示されます。
失敗例
- タイトルで、新しいプロファイルで別のプロファイルの保存された進行状況を読み込むことができます。
052-06 クラウド ストレージ: ローミング
必要なデバイス:
- Xbox One
- Xbox One S
- Xbox One X
- Xbox Series X 開発キット (Xbox Series X|S リテール版本体モードの使用)
- 2 台の PC
テスト手順
- デバイス A で Xbox プロフィールにサインインして、タイトルを起動します。
- ゲームプレイを開始し、進行状況をセーブします (可能な場合は、設定を変更するか新しい設定を追加することで、設定のセーブを作成します)。
- タイトルを終了します。
- 手順 1 で使用したのと同じプロフィールを使用して、手順 1 で使用したのと同じプラットフォーム/世代 (Xbox Series S と Xbox Series X、Xbox One と Xbox One S および 2 台目の PC など) から別のデバイスにサインインします。
- 手順 1 と同じタイトルを起動し、すべてのセーブ データや任意の設定または構成ファイルにアクセスしてそれらが正しく読み込めること、およびそれらが共有コンテンツに依存していないことを確認します。
- 世代を超えた同じプラットフォームで同じ Title ID を使用するゲーム (Xbox One や Xbox Series X|S など) の場合は、手順 4 を繰り返します。
- Windows プラットフォームで同じ TitleID を使用する PC ゲームの場合は、手順 4 を繰り返します。
- サポートされている場合、プラットフォームを超えて同じ Title ID を使用するゲーム (Windows や Xbox Series X|S など) の場合:
- 手順 1 と同じタイトルを、サポートされている他のプラットフォームで起動し、すべてのセーブ データや任意の設定または構成ファイルにアクセスしてそれらが正しく読み込めること、およびそれらが共有コンテンツに依存していないことを確認します。
想定される結果
タイトルの保存の進行状況はユーザー プロファイルに関連付けられている必要があり、ユーザーが Xbox サービスにサインインしている場合は、同じデバイスやプラットフォーム間でローミングする必要があります。 世代を超えた同じプラットフォームで同じ TitleID を使用するゲームの場合、ゲームのセーブ データはこれらのプラットフォーム間をローミングする必要があります。 Windows プラットフォームで同じ TitleID を使用する PC ゲームの場合、ゲームのセーブ データはこれらの PC 間をローミングする必要があります。 ゲームのセーブ データは、共有コンテンツに依存してはなりません。
成功例
- ゲームのセーブ データと関連する設定ファイルは、同じ本体プラットフォーム/世代 (Xbox Series S と Xbox Series X、Xbox One と Xbox One S など) の 2 番目の本体に正常にダウンロードできます。
- ゲームのセーブ データと関連する設定ファイルが、Windows プラットフォームの 2 番目の PC に正常にダウンロードできます。
- 世代を超えて同じプラットフォームで同じ Title ID を共有する本体用ゲーム (Xbox One と Xbox Series X|S など) の場合、保存および関連する設定ファイルをこれらのデバイス間でローミングできます。
- ゲームのセーブ データは、共有コンテンツに依存していません。
失敗例
- ゲームのセーブ データと関連する設定ファイルを同じプラットフォーム/世代 (Xbox Series S と Xbox Series X、Xbox One と Xbox One S など) の 2 番目の本体に正常にダウンロードできません。
- ゲームのセーブ データと関連する設定ファイルを Windows プラットフォームの 2 番目の PC に正常にダウンロードできません。
- 世代を超えて同じプラットフォームで同じ Title ID を共有する本体用ゲーム (Xbox One と Xbox Series X|S など) の場合、保存および関連する設定ファイルをこれらのデバイス間でローミングできません。
- タイトルの初回起動時にクラウドのセーブが認識されません。また、その後プレイヤーの操作なしに、2 台目のデバイスでクラウドのセーブが上書きされます。
- ゲームのセーブ データが、共有コンテンツに依存しています。
実績とアワード
以下の要件は、Xbox ネットワークで実績とアワードを提供するタイトルに適用されます。 Xbox 本体をターゲットにしたすべてのゲームは、実績を提供し、以下の要件を満たす必要がある。 デモでは実績の提供は許可されませんが、Hero Stats (ヒーロー スタッツ) に対応することはできます。
XR-055: 実績およびゲーマースコア *
タイトルは発売時に、規定された数の実績 (最小値と最大値) と実績に関連付けられたゲーマースコアを設定する必要がある。 発売後、タイトルは、対応する新しいコンテンツの有無にかかわらず、いつでも実績またはゲーマースコアを追加できるが、最大値の制限や、追加の頻度の制限を守る必要がある。
単一の実績が 200 ゲーマースコアを超えてはならず、タイトル内のすべての実績が達成可能でなければならない。
ベース ゲームまたはコンテンツ アップデートでの実績のロック解除は、ゲーム コンテンツの詳細な調査または関与を表す必要があります。
項目 | リリース | 半期の追加 | 最終的な合計値 |
---|---|---|---|
実績の最小数 | 10 | 0 | 10 |
実績の最大数 | 100 | 100 | 500 |
ゲーマースコア | 1,000 | 1,000 | 5000 |
注意
"半期" とは、1 月 〜 6 月と 7 月 〜 12 月を意味します。 ベース ゲームの実績とゲーマースコアは、半期の制限にはカウントされません。
055-01 実績
テスト手順
- タイトルでサポートされているゲーマースコアの量と実績の合計数を確認します。
- タイトルをプレイし、できるだけ多くの実績を獲得します。
- コネクト スタンバイから再開した後、手順 2 を繰り返します。
- Xbox サービスから切断されている間、手順 2 を繰り返します。
想定される結果
すべての実績は基準に基づいてロック解除され、ベース ゲームの起動に可能なゲーマースコアの最大数は 10 〜 100 の実績間で 1000G です。 すべての実績は、ゲーム コンテンツの詳細な調査または関与を表します。
成功例
- すべての実績を獲得できます。
- 実績はそれぞれの条件に従って解除されます。
- すべての実績は、ゲーム コンテンツの詳細な調査または関与を表します。
- ゲームの起動バージョンで、1000 ゲーマースコアが 10 ~ 100 の実績に分配されます。
失敗例
- 条件が満たされると、実績のロックが解除されません。
- 基準が満たされる前に、実績のロックが解除されます。
- 実績は、ゲーム コンテンツの詳細な調査や関与を表すものではありません。
- すべての実績は、ゲームの開始から数分以内にロックを解除できます。
- 実績は、コア ゲームプレイ ループの一部として必要な場合を除き、(または最小限の) ユーザー入力なしでロックを解除できます。
- ゲームの起動バージョンに 1000G がありません。
- ゲームの起動バージョンの実績が 10 ~ 100 より少ない数です。
- コネクト スタンバイからの再開後に実績が解除されません。
- 1 つの実績のゲーマースコアが 200 を超えています。
- Xbox サービスに再接続した後、実績はロック解除されません。
XR-057: 実績の解除 *
タイトル内のコンテンツを追加購入しなくても、ベース タイトルで定義されたすべての実績を獲得できる方法をユーザーに提供しなければならない。
ゲーム内の操作、ゲームプレイ、および/またはエクスペリエンスを通じて、実績を解除する必要があります。
タイトルは、対応するゲームプレイのアクティビティなしに実績を直接解除する代替オプションをプレイヤーに提供してはなりません。 許可されていないオプションの包括的でないリスト:
- 実際のお金での購入
- ゲーム内のチート コード、本体、またはメニュー オプション
これらのオプションを使用して、実績を解除するために必要なゲームプレイの難易度を下げることができます。
057-01 ベースの実績に追加購入を必要としてはならない
テスト手順
- ベース タイトルでの実績の説明を確認します。
- 追加購入も追加コンテンツも必要でないことを確認します。
- すべての実績を獲得します。
想定される結果
タイトル内のコンテンツを追加購入しなくても、すべての実績を獲得できます。
成功例
- タイトル内のコンテンツを追加購入しなくても、すべての実績を獲得できます。
- 実績を獲得するためにタイトル内のコンテンツを追加購入する必要はありません。
失敗例
- ユーザーは、ベース タイトルで定義された実績を解除するためにタイトル内のコンテンツを追加購入する必要があります。
マルチプレイヤー セッション
このカテゴリーの要件は、Xbox 上でマルチプレイヤー セッションを提供するゲーム タイトルに関係します。 Xbox では、マルチプレイヤー セッションの検出やマルチプレイヤー セッション検出用パラメーターの微調整を一貫した簡単な方法で行うことができます。
XR-064: 参加可能ゲーム セッションとオンライン プレイ *
Xbox 本体では、参加可能なゲーム セッションを提供するタイトルは、Xbox シェル インターフェイスを使用して参加できるようにしなければなりません。
Xbox にサインインした PC デバイスから Xbox 本体を使って、クロス プラットフォーム マルチプレイヤーを提供するタイトルは、Game Bar エクスペリエンスからも参加できるようにする必要があります。
064-01 ゲームの外からのゲーム セッションへの参加
環境設定:
- 2 つの Xbox プロフィール
- デバイス 1 プロフィール A (プロフィール B とフレンド)
- デバイス 2 プロフィール B (プロフィール A とフレンド)
テスト手順
- プロフィール A を使用して、参加可能なゲーム セッションを作成します。
- タイトルを実行していないプロフィール B を使用して、Xbox シェル インターフェイスを介してフレンド リストにアクセスし、プロフィール A が参加可能としてリストに表示されることを確認します。
- 一部のゲームではプライベート マルチプレイヤー セッションのみがサポートされるため、プロフィール B が参加可能と表示されない場合があります。この場合、手順 6 に移動してください。
- プロフィール B がプロフィール A のゲームに参加します。
- 両方のプロフィールがゲーム セッションに一緒に配置されることを確認します。
- タイトルが一時停止状態の間に、プロフィール B で手順 1 ~ 4 を繰り返します。
- タイトルが完全に一時停止し、一時停止によってすべての HTTP 要求が中断されるまで、少なくとも 30 秒待ちます。
- 手順 1 ~ 5 を繰り返しますが、今回は、Xbox シェル インターフェイスを介してフレンド リストを使用してプロフィール B が参加するのではなく、システム シェルを介してプロフィール A からプロフィール B にゲームへの招待を送信し、プロフィール B が招待を受信し、承認し、プロフィール A に参加できることを確認します。
想定される結果
ユーザー B は、ユーザー A のゲームに参加してゲーム セッションを一緒に進行できる必要があります。 プライベート マルチプレイヤー セッションのみがサポートされるため、プロフィール B に参加可能と表示されないゲームでは、招待がプロフィール A に参加する唯一のメカニズムであってもかまいません。マッチメイキング (ランク マッチ) を介してのセッション参加のみをサポートするマルチプレイヤー ゲーム セッションでは、Xbox シェル インターフェイスを介しての参加をサポートしなくてもかまいません。 クロスプラットフォーム マルチプレイヤーをサポートするタイトルでは、ユーザーは Xbox One 本体と PC のどちらからでも参加できる必要があります。
成功例
- 両方のプロフィールがゲーム セッションに一緒に配置されます。
- ユーザー B は、ユーザー A のゲームに参加してゲーム セッションを一緒に進行できます。
- ゲームがプライベート マルチプレイヤー セッションのみをサポートしているため、ユーザー A は Xbox シェル インターフェイスを介してフレンド リストに参加可能と表示されませんが、ユーザー A はユーザー B にシステム シェルを介してゲームへの招待を送信することができます。
- ユーザー A がマッチメイキング (例: ランク マッチ) を介した参加のみをサポートするセッションに参加している間、参加可能として表示されず、Xbox シェル インターフェイスを介してゲームへの招待を送信できません。
失敗例
- ユーザー B はユーザー A のゲームに参加できず、ゲーム セッションに配置されません。
- ゲームがプライベート マルチプレイヤー セッションのみをサポートしているため、ユーザー A は Xbox シェル インターフェイスを介してフレンド リストに参加可能と表示されず、ユーザー A はユーザー B にシステム シェルを介してゲームへの招待を送信することができません。
064-02 同じゲームからのゲーム セッションへの参加
環境設定
- 2 つの Xbox プロフィール
- デバイス 1 プロフィール A (プロフィール B とフレンド)
- デバイス 2 プロフィール B (プロフィール A とフレンド)
テスト手順
- プロフィール A を使用してタイトルを起動し、タイトル内に参加可能なゲーム セッションを作成します。
- プロフィール B を使用して同じタイトルを起動し、タイトル内の何らかのエリアに入ります。
- プロフィール B を使用し、Xbox シェル インターフェイスを介してフレンド リストにアクセスして、プロフィール A のゲームへの参加を選択します。
- 一部のゲームではプライベート マルチプレイヤー セッションのみがサポートされるため、プロフィール B が参加可能と表示されない場合があります。この場合、手順 5 に移動してください。
- 両方のプロフィールがゲーム セッションに一緒に配置されることを確認します。
- 手順 1 ~ 4 を繰り返しますが、今回は、Xbox シェル インターフェイスを介してフレンド リストを使用してプロフィール B が参加するのではなく、システム シェルを介してプロフィール A からプロフィール B にゲームへの招待を送信し、プロフィール B が招待を受信し、承認し、プロフィール A に参加できることを確認します。
想定される結果
ユーザー B は、ユーザー A のゲームに参加してゲーム セッションを一緒に進行できる必要があります。 プライベート マルチプレイヤー セッションのみがサポートされるため、プロフィール B に参加可能と表示されないゲームでは、招待がプロフィール A に参加する唯一のメカニズムであってもかまいません。マッチメイキング (ランク マッチ) を介してのセッション参加のみをサポートするマルチプレイヤー ゲーム セッションでは、Xbox シェル インターフェイスを介しての参加をサポートしなくてもかまいません。 クロスプラットフォーム マルチプレイヤーをサポートするタイトルでは、ユーザーは Xbox One 本体と PC のどちらからでも参加できる必要があります。
成功例
- 両方のプロフィールがゲーム セッションに一緒に配置されます。
- ユーザー B は、ユーザー A のゲームに参加してゲーム セッションを一緒に進行できます。
- ゲームがプライベート マルチプレイヤー セッションのみをサポートしているため、ユーザー A は Xbox シェル インターフェイスを介してフレンド リストに参加可能と表示されませんが、ユーザー A はユーザー B にシステム シェルを介してゲームへの招待を送信することができます。
- ユーザー A がマッチメイキング (例: ランク マッチ) を介した参加のみをサポートするセッションに参加している間、参加可能として表示されず、Xbox シェル インターフェイスを介してゲームへの招待を送信できません。
失敗例
- ユーザー B はユーザー A のゲームに参加できず、ゲーム セッションに配置されません。
- ゲームがプライベート マルチプレイヤー セッションのみをサポートしているため、ユーザー A は Xbox シェル インターフェイスを介してフレンド リストに参加可能と表示されず、ユーザー A はユーザー B にシステム シェルを介してゲームへの招待を送信することができません。
064-05 参加不可能ゲーム
環境設定
- それぞれが異なるデバイスにサインインしている 3 つの Xbox プロフィール
- デバイス 1 プロフィール A (プロフィール B および C とフレンド)
- デバイス 2 プロフィール B (プロフィール A とフレンド)
- デバイス 3 プロフィール C (プロフィール A とフレンド)
テスト手順
- プロフィール A を使用してタイトルを起動し、参加可能なゲーム セッションを作成します。
- プロフィール A を使用して、プロフィール B と C をゲームに招待します。
- プロフィール A を使用してゲーム セッションに入ります。A の参加後はスロットが 1 つだけ残ります。
- プロフィール B を使用して招待を受け入れます。
- プロフィール A と B が一緒にプレイしていることを確認します。
- プロフィール C を使用して招待を受け入れ、ゲーム セッションへの参加を試みます。
想定される結果
プロフィール C は、次のジャンプインの機会 (セッションへの参加が可能になる) まで待つように求められるか、またはゲーム セッションに参加できない理由を示すメッセージが表示されます。
成功例
- プロフィール C は、次のジャンプインの機会まで待つように求められます。
- プロフィール C には、ゲーム セッションに参加できない理由を示すメッセージが表示されます。
失敗例
- プロフィール C は、次のジャンプインの機会まで待つように求められず、参加できないことを示すメッセージも表示されません。
XR-067: マルチプレイヤー セッション状態の保持 *
Xbox ネットワーク 本体では、オンライン マルチプレイヤー機能を持つすべてのタイトルは、Xbox ネットワークでのセッション状態情報を保持する必要があります。 タイトルは、Xbox マルチプレイヤー セッション ディレクトリ (MPSD) を介してこれを行うか、タイトルに独自のマルチプレイヤー セッション状態機能がある場合、代わりにマルチプレイヤー アクティビティの最近のプレイヤー機能を使用してプレーヤーの操作を記録することを選択できます。
Xbox 本体以外のデバイスでは、Xbox 本体でクロス プラットフォーム マルチプレイヤーを提供するタイトルは、Xbox マルチプレイヤー セッション ディレクトリ (MPSD) でセッション状態情報を維持する必要があります。 独自のセッション状態機能を持っている場合は、マルチプレイヤー アクティビティの最近のプレイヤー機能を使用して、代わりにプレイヤーの操作を記録することもできます。
067-01 セッション状態の保持
テスト手順
- 複数のデバイスで Xbox プロフィールにサインインし、タイトルを起動します。
- すべてのプレイヤーとの Xbox ゲーム セッションを完了します。
- [Home (ホーム)] に戻って最近遊んだプレイヤーのリストを表示し、ゲーム セッションに参加したプレイヤーが全員リストに含まれていることを確認します。
- 手順 1 ~ 3 をさらに数回繰り返しますが、繰り返しのたびに毎回新しいアカウントを使用します。
- 手順 1 ~ 4 を繰り返しますが、今回はゲームプレイ中に 1 人以上のプレイヤーがセッションを離れるようにします。手順 2 で、そのプレイヤーのプロフィールが最近遊んだプレイヤーのリストに引き続き表示されることを確認します。
想定される結果
ユーザーは、最近プレイしたすべてのゲーム セッションに参加したプレイヤーを全員確認できなければなりません。
成功例
- すべてのプロフィールがデバイスの最近遊んだプレイヤーのリストに含まれています。
失敗例
- 一部のプロフィールがデバイスの最近遊んだプレイヤーのリストに含まれていません。
- マルチプレイヤー ゲームプレイ中に終了したユーザーが最近遊んだプレイヤーのリストに表示されません。
XR-070: フレンド リスト *
タイトルは、フレンドのプライマリ リストとして Xbox ネットワーク フレンド リストを使用する必要があります。 タイトルは、Xbox API からフレンド リストを取得する必要があります。フレンド リストをゲーム サーバー上に永続的な状態で保存することはできません。
タイトルは、Xbox ネットワーク上に存在しないプレイヤーやユーザーの Xbox ネットワーク フレンド リストにないプレイヤーを一元管理するセントラル タイトル アカウントから、フレンドのセカンダリ リストを表示できる。 タイトルは、設計に基づいて、中央の場所に Xbox ネットワークとパブリッシャー アカウントの両方のフレンドを含む混合のフレンド リスト機能を作成する場合がありますが、図像または他の明確なマークを使用して Xbox フレンドを他のネットワークのフレンドと区別する必要があります。
GDK を使用して友達リストを使用する方法については、「People システム (フレンド リスト) の概要」をお読みください。
070-01 Xbox フレンド リスト
テスト手順
- タイトル内に表示される People リストを探し、それらに Xbox ネットワーク フレンド リストが含まれることを確認します。
- タイトルで Xbox ネットワークとパブリッシャー アカウントの両方のフレンドを含む混合のフレンド リストがサポートされている場合、図像または他の明確なマークによって区別していることを確認します。
想定される結果
タイトルは、Xbox API を使用して、フレンドのプライマリ リストとして Xbox ネットワーク フレンド リストを使用する必要があります。フレンド リストをゲーム サーバー上に永続的な状態で保存することはできません。 タイトルは、Xbox ネットワークとパブリッシャー アカウントの両方のフレンドを含む混合のフレンド リストを表示するとき、フレンドを区別する必要があります。
成功例
- タイトルは、フレンドのプライマリ リストとして Xbox ネットワーク フレンド リストを使用しています。
- 最近対戦したプレイヤーやギルド メンバーなど、ユーザーのコア リストに配置されていない人を含む代替リストがタイトルに用意されています。
- 当該タイトルをプレイしたことがあるフレンドのみに絞り込んだフレンド リスト、また状況によっては、現在オンラインであるフレンド、または現在オンラインであってタイトル内でアクティブであるフレンドのみに絞り込んだフレンド リストがタイトルに表示されます。
- タイトルは、Xbox ネットワークとパブリッシャー アカウントの両方のフレンドを含む混合のフレンド リストを表示し、図像または他の明確なマークによってフレンドを区別しています。
失敗例
- タイトルでのフレンド リストの表示に Xbox API が使用されていません。
- タイトルは、フレンド リストをゲーム サーバー上に永続的な状態で保存しています。
- タイトルは、Xbox ネットワークとパブリッシャー アカウントの両方のフレンドを含む混合のフレンド リストを表示しますが、フレンドを区別していません。
XR-124: ゲームへの招待 *
参加可能なマルチプレイヤー体験に対応しているゲームでは、プレイヤーが Xbox ネットワーク プラットフォームを使用して、ケーム内から他の Xbox ネットワーク ユーザーにゲームへの招待を送れるようにしなければならない。クロス ネットワーク プレイヤーが存在するシナリオを含む。
GDK を使用したゲーム招待については、「招待の概要」を参照してください。
124-01 ゲームへの招待
環境設定
- それぞれが異なるデバイスにサインインしている 2 つの Xbox プロフィール
- デバイス 1 プロフィール A (プロフィール B とフレンド)
- デバイス 2 プロフィール B (プロフィール A とフレンド)
テスト手順
- ユーザー A とユーザー B が各自のデバイスにサインインします。
- 両方のユーザーがタイトルを起動します。
- ユーザー A がゲーム セッションを作成し、招待を送信するためのゲーム内オプションを探して、それが必須の用語 (ターミノロジー) と一致していることを確認します。
- ユーザー A がユーザー B にゲームへの招待を送信します。
- プロフィール B が次の各エリアから招待を受け入れて、プロフィール A のゲーム セッションに参加します。
- 初期起動シーケンスから起動直後のインタラクティブ状態までのどこか
- メイン メニュー (装備されている場合)
- シングル プレイヤー ゲームプレイの最中 (装備されている場合)
- マルチプレイヤー ゲームプレイの最中 (装備されている場合)
- タイトルがメイン メニューで一時停止状態になっている間 (メイン メニューが装備されている場合。タイトルが完全に一時停止し、一時停止によってすべての HTTP 要求が中断されるまで、30 秒以上待ちます)
- タイトルがシングル プレイヤー ゲームプレイの最中に一時停止状態になっている間 (シングル プレイヤー ゲームプレイが装備されている場合。タイトルが完全に一時停止し、一時停止によってすべての HTTP 要求が中断されるまで、30 秒以上待ちます)
- タイトルがメイン メニューで制限状態になっている間 (装備されている場合)
- タイトルが任意のゲームプレイ中に制限状態になっている間 (装備されている場合)
- 各招待の後、両方のプロフィールがゲーム セッションに一緒に配置されることを確認します。
想定される結果
参加可能なマルチプレイヤー体験に対応しているゲームでは、プレイヤーがゲーム内から他の Xbox ユーザーにゲームへの招待を送れるようにしなければなりません。
ゲームは必須の用語 (ターミノロジー) を招待ボタンに使用しなければなりません。
プロフィール B は、招待を通じて、プロフィール A によってホストされるセッションに参加できる必要があります。
セッションへの招待を送信できるプレイヤーを制限することもできます (例: チーム専用のゲームセッションでチーム キャプテンのみが招待を送信できるなど)。
タイトルは、ユーザーのサインイン状態の変化によって起こりうる破壊的操作に対して事前確認を行う必要はありません。 タイトルは招待動作や参加動作を阻止することができないため、この操作が破壊的な効果を及ぼす恐れがある場合でも確認を要求する必要はありません。
クロスプラットフォーム マルチプレイヤーをサポートするタイトルでは、ユーザーは招待を通じて Xbox One 本体と PC のどちらからでもセッションに参加できる必要があります。
成功例
- タイトルに参加可能なセッション用の招待ボタンがあり、そのボタンで正しい用語 (ターミノロジー) が使用されています。
- ゲーム中にプレイヤーがゲームへの招待を受け入れたときに、破壊的操作に対する確認メッセージは表示されません。
- 招待は完了しますが、必要な DLC が本体にない場合、セッションを開始または起動することはできません。 これを明確に知らせるメッセージがプレイヤーに表示されます。
- だれがホストであるか明確な場合、ゲーム セッションのホストだけが招待を送信できます。
失敗例
- タイトルに参加可能なセッション用の招待ボタンがないか、招待ボタンで正しい用語 (ターミノロジー) が使用されていません。
- Xbox でのマルチプレイヤー ゲーム セッションを提供しているタイトルで、ゲームへの招待をサポートするゲーム モードが存在しません。
- ゲームへの招待を受け入れた後、アクティブなプレイヤーが招待されたゲーム セッションに入れません。
- 必要な DLC が本体にない場合、招待が完了しません。 このメッセージは、プレイヤーには表示されません。
ベータ版およびゲーム プレビュー
このカテゴリーの要件は、ベータ版またはゲーム プレビューとして分類されるタイトルにのみ適用されます。 オープンとクローズドのベータのプログラム固有定義、サイズ制限、期間、価格設定、メタデータ、オファーに関する他の Microsoft Store ポリシーについては、Microsoft の連絡先 にお問い合わせください。
ベータ版タイトルおよびゲーム プレビュー タイトルには、この資料で示されている XR のサブセットが適用されます。 このサブセットの範囲については、ゲーム プレビューおよびベータ版の Xbox 要件に関するページに詳しく説明されています。
XR-117: ベータ/ゲーム プレビュー通知 *
ベータ段階のタイトルは、タイトルの起動後、ゲームプレイまたはアプリケーションの使用が開始される前に体験内でスプラッシュ画面またはメッセージを表示して、以下の内容を通知しなければならない。
- タイトルがベータ版/プレリリースのソフトウェアである。
- 一部のプラットフォーム機能が適切に動作しない可能性がある。
- 一部のゲーム機能が適切に動作せず、クラッシュする可能性がある。
通知では、タイトルのサポート範囲の概要も示す必要があります。
117-01 ユーザーへのベータ版/ゲーム プレビューの通知
テスト手順
- Xbox プロフィールにサインインして、タイトルを起動します。
- ユーザーがゲームプレイへの参加またはタイトルを使用する前に、最低でも次のことを伝えるメッセージが表示されることを確認します。
- タイトルがベータ版/プレリリースのソフトウェアである。
- 一部のプラットフォーム機能が適切に動作しない可能性がある。
- 一部のゲーム機能が適切に動作せず、クラッシュする可能性がある。
- 通知では、タイトルのサポート範囲の概要も示す必要があります。
想定される結果
タイトルがベータ版/プレリリースであり、完全には期待どおりに動作しない可能性があることをユーザーに知らせる必要があります。
成功例
- ユーザーがタイトル内の機能を使用できるようになる前に、タイトルがベータ版/プレリリースであることがユーザーに通知されます。
失敗例
- タイトルがベータ版/プレリリースであることをユーザーに知らせるメッセージが表示されません。
- ベータ版/プレリリースであることの通知が表示される前に、ユーザーがタイトルの機能にアクセスできます。
BVT: ビルドのプレサーティフィケーション テスト
以下のテストは、Xbox サーティフィケーション テストに対するタイトルの準備状態の確認に使用されます。
BVT-01 ビルドの安定性
テスト手順
- タイトルを起動し、すべてのメニューを操作してゲームプレイに入ります。
- 他の BVT の実行中に発見された安定性に関する問題の再現を試みます。
想定される結果
タイトルの完全な XR テストを妨げる安定性の問題または長い読み込み時間が発生してはなりません。
BVT-02 マッチメイキング
テスト手順
- 本体 1: 最も基本的な Xbox ゲーム モードを選択し、Xbox ゲーム セッションをホストします。
- 本体 2: クイック マッチを使用して、本体 1 の Xbox ゲーム セッションに参加します。 (ゲーム セッションを開始するために必要な最小数の本体が参加するまで、この手順を繰り返します)。
- 本体 1 および 2: Xbox ゲーム セッションを開始して完了します。
- マッチメイキングが動作し、ユーザーが他のすべてのサポートされるゲーム モードでゲームプレイを開始できることを確認します。
想定される結果
本体 2 は常に本体 1 のゲーム セッションを探して参加できる必要があります。 両方の本体で、接続が喪失したり、安定性の問題が生じたりすることなく、Xbox ゲーム セッションを完了できる必要があります。
BVT-03 DLC
テスト手順
- ゲームと共に提出されたダウンロード コンテンツを、Microsoft Store またはゲーム内のしくみを使用してダウンロードできることを確認します。
- ダウンロードした後、コンテンツをゲーム内で簡単に識別できることを確認します (サーティフィケーション チームがダウンロード コンテンツを探す際、提出資料と共に提供されたダウンロード コンテンツの詳細な説明が役立ちます)。
想定される結果
タイトルと共に提出されたダウンロード コンテンツは、Microsoft Store またはゲーム内 UI を使用してダウンロードできる必要があり、ダウンロードされた後はゲーム内で簡単に識別できる必要があります。
BVT-05 言語
テスト手順
- Xbox デバイス設定アプリケーションで、言語を英語に設定します。
- タイトルを進めます。
- タイトルで次のことを確認します。
- クラッシュせず、無反応状態にもならない。
- 画面にデバッグ情報が出力されない。
- 意図したすべてのエリアにローカライズ版が実装されている。
- タイトルが対応するすべての言語について、手順 1 ~ 4 を繰り返します。
想定される結果
タイトルにサポートされるすべての言語が含まれます。 また、言語固有の安定性の問題またはデバッグ情報がタイトルに含まれていてはなりません。
BVT-07 基本構成
テスト手順
- タイトルを起動し、すべての BVT 機能チェックが、本体設定 (日時など) を変更することなく動作することを確認します。
- タイトルのメイン メニューに到達するために回避策が必要ないことを確認します。
想定される結果
タイトルをサーティフィケーションに提出する際は、基本機能が動作する必要があります。
BVT-08 Microsoft Store からの入手
必要なツール:
- 開発者用サンドボックスに公開されたゲーム。
- CERT と CERT.DEBUG サンドボックスに公開されたゲーム。
テスト手順
- ゲームを開発者用サンドボックスに公開します。
- ストアからタイトルをインストールします。
- タイトルを起動し、ゲームプレイを開始します。
Important
サーティフィケーションに提出するときは、ゲームを CERT と CERT.DEBUG サンドボックスに公開します。
想定される結果
タイトルが、CERT と CERT.DEBUG サンドボックスからインストールできる必要があります。
BVT-09 再提出修正必須項目
テスト手順
- タイトルの最新の認定レポートで、CFR として記録されたすべての問題を再現します。
- CFR として記録されたすべての問題が修正されていることを確認します。 再現する問題には、承認された例外が必要です。
想定される結果
以前のレポートで CFR としてマークされた問題は、例外が許可されていない限り修正する必要があります。
例外を提出する手順については、Microsoft の連絡先 にお問い合わせください。
BVT-10 バージョン チェック
テスト手順
- タイトルをインストールします。
- 「マイ ゲームとアプリ」と入力し、タイトルを強調表示し、[メニュー] ボタンを押してから、[ゲームとアドオンの管理] を選択します。
- [ファイル情報] を選択します。
- インストールされている製品の FullName を、提出ドキュメント/キックオフ メールに記載されているパッケージ名と比較します。
想定される結果
インストールされている XVC の FullName は、キックオフ メール/提出ドキュメントに記載されているものと正確に一致します。
BVT-12 パートナーがホストするサービス
テスト手順
- Xbox プロフィールにサインインして、タイトルを起動します。
- パートナーがホストするすべてのサービスにアクセスできることを確認します。
想定される結果
パートナーがホストするすべてのサービスがテスト用に構成されていて、それらのサービスに依存するすべての機能にアクセスできます。
BVT-13 年齢別レーティングの検証
環境設定:
- タイトルは最終版でなければなりません (ベースまたはコンテンツ アップデート)。
- 最終 (ベース/コンテンツ アップデート) – 証明書を必要とするすべてのロケールについて、証明書が必要です。
- 対象外 - DLC、ゲーム内コンテンツ - テストは必要ありません。
- 提出資料をレビューできます。
- Microsoft パートナー センターで製品の年齢レーティングにアクセスします。
テスト手順
- 次のドキュメント/情報が利用可能であることを確認します。
- 提出の XVC のサブミッション バリデーター ログ。
- パートナー センターの年齢レーティングの宣言。
- 年齢レーティング証明書。
- サブミッション バリデーター ログ ファイルを開き、
<component>Manifest-Ratings</component>
テストの警告または失敗が表示されていないことを確認します。- 2020 年 5 月 11 日以降に認定されたすべてのタイトル: AppxManifest 内にレーティング要素が存在してはなりません。
- 2020 年 5 月 11 日以前に認定されたタイトルの場合: レーティング要素は AppxManifest 内に存在することが許可されています。
- パートナー センターを開いて、製品の年齢レーティング情報を確認する
- 表示される各値について、対応するレーティング証明書が提供されていて、それが年齢別レーティングに厳密に一致していることを確認します。
想定される結果
- これらのすべてのファイルが提供され、この提出タイプに関連している必要があります。
- すべてのレーティングに対応する証明書が提供されている必要があります。
- 2020 年 5 月 11 日以降の認証の基本最終提出には、AppxManifest で定義された年齢レーティング要素があってはなりません。
- 2020 年 5 月 11 日以前に認定されたタイトルのコンテンツの更新プログラムでは、レーティング要素を完全に削除する場合を除き、AppxManifest のレーティングを追加または削除してはなりません。
BVT-14 UWP サービス構成検証
環境設定
タイトルは、UWP 提出である必要があります。
テスト手順
- これまで当該タイトルにアクセスしたことがない Xbox プロフィールにサインインします。
- タイトルを起動します。
- Xbox アカウントの権限の受け入れを求めるプロンプトが表示されることを確認します。
- メイン メニューまたはフロントエンド メニューで、コマンド
xbdir "XS:\Program Files\WindowsApps\{XVC}\"
を実行し、'xboxservices.config' ファイルを検索します。
想定される結果
タイトルのサービス構成ファイルをテスト向けに構成する必要があります。
成功例
- タイトルにサービス構成ファイルが含まれていて、新しいユーザーは Xbox アカウントの権限を受け入れるよう求められます。
失敗例
- サービス構成ファイルが存在しません。
- サービス構成ファイルは存在しますが、サイズが 0 バイトです。
- 新しいユーザーが Xbox アカウントの権限を受け入れるよう求められません。
BVT-15 インテリジェント配信
テスト手順
- タイトルのために XVC を取得し、
packageutil chunkinfo [XVC] > chunkinfo.xml
コマンドを使用して、Chunkinfo.xml ファイルを生成します。 - 生成した chunkinfo.xml を使用して、タイトルがインテリジェント配信をサポートするかどうかを確定します。
- インテリジェント配信がサポートされる場合は、
xbapp install /[Chunk Parameter] [XVC]
コマンドを使用して、次のそれぞれの 1 つでフレッシュなインストールを開始します。- パラメーター
/Languages=
を使用して言語パック (サポートされる別の言語チャンクに切り替え、システム設定またはタイトル内の言語オプションを使用して追加の言語パックをダウンロードします) - パラメーター
/Devices=
を使用したデバイス固有のコンテンツ - パラメーター
/ContentTypes=
を使用したコンテンツ タイプ - パラメーター
/Tags=
を使用したオンデマンド コンテンツ
- パラメーター
想定される結果
タイトルが想定どおりにインテリジェント配信チャンクをインストールし、悪い影響が発生しません。
このリリースの変更点
日付 | ドキュメントのバージョン | 変更の説明 |
---|---|---|
2024 年 10 月 1 日 | 13.1 |
XR-001 タイトルの安定性: Microsoft Store ポリシー 10.1.2 に要件を更新しました。 これは、タイトルの安定性に関する Microsoft Store ポリシーと一致します。 XR-046 表示名とゲーマーアイコンに更新します。 ゲーマータグの表示が正しく更新されていることを確認するために使用される 4 つのテスト文字列。 新しい文字列は次のとおりです。
テスト ケース 048-01 プロファイル設定の使用状況: 2 台目のデバイスで更新されたゲーマータグを確認するためのテスト 手順 6 を追加しました。 "Xbox Live" を "Xbox ネットワーク" に更新しました。 |