Command Reference

ue3-tools [--game-root <DIR>] [-v|--verbose] <COMMAND>

Global flags

Flag Effect
--game-root <DIR> Root of the game install. Indexed recursively at startup: .upk / .u / .umap by lowercased file stem, and .tfc separately. Required for schema resolution, TFC texture payloads, schema-resolve, create-font, and creating new properties during pack-mod.
-v, --verbose Streams schema-database misses and redirector follows to stderr; makes pack-mod log every successful object.

upk-header <PATH>

Prints the parsed package summary. Decompresses in memory as a side effect, so it doubles as a decompression smoke test.

decompress <PATH>

Writes <stem>.decompressed.upk next to the input — every chunk inflated, compression fields cleared, StoreCompressed flag removed. The result is a valid package that every other command reads faster.

list <PATH>

Prints #<i> <Class> <Package.Group.Object> for every export.

names <PATH> [OUTPUT_PATH]

Prints the name table and writes one name per line to OUTPUT_PATH (default names_table.txt).

extract <UPK_PATH> [PATH] [OUTPUT_DIR] [--raw]

Argument Meaning
PATH Substring filter against the UE full name or the derived filesystem path. Omit to extract everything.
OUTPUT_DIR Default output. A subdirectory named after the package stem is created inside it.
--raw Write untouched serialized export bytes. No .uo, no sidecars, no property decoding; the schema database isn't built even with --game-root.

schema-dump <UPK_PATH> [--class-filter <SUBSTR>]

Runs the metatype deserializers over every export and prints a one-line summary each:

#  312 Class Engine.Actor  →  Class super=-47 children=0x1a4 class_flags=0x00080000 CDO=#313 ifaces=2

Ends with parsed / skipped (non-meta) / failed counts. Doesn't need --game-root.

schema-resolve <STARTING_PKG> <FULL_PATH>

Requires --game-root. Resolves a fully-qualified path through the schema database and prints the resolved reference, its entry summary, its full superclass chain, and its direct children.

ue3-tools --game-root /path/to/game schema-resolve engine "Class Engine.Actor"

On failure it prints every recorded miss instead — the fastest way to find out which package your --game-root is missing.

pack-mod <EXTRACTED_DIR> [--out|-o <DIR>]

Finds every .uo under EXTRACTED_DIR, groups by the pkg= header token, and writes override blobs per package. Declaration-only files are skipped automatically.

Default output is <EXTRACTED_DIR>/overrides (or an existing overrides / Overrides subdirectory). See Building Mods.

create-font <FONT_FILE> <FONT_NAME> [OUTPUT_DIR] [options]

Requires --game-root. Rasterizes a TrueType font into UE3 font pages and writes the .uo + .dds pair for a Font export and its backing Texture2D exports. FONT_NAME is the dotted path of the target export, e.g. MyPkg.MyFont.

Option Default
--size <F32> 16.0
--dpi <U32> 72
--tex-width <U32> 512
--tex-height <U32> 512
--x-pad <I32> 1
--y-pad <I32> 1
--chars <STRING> ASCII + Ukrainian Cyrillic

elements <RON_PATH> <PATH>

Debug helper. Loads a serialized package table set from RON and parses the tagged property stream of a standalone binary blob against it.

pack <RON_PATH>

Reserved. Full package rewriting is not implemented.

ui

Opens the read-only GUI inspector. Honours --game-root and --verbose.