Skip to content

Getting Started

Valentin edited this page May 24, 2024 · 16 revisions

FModel is a Freeware made to explore Unreal Engine games archives. This means that you don't have to pay for it and this won't change. Its code is open and available to everyone and reusable under certain conditions (see the license text for more information).

FModel –of course– does not contain any malware, spyware, advertisements, or undesired third-party programs.

Get Started

Once FModel is installed and launched, it will verify the integrity of a bunch of files and folders before any window appears.

flowchart LR

A(Launch)-->B{Settings Exist}
B-->|Yes| C[Deserialize]
B-.->|No| D[Create]
E{Output Dirs Exists}
C-->E
D-.->E
E-->|Yes| F[Nice!]
E-.->|No| G[Create]
H(Window Appearance)
F-->H
G-.->H
Loading

Directory Selector

FModel has to ability to auto-detect installed games on your computer. These games will be prompted to you if none is selected yet. If your game is not on the list, you can add it manually at the bottom of the window. You can then press OK once you selected the game you want to load.

Main Window

We've spent a lot of time engineering the UX of this window in order to make the most out of it. We ended up with 3 panels, for ease of use, and to counter previous FModel versions' flaws, which were mainly based on a waste of space.

  1. Navigation
    1. Archives
    2. Folders
    3. Packages
  2. Property
    1. Text
    2. Image
    3. Sound
    4. Mesh
    5. Material
    6. Animation
    7. Level
  3. Console

image

Navigation

As said before, not to waste space, we bundled all navigation-related views into a single panel. Each view has its own information area to show stuff like archive's GUID, folder's package count, or package compression used. You can easily switch between views thanks to the shortcuts set under your settings.

Archives

This view will display your game archives, whether they are encrypted or not. FModel doesn't allow you to load exported game packages, but you can use CUE4Parse to do so. If your game archives are encrypted, you will need an AES encryption key in order to decrypt them. If done correctly, your archives able to be loaded will have archive_enabled next to them, otherwise it will be archive_disabled.

You can choose to load a single archive, several or all of them, but also compare 2 states and only show new or modified packages. If you choose to compare, you will need a backup file older than the state of your current game archives.

Folders

This view will display your archives folder tree structure. You can open folders with either a Left Click on the arrow next to them or Double Left Click on the folder name. If you Double Left Click a folder that doesn't have any subfolder, you will automatically switch to the package view.

Packages

This view will display packages stored under your selected folder. You can extract, export, and save the properties of all game packages no matter their type. Double Left Click will extract the selected package and show you all its properties.

Property

In order to see packages' properties, you have at your disposal up to 25 tabs. Each tab is cut in half between the text area and the image area, both resizable.

Text

Packages are made out of multiple exports that will all be displayed here and depending on the package extension, you will see different human-readable data formats (INI, XML, TXT, ...). Most of the time though, you will see the JSON format. If you don't know what is JSON or how to read it, you better learn now. Since it is the most commonly seen, we've tweaked it a little bit:

  • #FFCB6B Represents an object name
  • #C3E88D Represents an object value as string
  • #DDA0DD Represents a package, you can Left Click it
  • #FFDAB9 Represents a color, you can Mouse Hover it
  • #FFF8DC Represents a link, you can CtrlLeft Click it
  • #F78C6C Represents an object value as a number
  • #61AFEF Represents an object value as a boolean

With a Double Left Click on the tab, you can open a dedicated window where you will be able to fold/unfold the data. Keyboard shortcuts are as follow:

  • CtrlKJ to unfold all regions
  • CtrlKL to toggle fold the region your mouse cursor is in
  • CtrlK0-9 to toggle fold a region by its index

Image

Whether the image is generated by FModel or is a Texture2D embedded in the package, you will have the possibility to open it on a bigger window with a Double Left Click. On this new window, you can Hold Left Click to zoom in the image or Hold Left ClickScroll to zoom even deeper.

Sound

A package that triggers the Audio Player (AP) is a package that holds audio. Supported types are either SoundWave or AkMediaAssetData, so if you are expecting to see the AP pops up, the package you selected simply doesn't have any of these export types. The AP is made out of 2 panels.

  1. The first panel displays your available output devices, the volume set, as well as a playlist containing your audio files set to be played one after the other. DO NOT close the AP if you don't want your playlist to be cleared.
  2. The second panel displays a timeline to seek to a position in your currently playing audio file. But most importantly, it contains an audio spectrum just so you don't get bored while listening to your favorite audio files.

Each individual audio file or the whole playlist can be saved with a Right Click on any of the files in your playlist.

image

Mesh

A package that triggers the 3D Viewer (3V) is a package that holds some kind of 3D model. Supported types are either StaticMesh or SkeletalMesh, so if you are expecting to see the 3V pops up, the package you selected simply doesn't have any of these export types. The 3V is a powerful window dedicated to showing models, maps, materials, and animations. It contains:

  1. An outliner where all loaded models will be shown. Models can contain 1 or more sections, each section will have its own material, and each material can be swapped with a Right Click. You also have the ability to hide the whole mesh, change its position/rotation/scale, wireframe it, and more.
  2. A material inspector where you can see materials' properties and play with some of their settings.
  3. A viewport where you can fly around or rotate, pan, and zoom around the selected model. If you Right Click the model, it will select it.
  4. A world tab where you can save all loaded models, and play with some of the world properties.
  5. You can press H to hide the 3V, and the next time you extract a model it will be added to the world while keeping old loaded models. Press ESC to clear the world and close the 3V.

You can save the loaded models as .psk for use in other programs such as Blender or 3DS Max.

FModel_JaEY0NKmui

Material

There is no "Material Viewer" per se. Instead, we use the 3DViewer (3V) to display materials. Everything works the same, the only difference is that the model used will simply be a cube. The only supported type is MaterialInstance, so if you are expecting to see the 3V pops up, the package you selected simply doesn't have any export type like this.

When saving a material, you will get a .json file containing the properties of the material as well as all its textures as .png.

Animation

Coming soon. In the meantime, if one of your package's exports type is a AnimSequence, Right Click it to save the animation it contains as .psa.

Level

There is no "Level Viewer" per se. Instead, we use the 3D Viewer (3V) to display levels. Everything works the same, the only difference is that all models referenced in the level will be loaded and it may take some time. The only supported type is World, so if you are expecting to see the 3V pops up, the package you selected simply doesn't have any export type like this. You can also load lighting levels to add lights to your world, you'll have to enable the lights under the World tab though.

While you can save individual models by Right Clicking them in the outliner, it is not recommended to save them all and there's currently no way to save the whole world into a single file. But the excellent BlenderUmap2 exists to port it to Blender.

image

Console

A little panel to display warnings, errors, and other information about what FModel does in the background. There is much more information in log files but less is more, so here you go. If needed, you can close this panel but we do not recommend doing so as you won't be able to see, if any, the cause of issues.