If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Help:Contents/Finding Content/Game Engines/Unreal Engine 4

From The Cutting Room Floor
Jump to navigation Jump to search

This is a sub-page of Help:Contents/Finding Content/Game Engines.

Unreal Engine (UE) is a game engine developed by Epic Games, first showcased in the 1998 first-person shooter game Unreal. Initially developed for PC first-person shooters, it has since been used in a variety of genres of three-dimensional (3D) games and has seen adoption by other industries, most notably the film and television industry. Written in C++, the Unreal Engine features a high degree of portability, supporting a wide range of desktop, mobile, console and virtual reality platforms.

Game Data

Data is stored in files of the following formats:

  • If the game is non-packed:
    • UAsset
    • UExp
  • If the game is packed:
    • PAK
    • PAK chunks

You can find them in Game/Content, relative to the game directory. PAKs and PAK chunks will be in Content/Paks, while UAssets and UExps will be in Content/.

AES Keys

Some games' data are AES encrypted, and finding the decryption keys will require some digging. If the game is more than one month old, chances are they have been dumped already. Searching "(game name) AES Key" in a search engine is usually enough to find this.

If you're extracting from/datamining Fortnite, there is a repository containing its decryption keys on GitHub, which can be found here.

How to Find AES Keys

Method 1
  • Download Mickey1s' AES Finder 0.9f.
  • Place "xxxx-Shipping.exe" (found on the "\Binaries\Win64" folder within the game directory) in the same folder with AES_finder.exe.
  • Run AES_finder.exe and wait around 15-30 seconds (depends on your processor and the game).
  • Key.txt should appear in the same folder.
Method 2
  • Download GHFear's AES Key Finder
  • Place "xxxx-Shipping.exe" (found on the "\Binaries\Win64" folder within the game directory) into the folder.
  • Run the "Find 256-bit UE4 AES Key.bat" script
  • Several folders with multiple long-named files will be created.
  • Try with as many keys until you find the right one.
Notes

Sometimes the "xxxx-Shipping.exe" file might be protected with SteamStub/Steam DRM Restrictions preventing either program to find the key, in order to remove it is necessary to run the executable through atom0s' Steamless first, which will create a DRM-less copy of the executable that the AES key can be extracted from.

Engine Version

Hello Neighbor 2's UE4 version is 4.27.0, confirmed by the Details tab.

This is actually easily accessible information! You can find this by going to game directory -> UProjectName -> Binaries -> Win64 -> properties of the .exe -> the Details tab. An alternative method is hovering over the Binaries exe in File Explorer. The tooltip too shows the version number, in the format "DataVersion: (version)".

Tools

How to Use

Hmmm...
To do:
A FModel tutorial. I never used it.

UModel

  1. Open UModel and navigate to the game directory, and enter the "Content" folder. Here Hello Neighbor 2 Beta is used as a example. You may or may not need to specify a "Paks" folder, as shown in the screenshot (as HN2 Beta makes use of PAK files).
    UmodelExampleSetup.png
  2. Press "Ok", and find the file you want to extract. This can take a bit of digging, but usually game data is sorted under folders with descriptive names such as Meshes, Textures, Sounds, etc.
    UmodelExampleBrowser.png
  3. Once you find the right UAsset file, press Export. Then set the export folder to wherever you want, and put in the UE4 version you found earlier when the dropdown that asks for it appears.
    UModelExampleDropdown.png
  4. Press Ok.

Opening Exported Files

Blender

Blender is probably the easiest way to open exported files. For this you'll need to install a plugin named BlenderPskImporter first. Follow a Blender plugin installation tutorial (it's a complicated process too long to be documented here!), and come back when it's installed.

Opening PSK/PSKX's

  1. Click File -> Import -> Skeleton Mesh (.psk). Don't worry, this opens PSKX files (static meshes) too, the option is just named weirdly. If you want to open animations, use the Skeleton Anim (.psa) option.
    BlenderExampleImport.png
  2. Now navigate to wherever you exported the assets to, and go through the "UModelExport" folder until you find the PSKX file you desire to open. Double click on it and click Open.
    BlednerExampleViewport.png
  3. You now have a model imported freshly from a UE4 project! Now all that's left to do is exporting it. This can be done by clicking File -> Export, and then naming and saving the file however you want.
    BlenderExampleExport.png

Congrats, you now have the file in a format that you can (hopefully) read in whatever program you want!