Gamedata merging - Raytwo/Cobalt GitHub Wiki

When users have multiple mods installed, it's inevitable that some mods may end up changing the same files. Usually, this would require you to have to make compatibility packs with other mods. However, if you follow the steps in this guide, Cobalt can automatically merge your mods for you!

Setting up the files

Cobalt reads the same XML files that are contained in the game's bundle files. This should make for easy porting to this system - all you need to do is to extract the XML file from the bundle.

The extracted XML files should then be placed in the patches directory in the root of your mod folder, for example, sd:/engage/mods/my amazing mod/patches.

[!WARNING] Note the capitalization here.

Screenshot of the patches directory in a mod

Then, when the game is booted up, Cobalt will automatically merge the different XML files across the various mods in the mods directory.

Automated migration to Cobalt (experimental)

If your mod is set up as a romfs-only mod, you can try migrating it automatically with this tool.

Debugging and Issues

If you wish to see or debug how the patches are being merged, create a directory called engage_patches at the root of you SD before booting the game. After booting it, check the directory to see how the patches were merged.

Note 1: This feature is can still run into a few issues due to the nature of automatic merging and what Engage expects.
Keep that in mind and open an issue with a complete mod to reproduce the problem.

Note 2: If you have a XML bundle in your romfs or in any of the mods you use, this will be used as the file to apply the patches on.
Make sure to delete your XML bundles when publishing mods if you update to this system.