After digging through the VT2 SDK `.exe`, I found that `.package` files (`stingray::ResourcePackageResource`) actually have more data than I originally knew about. Most notably, there is a 1 byte `flags` value that is written at the end of every package file. Depending on what value those flags have, more data could come after it, but in most cases, it's just that one byte, which I must have missed in the binary. Ref: #28. Ref: #36. |
||
---|---|---|
crates | ||
lib | ||
.fdignore | ||
.gitignore | ||
.gitmodules | ||
Cargo.lock | ||
Cargo.toml | ||
CHANGELOG.adoc | ||
LICENSE | ||
README.adoc | ||
rust-toolchain.toml | ||
rustfmt.toml |
Darktide Mod Tools
A set of tools to develop mods for the newest generation of the Bitsquid game engine that powers the game Warhammer 40.000: Darktide.
Quickstart
-
Download the latest release for your platform.
-
Place the binary for your system and
dictionary.csv
next to each other. -
Open a command prompt, navigate to the downloaded binary and run
dtmt.exe help
. -
Use the
help
command (it works for subcommands, too) and the CLI Reference.
Runtime dependencies
The LuaJit decompiler (short "ljd") is used to decompile Lua files. A version tailored specifically to Bitsquid may be found here: https://github.com/Aussiemon/ljd.
A custom executable location may be passed via the --ljd
flag during extraction, otherwise decompilation expects ljd
to be found via the PATH
environmental variable.
Building
-
Install Rust from rust-lang.org or via the preferred means for your system.
-
Download or clone this source code. Make sure to include the submodules in
lib/
. -
Run
cargo build
.