About this mod
Champollion is a decompiler for the Papyrus script language used in Skyrim, Fallout 4, Fallout 76, and Starfield. It aims to produce a Papyrus Script file (.psc) from a .pex binary file. The decompiled script should recompile to a functionally equivalent PEX binary.
- Permissions and credits
- Mirrors
- Donations
Champollion is a decompiler for the Papyrus script language used in Skyrim, Fallout 4, Fallout 76, and Starfield. It aims to produce a Papyrus Script file (.psc) from a .pex binary file. The decompiled script should recompile to a functionally equivalent PEX binary.
Source code: GitHub
Issue tracker: GitHub
Usage
Champollion is a CLI-only program.
Parameters
Champollion <files or directories> [-p <output directory>] [-a [<assembly directory>]] [-c] [-t]
-h [ --help ] Display the help message
-a [ --asm ] arg If defined, output assembly file(s) to this
directory
-p [ --psc ] arg Name of the output dir for psc decompilation
-r [ --recursive ] Recursively scan directories for pex files
-s [ --recreate-subdirs ] Recreates directory structure for script in root
of output directory (Fallout 4 only, default
false)
-c [ --comment ] Output assembly in comments of the decompiled psc
file
-e [ --header ] Write header to decompiled psc file
-t [ --threaded ] Run decompilation in parallel mode
-g [ --trace ] Trace the decompilation and output results to
rebuild log
--no-dump-tree Do not dump tree for each node during
decompilation tracing (requires --trace)
-d [ --debug-funcs ] Decompile debug and compiler-generated functions
(default false)
--no-debug-line Do not comment with debug info line numbers on
script lines (default false)
-i [ --print-info ] Print header info from the specified PEX file(s)
and exit
--print-compile-time Print the compile time of the script in format of
{filename}: {time_integer} and exit
-v [ --verbose ] Verbose output
-V [ --version ] Output version number
Starfield Warning
The decompiled syntax for the new Papyrus features in Starfield (Guard, TryGuard, Array.GetMatchingStructs) is guessed-at and should be considered unstable, experimental, and subject to change. The proper syntax will only be known in early 2024 when the Creation Kit releases, and there is a decent chance it will not match what we currently output. If you use decompiled scripts as the basis for Starfield mods, please be prepared to update them when the proper syntax is known. All lines containing guessed-at syntax will be marked with a comment starting with ';***'.