N3OW/events/dlc/ach/ach_yearly_events.txt
2026-01-06 14:25:21 +01:00

2198 lines
43 KiB
Text

namespace = ach_yearly_events
ach_yearly_events.1001 = {
type = character_event
title = ach_yearly_events.1001.t
desc = ach_yearly_events.1001.desc
theme = stewardship
left_portrait = {
character = root
animation = happy_teacher
}
right_portrait = {
character = scope:liege
animation = thinking
}
trigger = {
#Standard checks
basic_is_valid_for_yearly_events_trigger = yes
is_adult = yes
is_councillor = yes
has_council_position = councillor_steward
liege = {
is_available_ai = yes
age >= 10
}
stewardship > liege.stewardship
stewardship >= decent_skill_rating
}
immediate = {
liege = {
save_scope_as = liege
}
}
weight_multiplier = {
modifier = {
factor = 0.1
is_ai = yes
}
}
cooldown = { years = 20 }
# Well, you could always give it to me to use...
option = {
name = ach_yearly_events.1001.a
trigger = {
OR = {
has_trait = deceitful
intrigue >= high_skill_rating
}
NOR = {
has_trait = just
has_trait = honest
}
scope:liege = {
is_ai = yes
}
}
duel = {
skill = intrigue
target = scope:liege
50 = {
compare_modifier = {
value = scope:duel_value
multiplier = 3.5
}
desc = ach_yearly_events.1001.a.success
modifier = {
add = 20
scope:liege = {
has_trait = trusting
}
}
send_interface_toast = {
title = ach_yearly_events.1001.a.success
left_icon = root
right_icon = scope:liege
scope:liege = {
pay_short_term_gold = {
target = root
gold = minor_gold_value
}
}
}
}
50 = {
compare_modifier = {
value = scope:duel_value
multiplier = -3.5
}
desc = ach_yearly_events.1001.a.failure
modifier = {
add = 10
scope:liege = {
has_trait = paranoid
}
}
send_interface_toast = {
title = ach_yearly_events.1001.a.failure
left_icon = root
right_icon = scope:liege
reverse_add_opinion = {
modifier = suspicion_opinion
target = scope:liege
opinion = -25
}
}
}
}
ai_chance = {
base = 50
ai_value_modifier = {
ai_honor = -0.5
ai_boldness = 0.5
ai_greed = 1
}
}
}
# Being cautious is useful for a rainy day
option = {
name = ach_yearly_events.1001.b
add_character_modifier = {
modifier = ach_spending_advice_modifier
years = 10
}
if = {
limit = {
scope:liege = {
is_ai = yes
}
}
scope:liege = {
add_character_modifier = {
modifier = ach_cautious_spender_modifier
years = 10
}
}
}
stress_impact = {
lazy = minor_stress_impact_gain
impatient = minor_stress_impact_gain
patient = minor_stress_impact_loss
diligent = minor_stress_impact_loss
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_boldness = -1
ai_greed = -0.5
}
}
}
# You're the king, go crazy bro!
option = {
name = ach_yearly_events.1001.c
add_character_modifier = {
modifier = ach_spending_advice_modifier
years = 10
}
if = {
limit = {
scope:liege = {
is_ai = yes
}
}
scope:liege = {
add_character_modifier = {
modifier = ach_extravagant_spender_modifier
years = 10
}
}
}
stress_impact = {
lazy = minor_stress_impact_gain
impatient = minor_stress_impact_gain
patient = minor_stress_impact_loss
diligent = minor_stress_impact_loss
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_boldness = 1
ai_greed = 0.5
}
}
}
# Perhaps a balanced approach?
option = {
name = ach_yearly_events.1001.d
duel = {
skill = diplomacy
target = scope:liege
50 = { #Your liege is impressed
compare_modifier = {
value = scope:duel_value
multiplier = 3.5
}
desc = ach_yearly_events.1001.d.success
modifier = {
add = 20
scope:liege = {
has_trait = ambitious
}
}
send_interface_toast = {
title = ach_yearly_events.1001.d.success
left_icon = root
right_icon = scope:liege
add_prestige = medium_prestige_gain
add_character_modifier = {
modifier = ach_budgeting_mentor_modifier
years = 10
}
if = {
limit = {
scope:liege = {
is_ai = yes
}
}
scope:liege = {
add_character_modifier = {
modifier = ach_balanced_budget_modifier
years = 10
}
}
}
}
}
50 = { #Your liege is unimpressed
compare_modifier = {
value = scope:duel_value
multiplier = -3.5
}
desc = ach_yearly_events.1001.d.failure
modifier = {
add = 10
scope:liege = {
has_trait = content
}
}
send_interface_toast = {
title = ach_yearly_events.1001.d.failure
left_icon = root
right_icon = scope:liege
add_prestige = minor_prestige_loss
add_character_modifier = {
modifier = ach_fence_sitter_modifier
years = 10
}
}
}
}
stress_impact = {
content = minor_stress_impact_loss
ambitious = minor_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_boldness = -1
}
}
}
}
scripted_trigger ach_yearly_events_1002_non_joined_trigger = {
NOR = {
scope:faction = {
any_faction_member = {
this = scope:temp_vassal
}
}
this = root
}
can_join_faction = scope:faction
is_incapable = no
opinion = {
target = liege
value <= 30
}
is_ai = yes
}
#You're the Chancellor and your liege has a faction
ach_yearly_events.1002 = {
type = character_event
title = ach_yearly_events.1002.t
desc = ach_yearly_events.1002.desc
theme = diplomacy
override_background = {
reference = ep3_relaxing_tent
}
left_portrait = {
character = scope:unjoined_vassal
animation = scheme
}
right_portrait = {
character = scope:faction_member
animation = bribing
}
lower_center_portrait = scope:liege
cooldown = { years = 10 }
trigger = {
is_independent_ruler = no
liege = {
cp:councillor_chancellor ?= {
this = root
}
any_targeting_faction = {
NOT = {
any_faction_member = {
this = root
}
}
any_faction_member = {
count >= 2
}
any_faction_member = {
is_ai = yes
is_a_faction_leader = no
}
save_temporary_scope_as = temp_faction
}
any_vassal = {
save_temporary_scope_as = temp_vassal
NOR = {
scope:temp_faction = {
any_faction_member = {
this = scope:temp_vassal
}
}
this = root
}
can_join_faction = scope:temp_faction
is_incapable = no
opinion = {
target = liege
value <= 30
}
is_ai = yes
}
NOT = {
has_character_flag = had_ach_yearly_events_1002
}
}
basic_is_valid_for_yearly_events_trigger = yes
}
immediate = {
liege = {
save_scope_as = liege
add_character_flag = {
flag = had_ach_yearly_events_1002
years = 10
}
random_targeting_faction = {
limit = {
NOT = {
any_faction_member = {
this = root
}
}
any_faction_member = {
count >= 2
}
}
save_scope_as = faction
random_faction_member = {
limit = {
is_a_faction_leader = no
is_ai = yes
}
save_scope_as = faction_member
}
}
random_vassal = {
limit = {
scope:faction = {
OR = {
faction_is_type = independence_faction
faction_is_type = nation_fracturing_faction
}
}
save_temporary_scope_as = temp_vassal
primary_title = {
NOT = {
target_is_de_jure_liege_or_above = scope:liege.primary_title
}
}
is_powerful_vassal_of = scope:liege
ach_yearly_events_1002_non_joined_trigger = yes
opinion = {
target = liege
value < 0
}
}
alternative_limit = {
scope:faction = {
OR = {
faction_is_type = independence_faction
faction_is_type = nation_fracturing_faction
}
}
save_temporary_scope_as = temp_vassal
primary_title = {
NOT = {
target_is_de_jure_liege_or_above = scope:liege.primary_title
}
}
is_powerful_vassal_of = scope:liege
ach_yearly_events_1002_non_joined_trigger = yes
}
alternative_limit = {
scope:faction = {
OR = {
faction_is_type = independence_faction
faction_is_type = nation_fracturing_faction
}
}
save_temporary_scope_as = temp_vassal
primary_title = {
NOT = {
target_is_de_jure_liege_or_above = scope:liege.primary_title
}
}
ach_yearly_events_1002_non_joined_trigger = yes
opinion = {
target = liege
value < 0
}
}
alternative_limit = {
scope:faction = {
OR = {
faction_is_type = independence_faction
faction_is_type = nation_fracturing_faction
}
}
save_temporary_scope_as = temp_vassal
primary_title = {
NOT = {
target_is_de_jure_liege_or_above = scope:liege.primary_title
}
}
ach_yearly_events_1002_non_joined_trigger = yes
}
alternative_limit = {
save_temporary_scope_as = temp_vassal
is_powerful_vassal_of = scope:liege
opinion = {
target = liege
value <= -50
}
ach_yearly_events_1002_non_joined_trigger = yes
}
alternative_limit = {
save_temporary_scope_as = temp_vassal
is_powerful_vassal_of = scope:liege
opinion = {
target = liege
value < 0
}
ach_yearly_events_1002_non_joined_trigger = yes
}
alternative_limit = {
save_temporary_scope_as = temp_vassal
opinion = {
target = liege
value <= -50
}
ach_yearly_events_1002_non_joined_trigger = yes
}
alternative_limit = {
save_temporary_scope_as = temp_vassal
ach_yearly_events_1002_non_joined_trigger = yes
opinion = {
target = liege
value < 0
}
}
alternative_limit = {
save_temporary_scope_as = temp_vassal
ach_yearly_events_1002_non_joined_trigger = yes
}
save_scope_as = unjoined_vassal
}
}
}
#You're such a seasoned chancellor, you can stop other players from joining
option = {
name = ach_yearly_events.1002.a
trigger = { diplomacy >= very_high_skill_rating }
add_diplomacy_lifestyle_xp = medium_lifestyle_xp
scope:liege = {
send_interface_message = {
type = msg_chancellor_task_good
title = chancellor_isolates_factions_title
desc = chancellor_isolates_factions_desc
left_icon = root
add_character_modifier = {
modifier = ach_chancellor_isolating_factions_modifier
years = 5
}
scope:unjoined_vassal = {
add_opinion = {
modifier = loyalty_opinion
target = scope:liege
opinion = 40
}
}
}
}
stress_impact = {
impatient = minor_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_sociability = 0.5
ai_energy = -0.5
}
modifier = {
add = -50
has_trait = impatient
}
}
}
#Try to stop other characters from joining
option = {
name = ach_yearly_events.1002.b
trigger = { diplomacy < very_high_skill_rating }
add_diplomacy_lifestyle_xp = medium_lifestyle_xp
duel = {
skill = diplomacy
value = medium_skill_rating
50 = { #You reorganize the administration and plan for the future
desc = ach_yearly_events.1002.b.success
compare_modifier = {
value = scope:duel_value
multiplier = 3.5
min = -49
}
send_interface_toast = {
type = event_toast_effect_good
title = ach_yearly_events.1002.b.success
left_icon = root
right_icon = scope:liege
scope:liege = {
send_interface_message = {
type = msg_chancellor_task_good
title = chancellor_isolates_factions_title
desc = chancellor_isolates_factions_desc
left_icon = root
add_character_modifier = {
modifier = ach_chancellor_isolating_factions_modifier
years = 5
}
scope:unjoined_vassal = {
add_opinion = {
modifier = loyalty_opinion
target = scope:liege
opinion = 40
}
}
}
}
}
}
50 = { #You fail so bad you drive the character into the faction
desc = ach_yearly_events.1002.b.failure
compare_modifier = {
value = scope:duel_value
multiplier = -3.5
min = -49
}
send_interface_toast = {
type = event_toast_effect_bad
title = ach_yearly_events.1002.b.failure
left_icon = root
right_icon = scope:liege
add_stress = minor_stress_gain
scope:unjoined_vassal = {
join_faction = scope:faction
}
}
}
}
stress_impact = {
impatient = minor_stress_impact_gain
}
ai_chance = {
base = 50
ai_value_modifier = {
ai_sociability = 0.5
ai_energy = -0.5
}
modifier = {
add = -50
has_trait = impatient
}
modifier = {
add = 50
diplomacy > high_skill_rating
}
modifier = {
add = 50
diplomacy >= extremely_high_skill_rating
}
modifier = {
add = -50
diplomacy < medium_skill_rating
}
modifier = {
factor = 0
diplomacy <= low_skill_rating
}
}
}
#They have a point...
option = {
name = ach_yearly_events.1002.c
flavor = ach_yearly_events.1002.c.flavor
trigger = {
can_join_faction = scope:faction
OR = {
NOT = {
scope:faction = {
OR = {
faction_is_type = independence_faction
faction_is_type = nation_fracturing_faction
}
}
}
OR = {
has_trait = ambitious
has_trait = greedy
has_trait = arrogant
has_trait = arbitrary
has_trait = fickle
has_trait = eccentric
has_trait = disloyal
primary_title = {
NOT = {
target_is_de_jure_liege_or_above = scope:liege.primary_title
}
}
}
}
}
add_internal_flag = dangerous
join_faction = scope:faction
scope:unjoined_vassal = {
join_faction = scope:faction
}
reverse_add_opinion = {
modifier = betrayal_opinion
target = scope:liege
opinion = -30
}
add_joined_faction_discontent = 20
stress_impact = {
arrogant = miniscule_stress_impact_loss
loyal = minor_stress_impact_gain
trusting = medium_stress_impact_gain
just = medium_stress_impact_gain
content = medium_stress_impact_gain
humble = major_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_honor = -1
ai_greed = 1
}
modifier = {
add = -75
scope:faction = {
OR = {
faction_is_type = independence_faction
faction_is_type = nation_fracturing_faction
}
}
primary_title = {
target_is_de_jure_liege_or_above = scope:liege.primary_title
}
}
modifier = {
add = 100
scope:faction = {
OR = {
faction_is_type = independence_faction
faction_is_type = nation_fracturing_faction
}
}
primary_title = {
NOT = {
target_is_de_jure_liege_or_above = scope:liege.primary_title
}
}
}
modifier = {
add = 50
has_trait = disloyal
}
modifier = {
add = -50
has_trait = loyal
}
modifier = {
factor = 0
OR = {
has_trait = trusting
has_trait = just
has_trait = content
has_trait = humble
}
}
}
}
#Remove existing faction member
option = {
name = ach_yearly_events.1002.d
flavor = ach_yearly_events.1002.d.flavor
reverse_add_opinion = {
target = scope:liege
modifier = grateful_opinion
opinion = 30
}
scope:liege = {
send_interface_message = {
type = msg_chancellor_task_good
title = chancellor_removes_faction_member_title
desc = chancellor_removes_faction_member_desc
left_icon = root
scope:faction_member = {
leave_faction = scope:faction
}
}
}
#Modifier that applies effect which makes vassals less likely to join factions
if = {
limit = {
scope:faction = {
any_faction_member = {
NOT = {
this = scope:faction_member
}
}
}
}
scope:faction = {
every_faction_member = {
custom = custom.every_scope_faction_member
limit = {
NOT = {
this = scope:faction_member
}
}
add_opinion = {
modifier = angry_opinion
target = root
opinion = -20
}
}
}
}
stress_impact = {
patient = minor_stress_impact_gain
craven = minor_stress_impact_gain
gregarious = minor_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_sociability = -0.5
ai_energy = 0.5
}
modifier = {
add = -50
OR = {
has_trait = patient
has_trait = craven
has_trait = gregarious
}
}
}
}
}
#You're the marshal and your liege just lost a big battle
ach_yearly_events.1003 = {
type = character_event
title = ach_yearly_events.1003.t
desc = ach_yearly_events.1003.desc
theme = martial
override_background = {
reference = battlefield
}
override_effect_2d = {
trigger = {
NOR = {
scope:battle_province = {
terrain = desert
}
scope:battle_province = {
terrain = desert_mountains
}
scope:battle_province = {
terrain = drylands
}
scope:battle_province = {
terrain = oasis
}
scope:battle_province = {
location_has_harsh_winter_trigger = yes
}
}
}
reference = rain
}
left_portrait = {
character = scope:commander
triggered_animation = {
trigger = {
scope:commander = {
NOT = { this = scope:liege }
}
}
animation = sword_yield_start
}
triggered_animation = {
trigger = {
scope:commander = {
this = scope:liege
}
}
animation = war_over_loss
}
}
lower_right_portrait = scope:foe
lower_left_portrait = scope:show_liege
trigger = {
basic_is_valid_for_yearly_events_trigger = yes
is_at_war = no
liege = { is_landed = yes }
has_council_position = councillor_marshal
}
immediate = {
liege ?= {
save_scope_as = liege
add_character_flag = {
flag = had_ach_yearly_events_1003
years = 10
}
}
if = {
limit = {
OR = {
NOT = {
exists = scope:commander
}
scope:commander = scope:liege
scope:commander = root
}
}
liege = {
save_scope_as = commander
}
}
else = {
liege = {
save_scope_as = show_liege
}
}
}
cooldown = { years = 10 }
#I AM GOOD MARSHAL AND CAN SORT THIS
option = {
name = ach_yearly_events.1003.a
trigger = {
martial >= very_high_skill_rating
}
add_martial_lifestyle_xp = medium_lifestyle_xp
scope:liege = {
send_interface_message = {
type = msg_marshal_task_good
title = marshal_aids_troop_recovery_title
desc = marshal_aids_troop_recovery_desc
left_icon = root
add_character_modifier = {
modifier = ach_marshal_reconstituting_army_modifier
years = 2
}
}
}
stress_impact = {
lazy = minor_stress_impact_gain
fickle = minor_stress_impact_gain
}
ai_chance = {
base = 200
ai_value_modifier = {
ai_energy = 1
ai_honor = 0.5
ai_rationality = 0.5
}
modifier = {
opinion = {
target = liege
value < -50
}
add = -50
}
modifier = {
opinion = {
target = liege
value < 0
}
add = -25
}
modifier = {
opinion = {
target = liege
value >= 50
}
add = 25
}
modifier = {
opinion = {
target = liege
value > 75
}
add = 50
}
modifier = {
OR = {
has_trait = lazy
has_trait = fickle
}
add = -50
}
modifier = {
opinion = {
target = liege
value < -80
}
factor = 0
}
}
}
#I AM HONORABLE AND WILL FIGHT TOO
option = {
name = ach_yearly_events.1003.b
save_scope_as = marshal
scope:liege = {
send_interface_message = {
type = msg_marshal_task_good
title = marshal_joins_war_title
desc = marshal_joins_war_desc
left_icon = root
scope:liege_war = {
if = {
limit = {
primary_attacker = scope:liege
}
add_attacker = root
}
else = {
add_defender = root
}
}
}
every_vassal = {
custom = custom.every_fellow_vassal
limit = {
NOT = {
this = root
}
}
add_opinion = {
target = root
modifier = impressed_opinion
opinion = 10
}
}
}
reverse_add_opinion = {
modifier = grateful_opinion
target = scope:liege
opinion = 25
}
if = {
limit = {
OR = {
NOT = { has_trait = loyal }
AND = {
NOT = { has_trait = unyielding_defender }
scope:liege_war = {
primary_defender = scope:liege
}
}
AND = {
NOT = { has_trait = aggressive_attacker }
scope:liege_war = {
primary_attacker = scope:liege
}
}
}
}
random_list = {
10 = {
trigger = {
NOT = { has_trait = unyielding_defender }
scope:liege_war = {
primary_defender = scope:liege
}
}
add_trait = unyielding_defender
}
10 = {
trigger = {
NOT = { has_trait = aggressive_attacker }
scope:liege_war = {
primary_attacker = scope:liege
}
}
add_trait = aggressive_attacker
}
20 = {
trigger = {
NOT = { has_trait = loyal }
}
add_trait = loyal
}
70 = {}
}
}
else = {
add_prestige = minor_prestige_gain
}
stress_impact = {
arbitrary = major_stress_impact_gain
craven = major_stress_impact_gain
lazy = medium_stress_impact_gain
calm = minor_stress_impact_gain
paranoid = minor_stress_impact_gain
fickle = minor_stress_impact_gain
}
ai_chance = {
base = 0
ai_value_modifier = {
ai_honor = 1
ai_compassion = 1
ai_boldness = 1
}
modifier = {
opinion = {
target = liege
value < -50
}
add = -100
}
modifier = {
opinion = {
target = liege
value < 0
}
add = -50
}
modifier = {
opinion = {
target = liege
value >= 50
}
add = 50
}
modifier = {
opinion = {
target = liege
value >= 75
}
add = 50
}
modifier = {
OR = {
has_trait = calm
has_trait = paranoid
has_trait = fickle
}
add = -50
}
modifier = {
OR = {
has_trait = arbitrary
has_trait = craven
has_trait = lazy
opinion = {
target = liege
value < -50
}
}
}
}
}
#I'll try to help him recover... although I'm not great at marshaling
option = {
name = ach_yearly_events.1003.c
trigger = {
martial < very_high_skill_rating
}
show_unlock_reason = no
add_martial_lifestyle_xp = medium_lifestyle_xp
duel = {
skill = martial
value = medium_skill_rating
50 = { #The army is restored
desc = ach_yearly_events.1003.c.success
compare_modifier = {
value = scope:duel_value
multiplier = 3.5
min = -49
}
send_interface_toast = {
type = event_toast_effect_good
title = ach_yearly_events.1003.c.success
left_icon = root
right_icon = scope:liege
scope:liege = {
send_interface_message = {
type = msg_marshal_task_good
title = marshal_aids_troop_recovery_title
desc = marshal_aids_troop_recovery_desc
left_icon = root
add_character_modifier = {
modifier = ach_marshal_reconstituting_army_modifier
years = 2
}
}
}
}
}
50 = { #Everything remains in shambles
desc = ach_yearly_events.1003.c.failure
compare_modifier = {
value = scope:duel_value
multiplier = -3.5
min = -49
}
send_interface_toast = {
type = event_toast_effect_bad
title = ach_yearly_events.1003.c.failure
left_icon = root
right_icon = scope:liege
add_prestige = minor_prestige_loss
}
}
}
stress_impact = {
lazy = minor_stress_impact_gain
fickle = minor_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_energy = 1
ai_honor = 0.5
ai_rationality = 0.5
}
modifier = {
opinion = {
target = liege
value < -50
}
add = -50
}
modifier = {
opinion = {
target = liege
value < 0
}
add = -25
}
modifier = {
opinion = {
target = liege
value >= 50
}
add = 25
}
modifier = {
opinion = {
target = liege
value > 75
}
add = 50
}
modifier = {
OR = {
has_trait = lazy
has_trait = fickle
}
add = -50
}
modifier = {
opinion = {
target = liege
value < -80
}
factor = 0
}
}
}
#My liege deserves this mess and so do his terrible troops
option = {
name = ach_yearly_events.1003.d
flavor = ach_yearly_events.1003.d.flavor
add_dread = minor_dread_gain
reverse_add_opinion = {
modifier = frustrated_opinion
target = scope:liege
opinion = -10
}
stress_impact = {
compassionate = medium_stress_impact_gain
generous = minor_stress_impact_gain
diligent = medium_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_compassion = -1
ai_energy = -1
}
modifier = {
add = -50
OR = {
has_trait = generous
}
}
modifier = {
factor = 0
OR = {
has_trait = diligent
has_trait = compassionate
}
}
}
}
after = {
if = {
limit = {
exists = scope:foe
is_at_war_with = scope:foe
}
scope:foe = {
send_interface_message = {
type = msg_marshal_task_bad
title = marshal_joins_war_title_foe
desc = marshal_joins_war_desc_foe
left_icon = root
}
}
}
}
}
#You're the steward and your liege is broke
ach_yearly_events.1004 = {
type = character_event
title = ach_yearly_events.1004.t
desc = {
desc = ach_yearly_events.1004.desc
first_valid = {
triggered_desc = {
trigger = {
scope:liege = {
OR = {
has_trait = humble
has_trait = patient
has_trait = temperate
has_trait = compassionate
has_trait = calm
has_trait = forgiving
}
}
}
desc = ach_yearly_events.1004.desc_end
}
desc = ach_yearly_events.1004.desc_harsh
}
}
theme = stewardship
override_background = {
trigger = {
liege = {
culture = {
OR = {
has_graphical_mediterranean_culture_group_trigger = yes
has_graphical_mena_culture_group_trigger = yes
has_graphical_african_culture_group_trigger = yes
}
}
NOT = { government_has_flag = government_is_tribal }
}
}
reference = ep3_city_gate
}
override_background = {
trigger = {
liege = {
OR = {
culture = {
NOR = {
has_graphical_mediterranean_culture_group_trigger = yes
has_graphical_mena_culture_group_trigger = yes
has_graphical_african_culture_group_trigger = yes
}
}
government_has_flag = government_is_tribal
}
}
}
reference = market
}
left_portrait = {
character = root
animation = debating
camera = camera_event_left_away_3_4
}
right_portrait = {
character = scope:liege
animation = jockey_wave
camera = camera_event_horse_right
}
cooldown = { years = 10 }
trigger = {
is_independent_ruler = no
liege ?= {
age >= 10
cp:councillor_steward ?= {
this = root
}
OR = {
gold < 0
AND = {
monthly_character_income < 0
is_at_war = no
gold <= medium_gold_value
}
}
NOT = {
has_character_flag = had_ach_yearly_1004
}
basic_is_available_ai = yes
NOT = { exists = involved_activity }
is_travelling = no
}
basic_is_valid_for_yearly_events_trigger = yes
}
immediate = {
liege = {
save_scope_as = liege
add_character_flag = {
flag = had_ach_yearly_1004
years = 10
}
}
}
#A quick cash injection, by any means!
option = {
name = ach_yearly_events.1004.a
flavor = ach_yearly_events.1004.a.flavor
trigger = {
liege = {
any_powerful_vassal = {
is_ai = yes
NOT = { this = root }
NOT = { is_at_war_with = scope:liege }
}
}
}
reverse_add_opinion = {
target = scope:liege
modifier = grateful_opinion
opinion = 40
}
pay_short_term_gold = {
target = scope:liege
gold = minor_gold_value
}
scope:liege = {
every_powerful_vassal = {
custom = custom.every_liege_lending_vassal
limit = {
is_ai = yes
NOT = { this = root }
NOT = { is_at_war_with = scope:liege }
}
pay_short_term_gold = {
target = scope:liege
gold = scope:liege.minor_gold_value
}
add_opinion = {
target = root
modifier = irritated_opinion
opinion = -25
}
}
}
hidden_effect = {
scope:liege = {
send_interface_message = {
type = msg_steward_task_good
title = steward_gathers_emergency_tithe_title
desc = steward_gathers_emergency_tithe_desc
left_icon = root
show_as_tooltip = {
add_gold = major_gold_value
}
}
}
}
stress_impact = {
greedy = medium_stress_impact_gain
paranoid = medium_stress_impact_gain
arrogant = major_stress_impact_gain
vengeful = minor_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_greed = -1
ai_compassion = 1
}
modifier = {
add = -50
opinion = {
target = scope:liege
value < 0
}
}
modifier = {
add = 50
opinion = {
target = scope:liege
value > 50
}
}
modifier = {
add = -50
OR = {
gold < major_gold_value
has_trait = vengeful
}
}
modifier = {
factor = 0
OR = {
gold < medium_gold_value
opinion = {
target = scope:liege
value < -50
}
has_trait = greedy
has_trait = paranoid
has_trait = arrogant
}
}
}
}
#My liege needs steady income coming in, not cash now
option = {
name = ach_yearly_events.1004.b
trigger = {
stewardship < very_high_skill_rating
}
add_stewardship_lifestyle_xp = medium_lifestyle_xp
duel = {
skill = stewardship
value = average_skill_rating
50 = { #You reorganize the administration and plan for the future
desc = ach_yearly_events.1004.b.success
compare_modifier = {
value = scope:duel_value
multiplier = 3.5
min = -49
}
send_interface_toast = {
type = event_toast_effect_good
title = ach_yearly_events.1004.b.success
left_icon = root
right_icon = scope:liege
scope:liege = {
#Only shown because of custom loc making it look right
show_as_tooltip = {
every_held_title = {
custom = custom.every_liege_domain_county
limit = {
tier = tier_county
NOT = {
any_county_province = {
is_occupied = yes
}
}
}
add_county_modifier = {
modifier = ach_stewardship_bankruptcy_modifier
years = 10
}
}
}
send_interface_message = {
type = msg_steward_task_good
title = steward_aids_financial_recovery_title
desc = steward_aids_financial_recovery_desc
left_icon = root
#hidden because of custom loc making it look right
hidden_effect = {
every_held_title = {
custom = custom.every_domain_county
limit = {
tier = tier_county
NOT = {
any_county_province = {
is_occupied = yes
}
}
}
add_county_modifier = {
modifier = ach_stewardship_bankruptcy_modifier
years = 10
}
}
}
}
}
}
}
50 = { #You fail so bad you doubt your abilities
desc = ach_yearly_events.1004.b.failure
compare_modifier = {
value = scope:duel_value
multiplier = -3.5
min = -49
}
send_interface_toast = {
type = event_toast_effect_bad
title = ach_yearly_events.1004.b.failure
left_icon = root
right_icon = scope:liege
add_stress = medium_stress_gain
}
}
}
stress_impact = {
diligent = miniscule_stress_impact_loss
lazy = medium_stress_impact_gain
impatient = major_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_rationality = 1
ai_energy = 1
}
modifier = {
add = -50
opinion = {
target = scope:liege
value < -50
}
}
modifier = {
add = -25
opinion = {
target = scope:liege
value < 0
}
}
modifier = {
add = 25
opinion = {
target = scope:liege
value > 50
}
}
modifier = {
add = -50
stewardship <= average_skill_rating
}
modifier = {
factor = 0
OR = {
stewardship < low_skill_rating
has_trait = lazy
has_trait = impatient
}
}
}
}
#I am the god-tier steward that can easily reform the realm to get more tax
option = {
name = ach_yearly_events.1004.c
trigger = {
stewardship >= very_high_skill_rating
}
add_stewardship_lifestyle_xp = medium_lifestyle_xp
scope:liege = {
#Only shown because of custom loc making it look right
show_as_tooltip = {
every_held_title = {
custom = custom.every_liege_domain_county
limit = {
tier = tier_county
NOT = {
any_county_province = {
is_occupied = yes
}
}
}
add_county_modifier = {
modifier = ach_stewardship_bankruptcy_modifier
years = 10
}
}
}
send_interface_message = {
type = msg_steward_task_good
title = steward_aids_financial_recovery_title
desc = steward_aids_financial_recovery_desc
left_icon = root
#hidden because of custom loc making it look right
hidden_effect = {
every_held_title = {
custom = custom.every_domain_county
limit = {
tier = tier_county
NOT = {
any_county_province = {
is_occupied = yes
}
}
}
add_county_modifier = {
modifier = ach_stewardship_bankruptcy_modifier
years = 10
}
}
}
}
}
stress_impact = {
diligent = miniscule_stress_impact_loss
lazy = medium_stress_impact_gain
impatient = major_stress_impact_gain
}
ai_chance = {
base = 150
ai_value_modifier = {
ai_rationality = 1
ai_energy = 1
}
modifier = {
add = -50
opinion = {
target = scope:liege
value < -50
}
}
modifier = {
add = -25
opinion = {
target = scope:liege
value < 0
}
}
modifier = {
add = 25
opinion = {
target = scope:liege
value > 50
}
}
modifier = {
factor = 0
OR = {
stewardship < low_skill_rating
has_trait = lazy
has_trait = impatient
}
}
}
}
#I can just welcome his creditors and the impoverished into my domain
option = {
name = ach_yearly_events.1004.d
flavor = ach_yearly_events.1004.d.flavor
capital_county = {
add_county_modifier = {
modifier = ach_welcoming_lieges_creditors_modifier
years = 10
}
}
reverse_add_opinion = {
target = scope:liege
modifier = insult_opinion
opinion = -25
}
stress_impact = {
forgiving = medium_stress_impact_gain
generous = major_stress_impact_gain
diligent = medium_stress_impact_gain
}
ai_chance = {
base = 100
ai_value_modifier = {
ai_vengefulness = 1
ai_greed = 1
}
modifier = {
add = -50
opinion = {
target = scope:liege
value > 50
}
}
modifier = {
add = -25
opinion = {
target = scope:liege
value > 0
}
}
modifier = {
add = 50
opinion = {
target = scope:liege
value < -50
}
}
modifier = {
factor = 0
OR = {
has_trait = forgiving
has_trait = generous
has_trait = diligent
}
}
}
}
}
ach_yearly_events.1005 = { #Coronation call to action if player forgetii
type = character_event
title = ach_yearly_events.1005.t
desc = ach_yearly_events.1005.desc
theme = coronation
left_portrait = {
character = root
animation = personality_bold
}
trigger = {
has_ach_dlc_trigger = yes
is_ai = no
primary_title.tier >= tier_kingdom
has_realm_law = uncrowned
NOR = {
has_character_flag = had_coronation_reminder
any_sponsored_inspiration = { has_inspiration_type = smith_inspiration }
}
is_available_adult = yes
}
on_trigger_fail = {
if = {
limit = {
primary_title.tier >= tier_kingdom
has_realm_law = uncrowned
NOT = { has_character_flag = had_coronation_reminder }
}
trigger_event = {
id = ach_yearly_events.1005
years = 1
}
}
}
immediate = {
add_character_flag = had_coronation_reminder
if = {
limit = {
exists = cp:councillor_chancellor
}
cp:councillor_chancellor = { save_scope_as = messenger }
}
else_if = {
limit = {
any_councillor = {
is_kurultai_trigger = yes
}
}
random_councillor = {
limit = {
is_kurultai_trigger = yes
}
save_scope_as = messenger
}
}
else = {
random_vassal = { save_scope_as = messenger }
}
}
option = { #Get me a crown worthy of GetPrimaryTitle.GetName!
name = ach_yearly_events.1005.a
trigger = { coronation_has_proper_artifact_trigger = no }
custom_tooltip = court_maintenance.0011.coronation.tooltip
create_proper_coronation_artifact = yes
}
option = { #Ye, let's have it
name = ach_yearly_events.1005.b
trigger = { coronation_has_proper_artifact_trigger = yes }
custom_tooltip = fund_inspiration.1001.b.coronation_ready
open_view_data = {
view = activity_list_detail_host_window
data = activity_type:activity_coronation
player = root
}
}
option = {
name = ach_yearly_events.1005.c
custom_tooltip = court_maintenance.0011.b.tooltip.ach
}
}
scripted_trigger ach_yearly_events_1010_fawner_trigger = {
is_alive = yes
is_imprisoned = no
is_incapable = no
has_contagious_deadly_disease_trigger = no
is_adult = yes
NOT = {
has_any_bad_relationship_with_character_trigger = { CHARACTER = root }
}
opinion = {
target = root
value > 0
}
NOR = {
is_consort_of = root
is_close_family_of = root
}
}
#Emperor+ becoming uncrowned again
ach_yearly_events.1010 = { #Coronation call to action if player forgetii
type = character_event
title = ach_yearly_events.1010.t
desc = {
desc = ach_yearly_events.1010.desc
first_valid = {
triggered_desc = {
trigger = {
exists = scope:vassal_title_2
}
desc = ach_yearly_events.1010.desc_vassals
}
desc = ach_yearly_events.1010.desc_no_vassals
}
first_valid = {
triggered_desc = {
trigger = {
coronation_proper_artifact_regalia_trigger = yes
}
desc = ach_yearly_events.1010.desc_outro_regalia
}
desc = ach_yearly_events.1010.desc_outro_crown
}
}
window = big_event_window
theme = coronation
override_background = {
reference = holy_site_unique
}
left_portrait = {
character = scope:fawner_2
animation = throne_room_cheer_1
camera = camera_event_left_away_3_4
}
center_portrait = {
character = root
triggered_animation = {
trigger = {
OR = {
has_trait = eccentric
has_trait = lunatic_1
has_trait = lunatic_genetic
ai_rationality <= high_negative_ai_value
}
ai_greed > low_positive_ai_value
}
animation = manic
}
triggered_animation = {
trigger = {
ai_compassion > low_positive_ai_value
NOR = {
has_trait = depressed
has_trait = temperate
has_trait = cynical
has_trait = callous
has_trait = sadistic
has_trait = vengeful
has_trait = just
has_trait = arrogant
has_trait = ambitious
has_trait = paranoid
dread >= 20
}
}
animation = personality_compassionate
}
triggered_animation = {
trigger = {
has_lifestyle = martial_lifestyle
}
animation = marshal
}
animation = war_over_win
}
right_portrait = {
character = scope:fawner
animation = throne_room_cheer_2
camera = camera_event_right_away_3_4
}
override_effect_2d = {
reference = legend_glow
}
immediate = {
#Sorry dawg
show_as_tooltip = { add_realm_law = uncrowned }
custom_tooltip = ach_coronation_suggestion_tt
primary_title = {
save_scope_as = new_title
random_direct_de_jure_vassal_title = {
limit = {
OR = {
holder.top_liege = root
holder.suzerain = root
NOR = {
exists = holder
this = scope:title
}
}
}
save_scope_as = vassal_title_1
}
random_direct_de_jure_vassal_title = {
limit = {
OR = {
holder.top_liege = root
holder.suzerain = root
NOR = {
exists = holder
this = scope:title
}
}
NOT = {
this = scope:vassal_title_1
}
}
save_scope_as = vassal_title_2
}
}
ordered_councillor = {
order_by = "opinion(root)"
limit = {
ach_yearly_events_1010_fawner_trigger = yes
NOR = {
is_at_war_with = root
is_a_faction_member = yes
}
}
save_scope_as = fawner
}
if = {
limit = {
NOT = {
exists = scope:fawner
}
}
ordered_vassal = {
order_by = "opinion(root)"
limit = {
ach_yearly_events_1010_fawner_trigger = yes
NOR = {
is_at_war_with = root
is_a_faction_member = yes
}
}
save_scope_as = fawner
}
}
if = {
limit = {
NOT = {
exists = scope:fawner
}
}
ordered_courtier = {
order_by = "opinion(root)"
limit = {
ach_yearly_events_1010_fawner_trigger = yes
}
alternative_limit = {
is_alive = yes
is_imprisoned = no
age >= 12
NOT = {
has_any_bad_relationship_with_character_trigger = { CHARACTER = root }
}
}
save_scope_as = fawner
}
}
if = {
limit = {
NOT = {
exists = scope:fawner
}
}
ordered_courtier = {
order_by = "opinion(root)"
save_scope_as = fawner
}
}
if = {
limit = {
NOT = {
exists = scope:fawner
}
}
ordered_pool_guest = {
order_by = "opinion(root)"
limit = {
is_alive = yes
is_imprisoned = no
age >= 12
NOT = {
has_any_bad_relationship_with_character_trigger = { CHARACTER = root }
}
}
save_scope_as = fawner
}
}
#SAVE ANOTHER
ordered_councillor = {
order_by = "opinion(root)"
limit = {
ach_yearly_events_1010_fawner_trigger = yes
NOR = {
is_at_war_with = root
is_a_faction_member = yes
this = scope:fawner
}
}
save_scope_as = fawner_2
}
if = {
limit = {
NOT = {
exists = scope:fawner_2
}
}
ordered_vassal = {
order_by = "opinion(root)"
limit = {
ach_yearly_events_1010_fawner_trigger = yes
NOR = {
is_at_war_with = root
is_a_faction_member = yes
this = scope:fawner
}
}
save_scope_as = fawner_2
}
}
if = {
limit = {
NOT = {
exists = scope:fawner_2
}
}
ordered_courtier = {
order_by = "opinion(root)"
limit = {
ach_yearly_events_1010_fawner_trigger = yes
NOT = {
this = scope:fawner
}
}
alternative_limit = {
is_alive = yes
is_imprisoned = no
age >= 12
NOR = {
has_any_bad_relationship_with_character_trigger = { CHARACTER = root }
this = scope:fawner
}
}
save_scope_as = fawner_2
}
}
if = {
limit = {
NOT = {
exists = scope:fawner_2
}
}
ordered_pool_guest = {
order_by = "opinion(root)"
limit = {
is_alive = yes
is_imprisoned = no
age >= 12
NOT = {
has_any_bad_relationship_with_character_trigger = { CHARACTER = root }
this = scope:fawner
}
}
save_scope_as = fawner_2
}
}
}
option = {
name = ach_yearly_events.1010.a
}
}