Skip to content

Hacking on GDPatch

GDPatch is written in the Rust programming language. The specific Rust nightly toolchain will be automatically installed from the rust-toolchain.toml.

When working on GDPatch, you likely want to build gdpatch-loader:

Terminal window
cargo build --project gdpatch-loader

Copy the output file into your game install like a normal installation.

If you’re building on Linux for use under Wine, you can use the x86_64-pc-windows-gnu target.

GDPatch is split into multiple crates:

  • gdpatch contains mod loading, the patcher API, configs, and other mod loader related things.
  • gdpatch-loader is responsible for loading GDPatch into the game process. This is built as a dynamic (shared) library.
  • gdpatch-godot contains Godot-specific parsers and other goodies.
  • filesilly contains our filesystem detours for making the game read our virtual packs.

Please make sure your commits pass rustfmt and Clippy:

Terminal window
cargo fmt
cargo clippy --fix