26 lines
970 B
Markdown
26 lines
970 B
Markdown
|
|
# 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
|
|||
|
|
```
|