Posted on 4 Comments

Modding Terminator: Resistance, and other UE 4.25+ Games

Required Software

  1. UE Viewer: https://www.gildor.org/en/projects/umodel
    1. Used to quickly sift through existing PAK files.
  2. Unreal Engine matching the game (for Terminator: Resistance that is 4.25): https://www.unrealengine.com/en-US/download
    1. Create new files (uasset, uexp, etc) to be packaged into mod.
    2. The correct UE version is needed so that the PAK files match the expected version. UE 4.25 PAK files are different from UE 4.27.
  3. Unreal Pak (included with Unreal Engine). Can be found in “UE_4.25\Engine\Binaries\Win64”
    1. Unpack and Repack files for testing and release.
    2. Notes:
      1. This utility is included by default with Unreal Engine, so replace “UE_4.25” with version you have installed.
      2. Separately released versions of UnrealPak are not supported. Changes have been made to the pak system over time, and the version matching the game (or newer) is required.
  4. Unreal Pak batch files: UnrealPakBatchFiles
    1. Batch files to make Unpack and Repack easier.
    2. Drag-and-drop these in the same folder as “UnrealPak.exe”.
  5. Programs to modify the desired files.
    1. For example, Textures (TGA) can be modified with Paint.Net
  6. Optional; QuickBMS: https://aluigi.altervista.org/quickbms
    1. Extract everything from PAK files.
    2. Can be useful for ensuring you have your files in the correct folders for creating your own PAK.
    3. Will need matching script file. As of the time of writing this, you can find the script here. Just download the 4.25c version, and place it next to QuickBMS executable.

Downloads

Tutorial

  1. Open UE Viewer and point it at the directory containing the game’s “pak” files.
    1. Press the “…” button to browse to the folder, or manually copy/paste the path into the text box.
    2. Press “OK” to continue. No other settings need to be adjusted.
  2. Sift through the files to locate the Texture/Mesh/Model/Etc you wish to modify.
    1. Tip: Check the “Flat View” box in the upper-left corner to make searching with “Filter” easier.
  3. In this example, I will be removing the Lens Dirt effect that applies when Bloom is enabled.
    1. Through trial and error of modifying many files containing “dirt”, I found that “T_ScreenDirt01_w” was the offending texture.
  4. Double-Click the file to view it. If asked which engine version, select “4.25” or whichever version the game in question was built on.
    1. Press “OK” to continue and view the file.
  5. If this file looks like the one you wish to modify, export it.
    1. Tools > Export Current Object.
    2. Select folder to export to, then press “OK”.
  6. Repeat steps [2] through [5] for all files you wish to modify.
  7. Adjust the files as needed. In this example, I have made the Lens Dirt effect TGA entirely transparent using Paint.Net. This way it will effectively not appear in game.
  8. Launch Unreal Engine 4.25, and create a Blank project.
    1. Set a Location and Name within the “Project Settings” window. Remember these for later!
  9. Drag-and-drop the edited files into the Content Browser. They will appear with an asterisk once import completes.
  10. Double-Click the imported item in Unreal Engine, and Save it. The asterisk should now disappear.
  11. Cook the project by navigating to File > Cook Content for Windows.
  12. Verify the files were cooked successfully. They can be found in “<Project Folder>\Saved\Cooked\WindowsNoEditor\<ProjectName>\Content”
    1. <Project Folder> and <Project Name> is the location and name designated in step [8].
  13. Drag-and-Drop all files within this folder that match the name of the edited files to a new location for packing.
    1. Typically a “uasset” file, as well as “uexp”, “ubulk”, and more.
    2. ALL FILES ARE REQUIRED.
    3. In this example, I had a “uasset” and “uexp”
  14. Create a new folder named after your mod, in my example this is “ZAB01_NoLensDirt”.
    1. Within this folder, create a folder structure matching the original “pak” file.
    2. Drop the cooked files into the proper folder.
    3. Note that this may not match the structure indicated by UE Viewer in step [3].
    4. You can drag-and-drop the original “pak” files onto the unpak batch script UnrealUnpak.bat (one by one). Navigate through the extracted folders manually to find the original file’s correct location.
  15. Once everything is structured properly, drag-and-drop the root mod folder onto the pak batch script UnrealPak-Without-Compression.bat.
    1. Optionally you can use the compression version of the script.
  16. If everything is successful, a “pak” file will be created next to the root mod folder!
    1. If you receive an error, be sure you are using the UnrealPak included with the Engine version you downloaded. This Engine version should match, or exceed, the version used to package the original game.
  17. Drag-and-drop the “pak” file for the mod into the directory containing the game’s “pak” files (step [1]).
  18. Launch the game, and test it out! If the mod does not appear to have been applied, check out the Troubleshooting section below.

Troubleshooting

  1. Did you adjust the correct files? There may have been multiple copies. Search around more in step [2].
  2. Did you get all of the cooked files? Repeat steps [8] through [12].
  3. Did you get the folder structure in proper order? Repeat step [14], paying close attention to the additional notes for this section. File order is key!
    1. Open UE Viewer (step [1]), and point it to the game’s pak folder with your mod still installed. In the vast majority of cases, you should only see the file you edited appear once!
      1. Bad
      2. Good
    2. QuickBMS (optional download mentioned at the top) can also be useful in determining the correct folder location. Extract all PAK files, and match your mod folder up.
  4. Did you use the correct UnrealPak?
  5. Did you name the pak to load last? Ensure that alphabetically the pak’s name falls after the default paks.
    1. Suggestion: Start the pak’s file name with a “Z”.