UE-Modding-Tools/README.md

40 KiB

UE Modding Tools

A databank of every modding tool that has potential to be used across multiple UE games. Many tools were submitted by the lovely members of the Unreal Engine Modding Discord - please join if you want discuss use of these tools!

If you are an UE game developer, and want to know how these tools can be used to mod your games, please see the developer guide.

Any category is not ordered by any means, and any tool that is not listed here, but should be, please submit a PR.

Some of these tools may be unmaintained and/or outdated, but are still useful for people writing their own tools and may want to see how others implemented their tools.

The tag [CU] before a tool means that it is Commonly Used by multiple UE modding communities, so is highly recommended for personal use.

The tag [PW] before a tool means that it is Paywalled.

Packers & Unpackers

Tools that deal with packing and unpacking the UE4 archive files.

  • [CU] UnrealPak - Put together by FluffyQuack
    • UnrealPak version from 2016 that is seemingly compatible with any UE4 game, that creates compressed pak files which results in smaller filesizes and theoretically faster loading
  • [CU] U4Pak - Written by panzi
    • U4Pak unpacks, packs, lists, checks and mounts UE4 .pak archives
  • ue4pak - Written by Vilsol
    • Parses and extracts data from UE4 Pak files
  • U4Pak - Rust - Written by panzi
    • Rust port of U4Pak
  • TocPatcher - Written by kboykboy
    • Designed to modify .utoc files to allow mods to work for games using both IoStore and Pak Signing
  • unpak - Written by Spuds
    • A "no nonsense" unreal pak parser that doesn't force files to be extracted, only converts entries to bytes when requested and supports all pak versions
  • repak - Written by truman
    • A fork of the above unpak tool, with a few extra features
    • Supports reading all pak versions with compression/encryption and writing all pak versions
    • Multithreaded unpacking, roughly 2x faster than the built in UnrealPak tool
  • ZenTools - Written by Archengius
    • Extracts cooked packages (.uasset/.uexp) from the IoStore container files (.ucas/.utoc + .pak)
    • The extracted files can then be opened with any asset editor and repacked back into the IoStore container using UnrealPak
    • Only supports 5.1 and 5.2
  • ZenTools UE4 - Written by WistfulHopes
    • A fork of the above ZenTools but only supports 4.25 - 4.27 (all UE4 IoStore versions)
  • UEcastoc - Written by gitMenv
    • UEcastoc is a WIP tool to unpack and pack IoStore files

Asset Editors, Parsers & Explorers

Tools that deal with editing and parsing the UE4 asset files, with formats including .uasset, .uexp, .ucas, .utoc, .umap etc.

  • [CU] UE Viewer (AKA UModel) - Written by Gildor
    • UE Viewer (formerly known as UModel) is the standard tool for viewing and extracting UE4 game content, particularly models and textures
  • [CU] Asset Editor - Written by kaiheilos
    • UE Uasset Viewer/Editor can unpack and read/edit assets from engine versions 4.11 - 4.26
  • [CU] FModel
    • Open-source software for exploring Unreal Engine games' files. From seeing the properties of an asset to listening to your favorite audio files, it has never been easier to navigate inside a game's assets
  • [CU] CUE4Parse - Maintained by the FModel developers
    • C# Parser and API for UE packages & assets, used primarily by FModel
  • [CU] UAssetGUI - Written by atenfyr
    • A GUI for UAssetAPI
  • UAssetAPI - Written by atenfyr
    • A C# API for reading and writing UE4 .uasset files from 4.0 - 4.27+
    • The author is active on the UE Modding Discord if you have any queries
  • KismetEditor view for UAssetGUI - Written by trumank
    • A graph view similar to blueprints but on the kismet instruction level
    • Displays a limited set of instructions/parameters
  • Kismet Analyzer - Written by trumank
    • Tools for analyzing and manipulating kismet bytecode in cooked Unreal Engine assets
  • stove - Written by spuds
    • A visual editor Unreal Engine cooked map files. Allows you to transplant actors from other maps, move actors, etc
  • JohnWickParse - Written by SirWaddles, FabianFG, WorkingRobot & Amrsatrio
    • A parser for uasset, uexp and pak files
  • UAsset JSON Serializer - Written by Kein
    • Converts .uasset fies to JSON, allows you to edit the JSON, then converts edits back into the original uasset
  • DUAM - Written by DarthPointer
    • CLI program with a lot of flexibility for editing uasset files
  • UAssetConverter - Written by approved
    • An API to read, create, and modify .uasset and .uexp files
  • UnrealPakViewer - Written by jashking, translated to English by Spuds
    • UnrealPakViewer allows you too see a detailed summary of a pak file and export it to CSV or JSON, all within UE4
  • UPK Explorer for UE3 - Written by Wastelander121
    • Allows you to install texture packs created with UPK Explorer for UE3
    • TFC Installer
    • There is a dedicated category for discussion of this tool with the author in the UE Modding Discord

