104 Commits
Author SHA1 Message Date
Tim EvansandClaude Fable 5 7cc8e7ccbc Add Day One PC portraits 159-ART-17..22 (reportage ink, from Continuum2026 batch)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-21 21:50:13 +01:00
Tim EvansandClaude Fable 5 b3894cf98b Sync Day One v1.2 art table + PC portraits 159-ART-17..22 from Continuum2026
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-21 21:49:19 +01:00
Tim EvansandClaude Fable 5 1c31978ad4 Event 159 v1.2: contrarian-pass fixes synced (go-north scene, van run, split-hinge staging)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 17:38:23 +01:00
Tim EvansandClaude Fable 5 59582e845c Event 159 v1.1: desk-playtest fixes synced from Continuum2026
Calls-home box + network schedule, zombie Bite 40%, Fatima refusal branch,
RIB engine reconciliation, pregen SAN lines, quarantine-crossing compromise.
Playtest record lives in Continuum2026/playtest/day-one-playtest-01.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 17:20:33 +01:00
Tim EvansandClaude Fable 5 a0ffd9a097 Event 159: art batch ART-10..16, hand-drawn map H00-B, print handout pack
- Seven new Midjourney assets (prepared prompts 10-15 + drone aerial 16 for
  handout H02-A); ART-12 reworded to put the army line at the north end of
  Tower Bridge, ART-15 shifted to dusk and re-rolled once for photorealism
  drift (reject archived in alts/). ART-10 needed 'no visible gore' removed —
  the word trips MJ's filter even in negation.
- 159-H00-B-map.svg: hand-drawn South Bank map (Waterloo-Tower Bridge) with
  audited geography, PC start positions, escape routes A/B.
- event-159-handouts.html: print pack — alert cards x2 + 999 script, social
  strips, Callum's notebook slips, Priya's phone (Clue 9), map + drone plates,
  six pregen cards (H00-A), scene plates.
- Scenario art/handout tables and console PROPS gallery updated; art README.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 12:49:43 +01:00
Tim EvansandClaude Fable 5 df0c59df00 Event 159: add GM console — Day One (London Falls)
Touch-first single-file GM app in the REP-DETECT vein: session clock with
checkpoint stamping and hard triggers, GM-truth timeline, clue tracker with
fallbacks, BRP d100 roller (special/critical thresholds) with quick-roll chips,
sanity trigger buttons, horde + infection trackers, PC/NPC dashboards,
fullscreen table props (Emergency Alert screen, social feed, radio fragments,
999 call) and art gallery. Autosaves to localStorage; export/import JSON.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 12:27:32 +01:00
Tim EvansandClaude Fable 5 41daf8d3fb Event 159: consistency fixes — timeline arithmetic, South Bank geography, NPC roster
- Callum's 07:14 fragment vs 10:47 alert: 'two hours' corrected to 3+ hours (clue 2 + COBR delay wording)
- Guy's car park overlooks Guy's, not St Thomas' 'across the river' (both are south bank); St Thomas' hook reworked
- Bankside Pier route: Blackfriars underpass replaced with Clink Street railway arches; Tower Bridge is east, pier west
- Bridge Group holds the south-side gatehouse (players arrive from Tooley Street)
- Fatima Osei renamed Balogun (collided with PC Kira Osei-Mensah)
- Tom's van (Lambeth North) is same bank, not 'across the river'; PC spread is ~2 km not 600 m
- River figure depth aligned with art (waist-deep); map handout extended to Tower Bridge
- Olu given a written reason to converge (radio names the bus crash)
- Added NPC Roster quick sheet (house style)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 12:27:32 +01:00
timevans666 5527f41241 Directive 19: post-session update — live play discoveries + cinematic rewrite
LIVE PLAY UPDATES (from first session at Voss building)

Voss scene — Act I:
- Bodyguard kills differentiated: Payne = Wren's clean signature,
  Velasco = Sera's messier work — she fought back and got skin under her nails
- NEW CLUE #13: CCTV footage — Charlise retrieved 34 seconds from the
  partially-missed east lobby cam: two women entering 22:40, coordinated,
  neither looks at the camera
- NEW CLUE #14: Skin under Velasco's nails — female, mid-twenties, not on
  record; Sera is carrying that wound right now
- Charlise added as key NPC in the scene: building manager who pulled the
  CCTV and building access logs, calm, professional, cooperative

Judge Ostrow scene — Act I:
- NEW WITNESS: Michelle — sex worker, sedated not killed, found the body,
  still in holding room. She saw the jaw scar. She heard Ostrow say the name.
- NEW CLUE #15: Ostrow said 'Wren' — he recognised his killer before she
  reached him and didn't try to run or call for help
- Ostrow scene updated to include Michelle's presence and testimony

NEW NPCs:
- Charlise: Building Manager, Bradbury Tower. Stats, disposition arc,
  GM note. Uses Marisol image (closest match) — placeholder for real art.
- Michelle: Witness. High Empathy/Insight (she reads people for a living).
  GM note contains the critical detail she holds back: Ostrow said 'Wren.'

NEW HANDOUT: BR19-H00-C — CCTV Stills
  LAPD evidence format, 34-second partial recovery, two subjects described
  frame by frame, analyst note flagging coordinated movement, forensic cross-
  reference to Velasco nail DNA, Subject B favouring left arm on exit

CLUE TRACKER updated:
  - Essential clues now 11 (was 8) — 3 new live-play discoveries added
  - Clues 13, 14, 15 pre-marked as found (state:1) since they were
    discovered in session
  - Clue #4 updated: 'two killers — different techniques' replaces
    'different prints' (more specific to what was found)

