MSIXVC2 is generally available starting with the October 2026 Microsoft Game Development Kit (GDK). You can sideload MSIXVC2 packages for testing and submit them to certification for public release.
Some MSIXVC2 features and improvements come through updates to the Gaming Runtime Services and don’t require a GDK update. You automatically receive these enhancements as they become available.
If you’re packaging for XBOX consoles, see Getting started packaging for XBOX consoles. Console games continue to use XVC. The
makepkg tool handles both formats.Before you begin
- Windows 10 version 18362 or later on your development PC.
- October 2026 GDK or later installed. The GDK includes
makepkg.exe.
Starting with the October 2026 GDK, the managed packaging tool is named
makepkg.exe. The legacy MakePkg.exe and the temporary makepkg2.exe name are removed.- Partner Center product You need your publisher identity, package name, and Store ID.
- Developer mode enabled on your target test PC.
- MSIXVC2 developer mode registry key set on any device where you install or run MSIXVC2 packages. See Step 7 for details.
Step 1: Prepare your content
Place all source material for your title in a single directory. Remove any files that the packaging system can’t use or that are unsuitable for shipping in retail packages. Remove the following files if they’re present:- PDB files.
- Any references to other PC game stores, such as assets, binaries, and more.
- Universal Windows Platform (UWP) and Appx “footprint” files, including AppxSignature.p7x and AppxBlockMap.xml.
Step 2: Create your MicrosoftGame.config
Create a MicrosoftGame.config file in the root directory of your game content. This configuration file works with MSIXVC. Your existing MicrosoftGame.config works unchanged with MSIXVC2. You can create this file manually or by using the MicrosoftGame.config Editor, which syncs identity and ID values directly from your Partner Center project. For a sample MicrosoftGame.config file, see Getting started with MSIXVC for PC.Step 3: Identify Visual C/C++ runtime dependencies
Make sure your MicrosoftGame.config lists any Visual C/C++ runtime dependencies or you explicitly copy these dependencies into your package payload. For more information, see Framework package dependencies.Step 4: Create your icons
Place icon files in the root folder of your game content (or a subdirectory), scaled to the sizes specified in your MicrosoftGame.configShellVisuals section. The MicrosoftGame.config Editor can generate these images from a single source image.
Step 5: Generate a layout mapping file (optional)
This step is optional. By default, MSIXVC2 packages all content into a single chunk. You only need a layout mapping file if you want to split content into multiple chunks or add Intelligent Delivery tags. To generate a layout mapping file, open a GDK command prompt and run the following command:Step 6: Create your MSIXVC2 package
Create the package:Step 7: Test your package locally
Enable developer mode on your target PC. Before installing an MSIXVC2 package, set the following registry key on the target device:packageutil:
The
packageutil set command requires the October 2026 GDK or later.This registry key is required until a future GDK release. Without it, MSIXVC2 packages won’t install. Run the command from an elevated (administrator) command prompt.
[drive]:\XboxGames folder. Files are installed in their original form and you can access them directly. This install location is the same location used by MSIXVC packages with Flat File Install.
You can upload the same package that you sideload locally to Partner Center - there’s no separate submission package step.
Step 8: Upload to Partner Center
Publish MSIXVC2 packages to a new branch in Partner Center (for example,
msixvc2). Don’t upload MSIXVC2 packages to the same branch as your existing MSIXVC packages. The two formats aren’t interchangeable within a branch, and reverting a branch from MSIXVC2 back to MSIXVC requires a full upload and download of the package. For more information, see Package branch best practices.Option A: Upload a pre-built package
If you already created a package in Step 6, upload it directly:Option B: Upload from loose files (one-command workflow)
You can combine packaging and uploading into a single command. This command uploads directly from your build output without creating a local package file:Upload options
For the full list of upload options, see Make package (makepkg.exe).
Authentication methods
Theupload command supports multiple authentication methods for different environments.
Example: CI/CD pipeline upload
