Sunday, June 11, 2017

Halo Wars ModManifest.txt

I'm semi-back after a short hiatus. During my brief time away from the Halo Wars modding community, a patch to the game was released that added support to load a TXT file that describes other directories which contain game data. This makes it so you don't have to rebuild or even use ERA files for testing or distributing your game changes.

For example, if all you wanted to do was change data/leaders.xml to give you more Spartan population, you could use this new "ModManifest.txt" to point to a folder that contains the said file with your changes. Then when the game loads, it would consume this loose file in favor of whatever file may be in an ERA.

I originally posted the following in the Halo Wars modding Discord chat about a month ago, but I guess no one really paid attention or picked up what was going on:

In the UserRoot folder (the same folder gameconfig.dat exists) you can now add a new file:
“ModManifest.txt”

[Example]
C:\Users\<username>\AppData\Local\Packages\Microsoft.BulldogThreshold_8wekyb3d8bbwe\LocalState\ModManifest.txt
C:\Users\<username>\AppData\Local\Halo Wars\ModManifest.txt

The file format is simple, just a directory per line. You can use the semicolon character (;) to essentially comment out a directory if you want to disable it.
[Example]
e:\temp\TestMod

Now, the content of each of the directories will override files in the base game’s archive packages.

[Example]
Directory of E:\temp\TestMod\Art\unsc\vehicle\warthog_01

05/11/2017  12:00 PM    <DIR>          .
05/11/2017  12:00 PM    <DIR>          ..
08/11/2016  03:54 PM         5,592,528 warthog_01_df.ddx

You of course need to replace the "<username>" part of these paths with your account name. The first path is if you use the Windows Store copy of the game. The second path is if you own the Steam copy.

You could place your data/leaders.xml file in this theoretical "E:\temp\TestMod" folder too. Basically you need to remember that any files you wish to override via a directory in the Manifest must maintain the same directory tree as it appears in the ERA files.

4 comments:

  1. I'm trying to figure out, is there a way to edit camera zoom with this? it seems to be stored in startup/game.cfg but placing the modified file in the proper directory doesn't seem to load it

    ReplyDelete
  2. I'm having some issues with trying to loosely install the app. Every time I run the .bat program I get an error saying that apps which originated from the windows store cannot be sideloaded. I deleted the .p7x signature but now it is saying that I need a developer license and/or a sideloading enabled operating system. I've already turned on sideloading and restarted my PC twice but nothing seems to fix it. I also installed the windows 10 SDK but I'm not sure if I compiled it as I cannot find a .exe file or bat file that is labeled compile. I'm currently downloading MS visual studio to see if that will allow me to compile the SDK. I also tried avoiding using UWP at all and added a ModManifest.txt to the AppData directory housing gameconfig.dat and pointed it to a folder containing a new root.era file, but nothing happened. I already had Halo Wars:DE on my xbox one but I was excited about the idea of being able to mod it so I used a $20 gift card bought with Microsoft store points. I was thinking of just getting the steam version but I'd rather not pay $20 to buy the same game a third time. Any ideas?

    ReplyDelete
    Replies
    1. Just to clarify, when I tried using the ModManifest.txt that was with a clean installation of halo wars.

      Delete
  3. So you just type "ModManifest.txt" in the Halo Wars file?

    ReplyDelete