> ## 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.

# Introdução ao empacotamento de títulos para consoles XBOX

> Introdução ao empacotamento de títulos para consoles XBOX

Use as etapas a seguir para criar um pacote XVC que você pode fazer sideload para testes no seu Microsoft Game Development Kit e, em seguida, enviar ao Partner Center para publicação.

## Obter as informações de identidade do produto no Partner Center

Seu pacote faz referência à identidade do produto atribuída ao seu jogo no Partner Center, incluindo sua identidade de editor, PackageFamilyName, MSAAppId e TitleId. Configure seu produto e obtenha essas informações na página **Game Setup | Identity** para uso no seu MicrosoftGame.config.

1. Se ainda não fez isso, [registre-se no programa ID@XBOX](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/pc-dev/tutorials/pc-e2e-guide/e2e-register-id-at-xbox) e [crie uma conta do Partner Center](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/pc-dev/tutorials/pc-e2e-guide/e2e-creating-partnercenter-account).
2. [Crie uma definição inicial de produto](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/pc-dev/tutorials/pc-e2e-guide/e2e-creating-partnercenter-product-definition) para seu jogo no Partner Center.
3. Na página **Game Setup | Identity** do seu produto, encontre os valores de identidade listados acima.

## Criar o arquivo MicrosoftGame.config na pasta raiz junto com o restante do conteúdo do jogo

Um arquivo XML MicrosoftGame.config de exemplo está incluído mais adiante neste artigo. Use esse exemplo como referência junto com o [Editor do MicrosoftGame.config](/pt-BR/build/core-features/common/game-config/MicrosoftGameConfig-Editor), que pode simplificar a criação do seu arquivo .config e sincronizar automaticamente os valores de ID e nome do seu projeto no Partner Center.

## Criar os ícones para exibição no shell e nos pacotes da Microsoft Store

Para cada imagem listada no exemplo de MicrosoftGame.config a seguir, coloque um arquivo correspondente na pasta raiz do seu jogo, dimensionado para o tamanho especificado. Como alternativa, você pode colocar os ativos de imagem em um subdiretório e ajustar os caminhos dos ícones de `ShellVisuals` de acordo. O [Editor do MicrosoftGame.config](/pt-BR/build/core-features/common/game-config/MicrosoftGameConfig-Editor) oferece a capacidade de gerar essas imagens para você a partir de uma única imagem de origem.

## Instalar o Microsoft Game Development Kit (GDK) (inclui a ferramenta de empacotamento makepkg.exe)

Por padrão, os prompts de comando do Microsoft Game Development Kit (GDK) ficam nesta pasta: `C:\Program Files (x86)\Microsoft GDK\Command Prompts`

## Criar o arquivo de mapeamento de layout de empacotamento

Abra um prompt de comando do Microsoft Game Development Kit (GDK) na pasta que contém uma única pasta com todo o conteúdo do seu jogo e execute o seguinte comando:

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

## Criar o pacote

### Como criar o pacote

Siga estas etapas para criar um pacote criptografado com `/lk`:

1. Uma única vez: execute `makepkg genkey /ekb SECRET_KEY.lekb` para criar o arquivo `SECRET_KEY.lekb`. Esse arquivo é o Local Escrowed Key Blob (LEKB), que armazena a chave de conteúdo estável que criptografa seu pacote. Guarde-o em um local seguro, com acesso restrito a quem precisa dele. Em uma configuração ideal, somente as máquinas e contas oficiais de build devem ter acesso a ele.
2. Criação do pacote: execute `makepkg pack /lk SECRET_KEY.lekb /f layout.xml /d <Your_Game_Folder_Name> /pd <Output_Folder_Name>`. Esse comando cria um pacote criptografado usando a chave armazenada no arquivo SECRET\_KEY.lekb.

### Observações importantes sobre a criptografia de pacotes

A opção `/lk` do `makepkg` criptografa o pacote usando uma chave estável (sempre a mesma) que o comando `makepkg genkey` cria. Além do pacote do seu título, o `makepkg /lk` gera arquivos nomeados no formato *PackageFullName\_licenseName\_GUID.EKB* e *PackageFullName\_licenseName\_GUID.CEKB*. (Observe o uso do caractere de sublinhado (\_).)

