Notice: unreal_auto_mod has been renamed back to tempo, and all further development will continue here.
Easy To Use Command Line Modding Utility For Unreal Engine Games 4.0-5.5
Automates creation, and placement, of mod archives, and other various actions.
For an in editor menu version check out UnrealAutoModInEditor
UnrealAutoModExample.mp4
- Supports Unreal Engine versions: 4.0-5.5
- Supports loose file modding (unreal assets, not in a mod archive, like a .pak)
- Supports modding iostore games
- Automatic mod creation and placement
- Automatic engine cooking, and packaging
- Automatic game running
- Automatic editor running
- Event management system
- Process management events
- Window management events
- Automatic script/exec running events
- Supports creation of mod archives, through unreal_pak, repak, and engine made archives
- Ability to add launch params to various script/exec running
- Supports games with alternative packing structures (example game: Kingdom Hearts 3)
- Supports packing edited files, through the persistent_files dir, or through the Event Management System
- Easily configure what files end up in your final mod(s) and how with the Mod list within the config
- Supports loading from json file, so you can have multiple projects easily
- Logging
- Colorful printouts
- Ability to run in the background, with no windows
- Download and unzip the latest release.
You can keep the program anywhere you'd like.
Most users will only need to edit a few settings, which can be done with a text editor. In the JSON file, you typically need to update the following:
-
Unreal Engine
.uprojectFile Path
Specify the path to your Unreal Engine project file. -
Unreal Engine Directory
Define the directory where Unreal Engine is installed. -
Game's Win64 Executable Path
Set the path to the game's Win64 executable. Ensure that the path is valid:- Correct Example:
"D:\SteamLibrary\steamapps\common\Zedfest\KevinSpel\Binaries\Win64\Zedfest.exe" - Incorrect Example:
"D:\SteamLibrary\steamapps\common\Zedfest\KevinSpel.exe"
- Correct Example:
-
Steam App ID
If using the Steam launch method (as opposed to the executable method), enter the Steam App ID. -
Window Title Override String
Specify the string for the launched game's window label.
After configuring these settings, you can proceed to configure the mod list.
- Configure the mod list:
You can include any number of mod entries in the list.
{ { "mod_name": "MapKit", "pak_dir_structure": "~mods", "mod_name_dir_type": "Mods", "use_mod_name_dir_name_override": false, "mod_name_dir_name_override": null, "pak_chunk_num": null, "packing_type": "repak", "compression_type": "Zlib", "is_enabled": true, "manually_specified_assets": { "asset_paths": [], "tree_paths": [] } }, { "mod_name": "ExampleLevel", "pak_dir_structure": "~mods", "mod_name_dir_type": "Mods", "use_mod_name_dir_name_override": false, "mod_name_dir_name_override": null, "pak_chunk_num": null, "packing_type": "repak", "compression_type": "Zlib", "is_enabled": true, "manually_specified_assets": { "asset_paths": [], "tree_paths": [] } } -
mod_name: This will be the final mod archive's file name, e.g.,mod_name.pak. -
pak_dir_structure: Specifies the folder structure within the game'sContent/Paks/directory. Common values are~modsandLogicMods. -
mod_name_dir_type: Determines the built-in auto-include directory.Modswill include files fromGame/Mods/ModName/.CustomContentwill include files fromGame/CustomContent/ModName/.
-
use_mod_name_dir_name_override: Set totrueif you want your final mod name to include a suffix (e.g.,_P), but not the internal project name. Example:Content/Paks/~mods/ExampleName_Pvs.Game/Mods/ExampleName. -
mod_name_dir_name_override: Specifies the folder to use instead of the default. Usually themod_namewithout any suffix. -
pak_chunk_num: Used only if you are using the engine packing enum. Set this to match what you configured inside Unreal Engine. -
packing_type: Specifies the packing method:repakfor general use.enginefor iostore games.loosefor games using loose file modding.unreal_pakfor when you want to pak using unreal_pak, from your game engine install, usually not ever needed.
-
compression_type: Determines the compression method for the mod archives. Not applicable for loose file modding. -
is_enabled: Set tofalseto disable packaging of the mod and uninstall it if it exists in the specified mod directory. -
manually_specified_assets: Lists additional assets to include:asset_paths: Direct paths to specific files (e.g.,test.uasset,test.uexp).tree_paths: Include all files in subfolders within specified directories.
- For JSON paths, use forward slashes (
/) instead of backslashes (\). Make sure your paths match this format when editing the JSON file. - Settings Json Reference
- Faq
- Run the application:
Once everything is set up, you can proceed to the Running Steps.
You can use these to run the default config, with the test_mods_all arg, or use it as a base and edit it. There is also a version to run it headless (windowless).
The program itself, supports various command line parameters. Here are some examples of how you would use it.
unreal_auto_mod.exe -h unreal_auto_mod.exe command -h unreal_auto_mod.exe test_mods_all --settings_json_path <settings_json_path> unreal_auto_mod.exe settings.json test_mods --settings_json_path <settings_json_path> --mod_names [<mod_name> ...] - Python
