> ## 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 One 家族主机和 XBOX Series 主机上测试你的游戏。

<Note>这些说明仅用于测试目的。对于零售场景，此数据会根据合作伙伴中心中的元数据自动配置。创建编译光盘流程中所选选项用于控制诸如安装顺序和自动播放等设置。在向 Microsoft 提交游戏进行接收时，你无需提交测试元数据或 JSON 配置文件。</Note>

可以创建以下类型的测试光盘。

* [Smart Delivery 光盘](#ID5RX)
* [多产品光盘](#ID4Q3R)

<a id="ID5RX" />

## 创建 Smart Delivery 光盘

Smart Delivery 光盘包含一个用于 XBOX One 家族主机的包和一个用于 XBOX Series 主机的包。这两个包共用一个可对两者生效的许可证。它们在合作伙伴中心中属于同一产品。插入主机时，会安装适合该主机类型的包，并在可用时启动任何相应的内容更新。

<Note>如果你希望通过在光盘上使用独立的合作伙伴中心产品来为每个主机世代分别创建游戏包，则称为多产品光盘。有关详细信息，请参阅本主题中的[多产品光盘](#ID4Q3R)一节。</Note>

### 创建并测试 Smart Delivery 光盘

要创建并测试 Smart Delivery 光盘，请按本主题以下各节中所述创建 *catalog.js* 元数据文件和光盘布局。

* [创建光盘布局](#ID4EBG)
* [Catalog.js](#ID4ECM)

<a id="ID4EBG" />

### 创建光盘布局

创建如下所示的光盘布局。

```
- Disc Root
    - Licenses (folder) - (Not needed for Xbox One ERA Development Kits. Use XVCs that are created with the /LT flag or /LK flag.)
        License0.xml (file) - (Not needed for Xbox One ERA dev kits. Use XVCs that are created with the /LT or /LK flag.)
    - MSXC (folder)
        - Package_x.xvc (file)
        - Package_xs.xvc (file)
        - Metadata (folder)
            - catalog.js (file)
            - Package_x.xvc (folder)
                - Package images (files)
            
```

*Package\_x.xvc* 和 *Package\_xs.xvc* 是按主机世代划分的包。MakePkg 工具会为包添加后缀：XBOX One 包为 `_x`，XBOX Series X|S 世代包为 `_xs`。在 *catalog.js* 文件中，其中一个包被声明为另一个包的“variant”。在上例中，*Package\_xs.xvc* 是 *Package\_x.xvc* 的变体。

各目录包含以下内容：

* **Licenses** 包含游戏的许可证文件。XBOX One ERA 开发工具包不需要此信息。请使用带 `/LT` 或 `/LK` 标志创建的 XVC，之后可省略这些文件。

<Info>如果你使用带 `/LK` 标志创建的包，则需要使用 **xbapp installkey** 将 CEKB 文件安装到目标主机，以便解密光盘上的 /LK 包。有关详细信息，请参阅 [xbapp.exe（NDA 主题）](/tools/tools-console/commandlinetools/xbapp)。</Info>

* **MSXC** 包含已打包的游戏及 XBOX shell 使用的元数据。

* **Metadata** 包含 shell 用于光盘上的游戏以及游戏包的元数据。

* **Package\_x.xvc** 包含 shell 用于该游戏的图像。名称必须与 MSXC 中的游戏包文件匹配。对于作为其他包变体的包，无需提供图像。

<a id="ID4ECM" />

### Catalog.js

在 Metadata 文件夹中，创建名为 *catalog.js* 的文件。编辑此文件以反映其他文件夹中包和图像的名称。
<Note>此文件必须使用 UTF-8 编码。我们建议使用网页上的 JSON 校验工具。为确保 JSON 校验有效，请将其复制到文本编辑器中，然后以 UTF-8 格式保存文件。</Note>

#### Smart Delivery 产品示例

以下是使用 Smart Delivery 的单个产品的 *catalog.js* 文件示例，含内联注释。

```js theme={null}
{
    "version": "4.0",                                               // Don't adjust this value.
    "packages": [                                                   // This is an array of packages.
    {
        "packageName": "Package_x.xvc",                             // Match your package name in MSXC\<package name> to the package name in MSXC\Metadata\<package name>.
        "generation": "8",                                        // Enter "8" for Xbox One packages, or enter "9" for Xbox Series X&#124;S generation packages.
        "oneStoreProductId": "BX38WRFV50MJ",                        // Partner Center Product ID for the package.
        "contentId": "2b05043b-4043-4ba0-80ed-fd4811c4b333",        // Content ID for your package. Match this to the Content ID of the package file.
        "titleId": "037C3A1D",                                      // Title ID for your package.
        "variants" : [
            {
                "generation": "9",                                  // The console generation for this variant of the package. Enter "8" for Xbox One packages, or enter "9" for Xbox Series X&#124;S generation packages.
                "packageName": "Package_xs.xvc"                     // The package name for this variant. All packages must have the same Content ID or Product ID.
            }
        ],
        "titles": [
          {
              "locale": "default",
              "title": "Killer Instinct"                            // Package title.
          }
        ],
        "images": [
          {
              "size": "100x100",
              "image": "100x100_1.png"                              // Match the file names to MSXC\Metadata\<Package_x>\.
          },
          {
              "size": "208x208",
              "image": "208x208_1.png"
          },
          {
              "size": "480x480",
              "image": "480x480_1.png"
          }
        ],
        "ratings": [                                                // This ratings information is only for example purposes.
          {                                                         // This is automatically generated for your discs
              "system": "OFLC",                                     // by using the information that's published in Partner Center.
              "value": "M"
          },
          {
              "system": "DJCTQ",
              "value": "14"
          },
          {
              "system": "PCBP",
              "value": "Unrated"
          },
          {
              "system": "USK",
              "value": "16"
          },
          {
              "system": "ESRB",
              "value": "T"
          },
          {
              "system": "CERO",
              "value": "Unrated"
          },
          {
              "system": "CSRR",
              "value": "Unrated"
          },
          {
              "system": "COB",
              "value": "M"
          },
          {
              "system": "GRB",
              "value": "Unrated"
          },
          {
              "system": "PEGI",
              "value": "16"
          },
          {
              "system": "PEGIPortugal",
              "value": "Unrated"
          }
        ],
        "type": "Game"
    }
  ]
}  
```

<a id="ID4Q3R" />

## 多产品光盘

多产品光盘包含一个用于 XBOX One 主机的包和一个用于 XBOX Series X|S 主机的包。光盘为每个包分别包含一个许可证。这些包来自合作伙伴中心中不同的产品，通过合作伙伴中心中配置的显式世代关系相互关联。当它们作为数字捆绑包出售，或通过光盘安装到主机时，默认只安装其中一个包。将光盘插入主机时，会安装适合该主机类型的包，并在可用时启动任何相应的内容更新。

<Note>如果你希望使用单个合作伙伴中心产品为每个主机世代分别创建包，则称为跨代 Smart Delivery 光盘。有关详细信息，请参阅本主题的 [Smart Delivery](#ID5RX) 一节。</Note>

#### 多产品光盘示例

以下是多产品光盘的 *catalog.js* 文件示例，含内联注释。

```js theme={null}
{
  "version": "4.0",                                                 // Don't change this value.
  "bundle": {
    "oneStoreProductId": "9P436MXJ71GV",                            // Replace with the game bundle Product ID.
    "launchPackage": "Package1_x.xvc",                              // This is the package that is launched when the game disc is inserted into the console.
    "titles": [
      {
        "locale": "default",                                        
        "title": "Game Title"                                       // Replace with the game bundle name.
      }
    ],
    "images": [
      {
        "size": "100x100",
        "image": "100x100_1.png"                                    // Match this to the image file names that are in MSXC\Metadata\Bundle\.
      },
      {
        "size": "208x208",
        "image": "208x208_1.png"
      },
      {
        "size": "480x480",
        "image": "480x480_1.png"
      }
    ]
  },
  "siblings": [                                                     // The sibling entry that sets these two packages as
    [                                                               // related. The correct package for the console
      "Package1_x.xvc",                                             // type is chosen.
      "Package2_xs.xvc"                                             // Note: the sibling relationships are an array
    ]                                                               // of arrays.
  ],
  "packages": [
    {
      "packageName": "Package1_x.xvc",                              // Match this to the folder name that's in MSXC\Metadata\<folder name>.
      "generation": "8",                                            // Xbox One family generation that's used for Xbox One and Xbox Series X&#124;S consoles.
      "oneStoreProductId": "BX38WRFV50MJ",                          // Replace with Package 1 Product ID.
      "contentId": "ace6ef3b-0c5b-4f17-a651-390e75169d5c",          // Replace with Package 1 Content ID. Match the ID to the Content ID of the package file.
      "titles": [
        {
          "locale": "default",
          "title": "Game Title Xbox One Edition"
        }
      ],
      "images": [
        {
          "size": "100x100",
          "image": "100x100_1.png"                                  // Match file names that are in MSXC\Metadata\Package1_x.xvc\.
        },
        {
          "size": "208x208",
          "image": "208x208_1.png"
        },
        {
          "size": "480x480",
          "image": "480x480_1.png"
        }
      ],
      "ratings": [
        {
          "system": "ESRB",
          "value": "E"
        }
      ],
      "type": "Game"
    },
    {
      "packageName": "Package2_xs.xvc",
      "generation": "9",
      "oneStoreProductId": "BVC818MXZ6KG",
      "contentId": "5519355c-bff9-40b4-92bb-b5473fd9c577",
      "titleId": "35c8f637",
      "titles": [
        {
          "locale": "default",
          "title": "Game Title Xbox Series generation edition"
        }
      ],
      "images": [
        {
          "size": "100x100",
          "image": "100x100_1.png"
        },
        {
          "size": "208x208",
          "image": "208x208_1.png"
        },
        {
          "size": "480x480",
          "image": "480x480_1.png"
        }
      ],
      "ratings": [
        {
          "system": "ESRB",
          "value": "E"
        }
      ],
      "type": "Game"
    }
  ]
}  
```

## 另请参阅

[创建光盘](/build/core-features/common/packaging/creating-discs)

[创建测试光盘](/build/core-features/common/packaging/creating-test-compilation-discs)

[多光盘功能](/build/core-features/common/packaging/packaging-multi-disc)


## Related topics

- [光盘概述](/zh-CN/publishing/game-publishing/concepts/discs-overview.md)
- [创建测试光盘](/zh-CN/build/core-features/common/packaging/creating-test-compilation-discs.md)
- [创建光盘](/zh-CN/build/core-features/common/packaging/creating-discs.md)
- [XBOX 主机游戏打包入门](/zh-CN/build/core-features/common/packaging/overviews/packaging-getting-started-for-console.md)
- [Dual SKU 跨世代游戏](/zh-CN/build/console-features/cross-gen/cross-gen-dual-sku.md)
