First slice: classes, combat, questing, Deadmines

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-10-23 22:52:42 +01:00
commit 71dd99795a
17 changed files with 4522 additions and 0 deletions

25
CLAUDE.md Normal file
View file

@ -0,0 +1,25 @@
# World of Guildhall
WoW Classic–style co-op adventure for Fred's friend group. Stdlib Python server
(`app.py`), content tables (`content.py`), fight engine (`combat.py`), world
rules (`game.py`), vanilla JS client (`static/`). The world is one JSON doc in
SQLite.
## Design rules
- Every ability is auto (rule, AUTO_CD × cooldown) or manual (pressed, real
cooldown). Manual only holds while the player is watching (`WATCH`); never
let an unwatched player's abilities sit unused.
- Dungeons are group-only and are where active play matters: tune bosses so an
all-auto group struggles (`tools/balance.py dungeon`), trash so it doesn't.
- Use Classic's names for places, mobs, quests, NPCs and items.
- In-game text is terse: icons and numbers over prose, details in tips.
- Every requirement/progress ratio is **have / need** (`3 / 10`).
## Checks
```
python3 -m unittest discover -s tests
python3 tools/balance.py solo
python3 tools/balance.py dungeon
```