Cenários e APIs relevantes
Para testar as APIs a seguir, você precisa configurar seu ambiente de desenvolvimento conforme descrito neste artigo:Contexto
Em cenários de varejo, um jogo deve ter uma licença para ser jogado. Uma solicitação de licença verifica se há um disco instalado ou envia uma solicitação aos serviços da Microsoft. Uma licença é concedida se a conta tiver direito ao produto por meio de uma compra direta ou satisfatória (por exemplo, de uma assinatura ou pacote). As licenças também podem ser concedidas em cenários de compartilhamento. Para obter mais informações sobre compartilhamento, confira Modelo de compartilhamento de produtos para jogos. Os cenários de desenvolvimento não seguem esse comportamento por padrão. Esses cenários incluem:- Builds soltos (implantação F5 do Visual Studio, xbapp/wdapp register/deploy)
- Builds de pacote locais (makepkg, xbapp/wdapp install)
XStore ainda funciona, mas podem ocorrer resultados inesperados ao licenciar jogos ou duráveis.
Para configurar um build para se comportar como licenciável, aplique os valores de identidade corretos ao MicrosoftGameConfig (descrito em Habilitar o desenvolvimento e os testes do XStore).
Em seguida, as seguintes etapas devem ser executadas:
- Anotar a ID de conteúdo específica do jogo ou da DLC
- Aplicar a ID de conteúdo ao build, conforme apropriado para o tipo de build
- Somente console: anotar e aplicar o EKBID ao build
Obter o ContentID
Você pode encontrar o ContentID na página Packages depois de selecionar Show details:
A ID de conteúdo das versões de sandbox e de varejo pode ser diferente. Se você instalar uma versão de varejo do jogo, o produto será associado a uma ID de conteúdo diferente daquela de que você precisa para a sandbox. A ID de conteúdo também é diferente se houver pacotes regionais envolvidos.
Console
Encontre a ID de conteúdo de um pacote instalado executandoxbapp list /d (ou xbapp listdlc /d para DLC) no Gaming Command Prompt.
PC
Encontre a ID de conteúdo de um pacote instalado executandowdapp list /d (ou wdapp listdlc /d para DLC) no Gaming Command Prompt. Para pacotes instalados pela loja, use o sinalizador /includeStore.
Aplicar a ID de conteúdo ao build
Para builds soltos, adicione a seguinte seção ao MicrosoftGameConfig:makepkg. Por exemplo:
/contentid, o processo de instalação aplicará qualquer ContentIdOverride disponível no MicrosoftGameConfig quando você instalar a partir de uma origem local.
Os builds instalados pela Store (sandbox ou varejo) sempre têm a ID de conteúdo correta (conforme exibida no Partner Center).
Aplicar o EKBID ao build (aplicável somente ao console)
Defina o EKBID (Escrow Key Blob ID) para tornar o build licenciável no console. Na maioria dos cenários, ele simplesmente precisa ser substituído do valor de teste padrão de apenas zeros ou 33EC8436-5A0E-4F0D-B1CE-3F29C3955039. Substitua o EKBID com o seguinte comando:wdapp setekbid).
Avaliações e EKBID
Para avaliações, o EKBID real deve ser aplicado. Para encontrar o EKBID usado pelo jogo, executexbapp list /d para um build instalado pela Store. Para obter mais informações, confira Implementando avaliações para o seu jogo.
Garantir que a conta de teste tenha direito ao produto na sandbox
Para produtos publicados tanto na sandbox quanto no varejo, você pode usar o DevEntitlementTool para consultar e adquirir direitos para uma conta de teste. A melhor maneira de obter um direito é ir diretamente à página do produto na Store por meio da ativação de protocolo, pois produtos publicados somente na sandbox podem não aparecer nas pesquisas. O console de desenvolvimento ou o PC deve estar configurado para a sandbox em que o jogo está publicado. Para obter mais informações, confira a documentação de visão geral de Sandboxes dos XBOX services e, para PC, confira Trocando de sandbox corretamente para operações da loja. Depois de entrar corretamente, use o link de protocolo da loja para acessar a página da Store: No console: Use o Gaming Command Prompt:xbapp launch ms-windows-store://pdp/?productid=<storeID>
No PC:
Na caixa Executar (⊞Win +R) ou em um navegador da Web
msxbox://game/?productId=<storeID> (para mostrar o produto no aplicativo XBOX)
Ou
ms-windows-store://pdp/?productid=<storeID> (para mostrar o produto na Microsoft Store)
Na página da Store, selecione Buy ou Get para adquirir uma licença do produto para sua conta de teste. O download e a instalação de jogos e DLC devem começar automaticamente. Se você planeja iterar com builds locais, pode cancelar a operação.
Você deve adquirir um direito para cada conta que executa o build e espera que as APIs XStore relacionadas a licenças funcionem.
DLC
Para que a DLC local seja licenciável, a ID de conteúdo deve ser aplicada aomakepkg e xbapp setekbid deve ser definido com algo diferente dos valores padrão. Apenas a DLC precisa ser configurada para licenciamento, não o jogo base.
As substituições de licença são relevantes para as seguintes APIs quando chamadas com um durável com pacote:
- XStoreAcquireLicenseForDurablesAsync
- XStoreAcquireLicenseForPackageAsync
- XStoreCanAcquireLicenseForPackageAsync
- XStoreCanAcquireLicenseForStoreIdAsync
- XStoreRegisterPackageLicenseLost
Documentação de referência da API
- XStore (conteúdo da API)
- Funções
- XStoreQueryGameLicenseAsync
- XStoreQueryLicenseTokenAsync
- XStoreQueryAddOnLicensesAsync
- XStoreRegisterGameLicenseChanged
- XStoreAcquireLicenseForDurablesAsync
- XStoreAcquireLicenseForPackageAsync
- XStoreCanAcquireLicenseForPackageAsync
- XStoreCanAcquireLicenseForStoreIdAsync
- XStoreRegisterPackageLicenseLost
- Funções
Confira também
Visão geral do CommerceHabilitar o desenvolvimento e os testes do XStore
Trocando de sandbox corretamente para operações da Store
Referência da API XStore
