event fixes pt II

This commit is contained in:
trashmasteruni 2026-10-10 23:36:32 +02:00
parent e8f9381e3a
commit 0555f85c12
55 changed files with 4908 additions and 134006 deletions

View file

@ -7,6 +7,7 @@ artifact.0011 = {
hidden = yes
trigger = {
exists = scope:old_owner
NOT = { has_variable = suppress_artifact_notifications }
}
@ -92,7 +93,8 @@ artifact.0101 = {
hidden = yes
trigger = {
has_variable = artefact_santiago_bells
exists = scope:old_owner
has_variable = artifact_santiago_bells
}
immediate = {
@ -105,7 +107,11 @@ artifact.0101 = {
religion = religion:islam_religion
# Non-Christian Islamic syncretics also have a vested interest in getting in on this.
AND = {
faith = { has_doctrine = tenet_islamic_syncretism }
NOT = { OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } }
rite = { rite_has_parameter = can_use_islamic_artifacts }
}
AND = {
has_personal_tenet_flag = can_use_islamic_artifacts
NOT = { OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion } }
}
}
@ -113,7 +119,7 @@ artifact.0101 = {
}
# Reforge into an aquamanile, for the first time.
if = {
limit = { var:artefact_santiago_bells = 0 }
limit = { var:artifact_santiago_bells = 0 }
scope:owner = { save_scope_as = reforger }
# We're using the miscellaneous category.
if = {
@ -127,7 +133,7 @@ artifact.0101 = {
description = fp2_santiago_aquamanile_desc
}
}
# We're into court artefacts.
# We're into court artifacts.
else = {
reforge_artifact = {
modifier = former_bells_of_santiago_modifier
@ -139,13 +145,13 @@ artifact.0101 = {
}
}
change_variable = {
name = artefact_santiago_bells
name = artifact_santiago_bells
add = 1
}
}
# Reforge back into an aquamanile after them dastardly Christians de-jug'd it.
else_if = {
limit = { var:artefact_santiago_bells >= 1 }
limit = { var:artifact_santiago_bells >= 1 }
scope:owner = { save_scope_as = reforger }
# We're using the miscellaneous category.
if = {
@ -159,7 +165,7 @@ artifact.0101 = {
description = fp2_santiago_aquamanile_melted_desc
}
}
# We're into court artefacts.
# We're into court artifacts.
else = {
reforge_artifact = {
modifier = former_bells_of_santiago_modifier
@ -171,12 +177,12 @@ artifact.0101 = {
}
}
change_variable = {
name = artefact_santiago_bells
name = artifact_santiago_bells
add = 1
}
# If we're high enough up the melting chain, start a tally.
if = {
limit = { var:artefact_santiago_bells >= 5 }
limit = { var:artifact_santiago_bells >= 5 }
set_artifact_description = fp2_santiago_aquamanile_melted_tally_desc
}
}
@ -190,7 +196,11 @@ artifact.0101 = {
OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion }
# Non-Islamic Christian syncretics also have a vested interest in getting in on this.
AND = {
faith = { has_doctrine = tenet_christian_syncretism }
rite = { rite_has_parameter = christian_syncretic_actor }
NOT = { religion = religion:islam_religion }
}
AND = {
has_personal_tenet_flag = can_use_christian_artifacts
NOT = { religion = religion:islam_religion }
}
}
@ -210,7 +220,7 @@ artifact.0101 = {
description = fp2_santiago_bells_melted_desc
}
}
# We're into court artefacts.
# We're into court artifacts.
else = {
reforge_artifact = {
modifier = bells_of_santiago_modifier
@ -222,12 +232,12 @@ artifact.0101 = {
}
}
change_variable = {
name = artefact_santiago_bells
name = artifact_santiago_bells
add = 1
}
# If we're high enough up the melting chain, start a tally.
if = {
limit = { var:artefact_santiago_bells >= 4 }
limit = { var:artifact_santiago_bells >= 4 }
set_artifact_description = fp2_santiago_bells_melted_tally_desc
}
}
@ -622,9 +632,9 @@ artifact.1001 = {
option = {
name = artifact.1001.a
# Flag that this is free for DLC artefacts that could become courtly ones...
# Flag that this is free for DLC artifacts that could become courtly ones...
if = {
limit = { exists = scope:this_artifact.var:dlc_potential_court_artefact }
limit = { exists = scope:this_artifact.var:dlc_potential_court_artifact }
custom_tooltip = artifact.1001.a.tt.free
}
# ... or else costs a nominal fee.
@ -1019,7 +1029,7 @@ artifact.3000 = {
}
}
}
stress_impact = {
stress_and_fulfillment_impact = {
compassionate = minor_stress_impact_gain
calm = minor_stress_impact_gain
trusting = minor_stress_impact_gain
@ -1931,13 +1941,14 @@ scripted_trigger artifact_4000_cursed_history_trigger = {
}
has_variable = ghost_cabinet
}
NOR = {
has_variable = cursed_artifact_var
has_variable = blessed_artifact_var
has_variable = artifact_named_crown_var
has_variable = artifact_killer_var
has_variable = artifact_armor_var
has_variable = historical_unique_artifact
has_none_of_variables = {
name = cursed_artifact_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = artifact_named_crown_var
name = artifact_killer_var
name = artifact_armor_var
name = historical_unique_artifact
}
}
@ -1946,13 +1957,14 @@ scripted_trigger artifact_4000_cursed_creepy_trigger = {
ep1_artifact_durability_lower_equal_percent_trigger = { PERCENT = 0.49 }
artifact_age >= 50
}
NOR = {
has_variable = cursed_artifact_var
has_variable = blessed_artifact_var
has_variable = artifact_named_crown_var
has_variable = artifact_killer_var
has_variable = artifact_armor_var
has_variable = historical_unique_artifact
has_none_of_variables = {
name = cursed_artifact_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = artifact_named_crown_var
name = artifact_killer_var
name = artifact_armor_var
name = historical_unique_artifact
}
}
@ -2302,14 +2314,15 @@ artifact.4002 = { #you own a cursed artifact
trigger = {
any_character_artifact = {
has_variable = cursed_artifact_var
NOR = {
has_variable = attempted_blessing_var
has_variable = cursed_artifact_accepted_var
has_variable = artifact_named_crown_var
has_variable = artifact_killer_var
has_variable = artifact_armor_var
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_none_of_variables = {
name = attempted_blessing_var
name = cursed_artifact_accepted_var
name = artifact_named_crown_var
name = artifact_killer_var
name = artifact_armor_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
}
}
}
@ -2326,14 +2339,15 @@ artifact.4002 = { #you own a cursed artifact
random_character_artifact = {
limit = {
has_variable = cursed_artifact_var
NOR = {
has_variable = attempted_blessing_var
has_variable = cursed_artifact_accepted_var
has_variable = artifact_named_crown_var
has_variable = artifact_killer_var
has_variable = artifact_armor_var
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_none_of_variables = {
name = attempted_blessing_var
name = cursed_artifact_accepted_var
name = artifact_named_crown_var
name = artifact_killer_var
name = artifact_armor_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
}
}
save_scope_as = this_artifact
@ -2456,11 +2470,12 @@ scripted_trigger artifact_4010_valid_weapon_trigger = {
var:artifact_battles_won_var >= 100
}
}
NOR = {
has_variable = cursed_artifact_var
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_variable = artifact_duel_weapon_var
has_none_of_variables = {
name = cursed_artifact_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
name = artifact_duel_weapon_var
}
}
@ -2535,11 +2550,12 @@ artifact.4010 = {
limit = {
artifact_slot_type = primary_armament
has_variable = artifact_battles_won_var
NOR = {
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_variable = cursed_artifact_var
has_variable = artifact_duel_weapon_var
has_none_of_variables = {
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
name = cursed_artifact_var
name = artifact_duel_weapon_var
}
trigger_if = {
limit = {
@ -2681,10 +2697,11 @@ scripted_trigger artifact_4020_valid_armor_trigger = {
var:artifact_battles_won_var >= 100
}
}
NOR = {
has_variable = cursed_artifact_var
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_none_of_variables = {
name = cursed_artifact_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
}
}
@ -2759,10 +2776,11 @@ artifact.4020 = {
limit = {
artifact_slot_type = armor
has_variable = artifact_battles_won_var
NOR = {
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_variable = cursed_artifact_var
has_none_of_variables = {
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
name = cursed_artifact_var
}
trigger_if = {
limit = {
@ -2882,18 +2900,17 @@ artifact.4020 = {
scripted_trigger artifact_4030_valid_empire_crown = {
artifact_slot_type = helmet
AND = {
root = { highest_held_title_tier = tier_empire }
previous_owner ?= { highest_held_title_tier = tier_empire }
exists = previous_owner_level_2
previous_owner_level_2 = { highest_held_title_tier = tier_empire }
exists = previous_owner_level_3
previous_owner_level_3 = { highest_held_title_tier = tier_empire }
root = { highest_held_title_tier >= tier_empire }
previous_owner ?= { highest_held_title_tier >= tier_empire }
previous_owner_level_2 ?= { highest_held_title_tier >= tier_empire }
previous_owner_level_3 ?= { highest_held_title_tier >= tier_empire }
}
NOR = {
has_variable = artifact_named_crown_var
has_variable = cursed_artifact_var
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_none_of_variables = {
name = artifact_named_crown_var
name = cursed_artifact_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
}
}
@ -2909,11 +2926,12 @@ scripted_trigger artifact_4030_valid_people_crown = {
exists = previous_owner_level_3
previous_owner_level_3 = { has_primary_title = scope:crown_title }
}
NOR = {
has_variable = artifact_named_crown_var
has_variable = cursed_artifact_var
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_none_of_variables = {
name = artifact_named_crown_var
name = cursed_artifact_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
}
}
@ -2931,13 +2949,10 @@ artifact.4030 = {
first_valid = {
triggered_desc = {
trigger = {
root = { highest_held_title_tier = tier_empire }
exists = scope:this_artifact.previous_owner
scope:this_artifact.previous_owner = { highest_held_title_tier = tier_empire }
exists = scope:this_artifact.previous_owner_level_2
scope:this_artifact.previous_owner_level_2 = { highest_held_title_tier = tier_empire }
exists = scope:this_artifact.previous_owner_level_3
scope:this_artifact.previous_owner_level_3 = { highest_held_title_tier = tier_empire }
root = { highest_held_title_tier >= tier_empire }
scope:this_artifact.previous_owner ?= { highest_held_title_tier >= tier_empire }
scope:this_artifact.previous_owner_level_2 ?= { highest_held_title_tier >= tier_empire }
scope:this_artifact.previous_owner_level_3 ?= { highest_held_title_tier >= tier_empire }
}
desc = artifact.4030.desc_emperor
}
@ -3088,9 +3103,9 @@ artifact.4040 = {
artifact_slot_type = armor
artifact_slot_type = primary_armament
}
NOR = {
has_variable = cursed_artifact_var
has_variable = artifact_improved_var
has_none_of_variables = {
name = cursed_artifact_var
name = artifact_improved_var
}
}
OR = {
@ -3118,9 +3133,9 @@ artifact.4040 = {
artifact_slot_type = armor
artifact_slot_type = primary_armament
}
NOR = {
has_variable = cursed_artifact_var
has_variable = artifact_improved_var
has_none_of_variables = {
name = cursed_artifact_var
name = artifact_improved_var
}
}
save_scope_as = this_artifact
@ -3368,7 +3383,7 @@ artifact.4050 = {
option = {
name = artifact.4050.a
stress_impact = {
stress_and_fulfillment_impact = {
base = medium_stress_impact_loss
wrathful = major_stress_impact_loss
irritable = massive_stress_impact_loss
@ -3387,12 +3402,13 @@ scripted_trigger artifact_4060_valid_artifact_trigger = {
artifact_slot_type = armor
artifact_slot_type = throne
}
NOR = {
has_variable = cursed_artifact_var
has_variable = artifact_named_crown_var
has_variable = artifact_killer_var
has_variable = artifact_armor_var
has_variable = blessed_artifact_var
has_none_of_variables = {
name = cursed_artifact_var
name = artifact_named_crown_var
name = artifact_killer_var
name = artifact_armor_var
name = blessed_artifact_var
name = sanctified_artifact_var
}
}
@ -3488,7 +3504,7 @@ artifact.4060 = {
set_artifact_description = artifact_4060_blessed_artifact_desc
}
remove_short_term_gold = medium_gold_value
stress_impact = {
stress_and_fulfillment_impact = {
cynical = major_stress_impact_gain
greedy = major_stress_impact_gain
zealous = major_stress_impact_loss
@ -3498,7 +3514,7 @@ artifact.4060 = {
#Option B: refuse
option = {
name = artifact.4060.b
stress_impact = {
stress_and_fulfillment_impact = {
cynical = major_stress_impact_loss
zealous = major_stress_impact_gain
}
@ -3508,98 +3524,9 @@ artifact.4060 = {
# Desecrated relic
scripted_trigger artifact_4070_valid_relic_trigger = {
has_variable = relic
trigger_if = {
limit = {
var:relic = flag:christian
}
previous_owner ?= {
NOT = { OR = { faith.religion = religion:eastern_orthodox_religion faith.religion = religion:catholic_religion faith.religion = religion:protestant_religion } }
}
}
trigger_else_if = {
limit = {
var:relic = flag:islamic
}
previous_owner ?= {
NOT = { faith.religion = religion:islam_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:buddhism
}
previous_owner ?= {
NOT = { faith.religion = religion:buddhism_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:zoroastr
}
previous_owner ?= {
NOT = { faith.religion = religion:zoroastrianism_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:jainism
}
previous_owner ?= {
NOT = { faith.religion = religion:jainism_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:judaism
}
previous_owner ?= {
NOT = { faith.religion = religion:judaism_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:germanic
}
previous_owner ?= {
NOT = { faith.religion = religion:folk_germanic_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:slavic
}
previous_owner ?= {
NOT = { faith.religion = religion:slavic_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:boog
}
previous_owner ?= {
NOT = { faith.religion = religion:west_african_roog_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:hinduism
}
previous_owner ?= {
NOT = { faith.religion = religion:hinduism_religion }
}
}
trigger_else_if = {
limit = {
var:relic = flag:finnic_religion
}
previous_owner ?= {
NOT = { faith.religion = religion:finnic_religion }
}
}
trigger_else = {
always = no #Can't be a desecrated relic with no associated religion
}
exists = previous_owner
is_holy_relic_for = root.faith
NOT = { is_holy_relic_for = previous_owner.faith }
}
artifact.4070 = {
@ -3668,6 +3595,9 @@ artifact.4070 = {
remove_variable = desecrated_artifact_var
}
add_piety = medium_piety_gain
stress_and_fulfillment_impact = {
zealous = medium_stress_impact_loss
}
ai_chance = {
base = 105
ai_value_modifier = {
@ -3684,6 +3614,9 @@ artifact.4070 = {
option = {
name = artifact.4070.b
add_piety = medium_piety_loss
stress_and_fulfillment_impact = {
cynical = minor_stress_impact_loss
}
ai_chance = {
base = 150
ai_value_modifier = {
@ -3719,11 +3652,12 @@ scripted_trigger artifact_4080_valid_weapon_trigger = {
var:artifact_duel_var >= 30
}
}
NOR = {
has_variable = cursed_artifact_var
has_variable = blessed_artifact_var
has_variable = historical_unique_artifact
has_variable = artifact_killer_var
has_none_of_variables = {
name = cursed_artifact_var
name = blessed_artifact_var
name = sanctified_artifact_var
name = historical_unique_artifact
name = artifact_killer_var
}
}
@ -3916,7 +3850,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore
}
any_character_artifact = {
exists = var:relic
is_holy_relic_for = artifact_owner.faith
}
OR = {
employs_court_position = antiquarian_court_position
@ -3956,7 +3890,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore
limit = {
artifact_slot_type = primary_armament
NOT = {
has_variable = added_relic
is_holy_relic_for = artifact_owner.faith
}
}
save_scope_as = this_artifact
@ -3964,7 +3898,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore
random_character_artifact = {
limit = {
exists = var:relic
is_holy_relic_for = artifact_owner.faith
}
save_scope_as = that_artifact
}
@ -3976,6 +3910,10 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore
set_artifact_name = relic_weapon_name
set_artifact_description = artifact_weapon_relic_desc
set_variable = added_relic
set_variable = {
name = added_relic_faith
value = root.faith
}
hidden_effect = {
copy_artifact_modifiers = scope:that_artifact
set_artifact_rarity = illustrious
@ -3995,7 +3933,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore
}
}
stress_impact = {
stress_and_fulfillment_impact = {
zealous = minor_stress_gain
lazy = minor_stress_gain
}
@ -4011,7 +3949,7 @@ artifact.4090 = { #Embed a relic in pommel by Daniel Moore
option = {
name = artifact.4090.b
add_piety = 100
stress_impact = {
stress_and_fulfillment_impact = {
zealous = minor_stress_loss
lazy = minor_stress_loss
}

View file

@ -13,32 +13,36 @@ historical_artifacts.0023 = {
# All starting courts will have a dynasty banner
every_character_with_royal_court = {
save_scope_as = banner_ruler
# House Banner
set_variable = banner_from_house
set_variable = startup_banner
create_artifact_wall_banner_effect = {
OWNER = scope:banner_ruler
CREATOR = scope:banner_ruler
TARGET = scope:banner_ruler.house
}
# Dynasty Banner
If = {
if = {
limit = {
OR = {
this = dynasty.dynast # Dynasty Head
any_parent = { # Parent landless Dynasty Head
employer = prev
dynasty = prev.dynasty
this = dynasty.dynast
}
}
exists = house
}
set_variable = banner_from_dynasty
set_variable = banner_from_house
set_variable = startup_banner
create_artifact_wall_banner_effect = {
OWNER = scope:banner_ruler
CREATOR = scope:banner_ruler
TARGET = scope:banner_ruler.dynasty
TARGET = scope:banner_ruler.house
}
# Dynasty Banner
if = {
limit = {
OR = {
this = dynasty.dynast # Dynasty Head
any_parent = { # Parent landless Dynasty Head
employer = prev
dynasty = prev.dynasty
this = dynasty.dynast
}
}
}
set_variable = banner_from_dynasty
set_variable = startup_banner
create_artifact_wall_banner_effect = {
OWNER = scope:banner_ruler
CREATOR = scope:banner_ruler
TARGET = scope:banner_ruler.dynasty
}
}
}
}
@ -138,10 +142,10 @@ historical_artifacts.0023 = {
}
}
}
# # Historical Artifacts
# ## We do these per-artefact rather than per-title so that they can be easily reshuffled if desired.
# ## Crowns
# ### Iron Crown of Lombardy
# Historical Artifacts
## We do these per-artifact rather than per-title so that they can be easily reshuffled if desired.
## Crowns
### Iron Crown of Lombardy
if = {
limit = {
has_dlc_feature = royal_court
@ -1399,3 +1403,85 @@ historical_artifacts.0100 = {
}
}
}
# Seeds starting holy relics for holy sites
historical_artifacts.0050 = {
scope = none
hidden = yes
immediate = {
every_religion_global = {
every_faith = {
save_scope_as = relic_faith
# Eminent holy sites get the higher-rarity dispatcher.
every_eminent_holy_site = {
save_scope_as = relic_site
holy_site_county = {
if = {
limit = {
exists = holder
holder.faith = scope:relic_faith
}
holder = { save_scope_as = relic_owner }
create_starting_holy_relic_eminent_effect = yes
}
}
}
# Regular holy sites get the lower-rarity dispatcher.
every_holy_site = {
is_eminent = no
save_scope_as = relic_site
holy_site_county = {
if = {
limit = {
exists = holder
holder.faith = scope:relic_faith
}
holder = { save_scope_as = relic_owner }
create_starting_holy_relic_regular_effect = yes
}
}
}
}
}
# Pass 2: Tolerated eminent-site relics.
every_religion_global = {
every_faith = {
save_scope_as = relic_faith
if = {
limit = {
num_county_followers >= 3 # only check for faiths that are somewhat alive
}
every_eminent_holy_site = {
limit = {
holy_site_has_artifact = no
}
save_scope_as = relic_site
holy_site_county = {
if = {
limit = {
exists = holder
holder.faith = {
faith_hostility_level = {
target = scope:relic_faith
value <= faith_astray_level
}
}
}
# A temporary creator lets the relic inherit their faith
ordered_ruler = {
faith_filter = scope:relic_faith
order_by = highest_held_title_tier
max = 1
save_scope_as = relic_owner
create_starting_holy_relic_eminent_effect = yes
}
}
}
}
}
}
}
}
}