Textures, Animations & Modelling

Tools that deal with editing the textures, animations and models from UE4 games. Short PSA: To get custom materials working in later UE4 versions, go to ProjectSettings then to Packaging and set ShareMaterialShaderCode to False, then cook them like you normally would.

  • [CU] Blender3D Import PSK/PSA FORK - Written by matyalatte
    • Fork of the below tool, but automatically handles scaling/fbx export so its a bit more user friendly for not messing things up
  • Blender3D Import PSK/PSA - Written by Befzz
    • Blender3D Import .psk & .psa addon imports meshes, skeletons and animations from .psk and .psa files to Blender3D
  • UE4 DDS Tools - Written by matyalatte
    • Allows you to inject texture files directly into their original uassets without cooking for a large number of UE versions, and can do bulk operations via CLI
  • Rokoko Studio - Written by Rokoko
    • Rokoko Studio is a powerful and intuitive software for recording, visualizing and exporting motion capture
    • This plugin lets you stream your animation data from Rokoko Studio directly into Blender
    • More useful for modding as it also allows you to easily record and retarget animations, for easy animation swaps
  • Blender UEXP - Written by AlexP0
    • Blender_UEXP creates a mesh in blender from a uexp to allow for edits, then writes modifications back into the uexp
  • Dummy Materials Blender Plugin - Written by bleedn
    • Secondary DL link here
    • REQUIRES BLENDER 3.2
    • A plugin to automate making dummy materials
    • Just click a face, set up the variables it asks for in the 3D View, and click the button
  • NVIDIA Texture Tools Exporter - Written by NVIDIA
    • The NVIDIA Texture Tools Exporter allows users to create highly compressed texture files directly from image sources
  • Blender Bulk Export PSK/PSA to FBX - Written by Zain#1873
    • Uses UModel exported psk/psa
    • Requires this plugin to run
  • CUE4Parse Animation Assets Maxx Export Utility - Written by Buckminsterfullerene
    • A C# program that uses CUE4Parse to mass export animation assets from any UE game
    • Detailed instructions on how to use it can be found in this wiki
  • 3DSMax Bulk Export PSK/PSA to FBX - Written by Gildor, adapted by Aproydtix, further modified by Buckminsterfullerene
    • Version of ActorX 3DSMax script that can bulk convert PSK/PSA to FBX
    • Original Script by Gildor, and modifications by Aproydtix from OpenKH & Buckminsterfullerene
    • Also will do deformation fixes to put an animation on a modified skeleton
    • Extra modifications include: automatically clearing the scene when new model imported, adds ability to mass export animations in sub folders for specific directory layouts to make mass export process much faster
  • Unreal Shader Map Extractor - Written by Aeryn
    • Extracts and helps identify shaders from Unreal material shadermaps
    • Custom FModel build used in conjunction with command line utilities
    • Requires an FName dump of your game to identify shaders
    • Supports DX11/DX12 and all forms of compression, doesn't support IO Store games of version 5.0+
  • Better Blender GLTF Importer
    • A version of the GLTF importer for Blender that preserves bone orientation
    • This is important for skeletal mesh modding, and allows bypassing PSK altogether
  • [PW] Better Blender FBX Importer/Exporter
    • Better FBX Importer & Exporter is for people who need to import FBX files into Blender and export FBX files to game engines

