> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XBOX コンソール向けタイトルパッケージングの使い始め

> XBOX コンソール向けタイトルパッケージングの使い始め

以下の手順を使用して、Microsoft Game Development Kit でテスト用にサイドロードし、その後 Partner Center に提出して公開できる XVC パッケージを作成します。

## Partner Center から製品 ID 情報を取得する

パッケージは、パブリッシャー ID、PackageFamilyName、MSAAppId、および TitleId を含む、Partner Center でゲームに割り当てられた製品 ID を参照します。製品をセットアップし、MicrosoftGame.config で使用するために、**Game Setup | Identity** ページからこの情報を取得します。

1. まだの場合は、[ID@XBOX プログラムに登録](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/pc-dev/tutorials/pc-e2e-guide/e2e-register-id-at-xbox) し、[Partner Center アカウントを作成](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/pc-dev/tutorials/pc-e2e-guide/e2e-creating-partnercenter-account) します。
2. Partner Center でゲームの [初期製品定義を作成](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/pc-dev/tutorials/pc-e2e-guide/e2e-creating-partnercenter-product-definition) します。
3. 製品の **Game Setup | Identity** ページで、上記に記載された ID 値を見つけます。

## 残りのゲームコンテンツと共にルートフォルダーに MicrosoftGame.config ファイルを作成する

サンプルの MicrosoftGame.config XML ファイルは、この記事の後半に含まれています。このサンプルは、.config ファイルの作成を効率化し、Partner Center プロジェクトから ID と名前の値を自動的に同期できる [MicrosoftGame.config Editor](/build/core-features/common/game-config/MicrosoftGameConfig-Editor) と共に参照として使用してください。

## シェルと Microsoft Store パッケージに表示するアイコンを作成する

以下の MicrosoftGame.config サンプルにリストされている各画像について、指定されたサイズにスケーリングされた対応するファイルをゲームのルートフォルダーに配置します。あるいは、画像アセットをサブディレクトリに配置し、`ShellVisuals` のアイコンパスをそれに合わせて調整することもできます。[MicrosoftGame.config Editor](/build/core-features/common/game-config/MicrosoftGameConfig-Editor) では、単一のソース画像を入力としてこれらの画像を生成できます。

## Microsoft Game Development Kit (GDK) (makepkg.exe パッケージングツールを含む) をインストールする

既定では、Microsoft Game Development Kit (GDK) コマンドプロンプトは次のフォルダーにあります: `C:\Program Files (x86)\Microsoft GDK\Command Prompts`

## パッケージレイアウトマッピングファイルを作成する

すべてのゲームコンテンツを含む単一のフォルダーがあるフォルダーで Microsoft Game Development Kit (GDK) コマンドプロンプトを開き、次のコマンドを実行します。

`makepkg genmap /f layout.xml /d <Your_Game_Folder>`

## パッケージを作成する

### パッケージの作成方法

`/lk` 暗号化パッケージを作成するには、以下の手順に従います。

1. 1 回: `makepkg genkey /ekb SECRET_KEY.lekb` を実行して `SECRET_KEY.lekb` ファイルを作成します。このファイルは、パッケージを暗号化する安定したコンテンツキーを保存する Local Escrowed Key Blob (LEKB) です。必要な人だけがアクセスできる安全な場所に保存してください。理想的なセットアップでは、公式ビルドマシンとアカウントのみがそれにアクセスできるべきです。
2. パッケージ作成: `makepkg pack /lk SECRET_KEY.lekb /f layout.xml /d <Your_Game_Folder_Name> /pd <Output_Folder_Name>` を実行します。このコマンドは、SECRET\_KEY.lekb ファイルに保存されているキーを使用して暗号化されたパッケージを作成します。

### パッケージ暗号化に関する重要な注意事項

`makepkg` の `/lk` スイッチは、`makepkg genkey` コマンドが作成する安定した (常に同じ) キーを使用してパッケージを暗号化します。タイトルパッケージに加えて、`makepkg /lk` は *PackageFullName\_licenseName\_GUID.EKB* および *PackageFullName\_licenseName\_GUID.CEKB* 形式のファイルを生成します。(アンダースコア (\_) 文字の使用に注意してください。)

コンソールでの開発キットテストおよび提出には `/lk` 暗号化を使用します。テスト暗号化 (`/lt`) および提出暗号化 (`/l`) と比較して次の利点があります。

1. `packageutil compare` は正確な更新サイズ推定を生成できます (`/l` と異なり)。
2. コンソールと PC がコンテンツ更新をダウンロードするのと同じアルゴリズムを使用して、Partner Center への安全なデルタアップロードを可能にします。
3. 開発キットにインストールできます (`/l` と異なり)。
4. 安全な暗号化キーマテリアルを使用し、特定の環境でのみ復号化できます (`/lt` と異なり)。

## パッケージインストールをテストする

次のコマンドを使用してパッケージインストールをテストします。

`xbapp install <Your_Package>`

パッケージが Intelligent Delivery Feature を使用している場合、`/i` オプションを使用して、小売のエンドユーザーエクスペリエンスをテストするためにどのパッケージ Feature をインストールするかを選択するインタラクティブシェル UI を呼び出します。