Use a criptografia `/lk` para testes em kits de desenvolvimento e para envio no console. Ela oferece estes benefícios em comparação com a criptografia de teste (`/lt`) e a criptografia de envio (`/l`):

1. O `packageutil compare` pode gerar estimativas corretas do tamanho da atualização (ao contrário de `/l`).
2. Ela permite o upload delta seguro para o Partner Center usando o mesmo algoritmo que os consoles e PCs usam para baixar atualizações de conteúdo.
3. Você pode instalá-lo em devkits (ao contrário de `/l`).
4. Ela usa material de chave de criptografia seguro, e você só pode descriptografá-lo em ambientes específicos (ao contrário de `/lt`).

## Testar a instalação do pacote

Use o seguinte comando para testar a instalação do pacote:

`xbapp install <Your_Package>`

Se o seu pacote usa recursos do Intelligent Delivery, use a opção `/i` para invocar a interface do usuário interativa do shell e escolher quais recursos do pacote instalar, para testar a experiência do usuário final no varejo.

`xbapp install /i <Your_Package>`

### Observações importantes sobre a instalação de pacotes

O `xbapp install`  instala automaticamente o arquivo CEKB necessário para carregar o pacote em um devkit XBOX. Se você estiver testando um cenário de instalação diferente da instalação baseada em ferramentas (disco de jogo, armazenamento externo, transferência de console para console), o comando `xbapp installkey`  pode ser usado para instalar somente o arquivo CEKB. Consulte [xbapp.exe](/pt-BR/tools/tools-console/commandlinetools/xbapp) para obter mais detalhes.

<Info>
  Arquivos LEKB gerados antes do GDK de abril de 2021 não criam um arquivo CEKB. Para usar o novo recurso de sideload em devkits, o arquivo LEKB deve ser recriado com as ferramentas do GDK de abril de 2021 ou posterior.
</Info>

### Se você planeja criar discos para o seu pacote, consulte os artigos a seguir

[Criando discos de compilação de teste](/pt-BR/build/core-features/common/packaging/creating-test-compilation-discs) [Criando discos de teste entre gerações](/pt-BR/build/core-features/common/packaging/creating-cross-gen-test-discs)

## Enviar o pacote ao Microsoft Partner Center

O pacote que você criou usando o comando makepkg.exe anterior pode ser usado tanto para testes quanto para envio, pois o sinalizador `/lk` foi usado para criptografar o pacote. Você também se beneficiará do upload delta ao carregar esse pacote. Os arquivos XVC e EKB são carregados no Partner Center normalmente. Os arquivos LEKB e CEKB não serão carregados.

## MicrosoftGame.config de exemplo

Crie um arquivo chamado MicrosoftGame.config. Use o conteúdo a seguir no diretório raiz do conteúdo do seu jogo e, em seguida, remova os comentários dos itens de que você não precisa. Para obter mais informações, consulte a [página de referência do MicrosoftGame.config](/pt-BR/reference/system/microsoftgameconfig/microsoftgameconfig-schema).

Embora você possa criar o MicrosoftGame.config manualmente, a melhor maneira de criar esse arquivo é usando o [Editor do MicrosoftGame.config](/pt-BR/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>
```

## Artigos relacionados sobre empacotamento

[Introdução ao empacotamento de títulos para PC](/pt-BR/build/core-features/common/packaging/overviews/packaging-getting-started-for-PC) [MicrosoftGame.Config](/pt-BR/build/core-features/common/game-config/MicrosoftGameConfig-toc) [Implantando seu título no seu dev kit XBOX](/pt-BR/home/setup-install/concepts/deployment)


## Related topics

- [Compile e execute seu primeiro título de console com o GDKX](/pt-BR/home/build-first-title/first-console-title-walkthrough.md)
- [Histórico de alterações dos Requisitos do XBOX e casos de teste](/pt-BR/publishing/certification/xr-change-history.md)
- [Visão geral de portabilidade](/pt-BR/paths/porting/overview.md)
- [Documentação de desenvolvimento de jogos XBOX](/pt-BR/index.md)
- [Requisitos XBOX testados na certificação para jogos de console XBOX](/pt-BR/publishing/certification/console-cert-tested-requirements.md)
