From c2d7c425fdeb4aac9fac6ccf5a3278547a0e3118 Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Sun, 8 Feb 2026 23:22:02 +0100 Subject: [PATCH] feat(effects): add artifact creation scripted effects Adds reusable scripted effects for creating 9 Mistborn artifact types: mistcloaks, metal vial sets, glass daggers, dueling canes, koloss swords, obsidian axes, atium beads, copperminds, and lord's seals. Each effect accepts a $QUALITY$ parameter. Co-Authored-By: Claude Opus 4.6 --- .../scripted_effects/mistborn_effects.txt | 230 ++++++++++++++++++ 1 file changed, 230 insertions(+) diff --git a/lords_of_ash/common/scripted_effects/mistborn_effects.txt b/lords_of_ash/common/scripted_effects/mistborn_effects.txt index b9101ee..79069bd 100644 --- a/lords_of_ash/common/scripted_effects/mistborn_effects.txt +++ b/lords_of_ash/common/scripted_effects/mistborn_effects.txt @@ -180,3 +180,233 @@ deplete_atium_supply_effect = { # Character's atium supply runs out # No-op if not holding atium } + +# ===== ARTIFACT CREATION EFFECTS ===== + +create_mistcloak_effect = { + # Creates and equips a mistcloak artifact for the scoped character + # $QUALITY$ parameter: 1=poor, 2=common, 3=fine, 4=excellent, 5=masterwork + create_artifact = { + name = mistcloak_artifact_name + description = mistcloak_artifact_desc + type = mistcloak + template = standard_mistcloak + visuals = mistcloak + quality = $QUALITY$ + modifier = { + prowess = 2 + intrigue = 2 + dread_baseline_add = 5 + } + } +} + +create_metal_vial_set_effect = { + # Creates and equips a metal vial set artifact + create_artifact = { + name = metal_vial_set_artifact_name + description = metal_vial_set_artifact_desc + type = metal_vial_set + template = metal_vial_set_template + visuals = metal_vial_set + quality = $QUALITY$ + modifier = { + prowess = 1 + } + } +} + +create_glass_daggers_effect = { + # Creates and equips glass daggers artifact + create_artifact = { + name = glass_daggers_artifact_name + description = glass_daggers_artifact_desc + type = glass_daggers + template = glass_daggers_template + visuals = glass_daggers + quality = $QUALITY$ + modifier = { + prowess = 3 + } + } +} + +create_dueling_canes_effect = { + # Creates and equips dueling canes artifact + create_artifact = { + name = dueling_canes_artifact_name + description = dueling_canes_artifact_desc + type = dueling_canes + template = dueling_canes_template + visuals = dueling_canes + quality = $QUALITY$ + modifier = { + diplomacy = 1 + prowess = 1 + } + } +} + +create_koloss_sword_effect = { + # Creates and equips a koloss sword artifact + create_artifact = { + name = koloss_sword_artifact_name + description = koloss_sword_artifact_desc + type = koloss_sword + template = koloss_sword_template + visuals = koloss_sword + quality = $QUALITY$ + modifier = { + prowess = 6 + martial = 2 + diplomacy = -2 + } + } +} + +create_coppermind_effect = { + # Creates and equips a coppermind artifact + create_artifact = { + name = coppermind_artifact_name + description = coppermind_artifact_desc + type = coppermind + template = coppermind_template + visuals = coppermind + quality = $QUALITY$ + modifier = { + learning = 4 + intrigue = 1 + } + } +} + +create_metalmind_set_effect = { + # Creates and equips a metalmind set artifact + create_artifact = { + name = metalmind_set_artifact_name + description = metalmind_set_artifact_desc + type = metalmind_set + template = metalmind_set_template + visuals = metalmind_set + quality = $QUALITY$ + modifier = { + health = 0.5 + prowess = 2 + } + } +} + +create_atium_bracers_effect = { + # Creates the Lord Ruler's unique atium bracers — only one exists + create_artifact = { + name = atium_bracers_artifact_name + description = atium_bracers_artifact_desc + type = atium_bracers + template = lord_ruler_atium_bracers + visuals = atium_bracers + quality = 6 + modifier = { + health = 5 + prowess = 10 + monthly_prestige = 1.0 + } + } +} + +create_inquisitor_spike_set_effect = { + # Creates inquisitor spike set artifact + create_artifact = { + name = inquisitor_spike_set_artifact_name + description = inquisitor_spike_set_artifact_desc + type = inquisitor_spike_set + template = steel_inquisitor_spikes + visuals = inquisitor_spike_set + quality = 5 + modifier = { + prowess = 8 + martial = 4 + intrigue = 3 + dread_baseline_add = 20 + diplomacy = -5 + attraction_opinion = -30 + } + } +} + +# ===== GAME START ARTIFACT ASSIGNMENT ===== + +assign_starting_artifacts_effect = { + # Called from on_game_start to give canonical characters their artifacts + + # Lord Ruler (900100) — atium bracers (legendary) + character:900100 = { + create_atium_bracers_effect = yes + } + + # Kelsier (900200) — mistcloak (excellent), glass daggers (good) + character:900200 = { + create_mistcloak_effect = { QUALITY = 4 } + create_glass_daggers_effect = { QUALITY = 3 } + } + + # Vin (900201) — no starting artifacts (receives mistcloak via events in M6) + + # Sazed (900202) — coppermind (masterwork) + character:900202 = { + create_coppermind_effect = { QUALITY = 5 } + } + + # Breeze (900203) — metal vial set (common) + character:900203 = { + create_metal_vial_set_effect = { QUALITY = 2 } + } + + # Ham (900204) — metal vial set (common) + character:900204 = { + create_metal_vial_set_effect = { QUALITY = 2 } + } + + # Clubs (900205) — metal vial set (common) + character:900205 = { + create_metal_vial_set_effect = { QUALITY = 2 } + } + + # Great House heads — dueling canes (quality varies by house power) + # Straff Venture (900001) — excellent canes (most powerful house) + excellent vials (Tineye) + character:900001 = { + create_dueling_canes_effect = { QUALITY = 4 } + create_metal_vial_set_effect = { QUALITY = 4 } + } + # Jordren Hasting (900010) — fine (military house) + character:900010 = { + create_dueling_canes_effect = { QUALITY = 3 } + } + # Trentohn Elariel (900020) — fine (intrigue house) + character:900020 = { + create_dueling_canes_effect = { QUALITY = 3 } + } + # Dagren Tekiel (900030) — excellent (wealthy trade house) + character:900030 = { + create_dueling_canes_effect = { QUALITY = 4 } + } + # Brodren Lekal (900040) — fine (diplomacy house) + character:900040 = { + create_dueling_canes_effect = { QUALITY = 3 } + } + + # Shan Elariel (900021) — dueling canes only (NO mistcloak — she is a secret Mistborn) + character:900021 = { + create_dueling_canes_effect = { QUALITY = 4 } + } + + # Steel Inquisitors (900300-900302) — inquisitor spike sets + character:900300 = { + create_inquisitor_spike_set_effect = yes + } + character:900301 = { + create_inquisitor_spike_set_effect = yes + } + character:900302 = { + create_inquisitor_spike_set_effect = yes + } +}