THE TOOLBOX
✦ the source, the spec & the merger ✦Everything that makes Grimoire tick is open and free. Here is the code, the format slush designed for trading mod loadouts, and the companion tool that beats Deadlock's mod limit. ★
★ THE SOURCE CODE!!1! ★
Grimoire is an open-source mod manager for Deadlock. The desktop client, the docs, the issue tracker: all of it lives in one public repo. Star it, fork it, file a bug, or just read how the sausage is made.
- MITMIT licensed, free forever. Fork it, read it, ship your own. No login, no subscription, the mods are yours.
- OFFOffline first. No telemetry, no heartbeat, no analytics, EVER. A fresh install phones home for NOTHING!!!
- GBFull GameBanana 1-Click install. Click the Grimoire button on any Deadlock mod page and it downloads, scans, extracts, and registers itself.
- LIBLibrary manager, Hero Locker, and shareable profiles all baked in. Electron + React on the desktop, better-sqlite3 underneath.
★ THE MOD PROFILE SPEC ★
A mod profile is your whole loadout: every mod, in priority order, with its settings. The mp1 format makes one portable, shareable, and readable by any tool, not just Grimoire. Built so a loadout outlives the app that made it.
- mp1Share a whole mod loadout as one tiny code: mp1:<base64url(gzip(json))>. A 30 mod profile squeezes down to 1 to 2 KB. Paste it in a Discord message!!!
- JSONOr save it as a .modprofile.json file (proposed MIME application/vnd.modprofile+json). Human readable, diff-able, archivable.
- OPENGame AND manager agnostic by design. Any tool can read or write it: the spec is public, with full resolution rules + a conformance checklist + security notes.
- v1.1Schema version 1.1. Grimoire layers optional extensions on top (crosshair settings, autoexec commands) without breaking other readers.
how a share code looks
mp1:H4sIAAAA...<gzipped json>
★ VPKMERGE ★
vpkmerge combines a pile of Valve Pak (.vpk)
files into one (or splits one back into many). Deadlock caps mounted mod VPKs at
roughly 100, so pre-merging lets you run a stack the engine would otherwise refuse.
- 100Deadlock only mounts ~100 mod VPKs at once. vpkmerge fuses many VPKs into one, so you can run WAY more mods than the engine wants to allow!!!
- GUIShips as a CLI binary AND a desktop GUI: drag and drop, reorderable mod priority, and a visual conflict resolver with Source 2 texture previews.
- WINThree collision policies: LastWins (default), FirstWins, or Error (--strict, refuse to merge on any conflict). You decide who wins.
- RSPure-Rust vpkmerge-core crate under the hood: inspect(), detect_conflicts(), merge(), split(). Reads chunked VPKs (_dir + _000, _001...) transparently.
merge from the command line
vpkmerge out_dir.vpk mod1_dir.vpk mod2_dir.vpk --verbose