Skip to content

Halo Wars 2 Modding

Getting Started

Build your first mod from files extracted with New Arcadia's PKG Tool, then load it in game with Haruspis.

Temporary workflow

This workflow will be deprecated once Forge is released. Deeper custom map work should be done through Cutter.

Estimated time: 30 minutes, though older devices may take longer
Free storage required: approximately 50 GB

This guide walks through the beginner loop for Halo Wars 2 modding:

  1. dump the game files with UWPDumper;
  2. create a clean modding workspace;
  3. unpack PKG archives and convert XMB files;
  4. make a small edit and test it in game;
  5. package the mod and launch it with Haruspis.

What You Need

Halo Wars 2

Install the game and launch it at least once. This also downloads the most recent balance patch.

UWPDumper

Download the latest UWPDumper release. You will use it to access the installed Halo Wars 2 data files.

New Arcadia PKG Tool

New Arcadia's PKG Tool handles Halo Wars 2 package archives and XMB data files.

You will use it to:

  • expand .pkg archives into folders;
  • convert .xmb files into editable .xml and back into .xmb;
  • create new package files.

Haruspis

Haruspis is New Arcadia's public mod manager. You will use it to generate the required CRC32 values and launch the mod.

XML Editor

Most early Halo Wars modding is XML editing. Use Visual Studio Code as your main editor, then install an XML extension for highlighting, formatting, and error markers.

Useful editor features include:

  • line numbers, so you can point to an exact error;
  • search across folders, so you can find a unit, leader, tech, or resource name;
  • XML formatting, so nested tags remain readable;
  • matching-tag highlights, so you can see whether opening and closing tags still line up.

Notepad++ is fine for quick edits, but VS Code is better when searching through extracted folders. Do not use Word, WordPad, rich text editors, or spreadsheet tools for XML files.

Dump The Game

Download UWPDumper from the link above, then launch Halo Wars 2 and start UWPInjector.exe from UWPDumper's x64 folder. Running it as administrator allows it to extract every file, though administrator access is usually not required for the files used in this guide.

UWPDumper process prompt

Enter the process ID for Halo Wars 2 and press Enter.

Selecting the Halo Wars 2 process

UWPDumper will begin extracting the game data. Keep Halo Wars 2 running until extraction finishes.

UWPDumper extraction in progress

UWPDumper opens the extracted folder when it finishes. You can leave the files there, but uninstalling Halo Wars 2 will remove them. Moving the dump to a dedicated workspace makes it easier to keep.

Extracted Halo Wars 2 folder

Set Up The Modding Workspace

Create one location for extracted game files and another for your mod. For example:

text
C:\Users\YourName\Documents\Halo Wars 2 Work\extracted
C:\Users\YourName\Documents\Halo Wars 2 Mods\first_mod

The extracted folder is your reference copy. Only edit files inside the mod folder for this guide. You can move the dumped game folder into extracted to keep everything together.

Optional: apply the current balance patch

Halo Wars 2 keeps a balance patch in its local state. Applying it to your project ensures your mod starts from the game's latest installed data.

The current patch is named cu19_3800485626_oct23_servercerts-cbd28f6ddd464b0288ed21c450394fb0 and can be found under:

text
%localappdata%\Packages\Microsoft.HoganThreshold_8wekyb3d8bbwe\LocalState\GTS\1_11_2931_2_active

Drop the patch .pkg onto the PKG Tool to extract it, then move the extracted files into either your reference folder or your mod folder.

Make Your First Mod

This example increases the number of Marines Captain Cutter starts with.

Copy The Balance Patch

If you completed the optional balance-patch step, open the expanded patch folder:

text
cu19_3800485626_oct23_servercerts-cbd28f6ddd464b0288ed21c450394fb0_expanded
  data

Copy its data folder into your project:

text
first_mod
  data

Convert leaders.xml.xmb

The balance patch does not include the leaders.xml needed for this edit, so copy it from the game dump:

text
DUMP\data\db\lists\leaders.xml.xmb

The .xmb file is binary and cannot be edited directly in a text editor. Drag leaders.xml.xmb onto the PKG Tool to create an editable XML file.

Converting leaders.xml.xmb with the PKG Tool

Move the converted file into your mod project:

text
first_mod\data\db\lists\leaders.xml

Add Cutter's Marines

Open leaders.xml and search for Cutter:

xml
<Leader Name="Cutter"

Inside Cutter's leader block, find starting-squad entries similar to these:

xml
<StartingSquad FlyIn="false" Offset="60,0,-20">unsc_inf_generic_marine</StartingSquad>
<StartingSquad FlyIn="false" Offset="60,0,0">unsc_inf_generic_marine</StartingSquad>

Add more entries and vary their offsets so the squads do not overlap:

xml
<StartingSquad FlyIn="false" Offset="60,0,-20">unsc_inf_generic_marine</StartingSquad>
<StartingSquad FlyIn="false" Offset="60,0,-10">unsc_inf_generic_marine</StartingSquad>
<StartingSquad FlyIn="false" Offset="60,0,0">unsc_inf_generic_marine</StartingSquad>
<StartingSquad FlyIn="false" Offset="60,0,10">unsc_inf_generic_marine</StartingSquad>
<StartingSquad FlyIn="false" Offset="60,0,20">unsc_inf_generic_marine</StartingSquad>

Save the file. This deliberately small edit proves the mod loads before you need to learn squad IDs, unit tags, art files, or balance tables.

Finalize And Test The Mod

Halo Wars 2 loads replacement files from a .pkg. Drag your first_mod folder onto the PKG Tool. It packages the folder and converts its XML files back into the XMB format Halo Wars 2 expects.

Locate the mods folder configured in Haruspis. The default is:

text
%localappdata%\Haruspis\HaloWars1\Mods

If you selected a custom location, check the Haruspis Settings tab instead.

Create a folder named first mod inside the mods folder and copy the generated package into it. In the same folder, create 1_11_2931_2_file_manifest.xml with this content:

xml
<manifest published_utc="1783772737" published_utc_str="Sat Jul 11 12:25:37 UTC 2026" />

Drop the file manifest onto the PKG Tool. It will generate entries for the files in the mod folder and replace the placeholder manifest values as needed.

Launch Haruspis and open Library > Local Mods. Your mod should appear there. Use its play button, start a skirmish as Captain Cutter, and confirm that he begins with the additional Marines.

If It Does Not Work

Check these first:

  • the generated .pkg and 1_11_2931_2_file_manifest.xml are in the same Haruspis mod folder;
  • your editable file was placed at first_mod\data\db\lists\leaders.xml before packaging;
  • the XML still has matching opening and closing tags;
  • the package was rebuilt after your latest edit;
  • Haruspis is launching the intended local mod.

If you get stuck, bring the mod folder layout, the edited XML, and the last step that succeeded to the New Arcadia Discord.

Next Steps

Change one value at a time and test often. For deeper custom-map work, continue with Cutter; watch Forge for the future integrated workflow.

Built for the Halo Wars modding community.