XR-003: 提出用タイトルの品質
バージョン 1.0, 2020/3/1
サーティフィケーションのために提出するタイトルは、機能的に完全でテスト可能であり、Xbox 本体の品質基準を満たす必要があります。
機能的に完全でテスト可能: タイトルの提出には、すべてのクライアント コード、提出時のアイテム、およびダウンロード コンテンツを含める必要があります。 パートナー サービスが利用可能であり、テストおよびサーティフィケーションのために正しく構成されていなければならない。 Microsoft にタイトルを提出する際には、サブミッション バリデーターの最新バージョンを使用して、何も問題がない状態で正しくパッケージングしなければならず、サブミッション バリデーターのログが提出に含まれていなければならない。
Xbox の品質基準: Xbox 本体のゲームは、プレイヤーのニーズを満たすために、さまざまなシナリオでゲーム モード間で正しく機能する必要があります。
- タイトルの整合性: ユーザーは、すべてのゲーム モードを完了できる必要があります。タイトルは、プレイヤーに一貫してプレイ可能なエクスペリエンスを提供する必要があります。 プレイ可能なエクスペリエンスはタイトルごとに異なりますが、一般的に、進行の大きな妨げやグラフィクス表示の崩壊などの原因となるフレーム レートの重大な低下、フリーズ、行き詰まり、バグなどがまったくないということを意味します。
- オプションと設定: オプション、コントロール、言語などのゲーム設定は、ゲームで更新され、タイトルを終了してもう一度起動した後に正しく適用されます。 必要に応じて、コンソールの既定の設定が適用されます。
- ナビゲーションとコンテンツの可用性: コンテンツにデッド エンドはなく、ゲーム メニューを移動でき、すべてのコンテンツを利用できます (該当する場合)。
- フレンドの少ない / 多いプレイヤーのサポート: プレイヤーのフレンドがまったくいない、または沢山いる場合にも安定した状態が維持されます。 通常、フレンドが沢山いると、統計の投稿/取得に関係する領域で問題が発生する可能性があります
- ゲームプレイは許可された人数のローカルまたはオンラインのマルチプレイヤーで機能: ゲームプレイ モードは、サポートされているモードを使用して、ローカルとオンライン プレイヤーのサポートされている組み合わせを使用して機能します。
- ゲーム データの互換性: ゲーム データやプレイヤーの進捗状況は、コンテンツの更新後も引き続き機能します。 さらに、ベース ディスク バージョンで更新された保存を読み込むときに、永続的な保存データの損失が発生しないようにする必要があります。
- 一時停止と再開: コネクト スタンバイまたは一時停止から再開すると、タイトルの進行状況が保持されます。
その他の情報
不正確、不完全な提出は拒否されます。 提出時のアイテムは、ヘルプ コンテンツ、メタデータなどのアイテムを含んでいます。 サブミッション バリデーターの最新バージョンは、Certification Tools ページから入手できます。
サブミッション バリデーターは、'makepkg.exe pack' の呼び出しの一部として自動的に実行されます。
サブミッション バリデーターでは、以下の内容が確認対象になります。
- デバッグ ファイル - コンパイラまたはリンカーで生成されたソース ファイルやデバッガー サポート ファイル。 これらのファイルはコンパイル済みパッケージでは使用できません。 使用できないファイルの種類は .PDB、.OBJ、.CPP、.C、.CS、.LIB、.H、.SYM、.MAP、debug_licensing_overrides.xml、および Thumb.db です。 また、AMD64 ネイティブ コード バイナリでない EXE または DLL は、このチェックの際にフラグされます。
- Xbox BGM サービス - Xbox One は BGM に対応していますが、現段階ではゲームで BGM を使用することができません。
- 起動リンク ハンドラー - タイトルは、新規の起動リンク ハンドラー (windows.protocol 登録) を Xbox One に登録することができません。 Xbox One システムには、アプリケーションの代わりに既定のプロトコルの関連付けが登録されます。
- パッケージ当たり 1 つのアプリケーション - ゲームでは、アプリケーション マニフェスト当たり 1 つのアプリケーション エレメントしか使用できません。
- タイトルの機能 - タイトルには、アプリケーションに必要な機能を登録しなければならず、公表された体験をもたらすのに必要最小限の機能を超えてはなりません。 サブミッション バリデーターは、既知の機能に対してタイトルに記載されている機能を表示しますが、タイトルのコードに関して適正な機能が使用されているかどうかは検証しません。 機能の詳細については、ホワイト ペーパー「アプリ マニフェスト - メタデータについての詳細 ([Developer Education Materials] (デベロッパー教育資料) > [All NDA Whitepapers] (すべての NDA ホワイト ペーパー))」を参照してください。
- 永続ローカル ストレージの使用量 — 排他的アプリのゲーム タイトルは、使用する永続ローカル ストレージの容量をタイトルのマニフェストで示さなければなりません。 タイトルのストレージは 4 GB を超えることはできません。 目的: サーティフィケーションのために提出する際、タイトルは起動できる状態であることを確認します。
その他のリソース
- ホワイト ペーパー「アプリ マニフェスト - メタデータについての詳細 ([Developer Education Materials] (デベロッパー教育資料) > [All NDA Whitepapers] (すべての NDA ホワイト ペーパー))」
- サブミッション バリデーター
テスト ケース
003-02 タイトルの整合性
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- すべてのメニューおよびサブメニューを操作し、すべての種類のメディアや機能を確認し、すべてのゲーム モードに入ってそれぞれのモードを完了します。
- ゲーム: すべてのメニュー UI、特別コンテンツ、シングル プレイヤー モード、およびマルチプレイヤー モードを (すべての追加機能を含めて) 動作確認します。 該当する場合、オフライン、オンライン、分割画面、システム リンクの各モードでテストします。 可能な場合は常に、最大数のプレイヤーでマルチプレイヤー ゲーム モードをテストします。
- アプリ: すべての種類のメディア コンテンツを (すべての追加機能を含めて) 動作確認します。
想定される結果
すべてのタイトルは、信頼できる公正で一貫性のある完全な Xbox エンターテインメント体験をユーザーに提供する必要があります。
成功例
- タイトルはすべてのモードで完了できます。
失敗例
- タイトルがある特定のレベルの最後にクラッシュします。
- ユーザーが既に別のモードを完了していた場合、特定のモードを完了できません。
003-03 オプション
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 各オプション設定について、すべての可能な値がテストされるように、テスト チーム全体で各種オプションを分散して設定します。
- この場合、ゲームを実行中に確認できるゲーム設定およびシステム設定内のすべてのオプションを扱う必要があります。
- タイトルのメニュー内のすべての設定およびオプション (明るさ、コントラスト、オーディオ音量、難易度など) がエンドユーザー エクスペリエンスに正しく反映されることを確認します。
- タイトルをいったん終了してから再起動した後、すべての設定とオプションが変わっていないことを確認します。
- テスト チームにタイトルのすべてのエリアのオプション設定を変更してもらい、これらがタイトル全体にわたって正確に反映されることを確認します。
想定される結果
タイトル内のすべてのオプション設定が期待どおりに機能し、タイトルの再起動後にオプションと設定の値が変わっていない必要があります。
成功例
- ゲーム中の言語オプションをオランダ語に設定した場合、タイトルはオランダ語の字幕のみを使用します。
失敗例
- プレイヤーがポーズ メニューで横方向または縦方向のカメラ コントロールを反転させた場合、ゲーム内でカメラ コントロールが変化しません。
- ゲームプレイの間に設定したオプションの値は、タイトルを終了して再起動すると既定値にリセットされます。
003-04 言語サポート
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 本体の言語設定に移動し、言語を、使用している本体ロケールのものに合わせて設定します。
- 順に言語を設定して、ゲームが正しく起動し、ゲームでサポートされる言語ごとに正しくローカライズ版が表示されることを確認します。
- タイトル内の進行に不可欠で、ゲームに重要なすべてのテキストが判読できることを確認します。
想定される結果
タイトルは、すべての言語設定で正しく起動し、ゲームで対応しているすべての言語のローカライズ版が正しく表示される必要があります。 対応言語のテキストが表示される場所で、ディスプレイ設定に関係なくテキストが読み取り可能である必要があります。
成功例
- すべてのローカライズ版がすべての言語で正しく表示されます。
- 対応していない言語に本体を設定してタイトルを起動すると、英語のテキストのみが表示されます。
失敗例
- ドイツ語ローカライズ版がフランス語で表示されます。
- 本体をドイツ語に設定すると、重大なローカライズの問題が見つかる。
- 対応していない言語に本体を設定してタイトルを起動すると、テキストが表示されないか、または NULL 文字が表示されます。
003-05 ナビゲーション
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- コントローラーですべてのメニュー画面とオプション画面 (フロントエンド、ゲーム内、およびその他のエリア) に移動し、すべてのナビゲーション ボタンが期待どおりに機能することを確認します。 いずれかのメニュー UI でボタンのラベルまたはコマンド プロンプトが表示される場合は、各コマンドを正しく発行できることを確認します。
- ナチュラル ユーザー インターフェイス (NUI) に対応していて、センサーが接続されて有効になっている場合は、ナチュラル ユーザー インターフェイス (NUI) を使用して手順 [3] を繰り返します。
- 音声ユーザー インターフェイス (VUI) に対応していて、センサーが接続されて有効になっている場合は、音声ユーザー インターフェイス (VUI) を使用して手順 [3] を繰り返します。 既定のコマンド以外の追加の VUI コマンドを使用できる場合は、対応しているすべての言語ですべての VUI コマンドが正確であることを確認します。
想定される結果
ナビゲーション コマンドが期待どおりに機能する必要があります。
成功例
- タイトルのすべてのエリアに期待どおりに移動できます。
失敗例
- 特定のメニューに入るときに、コントローラーのボタンに関連付けられたイメージが表示されますが、それを押しても機能しません。
003-07 ランキング
テスト手順
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 本体 A および B: 互いにフレンドであるプロフィールにサインインします。
- 本体 A: ランキング アップロードが可能なタイトルの画面に移動します (タイトルがランキングに対応している場合のみ)。
- テスターは、ゲーム中ランキングとシステムに表示されるランキングの両方を確認する必要があります。
- 必要な最小要件を満たし、ランキングにアップロードするためのすべての手順を実行します。
- 本体 A: スコアをアップロードした後、統計がランキングに正しくアップロードされていることを確認します。また、付属のフィルターを使用してこれらの統計を並べ替えできることを確認します。
- 本体 B: ランキング メニューに移動し、本体 A の統計がランキングに正しくアップロードされていることを確認します。また、付属のフィルターを使用して、これらの統計を並べ替えできることを確認します。
- すべてのゲーム モードで、手順 2 ~ 7 を繰り返します。
- 本体 A および B: Xbox Live 経由で競い合いを目的とした協力プレイが実行できる場合は、各ゲーム モードで手順 [2] から [7] を繰り返します。
- 複数の Xbox Live プロフィールを使用して、単一の本体からマルチプレイヤーの分割画面ゲームプレイが実行できる場合は、次のいずれかのようになることを確認します。
- ユーザーが各ランキングにアップロードできる
- 少なくとも、主要プロフィールがスコアを各ランキングにアップロードできる。
- 両方のユーザーがランキングにスコアをアップロードできることをタイトルが示している場合は、各参加者のスコアが正しく登録されている
想定される結果
プレイヤーは、使用できるすべてのランキングに統計をアップロードでき、付属するフィルターを使用してランキングの並べ替えができる必要があります。
成功例
- すべてのランキングに正常にアップロードできます。
失敗例
- ランキング A からランキング B に移動中にゲームが応答を停止します。
- ユーザーは特定のランキングにアップロードできません。
003-08 フレンド数が少ない場合と多い場合
テスト手順
- Xbox プロフィールにサインインします。
- 100 人のフレンドが登録されているプロフィールを使用してサインインします。
- タイトルを起動します。
- 次の操作を実行します (適用可能な場合)。
a. 利用可能なすべてのランキングを表示し、すべてのフィルター オプションを使用します。 b. フレンドのゲーマー カードを表示します。 c. フレンドのリッチプレゼンス情報を表示します。 d. フレンドをゲーム セッションに招待し、完了するまでプレイします。 - フレンドが登録されていない (フレンドが 0 人) アカウントを使用して、手順 [4] を繰り返します (サポートされている場合、[Recent Players (最近遊んだプレイヤー)] リストを使用して、手順 [4b] から [4d] を確認します)。
- 100 人を超えるフレンドを持つプロファイルを使用して、手順 4 を繰り返します。
- 正常に機能しない挙動の事例をすべて報告します。
想定される結果
プロフィールのフレンド リストにあるフレンドの数がタイトル機能に悪影響を及ぼしてはなりません。
成功例
- 最小フレンド数と最大フレンド数の両方がタイトルに悪影響を及ぼしません。
失敗例
- フレンドが登録されていない Xbox Live 対応のプロフィールを使用しているときに、プレイヤーがランキングに参加して [フレンドのみ] フィルターを表示した場合に "エラー。 Xbox Live に接続されていません。" が誤って表示されます。
- フレンドのランキング結果を表示しようとすると、空白のページが表示される。 「フレンド」からフィルターを切り替えると、「ランキング統計の読み取りに失敗しました」のようなエラー メッセージが表示される。
- 100 人を超えるフレンドがいるゲーマー プロフィールを使用しているときにプライベート マッチを作成する場合、マルチプレイヤー モードに入るときにユーザーのフレンド リストにアクセスできない。
003-14 ローカルの複数のプレイヤー
テスト手順
- ゲームが対応する、本体 1 台あたりのプレイヤーの最大数を設定します。
- 本体 A および B: 本体 1 台あたりのプレイヤーの最大数と同じ数のコントローラーを接続します。
- Xbox プロフィールにサインインします。
- タイトルを起動します。
- 本体 A: 両方の本体の最大数のプレイヤーが参加するのに十分な数のスロットを用意し、Xbox Live マルチプレイヤー ゲーム セッションを作成します。
- 本体 B: 本体 A がホストであるマルチプレイヤー ゲーム セッションを見つけます。
- すべてのプレイヤーがマルチプレイヤー ゲーム セッションに参加できることを確認します。
- 本体 A: ゲーム セッションを開始し、次を確認します。
- すべてのプレイヤーがゲームプレイを開始できる。
- 処理落ちが発生しない。
- グラフィック上の問題がない。
- 音の問題がない。
- ゲームプレイに悪影響がない。
- すべてのプレイヤーがゲーム セッションを完了できる。
想定される結果
対応しているすべての Xbox Live ゲーム モードにおいて、本体 1 台あたりの最大プレイヤー数でエラーなしにプレイできる必要があります。
成功例
- 本体 1 台で 2 人のプレイヤーがプレイしているときに、フレーム レートへの悪影響が発生しません。
失敗例
- Xbox Live ゲーム セッションで、参加しているいずれかの本体でプレイヤーの最大数に達すると、グラフィックや音声の再生が遅くなります。
003-16 セーブの互換性
テスト手順
- Xbox プロフィールにサインインします。
- Xbox Live に接続しないでベース タイトルを起動します。
- ゲームプレイを開始し、しばらくプレイしてから各モードでゲームの進行状況を保存します (ゲームの進行状況、オプションや設定、アバターの作成など)。
- ゲームを再起動し、手順 [3] の進行状況のゲーム セーブを読み込み、ゲームを再開できることを確認します。
- Xbox Live に接続し、ベース タイトルのコンテンツ アップデートをダウンロードします。
- コンテンツ アップデートの適用後、手順 [3] で作成した進行状況のセーブ データを読み込み、再開できることを確認します。
- ゲームを再起動し、新しいゲームを開始して、しばらくプレイしてからゲームの進行状況を再度保存します。
- ゲームを終了してアンインストールします。
- Xbox Live に接続しないでベース タイトルを起動します。
- 次のいずれかのようになることを確認します。
- 進行状況が保存されたゲーム セーブをエラーなしに読み込んで再開することができる。
- Xbox Live からコンテンツ アップデートを適用しないと、進行状況のセーブ データを使用できないことを示すメッセージが表示される。
- 手順 [6] で保存したセーブ データは表示されない。
- ゲームを再起動し、Xbox Live に接続してコンテンツ アップデートを受け取ります。
- コンテンツ アップデートの適用後、進行状況のセーブ データを読み込み、再開できることを確認します。
想定される結果
コンテンツ アップデートが適用されているバージョンのタイトルは、コンテンツ アップデートが適用されていないバージョンのタイトルを使用して作成されたセーブ データを正常に読み込めなければなりません。
成功例
- コンテンツ アップデートを適用したバージョンのゲームはすべてのセーブ データを正常に読み込むことができます。
- ベース バージョンを起動して更新後のセーブ データを読み込むと、コンテンツが不足していることがユーザーに通知され、そのセーブ データを読み込めなかった理由が表示されます。または、コンテンツ アップデートを適用したバージョンで作成されたセーブ データは、ベース バージョンでは表示されません。
失敗例
- コンテンツ アップデートを適用したバージョンのタイトルで、手順 [3] で作成したセーブ データを読み込めません。
- コンテンツ アップデートを適用したバージョンのタイトルで実行された保存を読み込むと、タイトルのベース バージョンがクラッシュする。
003-17 ヘッドセットの状態変更
テスト手順
- Xbox オーディオ設定で Windows Sonic for Headphones をヘッドセット形式として有効にします。
- ヘッドホンをコントローラーに接続するか、ヘッドホンを Xbox にワイヤレスで接続します。
- タイトルを起動し、ゲームプレイを開始します。
- オーディオがテレビとヘッドホンから聞こえることを確認します。
- ヘッドホンを外し、オーディオが短時間で戻ることを確認します。
- ヘッドホンをもう一度接続し、オーディオがテレビとヘッドホンから聞こえることを確認します。
- タイトル全体を通じて手順 [5] ~ [6] を繰り返します。
想定される結果
オーディオが引き続き問題なく聞こえます。
成功例
- ヘッドホンが取り外されるたびにオーディオが問題なく戻る。
- ヘッドホンが接続されると、オーディオが問題なく戻る。
失敗例
- ヘッドセットの状態が変更されると、オーディオが聞こえなくなる。
- ヘッドセットの状態が変更されると、オーディオが歪んで聞こえる、または破損します。
参照: Xbox One ソフトウェア開発キットと Microsoft Game Development Kit オーディオ API の比較
003-18 一時停止後のヘッドセットの状態変更テスト手順
- Xbox オーディオ設定で Windows Sonic for Headphones をヘッドセット形式として有効にします。
- ヘッドホンをコントローラーに接続するか、ヘッドホンを Xbox にワイヤレスで接続します。
- タイトルを起動し、ゲームプレイを開始します。
- オーディオがテレビとヘッドホンから聞こえることを確認します。
- タイトルを自然に一時停止します。
- ヘッドホンを外します。
- タイトルを再開し、オーディオがテレビから聞こえることを確認します。
- ヘッドホンをもう一度接続して、オーディオがテレビとヘッドホンから聞こえることを確認します。
- タイトル全体を通じて手順 [5] ~ [8] を繰り返します。
想定される結果
オーディオが引き続き問題なく聞こえます。
成功例
- ヘッドホンが取り外されるたびにオーディオが問題なく戻る。
- ヘッドホンが接続されるとオーディオが問題なく戻ります。
失敗例
- ヘッドセットの状態が変更されると、オーディオが聞こえなくなる。
- ヘッドセットの状態が変更されると、オーディオが歪んで聞こえる、または破損します。
参照: Xbox One ソフトウェア開発キットと Microsoft Game Development Kit オーディオ API の比較
003-19 コネクト スタンバイ構成後のヘッドセットの状態の変更構成: 次の構成を持つ 1 つのコンソール。
- [設定] -> [サインイン、セキュリティ、パスキー] -> [インスタント サインイン] で自動サインインを有効にします。
- [設定] -> [パワーとスタートアップ] -> [インスタントオン] でインスタントオンを設定します。
テスト手順
- 本体で [Instant-on] (インスタントオン) 設定および [Instant sign-in] (インスタント サインイン) 設定を有効にします (「構成」を参照)。
- ユーザーのホーム本体として設定された本体で、タイトルのライセンスを使用して Xbox プロフィールにサインインします。
- Xbox オーディオ設定で Windows Sonic for Headphones をヘッドセット形式として有効にします。
- ヘッドホンをコントローラーに接続するか、ヘッドホンを Xbox にワイヤレスで接続します。
- タイトルを起動し、ゲームプレイを開始します。
- オーディオがテレビとヘッドホンから聞こえることを確認します。
- 本体をコネクト スタンバイの状態にします。
- ヘッドホンを外します。
- 本体の電源をもう一度入れ、ゲームを再開します。
- オーディオがテレビから聞こえることを確認します。
- ヘッドホンをもう一度接続し、オーディオがテレビとヘッドホンから聞こえることを確認します。
- タイトル全体を通じて手順 [4 ~ 11] を繰り返します。
想定される結果 オーディオが引き続き問題なく聞こえます。
成功例
- ヘッドホンが取り外されるたびにオーディオが問題なく戻る。
- ヘッドホンが接続されるとオーディオが問題なく戻ります。
失敗例
- ヘッドセットの状態が変更されると、オーディオが聞こえなくなる。
- ヘッドセットの状態が変更されると、オーディオが歪んで聞こえる、または破損します。
- * August QFE6 GDK 以前では、タイトルがコネクト スタンバイからの Quick Resume 後に特定のシステム通知を受信しないという既知の問題があります。 オーディオの場合、これは重要なオーディオ クライアントの通知を受信しないことを意味します。 June QFE9 GDK 以降または August QFE7 GDK 以降に更新してください。
参照: Xbox One ソフトウェア開発キットと Microsoft Game Development Kit オーディオ API の比較