SDK Generators & Dumpers

Tools that generate SDKs and dump the game's code.

  • [CU] Unreal Engine 4/5 Scripting System (UE4SS) - Written by multiple contributors
    • A UHT compatible header generator made by Archengius and an object dumper
    • It can also dump all C++ headers from a game, including Blueprint actors
    • Full instructions on how to use it can be found here
    • The authors are active on the UE4SS Discord if you have any queries
  • [CU] UE4 Game Project Generator - Written by Archengius
    • Allows the creation of a game mod project using the UHT header dumps from UE4SS
    • Full instructions on how to use it can be found here
  • [PW] Cheatgear
    • Useful for dumping a lot of the uFunction names and writing script mods on top of it
  • Dumper-7 - Written by Fischsalat & Encryqed
    • SDK Generator for all Unreal Engine games. Supported versions are all of UE4 and UE5
  • UE4 Project Generator GUI - Written by Spuds
    • Organises the CMD arguments for you in a GUI and generates reuseable batch files
  • UE Plugin Manifest Generator - Written by HeartlessSeph
    • A simple script to make the plugin manifest for the project gen commandlet because <=4.17 games don't include them
    • Usage is pretty simple, after fulling dumping your UE4 game just drag and drop the root extracted folder onto the program
    • It'll spit out a file named "new.upluginmanifest" which can be renamed to whatever you want
  • Add Object Initialiser To Actors in Project Files - Written by dedede123
    • Adds object initializer to the constructor/static class of all Actor classes in your uproject files
    • Modify to set the correct folder, and could be modified to apply to other types of classes as well if needed
  • Unreal Mappings Dumper - Written by OutTheShade
    • A dumper that generates mappings (.usmap) files for datamining Unreal Engine 5 games
  • Unreal Dumper - Written by guttir14
    • Generates the C++ headers for your game
  • UE SDK Generator - Written by polivilas
    • Supports the generation of SDKs for any game on UE version 1-4
  • UWP Dumper - Written by Wunkolo, tunip3 & LukeFZ
    • A DLL and Injector for dumping UWP applications at run-time to bypass encrypted file system protection
  • Unreal Finder Tool - Written by CorrM
    • The outdated - but open-source - version of Cheatgear

Editor Asset Generators

Tools that generate assets for the Unreal Engine Editor. Allows you to reconstruct the game's assets in the editor, in your own project. Saves a heap of time with manually dummying assets for blueprint modding. Example modkit projects can be found in the Game Specific Modkits section.

  • JsonAsAsset - Written by Tectors & GMatrixGames
    • Takes FModel's exportable JSON data from a cooked asset and converts it into an Unreal Engine asset inside of the editor
    • Only supports Unreal Engine 5
  • UnrealPskPSA - Written by halfuwu & bK
    • Directly imports the ActorX formatted files (.psk/.pskx/.psa) into Unreal Engine inside of the editor
    • Only supports Unreal Engine 5
  • UEAssetToolkit - Written by Archengius
    • Bulk converts JSON data from cooked assets into Unreal Engine assets inside of the editor
    • AssetDumper can only be used as a plugin mod for games built modularly
    • Confirmed to support UE4.25-4.27
  • UEAssetToolkitGenerator - Written by LongerWarrior
    • Bulk converts cooked assets into UEAssetToolkit-compatible JSON
    • Confirmed to support UE4.25-4.27
    • Also known as Cooked Asset Serializer (CAS)

.locres Editors

Tools that deal with editing the UE4 .locres files, which are used for localisation.

  • [CU] UnrealLocres - Written by akintos
    • UnrealLocres can read/write every locres version up to 3 (latest)
  • Locres Editor - (Unknown author)
    • A tool to change the game's .locres files that are used for localization
  • UE4LocalizationsTool - Written by amr shaheen
    • Simple tool to edit unreal engine 4 text files

Loaders