CINEMATIC STORY REWRITE:
  All five chapters rewritten for screen-prose quality. Present-tense
  opening. Camera-movement structure. Shorter paragraphs, harder cuts.

  Chapter 1 (The Past): opening paragraph positions the Blackout as
  sensory presence; tighter; cell decision rendered as a single shot.

  Chapter 2 (now 'The Night It Begins'): fully rewritten to include the
  actual play events — Charlise in the lobby, Velasco's wound, Michelle
  in the holding room, Ostrow saying 'Wren.' The key moment is Michelle's
  testimony rendered as the chapter's closing pull-quote.

  Chapter 3 (now 'The Trail Opens'): consolidated trail; Halden rendered
  in a single economic paragraph ('the point of Halden is not what he
  does in this room'); Sera's arm wound visible as continuity detail.

  Chapter 4 (The Tower): tighter, harder, more present-tense rhythm.

  Coda: cut to minimum — the image, the decision, Greer, and Wren walking.
2026-05-22 23:14:37 +00:00
timevans666 015f28f7f8 Directive 19: add player introduction website
Single-file standalone player-facing site — 7.6MB, offline-capable.
Embedded: 9 images + Neon Rain Trough ambient soundscape (base64 MP3).

Sections:
1. HERO — LA 2037 establishing shot fullscreen with animated rain
   overlay, DIRECTIVE / 19 Orbitron title with neon flicker, scenario
   tagline in italic, hero chips (6 players / one night / LA 2037),
   scroll hint
2. THE CITY — Two-column: city prose with amber drop-cap (Blackout,
   Wallace monopoly, Nexus-8 underground, rain, the mayoral race) +
   five detail cards (Blackout 2022, Wallace, Nexus-8s, weather, race)
3. WHO YOU ARE — Rep-Detect division, what a Blade Runner is, the
   human/replicant dynamic, the Retirement mechanic (Promotion Points
   vs Humanity) in a warning box. Noodle bar image with caption.
4. THE CALL — Centred dispatch box styled as LAPD terminal output,
   03:14:22 timestamp, full opening read-aloud without spoilers
5. YOUR TEAM — 3×2 character portrait grid. Each card: portrait photo,
   Human/Nexus-9 badge, name, role, atmospheric description (no hooks,
   no stats, no spoilers), years on the force. Human = amber,
   replicant = magenta.
6. THE SHAPE OF THE NIGHT — salt-flats parallax background, what the
   players know going in, the DIR-019 neon stamp

Design: same CRT scanlines (drift + tear + refresh sweep), Orbitron/
Rajdhani/Share Tech Mono/Noto Sans JP stack, warm amber palette,
kanji decorations, rain animation on hero, scroll-reveal on all key
elements via IntersectionObserver, tonight section parallax scroll,
sound button with fade-in (45% volume, requires user click).
2026-05-22 15:57:13 +00:00
timevans666 908cdc7da6 Directive 19 companion: add lead trail connectors to all Act scenes
All 12 scenes across Acts I, II, and III now have a 'why go here'
lead-trail strip displayed before each scene card.

Each strip has two lines:
- WHY: plain English reason the PCs are here (what drives them)
- LEAD: the specific clue, event, or mechanic that sends them

Act I leads:
  Voss Penthouse    → Duty call — Greer routes the 03:14 alert
  City Morgue       → Second body (Ostrow) found same night, same mark
  Lin Ai's Bar      → Marisol Yu mentions her / DIR-019 graffiti on Fairfax
  Volkov phones     → Lin Ai gives Volkov's address; then he calls first

Act II leads:
  Volkov's Clinic   → His call cut mid-sentence at the end of Act One
  Pham's Marina     → Last living name on Lin Ai's list of nine
  Saltgrove Whouse  → Three paths: Pham's confession / Ostrow's files / Sera
  Sera's Ambush     → She comes to them — GM picks the moment
  Jeopardy Beat     → Not a destination — Halden has been working too

Act III leads:
  Sandoval 88th     → Wren's H02-B note: SANDOVAL. 21:00 — 88.
  Sandoval Roof     → Sera told them about the broadcast (if captured)
                      OR building management terminal flags relay hack
  The Terrace       → Wren moves there; the right PC follows naturally

CSS: .lead-trail (amber left border, gradient bg), .lead-why (body),
.lead-clue (monospace, LEAD: prefix in amber), .lead-none fallback
2026-05-22 15:18:07 +00:00
timevans666 a1bb7677ed Directive 19 companion: add Voss victim profile + personnel file handout
VOSS VICTIM PROFILE (in NPCs section)
- Full victim dossier card with red border and VICTIM — BODY #1 marker
- Three-tab layout: Timeline / Embedded Clues / GM Note
- Timeline: 9 entries from 1991 service start through 21 Mar 2037 death
- Embedded Clues: 6 expandable clue items (Pelican Holdings timing,
  2027 Director's Commendation outside chain of command, retirement
  timing, Payne & Velasco deaths, the unlocked panic room, the phone
  call 40 minutes before time of death)
- GM Note: the moral weight of Voss — he was complicit, but he also
  picked up the phone and left the panic room undisturbed
- 'OPEN PERSONNEL FILE' button links directly to Handout H00-B

NEW HANDOUT: BR19-H00-B — Voss Personnel File
- LAPD personnel file styled in bank/terminal format
- Redacted 2027 Special Operations assignment
- Director's Commendation authorised by Deputy Mayor's Office —
  classification ABOVE TOP SECRET
- Post-service career: Voss Security Consulting → Cortez campaign
- Financial anomalies flagged: Pelican Holdings 2k/month 10 years
- Known associates: Payne & Velasco — both retired Oct 2027, both on
  payroll within 3 weeks, both dead with Voss
- Forensic Accounting examiner notes calling out all four red flags
- H00-B added to handout grid with 'shown' tracking

ACT I WIRE-UP
- Voss Penthouse scene details include two clickable inline buttons:
  '▸ VIEW VOSS VICTIM PROFILE' (navigates to NPCs section) and
  '📄 PULL PERSONNEL FILE BR19-H00-B' (opens handout modal)
2026-05-22 14:24:26 +00:00
timevans666 4e53fc9eb4 Directive 19: add full interactive GM companion app with embedded artwork
Single-file standalone HTML companion app — 6MB, offline-capable,
all 27 images base64-embedded (14 portraits + 13 locations).

Sections:
- Hero/Cover: LA 2037 establishing shot as fullscreen background,
  scenario title with neon flicker, tagline, quick-nav tiles
- Timer: sticky bar with progress segments, act-checkpoint alerts,
  counts to 3:30, hard alerts at 2:45 and 3:15
- Story: 5 illustrated prose chapters (The Past / The Players Arrive /
  The Hunt / The Tower / The Closing Image) with location images
- Acts: three tabbed act views, each with collapsible scene cards,
  scene photography, atmos tags, key details, mechanic callouts,
  pacing notes, session checkpoint table
- Characters: 6 PC cards with portraits (Stats / Biography / Mods
  tabs), full stat blocks with die badges, personal hooks, health/
  resolve boxes, replicant magenta / human cyan visual distinction
- NPCs: 8 NPC cards with portraits (Stats / Notes / Gear / Terrace
  tabs), threat level badges, disposition arcs, GM-warning boxes,
  Wren's terrace lines with the structural-escape reminder
- Locations: illustrated gallery grid (13 locations), tappable full-
  screen lightbox with atmospheric descriptions and scene details
- Clues: tracker (pending → found → missed), essential progress bar,
  optional and fallback sections, localStorage persistence
- Handouts: tile grid with 6 handouts, full-screen modal with
  distinct paper styles (terminal / aged / handwritten / bank /
  broadcast), shown/unshown state tracked
- Reference: 6 tables (ratings, key skills, stress dice, V-K results,
  outcomes matrix, Promotion vs Humanity)
- CRT effects: scanline drift, occasional horizontal tear, rolling
  refresh sweep; Orbitron / Rajdhani / Share Tech Mono fonts;
  kanji/katakana worldbuilding decorations throughout

Portraits: Iris Kovac, Marc Esposito, Saoirse Lin, Dmitri Vance,
  Talia Ostrow, Cole Whitford, Wren, Halden, Mayor Cortez, Sera Park,
  Lt Greer, Lin Ai, Det Hara, Marisol Yu

Locations: LA 2037 establishing, Bradbury interior, Voss penthouse
  top-down, City Morgue, Lin Ai's Noodle Bar, Volkov's Clinic,
  Pham's Marina, Saltgrove Warehouse, Parking Structure, Sandoval
  Fundraiser, Sandoval Roof, The Terrace, Closing Salt Flats
2026-05-22 13:59:41 +00:00
timevans666 251b820a4c Directive 19: add Foundry VTT battlemap prompts (10 maps)
Adds 10 Foundry VTT-spec playable battlemaps (BR19-VTT-01 through 10).
Distinct from the blueprint maps and evidence exhibits — these are the
maps PCs place tokens on during play.

FORMAT SPEC researched against Foundry VTT documentation:
- 100 pixels per grid square (Foundry default)
- Image dimensions clean multiples of grid count (no partial squares)
- Aspect ratios chosen for clean grid divisions (4:3, 7:5, 16:9, 9:5, 3:2, 2:1, 7:4)
- No baked grid lines (Foundry draws its own)
- No baked labels or text (added in Foundry as scene notes)
- No baked dynamic lights for indoors (Foundry's lighting layer handles)

STYLE DIRECTION: top-down orthographic painted floor plan, not blueprint.
Photorealistic-adjacent texture with Blade Runner colour grading. Sodium
amber + cyan + magenta neon noir, wet reflective surfaces, deep shadow
corners, atmospheric haze baked in. Cinematic painterly finish.

MAPS:
- VTT-01 Voss Penthouse (32x24, 3200x2400) — Act I opening crime scene
- VTT-02 Volkov's Clinic (24x18, 2400x1800) — Halden's introduction
- VTT-03 Pham's Marina Safehouse (28x20, 2800x2000) — Wren walks past
- VTT-04 Saltgrove Warehouse 7 (36x20, 3600x2000) — memorial / ledger
- VTT-05 Parking Structure (32x18, 3200x1800) — Sera ambush
- VTT-06 Sandoval 88th Floor (36x24, 3600x2400) — fundraiser
- VTT-07 Sandoval Roof (24x18, 2400x1800) — broadcast relay
- VTT-08 The Terrace (32x16, 3200x1600) — the climax stage
- VTT-09 Lin Ai's Noodle Bar (16x12, 1600x1200) — small conversation
- VTT-10 City Morgue (28x16, 2800x1600) — forensic scene

Shared style suffix locks orthographic projection, banishes grid lines
labels and tokens, sets the cinematic Blade Runner colour grade.

Per-scene Foundry setup notes included: scene config, walls/lights/sound
layer recommendations per location, token sizing, the replicant-magenta
trick (faint dim magenta point light follows Wren through scenes — players
feel her without seeing her), and iteration tips for fighting Midjourney's
tendency to drift toward 3/4 isometric instead of true overhead.

File now 1191 lines, 60 total prompts:
  6 PCs + 8 NPCs + 12 location illustrations + 12 blueprint plans
  + 12 evidence exhibits + 10 Foundry VTT battlemaps
2026-05-22 11:27:41 +00:00
timevans666 5c90b260f5 Directive 19: add evidence-exhibit variant maps to prompt library
Adds 12 new prompts (BR19-EX-01 through BR19-EX-12) — each one the
in-fiction case-file dressing for one of the existing blueprint maps.

Format: tan-paper folder background with the blueprint reproduced at
center, four annotated polaroid photographs paper-clipped at the
corners (each with handwritten red-ink captions on masking-tape labels),
black redaction blocks across portions of the margin text, a chain-of-
custody box at the bottom with three signatures filled in, faint LAPD
REP-DETECT shield watermark, CASE 037-2037-11473 DIR-019 EVIDENCE
EXHIBIT stamp top right, handwritten exhibit-letter tag.

Each prompt names four specific polaroids that ground the exhibit to
the scenario:

- EX-01 (Voss penthouse): mirror DIR-019, kitchen bootprint,
  Voss-in-bathtub, panic-room door
- EX-02 (Morgue): Voss slab, Ostrow tattoo, paralytic ampoule, Ostrow
  effects bag with pocket watch
- EX-03 (Lin Ai's noodle bar): surveillance still, seized notebook,
  Fairfax overpass exterior, Persian Quarter DIR-019 graffito
- EX-04 (Volkov clinic): body on procedure table, the pen at reception,
  humming autoclave, the fake federal credential
- EX-05 (Pham marina): body at kitchen table, handwritten confession,
  wet bootprint size 9, Wren's H02-B note
- EX-06 (Saltgrove warehouse): memorial beam photographs, acid-burn
  floor, ledger page H02-A, approach road mile 22
- EX-07 (Parking structure): sound-grenade residue, Sera profile,
  9mm wall damage, B-negative blood trace
- EX-08 (Sandoval 88th): Cortez podium press photo, green-room badge,
  service-corridor pry damage, guest manifest page
- EX-09 (Sandoval roof): relay terminal, broadcast-file audio fragment,
  ladder access pry marks, HVAC wiring tap
- EX-10 (The terrace): wet stone handhold abrasion, surgical blade
  fragment, oilcloth fibre, BODY NOT RECOVERED notation
- EX-11 (Salt flats regional): estate gate, warehouse 7 exterior,
  approach road mile 14 tracks, 2027 satellite overhead
- EX-12 (Central LA overview): Bradbury at night, Sandoval entry,
  Volkov clinic street view, LAPD precinct fleet

Shared evidence-exhibit style suffix at top of section keeps the
twelve exhibits visually consistent.

Section also includes notes on the Midjourney challenges (text
rendering, redaction blocks, polaroid placement) and a usage guide:
plain blueprint variants for quick scene navigation, exhibit variants
when a PC explicitly pulls a file — e.g. Iris's [BR: Connect] roll to
pull the Voss file should produce EXHIBIT A, not the plain map.

File now 867 lines, 50 total prompts.
2026-05-22 11:18:38 +00:00
timevans666 4f99d12060 Directive 19: full Midjourney prompt library + blueprint scenery maps
Adds scenario-library/blade-runner-rpg/art/midjourney-prompts.md
(570 lines) — complete art generation reference for the scenario.

CHARACTER PORTRAITS (6 PCs)
- BR19-PC-01 Iris Kovac (human senior, vodka flask)
- BR19-PC-02 Marc Esposito (Nexus-9, the photograph)
- BR19-PC-03 Saoirse Lin (forensic, father's photo)
- BR19-PC-04 Dmitri Vance (ex-military, tactical)
- BR19-PC-05 Talia Ostrow (detective, uncle's pocket watch)
- BR19-PC-06 Cole Whitford (Nexus-9 combat, no effects)

NPCs (8 prompts)
- BR19-NPC-01 Wren (jaw scar, oilcloth coat, terrace rain)
- BR19-NPC-02 Halden (charcoal suit, pen, polite menace)
- BR19-NPC-03 Cortez (green dress, hidden tremor)
- BR19-NPC-04 Sera Park (apprentice, mother's signature tattoo)
- BR19-NPC-05 Lt Greer (tired, enamel coffee mug, wedding ring)
- BR19-NPC-06 Lin Ai (peacoat, notebook, noodle bar table)
- BR19-NPC-07 Det Hara (LAPD liaison, leather jacket, pivot)
- BR19-NPC-08 Marisol Yu (morgue clerk, koi tattoo)

LOCATION ILLUSTRATIONS (12 prompts)
- BR19-LOC-01 LA 2037 aerial cover shot
- BR19-LOC-02 Voss penthouse / Bradbury crime scene
- BR19-LOC-03 Lin Ai noodle bar interior
- BR19-LOC-04 City morgue sub-basement
- BR19-LOC-05 Volkov's clinic / Halden's introduction
- BR19-LOC-06 Pham's safehouse / Wren encounter
- BR19-LOC-07 Saltgrove warehouse / sisters' memorial
- BR19-LOC-08 Parking structure / Sera's ambush
- BR19-LOC-09 Sandoval Tower 88th floor fundraiser
- BR19-LOC-10 Sandoval roof / broadcast relay
- BR19-LOC-11 The terrace (the heart of the scenario)
- BR19-LOC-12 Closing image: salt-flats walk

BLUEPRINT SCENERY MAPS (12 floorplans, top-down)
LAPD evidence-archive blueprint style — white and pale cyan lines on
Prussian-blue ground, drafting conventions, dimensions, north arrows,
LAPD REP-DETECT CASE 037-2037-11473 DIR-019 EVIDENCE stamp, red-ink
case annotations, weathered paper texture.
- BR19-MAP-01 Voss penthouse
- BR19-MAP-02 City morgue
- BR19-MAP-03 Lin Ai's noodle bar
- BR19-MAP-04 Volkov's clinic
- BR19-MAP-05 Pham's marina safehouse
- BR19-MAP-06 Saltgrove Warehouse 7
- BR19-MAP-07 Parking structure ambush
- BR19-MAP-08 Sandoval Tower 88th floor
- BR19-MAP-09 Sandoval roof / broadcast
- BR19-MAP-10 The terrace
- BR19-MAP-11 Salt flats regional map
- BR19-MAP-12 Central LA precinct hand-drawn map

All prompts use Midjourney v7 syntax with --style raw. Portraits at
2:3, locations at 16:9 (21:9 for the salt-flats closing), maps at
16:9 (tablet) or 3:2 (printed sheet). Stylize values tuned per
subject. Shared style suffix for blueprints to keep them consistent.

Updated blade-runner-rpg/README.md to link the prompts file.
2026-05-22 08:30:24 +00:00
timevans666 7afae18f57 Directive 19: typography overhaul + kanji/katakana worldbuilding
TYPOGRAPHY — Courier New was the wrong register. Replaced with proper
Blade Runner UI stack matching the rest of the repo:

  Orbitron (500/700/900)      — title, timer, section headers, stats,
                                 NPC/PC names, dashboard tile labels,
                                 progress bar, act tabs, story titles
  Rajdhani (300-700)          — body, nav, card titles, hooks, story
                                 prose. Condensed sans, very 2049.
  Share Tech Mono             — readouts, stat labels, code, clue meta,
                                 handout IDs, role lines. Mono with
                                 attitude vs. Courier's typewriter feel.
  Noto Sans JP (400/500/700)  — kanji/katakana decoration

  All four loaded via Google Fonts CDN with system fallbacks (matches
  pattern used in event-91, event-93, event-95 apps).

KANJI / KATAKANA DECORATION — the LA-2037 worldbuilding signature:

  Header:
    ロサンゼルス・2037     (Los Angeles 2037 in katakana, subtitle)
    指令 第19号             (Directive Number 19, kanji mark beside title)

  Section titles get their own kanji on the right:
    Story            物語  (monogatari, tale)
    NPCs             人物  (jinbutsu, characters)
    Clues            手掛り (tegakari, clue)
    Handouts         資料  (shiryō, materials)
    Players          捜査官 (sōsakan, investigators)
    Reference        参照  (sanshō, reference)

  Act tabs get theatrical numerals:
    Act I · 第一幕  /  Act II · 第二幕  /  Act III · 第三幕

  Story chapters get traditional chapter numerals:
    Chapter One · 第一章 ... Coda · 終章

SIZE BUMPS — slight upticks to make the heavier display fonts breathe:
  title 22 → 26px, timer 30 → 32px, section titles 22 → 22px (font
  weight 700, letter-spacing 5px), NPC names 19 → 20px, PC names 18 →
  19px. Letter-spacing increased across all uppercase headers.

Modal handouts kept in Share Tech Mono (terminal/typewriter feel is
correct for in-fiction documents).
2026-05-21 23:28:56 +00:00
timevans666 430792ecdd Directive 19: CRT distortion — scanline drift, occasional tear, refresh sweep
Three layered CRT motion effects, all subtle, all GPU-cheap:

1. SCANLINE DRIFT — the scanlines slowly migrate downward by 4px over
   9 seconds, looping. Imperceptible at first glance, builds the
   'this screen is alive' sense over a session.

2. CRT TEAR — every 13s the scanline layer briefly shifts horizontally
   by 1-2px at four irregular moments (18.5%, 47.5%, 72.6-73%, 91.5%
   of cycle). The 72.6% tear also dims opacity slightly — a stronger
   'glitch' beat among smaller ones. Cadence designed to feel random,
   not metronomic.

3. REFRESH SWEEP — a 180px-tall faint amber band rolls from top to
   bottom of the viewport every 17 seconds. Mimics the CRT refresh
   pass. Opacity capped at 0.045 — present, not distracting.

All three use prime-ish durations (9, 13, 17) so the layered effects
never sync back into the same pattern within a session.
2026-05-21 23:14:32 +00:00
timevans666 40a1d88f66 Directive 19: deeper Blade Runner aesthetic + Story screen
AESTHETIC PASS
- Warmer sodium-amber dominant palette (bg shifted from cool blue-black
  to warm dark, amber from #ffb84a to #ff9818 for stronger LA-2049 feel)
- Neon glow text-shadow on title, timer, section headers, active nav,
  amber elements throughout
- Title flicker animation (subtle 6s irregular cycle)
- CRT scanline overlay (subtle horizontal lines, mix-blend multiply)
- 2049-style chamfered corner clip-paths on dashboard tiles, NPC cards,
  PC cards, header buttons
- Sodium-glow body background gradient (warm top, cool rain bottom)
- Active progress bar segments get amber under-glow accent line
- All section titles get '▸' leading caret + neon glow + amber border
- Replicant magenta shifted to richer pink-magenta (#ff5fbc) with own glow

NEW STORY SCREEN
- 'The Story' added to sidebar (second position, after Home) with
  📖 icon, and as home dashboard tile
- New screen: full prose narrative read-through in five chapters:
  The Past · The Players Arrive · The Hunt · The Tower · The Closing
- Bookish typography: amber drop-cap first letter of each chapter,
  pulled-quote callouts for key beats, replicant-name highlighting
  in magenta with glow, justified body text, max-width 720px
- Each chapter card uses angular clip-path with amber accent bar at
  top-left and amber-glow chapter number caption
- New STORY data object (5 chapters, ~1600 words total)
- New renderStory() function called in init

Net: +394 lines, -84 lines. File now 2372 lines, 127KB.
2026-05-21 23:10:44 +00:00
timevans666 0e8c13567a Add Blade Runner RPG system to scenario-library with Directive 19
New system folder: scenario-library/blade-runner-rpg/

Scenario: Directive 19 — LA 2037, six Blade Runners, 3.5hr
- Pure-investigation Act One (no combat)
- Action Act Two (Halden, Wren passes through, Sera ambush, salt flats)
- Tower showdown Act Three with structural Wren escape on the terrace
- 8 NPCs with stat blocks: Greer, Lin Ai, Marisol Yu, Halden, Wren, Sera,
  Hara, Cortez
- 6 pre-gens with personal hooks: Iris/Marc/Saoirse/Dmitri/Talia/Cole
  (3 human, 2 Nexus-9 replicant, 1 ambiguous senior)
- Full clue trail (8 essential + 3 optional + 1 special + 6 fallbacks)
- 6 handouts written: crime scene report, Lin Ai's list of nine,
  Voss bank statement, salt-flats ledger, Wren's note, the broadcast
- The Tangent: Marc's stolen memory of Hashem Lin (Saoirse's father),
  Halden surviving for campaign follow-up
- Full GM Notes covering tone, restraint on Halden, the terrace scene

GM HTML app: scenario-library/blade-runner-rpg/apps/directive-19/index.html
- Single-file, offline, tablet-friendly (2062 lines)
- Dark blue-black + amber/cyan/magenta palette
- Sidebar nav: Home / Acts / NPCs / Clues / Handouts / Players / Reference
- Timer with hard-checkpoint alerts at 0:15, 1:00, 1:15, 1:40, 2:00,
  2:20, 2:45, 3:15, 3:30
- Clue tracker (pending/found/missed cycle) with progress bar
- Handout modal with 5 paper styles (terminal/aged/handwritten/bank/broadcast)
- NPC cards with REVEAL GM NOTES classified-eyes-only sections
- PC cards with replicant/human visual distinction
- BR RPG reference: core mechanic, skill mapping, stress dice triggers,
  V-K use, combat quick ref, Promotion vs Humanity table
- localStorage persistence across sessions (clues, classified, timer)

Updated top-level README and scenario-library README to include the
new system folder.
2026-05-21 22:49:27 +00:00
timevans666 d1a898441c Add 7 two-page GM synopsis PDFs — all scenarios
scenarios/gm-docs/synopsis-*.pdf

Covers all ChaosiumCon 2026 events:
  Event 91  — BRP: The Night Crawler
  Event 92  — CoC 1980s: Last Train to Coney Island
  Event 93  — CoC 1920s: Not Another Telegram
  Event 95  — Ringworld: A Question of Singularity
  Event 96  — Ringworld: Is Love the Answer?
  Event 159 — BRP: Day One (London Falls)
  Stormbringer — The Storm Pact

Each PDF is exactly 2 A4 pages: GM truth, act-by-act breakdown,
NPC stats, player character hooks, handout reference, SAN tables,
pacing triggers and fallback notes.
2026-05-19 20:54:09 +00:00
timevans666 0a11f611de Ringworld sheets v2.1 — weapons wrap, armour column, no back-page equipment
WEAPONS — damage column word-wrap:
  Before: character-count split at 14 chars (broke 'paralytic' → 'paralyti/c')
  After: textwrap.wrap() at word boundaries, width=17
  Long values: two lines, both at correct baselines with proper spacing

BACK PAGE — equipment removed:
  Before: equipment listed again (solid black block, white text) — duplicate of front
  After: full-width white SESSION NOTES area with ruled lines for writing

ARMOUR COLUMN — now populated from character data:
  Yashti Korr: Chest AP 2, Abdomen AP 2 (body armour torso)
  RR'raan: AP 1 all locations (natural Kzin hide)
  Tomas Veld: AP 1 all locations (hard environment suit)
  Dr. Mira Chen: no armour
  Whisper-of-Distant-Worlds: no armour
  Sola Reyes: no armour
  Armour cells: green tint when protection present, white when none
2026-05-19 16:32:41 +00:00
timevans666 2ee60adefc Ringworld sheets v2 — weapons fix + printer-friendly redesign
WEAPONS SECTION — proper 4-column layout:
  Before: Name (left) | Skill% (right large) + DMG/RNG buried in small sub-line
  After:  NAME | SKILL % | DAMAGE | RANGE — each in its own column
  - Column dividers with proportional widths (38/14/25/23%)
  - Weapon name + notes (italic sub-line) in col 1
  - Skill% centred in col 2, accent colour
  - Damage bold and prominent in col 3 (two-line for long values)
  - Range in col 4, monospace

PRINTER-FRIENDLY (less solid black/dark blocks):
  Stats band:     INK (#06060e) → PALE (#e8e8f4), values INK not white
  Derived stats:  #0e0e1e → #eeeef8, cell fill #1a1a2e → #f8f8ff
  HP tracker:     #0a0a18 → white
  Equipment:      solid INK → white + accent outline border, text INK not #ccccee
  Personality:    solid accent fill → white + accent outline, text INK not white
  Footer:         INK → #f0f0f8 pale
  Back page:      #0a0a18 → #13132a (kept dark for sci-fi but lighter)
  Table rows:     #0e0e22/#09090f → #1a1a3a/#121228 (slightly lighter)
2026-05-19 16:25:34 +00:00
timevans666 27c0ace199 Fix HP/SAN track label bleed — BRP v4 and Stormbringer v3
Same root cause as LTCI/NAT: box top was rendering above label baseline.

BRP v4 (build_brp_characters_v4.py):
  BOX=20 → BOX=14, GAP=4 → GAP=3
  y_start: top-20 → top-29  (bleed was 13pt — worst of all scripts)
  height:  20+rows*(B+G) → 29+rows*(B+G)
  Number font: 9pt → 8pt, vertical centre adjusted

Stormbringer v3 (build_character_pdf_v3.py):
  BOX kept at 15, y_start: top-18 → top-29  (bleed was 9pt)
  height: 18+rows*(B+G) → 29+rows*(B+G)
  Portrait paths updated: /mnt/user-data/uploads → repo art directory
  IMG_BASE cleared (paths now fully absolute)

Ringworld (apps/ringworld-character-sheets/build.py):
  CLEAN — uses fixed mm-sized anatomy diagram boxes, not flowable tracks.
  Labels sit inside each box at fixed mm offsets. No bleed risk.

All PDFs rebuild successfully at correct page counts:
  BRP Day One: 14 pages, Night Crawler: 13 pages, Stormbringer: 13 pages
2026-05-19 10:24:10 +00:00
timevans666 6ab87271af NAT v1.2 — fix HP/SAN track label bleed (same bug as LTCI)
HPTrack: BOX=17 → BOX=14, y_start top-20 → top-29, height 20+rows*(B+G) → 29+rows*(B+G)
Result: 2pt clear gap between label baseline and box top (was 10pt INTO the label)
Box number font: Helvetica-Bold 9pt → 8pt to fit 14pt box cleanly
Page count unchanged: 14 pages
2026-05-19 09:24:00 +00:00
timevans666 edd966b4f5 LTCI v2.2 — fix SAN/HP track label bleed
Root cause: box top (y_start+BOX) was above label baseline (top-13),
causing the first row of boxes to render over the SANITY/HP text.

Fix:
- BOX 15→12: smaller boxes give more vertical clearance per row
- y_start: top-20 → top-28: pushes first box row 8pt lower
- height formula: 20+rows*(B+G) → 28+rows*(B+G)
- Box number font: 8pt → 7pt (fits cleanly in 12pt box)
- Net result: 3pt clear gap between label baseline and box top
- Page count: unchanged at 15 (BOX=12 keeps row heights same or smaller)
2026-05-19 09:20:01 +00:00
timevans666 733c7f68bc Add player character portraits — Last Train to Coney Island (Event 92)
6 Midjourney high-contrast ink portraits, 1979 NYC aesthetic:
  ltci-pc01-swan-mercer.jpeg    — Black man, orange-black, gang tags, commanding
  ltci-pc02-spray-soto.jpeg     — spray can in frame, graffiti subway car walls
  ltci-pc03-rook-alvarez.jpeg   — woman, bold orange sunburst, defiant upward gaze
  ltci-pc04-wheels-carbone.jpeg — man, subway tunnel with tracks, vest
  ltci-pc05-doc-green.jpeg      — Black man, brick wall, shoulder bag, contemplative
  ltci-pc06-mercy-velez.jpeg    — woman, dark setting, watchful, writing behind her

Style: scraped ink and charcoal, high contrast black/orange/white,
gritty 1970s NYC urban illustration, Warriors movie aesthetic.
All portraits embedded in character sheet PDF.
2026-05-18 21:30:09 +00:00
timevans666 55b07197c1 LTCI v2.1 — stat block bleed fix
StatBlock: BOX_H 44→52, HDR_H 14→18
- 7pt clear gap between value cap and header bottom (was negative)
- Stat values: Anton 13pt → DJVSCondBold 14pt (no ascender bleed)
- Labels: hot orange → white #F5F2E8 (removes colour confusion)
- Red accent divider line at header/value boundary — explicit split
- Flowable height 68→72 to accommodate taller box
2026-05-18 21:22:37 +00:00
timevans666 0e09a3b4eb LTCI character sheets v2 — full 1970s/80s aesthetic redesign
Typography:
  - Character names: Anton (condensed all-caps display — 70s poster/headline)
  - Section banners: DejaVu Sans Condensed Bold (clean, functional, no serifs)
  - Body text: Liberation Sans (sans-serif — breaks completely from 1920s parchment feel)
  - Stats: Anton numerals + Condensed Bold labels

Visual design:
  - Jet black backgrounds (#080808) — not dark mahogany
  - MTA transit red accent (#CC2800) — not antique gold
  - Hot orange secondary (#FF6030) — neon contrast, very 70s
  - Cool newsprint page background (#EDEAE0) — not warm parchment
  - Bold left red spine bar on all headers (replaces corner diamonds)
  - Square corners throughout (no roundRect — brutalist/urban feel)
  - Double-rule OrnRule: thick + thin (no Art Deco diamond ornaments)
  - Cover: true black + bold red band + Anton display type

Feels like: NYC transit authority × wanted poster × punk zine × Warriors
2026-05-18 21:15:24 +00:00
timevans666 2172510ae7 Add CoC 1979 character sheets v1 — Last Train to Coney Island (Event 92)
6 pre-generated Warriors for NYC 1979 midnight run one-shot:
  Leon 'Swan' Mercer   — War Chief (Brawl 60%, Psychology 60%, Streetwise 55%)
  Daryl 'Spray' Soto   — Tagger/Scout (Graffiti 65%, Stealth 60%, Navigate 55%)
  Ruth 'Rook' Alvarez  — Fighter (Knife 70%, Intimidate 60%, Dodge 60%)
  Eddie 'Wheels' Carbone — Transit Runner (Navigate 70%, Mech Repair 60%)
  Malik 'Doc' Green    — Street Medic (First Aid 70%, Medicine 55%, Persuade 60%)
  Tina 'Mercy' Velez   — Swing Investigator (Charm 70%, Stealth 60%, Occult 35%)

Layout: 15 pages — cover + 6x2 character pages + 2-page keeper reference
Theme: 1979 NYC Subway — newsprint concrete, transit charcoal, MTA orange
Tracks: HP + SAN (15pt boxes, 3pt gap) · Luck as labelled starting value
Reference: CoC 7e combat + SAN events table + Black Conductor stats
2026-05-18 21:08:06 +00:00
timevans666 68a07b379c Add player character portraits — Not Another Telegram (Event 93)
7 Midjourney pen-and-ink portraits, 1920s editorial illustration style:
  nat-pc01-helen-cross.jpeg         — sharp-eyed reporter, notebook in hand
  nat-pc02-dr-edmund-graves.jpeg    — composed physician, glasses, shoulder strap
  nat-pc03-mickey-doyle.jpeg        — unremarkable private eye, fedora, watchful
  nat-pc04-louis-lucky-beaumont.jpeg — elegant Harlem musician, suit, case
  nat-pc05-vivienne-st-claire.jpeg  — heiress at table, evening wear, jewellery
  nat-pc05-vivienne-st-claire-alt.jpeg — alternate: Art Deco headshot, drop earrings
  nat-pc06-prof-walter-finch.jpeg   — dishevelled academic, pipe, briefcase

Style: hand-drawn pen and ink, J.C. Leyendecker/Austin Briggs inspired,
crosshatching and sepia wash, warm parchment ground, not photorealistic.
Build script updated: portraits now embedded in character sheet PDF.
2026-05-18 20:56:08 +00:00
timevans666 199287ec6a CoC character sheets v1.1 — two fixes
1. Removed ×5 percentile from stat headers (CoC stats are already percentages)
2. Combat skill audit — all investigators now have minimum 40% on all combat
   and Dodge skills, and at least one meaningful combat option:
   - Helen Cross: Brawl 25→40%, added Derringer .22 (Firearms 20→40%)
   - Dr. Graves: Brawl 35→40%, Scalpel 35→40%, Dodge 35→40%
   - Vivienne: Revolver 35→40%, Brawl 15→40%
   - Prof. Finch: Brawl 25→40%, Walking Stick 25→40%, Dodge 35→40%
   Mickey Doyle and Louis Beaumont unchanged (already above threshold)
2026-05-18 20:43:18 +00:00
timevans666 de2d6a61e8 Add CoC 1920s character sheets v1 — Not Another Telegram (Event 93)
6 pre-generated investigators for NYC 1924 one-shot:
  Helen Cross — The Reporter (Fast Talk 75%, Spot Hidden 60%)
  Dr. Edmund Graves — The Doctor (Medicine 80%, First Aid 75%)
  Mickey Doyle — The Private Eye (Spot Hidden 70%, Firearms 65%)
  Louis 'Lucky' Beaumont — The Jazz Musician (Trumpet 85%, Charm 75%)
  Vivienne St. Claire — The Heiress (Charm 75%, Credit Rating 90%)
  Prof. Walter Finch — The Academic (Library Use 80%, Occult 70%, Mythos 20%)

14 pages: cover + 6x2 character pages + reference page
Art Deco 1920s theme: parchment, mahogany, antique gold
2026-05-18 20:37:36 +00:00
Tim Evans 2f91b2430a Ringworld cheat sheet — double-sided A4 PDF
Front: Core mechanic · Action ranking · Damage modifier · HP & wounds
· Derived attributes · Full skill list by category with base% and root
maxima · HP per location table · Resistance table (compact) · Known Space
species quick ref

Back: Combat sequence (8 numbered steps) · Range modifiers · Known Space
weapons (13 entries, all stats) · Wound effects by location · Technology
reference · Ringworld tech · Psionics · Known Space factbook · NPC
reaction table · Armour AP · Experience rules · GM quick notes
· Crew reference (all 6 characters) · Event 95 & 96 scenario summaries

Gold accent colour. Orbitron/ShareTech/Barlow fonts. Print double-sided.
2026-05-18 18:55:02 +00:00
Tim Evans ef8c41c777 Ringworld sheets v4.6 — fix HP tally bleed into combat bar
Root cause: tally_y was calculated from unc_y upward, but the table +
unconscious banner consumed more space than the 130mm section allowed,
pushing tally_y below hloc_y_bot. The combat reference section's accent
bar then painted over the circles.

Fix: hloc_h 130→148mm; tally_y now anchored at hloc_y_bot+12mm
(from the section bottom) so circles are always 12mm clear of any
overlapping bar regardless of table row count.
2026-05-18 15:51:55 +00:00
Tim Evans a8a2bb9c4e Ringworld sheets v4.5 — bleed fix, 20 white circles, white boxes
- tbl_y pushed 20pt below header bar in all three sections
  (regular hloc, puppeteer hloc) so no text ascenders reach the bar
- Combat reference sub-headers also shifted down 4pt extra
- HP tally: squares replaced with 20 small white circles (r=5pt)
  with tiny numbers 1-20 below each; white fill so crossable with pen
- CURR HP and ARMOUR write-in boxes: dark → white fill with
  accent border so they can be marked/crossed in black pen
2026-05-18 15:46:29 +00:00
Tim Evans 20053da2c1 Ringworld sheets v4.4 — hit location layout overhaul
- hloc section expanded 100mm → 130mm to fill available space
- Body diagram labels: 5pt → 9-11pt, HP values 5pt → 10-11pt,
  D20 ranges 5pt → 8-9pt; all shapes scaled up proportionally
- Section header bar now 3mm clear of masthead — no text bleed
- Table rows: 9pt height → 14mm; location names 8→11pt;
  HP values 8→14pt OrbB; write-in boxes 8pt → 16mm×10mm
- Added CURR HP and ARMOUR column headers with larger write-in boxes
- HP tally boxes 7.5pt → 11mm each, numbered in Orbitron
- Puppeteer (Whisper) matching overhaul — 8 location rows,
  Bezier neck curves with fill, heads, legs all scaled up
2026-05-18 15:22:49 +00:00
Tim Evans 3dd74442f3 Ringworld sheets v4.3 — weapons, stats, bleed, Puppeteer anatomy
Fixes:
- Weapons section: rows were missing — loop reinserted, 2-line format
  (name + skill% top / DMG · RNG · Notes bottom in mono)
- Stats: labels 6→9pt, values 18→23pt, strip 22→26mm height
- Text bleed: all text on accent-colour backgrounds changed to white
  (header name/role, section headers, skill category bars, personality)
- Puppeteer (Whisper): separate hit location diagram with correct anatomy
  — oval barrel body, two curved necks, two heads, two forelegs, rear leg
  — D20 table: Body 01-07, R Fore 08-10, L Fore 11-12, Rear Leg 13-14,
    R Neck 15-16, L Neck 17-18, R Head 19, L Head 20
  — HP split: Body 40%, Heads 25%, Necks 20%, Forelegs 20%, Rear 25%
2026-05-18 15:03:53 +00:00
Tim Evans 3f25eaca4d Ringworld sheets v4.2 — all six Midjourney portraits added
Portrait art (1970s-80s pen-and-ink SF illustration style):
- Mira Chen: East Asian xenobiologist with microscope/scanner
- Yashti Korr: Military woman, close-cropped hair, body armour
- RR'raan: Orange feline Kzin warrior, battle armour
- Whisper: Pierson's Puppeteer, two-headed alien
- Tomas Veld: Stocky heavyworld engineer, tactical gear
- Sola Reyes: Lean navigator, looking upward
2026-05-18 14:49:23 +00:00
Tim Evans e8398f089c Ringworld sheets v4.1 — tighter layout, bigger weapons/equipment text
- Weapons section: 28mm → 40mm height
- Two-line weapon rows: name + skill% large on top,
  DMG · RNG · Notes in mono below
- Equipment section: 20mm → 34mm height, 8pt Bar font
- Personality text: 9pt with more breathing room
- Midjourney portrait prompts added
2026-05-18 14:36:40 +00:00
Tim Evans 3565d7e521 Ringworld character sheets v4 — built with reportlab
Complete rebuild using reportlab for precise PDF output.
All 6 characters × 2 pages = 12 pages, A4, print-ready.

FRONT: Accent colour header + portrait slot · All 8 stats with
large values · 9 derived attributes (HP, Move, DB, Action Rank,
Dodge/Health/Reasoning/Luck%) · HP tick boxes + unconscious level
· Full skill list in 3 columns (Agility+Comm / Knowledge / Perc+Tech)
showing trained values OR base chance for all ~50 skills
· 2-3 weapons with full stats · Equipment + personality strip

BACK: Annotated body diagram (7 hit locations, HP values, D20 ranges,
AP boxes) · HP tally boxes · Location table with AP/HP fill boxes
· Combat reference (action ranking, range modifiers, combat rules)
· Event 95 + 96 scenario hooks · Equipment detail · Notes

Portraits: Mira Chen + RR'raan embedded; others: clean placeholder
Build script: build.py for future iterations
2026-05-18 14:22:29 +00:00
Tim Evans ee5783bf0a Ringworld character sheets v3 — full rebuild
Layout: Dense A4 print-ready, two-sided
- Front: stats strip + HP tracker + 18-22 skills per character (two columns,
  by category: Agility, Communication, Knowledge, Perception, Technical)
- 2-3 weapons only per character, chosen for role
- Back: hit location diagram + per-location AP/HP boxes + HP tally
  + combat reference (action ranking, range modifiers) + scenario hooks
- Smaller portrait (42mm) with placeholder for Midjourney TBD art
- Embedded Orbitron/ShareTech/Barlow fonts for print fidelity
- midjourney-portrait-prompts.md: 6 hand-drawn ink sketch prompts
2026-05-18 14:06:00 +00:00
Tim Evans 726437eec8 Ringworld character sheets v2 — more weapons, full layout, PDF output
- Added 4-6 weapons per character from Ringworld/Known Space universe:
  Sonic stunner, ARM needle gun, tangler, gravity planer, kzin beam pistol,
  kzin laser carbine, slaver disintegrator ref, variable sword, restraint field,
  stun capsules, engineering laser, survey laser, flare gun
- Known Space weapons quick reference table on every back page (18 weapons)
- Hit location diagram with body outline (front/back D20 reference)
- Impulse of Completion tracker (20-box grid)
- Full rules quick reference (4 sections)
- Fonts embedded as base64 (Orbitron, Share Tech Mono, Barlow Condensed)
- PDF generated via wkhtmltopdf: 12 pages, A4, print-ready
2026-05-18 13:29:37 +00:00
Tim Evans 230a8eea46 Add Ringworld character sheets - Events 95 & 96 - first draft
Six crew of the Foolish Endeavour: Chen, Korr, RR'raan, Whisper, Veld, Reyes.
Double-sided print layout (A4), 1980s high-contrast sci-fi aesthetic.
Portraits embedded (Chen + RR'raan), SVG silhouettes for others.
Each sheet: stats, HP tracker, weapons, skills, scenario hooks for both events.
2026-05-18 13:11:33 +00:00
ChaosiumCon Prep 086b03610b Fix stat×5 overlap and cover table contrast — all three scenarios
Stat block (BRP v4 + Stormbringer):
- HDR_H reduced 20→16pt, light cell grows 10→14pt
- Value baseline moved to y=16: cap top y=26, header bottom y=28 → 1.9pt clearance
- ×5 baseline moved to y=30: cap top y=34.7, divider y=36 → 1.3pt clearance
- No overlap between main stat and ×5 percentile at any value 1-20

Cover quick-reference table:
- D1 cover_rule_body was #2A2A2A on #2A2A2A rows — 1:1 contrast, completely invisible
- NC cover_rule_body was #C0D8F0 (fine contrast but unreliable font rendering)
- Both changed to colors.white on dark rows: 14-17:1 contrast
- cover_rule style font changed to Helvetica-Bold 8.5pt for reliable glyph rendering
2026-05-18 10:19:09 +00:00
ChaosiumCon Prep 0bc8a002f5 Add stat×5 percentile to all character sheets (all three scenarios)
StatBlock updated in both BRP (v4) and Stormbringer build scripts:
- Header band now 20pt (was 12pt), split into two zones
- Upper zone: stat label (STR, CON, SIZ etc.) in white/gold
- Thin accent divider line
- Lower zone: stat×5 percentile ('55%', '80%' etc.) same style
- Main stat value in light cell unchanged
- Page budget: +8pt per character, well within buffer on all sheets

Affects all six characters in all three scenarios:
  Night Crawler, Day One, Stormbringer Kelen's Pact
2026-05-18 10:09:16 +00:00
ChaosiumCon Prep c214c1d5b9 Add Day One player character portraits + rebuild PDF with art
6 Walking Dead / Charlie Adlard ink style portraits embedded:
- d1-pc01-kira-osei-mensah.jpeg    (Black woman, lanyard, coffee, South Bank street)
- d1-pc02-dev-krishnamurthy.jpeg   (South Asian man, headphones, laptop, Borough Market)
- d1-pc03-maggie-donnelly.jpeg     (White woman 60s, Thames/Westminster, walkway)
- d1-pc04-olu-adeyemi.jpeg         (Black man, bald, security uniform, The Shard)
- d1-pc05-priya-mehta.jpeg         (South Asian woman, press lanyard, notebook, looking up)
- d1-pc06-tom-becker.jpeg          (White man, work clothes, van behind him, London street)

Build script updated: D1_PORTRAITS dict + portraits passed to Day One build.
Day One PDF: 14 pages (13 char + zombie reference page), 917KB.
2026-05-18 09:59:58 +00:00
ChaosiumCon Prep 26d2585842 BRP v4 — Day One: zombie rules, combat boosts, handout
Day One character updates:
- Kira: Brawl 25%→40%, Scalpel ATK 25%→40%
- Dev: Brawl 25%→35%, laptop improvised 20%→35%
- Priya: Brawl/improvised 20%→35%, Dodge 30%→35%
- Maggie/Olu/Tom: unchanged (already 50-65%)

Zombie combat system (inspired by TWD Free League):
- Succeed on skill roll = zombie neutralized, no HP loss
- Miss = roll D20 on attack table
- D20 table: 4 colour-coded zones
  Zone 1 (1-6): close calls, no infection
  Zone 2 (7-13): infection risk, moderate damage
  Zone 3 (14-17): serious danger, automatic infection
  Zone 4 (18-20): catastrophic/fatal (35% of results)
- Head shot rule, horde rule, approach table

Outputs:
- brp-day-one-v4.pdf: 14 pages (13 chars + zombie reference)
- day-one-zombie-attack-handout.pdf: 1-page standalone table
2026-05-18 09:41:46 +00:00
ChaosiumCon Prep f9f4db815b BRP character sheets v3 — Combat section added to all 12 characters
Added COMBAT section to front page of every character sheet:
- Weapon table: Weapon | Skill | ATK% | PAR% | Damage | Notes
- Dodge + Damage Bonus summary strip below table
- Night Crawler: all 6 operatives have firearm + melee (some have EMP/sedative as 3rd)
- Day One: all 6 survivors have contextually realistic weapons
  (Maggie: ASP baton + brawl + firearm-if-found; Tom: crowbar + hammer + brawl;
   Viktor: military sidearm + baton + brawl; Olu: security baton + brawl + sidearm-if-found)
- Dodge pulled from skills list; DB from derived stats
- Untrained weapons clearly labelled (base chance)
- Quick reference updated to include Parry and Dodge rules
2026-05-18 09:18:13 +00:00
ChaosiumCon Prep 5561a16c00 Add Night Crawler player character portraits + rebuild PDF with art
6 Midjourney portraits (Moebius/Heavy Metal style) embedded in PDF:
- nc-pc01-sable-kress.jpeg       (Sable Kress — The Fixer)
- nc-pc02-juno-rhee.jpeg         (Juno Rhee — The Ghost)
- nc-pc03-viktor-drav.jpeg       (Viktor Drav — The Muscle)
- nc-pc04-tal-morgan.jpeg        (Tal Morgan — The Tech)
- nc-pc05-reina-vasquez.jpeg     (Reina Vasquez — The Medic)
- nc-pc06-petra-amis.jpeg        (Petra Amis — The Analyst)

3 alternate images also stored (alt suffix).
Build script updated: portraits dict + RLImage swap-in.
2026-05-18 08:55:06 +00:00
ChaosiumCon Prep dbbbcabe59 Add player character portrait prompts — Night Crawler (Event 91)
6 Midjourney prompts for Sable Kress, Juno Rhee, Viktor Drav,
Tal Morgan, Reina Vasquez, Petra Amis.

Art direction: cinematic neo-noir, painterly digital oil painting,
augments subtle and grounded (NOT generic sci-fi neon-overload).
Includes PDF swap-in instructions and style drift correction notes.
2026-05-18 07:39:40 +00:00