Modsmith is a build automation system for Kingdom Come: Deliverance mods.
E:\projects\kingdomcome\More Perks), there should be a Data folder and/or a Localization folder. Modsmith also supports Data-only mods and Localization-only mods (e.g., translations.)
mod.manifestfile should be placed in the project root directory.
Before running Modsmith, you will need to edit
modsmith.conf. Don't worry! There is only one setting.
[Game] Path = C:\Program Files (x86)\Steam\steamapps\common\KingdomComeDeliverance
Change the value of
Path to wherever you installed Kingdom Come: Deliverance. It must be the game's root path!
||Yes||Absolute path to your project root directory (e.g.,
||Variable||File name and extension of your data PAK file (e.g.,
||Yes||File name and extension of your redistributable ZIP file (e.g.,
||No||Absolute path to your project's localization root directory. Use only when storing localization outside the project root.|
||No||Allows you to package arbitrary unsupported files|
||No||Enables debug logging|
cd "C:\Modsmith" modsmith -p "E:\projects\kingdomcome\More Perks" -d "More Perks.pak" -r "More Perks.zip"
cd "C:\Modsmith" modsmith -p "E:\projects\kingdomcome\Lockpicking Overhaul" -d "Lockpicking Overhaul.pak" -r "Lockpicking Overhaul.zip" --add-arbitrary-files
More Perks is a good example of how Modsmith projects are structured and what their XML files contain (GitHub). I use Modsmith to build and update Lockpicking Overhaul, More Perks, the three versions of Better Trainers, and the two versions of Unleveled Perks.
Modsmith will generate a number of folders and files in the Build folder in your project root directory.
Buildfolder, and there is a
More Perkssubfolder in the
Builddirectory. This subfolder is named after the mod using the file name (without the extension) passed to Modsmith with the
Localizationfolders, which replicate the structure of the project.
Datafolder using the file name (without the extension) passed to Modsmith with the
-dargument. This PAK file contains all the files in
Libs\Tables\rpgfolder, there are TBL and XML files. The zero-byte TBL files were generated automatically. Currently, you need these for XML mods to work. These XML files are the product of the packaging process. Compare them with your own in the project
Datafolder and you'll see that while your XML files contain only your modified rows, the XML files in the ZIP contain both your modified rows and all other rows.
Localizationfolder. Note that Modsmith can generate localization XML files and PAKs for multiple languages simultaneously.
Modsmith is available on GitHub at: github.com/fireundubh/modsmith.
If you don't want to run the executable, you can run Modsmith from the Python 3 source code. More details at GitHub.
If you'd like to contribute, pull requests are welcome. Please submit issues on GitHub only.