Tools that can load mods into the game.

  • [CU] UE4SS Mod Loader
    • Spawn blueprint mods automatically without editing/replacing game files
    • Support for mods created previously with UML
  • Unreal Engine Mod Loader - Written by RussellJerome
    • A tool used to load Blueprint and basic SDK based C++ Mods for Unreal Engine 4 games
    • Mostly depreciated now with the release of UE4SS' Mod Loader
  • Reality - Written by itskaitlyn03
    • A highly abstract and modular Unreal Engine mod loader for the 21st century, written in C#
  • DLL Plugin Loader - Written by c0dycode
    • Loads various other DLLs if an application/game tried to load a certain DLL which is not actually being used/required

Unlockers

Unlocks features that are usually disabled in shipping UE games.

  • [CU] Universal UE Unlocker (UUU) v3.0 - Written by Frans 'Otis_Inf' Bouma
    • Re-enables the command line within a game if usually disabled
    • Full list of available commands
  • [PW] UUU v4.0 - Written by Frans 'Otis_Inf' Bouma
    • Provides custom photo-mode mods and a bunch of other amazing cinematography tools for UE4 games
  • UUU Dump Formatter - Written by Mert-Y
    • Formats the dump from the UUU into a readable format
  • Unreal Mod Unlocker - Written by IllusorySoftware
    • Unlocks loading of 3rd party UE4 loose files for (a claimed) 75-90% of UE4 games

Audio

Tools that deal with audio modding. You don't need any tools to mod the default UE audio system, if the game uses that. Sadly, many games use proprietary audio systems like FMOD and WWise, which require their own tools.

  • BNK Editor - Written by marieismywaifu
    • Allows direct replacing and saving of wems from the .bnk files of games that use Wwise for audio (located in the WwiseBanks folder)
  • BNK Extractor - Written by eXpl0it3r
    • Wwise *.BNK File Extractor extracts WEM files from the ever more popular Wwise BNK format
  • Wwiser - Written by bnnm
    • Wwise .bnk parser to assist in ripping audio from games using the Wwise engine
  • ww2ogg - Written by hcs64
    • Converts Wwise RIFF/RIFX Vorbit to standard Ogg Vorbis
  • Audacity - Written by Audacity Team
    • A very nice tool for opening, recording and editing audio files of many types
    • It supports macros which allows for some automation too
  • Foobar2000 - Written by Peter Pawlowski
    • An advanced freeware audio player for Windows
  • Export Utility Wwise - Written by bK
    • A C# console application for exporting audio from UE games that use Wwise, and converting them into .wav format

Mapping

