docs(milestones): add council, religion, caste, and innovation systems

Expand milestone docs with several major new systems:

M3: Religion overhaul — 12 custom tenets (3 per faith), 2 custom
doctrine groups (Allomantic Stance, Caste Doctrine), expanded holy
sites (~10, differentiated by faith, with conditional sites),
tradition condition fixes, dead parameter cleanup. New task 3.11:
Steel Inquisitor holy order + individual Inquisitor request mechanic,
Keeper Network secret society with progression and discovery risk.

M4: Council retheme (5 positions with 10 custom tasks), 7 court
positions (Royal Court), legend system suppression, caste law system
(3 tiers: Strict/Relaxed/Abolished with cross-caste consequence
events), innovation system (Age of the Lord Ruler pre-unlocked +
Age of Liberation locked behind lord_ruler_fallen flag).

M5: Band council with 7 crew roles, vacancy penalties, ~14 role
events, and 5 band tasks. Each crew member's Allomantic ability
enhances their assigned role.

M7: Advanced council interactions (~25 events) — kandra courtier
replacement, Court Smoker vs Seeker duels, Obligator Witness
betrayal, Terris Steward Keeper reveal. Post-endgame choice: seize
the throne or release the kingdoms. Variable standardized to
lord_ruler_fallen across all docs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-07 17:00:34 +01:00
co-authored by Claude Opus 4.6
parent 07a1491936
commit 51bc5fa57d
4 changed files with 1197 additions and 54 deletions
+382 -43
View File
@@ -810,77 +810,221 @@ Contract mechanics.
---
### 3.8 -- Polish Religions
### 3.8 -- Polish Religions: Custom Tenets, Doctrines, and Holy Sites
**Context:** The four religions need additional depth to feel like living faiths.
Steel Ministry needs the Lord Ruler as head (done in 3.2). Terris Keepers need
"secret faith" mechanics. Survivorism needs rebellion bonuses. Cult of Ruin
needs Hemalurgy bonuses.
**Context:** The four religions need deep mechanical identity to feel like living
faiths, not just reskinned vanilla. This means custom tenets (replacing vanilla
placeholders), custom doctrine categories unique to Scadrial, faith-
differentiated holy sites, and faith-specific modifiers. Steel Ministry needs
the Lord Ruler as head (done in 3.2). Terris Keepers need "secret faith"
mechanics. Survivorism needs rebellion bonuses. Cult of Ruin needs Hemalurgy
bonuses.
**Steps:**
1. **Terris Worldbringers -- Secret Knowledge mechanics.** In the
`terris_worldbringers` faith definition, add doctrines that support hidden
faith:
- Change `doctrine = tenet_pacifism` to keep (Keepers are peaceful).
- Consider adding `doctrine = tenet_pursuit_of_power` if secret societies are
not feasible. Alternatively, mark Terris as a `can_convert_to_unreformed`
faith to make it underground.
1. **Create custom tenets.** In `common/religion/doctrines/` (new directory),
define ~12 custom tenets that replace vanilla placeholders. Each tenet has a
`character_modifier` block and unlocks specific decisions or events:
**Steel Ministry tenets:**
- `tenet_obligator_hierarchy` — Replaces `tenet_tax_nonbelievers`. Bonus:
+0.3 monthly piety, +5% tax income from non-believers, +5 same-faith
opinion. Unlocks: "Demand Obligator Tithe" decision.
- `tenet_allomantic_oversight` — Replaces `tenet_religious_law`. Bonus:
+2 learning for clergy, +10% scheme discovery chance. Allows Ministry
Preceptor council task (M4) to detect hidden Allomancers in court.
- `tenet_imperial_mandate` — New. Bonus: +0.2 monthly prestige for
Steel Ministry rulers, +10 vassal opinion if Lord Ruler attention < 25.
Penalty: -10 vassal opinion if Lord Ruler attention > 75 (the mandate
feels oppressive).
**Terris Worldbringers tenets:**
- `tenet_keepers_vow` — Replaces `tenet_pacifism`. Bonus: +3 learning,
-2 martial (Keepers are scholars, not warriors). Unlocks: "Store Knowledge
in Coppermind" decision. Characters with this tenet can access coppermind
artifact events (M3.10, M7.10).
- `tenet_metalmic_preservation` — Replaces `tenet_monasticism`. Bonus:
+0.15 development growth in holy sites, +1 stewardship. Feruchemist
characters gain +1 additional learning. Represents preserving pre-
Ascension knowledge and culture.
- `tenet_worldbringer_mission` — Replaces `tenet_ancestor_worship`. Bonus:
+0.1 cultural acceptance gain, +5 different-faith opinion. Keepers aim to
preserve ALL knowledge, including other faiths. Unlocks: "Share Preserved
Knowledge" interaction (teach another character about a lost religion).
**Survivorist tenets:**
- `tenet_kelsiers_sacrifice` — Replaces `tenet_liberation_theology`. Bonus:
+15 same-faith opinion, +0.1 hostile scheme power, monthly county control
growth -0.1 (undermines authority). Conditional: if `kelsier_martyred`
global flag is set, bonuses double. Represents the power of martyrdom.
- `tenet_hope_in_ash` — Replaces `tenet_communal_identity`. Bonus:
+0.2 stress loss, +5 attraction opinion, +0.1 monthly prestige. Represents
the belief that things can change, that flowers can grow in ash.
- `tenet_underground_network` — Replaces `tenet_mendicants`. Bonus:
+15% hostile scheme resistance, +10% personal scheme power. Skaa
characters gain +2 intrigue. Represents the skaa underground's secrecy.
**Cult of Ruin tenets:**
- `tenet_hemalurgic_rites` — Replaces `tenet_human_sacrifice`. Bonus:
+10 dread baseline, +2 prowess, -2 diplomacy. Characters who sacrifice
prisoners via decision gain a hemalurgic spike trait. Far darker than
vanilla human sacrifice.
- `tenet_embrace_destruction` — Replaces `tenet_ritual_cannibalism`. Bonus:
stress gain -0.15, monthly piety +0.1, health -0.25 (destruction consumes
the faithful too). Unlocks: "Commune with Ruin" decision (intrigue event,
gain information at cost of health).
- `tenet_ruins_whispers` — Replaces `tenet_struggle_and_submission`. Bonus:
+3 intrigue, +15% scheme power. Characters occasionally receive "Ruin's
Guidance" events (random intrigue/martial bonuses with sanity cost via
stress). Represents Ruin's influence whispering to followers.
2. **Create custom doctrine categories.** In the same doctrine directory, define
2 custom doctrine groups unique to Scadrial:
**Doctrine group: "Allomantic Stance"** (`doctrine_allomantic_stance`)
- `doctrine_allomancy_divine` — Allomancy is a gift from Preservation. Bonus:
+10 opinion of Allomancers, Misting/Mistborn characters gain +0.1 monthly
piety. Used by: Survivorism, Terris Worldbringers.
- `doctrine_allomancy_controlled` — Allomancy must be registered and
regulated. Bonus: Ministry Preceptor gains +2 effectiveness at detecting
hidden Allomancers. Allomancers who hide their abilities face heresy
charges. Used by: Steel Ministry.
- `doctrine_allomancy_forbidden` — Allomancy (except Hemalurgy) is
abomination. Bonus: +5 dread when executing Allomancers, piety +20 for
each Allomancer killed. Used by: Cult of Ruin.
**Doctrine group: "Caste Doctrine"** (`doctrine_caste_stance`)
- `doctrine_caste_divine_order` — The noble/skaa divide is ordained by the
Lord Ruler. Intermarriage is heresy. Bonus: +5 same-culture opinion (within
your caste), -20 opinion of different-caste characters. Used by: Steel
Ministry.
- `doctrine_caste_irrelevant` — All people are equal before Preservation.
Bonus: +10 opinion with skaa characters, +5 different-culture opinion.
Used by: Survivorism, Terris Worldbringers.
- `doctrine_caste_tool` — Castes are tools for control — use them or
discard them as needed. Bonus: no opinion penalties for cross-caste
interaction, +5 intrigue. Used by: Cult of Ruin.
3. **Expand and differentiate holy sites.** Update
`common/religion/holy_sites/00_holy_sites.txt` to increase from 5 to ~10
sites, differentiated by faith. Some sites are shared, some are exclusive:
**Existing (updated):**
| Holy Site | Primary Faith(s) | Notes |
|-----------|-----------------|-------|
| Kredik Shaw | Steel Ministry, Cult of Ruin | Lord Ruler's seat of power. Ruin worshippers see it as the prison of Ruin's power |
| Pits of Hathsin | Steel Ministry, Cult of Ruin | Atium source — both faiths covet it |
| Conventical of Seran | Steel Ministry | Obligator research center |
| Tathingdwen | Terris Worldbringers | Terris capital, Keeper archives |
| Urteau | Survivorism | Northern skaa population center, rebellion base |
**New sites to add:**
| Holy Site | County/Barony | Primary Faith(s) | Modifiers | Lore |
|-----------|---------------|-----------------|-----------|------|
| Terris Homeland Peaks | c_terris_peaks / b_terris_shrine | Terris Worldbringers | +2 learning, +0.5 piety | Sacred mountains where Keepers hid copperminds |
| The Arguois Caverns | c_arguois / b_arguois_caves | Survivorism | +0.3 prestige, +1 intrigue | Underground skaa meeting place, rebel hideout |
| Ruin's Deposit | c_ruin_deposit / b_ruin_well | Cult of Ruin | +1 prowess, +5 dread | A place where Ruin's influence bleeds through, hemalurgic rituals performed |
| **Kelsier's Pyre** | c_luthadel / b_execution_square | Survivorism (conditional) | +20 same-faith opinion, +0.5 monthly prestige | **Only activates after `kelsier_martyred` flag is set.** The site where Kelsier died becomes sacred |
| **The Well of Ascension** | c_luthadel / b_well_of_ascension | Terris Worldbringers (conditional) | +3 learning, +1 piety | **Only activates after Fall of Kredik Shaw endgame (M7).** The Well is discovered beneath Kredik Shaw |
This gives each faith 3-4 holy sites:
- Steel Ministry: Kredik Shaw, Pits of Hathsin, Conventical of Seran (~3)
- Terris Worldbringers: Tathingdwen, Terris Homeland Peaks, Well of
Ascension (conditional) (~2-3)
- Survivorism: Urteau, Arguois Caverns, Kelsier's Pyre (conditional) (~2-3)
- Cult of Ruin: Kredik Shaw, Pits of Hathsin, Ruin's Deposit (~3)
4. **Terris Worldbringers -- Secret faith mechanics.** In the
`terris_worldbringers` faith definition:
- The mechanical goal: Terris characters should be able to hide their faith
from the Steel Ministry. CK3's secret faith mechanic works when a faith has
the `is_unreformed` flag or when characters manually set a secret faith. If
CK3 1.18 supports `doctrine_is_secret` or similar, use that. Otherwise, add
a custom decision "Practice Feruchemy in Secret" that sets a character flag
and provides bonuses while hiding the religion.
- The `tenet_keepers_vow` (step 1) synergizes with this: Keepers who
practice secretly gain the tenet bonuses but risk discovery.
2. **Survivorism -- Rebellion bonuses.** In the `survivorism` faith definition:
- Keep existing tenets (liberation theology, communal identity, mendicant
preachers).
- Add a scripted modifier or faith bonus that grants:
5. **Survivorism -- Rebellion bonuses.** In the `survivorism` faith definition:
- Apply `survivorism_faith_modifier` at game start to Survivorist characters:
- `monthly_county_control_growth_add = -0.1` (undermines control)
- `hostile_scheme_power_mult = 0.1` (good at subterfuge)
- `same_faith_opinion = 20` (strong in-group loyalty)
- These can be applied via a custom modifier `survivorism_faith_modifier`
in `common/modifiers/00_mistborn_modifiers.txt` and applied at game start
to Survivorist characters.
- These are now reinforced by the `tenet_kelsiers_sacrifice` and
`tenet_underground_network` tenets from step 1.
3. **Cult of Ruin -- Hemalurgy bonuses.** In the `cult_of_ruin` faith:
- Keep existing tenets (human sacrifice, ritual cannibalism, struggle
submission).
- Add a custom modifier `cult_of_ruin_faith_modifier`:
6. **Cult of Ruin -- Hemalurgy bonuses.** In the `cult_of_ruin` faith:
- Apply `cult_of_ruin_faith_modifier` at game start:
- `dread_baseline_add = 10`
- `prowess = 2`
- `diplomacy = -2`
- `stress_gain_mult = -0.1` (they embrace destruction)
- Cult of Ruin followers should automatically know Hemalurgy: add a game-start
on_action that grants `trait_knows_hemalurgy` to all Cult of Ruin characters.
- Cult of Ruin followers should automatically know Hemalurgy: add a
game-start on_action that grants `trait_knows_hemalurgy` to all Cult of
Ruin characters.
- Reinforced by `tenet_hemalurgic_rites` and `tenet_embrace_destruction`.
4. **Steel Ministry -- Obligator hierarchy.** The Steel Ministry is now headed by
the Lord Ruler (done in 3.2). Additional polish:
- Add a custom `steel_ministry_faith_modifier`:
7. **Steel Ministry -- Obligator hierarchy.** The Steel Ministry is now headed
by the Lord Ruler (done in 3.2). Additional polish:
- Apply `steel_ministry_faith_modifier`:
- `monthly_piety = 0.2`
- `same_faith_opinion = 5`
- Consider adding `doctrine = tenet_tax_nonbelievers` (already present) and
ensure it functions correctly.
- The `tenet_obligator_hierarchy` and `tenet_imperial_mandate` reinforce
the mechanical identity of the Ministry as a state religion.
5. Add all new modifier definitions to
`common/modifiers/00_mistborn_modifiers.txt` and localization to
`localization/english/mistborn_modifiers_l_english.yml`.
8. **Wire dead tradition parameters.** The culture traditions
(`tradition_allomantic_heritage`, `tradition_noble_intrigue`,
`tradition_skaa_resilience`, `tradition_terris_scholarship`) define custom
parameters (`allomantic_potential_bonus`, etc.) that are never referenced.
Either:
- (a) Wire them into scripted triggers so events/decisions can check
`has_cultural_tradition_parameter = allomantic_potential_bonus`, or
- (b) Remove the dead parameters and rely on the `character_modifier` stat
blocks which already work.
Option (b) is recommended unless a specific mechanic needs the parameters.
6. Add localization for any new doctrine descriptions or faith-specific text to
`localization/english/mistborn_religions_l_english.yml`.
9. **Fix tradition conditions.** The `is_valid` blocks on traditions use
`has_cultural_pillar = heritage_scadrial` which is shared by all 3 cultures.
This means any culture could adopt any tradition. Fix:
- `tradition_allomantic_heritage`: keep as heritage_scadrial (available to
all — Allomancy crosses caste lines)
- `tradition_noble_intrigue`: restrict to `has_culture = culture:noble_scadrian`
- `tradition_skaa_resilience`: restrict to `has_culture = culture:skaa`
- `tradition_terris_scholarship`: restrict to `has_culture = culture:terris`
10. Add all new tenet, doctrine, modifier, and holy site definitions to their
respective files. Add localization for:
- 12 custom tenet names + descriptions (~48 keys)
- 6 custom doctrine options + descriptions (~24 keys)
- 2 doctrine group names + descriptions (~8 keys)
- 5 new holy site names + descriptions (~10 keys)
- Faith-specific modifier names (~8 keys)
- Total: ~100 new localization keys
**Files:**
- `common/religion/religions/00_scadrial_religions.txt` -- modify
- `common/religion/doctrines/00_scadrial_doctrines.txt` -- create
- `common/religion/religions/00_scadrial_religions.txt` -- modify (update tenets
and doctrine references)
- `common/religion/holy_sites/00_holy_sites.txt` -- modify (expand to ~10 sites,
differentiate by faith, add conditional sites)
- `common/culture/traditions/00_scadrial_traditions.txt` -- modify (fix
conditions, clean up dead parameters)
- `common/modifiers/00_mistborn_modifiers.txt` -- modify (add faith modifiers)
- `common/on_action/mistborn_on_actions.txt` -- modify (cult of ruin hemalurgy)
- `common/on_action/mistborn_on_actions.txt` -- modify (cult of ruin hemalurgy,
conditional holy site activation)
- `localization/english/mistborn_religions_l_english.yml` -- modify (~100 keys)
- `localization/english/mistborn_modifiers_l_english.yml` -- modify
- `localization/english/mistborn_religions_l_english.yml` -- modify
**References:**
- Existing religions: `common/religion/religions/00_scadrial_religions.txt`
- Existing holy sites: `common/religion/holy_sites/00_holy_sites.txt`
- Existing modifiers: `common/modifiers/00_mistborn_modifiers.txt`
- Lore: `docs/lore/mistborn-universe.md` -- Keepers, Survivorism, Cult of Ruin
- Existing traditions: `common/culture/traditions/00_scadrial_traditions.txt`
- Vanilla doctrine format: CK3 game install `common/religion/doctrines/`
- Vanilla tenet format: CK3 game install `common/religion/doctrines/` (tenets
are doctrines with `is_tenet = yes`)
- Lore: `docs/lore/mistborn-universe.md` -- Keepers, Survivorism, Cult of Ruin,
Steel Ministry, Preservation, Ruin
---
@@ -1051,6 +1195,156 @@ strongly preferred for immersion (equippable, visible in court, inheritable).
---
### 3.11 -- Holy Orders: Steel Inquisitors and Keeper Network
**Context:** The Steel Inquisitors are the militant arm of the Steel Ministry —
terrifying individuals with hemalurgic spikes driven through their eyes. They
hunt heretics, interrogate prisoners, and enforce the Lord Ruler's will. In CK3
terms, they are a holy order — but they function as individual super-powered
agents, not a conventional army. Separately, the Terris Keepers operate as a
secret counter-network, preserving forbidden knowledge underground. This task
creates both as religious orders with distinct mechanics.
**Steps:**
1. **Create the Steel Inquisitor Holy Order.** In
`common/holy_orders/00_mistborn_holy_orders.txt` (new directory/file), define
the Inquisitor order:
```
holy_order_steel_inquisitors = {
religion = steel_ministry_religion
# ... order definition
}
```
The order is available for hire by Steel Ministry rulers (piety cost).
Mechanically, hiring the order provides a small but devastatingly powerful
MaA regiment of Inquisitors (~50-100 soldiers with extreme stats, reflecting
that a single Inquisitor is worth hundreds of normal fighters).
Order properties:
- **Hire cost:** 500 piety
- **Maintenance:** 2.0 gold/month (the Ministry demands resources)
- **MaA type:** `inquisitor_squad` — 100 soldiers, damage 150, toughness
80, pursuit 40. Counters: Mistborn Agents, Hazekillers. This represents a
small squad with Inquisitors at the lead.
- **Leader:** The order's leader should be one of the M3 Steel Inquisitor
characters. The order fires events when hired (Inquisitor arrives at court,
terror among courtiers).
- **Hire trigger:** `faith = faith:steel_ministry`, `piety >= 500`
- **Dismiss trigger:** always available but costs -100 piety (dismissing the
Lord Ruler's enforcers is seen as impiety)
2. **Create the individual Inquisitor request mechanic.** Beyond the holy order
(military), Steel Ministry rulers can "Request an Inquisitor" via decision:
```
request_inquisitor_decision = {
is_shown = {
faith = faith:steel_ministry
is_ruler = yes
highest_held_title_tier >= tier_county
}
cost = { piety = 200 }
}
```
On taking the decision, an event fires:
- `mistborn_inquisitor.0001` — An Inquisitor arrives at your court. A
special character is generated with `trait_hemalurgist`, multiple spike
traits, and the `steel_inquisitor_power` modifier.
- The Inquisitor becomes a courtier with unique interactions:
- **Investigate Heresy** — Target a courtier or vassal. Intrigue check.
Success: reveals hidden faith, hidden Allomantic traits, or secrets.
Failure: target is terrorized (stress +20) but nothing found.
- **Hunt Allomancers** — Target a province. Works like the Hazemaster
council task but more effective (+30% detection). Discovered Allomancers
are captured, not given recruitment option.
- **Interrogate Prisoner** — Target a prisoner. Brutal intrigue check.
Success: learn all secrets, gain confession (can be used as hook).
Side effect: prisoner gains `tortured` trait, opinion of you -30 with
compassionate characters.
- The Inquisitor is NOT loyal to you — they serve the Lord Ruler. Yearly
event (15% chance): the Inquisitor reports your activities to the Canton.
Lord Ruler attention +5. This creates tension: Inquisitors are powerful
but dangerous to keep around.
- Cooldown: 3 years between requests (flag-based).
3. **Create the Keeper Network (secret religious order).** The Terris Keepers
are not a military force — they're a clandestine network that preserves
forbidden knowledge. Implement as a "secret society" equivalent:
```
keeper_network = {
religion = terris_religion
# Secret order, not visible to non-members
}
```
The Keeper Network functions differently from the Inquisitor order:
- **Joining:** Terris Worldbringer characters with learning >= 12 can take
a decision "Seek the Keepers" to join. If accepted (event chain with
tests), they gain the `keeper_initiate` flag and access to Keeper events.
- **Progression:** Keeper initiates can advance to full Keepers via events
(requires: learning >= 15, Feruchemist trait preferred, 2+ years as
initiate). Full Keepers gain `keeper_identity` flag and access to:
- Coppermind sharing events (exchange knowledge with other Keepers)
- "Teach Forbidden History" interaction (target: any character, grants
learning +1, risk of Ministry detection)
- Access to hidden Keeper archive holy site events
- **Network bonuses:** For each Keeper in your realm, gain:
- +0.5 learning (court-level modifier)
- +5% cultural acceptance gain
- The Keeper network passively preserves knowledge: post-rebellion,
unlocked Keepers accelerate the innovation unlock (M4/M7 tie-in)
- **Risk:** The Steel Ministry actively hunts Keepers. Yearly event per
Keeper character (10% chance): Ministry investigation. If the Keeper is
discovered:
- The Keeper is arrested (becomes prisoner of nearest Steel Ministry ruler)
- The lord sheltering them gains Lord Ruler attention +10
- If the lord IS a Steel Ministry ruler, they must choose: hand over the
Keeper (piety +30) or protect them (attention +15, piety -50)
- **Interaction with Terris Steward court position (M4):** If your Terris
Steward is a Keeper, they gain enhanced bonuses but increased discovery
risk. This ties into M7's Terris Steward reveal events.
4. **Create Inquisitor vs Keeper tension events.** When an Inquisitor and a
Keeper are in the same court (or the Inquisitor is investigating a court
with a hidden Keeper):
- `mistborn_inquisitor.0010` — The Inquisitor senses something wrong. If
a Keeper is present: heightened detection chance (25% instead of 10%).
Event text describes the Inquisitor's bronze Allomancy probing.
- `mistborn_inquisitor.0011` — If the Keeper has a Court Smoker ally (M4
court position), the Smoker can shield the Keeper. Intrigue contest
between Inquisitor and Smoker. Ties into M7 advanced council events.
5. **Localization.** Add entries for:
- Holy order name, description, hire/dismiss text (~10 keys)
- Inquisitor request decision + events (~25 keys)
- Inquisitor interactions (investigate, hunt, interrogate) (~20 keys)
- Keeper Network join/advance/events (~30 keys)
- Keeper-Inquisitor tension events (~10 keys)
- Total: ~95 new localization keys
**Files:**
- `common/holy_orders/00_mistborn_holy_orders.txt` -- create
- `common/men_at_arms_types/00_mistborn_maa.txt` -- modify (add
`inquisitor_squad` MaA type)
- `common/decisions/02_inquisitor_decisions.txt` -- create
- `common/character_interactions/00_inquisitor_interactions.txt` -- create
- `events/inquisitor_events.txt` -- create
- `common/decisions/02_keeper_decisions.txt` -- create
- `events/keeper_events.txt` -- create
- `localization/english/mistborn_holy_orders_l_english.yml` -- create
**References:**
- Vanilla holy order format: CK3 game install `common/holy_orders/`
- Steel Inquisitor characters: M3 task 3.4
- Inquisitor traits/modifier: `common/traits/` (hemalurgic spikes),
`common/modifiers/` (`steel_inquisitor_power`)
- Keeper lore: `docs/lore/mistborn-universe.md` — Terris Keepers, copperminds,
Worldbringers, the breeding program
- Court Smoker position: M4 task 4.8
- Terris Steward court position: M4 task 4.8
- Advanced Inquisitor/Keeper events: M7 task 7.12
---
## Testing Checkpoints
- **After 3.1 + 3.2 (Lord Ruler + Religious Head):**
@@ -1087,9 +1381,27 @@ strongly preferred for immersion (equippable, visible in court, inheritable).
- **After 3.8 (Religion Polish):**
- **Test:** Check each religion in the religion view. Verify descriptions,
tenets, and modifiers.
- **Expected:** Steel Ministry shows Lord Ruler as head. Each faith has
distinctive tenets. Cult of Ruin followers have `trait_knows_hemalurgy`.
custom tenets, and custom doctrines. Check holy sites — verify each faith
has 2-3 differentiated sites. Start as a Terris character, verify secret
faith mechanics. Check that Cult of Ruin followers have Hemalurgy trait.
Verify tradition conditions are fixed (skaa_resilience only on skaa).
- **Expected:** Steel Ministry shows Lord Ruler as head with custom tenets
(Obligator Hierarchy, Allomantic Oversight, Imperial Mandate). Each faith
has 3 unique custom tenets. Allomantic Stance and Caste Doctrine custom
doctrine groups appear. Holy sites differentiated by faith. Conditional
sites (Kelsier's Pyre, Well of Ascension) not yet active. Tradition
conditions restrict culture-specific traditions.
- **After 3.11 (Holy Orders):**
- **Test:** As a Steel Ministry ruler, hire the Inquisitor holy order (piety
cost). Verify MaA regiment appears. Take "Request an Inquisitor" decision.
Verify Inquisitor courtier arrives with spike traits. Use "Investigate
Heresy" interaction on a courtier. As a Terris character, take "Seek the
Keepers" decision. Verify initiation event chain. Place a Keeper and an
Inquisitor in the same court — verify tension event fires.
- **Expected:** Holy order is hireable, Inquisitor arrives as courtier with
unique interactions, Keeper Network is joinable with progression. Inquisitor
yearly report to Canton fires. Keeper discovery risk events fire.
- **After 3.9 (Title History + Bookmark):**
- **Test:** Start a new game from the "End of an Empire" bookmark. Try each
@@ -1131,8 +1443,35 @@ strongly preferred for immersion (equippable, visible in court, inheritable).
buildings with unique effects
- [ ] `dynasty_rashek` and `dynasty_terris_stewards` are defined with localization
- [ ] Terris characters are no longer assigned to noble house dynasties
- [ ] All four religions have distinctive tenets and associated modifiers
- [ ] 12 custom tenets defined (3 per faith) replacing vanilla placeholders
- [ ] 2 custom doctrine groups defined: Allomantic Stance (3 options), Caste
Doctrine (3 options)
- [ ] Each faith has correct custom tenets and doctrine assignments
- [ ] Holy sites expanded to ~10 total, differentiated by faith
- [ ] Conditional holy sites (Kelsier's Pyre, Well of Ascension) defined with
activation triggers
- [ ] Steel Ministry: Kredik Shaw, Pits, Conventical (~3 sites)
- [ ] Terris: Tathingdwen, Terris Homeland Peaks (~2 sites, +1 conditional)
- [ ] Survivorism: Urteau, Arguois Caverns (~2 sites, +1 conditional)
- [ ] Cult of Ruin: Kredik Shaw, Pits, Ruin's Deposit (~3 sites)
- [ ] Terris secret faith mechanics functional
- [ ] Dead tradition parameters cleaned up (wired or removed)
- [ ] Tradition conditions fixed (culture-specific restrictions)
- [ ] Cult of Ruin followers receive `trait_knows_hemalurgy` at game start
- [ ] Faith-specific modifiers applied at game start
- [ ] Steel Inquisitor holy order hireable by Steel Ministry rulers (500 piety)
- [ ] `inquisitor_squad` MaA type defined with correct stats
- [ ] "Request an Inquisitor" decision spawns Inquisitor courtier with spike
traits and unique interactions
- [ ] Inquisitor interactions functional: Investigate Heresy, Hunt Allomancers,
Interrogate Prisoner
- [ ] Inquisitors report to Canton yearly (15% chance, attention +5)
- [ ] Keeper Network joinable by Terris characters with learning >= 12
- [ ] Keeper progression from initiate to full Keeper functional
- [ ] Keeper discovery risk events fire (10% yearly per Keeper)
- [ ] Inquisitor-Keeper tension events fire when both in same court
- [ ] All holy order, Inquisitor, and Keeper content has complete localization
(~95 keys)
- [ ] The "End of an Empire" bookmark shows canonical characters
- [ ] All title holders in title history reference valid character IDs
- [ ] 9 artifact types defined: mistcloak, metal_vial_set, glass_daggers,
+480 -6
View File
@@ -407,12 +407,28 @@ basic vanilla decision suppression. M4 does a thorough sweep.
- `crusade_*` localization keys
- Any vanilla text that mentions "Pope", "Christ", "Muslim", "Viking", etc.
4. **Vanilla lifestyle suppression assessment.** Check whether vanilla lifestyle
4. **Suppress the Legend system.** CK3's Legends of the Dead DLC adds a legend
creation/spreading mechanic that does not fit the Final Empire — the Lord
Ruler actively suppresses individual fame and historical memory. Suppress by
creating empty replacement files:
- `common/legends/legend_types/` — empty replacements for all vanilla legend
type files
- `common/legends/legend_chronicles/` — empty replacements
- `common/legends/legend_seeds/` — empty replacements
- Suppress legend-related decisions in `common/decisions/` (identify via
grep for `legend` in vanilla decision files)
- Override legend UI localization keys to prevent any legend text from
appearing in tooltips or UI elements
Note: if a future milestone wants Kelsier's martyrdom to function as a
"legend-like" mechanic, build it as a custom modifier/flag system rather
than reusing the vanilla Legend framework.
5. **Vanilla lifestyle suppression assessment.** Check whether vanilla lifestyle
events (education, stress, romance) are safe to keep. Most should be
fine (they are generic). Flag any that reference real-world content for
localization override.
5. Test by playing a 20-year game and noting any text, event, or decision that
6. Test by playing a 20-year game and noting any text, event, or decision that
references the real world. Fix each instance by either suppressing the source
file or overriding the localization key.
@@ -1635,7 +1651,397 @@ M7 (task 7.12) to keep M4 focused on making the world shareable.
---
### 4.8 -- Full Testing Pass and Error Cleanup
### 4.8 -- Council Positions, Court Roles, and Court Types
**Context:** Vanilla CK3's council positions (Chancellor, Marshal, Steward,
Spymaster, Court Chaplain) and Royal Court court positions use medieval European
framing. For a total conversion, every role must be rethemed and given custom
tasks that interact with Mistborn systems (Lord Ruler attention, metal supply,
Allomantic traits, skaa unrest). Court positions (Royal Court DLC) provide
additional slots for Mistborn-specific advisors.
**Steps:**
1. **Retheme the 5 council positions.** Create
`common/council_positions/00_mistborn_council.txt` (or override vanilla via
empty replacement + new definitions). Each position gets a new name, custom
icon reference (placeholder until M8), and 2 custom council tasks alongside
rethemed vanilla tasks.
| Vanilla Role | Mistborn Role | Lore Basis |
|-----------------|------------------------|------------|
| Chancellor | **Obligator Liaison** | Noble houses conduct diplomacy through obligators who witness contracts and mediate disputes |
| Marshal | **Hazemaster** | Military commander who coordinates Hazekillers and conventional forces against Allomantic threats |
| Steward | **House Comptroller** | Manages house finances, plantation output, and atium reserves |
| Spymaster | **House Informant** | Runs the house's spy network — informants among the skaa, agents in rival courts |
| Court Chaplain | **Ministry Preceptor** | The Steel Ministry's representative in the noble house; enforces orthodoxy and reports to the Canton |
2. **Create custom council tasks.** In `common/council_tasks/` (new directory),
define 2 custom tasks per position (10 total). Each task is a scripted effect
that fires monthly and interacts with mod systems:
**Obligator Liaison (Chancellor replacement):**
- `council_task_canton_diplomacy` — Improve relations with the Steel Ministry.
Monthly: +0.1 piety, small chance of Lord Ruler attention reduction (-2).
Requires: councillor has `learning >= 8`. Rethemes "Improve Relations."
- `council_task_suppress_unrest` — Dispatch obligators to calm skaa
populations. Monthly: +0.5 county control in assigned province. If province
has `ash_blight` modifier, effectiveness halved. Chance of discovering skaa
allomancers (triggers `mistborn_skaa_allomancer` event if province has skaa
population flag).
**Hazemaster (Marshal replacement):**
- `council_task_hunt_allomancers` — Search for hidden skaa Mistings in the
assigned province. Monthly check: councillor martial × 2% chance of
discovering a hidden Allomancer. On success, fire event with options: capture
(gain prisoner), kill (gain dread), recruit (gain courtier with Misting
trait). Lord Ruler attention +3 if recruit option chosen.
- `council_task_train_hazekillers` — Improve anti-Allomancer military
readiness. After 12 months of continuous training, grants province modifier
`hazekiller_training_ground` (+15% hazekiller MaA damage, +5% toughness).
Stacks with existing Hazekiller MaA bonuses from M2.
**House Comptroller (Steward replacement):**
- `council_task_manage_atium` — Interact with the atium supply system (M2).
Monthly: if province holds atium source, +5% atium income efficiency. If
metal supply is "depleted," chance of discovering a hidden cache (triggers
`mistborn_atium` event). Councillor stewardship adds to check.
- `council_task_oversee_plantations` — Maximize skaa labor output. Monthly:
+0.3 gold income in assigned province. Annual event check: 15% chance of
skaa unrest event (work conditions trigger rebellion sentiment). Trade-off:
gold vs. stability.
**House Informant (Spymaster replacement):**
- `council_task_monitor_underground` — Surveillance of skaa communities in
the assigned province. Monthly check: councillor intrigue × 1.5% chance of
discovering rebel cells. On success: fire event with options — arrest leaders
(control +5, attention +2), infiltrate (gain scheme power vs. rebels),
ignore (attention -1, risk grows). Allomantic Seeker councillor gets +20%
detection bonus.
- `council_task_deploy_smoker_network` — Establish a coppercloud over your
own court's activities. While active: -20% hostile scheme power against your
court. If councillor has `trait_misting_smoker` or `trait_mistborn`:
bonus increases to -35%. Lord Ruler attention decay +1/year while active
(your activities are hidden).
**Ministry Preceptor (Court Chaplain replacement):**
- `council_task_inspect_bloodlines` — Investigate courtiers and vassals for
Allomantic potential. Monthly check: councillor learning × 1% chance per
courtier of revealing hidden `trait_allomantic_potential`. On discovery,
event fires with options: report to Ministry (piety +20, attention -5),
keep secret (intrigue +1, attention +3 if discovered later), recruit for
house (courtier gains snapping event queue).
- `council_task_root_out_heresy` — Suppress non-orthodox faiths (Terris
Keepers, Survivorists, Cult of Ruin). Monthly: +0.3 piety. If province
contains characters of non-Steel Ministry faith, 10% monthly chance of
triggering persecution event. Success: convert character, piety +15.
Failure: character flees, heresy spreads to adjacent province.
3. **Retheme vanilla council tasks.** The vanilla tasks that remain should have
Mistborn-appropriate names and tooltips:
- "Fabricate Claim" → "File Canton Petition" (same mechanics, new flavor)
- "Increase Control" → "Pacify Dominance"
- "Collect Taxes" → "Extract Plantation Revenue"
- "Find Secrets" → "Infiltrate Rival House"
- "Convert Faith" → "Enforce Steel Ministry Orthodoxy"
Localization overrides in
`localization/english/mistborn_council_l_english.yml`.
4. **Define custom court positions.** In
`common/court_positions/00_mistborn_court_positions.txt`, create 7
Mistborn-specific court positions (Royal Court DLC). Each has a salary, stat
requirements, and passive bonuses:
| Court Position | Stat Requirement | Passive Bonus | Special Effect |
|------------------------|---------------------------|---------------|----------------|
| **Terris Steward** | stewardship >= 8 | +2 stewardship, +1 learning | If character is Feruchemist: +1 additional learning, coppermind event access |
| **Kandra Agent** | intrigue >= 10, has kandra trait or flag | +3 intrigue, +10 scheme power | Unlocks "Replace a Courtier" interaction (M7). Requires kandra contract (M3 kandra trait) |
| **Allomantic Advisor** | has any Allomantic trait | +2 to stat matching metal type (Coinshot→martial, Soother→diplomacy, etc.) | Allomantic-themed court events. If Mistborn: +1 to all stats |
| **Hazekiller Captain** | prowess >= 12, martial >= 8 | +3 prowess, +5 dread | -15% hostile scheme success against liege. Anti-Allomancer security events |
| **Obligator Witness** | piety >= 100, Steel Ministry faith | +0.2 monthly piety | -3 Lord Ruler attention/year (Ministry presence = compliance). Trigger: reports unusual activity to Canton (event) |
| **Court Smoker** | has `trait_misting_smoker` or `trait_mistborn` | -25% hostile scheme power in court | Coppercloud over court: enemy Seekers cannot detect your Allomancers. Hides trait information from visitors |
| **Master of Revels** | diplomacy >= 10 | +2 diplomacy, +0.1 monthly prestige | Noble Ball activity bonuses (+10% guest acceptance). Ball events are richer when this position is filled |
5. **Suppress vanilla court positions that don't fit.** Create empty replacement
files for court positions that are too medieval (e.g., Court Jester, Court
Poet if they break immersion). Keep positions that are culture-neutral
(Bodyguard → retheme as "Personal Hazekiller," Court Physician → retheme as
"House Healer"). Localization overrides for rethemed positions.
6. **Localization.** Create `localization/english/mistborn_council_l_english.yml`
with all new keys:
- 5 council position names + descriptions (~20 keys)
- 10 custom council task names + descriptions + tooltips (~40 keys)
- Rethemed vanilla council task names (~10 keys)
- 7 court position names + descriptions + hire/fire tooltips (~35 keys)
- Rethemed vanilla court position names (~10 keys)
- Total: ~115 new localization keys
**Files:**
- `common/council_positions/00_mistborn_council.txt` -- create
- `common/council_tasks/00_mistborn_council_tasks.txt` -- create
- `common/court_positions/00_mistborn_court_positions.txt` -- create
- `localization/english/mistborn_council_l_english.yml` -- create
- Vanilla council suppression files as needed -- create (empty replacements)
- Vanilla court position suppression files as needed -- create (empty replacements)
**References:**
- Vanilla council positions: CK3 game install
`common/council_positions/00_council_positions.txt`
- Vanilla council tasks: CK3 game install `common/council_tasks/`
- Vanilla court positions: CK3 game install `common/court_positions/`
- Lord Ruler attention system: `common/scripted_effects/mistborn_effects.txt`
- Metal supply system: M2 task 2.7
- Kandra trait: M3 task 3.7
- Allomantic traits: `common/traits/00_allomancy_traits.txt`
---
### 4.9 -- Caste Laws and Consequences
**Context:** The noble/skaa divide is the central tension of the Final Empire.
Nobles rule, skaa are property. Cross-caste relationships happen (Vin's
backstory) but carry severe consequences — half-skaa children are supposed to
be killed. This needs both structural enforcement (laws that gate what skaa
can do) and personal drama (events when the rules are broken). Post-rebellion,
these laws can be repealed, tying into the innovation/era unlock system (4.10).
**Steps:**
1. **Define Caste Laws.** In `common/laws/00_mistborn_laws.txt` (new directory/
file), create a "Caste Law" law group with 3 tiers:
**`caste_law_strict`** (default under the Lord Ruler):
- Skaa characters cannot hold titles above barony tier
- Skaa characters cannot be appointed to council positions
- Cross-caste marriage is forbidden (AI will not propose, player gets a
confirmation warning + consequences)
- Skaa characters have -20 opinion with noble rulers
- Noble characters get +0.1 monthly prestige (caste privilege)
- Modifier: `strict_caste_law_modifier`
**`caste_law_relaxed`** (available post-rebellion or with high autonomy):
- Skaa can hold titles up to county tier
- Skaa can be appointed to some council positions (not Ministry Preceptor)
- Cross-caste marriage is permitted but carries -10 opinion with
traditional nobles
- Modifier: `relaxed_caste_law_modifier`
**`caste_law_abolished`** (available only post-Lord Ruler fall):
- No restrictions based on culture/caste
- All opinion penalties from caste removed
- Unlocks "Integrate Skaa Nobility" decision
- Modifier: `caste_abolished_modifier` (+10 popular opinion, -10 opinion
with traditional noble vassals for 20 years)
The law group should use:
```
caste_laws = {
default = caste_law_strict
flag = caste_law
# Can only change if conditions are met
}
```
2. **Create cross-caste consequence events.** In `events/caste_events.txt`
(new file), namespace `mistborn_caste`:
- `mistborn_caste.0001` — **Noble-skaa affair discovered.** Fires when a
noble ruler has a skaa lover/consort (yearly check, 20% chance of
discovery). Options: deny (intrigue check), confess and beg Ministry
forgiveness (piety -50, attention +5), eliminate the skaa lover (dread +10,
stress +20), marry them (only if `caste_law_relaxed`, attention +10).
- `mistborn_caste.0002` — **Half-skaa child born.** Fires on birth of a
child where one parent is noble_scadrian and the other is skaa. Under
`caste_law_strict`: event gives options — kill the child (dread +5,
stress +30, attention -5), hide the child (intrigue check, child gains
`hidden_skaa_heritage` flag, discovery risk), acknowledge openly (attention
+15, massive opinion penalty, but child gains legitimacy).
- `mistborn_caste.0003` — **Hidden heritage discovered.** A character with
`hidden_skaa_heritage` is exposed. This can fire from: Inquisitor
investigation (M3.11), Ministry Preceptor "Inspect Bloodlines" task (M4
4.8), or random yearly event (5% chance). Consequences: the character
loses any noble titles, opinion collapse, Lord Ruler attention +10 for
their lord.
- `mistborn_caste.0004` — **Skaa protests caste restrictions.** Province
event under `caste_law_strict`. Yearly pulse, 10% chance in provinces with
high skaa population. Options: crush protest (control +3, popular opinion
-10), make concessions (control -2, popular opinion +5, attention +3),
ignore (50% chance of escalation to rebellion CB).
- `mistborn_caste.0005` — **Skaa Allomancer in noble court.** A skaa
courtier with hidden Allomantic abilities is discovered. Under
`caste_law_strict`: the character must be surrendered to the Ministry or
hidden (intrigue check, attention +8 if caught). Under `caste_law_relaxed`:
you can legitimize them as a house agent.
3. **Wire caste laws into existing systems.** Update triggers and effects:
- Marriage proposals: check caste compatibility based on active law
- Council appointment: check caste eligibility per law tier
- Title grant: check tier restrictions per law
- AI behavior: nobles under strict caste law won't befriend skaa, won't
choose skaa councillors, won't arrange cross-caste marriages
- Add `caste_law_check_trigger` to `mistborn_triggers.txt` for reuse
4. **Localization.** Add entries for:
- 3 law names + descriptions (~12 keys)
- 3 law modifier names + descriptions (~6 keys)
- ~5 caste events (title + description + 3-4 options each, ~50 keys)
- Law change decision text (~5 keys)
- Total: ~73 new localization keys
**Files:**
- `common/laws/00_mistborn_laws.txt` -- create
- `common/modifiers/00_mistborn_modifiers.txt` -- modify (add caste modifiers)
- `events/caste_events.txt` -- create
- `common/scripted_triggers/mistborn_triggers.txt` -- modify (caste checks)
- `localization/english/mistborn_laws_l_english.yml` -- create
**References:**
- Vanilla law format: CK3 game install `common/laws/`
- Caste Doctrine (M3 task 3.8): `doctrine_caste_divine_order` etc. — doctrine
interacts with caste law (Steel Ministry doctrine reinforces strict law)
- Lord Ruler attention: `common/scripted_effects/mistborn_effects.txt`
- Vin's backstory: half-skaa child of a noble, mother killed, grew up on the
streets — this is exactly the kind of drama the caste events should produce
- Post-rebellion unlock: ties to innovation system (4.10)
---
### 4.10 -- Cultural Innovations: Imperial Stagnation and Post-Rebellion Era
**Context:** CK3's innovation system represents technological and cultural
advancement. In the Final Empire, the Lord Ruler enforces 1,000 years of
stagnation — progress is forbidden. The innovation system should reflect this:
everything is locked during the Lord Ruler's reign, and a new era of discovery
opens only after his fall. This creates a powerful mechanical contrast between
the suffocating status quo and the explosive potential of liberation.
**Steps:**
1. **Define the "Imperial Stagnation" era.** In `common/culture/innovations/`
(new directory), create a custom era system. CK3 innovations are grouped by
eras (Tribal, Early Medieval, etc.). For Scadrial:
**Era 1: "Age of the Lord Ruler" (active at game start)**
All innovations in this era are **pre-unlocked** at game start. They
represent the technological ceiling the Lord Ruler permits:
- `innovation_plantation_agriculture` — Skaa farming techniques. Grants:
basic building slots, food production.
- `innovation_ashland_engineering` — Building in ash-covered terrain.
Grants: ash-resistant buildings, canal construction.
- `innovation_allomantic_metallurgy` — Basic metal refining for Allomancy.
Grants: metal vial crafting (M3 artifacts), allomantic training.
- `innovation_hazekiller_tactics` — Anti-Allomancer military techniques.
Grants: Hazekiller MaA upgrades.
- `innovation_obligator_bureaucracy` — Steel Ministry administrative system.
Grants: obligator-related council tasks, canton administration.
- `innovation_caste_codification` — The legal framework of noble/skaa
separation. Grants: caste laws (task 4.9). Pre-unlocked because the
system is already established.
- `innovation_canal_networks` — Transport infrastructure. Grants: trade
route bonuses, movement speed.
- `innovation_keep_architecture` — Fortified noble keeps. Grants: defensive
buildings, keep upgrades.
Total: ~8 pre-unlocked innovations representing the Empire's static
technological state.
2. **Define the "Age of Liberation" era.** This era is **locked** until the
Lord Ruler falls (triggered by M7 endgame). Innovations become discoverable
only after the `lord_ruler_fallen` global flag is set:
- `innovation_free_metallurgy` — Unrestricted metal research. Grants:
improved allomantic training, new metal alloy weapons, metal supply
efficiency +20%.
- `innovation_printing_press` — Knowledge can spread freely. Grants:
+30% development growth, learning bonus, Keeper knowledge spreads faster.
- `innovation_skaa_citizenship` — Former slaves gain rights. Grants: unlock
`caste_law_abolished`, skaa characters can hold any title, skaa
recruitment bonuses.
- `innovation_democratic_councils` — Post-rebellion governance experiments.
Grants: new council task options, elective succession available.
- `innovation_feruchemical_scholarship` — Feruchemy studied openly. Grants:
Feruchemist training decisions for non-Terris characters, coppermind
sharing bonuses, Terris Synod activity improvements (M7).
- `innovation_allomantic_theory` — Systematic study of Allomancy. Grants:
improved snapping event outcomes (+10% Mistborn chance), allomantic
strength training decisions, Allomantic Exhibition activity bonuses (M7).
- `innovation_koloss_integration` — Taming koloss for civil use. Grants:
koloss MaA improved, koloss characters can be courtiers, koloss labor
for province development.
- `innovation_inter_dominance_trade` — Free trade between dominances.
Grants: trade route income +30%, atium can be traded freely, trade
agreement CBs replaced by peaceful negotiation.
Total: ~8 post-rebellion innovations representing the explosion of progress.
3. **Implement the era gate.** The "Age of Liberation" era requires:
```
can_progress = {
has_global_variable = lord_ruler_fallen
}
```
This variable is set by the Fall of Kredik Shaw endgame event (M7 task 7.7).
Before this variable exists, no character can research Age of Liberation
innovations.
The innovation UI should show the locked era with a tooltip explaining:
"The Lord Ruler forbids progress. Only his fall can unlock a new age."
(Localization override for era description.)
4. **Suppress vanilla eras.** Create empty replacement files for vanilla
innovation definitions:
- `common/culture/innovations/00_tribal_innovations.txt` — empty
- `common/culture/innovations/00_early_medieval_innovations.txt` — empty
- `common/culture/innovations/00_high_medieval_innovations.txt` — empty
- `common/culture/innovations/00_late_medieval_innovations.txt` — empty
Verify the exact file names against the CK3 game install.
5. **Keeper Network synergy.** Each Keeper character in your realm (M3.11)
provides +5% innovation research speed for Age of Liberation innovations.
This represents the Keepers' preserved knowledge accelerating the post-
rebellion renaissance. Implement as a realm modifier that scales with Keeper
count:
```
keeper_knowledge_bonus = {
# Applied via yearly pulse, scaled by number of Keepers
culture_innovation_progress_mult = 0.05 # per Keeper, up to +25%
}
```
6. **Localization.** Add entries for:
- 2 era names + descriptions (~8 keys)
- ~16 innovation names + descriptions (~64 keys)
- Era gate tooltip (~2 keys)
- Keeper synergy modifier (~2 keys)
- Total: ~76 new localization keys
**Files:**
- `common/culture/innovations/00_scadrial_innovations.txt` -- create
- `common/culture/innovations/00_tribal_innovations.txt` -- create (empty,
suppress vanilla)
- `common/culture/innovations/00_early_medieval_innovations.txt` -- create
(empty, suppress vanilla)
- `common/culture/innovations/00_high_medieval_innovations.txt` -- create
(empty, suppress vanilla)
- `common/culture/innovations/00_late_medieval_innovations.txt` -- create
(empty, suppress vanilla)
- `common/modifiers/00_mistborn_modifiers.txt` -- modify (keeper bonus)
- `localization/english/mistborn_innovations_l_english.yml` -- create
**References:**
- Vanilla innovation format: CK3 game install `common/culture/innovations/`
- Fall of Kredik Shaw endgame: M7 task 7.7 (sets `lord_ruler_fallen` flag)
- Keeper Network: M3 task 3.11
- Caste law system: M4 task 4.9 (innovations gate law changes)
- Lore: `docs/lore/mistborn-universe.md` — Lord Ruler suppresses progress,
post-rebellion society rapidly advances (Era 2 themes)
---
### 4.11 -- Full Testing Pass and Error Cleanup
**Context:** With all M4 features in place, a thorough testing pass ensures the
mod is shareable. The goal is: a friend can install the mod, start a game, and
@@ -1710,9 +2116,10 @@ experience Scadrial with no vanilla anachronisms and no error.log noise.
- **After 4.3 (Vanilla Suppression):**
- **Test:** Play for 10 years, watch for any vanilla event popups or decisions
that reference real-world content.
that reference real-world content. Check that the Legend system is fully
suppressed (no "Create Legend" decision, no legend UI elements).
- **Expected:** No crusade calls, no pilgrimages to Mecca, no Viking raids.
Only Mistborn-themed content appears.
No legend creation or spreading. Only Mistborn-themed content appears.
- **After 4.4 (Custom CBs):**
- **Test:** As a noble house lord, attempt to declare a House War against a
@@ -1749,7 +2156,41 @@ experience Scadrial with no vanilla anachronisms and no error.log noise.
Mist Patrol feel Scadrian (no medieval references). Pilgrimage and
tournament are suppressed. Alliance Ceremony has obligator events.
- **After 4.8 (Full Testing Pass):**
- **After 4.8 (Council & Court):**
- **Test:** Start a game as a landed noble. Open the council screen. Verify 5
Mistborn-themed positions appear (Obligator Liaison, Hazemaster, House
Comptroller, House Informant, Ministry Preceptor). Assign each councillor
and select a custom task (e.g., Hazemaster → "Hunt Skaa Allomancers").
Play 3 years. Verify custom task effects fire (province modifier from
training, discovery events from hunting). Open the court positions screen.
Verify 7 custom court positions exist. Appoint a Terris Steward and
Court Smoker. Verify passive bonuses apply.
- **Expected:** No vanilla council position names visible. Custom tasks have
monthly effects. Court positions grant correct stat bonuses. Smoker
position reduces hostile scheme power. Obligator Witness reduces attention.
- **After 4.9 (Caste Laws):**
- **Test:** Start as a noble house. Check laws screen — verify "Caste Laws"
group with "Strict Caste Law" active. Try to marry a skaa character —
verify warning/prohibition. Use console to add a skaa lover. Play 3 years
— verify affair discovery event fires. Force a noble-skaa birth — verify
half-skaa child event with options (kill, hide, acknowledge). Check that
skaa characters cannot hold duchy+ titles under strict law.
- **Expected:** Caste Laws function with 3 tiers. Cross-caste events fire
with appropriate consequences. Hidden heritage discovery chain works.
Law tier gates title holding and council appointment correctly.
- **After 4.10 (Innovations):**
- **Test:** Start a game. Open the innovation screen. Verify "Age of the
Lord Ruler" era with ~8 pre-unlocked innovations. Verify "Age of
Liberation" era is visible but locked with tooltip explanation. Use console
to set `lord_ruler_fallen` flag. Verify Age of Liberation innovations
become researchable. Check that no vanilla era names appear.
- **Expected:** Imperial Stagnation innovations are pre-unlocked. Liberation
innovations are gated behind Lord Ruler's fall. Vanilla eras suppressed.
Keeper characters in realm provide innovation speed bonus.
- **After 4.11 (Full Testing Pass):**
- **Test:** Start a fresh game, play 20 years. Review error.log.
- **Expected:** Error.log has no mod-related errors. No vanilla anachronisms
observed. Game runs at acceptable speed. The world feels like Scadrial.
@@ -1770,6 +2211,8 @@ experience Scadrial with no vanilla anachronisms and no error.log noise.
agricultural provinces
- [ ] No vanilla events referencing Christianity, Islam, Vikings, or other
real-world content fire during a 20-year playthrough
- [ ] Legend system fully suppressed (no legend types, seeds, chronicles, or
decisions available)
- [ ] No vanilla CBs for crusades/holy wars are available to any character
- [ ] `house_war_cb` is available to noble Scadrian duchy+ rulers and costs
500 prestige
@@ -1805,6 +2248,37 @@ experience Scadrial with no vanilla anachronisms and no error.log noise.
advantages
- [ ] House Alliance Ceremony (rethemed wedding) has obligator blessing events
- [ ] All activity content has complete localization
- [ ] 5 council positions rethemed: Obligator Liaison, Hazemaster, House
Comptroller, House Informant, Ministry Preceptor
- [ ] No vanilla council position names visible (Chancellor, Marshal, etc.)
- [ ] 10 custom council tasks defined (2 per position) with monthly effects
- [ ] Hazemaster "Hunt Skaa Allomancers" discovers hidden Mistings
- [ ] Hazemaster "Train Hazekillers" grants province modifier after 12 months
- [ ] House Informant "Deploy Smoker Network" reduces hostile scheme power
- [ ] Ministry Preceptor "Inspect Bloodlines" reveals allomantic potential
- [ ] Vanilla council tasks rethemed with Mistborn localization
- [ ] 7 court positions defined: Terris Steward, Kandra Agent, Allomantic
Advisor, Hazekiller Captain, Obligator Witness, Court Smoker, Master
of Revels
- [ ] Court Smoker reduces hostile scheme power by 25% (35% if Mistborn)
- [ ] Obligator Witness reduces Lord Ruler attention by 3/year
- [ ] Allomantic Advisor stat bonus matches metal type
- [ ] Vanilla court positions that break immersion are suppressed or rethemed
- [ ] Council and court position localization complete (~115 keys)
- [ ] Caste Law group defined with 3 tiers: Strict, Relaxed, Abolished
- [ ] Strict Caste Law is default and prevents skaa from holding duchy+ titles
- [ ] Cross-caste marriage produces warning under Strict, permitted under Relaxed
- [ ] Noble-skaa affair discovery event fires with appropriate options
- [ ] Half-skaa child birth event fires with kill/hide/acknowledge options
- [ ] Hidden skaa heritage discovery chain works via Inquisitor or random event
- [ ] Caste law change is gated (Abolished requires `lord_ruler_fallen`)
- [ ] ~5 caste events with full localization (~73 keys)
- [ ] "Age of the Lord Ruler" era with ~8 pre-unlocked innovations
- [ ] "Age of Liberation" era with ~8 innovations locked behind Lord Ruler's fall
- [ ] Vanilla innovation eras fully suppressed (no Tribal, Medieval, etc.)
- [ ] Innovation era gate tooltip explains Lord Ruler's stagnation
- [ ] Keeper Network provides +5% innovation speed per Keeper (post-rebellion)
- [ ] Innovation localization complete (~76 keys)
- [ ] A 20-year playthrough as Straff Venture completes without crashes
- [ ] No vanilla anachronisms (names, events, decisions) visible during
normal gameplay
+159
View File
@@ -497,6 +497,145 @@ of a Luthadel slum barony (`b_luthadel_slums`, province 2048).
---
### 5.8 -- Band Council: Crew Roles and Tasks
**Context:** Kelsier's crew is not just a group — each member fills a specific
role in the heist operation. CK3's Roads to Power adventurer system likely has
companion/camp mechanics. This task creates a parallel to the landed council
system (M4 task 4.8) but tailored for an unlanded band. Each crew member gets a
defined role with mechanical effects, custom tasks, and narrative events. When a
role is vacant (member dead, absent, or not yet recruited), the crew suffers
penalties — creating pressure to keep the team together.
**Steps:**
1. **Define 7 crew roles.** These map loosely to the landed council but reflect
the crew's heist-oriented structure. Create in
`common/council_positions/01_crew_council.txt` (or the RtP equivalent — this
depends on 5.1 research into how adventurer band roles work mechanically):
| Crew Role | Default Member | Allomantic Requirement | Mechanical Bonus |
|--------------------|----------------|------------------------|------------------|
| **Crew Leader** | Kelsier | Mistborn preferred | +3 diplomacy, +2 martial. Morale bonus to all crew. Unlocks "Plan the Next Operation" decision. Crew operations have +15% success. |
| **Crew Second** | Dockson | None (organizational) | +3 stewardship, +1 diplomacy. Manages crew resources (gold upkeep reduced 15%). Logistics events — supplies, safe houses, equipment. |
| **Smoker** | Clubs | Smoker (required) | Coppercloud over the crew's hideout. -30% chance of Inquisitor discovery events. If vacant: discovery chance doubles. Hideout protection events. |
| **Soother/Rioter** | Breeze | Soother or Rioter | +3 diplomacy. Crowd manipulation bonuses: skaa recruitment decisions get +20% success. Noble manipulation schemes get +15% power. Emotional Allomancy events. |
| **Tineye Scout** | Marsh (early), Spook (later) | Tineye (required) | +3 intrigue. Early warning system: the crew gets advance notice of Steel Ministry sweeps (event with preparation options). If vacant: ambush events fire without warning. |
| **Enforcer** | Ham | Thug preferred | +3 prowess, +2 martial. Combat specialist for the crew. Direct combat events — Ham holding the door, street fights, Hazekiller encounters. Crew combat decisions get +15% success. |
| **Infiltrator** | Vin | Mistborn or Soother | +3 intrigue, +1 diplomacy. Noble house penetration — enables the noble infiltration scheme from M4. Ball attendance events. Identity management (switching between skaa and noble persona). |
2. **Implement role assignment mechanics.** Each role should be assignable to
any crew member, but characters with the matching Allomantic trait get
enhanced bonuses (shown in table above). The default assignments match the
books. Role assignment is via a decision or interaction:
```
assign_crew_role_decision = {
is_shown = {
is_landless_adventurer = yes # or equivalent RtP check
has_character_flag = is_crew_leader
}
# Opens event with role selection for target character
}
```
3. **Create vacancy penalties.** When a role is unfilled, the crew suffers:
- **No Smoker:** Inquisitor discovery events fire at 2x rate. Crew modifier:
`no_smoker_penalty` = -10 intrigue (court/band level).
- **No Scout:** Ambush events have no preparation phase. Modifier:
`no_tineye_penalty` = -5 intrigue, hostile scheme power +20%.
- **No Enforcer:** Combat events have -20% success rate. Modifier:
`no_enforcer_penalty` = -5 prowess, -3 martial.
- **No Second:** Resource events cost 25% more gold. Modifier:
`no_second_penalty` = +15% gold upkeep.
- **No Infiltrator:** Noble infiltration scheme unavailable. Ball attendance
events don't fire.
- **No Soother:** Recruitment success rate -20%. Noble manipulation scheme
power -15%.
Vacancy checks run on monthly pulse via scripted trigger.
4. **Create crew role events.** Each role has 2-3 role-specific events that fire
on the yearly pulse when the role is filled:
**Smoker events (Clubs):**
- `mistborn_crew_role.0001` — Clubs detects a Seeker probing the hideout.
Options: relocate (gold cost, safety), confront (risk combat), strengthen
coppercloud (piety cost to maintain concentration).
- `mistborn_crew_role.0002` — The coppercloud flickers during a critical
operation. If Clubs is wounded/stressed, chance of exposure. Options depend
on whether a backup Smoker exists in the crew.
**Soother events (Breeze):**
- `mistborn_crew_role.0010` — Breeze manipulates a skaa crowd. Success:
recruit 50 soldiers (hidden levy). Failure: crowd panics, attention +5.
- `mistborn_crew_role.0011` — Breeze Soothes a reluctant noble contact.
Success: gain intel on rival house. Failure: noble suspects manipulation,
cover at risk.
**Tineye events (Marsh/Spook):**
- `mistborn_crew_role.0020` — Scout detects an Inquisitor patrol heading
toward your area. Options: flee (lose progress), ambush (high risk, high
reward), hide and observe (intrigue check, intel gain).
- `mistborn_crew_role.0021` — Enhanced senses overhear a critical
conversation. Gain a secret about a noble house or Ministry plan.
**Enforcer events (Ham):**
- `mistborn_crew_role.0030` — Street confrontation with Hazekillers.
Prowess-based combat with Thug flaring options (enhanced strength, risk of
pewter drag). Outcomes: victory (dread +5, prestige +20), defeat (wounded,
crew morale hit).
- `mistborn_crew_role.0031` — Ham trains crew members in combat. After
event: random crew member gains +1 prowess.
**Infiltrator events (Vin):**
- `mistborn_crew_role.0040` — Attending a noble ball undercover. Social
checks using diplomacy/intrigue. Success: learn a house secret, gain noble
ally. Failure: cover nearly blown, must choose to fight or flee.
- `mistborn_crew_role.0041` — Infiltrator discovers their noble persona is
being investigated. Urgent decision: abandon the identity (lose progress),
double down (risk exposure), or have Breeze Soothe the investigator.
5. **Create band task equivalents.** If RtP supports task-like mechanics for
adventurer companions (similar to council tasks), implement custom tasks:
- `crew_task_plan_operation` — Crew Leader task. Generates "operation points"
that accumulate toward unlocking the next story arc decision.
- `crew_task_gather_intel` — Tineye Scout task. Reveals information about
target province (garrison, Allomancer presence, Ministry activity).
- `crew_task_recruit_skaa` — Soother/Rioter task. Slowly builds hidden skaa
levy count.
- `crew_task_secure_hideout` — Smoker task. Maintains coppercloud. Monthly
upkeep cost in gold. If task is interrupted, hideout security drops.
- `crew_task_acquire_supplies` — Crew Second task. Reduces crew upkeep costs
and generates small gold income from Dockson's contacts.
If RtP does NOT support task-like mechanics for bands, implement these as
decisions with monthly cooldowns that check which roles are filled.
6. **Localization.** Create entries in
`localization/english/mistborn_crew_l_english.yml` for:
- 7 crew role names + descriptions (~28 keys)
- 6 vacancy penalty modifier names + descriptions (~12 keys)
- ~14 crew role events (title + description + options per event, ~70 keys)
- 5 band task names + descriptions (~10 keys)
- Total: ~120 new localization keys
**Files:**
- `common/council_positions/01_crew_council.txt` -- create (or RtP equivalent)
- `events/crew_role_events.txt` -- create
- `common/modifiers/01_crew_modifiers.txt` -- create (vacancy penalties)
- `common/decisions/01_crew_decisions.txt` -- modify (add role assignment)
- `common/scripted_triggers/mistborn_triggers.txt` -- modify (add role checks)
- `localization/english/mistborn_crew_l_english.yml` -- modify
**References:**
- RtP adventurer mechanics: research output from task 5.1
- Crew member characters: M3 task 3.3 and M5 task 5.3
- Landed council system: M4 task 4.8 (parallel design)
- Lord Ruler attention: `common/scripted_effects/mistborn_effects.txt`
- Allomantic traits: `common/traits/00_allomancy_traits.txt`
- Noble infiltration scheme: M4 task 4.5
---
## Testing Checkpoints
- **After 5.1:** Research document exists. Team has clear understanding of
@@ -537,6 +676,14 @@ of a Luthadel slum barony (`b_luthadel_slums`, province 2048).
- Crew decisions still function
- Game is playable without crashes
- **After 5.8:** Start as Kelsier. Open the crew/band management screen. Verify
7 crew roles are visible with default assignments (Clubs as Smoker, Ham as
Enforcer, etc.). Reassign Vin from Infiltrator to another role — verify
infiltration scheme becomes unavailable. Kill Clubs via console — verify
`no_smoker_penalty` modifier appears on the band. Play 3 years and verify
crew role events fire (Breeze crowd manipulation, Ham street fight, etc.).
Verify band tasks function (if RtP supports them) or fallback decisions work.
## Acceptance Criteria
- The "End of an Empire" bookmark shows Kelsier and Vin as recommended
@@ -554,6 +701,18 @@ of a Luthadel slum barony (`b_luthadel_slums`, province 2048).
the Next Operation, and Lay Low. Each has correct localization.
- The Lay Low decision reduces Lord Ruler attention using the existing
variable-based system.
- 7 crew roles are defined: Crew Leader, Crew Second, Smoker, Soother/Rioter,
Tineye Scout, Enforcer, Infiltrator.
- Default role assignments match the books (Kelsier=Leader, Dockson=Second,
Clubs=Smoker, Breeze=Soother, Marsh=Scout, Ham=Enforcer, Vin=Infiltrator).
- Crew roles can be reassigned via decision or interaction.
- Characters with matching Allomantic traits get enhanced role bonuses.
- 6 vacancy penalties are defined and apply when roles are unfilled.
- Killing the Smoker (Clubs) applies `no_smoker_penalty` and doubles
Inquisitor discovery rate.
- ~14 crew role events fire on yearly pulse for filled roles.
- 5 band tasks (or fallback decisions) are functional.
- All crew role content has complete localization (~120 keys).
- The mod boots cleanly with no errors in error.log related to M5 content.
- Playing as Kelsier for 5 years without triggering M6 narrative content does
not produce errors or broken states.
+176 -5
View File
@@ -231,7 +231,7 @@ Relevant files and their status:
- `is_narrative_mode_trigger`: checks game rule for narrative mode (pattern: `has_game_rule = narrative_mode`).
2. Add scripted effects to `common/scripted_effects/mistborn_effects.txt`:
- `strip_lord_ruler_immortality_effect`: Targets the Lord Ruler character. Removes `compounder_modifier`. Sets `lord_ruler_mortal` flag. Removes his health bonuses. Adds `wounded_3` trait. Sends interface message to all rulers: "The Lord Ruler has been made mortal!"
- `collapse_final_empire_effect`: Destroys `e_final_empire` title. All kingdom titles become independent. Sets global variable `final_empire_fallen = yes`. Fires notification event to all rulers. Lord Ruler dies (if still alive). Survivorism gains fervor. Steel Ministry loses fervor. Applicable province modifiers change (remove `lord_ruler_attention_*` from all characters).
- `collapse_final_empire_effect`: Sets global variable `lord_ruler_fallen = yes`. Lord Ruler dies (if still alive). Fires notification event to all rulers. Player choice event: claim `e_final_empire` title yourself (become the new emperor — unlocks "Seize the Throne" decision) OR release the kingdoms (all kingdom titles become independent, `e_final_empire` is destroyed). Survivorism gains fervor. Steel Ministry loses fervor. Applicable province modifiers change (remove `lord_ruler_attention_*` from all characters). Unlocks "Age of Liberation" innovation era (M4 task 4.10). Enables `caste_law_abolished` law option (M4 task 4.9). Activates conditional holy sites: Well of Ascension (M3 task 3.8).
- `start_kredik_shaw_assault_effect`: Begins the endgame war. Creates a temporary CB for the attacker against the Lord Ruler. Sets flags for the event chain.
3. Create `events/endgame_events.txt` with namespace `mistborn_endgame`. Define 8 events:
- `mistborn_endgame.0001` — The time has come. Decision-triggered. Player has met all prerequisites (`can_challenge_lord_ruler_trigger`). Exposition event describing the plan to storm Kredik Shaw. Options: proceed (triggers .0010), delay (set flag, can retry later).
@@ -275,7 +275,7 @@ Relevant files and their status:
**Ash Falls (3 events):**
- `mistborn_atmosphere.0001` — Heavy ashfall. Province event on yearly pulse, 30% chance for any county. Applies `ash_blight` modifier for 2 years. Player choice: spend gold to clear ash (50 gold, removes modifier in 1 year), conscript skaa labor (free but county_opinion -10), ignore (modifier persists full duration).
- `mistborn_atmosphere.0002` — Ash season shifts. Hidden yearly event. Randomly selects 3-5 provinces and toggles ash_blight on/off. Simulates the seasonal nature of ashfall. Provinces near ashmounts (check for `b_ashmount_view` or similar) have double the chance.
- `mistborn_atmosphere.0003` — Ashmount eruption. Very rare (2% yearly). A specific ashmount erupts violently. All provinces in that kingdom get `ash_blight` for 5 years. Development loss. Devastating but temporary. The Lord Ruler normally prevents this -- if `final_empire_fallen`, eruption chance increases to 10%.
- `mistborn_atmosphere.0003` — Ashmount eruption. Very rare (2% yearly). A specific ashmount erupts violently. All provinces in that kingdom get `ash_blight` for 5 years. Development loss. Devastating but temporary. The Lord Ruler normally prevents this -- if `lord_ruler_fallen`, eruption chance increases to 10%.
**The Mists (3 events):**
- `mistborn_atmosphere.0010` — Mist encounter. Yearly pulse for all characters. Non-Allomancers: stress +5, option to brave the mists (small chance of snapping if they have potential) or retreat. Allomancers: gain `mist_empowerment` modifier (+2 prowess, +1 intrigue, 1 year). Mistborn: gain `mist_empowerment` and +50 prestige ("The mists are your domain").
@@ -325,7 +325,7 @@ Relevant files and their status:
**Terris Breeding Program (2 events):**
- `mistborn_lore.0001` — Terris steward selection. For rulers with Terris courtiers. The Lord Ruler's breeding program sends obligators to inspect your Terris servants. If any have `trait_feruchemist` or `trait_feruchemy_potential`, there's a 30% chance they're taken away (courtier removed from court). Options: comply (piety +20, attention -3), hide the Feruchemist (intrigue check: success = Feruchemist stays, failure = attention +15 and Feruchemist taken), refuse (attention +20, but Feruchemist stays).
- `mistborn_lore.0002` — Breeding program results. For Terris culture rulers in the Northern Dominance. The breeding program is systematically eliminating Feruchemy. Each generation, `trait_feruchemy_potential` inheritance chance decreases by 1% in Terris characters within the Lord Ruler's domain. Hidden event that tracks this. If `final_empire_fallen`, the breeding program ends and inheritance normalizes.
- `mistborn_lore.0002` — Breeding program results. For Terris culture rulers in the Northern Dominance. The breeding program is systematically eliminating Feruchemy. Each generation, `trait_feruchemy_potential` inheritance chance decreases by 1% in Terris characters within the Lord Ruler's domain. Hidden event that tracks this. If `lord_ruler_fallen`, the breeding program ends and inheritance normalizes.
**Obligator Spy Network (1 event):**
- `mistborn_lore.0010` — Obligator intelligence report. Random yearly event for Steel Ministry faithful rulers. You receive a report from the obligator network about a neighboring house. Learn one fact: their gold reserves (stewardship bonus), their military strength (martial bonus), or a secret (intrigue bonus). Small cost: piety -10.
@@ -844,7 +844,158 @@ that give players deep, lore-rich interactive experiences.
---
### 7.12 -- Scripted Infrastructure and On-Action Hooks
### 7.12 -- Advanced Council Interactions and Court Events
**Context:** M4 establishes the rethemed council and court positions. M5
establishes the band council with crew roles. This task adds the deep, narrative-
weight interactions that make the council system feel uniquely Mistborn — kandra
spies replacing courtiers, Smokers hiding deliberations from enemy Seekers,
Terris Stewards concealing their Keeper identity, and Obligator Witnesses
betraying their lords. These are the events that make players remember the
council system as more than a stat screen.
**Steps:**
1. **Kandra Agent: "Replace a Courtier" interaction.** The Kandra Agent court
position (M4) gains a unique character interaction:
- `interaction_kandra_replace_courtier` — Target: any courtier in your court
or a neighbouring court. The kandra kills and impersonates the target.
Mechanically: target character dies (hidden/secret death), kandra gains a
flag `kandra_impersonating_<target_id>`. The "courtier" remains in court
with the target's appearance but the kandra's intrigue stat.
- Benefits: +20 scheme power against the target's liege. Access to their
secrets. If the target was a councillor, the kandra fills that council
position with enhanced intrigue.
- Risks: yearly check (10% base) of being discovered. Discovery event chain:
- If discovered by a Seeker (bronze Misting): immediate exposure. The
Seeker can blackmail you or expose you.
- If discovered by observation (failed social check): suspicion grows.
3-event escalation before full exposure.
- On full exposure: massive opinion penalty (-50 with all vassals), Lord
Ruler attention +15, the kandra flees or is captured.
- Event file: `events/council_events.txt`, namespace `mistborn_council`
- Events: `mistborn_council.0001` (initiate replacement), `.0002` (kandra
assumes identity), `.0003-.0005` (discovery chain), `.0006` (exposure
fallout)
2. **Court Smoker: Coppercloud court protection events.** The Court Smoker
position (M4) triggers periodic events:
- `mistborn_council.0010` — An enemy Seeker probes your court. If Court
Smoker is filled: automatic success, the Seeker detects nothing. Event
text describes the Smoker quietly extending the coppercloud. If vacant:
the Seeker learns which of your courtiers are Allomancers (enemy gains
scheme power +10, your Allomancer courtiers' traits become known to the
enemy).
- `mistborn_council.0011` — The Smoker is overwhelmed. During a major event
(siege, ball, investigation), the coppercloud falters. Decision: pull the
Smoker from the event to maintain the cloud (lose the Smoker's
participation), let the cloud drop temporarily (risk exposure), or burn
extra copper (gold cost, maintains both). If the Smoker is also Mistborn:
additional option to burn bronze simultaneously and detect the enemy Seeker.
- `mistborn_council.0012` — A visiting noble brings their own Seeker. Tension
event: the Court Smoker and the visiting Seeker engage in a silent
Allomantic duel. Intrigue-based check. Success: the visitor leaves
frustrated. Failure: they learn something about your court.
3. **Obligator Witness: Betrayal and loyalty events.** The Obligator Witness
position creates tension — this person serves the Ministry, not you:
- `mistborn_council.0020` — The Obligator reports your activities to the
Canton. Periodic event (yearly, 25% chance). If your Lord Ruler attention
is > 50: the report triggers an Inquisitor investigation event. If < 25:
the report is routine and harmless. Between 25-50: ambiguous — the
Obligator may downplay or emphasize based on their opinion of you.
- `mistborn_council.0021` — The Obligator discovers one of your secrets
(hidden faith, illegal breeding program, skaa Allomancer courtier). Choice
options: bribe (gold cost, temporary silence), intimidate (dread check,
opinion penalty), convert (learning check — try to win them to your cause,
very hard), or eliminate (murder scheme auto-starts, attention +10 if
discovered).
- `mistborn_council.0022` — You can choose to feed the Obligator false
information. Intrigue check. Success: Lord Ruler attention decreases as the
Canton receives a glowing report. Failure: the Obligator realizes the
deception, opinion -30, next Canton report is devastating.
4. **Terris Steward: Secret Keeper events.** If the Terris Steward court
position is filled by a character with `trait_feruchemist` or the
`keeper_identity` flag:
- `mistborn_council.0030` — The Steward reveals their true nature as a
Keeper. Player choice: accept and protect (gain learning +2, access to
coppermind events), report to the Ministry (piety +50, attention -10, lose
the Steward), demand they share their knowledge (learning check, gain a
rare artifact — coppermind or worldbringer text).
- `mistborn_council.0031` — An Inquisitor visits and is suspicious of your
Steward. Choice: hide the Steward (intrigue check), sacrifice them (piety,
attention reduction, lose Steward), or fight the Inquisitor (martial check,
extremely dangerous, Lord Ruler attention +20).
- `mistborn_council.0032` — The Steward teaches your heir about pre-Ascension
history. If accepted: heir gains learning +1 and the `curious` trait. If
the Ministry discovers this: attention +10.
5. **Allomantic Advisor: Metal-type specific events.** The advisor's events
vary based on their Allomantic metal type:
- `mistborn_council.0040`**Coinshot advisor:** Offers to demonstrate coin
pushing as a military tactic. If accepted: your Hazekiller MaA gain +5%
damage for 2 years (they learn from watching). Chance of injury to
bystanders (opinion event).
- `mistborn_council.0041`**Soother advisor:** Offers to Soothe your
vassals during a tense council meeting. If accepted: +15 opinion with all
vassals for 1 year, but risk of discovery (manipulation shame modifier).
- `mistborn_council.0042`**Tineye advisor:** Reports enhanced surveillance
of your borders. +10% hostile scheme detection for 1 year. But Tineyes
hear everything — including your own secrets. Small chance they learn one
of your secrets.
- `mistborn_council.0043`**Mistborn advisor:** The ultimate advisor. Can
perform any of the above. Additionally: offers to train your children in
Allomancy basics (if they have potential). Training event → faster
snapping for the child.
6. **Council synergy with Lord Ruler attention.** Create a yearly hidden event
that calculates attention change based on council composition:
- Having a Ministry Preceptor AND Obligator Witness: -5 attention/year
(maximum compliance appearance)
- Having a Court Smoker but NO Obligator Witness: -2 attention/year
(hidden but not suspicious)
- Having neither: no bonus
- Having a Kandra Agent in a neighbouring court: -3 attention if the kandra
is feeding you intel about Ministry plans
This creates meaningful strategic choices about council composition.
7. **Crew council advanced events (M5 extension).** For the band council, add
events that fire during M6/M7 story arcs:
- `mistborn_crew_role.0050` — Full crew meeting event. All roles present get
a +10% bonus to the next operation. If any role is vacant, the meeting
highlights the gap (narrative flavor about missing capabilities).
- `mistborn_crew_role.0051` — Role conflict event. Two crew members disagree
on approach (e.g., Ham's direct assault vs. Breeze's manipulation). Player
mediates. Choice affects operation approach and crew morale.
- `mistborn_crew_role.0052` — Crew role evolution. After a major story beat,
a crew member's role shifts (e.g., Vin moves from Infiltrator to
secondary Leader as she grows in power). Mechanical: role bonuses update.
**Files:**
- `events/council_events.txt` -- create
- `events/crew_role_events.txt` -- modify (add advanced events)
- `common/character_interactions/00_mistborn_interactions.txt` -- create or
modify (kandra replacement interaction)
- `common/scripted_triggers/mistborn_triggers.txt` -- modify (add council
composition triggers)
- `common/scripted_effects/mistborn_effects.txt` -- modify (add attention
council synergy effect)
- `localization/english/mistborn_council_l_english.yml` -- modify (add ~120
event localization keys)
**References:**
- Landed council system: M4 task 4.8
- Band council system: M5 task 5.8
- Kandra trait and contract: M3 task 3.7
- Lord Ruler attention: `common/scripted_effects/mistborn_effects.txt`
- Vanilla character interactions: CK3 game install
`common/character_interactions/`
- Court Smoker / Kandra Agent definitions: M4 task 4.8 court positions
---
### 7.13 -- Scripted Infrastructure and On-Action Hooks
**Context:** All the new events need proper on_action hooks, scripted triggers for gating, and consistent integration with the existing Lord Ruler attention system. This task ties everything together.
@@ -916,7 +1067,16 @@ that give players deep, lore-rich interactive experiences.
- Terris Synod: host one as a Keeper, verify knowledge sharing events and discovery risk
- Allomantic Exhibition: host one, verify per-metal demonstration rounds
- **After 7.12 (Integration):** Full playthrough test: start as Kelsier (Narrative Mode), play through M6 story arcs, then M7 extended arcs, through to the Fall of Kredik Shaw. Verify game rule gating works (Narrative events don't fire in Sandbox). Verify attention system is coherent across all new events. 20-year playthrough with no crashes.
- **After 7.12 (Council Interactions):** Start as a noble house. Appoint a
Kandra Agent court position. Use "Replace a Courtier" interaction on a
neighbour's councillor. Play 5 years — verify yearly discovery check fires.
Appoint a Court Smoker and verify Seeker probe events resolve with
protection. Appoint an Obligator Witness, raise attention to 60, and verify
the Obligator's report triggers an Inquisitor investigation. Appoint a
Terris Steward with Feruchemist trait — verify Keeper reveal event. Check
`error.log` for council event errors.
- **After 7.13 (Integration):** Full playthrough test: start as Kelsier (Narrative Mode), play through M6 story arcs, then M7 extended arcs, through to the Fall of Kredik Shaw. Verify game rule gating works (Narrative events don't fire in Sandbox). Verify attention system is coherent across all new events. 20-year playthrough with no crashes.
## Acceptance Criteria
@@ -943,6 +1103,17 @@ that give players deep, lore-rich interactive experiences.
Hathsin Expedition, Terris Synod Gathering, Allomantic Exhibition
- Each activity has multi-phase structure with metal-specific interactions
- Activity crew roles use band members' Allomantic traits (heist, night raid)
- Kandra Agent "Replace a Courtier" interaction is functional with discovery
chain (Seeker detection, observation escalation, exposure fallout)
- Court Smoker protection events fire and block enemy Seeker probes
- Obligator Witness betrayal events fire based on attention thresholds
- Terris Steward Keeper reveal event chain is functional
- Allomantic Advisor metal-type specific events fire for Coinshot, Soother,
Tineye, and Mistborn advisors
- Council composition synergy affects Lord Ruler attention yearly
- Crew council advanced events fire during M6/M7 story arcs (crew meeting,
role conflict, role evolution)
- ~25 council/court events implemented with full localization
- All new modifiers, triggers, and effects are properly defined and referenced
- Localization is complete for all new content (estimated 400-600 new localization keys)
- A complete Narrative Mode playthrough from crew assembly through Fall of Kredik Shaw is possible