feat(hemalurgy): add kandra trait and contract mechanics

Add trait_kandra (index 266) with intrigue +8, diplomacy +2, health +2,
attraction_opinion -10. Add is_kandra_trigger and update
has_hemalurgic_spike_trigger to include kandra. Create
assign_kandra_contract_effect for contract bonding. Add trait
localization with double-prefix keys.

Also includes is_lord_ruler_trigger and is_playable_scadrian_trigger
added to the triggers file by a teammate.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-08 22:29:31 +01:00
co-authored by Claude Opus 4.6
parent 5c5e0b06e9
commit 1ffc721265
4 changed files with 50 additions and 0 deletions
@@ -138,6 +138,17 @@ create_steel_inquisitor_effect = {
add_trait = disfigured # Spikes through the eyes
}
# ===== KANDRA CONTRACT EFFECTS =====
assign_kandra_contract_effect = {
# Assigns a kandra to serve this character
# The kandra becomes a courtier and gains a flag for the contract
scope:kandra_target = {
set_relation_guardian = root # Represents the Contract bond
add_character_flag = kandra_contract_active
}
}
# ===== HOUSE AND DYNASTY EFFECTS =====
establish_great_house_effect = {
@@ -104,9 +104,14 @@ has_hemalurgic_spike_trigger = {
has_trait = trait_hemalurgic_pewter
has_trait = trait_hemalurgic_bronze
has_trait = trait_hemalurgic_atium
has_trait = trait_kandra
}
}
is_kandra_trigger = {
has_trait = trait_kandra
}
has_multiple_spikes_trigger = {
# Character has 3+ hemalurgic spike traits — eligible for Inquisitor transformation
calc_true_if = {
@@ -160,6 +165,16 @@ can_snap_trigger = {
age >= 10 # Must be old enough
}
# ===== LORD RULER TRIGGERS =====
is_lord_ruler_trigger = {
this = character:900100
}
is_playable_scadrian_trigger = {
NOT = { is_lord_ruler_trigger = yes }
}
# ===== GAME MODE TRIGGERS =====
is_narrative_mode_trigger = {
@@ -100,3 +100,22 @@ trait_knows_hemalurgy = {
icon = trait_knows_hemalurgy.dds
}
# Kandra - shapeshifting Hemalurgic creature bound by Contracts
trait_kandra = {
index = 266
category = fame
genetic = no
intrigue = 8
diplomacy = 2
health = 2
attraction_opinion = -10
ruler_designer_cost = 0
shown_in_ruler_designer = no
icon = trait_kandra.dds
}
@@ -94,6 +94,9 @@
trait_knows_hemalurgy:0 "Knows Hemalurgy"
trait_knows_hemalurgy_desc:0 "This individual possesses forbidden knowledge of Hemalurgy — the dark metallic art that steals power through murder. Such knowledge is closely guarded by the Steel Inquisitors and a handful of desperate scholars. To know Hemalurgy is to know how to kill with purpose."
trait_kandra:0 "Kandra"
trait_kandra_desc:0 "A shapeshifting creature created through Hemalurgy. Kandra can absorb a person's bones to perfectly mimic their appearance. They are bound by strict Contracts to serve their masters."
# ========== TRAIT GROUP NAMES ==========
trait_allomancy_group:0 "Allomancy"
@@ -168,3 +171,5 @@
trait_trait_hemalurgic_atium_desc:0 "An atium spike — rarest and most terrible of Hemalurgic instruments."
trait_trait_knows_hemalurgy:0 "Knows Hemalurgy"
trait_trait_knows_hemalurgy_desc:0 "This individual possesses forbidden knowledge of Hemalurgy — the dark metallic art that steals power through murder."
trait_trait_kandra:0 "Kandra"
trait_trait_kandra_desc:0 "A shapeshifting creature created through Hemalurgy, bound by strict Contracts."