chore(meta): update changelog

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-08 22:46:39 +01:00
co-authored by Claude Opus 4.6
parent ceee092cdd
commit 348b840d06
11 changed files with 1460 additions and 0 deletions
@@ -0,0 +1,198 @@
############################################
# Mistborn: The Final Empire - Inquisitor Character Interactions
# Available when an Inquisitor courtier is at your court
############################################
# Investigate Heresy — order an Inquisitor to investigate a courtier or vassal
investigate_heresy_interaction = {
category = interaction_category_hostile
desc = investigate_heresy_interaction_desc
is_shown = {
scope:actor = {
has_character_flag = inquisitor_at_court
faith = faith:steel_ministry
}
scope:recipient = {
is_courtier_of = scope:actor
NOT = { this = scope:actor }
}
}
is_valid_showing_failures_only = {
scope:actor = {
is_available_adult = yes
NOT = { has_character_flag = recently_investigated_heresy }
}
}
cooldown_against_recipient = { years = 2 }
on_accept = {
scope:actor = {
add_character_flag = {
flag = recently_investigated_heresy
years = 1
}
save_scope_as = investigator
}
scope:recipient = {
save_scope_as = investigation_target
}
scope:actor = {
trigger_event = mistborn_inquisitor.0020
}
}
ai_accept = {
base = 50
}
ai_targets = {
ai_recipients = courtiers
}
ai_frequency = 36
ai_will_do = {
base = 20
modifier = {
factor = 3
scope:recipient = {
NOT = { faith = faith:steel_ministry }
}
}
modifier = {
factor = 2
scope:recipient = {
is_allomancer_trigger = yes
}
}
}
}
# Hunt Allomancers — order an Inquisitor to search a province for hidden Allomancers
hunt_allomancers_interaction = {
category = interaction_category_hostile
desc = hunt_allomancers_interaction_desc
is_shown = {
scope:actor = {
has_character_flag = inquisitor_at_court
faith = faith:steel_ministry
is_ruler = yes
}
scope:recipient = {
is_vassal_of = scope:actor
}
}
is_valid_showing_failures_only = {
scope:actor = {
is_available_adult = yes
NOT = { has_character_flag = recently_hunted_allomancers }
}
}
cooldown_against_recipient = { years = 3 }
on_accept = {
scope:actor = {
add_character_flag = {
flag = recently_hunted_allomancers
years = 2
}
}
scope:actor = {
trigger_event = mistborn_inquisitor.0030
}
}
ai_accept = {
base = 50
}
ai_targets = {
ai_recipients = vassals
}
ai_frequency = 48
ai_will_do = {
base = 15
modifier = {
factor = 2
scope:recipient = {
any_courtier = {
is_allomancer_trigger = yes
}
}
}
}
}
# Interrogate Prisoner — order an Inquisitor to brutally interrogate a prisoner
interrogate_prisoner_interaction = {
category = interaction_category_hostile
desc = interrogate_prisoner_interaction_desc
is_shown = {
scope:actor = {
has_character_flag = inquisitor_at_court
faith = faith:steel_ministry
}
scope:recipient = {
is_imprisoned_by = scope:actor
}
}
is_valid_showing_failures_only = {
scope:actor = {
is_available_adult = yes
NOT = { has_character_flag = recently_interrogated_prisoner }
}
}
cooldown_against_recipient = { years = 5 }
on_accept = {
scope:actor = {
add_character_flag = {
flag = recently_interrogated_prisoner
years = 1
}
}
scope:actor = {
trigger_event = mistborn_inquisitor.0040
}
}
ai_accept = {
base = 50
}
ai_targets = {
ai_recipients = prisoners
}
ai_frequency = 24
ai_will_do = {
base = 40
modifier = {
factor = 2
scope:recipient = {
is_allomancer_trigger = yes
}
}
modifier = {
factor = 0.5
scope:actor = {
has_trait = compassionate
}
}
}
}
@@ -0,0 +1,66 @@
############################################
# Mistborn: The Final Empire - Inquisitor Decisions
# Request an Inquisitor to serve at your court
############################################
# Request an Inquisitor — summon one of the Lord Ruler's enforcers
request_inquisitor_decision = {
picture = { reference = "gfx/interface/illustrations/decisions/decision_execution.dds" }
desc = request_inquisitor_decision_desc
selection_tooltip = request_inquisitor_decision_tooltip
ai_check_interval = 240
is_shown = {
faith = faith:steel_ministry
is_ruler = yes
highest_held_title_tier >= tier_county
}
is_valid = {
faith = faith:steel_ministry
is_ruler = yes
highest_held_title_tier >= tier_county
piety >= 200
NOT = { has_character_flag = inquisitor_at_court }
NOT = { has_character_flag = recently_requested_inquisitor }
}
is_valid_showing_failures_only = {
is_available_adult = yes
}
cost = {
piety = 200
}
cooldown = { years = 3 }
effect = {
add_character_flag = {
flag = recently_requested_inquisitor
years = 3
}
trigger_event = mistborn_inquisitor.0010
}
ai_potential = {
faith = faith:steel_ministry
piety >= 300
}
ai_will_do = {
base = 20
modifier = {
factor = 2
any_vassal = {
NOT = { faith = faith:steel_ministry }
}
}
modifier = {
factor = 0.5
has_trait = compassionate
}
}
}
@@ -0,0 +1,173 @@
############################################
# Mistborn: The Final Empire - Keeper Decisions
# Join and advance in the Terris Keeper Network
############################################
# Seek the Keepers — attempt to join the secret network
seek_the_keepers_decision = {
picture = { reference = "gfx/interface/illustrations/decisions/decision_personal_religious.dds" }
desc = seek_the_keepers_decision_desc
selection_tooltip = seek_the_keepers_decision_tooltip
ai_check_interval = 180
is_shown = {
faith = faith:terris_worldbringers
is_ruler = yes
NOT = { has_character_flag = keeper_initiate }
NOT = { has_character_flag = keeper_identity }
}
is_valid = {
faith = faith:terris_worldbringers
learning >= 12
NOT = { has_character_flag = keeper_initiate }
NOT = { has_character_flag = keeper_identity }
NOT = { has_character_flag = recently_sought_keepers }
}
is_valid_showing_failures_only = {
is_available_adult = yes
}
cost = {
piety = 100
}
cooldown = { years = 3 }
effect = {
add_character_flag = {
flag = recently_sought_keepers
years = 3
}
trigger_event = mistborn_keeper.0010
}
ai_potential = {
faith = faith:terris_worldbringers
learning >= 14
}
ai_will_do = {
base = 40
modifier = {
factor = 2
has_trait = trait_feruchemist
}
modifier = {
factor = 1.5
learning >= 18
}
}
}
# Advance to Full Keeper — complete initiation to become a full Keeper
advance_to_keeper_decision = {
picture = { reference = "gfx/interface/illustrations/decisions/decision_personal_religious.dds" }
desc = advance_to_keeper_decision_desc
selection_tooltip = advance_to_keeper_decision_tooltip
ai_check_interval = 120
is_shown = {
has_character_flag = keeper_initiate
NOT = { has_character_flag = keeper_identity }
}
is_valid = {
has_character_flag = keeper_initiate
NOT = { has_character_flag = keeper_identity }
learning >= 15
NOT = { has_character_flag = recently_attempted_keeper_advance }
}
is_valid_showing_failures_only = {
is_available_adult = yes
}
cost = {
piety = 150
}
cooldown = { years = 2 }
effect = {
add_character_flag = {
flag = recently_attempted_keeper_advance
years = 2
}
trigger_event = mistborn_keeper.0020
}
ai_potential = {
has_character_flag = keeper_initiate
learning >= 16
}
ai_will_do = {
base = 60
modifier = {
factor = 2
has_trait = trait_feruchemist
}
}
}
# Teach Forbidden History — share pre-Ascension knowledge with another character
teach_forbidden_history_decision = {
picture = { reference = "gfx/interface/illustrations/decisions/decision_personal_religious.dds" }
desc = teach_forbidden_history_decision_desc
selection_tooltip = teach_forbidden_history_decision_tooltip
ai_check_interval = 240
is_shown = {
has_character_flag = keeper_identity
}
is_valid = {
has_character_flag = keeper_identity
NOT = { has_character_flag = recently_taught_history }
any_courtier = {
NOT = { has_character_flag = learned_forbidden_history }
}
}
is_valid_showing_failures_only = {
is_available_adult = yes
}
cost = {
piety = 50
}
cooldown = { years = 2 }
effect = {
add_character_flag = {
flag = recently_taught_history
years = 2
}
trigger_event = mistborn_keeper.0030
}
ai_potential = {
has_character_flag = keeper_identity
}
ai_will_do = {
base = 30
modifier = {
factor = 0.5
has_character_modifier = lord_ruler_attention_1
}
modifier = {
factor = 0
has_character_modifier = lord_ruler_attention_2
}
}
}
@@ -0,0 +1,104 @@
############################################
# Mistborn: The Final Empire - Holy Orders
# Steel Inquisitors (militant) and Keeper Network (clandestine)
############################################
# ===== STEEL INQUISITORS =====
# The Lord Ruler's terrifying enforcers — hemalurgic agents with
# spikes driven through their eyes. Available to Steel Ministry rulers.
holy_order_steel_inquisitors = {
religion = steel_ministry_religion
is_active = {
always = yes
}
leader = {
# Prefer existing Inquisitor characters
any_living_character = {
has_character_modifier = steel_inquisitor_power
}
}
can_hire = {
faith = faith:steel_ministry
piety >= 500
is_ruler = yes
highest_held_title_tier >= tier_county
NOT = { has_character_flag = recently_hired_inquisitor_order }
}
hire_cost = {
piety = 500
}
# The order's MaA regiment
men_at_arms = {
type = inquisitor_squad
stacks = 1
}
# The Ministry demands resources to maintain its enforcers
monthly_cost = 2.0
# Dismissing the Lord Ruler's enforcers is an act of impiety
can_dismiss = {
always = yes
}
on_hire = {
add_character_flag = {
flag = recently_hired_inquisitor_order
years = 5
}
trigger_event = {
id = mistborn_inquisitor.0001
days = 3
}
}
on_dismiss = {
add_piety = -100
custom_tooltip = dismiss_inquisitor_order_piety_tt
}
}
# ===== KEEPER NETWORK =====
# The Terris Keepers — a secret society preserving forbidden knowledge.
# Not a military force but a clandestine scholarly network.
keeper_network = {
religion = terris_religion
is_active = {
always = yes
}
can_hire = {
faith = faith:terris_worldbringers
is_ruler = yes
learning >= 12
NOT = { has_character_flag = keeper_network_active }
}
hire_cost = {
piety = 200
}
monthly_cost = 0.5
can_dismiss = {
always = yes
}
on_hire = {
add_character_flag = keeper_network_active
trigger_event = {
id = mistborn_keeper.0001
days = 3
}
}
on_dismiss = {
remove_character_flag = keeper_network_active
}
}
@@ -157,6 +157,46 @@ skaa_levies = {
icon = light_infantry
}
# Steel Inquisitor Squad - holy order regiment led by Inquisitors
# Small but devastatingly powerful — a single Inquisitor is worth hundreds
# Only available through the Steel Inquisitor holy order
inquisitor_squad = {
type = heavy_infantry
can_recruit = {
faith = faith:steel_ministry
has_character_flag = recently_hired_inquisitor_order
}
damage = 150
toughness = 80
pursuit = 40
screen = 0
terrain_bonus = {
plains = { damage = 20 toughness = 10 }
hills = { damage = 10 pursuit = 10 }
mountains = { damage = 5 toughness = 5 }
}
counters = {
skirmishers = 2 # Counters Mistborn Agents
heavy_infantry = 1 # Counters Hazekillers
}
buy_cost = { gold = 0 } # Provided by holy order
low_maintenance_cost = { gold = 0 }
high_maintenance_cost = { gold = 0 }
max = 100
stack = 100
ai_quality = { value = 200 }
icon = heavy_infantry
}
# Noble Guard - professional soldiers from noble houses
# Well-equipped, well-trained, loyal to their house
noble_guard = {
@@ -204,6 +204,16 @@ cult_of_ruin_faith_modifier = {
stress_gain_mult = -0.1
}
# === KEEPER NETWORK MODIFIERS ===
# Keeper network active in realm — learning and cultural bonuses
keeper_network_bonus = {
icon = modifier_keeper_advisor
learning = 2
monthly_piety = 0.3
cultural_acceptance_gain_mult = 0.05
}
# === PROVINCE MODIFIERS ===
# Ash blight devastating the land
@@ -32,6 +32,10 @@ on_yearly_pulse = {
mistborn_hemalurgy.0030 # Hemalurgy discovery risk
mistborn_misc.0050 # Savant acquisition check
mistborn_misc.0060 # Savant consequences
mistborn_inquisitor.0015 # Court Inquisitor reports to the Canton (15% yearly)
mistborn_inquisitor.0050 # Inquisitor senses a hidden Keeper
mistborn_keeper.0040 # Ministry investigation near Keepers (10% yearly)
mistborn_keeper.0050 # Coppermind sharing between Keepers
}
effect = {
# Check Lord Ruler attention thresholds and apply tiered modifiers
+373
View File
@@ -0,0 +1,373 @@
############################################
# Mistborn: The Final Empire - Inquisitor Events
# Events for the Steel Inquisitor holy order and court Inquisitor
############################################
namespace = mistborn_inquisitor
# ============================================================
# 0001 — Inquisitor Holy Order Hired
# Fires when the Steel Inquisitor holy order is hired
# ============================================================
mistborn_inquisitor.0001 = {
type = character_event
title = mistborn_inquisitor.0001.t
desc = mistborn_inquisitor.0001.desc
theme = faith
override_background = { reference = throne_room }
immediate = {
# Terror spreads through the court
every_courtier = {
limit = {
NOT = { has_character_modifier = steel_inquisitor_power }
}
add_stress = 10
}
}
option = {
name = mistborn_inquisitor.0001.a
# The Lord Ruler's will be done
add_piety = 50
custom_tooltip = inquisitor_order_hired_tt
}
}
# ============================================================
# 0010 — Inquisitor Arrives at Court (Request Decision)
# An Inquisitor comes to serve (and watch) your court
# ============================================================
mistborn_inquisitor.0010 = {
type = character_event
title = mistborn_inquisitor.0010.t
desc = mistborn_inquisitor.0010.desc
theme = faith
override_background = { reference = throne_room }
immediate = {
# Generate an Inquisitor courtier
create_character = {
name = "Inquisitor"
age = { 35 55 }
gender = male
culture = culture:noble_scadrian
faith = faith:steel_ministry
trait = trait_hemalurgist
trait = trait_hemalurgic_steel
trait = trait_hemalurgic_pewter
trait = trait_hemalurgic_bronze
trait = disfigured
trait = callous
trait = sadistic
dynasty = none
save_scope_as = new_inquisitor
}
scope:new_inquisitor = {
add_character_modifier = steel_inquisitor_power
add_character_flag = is_court_inquisitor
}
add_character_flag = inquisitor_at_court
}
option = {
name = mistborn_inquisitor.0010.a
# Welcome the Inquisitor — gain piety but court is terrified
add_piety = 30
every_courtier = {
limit = {
NOT = { has_character_flag = is_court_inquisitor }
NOT = { this = root }
}
add_stress = 15
add_opinion = {
target = root
modifier = opinion_angry
opinion = -10
}
}
custom_tooltip = inquisitor_arrives_tt
}
option = {
name = mistborn_inquisitor.0010.b
# Accept reluctantly
add_stress = 20
custom_tooltip = inquisitor_arrives_reluctant_tt
}
}
# ============================================================
# 0015 — Inquisitor Reports to the Canton (yearly)
# 15% chance: the Inquisitor reports your activities
# ============================================================
mistborn_inquisitor.0015 = {
type = character_event
title = mistborn_inquisitor.0015.t
desc = mistborn_inquisitor.0015.desc
theme = intrigue
override_background = { reference = throne_room }
trigger = {
has_character_flag = inquisitor_at_court
is_ruler = yes
}
immediate = {
increase_lord_ruler_attention_effect = yes
}
option = {
name = mistborn_inquisitor.0015.a
# Nothing to be done — they serve the Lord Ruler
add_stress = 10
custom_tooltip = inquisitor_reports_tt
}
option = {
name = mistborn_inquisitor.0015.b
# Try to bribe the Inquisitor (futile but reduces stress)
trigger = { gold >= 100 }
remove_short_term_gold = 100
add_stress = -5
custom_tooltip = inquisitor_bribe_tt
}
}
# ============================================================
# 0020 — Investigate Heresy (interaction result)
# The Inquisitor investigates a courtier for hidden faith or powers
# ============================================================
mistborn_inquisitor.0020 = {
type = character_event
title = mistborn_inquisitor.0020.t
desc = mistborn_inquisitor.0020.desc
theme = intrigue
override_background = { reference = throne_room }
immediate = {
# Intrigue check against target
}
# Success — something found
option = {
name = mistborn_inquisitor.0020.a
trigger = {
scope:investigation_target = {
OR = {
NOT = { faith = root.faith }
is_allomancer_trigger = yes
has_character_flag = keeper_initiate
has_character_flag = keeper_identity
}
}
}
# Reveal the target's secrets
scope:investigation_target = {
expose_secret = yes
}
add_piety = 30
custom_tooltip = investigate_heresy_success_tt
}
# Failure — nothing found but target is terrorized
option = {
name = mistborn_inquisitor.0020.b
scope:investigation_target = {
add_stress = 20
}
custom_tooltip = investigate_heresy_failure_tt
}
}
# ============================================================
# 0030 — Hunt Allomancers (interaction result)
# The Inquisitor searches a vassal's domain for hidden Allomancers
# ============================================================
mistborn_inquisitor.0030 = {
type = character_event
title = mistborn_inquisitor.0030.t
desc = mistborn_inquisitor.0030.desc
theme = intrigue
override_background = { reference = terrain }
immediate = {
# Check for hidden Allomancers among the vassal's courtiers
}
# Success — Allomancer discovered and captured
option = {
name = mistborn_inquisitor.0030.a
random_list = {
60 = {
# Found a hidden Allomancer
scope:recipient = {
random_courtier = {
limit = {
is_allomancer_trigger = yes
}
save_scope_as = captured_allomancer
imprison = {
target = root
type = dungeon
}
}
}
add_piety = 50
custom_tooltip = hunt_allomancers_success_tt
}
40 = {
# No Allomancers found
custom_tooltip = hunt_allomancers_none_found_tt
}
}
}
# Call off the hunt — too much disruption
option = {
name = mistborn_inquisitor.0030.b
add_stress = -10
scope:recipient = {
add_opinion = {
target = root
modifier = opinion_grateful
opinion = 10
}
}
custom_tooltip = hunt_allomancers_cancelled_tt
}
}
# ============================================================
# 0040 — Interrogate Prisoner (interaction result)
# The Inquisitor brutally interrogates a prisoner
# ============================================================
mistborn_inquisitor.0040 = {
type = character_event
title = mistborn_inquisitor.0040.t
desc = mistborn_inquisitor.0040.desc
theme = intrigue
override_background = { reference = dungeon }
immediate = {
scope:recipient = {
save_scope_as = prisoner
}
}
# Success — prisoner breaks and confesses
option = {
name = mistborn_inquisitor.0040.a
scope:prisoner = {
add_trait = tortured
expose_secret = yes
}
# Gain a strong hook on the prisoner
add_hook = {
target = scope:prisoner
type = strong_hook
}
# Compassionate courtiers disapprove
every_courtier = {
limit = {
has_trait = compassionate
}
add_opinion = {
target = root
modifier = opinion_angry
opinion = -30
}
}
custom_tooltip = interrogate_success_tt
}
# Show mercy — stop the interrogation
option = {
name = mistborn_inquisitor.0040.b
add_piety = -20
add_stress = -20
# The Inquisitor reports your mercy to the Canton
increase_lord_ruler_attention_effect = yes
custom_tooltip = interrogate_mercy_tt
}
}
# ============================================================
# 0050 — Inquisitor Senses a Keeper (tension event)
# When an Inquisitor and a Keeper are in the same court
# ============================================================
mistborn_inquisitor.0050 = {
type = character_event
title = mistborn_inquisitor.0050.t
desc = mistborn_inquisitor.0050.desc
theme = intrigue
override_background = { reference = throne_room }
trigger = {
has_character_flag = inquisitor_at_court
any_courtier = {
OR = {
has_character_flag = keeper_initiate
has_character_flag = keeper_identity
}
}
}
weight_multiplier = {
base = 1
modifier = {
factor = 2.5
# Heightened detection chance (25% instead of 10%)
any_courtier = {
has_character_flag = keeper_identity
}
}
}
immediate = {
random_courtier = {
limit = {
OR = {
has_character_flag = keeper_initiate
has_character_flag = keeper_identity
}
}
save_scope_as = hidden_keeper
}
}
# The Inquisitor probes with bronze Allomancy
option = {
name = mistborn_inquisitor.0050.a
# Allow the investigation — risky for the Keeper
random_list = {
25 = {
# Keeper discovered!
scope:hidden_keeper = {
remove_character_flag = keeper_initiate
remove_character_flag = keeper_identity
add_character_flag = keeper_exposed
imprison = {
target = root
type = dungeon
}
}
increase_lord_ruler_attention_effect = yes
custom_tooltip = inquisitor_finds_keeper_tt
}
75 = {
# Keeper stays hidden
custom_tooltip = inquisitor_misses_keeper_tt
}
}
}
# Distract the Inquisitor — use your influence
option = {
name = mistborn_inquisitor.0050.b
trigger = { intrigue >= 12 }
add_stress = 15
# Inquisitor is redirected, Keeper is safe for now
custom_tooltip = distract_inquisitor_tt
}
}
+337
View File
@@ -0,0 +1,337 @@
############################################
# Mistborn: The Final Empire - Keeper Events
# Events for the Terris Keeper Network
############################################
namespace = mistborn_keeper
# ============================================================
# 0001 — Keeper Network Activated (holy order hired)
# The Keeper Network is now active in your realm
# ============================================================
mistborn_keeper.0001 = {
type = character_event
title = mistborn_keeper.0001.t
desc = mistborn_keeper.0001.desc
theme = learning
override_background = { reference = study }
immediate = {
add_character_modifier = {
modifier = keeper_network_bonus
years = -1
}
}
option = {
name = mistborn_keeper.0001.a
# Knowledge will endure
add_piety = 30
custom_tooltip = keeper_network_activated_tt
}
}
# ============================================================
# 0010 — Seek the Keepers (decision result)
# A character attempts to join the Keeper Network
# ============================================================
mistborn_keeper.0010 = {
type = character_event
title = mistborn_keeper.0010.t
desc = mistborn_keeper.0010.desc
theme = learning
override_background = { reference = terrain }
immediate = {
# Learning check to find the Keepers
}
# Pass the test — accepted as initiate
option = {
name = mistborn_keeper.0010.a
trigger = { learning >= 14 }
add_character_flag = keeper_initiate
add_piety = 50
custom_tooltip = keeper_initiate_accepted_tt
}
# Struggle but persist — accepted with conditions
option = {
name = mistborn_keeper.0010.b
random_list = {
60 = {
modifier = {
factor = 1.3
learning >= 16
}
modifier = {
factor = 1.5
has_trait = trait_feruchemist
}
add_character_flag = keeper_initiate
add_piety = 25
custom_tooltip = keeper_initiate_conditional_tt
}
40 = {
add_stress = 20
custom_tooltip = keeper_initiate_rejected_tt
}
}
}
# Walk away — not ready yet
option = {
name = mistborn_keeper.0010.c
add_stress = -10
custom_tooltip = keeper_walk_away_tt
}
}
# ============================================================
# 0020 — Advance to Full Keeper (decision result)
# An initiate completes the final tests to become a full Keeper
# ============================================================
mistborn_keeper.0020 = {
type = character_event
title = mistborn_keeper.0020.t
desc = mistborn_keeper.0020.desc
theme = learning
override_background = { reference = study }
immediate = {
# Final examination of knowledge and Feruchemical ability
}
# Pass — become a full Keeper
option = {
name = mistborn_keeper.0020.a
random_list = {
70 = {
modifier = {
factor = 1.5
has_trait = trait_feruchemist
}
modifier = {
factor = 1.3
learning >= 18
}
remove_character_flag = keeper_initiate
add_character_flag = keeper_identity
add_character_modifier = {
modifier = keeper_of_terris
}
add_piety = 100
custom_tooltip = keeper_advanced_tt
}
30 = {
add_stress = 15
custom_tooltip = keeper_advance_failed_tt
}
}
}
# Request more time — not ready
option = {
name = mistborn_keeper.0020.b
add_stress = -5
custom_tooltip = keeper_more_time_tt
}
}
# ============================================================
# 0030 — Teach Forbidden History (decision result)
# A Keeper shares pre-Ascension knowledge with a courtier
# ============================================================
mistborn_keeper.0030 = {
type = character_event
title = mistborn_keeper.0030.t
desc = mistborn_keeper.0030.desc
theme = learning
override_background = { reference = study }
immediate = {
random_courtier = {
limit = {
NOT = { has_character_flag = learned_forbidden_history }
NOT = { has_character_flag = keeper_identity }
NOT = { has_character_flag = is_court_inquisitor }
}
save_scope_as = student
}
}
# Teach them — risk but reward
option = {
name = mistborn_keeper.0030.a
trigger = {
exists = scope:student
}
scope:student = {
add_character_flag = learned_forbidden_history
add_learning_skill = 1
}
# Risk of Ministry detection
random_list = {
85 = {
# Safe — no one noticed
custom_tooltip = teach_history_safe_tt
}
15 = {
# Ministry gets wind of forbidden teaching
increase_lord_ruler_attention_effect = yes
custom_tooltip = teach_history_detected_tt
}
}
}
# Too dangerous right now
option = {
name = mistborn_keeper.0030.b
add_stress = 10
custom_tooltip = teach_history_cancelled_tt
}
}
# ============================================================
# 0040 — Ministry Investigation (yearly risk for Keepers)
# The Steel Ministry investigates near a Keeper
# ============================================================
mistborn_keeper.0040 = {
type = character_event
title = mistborn_keeper.0040.t
desc = mistborn_keeper.0040.desc
theme = intrigue
override_background = { reference = terrain }
trigger = {
is_ruler = yes
any_courtier = {
OR = {
has_character_flag = keeper_initiate
has_character_flag = keeper_identity
}
}
}
weight_multiplier = {
base = 1
modifier = {
factor = 1.5
has_character_modifier = lord_ruler_attention_1
}
modifier = {
factor = 2
has_character_modifier = lord_ruler_attention_2
}
}
immediate = {
random_courtier = {
limit = {
OR = {
has_character_flag = keeper_initiate
has_character_flag = keeper_identity
}
}
save_scope_as = endangered_keeper
}
}
# Hide the Keeper — intrigue check
option = {
name = mistborn_keeper.0040.a
random_list = {
70 = {
modifier = {
factor = 1.3
intrigue >= 15
}
# Keeper stays hidden
add_stress = 10
custom_tooltip = keeper_hidden_success_tt
}
30 = {
modifier = {
factor = 0.7
intrigue >= 15
}
# Keeper discovered!
scope:endangered_keeper = {
remove_character_flag = keeper_initiate
remove_character_flag = keeper_identity
add_character_flag = keeper_exposed
}
increase_lord_ruler_attention_effect = yes
custom_tooltip = keeper_discovered_tt
}
}
}
# Hand over the Keeper — save yourself
option = {
name = mistborn_keeper.0040.b
trigger = {
faith = faith:steel_ministry
}
scope:endangered_keeper = {
remove_character_flag = keeper_initiate
remove_character_flag = keeper_identity
add_character_flag = keeper_exposed
imprison = {
target = root
type = dungeon
}
}
add_piety = 30
custom_tooltip = keeper_handed_over_tt
}
# Protect them at any cost
option = {
name = mistborn_keeper.0040.c
increase_lord_ruler_attention_effect = yes
add_piety = -50
add_stress = 20
custom_tooltip = keeper_protected_tt
}
}
# ============================================================
# 0050 — Coppermind Sharing (Keeper network event)
# Exchange knowledge with other Keepers in the network
# ============================================================
mistborn_keeper.0050 = {
type = character_event
title = mistborn_keeper.0050.t
desc = mistborn_keeper.0050.desc
theme = learning
override_background = { reference = study }
trigger = {
has_character_flag = keeper_identity
}
weight_multiplier = {
base = 1
modifier = {
factor = 1.5
has_trait = trait_feruchemist
}
}
# Share memories — gain knowledge
option = {
name = mistborn_keeper.0050.a
add_learning_skill = 1
add_piety = 20
custom_tooltip = coppermind_sharing_tt
}
# Store memories for future generations
option = {
name = mistborn_keeper.0050.b
add_piety = 30
add_prestige = 20
custom_tooltip = coppermind_storing_tt
}
}
@@ -0,0 +1,154 @@
l_english:
# ========== HOLY ORDER NAMES ==========
holy_order_steel_inquisitors:0 "Steel Inquisitors"
holy_order_steel_inquisitors_desc:0 "The Lord Ruler's terrifying enforcers. Hemalurgic abominations with spikes driven through their eyes, they hunt heretics, interrogate prisoners, and ensure absolute obedience to the Final Empire."
keeper_network:0 "Keeper Network"
keeper_network_desc:0 "The Terris Keepers — a clandestine network of Feruchemists who preserve forbidden knowledge in copperminds, defying the Lord Ruler's campaign to erase pre-Ascension history."
# ========== MEN-AT-ARMS ==========
inquisitor_squad:0 "Inquisitor Squad"
inquisitor_squad_desc:0 "A small regiment led by Steel Inquisitors — hemalurgically enhanced warriors whose superhuman speed, strength, and Allomantic senses make them devastatingly effective in combat."
# ========== INQUISITOR DECISIONS ==========
request_inquisitor_decision:0 "Request an Inquisitor"
request_inquisitor_decision_desc:0 "Petition the Steel Ministry to send an Inquisitor to your court. These terrifying agents of the Lord Ruler will investigate heresy and enforce order — but they answer to the Lord Ruler, not to you."
request_inquisitor_decision_tooltip:0 "An Inquisitor will arrive at your court."
# ========== KEEPER DECISIONS ==========
seek_the_keepers_decision:0 "Seek the Keepers"
seek_the_keepers_decision_desc:0 "Reach out to the secret network of Terris Keepers — scholars who preserve forbidden knowledge of the world before the Lord Ruler's Ascension. Finding them requires wisdom and discretion."
seek_the_keepers_decision_tooltip:0 "Attempt to join the Keeper Network."
advance_to_keeper_decision:0 "Advance to Full Keeper"
advance_to_keeper_decision_desc:0 "You have proven yourself as an initiate. Now face the final tests to become a full Keeper of Terris — one who bears the sacred duty of preserving all knowledge."
advance_to_keeper_decision_tooltip:0 "Attempt to advance from initiate to full Keeper."
teach_forbidden_history_decision:0 "Teach Forbidden History"
teach_forbidden_history_decision_desc:0 "Share the pre-Ascension knowledge stored in your copperminds with a courtier. The Lord Ruler has decreed this history erased — teaching it is an act of defiance."
teach_forbidden_history_decision_tooltip:0 "Teach a courtier about the world before the Lord Ruler."
# ========== INQUISITOR INTERACTIONS ==========
investigate_heresy_interaction:0 "Investigate Heresy"
investigate_heresy_interaction_desc:0 "Order the Inquisitor to investigate this person for hidden faith, secret Allomantic abilities, or seditious activities."
hunt_allomancers_interaction:0 "Hunt Allomancers"
hunt_allomancers_interaction_desc:0 "Send the Inquisitor to search a vassal's domain for hidden Allomancers. More effective than ordinary patrols, but disruptive."
interrogate_prisoner_interaction:0 "Interrogate Prisoner"
interrogate_prisoner_interaction_desc:0 "Order the Inquisitor to brutally interrogate a prisoner. The methods are unspeakable, but effective — the prisoner will confess everything."
# ========== INQUISITOR EVENTS ==========
mistborn_inquisitor.0001.t:0 "The Inquisitors March"
mistborn_inquisitor.0001.desc:0 "The ground seems to tremble as the Steel Inquisitors arrive — spike-eyed horrors in robes of grey, their very presence an instrument of terror. Your courtiers shrink away. The Lord Ruler's enforcers have answered your call."
mistborn_inquisitor.0001.a:0 "The Lord Ruler's will be done."
inquisitor_order_hired_tt:0 "The Steel Inquisitor holy order is now available."
mistborn_inquisitor.0010.t:0 "An Inquisitor Arrives"
mistborn_inquisitor.0010.desc:0 "The doors of your keep slam open. A figure strides in — tall, gaunt, with twin steel spikes where eyes should be. The Inquisitor surveys your court with a bronze-Allomancy pulse that makes every Allomancer in the room flinch. It has come to serve. And to watch."
mistborn_inquisitor.0010.a:0 "Welcome, servant of the Lord Ruler."
mistborn_inquisitor.0010.b:0 "...I accept. Reluctantly."
inquisitor_arrives_tt:0 "An Inquisitor has joined your court as an enforcer."
inquisitor_arrives_reluctant_tt:0 "The Inquisitor takes up residence regardless of your feelings."
mistborn_inquisitor.0015.t:0 "Eyes That Never Close"
mistborn_inquisitor.0015.desc:0 "Your spymaster reports that the Inquisitor has been sending coded messages to the Canton of Inquisition. Your activities — your dealings, your visitors, your private conversations — all catalogued and dispatched to Luthadel. The Lord Ruler knows."
mistborn_inquisitor.0015.a:0 "There is nothing I can do."
mistborn_inquisitor.0015.b:0 "Perhaps gold will buy discretion..."
inquisitor_reports_tt:0 "The Inquisitor has reported your activities to the Canton. Lord Ruler attention increased."
inquisitor_bribe_tt:0 "The Inquisitor takes the gold. Whether it changes anything is another matter."
mistborn_inquisitor.0020.t:0 "The Investigation"
mistborn_inquisitor.0020.desc:0 "The Inquisitor corners the target in a private chamber. Spike-studded eyes bore into the unfortunate soul as bronze Allomancy probes for hidden powers and steel pushes test for concealed metals. The investigation is thorough. And terrifying."
mistborn_inquisitor.0020.a:0 "The truth is revealed."
mistborn_inquisitor.0020.b:0 "Nothing was found — but the message was sent."
investigate_heresy_success_tt:0 "The Inquisitor has uncovered the target's secrets."
investigate_heresy_failure_tt:0 "No heresy found, but the target has been thoroughly intimidated."
mistborn_inquisitor.0030.t:0 "The Hunt"
mistborn_inquisitor.0030.desc:0 "The Inquisitor stalks through the province like a predator, bronze senses extended for any trace of Allomantic pulses. Villages fall silent as the spike-eyed horror passes through. If there are hidden Allomancers here, the Inquisitor will find them."
mistborn_inquisitor.0030.a:0 "Let the hunt proceed."
mistborn_inquisitor.0030.b:0 "Call off the hunt — this is too disruptive."
hunt_allomancers_success_tt:0 "A hidden Allomancer has been discovered and captured."
hunt_allomancers_none_found_tt:0 "No hidden Allomancers were found in the province."
hunt_allomancers_cancelled_tt:0 "The hunt has been called off."
mistborn_inquisitor.0040.t:0 "The Interrogation"
mistborn_inquisitor.0040.desc:0 "The screams echo through the dungeon. The Inquisitor works with methodical brutality — no instrument of torture needed when you have hemalurgically enhanced strength and the ability to Riot emotions to their breaking point. It is only a matter of time."
mistborn_inquisitor.0040.a:0 "Extract everything."
mistborn_inquisitor.0040.b:0 "Enough. Stop this."
interrogate_success_tt:0 "The prisoner has confessed under interrogation. All secrets revealed."
interrogate_mercy_tt:0 "You showed mercy. The Inquisitor has noted your weakness."
mistborn_inquisitor.0050.t:0 "Something Stirs"
mistborn_inquisitor.0050.desc:0 "The Inquisitor pauses mid-stride, spike-studded head tilting as if listening to something only it can hear. Bronze Allomancy probes pulse outward through your keep. Someone in your court is using — or hiding — metallic arts. The Inquisitor can sense it."
mistborn_inquisitor.0050.a:0 "Let the Inquisitor investigate."
mistborn_inquisitor.0050.b:0 "Distract the Inquisitor from this line of inquiry."
inquisitor_finds_keeper_tt:0 "The Inquisitor has discovered a hidden Keeper in your court!"
inquisitor_misses_keeper_tt:0 "The Inquisitor senses something but cannot pinpoint the source."
distract_inquisitor_tt:0 "You successfully redirect the Inquisitor's attention."
# ========== KEEPER EVENTS ==========
mistborn_keeper.0001.t:0 "The Network Lives"
mistborn_keeper.0001.desc:0 "Contact has been made. Through hidden signs and whispered passwords, you have connected to the Keeper Network — the underground web of Terris scholars who preserve the world's true history in their copperminds. The knowledge of ages flows through your realm."
mistborn_keeper.0001.a:0 "Knowledge will endure."
keeper_network_activated_tt:0 "The Keeper Network is now active in your realm, providing learning and cultural bonuses."
mistborn_keeper.0010.t:0 "Seeking the Keepers"
mistborn_keeper.0010.desc:0 "You follow the ancient signs — a pattern of metalminds displayed in a market stall, a particular phrase spoken to a Terris steward. After weeks of careful contact, you are led to a hidden chamber beneath a granary. Three Keepers await, their arms covered in metalminds, their eyes measuring your worth."
mistborn_keeper.0010.a:0 "I am ready to be tested."
mistborn_keeper.0010.b:0 "I will prove myself, whatever it takes."
mistborn_keeper.0010.c:0 "I am not ready for this."
keeper_initiate_accepted_tt:0 "You have been accepted as a Keeper initiate."
keeper_initiate_conditional_tt:0 "You have been accepted, but the Keepers will watch you closely."
keeper_initiate_rejected_tt:0 "The Keepers do not believe you are ready. Perhaps in time."
keeper_walk_away_tt:0 "You decide this path is not for you — at least not yet."
mistborn_keeper.0020.t:0 "The Final Test"
mistborn_keeper.0020.desc:0 "The elder Keepers gather. You must demonstrate your mastery — recite the pre-Ascension histories stored in your copperminds, demonstrate Feruchemical control, and swear the sacred oath: to preserve all knowledge, no matter the cost, no matter the danger."
mistborn_keeper.0020.a:0 "I am ready. Test me."
mistborn_keeper.0020.b:0 "I need more time to prepare."
keeper_advanced_tt:0 "You are now a full Keeper of Terris. The weight of all knowledge rests on your shoulders."
keeper_advance_failed_tt:0 "You did not pass the final test. Continue your studies."
keeper_more_time_tt:0 "You step back from the test. There is no shame in patience."
mistborn_keeper.0030.t:0 "Forbidden Lessons"
mistborn_keeper.0030.desc:0 "In a locked chamber, by candlelight, you tap your coppermind and share the memories within — stories of a world before the ash, before the Lord Ruler's Ascension. Green plants, blue skies, flowers. Your student's eyes widen with wonder and disbelief."
mistborn_keeper.0030.a:0 "They must know the truth."
mistborn_keeper.0030.b:0 "It is too dangerous right now."
teach_history_safe_tt:0 "The lesson passes without incident."
teach_history_detected_tt:0 "Rumors of your forbidden teachings have reached the Ministry."
teach_history_cancelled_tt:0 "You decide the risk is too great for now."
mistborn_keeper.0040.t:0 "Ministry Investigation"
mistborn_keeper.0040.desc:0 "Obligators have been asking questions in the district — pointed questions about Terris servants, about metalminds, about unusual scholarly activities. Someone has drawn the Steel Ministry's attention to your domain. A Keeper in your court is in danger."
mistborn_keeper.0040.a:0 "Hide the Keeper — quickly!"
mistborn_keeper.0040.b:0 "Hand over the Keeper to the Ministry."
mistborn_keeper.0040.c:0 "Protect the Keeper, whatever the cost."
keeper_hidden_success_tt:0 "The Keeper has been successfully hidden from the Ministry investigators."
keeper_discovered_tt:0 "The Keeper has been discovered by the Ministry!"
keeper_handed_over_tt:0 "You have surrendered the Keeper to the Steel Ministry."
keeper_protected_tt:0 "You have protected the Keeper, but the Ministry grows suspicious of you."
mistborn_keeper.0050.t:0 "Coppermind Sharing"
mistborn_keeper.0050.desc:0 "A fellow Keeper arrives in secret, bearing copperminds full of recovered histories — tales of the Deepness, the Hero of Ages prophecy, the pre-Ascension world. You spend the night exchanging memories, each of you adding to the other's store of knowledge."
mistborn_keeper.0050.a:0 "Share memories — expand my knowledge."
mistborn_keeper.0050.b:0 "Store memories — preserve them for future generations."
coppermind_sharing_tt:0 "You have gained new knowledge from fellow Keepers."
coppermind_storing_tt:0 "You have preserved critical knowledge for future generations."
# ========== MODIFIERS ==========
keeper_network_bonus:0 "Keeper Network"
keeper_network_bonus_desc:0 "A clandestine network of Terris Keepers operates within your realm, quietly preserving forbidden knowledge and enhancing cultural understanding."
# ========== TOOLTIPS ==========
dismiss_inquisitor_order_piety_tt:0 "Dismissing the Lord Ruler's enforcers is an act of impiety."