XCOM: ENEMY UNKNOWN
XCOM INI Patcher by taleden
XCOM - Enemy Unknown » Tools and Utilities
Added: 28/10/2012 - 08:45PM
Updated: 31/10/2012 - 10:27PM

31 Endorsements

0.3 Latest version

824 Unique D/Ls

1,057 Total D/Ls

18,011 Total Views

Uploaded by taleden

Description

Last updated at 22:27, 31 Oct 2012 Uploaded at 20:45, 28 Oct 2012

This utility can create or apply modification patches to the DefaultGameCore.ini file embedded within the executable for the game XCOM: Enemy Unknown (2012). Its distinguishing feature is the ability to easily combine multiple mods at the same time.

Why use XCOM INI Patcher?

Some tools are already available to mod the DefaultGameCore.ini file, but they can only delete the currently-installed INI and replace it with a new, complete copy. This means only one mod can be used at a time, since anything changed by one mod will be reverted by any other mod that's installed afterward, even if they don't actually need to alter any of the same settings.

The XCOM INI Patcher avoids this problem by working with 'patches' rather than complete replacement INI files. This allows a mod to specifically target only the settings it needs to, without touching anything else.

Helper Scripts (new in 0.3)

To simplify things until a visual interface is completed, file version 0.3 now includes three drag-and-drop helper scripts which can be used instead of opening a command prompt and worrying about which program arguments to use.

Set_Original_INI.bat: This script is used to identify an original, unmodified DefaultGameCore.ini file against which any mods should be compared. Before you start working on creating an INI mod, find an original version of the INI file and drag-and-drop it onto this script.

Make_INI_Patch.bat: This script creates INI mod patch files using the original INI that you specified using Set_Original_INI.bat and your custom, modified INI file. Just drag-and-drop your modified INI onto this script; if your modified file was called "modified.ini", then afterwards you will see a smaller file called "modified.ini.patch" alongside it. The patch file is what you can distribute to other users, or apply to your own game.

Apply_INI_Patch.bat: This script takes a patch file created with Make_INI_Patch.bat and applies it to your own XCOM game executable. A backup copy of the game executable file will be made, so to uninstall a mod, just delete your XComGame.exe and rename the most recent backup in its place.

Usage

XCOM INI Patcher is currently a command-line only program. To use it, simply open a command prompt in the same directory and type 'xcominipatcher' followed by the desired arguments.

xcominipatcher
[--ini inifile | --exe exefile]
[--diff inifile [--diff inifile [...]]]
[patchfile [patchfile [...]]]

--ini inifile
Specifies the INI file to patch or use as the original in a --diff comparison.

--exe exefile
Specifies the EXE file containing the INI file to patch or use as the original in a -diff comparison.

--diff inifile
A modified INI file to compare to the original; all differences will be written to 'inifile.patch' which can then be used as a patchfile.

patchfile
An INI .patch file to apply to the original INI file; can be written by hand or generated with --diff.

If neither --ini nor --exe are provided, the patcher will use the INI embedded in the XComGame.exe in the Steam directory, if it can find it; otherwise, it will search for an XComGame.exe in the current directory.

Creating Mod Patches

After editing your DefaultGameCore.ini to design your mod, you'll need to create a patch file using that modified INI plus an original, unmodified copy:

C:\SomeDir> xcominipatcher --ini original.ini --diff modified.ini

If your original INI is embedded in a backup EXE file, you can use that too:

C:\SomeDir> xcominipatcher --exe original.exe --diff modified.ini

Or, if your current primary XComGame.exe file is unmodified (like after re-verifying in Steam), it should be found automatically:

C:\SomeDir> xcominipatcher --diff modified.ini

In each of these cases, the --diff option will compare the modified.ini file against the original and create a new file called 'modified.ini.patch'. The patch file contains only the specific settings and values that you actually changed for your mod; everything that was left the same as the original is not included at all. This is what allows multiple mods to be applied to the game without interfering with eachother. All you need to distribute to users in order to install your mod is the patch file and this patcher program.

Installing Mod Patches

To apply a patch, just supply it as an argument to this patcher program:

C:\SomeDir> xcominipatcher firstmod.patch secondmod.patch thirdmod.patch

This will make a backup copy of your XComGame.exe file, and then patch it with all the mods at the same time. As long as those mods don't modify exactly the same setting, you should see the effects from all of them (as always, you may have to start a new game first).

If you want to apply mods to a specific EXE rather than automatically finding the main one, you can use the --exe option again:

C:\SomeDir> xcominipatcher --exe XComGame.exe firstmod.patch

Or, you can apply patches to a specific INI file:

C:\SomeDir> xcominipatcher --exe DefaultGameCore.ini firstmod.patch

Uninstalling Mods

The patcher always makes a backup copy of any file it's about to modify, so the easiest way to uninstall mods is to just delete the XComGame.exe file and rename the backup in its place. If you have a complete, unmodified INI file available, you can also use that as a "patch" to reset all INI settings to their original values.