wc3-cli is a reverse-engineering project that aims to expose Warcraft III as a controllable runtime from a local command-line interface.
This repo intentionally does not include any Warcraft III binaries/assets. You must supply a local install.
- A CLI to query and control the game (units, buildings, UI, camera, resources, triggers, etc.).
- An injected in-process module (DLL) that safely exposes game state/actions.
- A versioned protocol so we can support multiple WC3 builds without “mystery offsets”.
- Launch WC3 under Wine
- Inject our DLL (or use a proxy DLL load path)
- Automate menus enough to start a single-player game
- Read basic state (player / selected unit)
- Issue one safe command (e.g., move)
AGENTS.md: project operating rules (read this first)crates/: Rust workspace crates (cli,injector,protocol,shim,proxy-mss32)docs/: runbooks + reverse-engineering notesscripts/: helper scripts (hashing, local setup)resources/: pointers to external reference repos (not vendored here)local/(ignored): your machine’s install paths, logs, captures, scratch
This scaffold is meant to compile without external Rust dependencies.
cargo build
./target/debug/wc3 --helpNext: follow docs/runbooks/ once you’ve identified your target WC3 executable.