From b1f03fee8189c0506b7a879e19f43edb07c83a90 Mon Sep 17 00:00:00 2001 From: Eric Wagoner Date: Tue, 18 Aug 2026 02:19:32 -0400 Subject: [PATCH] Ask the automatons: the council of three offers hints from your seat MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The owner's idea for teaching novices: a hints button runs all three temperaments' brains against YOUR view — the same cards and board you see, nothing hidden — and each says what it would do in your robes. The Hunter (eyes on the gold), the Berserker (eyes on the blood), the Worrier (eyes on the exits). Available on your turn and while under fire (counter advice included); purely advisory, computed client-side, nothing dispatched. hints.ts translates any Command into plain words. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_0138A8CjeQRpvzKxuMfz1Bqc --- packages/web/src/App.svelte | 36 +++++++++++++ packages/web/src/hints.ts | 100 ++++++++++++++++++++++++++++++++++++ 2 files changed, 136 insertions(+) create mode 100644 packages/web/src/hints.ts diff --git a/packages/web/src/App.svelte b/packages/web/src/App.svelte index 9624469..5cb302f 100644 --- a/packages/web/src/App.svelte +++ b/packages/web/src/App.svelte @@ -949,6 +949,14 @@ illusionPrompt = null; } + // The council of three: what each temperament would do from your seat. + let councilHints = $state(null); + async function askCouncil() { + if (!view) return; + const { tableHints } = await import("./hints"); + councilHints = tableHints(view); + } + let pickChoice = $state(false); function pickUp() { if (treasuresHere.length > 1) { pickChoice = true; return; } @@ -1630,6 +1638,21 @@
{creatureStats(commandedCreature)}
{/if} + {#if councilHints} +
+
The council considers your position… + +
+ {#each councilHints as h (h.name)} +
+ {h.glyph} {h.name} + ({h.mood}) + {h.advice} +
+ {/each} + +
+ {/if} {#if actionsSpent} {#if view.turn.drawForbidden}
Your own bolt has left you reeling — the rest of this turn is lost, and no cards come with it.
@@ -1766,6 +1789,7 @@ {/if} + {/if} {#if youMustDiscard} Hand over the limit — mark cards and discard. @@ -1939,6 +1963,7 @@ +