Map dumping/generating/editing (that aren't already covered by asset editors).

Automation

Tools that can help to automate the modding pipeline (that haven't been covered already).

  • Backup UE Saves - Written by Mythical
    • Just edit the Game project name to your particular game and it will backup the .sav and .ini files for that game or just toss it in one of your existing bat files
  • Auto-Disable uasset Files - Written by Spuds
    • Deletes .uexp and .ubulk files and replaces .uassets with blank files of the same name recursively when a folder containing exported assets is dragged onto it
  • Create Empty Content Folder Hierarchy - Written by Buckminsterfullerene
    • Deletes every file inside of a specified directory but leaves all of the folders intact
    • Useful for creating a blank content folder hierarchy for a game
  • Extract All Anim Assets - Written by Buckminsterfullerene
    • A batch script of a couple nice UModel commands to extract all of the animation assets from a game
    • Running the second command directly after the first is beneficial since all game packages are loaded into memory which saves a lot of time not having to do it twice
    • To use, just change the variable paths
  • Generate Blender Script To Convert GLTF to FBX - Written by DmgVol
    • C# program to generate a Blender script that can be used to mass convert GLTF files extracted from UModel to FBX files
    • To use, just change the paths in the C# script
  • Mass Convert Assets from Cooked to Uncooked - Written by Buckminsterfullerene
    • Blueprint editor utility script to easily "convert" cooked assets to uncooked if that "feature" is supported by the engine (e.g. data asset, behaviour tree, animation sequence)
    • Need to have the these config settings in your project's DefaultEngine.ini file
  • Make Debug World - Written by Buckminsterfullerene
    • Once you have all static meshes/actors uncooked in-editor, you can use this editor utility script to load them all into a level in a neat way
  • Batch Import FBX into UEE - Written by Zain#1873
    • Allows you to batch import folders of FBX into the editor since the "import all" function with folder import is broken in many engine versions

Reversing

Reversing tools that aren't necessarily to do with UE, but are commonly used to help with reversing games.

  • pattensleuth - Written by trumank
    • A tool for finding AoBs/patterns against a collection of Unreal Engine games
    • Can show a summary of all patterns against all games or disassemble each step of a pattern resolution chain to debug failed patterns
  • AOB Generator - Written by Frans 'Otis_Inf' Bouma
    • A small tool for easy AOB creating from copied x64 disassembly (Cheat Engine or x64dbg format)
  • Cheat Engine - Written by Dark Byte
    • A tool for modifying single player games
    • It allows you to scan for values and then change them
  • x64dbg - Written by mrexodia
    • A free and open-source x64/x32 debugger for windows
    • For certain types of reversing like finding basic AOBs it is great because it is much faster than IDA (it doesn't do the same level of decompiling)
  • x64dbg Swiss Army Knife - Written by Nukem9
    • Plugin for x64dbg that can generate AOBs for you, and will automatically wildcard call pointers and such
  • IDA Free - Written by Hex-Rays
    • A free version of IDA Pro
    • It is a bit limited, but it is still a great tool for reverse engineering programs
  • Ghidra - Written by National Security Agency
    • A software reverse engineering (SRE) framework
    • It is a free and open-source tool that can be used to analyze compiled code on a variety of platforms including Windows, Linux, and macOS
  • HxD - Written by mh-nexus
    • A freeware hex editor
    • It can be used to view, edit, analyze, and process files of arbitrary size, including .uexp files
  • Process Hacker - Written by Wj32
    • A free and open-source tool that helps you monitor system resources, debug software & looking at memory string for processes currently running
  • Resource Hacker - Written by Angus Johnson
    • A freeware utility to view, modify, rename, add, delete and extract resources in 32bit Windows executables and resource files (.res)
  • 010 Editor - Written by Sweetscape Software
    • A powerful hex tool for parsing files in 160+ formats and potentially unknown file types
  • Cutter - Written by Rizin
    • Free and open source RE platform
    • Decompiler, graph view, debugger, linear disassmbler, emulator, python scripting engine, plugins, binary patching, etc.
  • ImHex - Written by WerWolv
    • A Hex Editor for Reverse Engineers, Programmers and people who value their retinas when working at 3 AM.

Other

Other tools that aren't necessarily to do with UE, but are commonly used to help with modding games.

  • [CU] Unreal Engine 4/5 Scripting System (UE4SS) - Written by multiple contributors
    • Exposes UE4 reflection to Lua and allows you to write Lua to create mods for UE4 games
    • Full instructions on how to use it can be found here
    • UE4SS includes a live view debugger, meaning that you can watch/log values of every loaded asset in the game, in real-time making it very useful for blueprint modding
    • The authors are active on the UE4SS Discord if you have any queries
  • [CU] Unreal Engine Virtual Reality - Written by praydog
    • Universal VR Mod for Unreal Engine 4/5
  • [CU] uesave - Written by truman
    • A save file editor/library for reading and writing Unreal Engine save files (commonly referred to as GVAS)
  • gvas - Written by scottanderson & localcc
    • Rust library that allows parsing of gvas save files
  • UeSaveGame - Written by CrystalFerrai
    • A .NET library for reading and writing Unreal Engine 4 save files
  • UE4 Engine Version Grabber - Written by RussellJerome
    • A simple tool that will grab the engine version of a UE4 game
  • USharp - Written by pixeltris
    • A plugin for UE4.23 which allows for programming in C#
  • Universal-ImGui-D3D11-Hook-WithResize - Written by GHFear
    • A Universal DirectX11 hook that supports resizing of the game window by hooking the ResizeBuffers
  • Asset Registry Helper - Written by Archengius
    • Allows merging contents of multiple asset registry files together and listing their contents
    • Useful when game uses asset registry to lookup content and you want to add some new content of that type
  • Visual Studio 2017 Community Installer - Posted by Narknon
    • VS-2017 Community installer because microsoft apparently removed it from available downloads lol
  • Orbital Market
    • A way to browse Epic marketplace and sort by popularity/reviews and use filters properly

Guides

Guides that are useful for modding UE games.

General

Game Specific Modding Documentation Websites

Many popular modding communities for various games have their own websites for documenting and centralising modding information. In many cases, information can be shared between other games, due to maybe using the same tools, engine version or the game uses similar systems. Usually, games will keep their modding resources exclusively within their own Discord communities, however this lacks the benefit of having their docs indexed and searchable by search engines.

  • Moolah Modding (Payday 3)
  • Palworld
  • Hogwarts Legacy
    • Contains many useful mod examples using the UE4SS Lua API
  • Satisfactory
    • The Satisfactory Modding Documentation is much more useful than official UE documentation in some places, like in the C++ and Blueprint section

Game Specific BUT Transferrable

These are loose files/sites.

  • How to Package .ucas files
    • While this guide is for Final Fantasy 7 Remake, it is still useful for modding a UE game that also uses .ucas files
  • Modding Windows Store Games
    • This guide to get started with modding Windows Store (Xbox Game Pass and similar) UE games versions was created for Deep Rock Galactic but is potentially useful for any other game within this category
  • Astroneer Modding Guide
    • The Astroneer Modder's Guide has some nice in-depth explanation of using the UnrealPak and UAssetGUI tools. If you ignore the Astroneer-specific parts, this is definitely relevant to most other UE4 games
  • Hex Editing Materials with HxD
    • Although this guide was created for Guilty Gear Strive, it features some absolutely brilliant explanations of using FModel and hex editing materials with HxD
  • Ghostrunner Guides - Written by Dmgvol
    • A collection of modding guides for Ghostrunner but the same principles apply for all UE4 games
    • Guides like texture and model swapping, hex, UAssetGUI/API, CustomModLoader examples and more
  • Running UE Tools in Linux - Written by Keplyx
    • How to run various modding tools in Linux, e.g. UAssetGUI, UModel, UE4 (without building from source)
    • This guide was made for DRG, however most of it is completely UE4 game-generic
  • How to Blueprint Mod - Written by Buckminsterfullerene
    • Although this is made for Deep Rock Galactic, it is definitely still relevant for making BP mods for any other game
    • You will have to tailor the blueprint loading method to whatever your game uses, or UML, or whatever, since DRG has a native system implemented by the developers
    • It also features some nice tips for general UE4 use
  • How to Audio Mod - Written by Buckminsterfullerene
    • Although this is made for Deep Rock Galactic, it is definitely still relevant for making audio mods for any other game that uses the default UE audio system
    • It also features some nice tips for general UE4 use

UE Modding Discord Servers

A bunch of links to various UE Modding Discord servers. If you know of any that aren't listed here, please make a PR. Although I have tried my best to get permanent invite links, I am not responsible for any being invalid. Feel free to nick this list of Discord servers for your own Discord.

General

  • UE Modding - A Discord server for modders from any game to pool knowledge & tools that they think could be useful for other UE games. It is a great place to ask questions and get help with modding.
  • Unreal Slackers - The official Unreal Engine forum server.
  • Flatscreen to VR Game Modding - The server that is dedicated to modding games from flatscreen to VR.

Game Specific

Game Specific Template Projects

These are "mirrored" C++ UE projects for various games. They are meant to be used as a base for blueprint modding, and are usually updated to the latest version of the game. They completely eliminate the need to manually dummy any C++ headers.

They are all generated using UE4SS and the Game Project Generator.

Game Specific Modkits

These modkits are fully reconstructed/decooked game assets that are placed into the editor on top of the game's template project. These modkits completely eliminate the need to manually dummy any game assets for blueprint mods.

They are all generated using UEAssetToolkitGenerator and UEAssetToolkit as well as a few automation scripts such as the CUE4Parse anim export script & zain's Blender mass psk/psa -> fbx exporter.