Skip to content

EchoWarrior Contributor Wiki

EchoWarrior start screen with rain and main menu

This wiki is written for someone who may want to contribute to EchoWarrior and needs a calm first map of the codebase. It documents the main code surface: the crate entry points, app shell, state model, asset and pack gateways, logging, performance hooks, mod manifest layer, and command-line tools.

It deliberately does not document every src/game, src/runtime, src/data, src/ui, src/save, or src/scripting submodule in detail. Those areas already have focused design docs, and they change faster than the main crate boundary.

Main EchoWarrior prototype screen with HUD and companions
Main runtime: world simulation, companion labels, HUD, input hints, and gameplay stats in the Macroquad prototype.
Shader arena with VFX tuning controls and runtime HUD
Shader arena: runtime VFX, HUD layering, and data-driven tuning visible in one frame.
Dialogue scene with rain, HUD, and speaker portrait
Dialogue scene: choreography, speaker UI, atmosphere, and gameplay state sharing the same runtime.
Leitmotif scene director with sequences, stage, timeline, and inspector
Leitmotif: the Tauri scene director for authored choreography, backed by the game's `choreo` CLI and schema contract.
Leitmotif action picker with suggestions and beat verbs
Authoring aids: deterministic suggestions, action picking, fix-it flows, and timeline edits all route through one scene document model.

EchoWarrior is built around moddability, data-driven content, and a clean split between renderer-specific runtime code and pure gameplay/data code. A good contribution should make the game easier to understand, easier to mod, or more reliable to ship.

The fastest way to get oriented is to run the game once, read the contributor start page, then pick a small change with a clear verification command.

This is a Vercel-hosted static site powered by Astro and Starlight. Pages are Markdown files under src/content/docs, the navigation is configured in astro.config.mjs, and the site builds to static HTML in dist.

Vercel builds the site with npm run build and serves dist. In the private game repository, this repo is mounted as the Docs/Wiki submodule.

The deployed wiki artifact contains only this public wiki repository. For deeper project notes in a private game checkout, read:

  • Docs/TECHNICAL_NOTES.md
  • Docs/MODDING.md
  • Docs/RELEASE.md
  • Docs/CHOREO_FORMAT.md
  • Docs/GAME_DESIGN_DOCUMENT.md

Run the Starlight dev server:

Terminal window
npm run dev

Then open the local URL printed by Astro.