-
MSVC 14.38-14.40
MSVC 14.41 >= Results in compilation errors due to forward declarations in UEPseudo project.
I recommend 14.40, as this repo will be tailored to that specific toolset.
-
A computer running Windows.
-
Rust toolchain 1.73.0 or greater
-
Clone the repo, cd inside.
-
Run 'init_submodules.bat' file.
-
There are two different ways you can generate build files:
gen.bat -> Normal cmake command to generate VS Solution with MSVC 14.40
gen_msvcrt_fix.bat -> Cmake generate + remove "/defaultlib:msvcrt" If you experience linking related compilation issues, clear cmake cache and try building with this bat.
-
Open Output\MyMods Solution file and build for Game__Shipping__Win64 (if making mods for VotV)
- _cargo-build_patternsleuth_bind project: ("setlocal" error) post-build event fails to generate, run gen.bat or gen_msvcrt_fix.bat a second time.
- defaultlib:msvcrt: use gen_msvcrt_fix.bat
Making a mod for VotV? Try libvotv!
Python 3.7> required
Run the script with:
python generate_mod.py ModName r2modman-profile-name
Example:
python generate_mod.py MyAwesomeMod Default
Be sure to re-generate CMake build files via gen bat files after adding new mods.
ModName
: Name of your mod (required)profile_name
: Your r2modman profile name (required)--base-dir
: Base directory for the mod (optional, defaults to current directory)
- Clones the SampleCppMod template
- Customizes all necessary files with your mod name
- Sets up correct output paths for r2modman
- Updates the main CMakeLists.txt to include your mod
Your mod will be built to:
C:/Users/%USERNAME%/AppData/Roaming/r2modmanPlus-local/VotV/profiles/[profile-name]/shimloader/mod/[ModName]/dlls