Commit Graph
16 Commits
Author SHA1 Message Date
Eric WagonerandClaude Fable 5 7a32370ccb Credibility pass: the reel's scars sanded, the veil finally hung
Three blind reviews over the first-person arc, every finding verified
against the source. History-narrating comments made timeless or cut;
the stacked BUDDY comment collapsed to one voice. Dead code out: the
orphaned FACE copy, the DIR_ANGLE duplicate, the dead loop-counter
poke, the impossible-state sentinel. The never-produced "warp" hit
kind resolved the right way — warp mouths now hang a translucent veil
of the painted warp texture, so art that never rendered finally does.
Types tightened (SlabStrike named once, ShareData rides CatchUpStep,
botTier loses its casts), the gallery reads MATERIALS instead of a
hand-copied list, the chronicle resets through one helper, a
superseded share mint rejects instead of stranding, and the conjured
safe gains the growth key its siblings had. Tests lose a triple
assignment, a tautology, and two self-swallowing regex alternatives.
The sprite spec — which still told the artist to paint for additive
compositing the renderer no longer uses — now describes the renderer
that exists.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-23 21:41:11 -04:00
Eric WagonerandClaude Fable 5 5fc5805354 Odds, ends, and every missing effect: doorways dressed, victory earns its fireworks
The audit Eric called for, delivered whole. Open doors are DOORWAYS
now: stone jamb posts at both ends and a lintel hung across the top
(paintable as textures/doorframe.png), the way through open to the eye.
Battle damage shows — the engine's per-edge wallDamage wears painted
cracks into any wall, heavier as harm mounts. The wall safe stands as
a strongbox volume instead of a flat token. Hedges take root: an
underbrush floor decal covers the whole square beneath them (Eric's
report — a billboard at center depth can't reach the floor trapezoid's
near edge), and the hedge itself widens past the cell. Rubble
stretches across the fallen wall's full gap, corner piles landing at
the posts, exactly as its art was painted.

