You will need:
- The latest Rust stable
- The MSVC toolchain
- On Linux:
Most building functions are exposed by the xtasks.
cargo xtask run
This task will compile and run the practice tool from the repo.
cargo xtask dist
This task will create release artifacts in target/dist/jdsd_er_practice_tool.zip
.
cargo xtask codegen
This task is responsible for generating Rust code from various external sources. Examples: params from Paramdex, base pointers for array-of-byte scans from the Elden Ring executables.
Some tasks require you to have environment variables defined that are dependent on your system.
You can put all your task-specific environment variables in a .env
file in the top level directory
of the project. Complete example:
$ cat .env
ER_PATCHES_PATH="C:/Videogames/EldenRingPatches"
Before opening a pull request, please make sure that the code is formatted properly and has no
outstanding lints. Use nightly
for opting into the experimental lints and format rules.
cargo +nightly clippy
cargo +nightly fmt --all