Update to the latest version of the game and then download the latest version of the patch. Unzip patch_proj.exe and stick it in MK12\Binaries\Win64 and then double-click patch_proj.exe ONCE, which will patch MK12.exe
If you run into any issues, do verify file integrity in Steam and then double-click patch_proj.exe ONCE, which will patch MK12.exe
High-level MK1 (aka MK12) Modding Tutorial for Meshes and Textures Author: peek6
NOTE: this is a high-level description meant for modders with at least some prior experience modding UE games. Modding MK is slightly more complicated. This guide focuses mostly on the differences between MK moding and modding other MK games. For any questions, post to the MKsecrets and ModdingHaven discord servers on the threads here and here. Join the Discord servers first or the links to the threads won't work.
- Create a project called MK12, set up folder structure so it is exactly identical to what you see in Umodel, and import your modded FBX meshes and TGA textures.
- Point your mesh to the exact same MIs, skeletons, physics assets, and animation blueprints as you see when you open the original raw uasset in a hex editor. It must be exactly the same name and path.
- Put only your meshes and textures into a chunk larger than 23 (do not put any MIs, skeletons, physics, or anim blueprints into the chunk) and package the project.
- Add _P to the end of all your packaged chunk's filenames and stick them in steamapps\common\Mortal Kombat 1\MK12\Content\Paks\LogicMods (not in ~mods , which is for audio mods only)
Two questions: 1. Technically, what is the .exe patcher doing? (i.e. why is it needed for modding when most other games do not?) 2. What is special about the kboy's custom UE 4.27?
1) Mortal Kombat uses signed IoStore packages, and we don't know how to sign our modded packages. The patch modifies the part of the exe which checks whether packages are signed correctly, such that the packages are loaded regardless of whether or not they are signed. Not all games use signed IoStore packages, which is why not all games need such a patch, but any game which uses signed IoStore packages needs a similar patch, for example AEW FF, Ghostwire Tokyo, etc
as i got it, you have two apps: original MK12 and putched mk12. You need to uninstall putched mk12 and rename original mk12 into "MK12" Also you need to uninstall patch_proj.exe as well
100 comments
Update to the latest version of the game and then download the latest version of the patch. Unzip patch_proj.exe and stick it in MK12\Binaries\Win64 and then double-click patch_proj.exe ONCE, which will patch MK12.exe
If you run into any issues, do verify file integrity in Steam and then double-click patch_proj.exe ONCE, which will patch MK12.exe
Also set -fileopenlog in Steam's launch options
Author: peek6
NOTE: this is a high-level description meant for modders with at least some prior experience modding UE games. Modding MK is slightly more complicated. This guide focuses mostly on the differences between MK moding and modding other MK games. For any questions, post to the MKsecrets and ModdingHaven discord servers on the threads here and here. Join the Discord servers first or the links to the threads won't work.
- Patch the game using https://www.nexusmods.com/mortalkombat/mods/7 to enable mods
- Extract assets using Umodel ( https://www.gildor.org/en/projects/umodel ) but replace umodel.exe with umodel_acl_2.1.exe from https://drive.google.com/file/d/1ICvOtHV17Fkb9UNAKbl7W4dF7NWlZnkR/view :
- Set game to Mortal Kombat
- Disable morph targets
- AES key = 0x6FAABA4F4EF8A6AC188A517ACEF38F1422484E3B1F3F4CF3DACB27A6CBCCD076
- Export assets as PSK for models, TGA for textures. I also recommend saving the original raw uassets.
- Import the PSK into Blender using https://github.com/matyalatte/blender3d_import_psk_psa/releases
- Modify the mesh as desired and export to FBX using the same plugin
- You can also modify textures (which you exported as TGA in Umodel) using PhotoShop
- Link your Epic and github accounts ( https://www.epicgames.com/help/en-US/epic-accounts-c5719348850459/connected-accounts-c5719351300507/how-do-i-link-my-console-account-to-my-epic-games-account-using-the-web-a5720357639451 ) and then grab kboy's custom MK1 UE build from https://github.com/kboykboy2/UnrealEngine/releases .
- Create a project called MK12, set up folder structure so it is exactly identical to what you see in Umodel, and import your modded FBX meshes and TGA textures.
- In UE settings, turn on IoStore, enable chunks, and enable assigning chunks, as described in https://modding.wiki/en/hogwartslegacy/developers/getting-started (but you need to use kboy's custom UE instead of the standard Epic UE 4.27)
- Point your mesh to the exact same MIs, skeletons, physics assets, and animation blueprints as you see when you open the original raw uasset in a hex editor. It must be exactly the same name and path.
- Put only your meshes and textures into a chunk larger than 23 (do not put any MIs, skeletons, physics, or anim blueprints into the chunk) and package the project.
- Add _P to the end of all your packaged chunk's filenames and stick them in steamapps\common\Mortal Kombat 1\MK12\Content\Paks\LogicMods (not in ~mods , which is for audio mods only)
1. Technically, what is the .exe patcher doing? (i.e. why is it needed for modding when most other games do not?)
2. What is special about the kboy's custom UE 4.27?
2) Unreal engine is open source and the MK devs made some changes to Epic's UE 4.27 engine source code, and they were enough to prevent meshes cooked and packaged in the "vanilla" epic UE 4.27 from being loaded by the game. kboy reverse engineered enough of those changes in his custom engine to enable mesh mods to work in-game. The changes appear to be relatively minor; you can see them in the github commit history of his project:
https://github.com/kboykboy2/UnrealEngine/commit/f3b072fc4c0f954ac59b0c189771b78eb56c5810
https://github.com/kboykboy2/UnrealEngine/commit/ae18d44df19b6a3a9d304f2f87425568e54a43cc
patch_proj.exeas well