Saturday 27 February 2021

Hook updated to dump and load xml settings

The hook has now been updated to dump the xml values from the exe into the mods\Settings directory when it is first run.

On subsequent runs the xml values are loaded in to the exe before it is started.

So you can now change all the xml values without needing to change your base install or run the patch.

As the files are loaded into fixed memory areas in the exe you must not exceed the original length of the file. You can usually remove some comments etc if you need extra space after your changes.  The hook will warn you if you have exceeded the original length and not load the xml in.

Tuesday 23 February 2021

Adding mod support

So it turned out that someone had already run my toolset and published updated textures to Nexus Mods (Sharp Corners of the Earth). This is good as it allows me to concentrate on what I was going to do next.

Which is...

Adding support for DCoTE to Nexus Mods mod manager Vortex :)

So I've created a DCoTE game extension for Vortex which installs the Sharp Corners of the Earth texture mod into a mods directory inside your game install. Vortex does this by downloading the mod zip, extracting it to its own staging directory and then creating symlinks to the files into your games mods directory. This makes it really easy to enable and disable mods at will.

This was all great but of course the CocMainWin32.exe wasn't going to go looking in that mods directory for mods.

Something I'd been planning on doing for a long time is looking into hooking into CocMainWin32.exe so that I can then modify things at runtime instead of patching the exe up front. And to get the game to look for mod files I can use the same method to hook into it's file opens and decide to open the mod file or the games original file.

So that's what DCoTEHook is all about. Hooking into the games file opens so that it can pick up the symlink files that Vortex has put in the mods directory. This can work without Vortex of course if anyone is interested in trying it whilst I polish up the Vortex game extension for release.

Maybe I can get it to load in the xml settings section in the game from an external file in the future.