The first-person effect gaps close: victory now throws SIX fireworks
climbing over the winner's home with gold washing the screen; sector
rotations flash violet and heave the whole world; the Thumb of God
lands with a burst and a shudder; walls conjured from nothing rise in
stone dust; and every hazard pratfall plays — pit falls (with a dark
drop and jolt for the faller's own eyes), ooze slips, tack yelps,
thorn snaps, slime, dust. Dying in first person fades long and dark.

And the whole tale travels: a finished game's full replay carries the
share button too — turn -1 mints a link to every turn of the game,
each through its wizard's own eyes, titled for the winner's triumph.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-23 19:32:42 -04:00
Eric WagonerandClaude Fable 5 1e79f2ffb2 The terrain moves in: pits open downward, hedges stand waist-high, ooze is jello
The flat token billboards give way to terrain that inhabits the room.
Pits, slime, tacks, and the dimensional warp's rings are painted INTO
the flagstones — the home-tile decal pass grows into a general per-cell
overlay grid, one texture per cell, alpha-blended texel by texel. Thorn
and rose hedges fill their square wall to wall at half height, drawn
with a near-bias so the wizard standing among the thorns peeks over the
top. The killer ooze rises as a full translucent cube of jello, bricks
and bodies visible through it; dust billows; and each dimensional warp
mouth throws an additive pillar of violet light up from its floor ring.
Billboards learn aspect, translucency, glow, and draw-order bias to
carry it all.

Nine paintable starters ship — four floor decals under textures/, five
standing volumes under terrain3d/ (spec updated for the artist, hedges
wide, jello solid, warpglow as light) — shown in the token workshop,
rehearsable in place with /?fpv&terrain=thornbush@3,7;jello@4,7.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-23 18:25:01 -04:00
Eric WagonerandClaude Fable 5 cdfae39398 The maze performs: doors swing, walls die loudly, homes wear their colors
Entertainment polish for the instant replay, all through one wizard's
eyes. Doors now slide open along their own edge — Wolf3D style — when
anyone steps through in a reel, hold for the crossing, and swing shut;
the raycaster takes a per-edge openness map and doors carry their
texture with them, leaving a sliver of jamb at the far post. A wall
that dies bursts into stone and shakes the camera, then leaves a mound
of rubble at the fallen edge for the rest of the reel (a tenth
paintable sprite, drawn opaque — debris, not light). Jammed locks
seethe: a rusty pulse across the wood, keyed off the view's own door
states. Walking THROUGH a wall shimmers on both faces and washes the
walker's own screen stone-gray. And every home base wears its owner's
emblem on the flagstones — a near-white paintable overlay tinted by
wizard color per cell in the floor cast.

Testing surfaced a real ghost: a body standing near a far warp mouth
also rendered at its virtual position, which can overlap real
corridors — the depth buffer alone cannot clip it. Every column now
remembers whether its ray bent, and a sprite draws only where its warp
side matches the column's; projectile legs carry the same flag.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-23 16:30:35 -04:00
Eric WagonerandClaude Fable 5 e8c6b93c71 Stage three: spells fly through your own eyes
The reel's first-person mode now shows the fight, not just the rooms.
The board flourishes' event map is recast into world space (fx3d):
fireballs, bolts, and thrown things streak caster to target as glowing
billboards; landings swell and fade; blows that land on YOU wash the
screen red and jolt the camera; warp-steps and teleports flash violet;
a hurled body glides fast and straight with its eyes held steady. Nine
paintable conjuration sprites ship at public/fx3d (spec for the artist
in research/), shown in the token workshop beside the masonry.

Three rough edges sharpened along the way: sprites now project through
warp mouths under the same rigid motion the rays use, clipped by the
depth buffer to the opening; fire and warp surfaces pull a different
texture slice per world cell so a long blaze reads as one; and the
replay camera only turns toward an actor its eyes could actually see.

Two more gifts: the reel can record its first-person canvas straight
to a downloadable WebM (⏺ save video), and the About tab now shows
visitors the way into the three workshops.

One buried mine defused: rAF hands frame-start times that can precede
the tween's own clock, and a zero-length turn divided by it — one NaN
facing poisoned every ray black and re-triggered the camera effect
forever. The tween clamps and guards its phases now.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-23 14:51:04 -04:00
Eric WagonerandClaude Fable 5 e0e96ca5ca The art workshop's side door
The hand-drawn SVG token set wires in behind deliberately
undocumented query params — svgPlayers, svgCreatures, svgTerrain,
svgObjects, each =true — swapping that category's art everywhere it
draws: board tokens, lobby standees, roster. public/tokens-svg
symlinks research/tokens-svg, so under the dev server an edit to the
source art shows on the next refresh, and the production build copies
real files through the link. Nobody finds the door unless handed the
key; the photographed set remains the face of the game.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-17 11:27:28 -04:00
Eric WagonerandClaude Fable 5 e475253fb0 Correct 21 more Expansion #1 cards from photos of the card faces
IMG_4693-4696: Killer Ooze, Mental Swap, Opportunity Fire, Idiot,
Illusionary Attack, Interrupt, Shadow (ATTACK/LOS, not a neutral
summon), Safe, Stone To Water, Remove Curse (COUNTERACTION), Rosebush,
Power Attack (NEUTRAL booster), Thumb Of God (physical-dexterity card
flagged for digital redesign), Trader, Walking Dead, Thief
(ATTACK/ADJACENT, "not a spell"), Swap Home Bases, Strength, Ward,
Boobytrap, and Weakness — all verbatim from Eric's cards with printed
corner types and targeting markings; two printed typos on the faces
noted and corrected. All data-only (none implemented yet); these
become the authority for the expansion wave. 84 tests still passing.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 22:33:03 -04:00
Eric WagonerandClaude Fable 5 dd89232499 Correct 12 Expansion #1 cards from photos of the actual card faces
IMG_4691-4692: Create Pit, Deja-Vu, Disease (ATTACK/ADJACENT),
Adrenaline, Big Man, Blaster Wand, Glue, Handful Of Tacks
(NEUTRAL/ADJACENT, "Not a spell"), Heave-Ho, Dust Cloud, Fill Square
With Slime, and Fire Imp — all texts now verbatim from Eric's 6e-era
Expansion Set #1 faces with printed corner types and targeting
markings. These are data-only fixes (none of the twelve is implemented
in the engine yet); the corrected texts and metadata become the
authority when the expansion wave is built. Notable for that future
work: Disease is adjacency-triggered contagion, Heave-Ho throws
carried treasures as weapons, Dust Cloud is a permanent blind-zone,
and Fire Imp is an auto-attacking turret with waterbolt/waterwall as
its counters.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 22:11:47 -04:00
Eric WagonerandClaude Fable 5 5a0003f4ce Correct 15 cards against photos of the actual 6e card faces
Eric spotted mismatches between the 5e-database-derived card data and
his physical 6e cards (photos IMG_4688-4690). All 15 texts are now
verbatim from the faces. Four were mechanical, now fixed in the
engine: BLIND's 6e text adds "engage in combat" — blinded punches
flail on a die roll; PICK LOCK's face states "This is not a spell" —
the lock cards and thrown weapons are physical actions NO SPELL cannot
silence; MIST-BODY passes doors and drifts through thornbushes but
does NOT pass the maze's stone walls (was backwards); WALL OF FIRE's
counteraction mode stops a Waterbolt (previously deferred). Metadata:
UGLY is L.O.S.-marked, MASTER KEY is NEUTRAL/ADJACENT, WIZARDBLADE
and PICK LOCK carry ADJACENT markings (new `adjacent` field), LARGE
ROCK is rethrowable by any player (already engine behavior),
BRAINSTONE's face has no corner type. 84 tests passing.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 21:58:17 -04:00
Eric WagonerandClaude Fable 5 11209cdc5d Add complete token inventory from photos of Eric's counter sheets
IMG_4684-4687: all 33 token types, six double-sided wizard standees
(front and back views), and 12 color-keyed treasure tokens documented
in research/tokens-6e.md. Verification checklist is now fully closed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 19:31:50 -04:00
Eric WagonerandClaude Fable 5 e62d4c118f Record board dimensions (7.5in square) and absence of errata sheet
Owner-measured: sector boards are 7.5in to a side (1.5in per space);
no errata sheet in the 6e box. Closes the physical checklist except
the optional counter-sheet inventory.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 19:20:04 -04:00
Eric WagonerandClaude Fable 5 1a56da9712 Verify final card texts from photos of Eric's physical cards
IMG_4680-4683: Butt-Head and Mega-Monster (the last two cards with no
text from any source) transcribed verbatim; Force Field, Gift From
Above, Redirection, Dimensional Warp renames confirmed; Troll, Wraith,
Skeleton, Thought Steal, Warp Wand, Sticky Wand faces verified; number
cards confirmed to carry no rules text. cards.json is now 208 verbatim
/ 9 paraphrased / 3 uncertain (all Exp2, not owned). VERIFICATION.md
updated to v3 with all priority checks done.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 19:17:33 -04:00
Eric WagonerandClaude Fable 5 7a8aa62b65 Add verified engine data layer: cards.json, boards.json, rules reference
cards.json: 220 cards across base/Exp1/Exp2 with official 6E quantities
from Eric's rulebook (base = exactly 125, Exp1 = exactly 75), verbatim
text for all but two cards, FAQ rulings, and per-card verification
flags. boards.json: all six sector layouts, now physically verified
against Eric's board photos with zero corrections (research/
boards-verification.md), plus 2-8 player setup configurations.
rules-notes.md is the engine implementer's reference; VERIFICATION.md
tracks the few remaining spot-checks (Butt-Head and Mega-Monster card
text foremost).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 18:50:41 -04:00
Eric WagonerandClaude Fable 5 c60d70c5e1 Add photos of all six sector boards from Eric's copy
IMG_4674-4679: the four base-game boards plus the two Expansion Set #1
boards, photographed straight-down. These supersede the low-res BGG
scans as the authoritative source for wall and door positions.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 18:33:04 -04:00
Eric WagonerandClaude Fable 5 ccaaa81ab8 Add scans of Eric's 6E rulebook and Expansion #1 rules, with transcription
Primary source photos of the complete 6th edition rulebook and the
Expansion Set #1 rules sheet, both including official card lists with
quantities. Transcribed to official-6e-card-list.md; both lists sum
exactly to their stated deck sizes (125 and 75), closing the biggest
research gaps: per-card quantities and number-card distribution.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 18:30:11 -04:00
Eric WagonerandClaude Fable 5 574c707798 Add 6th edition research: rules, cards, and board layouts
Assembled from the Wayback Machine (Tom Jolly's wizwar.com), BGG, and
fan archives: 5E rules transcription (6E is a light revision), Jolly's
2002 FAQ, ~208-card Chessex-era card pool with mechanics, all six
sector board layouts reconstructed from photos + fan redraws, and
setup diagrams. Gaps flagged for verification against Eric's copy.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-15 18:25:50 -04:00