Docs: LANTERN Phase 6/7 design notes (finale + station) — per-phase coverage complete

- Phase 6 (finale): shelf-boss on the BossState/BossAISystem chassis (multi-phase reskin,
  signature-Spark drop); one scripted Serpent-tide via the world-model burn/un-pin + hazard
  director + loss-floor, Siren-forecast; Loudness-driven co-op scaling.
- Phase 7 (station/voices): the hub = the world-model permanent home pocket; Lamp meter =
  GoalProgress + visible growth; rack/bench/library/Bell reuse class-swap/sockets/culture/
  transit; Keeper (OnboardingSystem skin) + Siren (hydrophone) + lamp-morse; tone bible gates barks.
- Roadmap index now links all phase design specs (full slice designed).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-14 00:00:39 -07:00
parent d005f140db
commit d9c383cf33
2 changed files with 94 additions and 1 deletions
@@ -0,0 +1,93 @@
---
title: LANTERN — Phase 6 Finale & Phase 7 Station/Voices (design notes, pre-review)
date: 2026-07-13
tags: [roadmap, lantern, boss, tide, hub, narrative, phase-6, phase-7, design]
status: design-pre-review
permalink: gamevault/06-roadmap/lantern-phase6-7-finale-station-design
---
# LANTERN — Phase 6 (Finale) & Phase 7 (Station & Voices)
> Combined **design notes** for the two thinnest/furthest slice phases (each deepens + gets its ★review when
> reached). Completes the per-phase design coverage of the whole slice. Both lean heavily on already-proven
> salvage.
## Phase 6 — the finale: shelf-boss + the scripted tide
### Shelf-boss (Twilight's warden) — a real multi-phase skillshot fight
- **Salvage:** the `BossState`/`BossAISystem` chassis (server-only, **sole boss mover**, telegraphed radial
SLAM via `AttackWindup`, phase-2 speed + summon, knockback-immune, arena-anchored) is exactly the base for a
multi-phase skillshot boss. Reskin + add phases; reuse the client boss-bar (`Health.Max` is a `[GhostField]`)
and the per-kind telegraph vocabulary.
- **Drops the slice's signature Spark + a schematic beat** — the Predator's-Ladder treadmill unit (this boss →
this power). The Spark drop = a cultured-organ grant (Phase 4 culture library); the schematic = a build unlock.
- **The hero creature** (Workstream A3): silhouette-first, budgeted real modeling time, kitbash from Strider
family parts where possible.
### One scripted Serpent-tide as the slice climax
- **Forecast by the Siren** (Phase 7 hydrophone) — a *planned* event, never a sprung ambush (the identity's
"tides are forecast, not sprung" rule). Targets the **party's planted lantern**: defend it or lose the pin.
- **Salvage:** composes the world-model **burn/un-pin** path (a tide = an accelerated forced-gutter on the
targeted lantern unless defended) + the hazard/wave director (the tide as escalating spawn pressure) + the
**loss-floor invariant** (losing the pin drops that frontier pocket, never a shelf — DP-5/C2). The dark moving
as weather = the ambient/weather-beat VFX language (`AmbientLifeSystem` lightning/cloud chassis, re-themed).
- **Server-authoritative**, forecast replicated on the untagged director ghost (a `[GhostField]` tide-window +
target `PocketKey`). Netcode-touching → its own ★review.
### Difficulty / co-op scaling (14 players)
- **Loudness carries most of it** (the currency re-mean's derived meter — party lamp-output → spawn/aggro
pressure). Party-size HP/spawn scaling reuses the existing `RoomEnemyDirectorSystem` living-player scale
(scale by living in-pocket Wicks, not the launch roster — the DR-045 B5 lesson).
**Gate:** the tide finale generates the clip — a party defending their own light and telling the story after.
## Phase 7 — the station & the voices (runs parallel with 46)
### The Last Lantern hub — each meta system is a physical PLACE
- **Salvage:** the station is the world-model's **permanent home pocket** (StationPocketKey, the always-lit
"Base" equivalent — [[World_Model_Build_Spec]] C2/C3). The on-demand world lifecycle + UITK menus
(`WorldLauncher`/`SessionRunner`/`MainMenuController`) + the hub scene are KEEP (the Valheim hosting model
needs exactly this).
- **The Lamp** (meter + radius): `GoalProgress`→the campaign readout on the untagged director ghost; brightness
IS the campaign meter *and* the station's radius (the base grows visibly as it brightens — reuse the visible-
growth pattern). The hero set-piece (Mother-Lamp, Workstream A3).
- **Rack / graft-bench / culture library / Bell** — each a physical station location: rack = respawn/frame
select (class chassis pick, `ClassSwapUtil`); graft-bench = socket the kit (Phase-1 sockets); culture library
= the permanent Spark collection (Phase 4); Bell = the descent transit (the world-model FSM's Descending/
Ascending). Reuse the station-panel/vendor RPC pattern (the storage/deposit idiom).
### The voices (text-first; tone-bounded by [[Lantern_Tone_Bible]])
- **The Keeper** (subtitle lines): tutorializes the loop, the split, the **evaporation gift** (the scripted
first-evaporation, Phase 4). Salvage: the `OnboardingSystem` drives the tutorial beats; the Keeper is the
narrative skin over it. Evasive-warm register (tone bible).
- **The Siren:** descent forecast at the Bell + **hydrophone bleed mid-descent** (the run's narrative channel —
descents are never silent for hours) + the tide forecast (Phase 6). Salvage: procedural audio bed
(`AudioClip.Create`) + subtitle lines; the forecast rides a replicated field on the director ghost.
- **Lamp-morse:** ping wheel, revive plea, greeting — procedural chirp audio, the Wicks' whole language (the
tone bible's fixed vocabulary). Client presentation + a small ping RPC.
- **Tone bible** ✅ ([[Lantern_Tone_Bible]]) — done; gates all bark generation. Slice ships **Keeper + Siren
only** (scope ladder).
**Gate:** a new player completes first descent → death → recovery → pin with **no external explanation**; the
hub reads as a home, not a menu.
## Salvage summary (both phases lean on proven code)
| Piece | Phase | Verdict |
|---|---|---|
| `BossState`/`BossAISystem` + client boss-bar + telegraphs | 6 | **KEEP + extend** (multi-phase reskin) |
| hazard/wave director + `AmbientLifeSystem` weather VFX | 6 | **REWORK** (the tide as forecast weather + un-pin) |
| world-model burn/un-pin + loss-floor | 6 | **REUSE** (the tide targets a pinned lantern) |
| Loudness scaling + living-player HP scale | 6 | **REUSE** (co-op scaling) |
| frontend/world lifecycle + UITK menus + hub scene | 7 | **KEEP** (the station = home pocket) |
| `GoalProgress`→Lamp meter + visible growth | 7 | **REUSE** |
| station vendor/deposit RPC + `ClassSwapUtil` + sockets + culture | 7 | **REUSE** (rack/bench/library/Bell) |
| `OnboardingSystem` | 7 | **REWORK** (the Keeper's tutorial skin) |
| procedural audio + subtitle lines | 7 | **KEEP** (Keeper/Siren/lamp-morse) |
## Related
- [[World_Model_Build_Spec]] — the station-as-home-pocket + burn/loss-floor the tide uses
- [[Lantern_Tone_Bible]] — the voices' register bounds · [[Identity_Lantern]] — the finale, the Dawn (v1.0), the cast
- [[Lantern_Phase4_Mutations_Design]] / [[Lantern_Phase5_Death_Recovery_Design]] — the systems the hub houses
- [[Roadmap_Lantern_Slice]] Phases 6 & 7 (+ Workstream A3 hero assets)
@@ -189,7 +189,7 @@ The deeper technical pass (next sessions) takes each phase in turn: context7-ver
- [[Identity_Lantern]] — the design this implements (scope ladder = this roadmap's contract; readability law = A-track law) - [[Identity_Lantern]] — the design this implements (scope ladder = this roadmap's contract; readability law = A-track law)
- **Phase 0 artifacts:** [[DR-048_Lantern_Adoption_Full_Pivot]] · [[Lantern_Strip_Mothball_Inventory]] · [[World_Model_Build_Spec]] + [[DR-049_Lantern_World_Model_Design]] (+ [[Lantern_World_Model_Spike]] / [[Lantern_World_Model_Design_Proposal]]) · [[Art_Direction_Lantern]] + [[Lantern_Art_Pipeline_Recipes]] - **Phase 0 artifacts:** [[DR-048_Lantern_Adoption_Full_Pivot]] · [[Lantern_Strip_Mothball_Inventory]] · [[World_Model_Build_Spec]] + [[DR-049_Lantern_World_Model_Design]] (+ [[Lantern_World_Model_Spike]] / [[Lantern_World_Model_Design_Proposal]]) · [[Art_Direction_Lantern]] + [[Lantern_Art_Pipeline_Recipes]]
- **Phase 1+ design:** [[Lantern_Phase1_Combat_Gym_Build_Spec]] · [[Lantern_Currency_ReMean]] · [[Lantern_Tone_Bible]] (Phase 7) - **Phase design specs (all phases covered):** [[Lantern_Phase1_Combat_Gym_Build_Spec]] · [[Lantern_Phase4_Mutations_Design]] · [[Lantern_Phase5_Death_Recovery_Design]] · [[Lantern_Phase6_7_Finale_Station_Design]] · [[Lantern_Currency_ReMean]] · [[Lantern_Tone_Bible]] (Phase 7)
- **Running:** [[Lantern_Operator_Questions]] — decisions parked for the operator - **Running:** [[Lantern_Operator_Questions]] — decisions parked for the operator
- [[Theme_Direction_Candidates]] — research underneath the direction - [[Theme_Direction_Candidates]] — research underneath the direction
- [[Synty_Asset_Inventory]] — placeholder quarry during the transition - [[Synty_Asset_Inventory]] — placeholder quarry during the transition