Credibility pass: one conflict check, one hostile list, one set of chrome
Duplicated logic and styling that had drifted apart is unified: the gesture-sharing check, the hostile spell list, the enchanted test, the plan limits, and the shared button, link, field and disabled styles. Dead plumbing is gone: the always-true implemented flag, the unread cast length, an unreachable guard, an impossible time-stop condition, the unused sequence formatter and utility class, the template placeholder. The counter-spell tests now put a counter-spell in front of a spell, the test helpers live in one file, and the resolver's sections are numbered in order. The deploy script's cache headers now do what its comment says, and the README describes the screen rather than listing features in the order they arrived. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
527820ee95
commit
5de352db43
@@ -17,18 +17,19 @@ npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
You duel a heuristic bot. Choose a gesture per hand, pick which completed spell (if any) each
|
||||
hand casts and at whom, and reveal. Beneath each hand is a list of the spells that hand is
|
||||
part-way through; selecting one makes its next gesture, and the diamond pins it. Every entry
|
||||
in the spell sheet offers "Plan with left hand" and "Plan with right hand", showing what that
|
||||
hand still has to make, so a duel can start from a chosen spell rather than a guessed gesture.
|
||||
When a rule decides something surprising (a shield that stopped a goblin but not a wound
|
||||
spell, a countered spell, a one-handed clap, a reused run of gestures) the result strip
|
||||
explains it once per duel; the checkbox under the hands turns this off. Warnings
|
||||
above the hands cite the opponent's gestures that could finish a hostile spell, and selecting
|
||||
a warning lights those gestures up in the ledger. After each reveal a short strip shows what
|
||||
changed each wizard's health and everything else worth knowing, with the full chronicle in
|
||||
the sidebar. The rules are at `/rules`.
|
||||
You duel a heuristic bot. Each turn, choose a gesture per hand, pick which completed spell
|
||||
(if any) each hand casts and at whom, and reveal. The rules are at `/rules`.
|
||||
|
||||
Around the two hands:
|
||||
|
||||
- the ledger of every gesture both wizards have made, with completed spells named;
|
||||
- beneath each hand, the spells it is part-way through, one click from the next gesture, with
|
||||
a pin to keep one in view; every spell-sheet entry can also be planned with either hand;
|
||||
- warnings citing the opponent's gestures that could finish a hostile spell, which light those
|
||||
gestures up in the ledger when selected;
|
||||
- after each reveal, a strip of what changed each wizard's health and everything else worth
|
||||
knowing, and a one-time explanation when a rule decided something surprising;
|
||||
- the full chronicle and the spell sheet in the sidebar.
|
||||
|
||||
The duel is saved to the browser's local storage after every change, so it survives reading
|
||||
the rules, a refresh, or a phone putting the tab to sleep. Starting a new duel asks first if
|
||||
@@ -38,10 +39,12 @@ one is under way. Nothing is rendered on the server.
|
||||
|
||||
- `src/lib/game/spells.ts` the spell book and monster stats
|
||||
- `src/lib/game/gestures.ts` sequence matching, threat detection, gesture-sharing conflicts
|
||||
- `src/lib/game/state.ts` the duel's state and the seeded random source
|
||||
- `src/lib/game/resolve.ts` simultaneous turn resolution
|
||||
- `src/lib/game/bot.ts` the opponent
|
||||
- `src/lib/game/duel.svelte.ts` reactive store binding the engine to the UI
|
||||
- `src/lib/components/` ledger, hand pickers, status, chronicle, spell sheet
|
||||
- `src/lib/game/duel.svelte.ts` reactive store binding the engine to the UI, saved to local storage
|
||||
- `src/lib/components/` the ledger, hand pickers, status panels, result strip, chronicle, spell sheet, and the sticky bar for phones
|
||||
- `src/routes/rules/` the rules page, rendered from the spell book and the transcription in `docs/`
|
||||
|
||||
## Simplifications
|
||||
|
||||
|
||||
Reference in New Issue
Block a user