A tool that lets you view/edit Darksiders save files and game assets.
Darksiders Warfinitive Edition - All your save game are belong to us!
You can download the latest version from the releases page.
You have a couple options:
-
View the worlds/scripts online. Nothing to download, nothing to install.
-
Run
war --help
for the full list of options. -
Continue reading below for the guided tour.
Which edition of the game do you have?
OG
Your saves should be in a path that looks something like this:
C:\Users\<username>\Documents\My Games\Darksiders\<steam-user-id>\dsauto.dsav
- Run
war dsav decode <path-to-dsav>
to decode a save from.dsav
to.json
. - The newly-created
.json
will have an unpacked version of your save. You can edit this file. - Run
war dsav encode <path-to-json>
to encode back to.dsav
. - To use the new save, just quit to the main menu and choose "Load Game".
Warmastered
Your saves should be in a path that looks something like this:
C:\Program Files (x86)\Steam\userdata\<steam-user-id>\462780\remote\autocloud\save\keen_savegame_0_0.sav
The file contains all 10 save slots (including the autosave slot), but this tool only reads/writes the autosave slot.
- Run
war sav decode <path-to-sav>
to decode the autosave to.json
. - The newly-created
.json
will have an unpacked version of your save. You can edit this file. - Run
war sav encode <path-to-sav> <path-to-json>
to write back to the.sav
. The autosave slot will be overwritten, and the other save slots will be left alone. - If the game is running, you'll need to exit and restart for it to read the new data. Unfortunately, this edition only reads the save file once when the game first loads.
⚠ NOTE (both editions): Darksiders will refuse to load a save if the SaveGameInfo
's UserId
does not match the logged-in Steam user's ID. If you want to use a save on a different account than created it, the UserId
property must be changed to match.
This app can extract the game's various assets to a readable format. It cannot re-pack them into the original format. These command work just as well on files from both OG and Warmastered.
Most of the game's assets (meshes, textures, audio, etc.) are stored in resource packages (*.oppc
) which are referenced by the manifest (media/pc.mnfst
).
To extract these, point the tool at your game directory (either Darksiders
or Darksiders Warmastered Edition
).
war manifest packages unpack <path-to-Darksiders> <output-dir>
The unpacked files will take up about 17GB (for the Warmastered Edition).
The game's worlds are stored in /path/to/Darksiders/media/worlds.mnfst
. To extract them, run:
war worlds decode <path-to-worlds.mnfst> <output-dir>
See the browse readme for more info on what exactly these files are.
The Darksiders devs used a visual editor for some scripts. You can render them to Graphviz files using:
war worlds visscript draw <path-to-worlds.mnfst> <output-dir>
Take a look at the browse branch to see the final results.
The game's scripts are stored in /path/to/Darksiders/media/scripts.obsp
. To extract them, run:
war obsp decode <path-to-scripts.obsp> <output-dir>
Congratulations, you did it! Now you have several thousand more files on your hard drive. 🎉
pre-commit install
This installs a Git hook that runs a quick sanity check before every commit.
cargo run
cargo test