`xbapp install /i <Your_Package>`

### パッケージインストールに関する重要な注意事項

`xbapp install` は、パッケージを XBOX 開発キットにロードするために必要な CEKB ファイルを自動的にインストールします。ツールベースのインストール (ゲームディスク、外部ストレージ、コンソールからコンソールへの転送) 以外のインストールシナリオをテストしている場合は、CEKB ファイルのみをインストールするために `xbapp installkey` コマンドを使用できます。詳細については [xbapp.exe](/tools/tools-console/commandlinetools/xbapp) を参照してください。

<Info>
  2021 年 4 月の GDK より前に生成された LEKB ファイルは CEKB ファイルを作成しません。新しい開発キットサイドロード機能を使用するには、LEKB ファイルを 2021 年 4 月以降の GDK ツールで再作成する必要があります。
</Info>

### パッケージのディスクを作成する予定の場合は、次の記事を参照してください

[テストコンピレーションディスクの作成](/build/core-features/common/packaging/creating-test-compilation-discs) [クロスジェネレーションテストディスクの作成](/build/core-features/common/packaging/creating-cross-gen-test-discs)

## パッケージを Microsoft Partner Center に提出する

以前の makepkg.exe コマンドを使用して作成したパッケージは、`/lk` フラグが使用されているため、テストと提出の両方に使用できます。また、このパッケージをアップロードする際にデルタアップロードの恩恵も受けます。XVC および EKB ファイルは通常通り Partner Center にアップロードされます。LEKB および CEKB ファイルはアップロードされません。

## サンプル MicrosoftGame.config

MicrosoftGame.config という名前のファイルを作成します。ゲームコンテンツのルートディレクトリで次の内容を使用し、必要のない項目のコメントを削除します。詳細については、[MicrosoftGame.config リファレンスページ](/reference/system/microsoftgameconfig/microsoftgameconfig-schema) を参照してください。

MicrosoftGame.config を手動で作成することもできますが、このファイルを作成する最善の方法は [MicrosoftGame.config Editor](/build/core-features/common/game-config/MicrosoftGameConfig-Editor) を使用することです。

```xml theme={null}
<?xml version="1.0" encoding="utf-8"?>
<Game configVersion="1">
    <!-- Publisher should match the exact value provided in the "Package/Identity/Publisher" field of the Game setup -> Identity section of your product's configuration area in Partner Center.
         Name should match the exact value provided in the "Package/Identity/Name" field of the Game setup -> Identity section of your product's configuration area in Partner Center. -->
    <Identity Name="**REPLACE**"
        Publisher="**REPLACE**"
        Version="1.0.1.0"/>
        <!-- For MSIXVC/MSIXVC2 the fourth digit of the version number is reserved for Microsoft Store use -->

    <!-- These values are found in the Game Setup -> Identity section in your product's configuration area in Partner Center. -->
    <StoreId>**REPLACE WITH STOREID**</StoreId>
    <MSAAppId>**REPLACE WITH MSAAPPID**</MSAAppId>
    <TitleId>**REPLACE WITH TITLEID**</TitleId>

     <!-- Use OverrideDisplayName if you want to display a different title in the shell than the DefaultDisplayName from the ShellVisuals section, or if you need to localize it. 
          Use TargetDeviceFamily to specify what platform your executable is built for (NOTE: Packaging will only allow one TargetDeviceFamily type to be specified to properly build a package. For more information, see the above reference page.) -->
    <ExecutableList>
      <Executable Name="**REPLACE**"
                  Id="Game"
                  OverrideDisplayName="**REPLACE**"
                  TargetDeviceFamily="XboxOne"
                  />
    </ExecutableList>

    <!-- DefaultDisplayName should match the exact value provided in the "Package/Identity/Name" field of the Game setup -> Identity section of your product's configuration area in Partner Center.
         PublisherDisplayName should use the exact value provided in the "Package/Properties/PublisherDisplayName" field of the Game setup -> Identity section of your product's configuration area in Partner Center.-->

    <!-- The following asset sizes apply
         StoreLogo - 100x100
         Square150x150Logo - 150x150
         Square44x44Logo - 44x44
         SplashScreenImage - 1920x1080
    -->
    <ShellVisuals DefaultDisplayName="**REPLACE**" 
                  PublisherDisplayName="**REPLACE**"
                  StoreLogo="StoreLogo.png"
                  Square150x150Logo="Logo.png"
                  Square44x44Logo="SmallLogo.png"
                  Description="**REPLACE**"
                  BackgroundColor="#000040"
                  SplashScreenImage="SplashScreen.png"/>
</Game>
```

## 関連するパッケージング記事

[PC 向けタイトルパッケージングの使い始め](/build/core-features/common/packaging/overviews/packaging-getting-started-for-PC) [MicrosoftGame.Config](/build/core-features/common/game-config/MicrosoftGameConfig-toc) [XBOX 開発キットへのタイトルのデプロイ](/home/setup-install/concepts/deployment)
