# 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 ```