diff --git a/content/roadmap.md b/content/roadmap.md index 79aac34..8c66131 100644 --- a/content/roadmap.md +++ b/content/roadmap.md @@ -158,10 +158,12 @@ Not a debt. Where ideas go to be safe. other six kings as campaign patrons; tiered enemy families (proximity to a king *is* the power scale); the three story-shapes (cult cell → cult that owns a city → the king himself). -- **The Barbarian ⚔ calling name** (`[CANON-TBD]`). - **AI-generated worlds** (v2, charter §17). The saga spec guarantees the `Saga` object is what will feed it. Nothing else about it is decided. +*(Left the Backlog 2026-07-12: the Barbarian ⚔ calling name — **Reaver**. All seven +callings are named; see the [races/classes spec](../docs/superpowers/specs/2026-07-11-races-and-classes-design.md) §4.)* + --- ## Notes for whoever authors next diff --git a/docs/roadmap.md b/docs/roadmap.md index bca123b..8971edd 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -75,7 +75,7 @@ Each screen is recreated as a Godot 4.7 Control-node scene against the mockups ( ### M4 — Character creation *Content it consumes → [BOM](../content/roadmap.md#2-bill-of-materials): calling blurbs + the Bloodsworn's patron choice (fixed); origins (variable). **~4 pieces.*** -- ○ **Character creation UI** — the mock's screen over our proven model: race + calling cards, six stats with **LCK hidden entirely** (§7), 3d6 floors, the **+3 additive-only spend-up** pool (§8, matches the `character-creation-stats` model), live origin blurb + nameplate. **Reconcile class names** here (§8 vs the mock's callings). Feeds new-game canon-log construction (already built). **⛨ saga:** `NewGame.construct` takes `creation` as a plain `Dictionary` — keep it that way. The creation *scene* produces that dict but must not become the only thing that can (a saga synthesizes it and skips the UI). Emit `race_id` + `calling_id` into it. *§2: state · depends on the creation model (M0) + Theme · goal: build a character.* +- ○ **Character creation UI** — the mock's screen over our proven model: race + calling cards, six stats with **LCK hidden entirely** (§7), 3d6 floors, the **+3 additive-only spend-up** pool (§8, matches the `character-creation-stats` model), live origin blurb + nameplate. **The class-name reconcile is settled** — all seven callings are named (Sellsword · **Reaver** · Cutpurse · Trapper · Hedge-Mage · Bonesetter · **Bloodsworn**; [races/classes spec](superpowers/specs/2026-07-11-races-and-classes-design.md) §4). Feeds new-game canon-log construction (already built). **Two contract migrations land here, not silently:** the canon log gains a `race` field (the Narrator needs it to describe the player), and `content/origins/deserter.json` still carries the dead `allowed_classes: ["sellsword","assassin","priest"]`. **⛨ saga:** `NewGame.construct` takes `creation` as a plain `Dictionary` — keep it that way. The creation *scene* produces that dict but must not become the only thing that can (a saga synthesizes it and skips the UI). Emit `race_id` + `calling_id` into it. *§2: state · depends on the creation model (M0) + Theme · goal: build a character.* ### M5 — Tactical combat (gridless) *Content it consumes → [BOM](../content/roadmap.md#2-bill-of-materials): abilities for the 3 POC classes (fixed); 1 enemy family (4 units) + boss, **tier 1** (variable per tier). **~15 pieces.*** diff --git a/docs/superpowers/specs/2026-07-11-races-and-classes-design.md b/docs/superpowers/specs/2026-07-11-races-and-classes-design.md index ef504cd..07bcb80 100644 --- a/docs/superpowers/specs/2026-07-11-races-and-classes-design.md +++ b/docs/superpowers/specs/2026-07-11-races-and-classes-design.md @@ -7,8 +7,9 @@ This spec settles the **mechanics** of races and callings so M4 character creation has rules to read. It resolves the §17 class-name reconcile (charter §8 vs the mock's callings) and gives every race trait a concrete rule. **Lore/flavor is deliberately -out of scope** — it lives in a separate canon/worldbuilding effort; placeholders here -are marked `[CANON-TBD]`. +out of scope** — it lives in a separate canon/worldbuilding effort. The two calling +names this spec left open are now **settled** (Reaver ⚔ / Bloodsworn 🔥, §4 *Naming*); +no `[CANON-TBD]` remains here. Scope choice (agreed): **full mechanical spec** — everything creation + the character sheet read. The **combat ability kit is deferred to M5** (the action economy, damage @@ -132,7 +133,8 @@ feature with real teeth + one minor feature. All upside; downsides live in flavo The full charter-7 (§8), gritty calling names (§17 reconcile resolved in favor of the mock's village-names, which honor §8's "named for the role in the world" better than -§8's own list). Two need names from the canon session — marked `[CANON-TBD]`. +§8's own list). **All seven are named** — the last two were settled at the canon session +(2026-07-12); see *Naming* below. Static kit only — **the combat ability kit (the bar) is deferred to M5.** This is what creation + the character sheet read. @@ -140,19 +142,40 @@ creation + the character sheet read. | Calling | Archetype | Primary | Hit die | Save profs | Skill profs | Resource | Armor | L1 talent (stub) | |---|---|---|---|---|---|---|---|---| | **Sellsword** | Fighter | STR | d10 | STR, CON | 2 | Cooldowns | Heavy | **Second Wind** — once/rest, claw back HP | -| **[CANON-TBD]** ⚔ | Barbarian | STR | d12 | STR, CON | 2 | Cooldowns | Medium | **Blood Fury** — rage: soak + hit harder, per-encounter | +| **Reaver** ⚔ | Barbarian | STR | d12 | STR, CON | 2 | Cooldowns | Medium | **Blood Fury** — rage: soak + hit harder, per-encounter | | **Cutpurse** | Rogue | DEX | d8 | DEX, MAG | 4 | Cooldowns | Light | **Backstab** — bonus dmg vs an unaware/first-strike target | | **Trapper** | Ranger | DEX | d10 | DEX, CON | 3 | Cooldowns | Light | **Set Snare** — place a control trap, cooldown | | **Hedge-Mage** | Wizard | MAG | d6 | MAG, FTH | 2 | MP (MAG) | None | **Hexbolt** — signature MP-free arcane basic | | **Bonesetter** | Cleric | FTH | d8 | FTH, CON | 2 | MP (FTH) | Medium | **Mend** — heal HP, gritty field-medic | -| **[CANON-TBD]** 🔥 | Warlock | FTH | d8 | FTH, MAG | 2 | MP (FTH) | Light | **Pact Mark** — curse a target, FTH/MP | +| **Bloodsworn** 🔥 | Warlock | FTH | d8 | FTH, MAG | 2 | MP (FTH) | Light | **Pact Mark** — curse a target, FTH/MP | + +### Naming (settled 2026-07-12) + +The rule the five mock names already obeyed: **a calling is what a village calls you, not +what a rulebook calls you** (§8's own principle, which §8's own list broke). They are +occupational, plain, and faintly contemptuous — Cutpurse, not Assassin; Bonesetter, not +Priest. + +- **Reaver** (Barbarian). *To reave* is to raid and plunder — it names what he does for + money, like Sellsword and Trapper, rather than what he is inside. A village says it with + fear and no admiration. Rejected: *Bearsark* and *Wildman* (vivid, but they name a + condition and break the occupational pattern), *Breaker* (too generic). +- **Bloodsworn** (Warlock). **Not a new coinage — the cosmology already minted it**, one + day after this spec was written: *"A mortal willing to strike that bargain becomes what + the Margreave calls bloodsworn"* (`rule.blood-price`). It is the exact FTH-axis mirror of + Bonesetter: one channels the Warden, one pacts a king of the Seven. + **Known and accepted cost:** unlike every other calling, this word names a *condition* + rather than a trade — the villain who pacts Ghaul is bloodsworn too. A separate + occupational name for the calling (Cursewright, Hexman) was considered and rejected: + a second word for one idea buys a distinction the player will never feel, and this one + is already in canon and in the build output. - **Two STR martials differentiated by shape, not stat:** Sellsword = disciplined, heavy - armor + d10 + sustain (Second Wind); the Barbarian-calling = reckless, d12 + medium + armor + d10 + sustain (Second Wind); the Reaver = reckless, d12 + medium armor + rage (soak via fury, not plate). Same primary, opposite feel. - **Cutpurse gets 4 skills** (breadth is the rogue's identity); Trapper 3; others 2. Drawn from the class's stat-appropriate slice of the 9-skill list, plus what race grants. -- **Casters** (Hedge-Mage / Bonesetter / Warlock-calling) have **MP**; martials have 0 and +- **Casters** (Hedge-Mage / Bonesetter / Bloodsworn) have **MP**; martials have 0 and live on cooldowns. MP pool formula → M5. - **Backstab** — the mock's "advantage" phrasing becomes a **flat bonus vs an unaware/ first-strike target** under the resolution model; no positioning needed, fits gridless (§10). @@ -215,7 +238,7 @@ Nothing here silently pre-empts a later brainstorm. not choose it. An open-ended curve is unsolvable and forecloses the saga. **→ Canon session (lore):** -- The two **[CANON-TBD]** calling names (Barbarian ⚔ / Warlock 🔥). +- ~~The two **[CANON-TBD]** calling names~~ — **settled 2026-07-12: Reaver ⚔ / Bloodsworn 🔥.** See *Naming*, §4. - All race/calling flavor, descriptions, origin fragments. - The **beastfolk social tax** (mechanical downside, ties to M8 shop). diff --git a/docs/superpowers/specs/2026-07-12-cosmology-and-worldbuilding-theme-design.md b/docs/superpowers/specs/2026-07-12-cosmology-and-worldbuilding-theme-design.md index e7c9abc..2a591fa 100644 --- a/docs/superpowers/specs/2026-07-12-cosmology-and-worldbuilding-theme-design.md +++ b/docs/superpowers/specs/2026-07-12-cosmology-and-worldbuilding-theme-design.md @@ -198,7 +198,7 @@ Consistent with §2. - Removing Duncarrow / reparenting the ladder / new specimen town — **follow-up spec.** - Applying `Bloodsworn` to the calling data, and a Bloodsworn's **patron choice** at creation — **M4** (character creation). -- The Barbarian ⚔ `[CANON-TBD]` calling name — this pass handled only the FTH axis. +- ~~The Barbarian ⚔ `[CANON-TBD]` calling name~~ — **settled 2026-07-12: Reaver.** This pass handled only the FTH axis; the STR axis closed at the same canon session. All seven callings are now named ([races/classes spec](2026-07-11-races-and-classes-design.md) §4 *Naming*). - Any **mechanical** Luck carve-out for the Bloodsworn — **M5 / Improviser** reconcile (§7-sensitive; flavor only, this pass). - Naming victims, cults, possessed NPCs, or blood-harvest sites — **per-town knowledge