Scenes for the screenshots come from export_scenes (src/scenes.rs) and are
taken with tools/screenshots.py in the Playwright image.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- README: logo, badges (Rust, WebAssembly, Claude Code, MIT), intro addressed to the master, features with screenshots, the household, how to play, licences and credits
- INSTALL.md: server, PWA, building, tests, savegame service and API, languages, how to refresh generated files
- BESTIARY.md generated from the game's data (tools/make_bestiary.py) with exported sprites and icons (docs/img, test export_doc_images)
- play/DungeonCraft.html: the whole game in one file to download and play offline
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Service: accounts with Argon2 password hashes and session tokens; the first login creates
the admin (shared savegames of before move to the admin); the admin creates and deletes
users; everybody can change the password; savegames are stored and listed per user
- Game: login page before the title (only when the service is reachable), with licence and
repository link; account page (password, logout; users for the admin); text fields with
Tab/Enter, masked passwords, browser dialog on touch screens; long status messages wrap
- Download Standalone: DungeonCraft.html with the game embedded (built in the Docker image,
served to logged-in users via nginx auth_request); works from file:// without server and
opens downloaded savegames
- Without the service (standalone, local files) there is no login, savegame files as before
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- generator: leitmotif as scale degrees, keys/modes, augmentation, diminution, inversion,
fragment sequences, accompaniment and drum styles; hand-written title 2, boss themes, victory 2
- organ, bell, choir, sub bass, tom, crash, harp, timpani; 8-bit samples, unused instruments stripped
- src/tracks.rs generated with categories; music director with boss themes and room moods
- all pieces validated with libopenmpt; notes checked to stay in key
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- src/xm.rs: FastTracker 2 XM and ProTracker MOD replayer (verified against libopenmpt)
- src/audio.rs: music players with crossfade + effect voices, rendered on demand
- src/sfx.rs: 29 synthesised chip sound effects
- www/dc_plugin.js: AudioContext started on first input, streams samples from WASM
- music follows the game: title, rotating build tracks, battle, gate assault, jingles
- macroquad audio removed; all tests run natively with cargo test
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tools/compose_music.py synthesises chip instruments and writes FastTracker 2 XM files
(editable in MilkyTracker). The title leitmotif runs through all pieces: title,
three build tracks, two battle tracks, victory and defeat jingles.
Validated with libopenmpt; instrument tuning checked (A4 = 440 Hz).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>