N3OW/common/scripted_triggers/00_councillor_triggers.txt

1157 lines
27 KiB
Text
Raw Permalink Normal View History

2026-03-09 03:51:24 +00:00

###TRIGGER LIST
# councillor_loyalty_trigger
#Spouse councillor:
#
#TRIGGERS
can_be_councillor_basics_trigger = {
is_available_quick = {
adult = yes
incapable = no
imprisoned = no
}
is_at_war_with_liege = no
trigger_if = {
limit = { has_variable = block_hire_councillor }
NOT = { var:block_hire_councillor = liege }
}
}
can_be_chancellor_trigger = {
can_be_councillor_basics_trigger = yes
$COURT_OWNER$ ?= {
NOT = { government_has_flag = government_is_nomadic }
}
NAND = {
has_council_position = councillor_court_chaplain
faith = { has_doctrine_parameter = clerical_appointment_fixed }
}
NOR = {
has_council_position = councillor_spouse
AND = {
this = liege.diarch
liege = { has_diarchy_active_parameter = diarchy_is_vizierate }
}
}
OR = {
is_ruler = yes
AND = {
is_female = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = male_dominated_council } }
}
AND = {
is_male = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = female_dominated_council } }
}
}
}
can_be_steward_trigger = {
can_be_councillor_basics_trigger = yes
$COURT_OWNER$ ?= {
NOT = { government_has_flag = government_is_nomadic }
}
NAND = {
has_council_position = councillor_court_chaplain
faith = { has_doctrine_parameter = clerical_appointment_fixed }
}
NOR = {
has_council_position = councillor_spouse
AND = {
this = liege.diarch
liege = { has_diarchy_active_parameter = diarchy_is_vizierate }
}
}
OR = {
is_ruler = yes
AND = {
is_female = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = male_dominated_council } }
}
AND = {
is_male = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = female_dominated_council } }
}
}
}
can_be_marshal_trigger = {
can_be_councillor_basics_trigger = yes
$COURT_OWNER$ ?= {
NOT = { government_has_flag = government_is_nomadic }
}
is_hostage = no
NAND = {
has_council_position = councillor_court_chaplain
faith = { has_doctrine_parameter = clerical_appointment_fixed }
}
NOR = {
has_council_position = councillor_spouse
AND = {
this = liege.diarch
liege = { has_diarchy_active_parameter = diarchy_is_vizierate }
}
}
OR = {
is_ruler = yes
AND = {
is_female = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = male_dominated_council } }
}
AND = {
is_male = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = female_dominated_council } }
}
AND = {
has_trait = shieldmaiden
$COURT_OWNER$.culture = { has_cultural_parameter = has_access_to_shieldmaidens }
}
}
}
can_be_spymaster_trigger = {
can_be_councillor_basics_trigger = yes
NAND = {
has_council_position = councillor_court_chaplain
faith = { has_doctrine_parameter = clerical_appointment_fixed }
}
NOR = {
has_council_position = councillor_spouse
AND = {
this = liege.diarch
liege = { has_diarchy_active_parameter = diarchy_is_vizierate }
}
}
exists = $COURT_OWNER$ #so we can have the argument but get no errors
}
can_be_court_chaplain_trigger = {
save_temporary_scope_as = court_chaplain_check
can_be_councillor_basics_trigger = yes
$COURT_OWNER$ ?= {
NOT = { government_has_flag = government_is_nomadic }
}
NOR = {
has_council_position = councillor_spouse
AND = {
this = liege.diarch
liege = { has_diarchy_active_parameter = diarchy_is_vizierate }
}
}
$COURT_OWNER$.faith = { has_allowed_gender_for_clergy = scope:court_chaplain_check }
faith = $COURT_OWNER$.faith
trigger_if = {
limit = {
faith = { has_doctrine = doctrine_theocracy_temporal }
}
OR = {
is_ruler = no
government_has_flag = government_is_theocracy
}
}
trigger_if = {
limit = {
exists = var:escaped_imprisonment_from
}
NOT = { var:escaped_imprisonment_from = $COURT_OWNER$ }
}
trigger_if = { # An excommunicated ruler tolerate excommunicated bishops
limit = {
$COURT_OWNER$ ?= { NOT = { has_trait = excommunicated } }
}
NOT = { has_trait = excommunicated }
}
}
can_be_spouse_councillor_trigger = {
save_temporary_scope_as = spouse_councillor_check
can_be_councillor_basics_trigger = yes
#NOT = { # We allow spouses to both be regents and do their spouse job
# this = liege.diarch
#}
trigger_if = {
limit = { is_ruler = yes }
liege ?= $COUNCIL_OWNER$
$COUNCIL_OWNER$ = { primary_spouse = scope:spouse_councillor_check }
}
trigger_else = {
$COUNCIL_OWNER$ ?= { primary_spouse = scope:spouse_councillor_check }
}
}
can_be_kurultai_trigger = {
can_be_councillor_basics_trigger = yes
exists = $COURT_OWNER$
NOT = { government_has_flag = government_is_herder }
NOR = {
has_council_position = councillor_spouse
has_court_position = court_astrologer_court_position
AND = {
this = $COURT_OWNER$.diarch
$COURT_OWNER$ ?= { has_diarchy_active_parameter = diarchy_is_vizierate }
}
}
NOR = {
has_council_position = $CP1$
has_council_position = $CP2$
has_council_position = $CP3$
}
OR = {
is_landed = yes
is_knight_of = $COURT_OWNER$
is_courtier_of = $COURT_OWNER$
is_ruler = yes
is_powerful_vassal = yes
}
OR = {
is_ruler = yes
AND = {
is_female = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = male_dominated_council } }
}
AND = {
is_male = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = female_dominated_council } }
}
AND = {
has_trait = shieldmaiden
$COURT_OWNER$.culture = { has_cultural_parameter = has_access_to_shieldmaidens }
}
}
}
can_be_any_kurultai_trigger = {
can_be_councillor_basics_trigger = yes
$COURT_OWNER$ ?= {
OR = {
has_council_position = councillor_kurultai_1
has_council_position = councillor_kurultai_2
has_council_position = councillor_kurultai_3
has_council_position = councillor_kurultai_4
}
}
NOR = {
has_council_position = councillor_spouse
AND = {
this = $COURT_OWNER$.diarch
$COURT_OWNER$ ?= { has_diarchy_active_parameter = diarchy_is_vizierate }
}
}
NOR = {
has_council_position = councillor_kurultai_1
has_council_position = councillor_kurultai_2
has_council_position = councillor_kurultai_3
has_council_position = councillor_kurultai_4
}
OR = {
is_landed = yes
is_knight_of = $COURT_OWNER$
is_courtier_of = $COURT_OWNER$
is_ruler = yes
is_powerful_vassal = yes
}
OR = {
is_ruler = yes
AND = {
is_female = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = male_dominated_council } }
}
AND = {
is_male = yes
$COURT_OWNER$.faith = { NOT = { has_doctrine_parameter = female_dominated_council } }
}
AND = {
has_trait = shieldmaiden
$COURT_OWNER$.culture = { has_cultural_parameter = has_access_to_shieldmaidens }
}
}
}
is_kurultai_trigger = {
OR = {
has_council_position = councillor_kurultai_1
has_council_position = councillor_kurultai_2
has_council_position = councillor_kurultai_3
has_council_position = councillor_kurultai_4
}
}
has_any_kurultai_trigger = {
OR = {
exists = cp:councillor_kurultai_1
exists = cp:councillor_kurultai_2
exists = cp:councillor_kurultai_3
exists = cp:councillor_kurultai_4
}
}
councillor_loyalty_trigger = {
weighted_calc_true_if = {
amount >= 50
20 = {
NOT = { has_trait = ambitious }
}
20 = {
opinion = {
target = liege
value > 0
}
}
20 = {
opinion = {
target = liege
value > 20
}
}
20 = {
opinion = {
target = liege
value > 40
}
}
20 = {
opinion = {
target = liege
value > 60
}
}
}
}
############################
#SPOUSE COUNCILLOR TRIGGERS#
############################
valid_spouse_councillor_trigger = {
scope:councillor = { is_available = yes }
cp:councillor_spouse ?= scope:councillor
}
is_blocked_from_being_fired_from_council_trigger = {
custom_description = {
text = "is_blocked_from_being_fired_from_council"
subject = this
object = $COURT_OWNER$
OR = {
# Check in code if the court owner is prevented from firing the councilor
# can_fire_position must take a council task as input, but checks the councilor behind the task.
AND = {
exists = this.council_task
this.council_task = { can_fire_position = no }
}
# Check for variable preventing the firing of a councilor set by script
AND = {
has_variable = block_fire_councillor
var:block_fire_councillor = $COURT_OWNER$
}
}
}
}
can_be_fired_from_council_trigger = {
NOT = {
is_blocked_from_being_fired_from_council_trigger = { COURT_OWNER = $COURT_OWNER$ }
}
trigger_if = {
limit = {
has_council_position = councillor_court_chaplain
}
faith = {
OR = {
has_doctrine = doctrine_clerical_succession_temporal_appointment
has_doctrine = doctrine_clerical_succession_spiritual_appointment
}
}
}
}
#Faith/culture triggers
same_faith_or_culture_as_councillor_trigger = {
OR = {
culture = scope:councillor.culture
faith = scope:councillor.faith
}
}
different_faith_and_or_culture_from_councillor_trigger = {
OR = {
culture != scope:councillor.culture
faith != scope:councillor.faith
}
}
character_same_faith_as_councillor_but_different_from_root_trigger = {
faith = scope:councillor.faith
faith != root.faith
}
character_same_culture_as_councillor_but_different_from_root_trigger = {
culture = scope:councillor.culture
culture != root.culture
}
character_same_faith_or_culture_as_councillor_but_different_from_root_trigger = {
OR = {
character_same_faith_as_councillor_but_different_from_root_trigger = yes
character_same_culture_as_councillor_but_different_from_root_trigger = yes
}
}
character_different_culture_than_councillor_and_root_trigger = {
NOR = {
culture = scope:councillor.culture
culture = root.culture
}
}
character_different_faith_than_councillor_and_root_trigger = {
NOR = {
faith = scope:councillor.faith
faith = root.faith
}
}
character_different_faith_or_culture_than_councillor_and_root_trigger = {
OR = {
character_different_culture_than_councillor_and_root_trigger = yes
character_different_faith_than_councillor_and_root_trigger = yes
}
}
province_same_faith_or_culture_as_councillor_but_different_from_root_trigger = {
OR = {
AND = {
culture = scope:councillor.culture
culture != root.culture
}
AND = {
faith = scope:councillor.faith
faith != root.faith
}
}
}
#End of faith/culture triggers
#Councillor Spouse threshold triggers
#Intrigue
spouse_intrigue_tier_1_trigger = {
scope:councillor = {
OR = {
has_character_modifier = councillor_spouse_intrigue_2_modifier
has_character_modifier = councillor_spouse_intrigue_1_modifier
has_trait = schemer
intrigue >= spouse_skill_rating_1
is_performing_council_task = task_court_intrigue
}
}
}
spouse_intrigue_tier_2_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 30
}
OR = {
has_character_modifier = councillor_spouse_intrigue_2_modifier
has_trait = schemer
intrigue >= spouse_skill_rating_3
AND = {
is_performing_council_task = task_court_intrigue
OR = {
intrigue >= spouse_skill_rating_2
has_character_modifier = councillor_spouse_intrigue_2_modifier
has_character_modifier = councillor_spouse_intrigue_1_modifier
has_trait = schemer
}
}
}
}
}
spouse_intrigue_tier_3_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 50
}
OR = {
has_trait = schemer
intrigue >= spouse_skill_rating_4
AND = {
is_performing_council_task = task_court_intrigue
OR = {
intrigue >= high_skill_rating
has_character_modifier = councillor_spouse_intrigue_2_modifier
has_trait = schemer
}
}
}
}
}
#Diplomacy
spouse_diplomacy_tier_1_trigger = {
scope:councillor = {
OR = {
has_character_modifier = councillor_spouse_diplomacy_2_modifier
has_character_modifier = councillor_spouse_diplomacy_1_modifier
has_trait = diplomat
diplomacy >= spouse_skill_rating_1
is_performing_council_task = task_court_politics
}
}
}
spouse_diplomacy_tier_2_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 30
}
OR = {
has_character_modifier = councillor_spouse_diplomacy_2_modifier
has_trait = diplomat
diplomacy >= spouse_skill_rating_3
AND = {
is_performing_council_task = task_court_politics
OR = {
diplomacy >= spouse_skill_rating_2
has_character_modifier = councillor_spouse_diplomacy_2_modifier
has_character_modifier = councillor_spouse_diplomacy_1_modifier
has_trait = diplomat
}
}
}
}
}
spouse_diplomacy_tier_3_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 50
}
OR = {
has_trait = diplomat
diplomacy >= spouse_skill_rating_4
AND = {
is_performing_council_task = task_court_politics
OR = {
diplomacy >= spouse_skill_rating_2
has_trait = diplomat
has_character_modifier = councillor_spouse_diplomacy_2_modifier
}
}
}
}
}
#Martial
spouse_martial_tier_1_trigger = {
scope:councillor = {
OR = {
has_character_modifier = councillor_spouse_martial_2_modifier
has_character_modifier = councillor_spouse_martial_1_modifier
has_trait = strategist
martial >= spouse_skill_rating_1
is_performing_council_task = task_chivalry
}
}
}
spouse_martial_tier_2_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 30
}
OR = {
has_character_modifier = councillor_spouse_martial_2_modifier
has_trait = strategist
martial >= spouse_skill_rating_3
AND = {
is_performing_council_task = task_chivalry
OR = {
martial >= spouse_skill_rating_2
has_character_modifier = councillor_spouse_martial_2_modifier
has_character_modifier = councillor_spouse_martial_1_modifier
has_trait = strategist
}
}
}
}
}
spouse_martial_tier_3_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 50
}
OR = {
has_trait = strategist
martial >= spouse_skill_rating_4
AND = {
is_performing_council_task = task_chivalry
OR = {
martial >= spouse_skill_rating_2
has_character_modifier = councillor_spouse_martial_2_modifier
has_trait = strategist
}
}
}
}
}
#Stewardship
spouse_stewardship_tier_1_trigger = {
scope:councillor = {
OR = {
has_character_modifier = councillor_spouse_stewardship_2_modifier
has_character_modifier = councillor_spouse_stewardship_1_modifier
has_trait = architect
stewardship >= spouse_skill_rating_1
is_performing_council_task = task_manage_domain
}
}
}
spouse_stewardship_tier_2_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 30
}
OR = {
has_character_modifier = councillor_spouse_stewardship_2_modifier
has_trait = architect
stewardship >= spouse_skill_rating_3
AND = {
is_performing_council_task = task_manage_domain
OR = {
stewardship >= spouse_skill_rating_2
has_character_modifier = councillor_spouse_stewardship_2_modifier
has_character_modifier = councillor_spouse_stewardship_1_modifier
has_trait = architect
}
}
}
}
}
spouse_stewardship_tier_3_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 50
}
OR = {
has_trait = architect
stewardship >= spouse_skill_rating_4
AND = {
is_performing_council_task = task_manage_domain
OR = {
stewardship >= spouse_skill_rating_2
has_character_modifier = councillor_spouse_stewardship_2_modifier
has_trait = architect
}
}
}
}
}
#Learning
spouse_learning_tier_1_trigger = {
scope:councillor = {
OR = {
has_character_modifier = councillor_spouse_learning_2_modifier
has_character_modifier = councillor_spouse_learning_1_modifier
has_trait = scholar
learning >= spouse_skill_rating_1
is_performing_council_task = task_patronage
}
}
}
spouse_learning_tier_2_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 30
}
OR = {
has_character_modifier = councillor_spouse_learning_2_modifier
has_trait = scholar
learning >= spouse_skill_rating_3
AND = {
is_performing_council_task = task_patronage
OR = {
learning >= spouse_skill_rating_2
has_character_modifier = councillor_spouse_learning_2_modifier
has_character_modifier = councillor_spouse_learning_1_modifier
has_trait = scholar
}
}
}
}
}
spouse_learning_tier_3_trigger = {
scope:councillor = {
opinion = {
target = liege
value > 50
}
OR = {
has_trait = scholar
learning >= spouse_skill_rating_4
AND = {
is_performing_council_task = task_patronage
OR = {
learning >= spouse_skill_rating_2
has_character_modifier = councillor_spouse_learning_2_modifier
has_trait = scholar
}
}
}
}
}
# Court Espionage task triggers
spymaster_task_find_secrets_interesting_secret_type_trigger = {
save_temporary_scope_as = suitable_secret
trigger_if = {
limit = {
secret_type = secret_disputed_heritage
exists = secret_target
}
NOT = { secret_target = { has_trait = legitimized_bastard } }
}
OR = {
secret_is_always_interesting_trigger = yes
is_blackmailable_secret_trigger = { BLACKMAILER = scope:councillor_liege PARTICIPANT = scope:suitable_secret.secret_owner }
}
}
spymaster_task_find_secrets_block_spymaster_self_reveal_trigger = {
# Spymaster should not reveal secrets targeting themselves unless it is a murder attempt
trigger_if = {
limit = {
exists = secret_target
NOT = { secret_type = secret_murder_attempt }
}
secret_target != scope:councillor
}
# If the spymaster is the father of a secret bastard, don't reveal that
trigger_if = {
limit = {
OR = {
secret_type = secret_disputed_heritage
secret_type = secret_unmarried_illegitimate_child
}
exists = secret_target.real_father
}
secret_target.real_father != scope:councillor
}
}
spymaster_task_find_secrets_suitable_minor_secret_trigger = {
OR = {
is_shunned_for = secret_owner
AND = {
NOT = {
is_blackmailable_secret_trigger = {
PARTICIPANT = secret_owner
BLACKMAILER = scope:councillor_liege
}
}
secret_is_always_interesting_trigger = yes
}
}
NOT = { is_known_by = scope:councillor_liege }
spymaster_task_find_secrets_block_spymaster_self_reveal_trigger = yes
NOT = {
any_secret_participant = {
OR = {
this = scope:councillor
this = scope:councillor_liege
}
}
}
spymaster_task_find_secrets_interesting_secret_type_trigger = yes
}
spymaster_task_find_secrets_suitable_major_secret_trigger = {
is_criminal_for = secret_owner
NOT = { is_known_by = scope:councillor_liege }
spymaster_task_find_secrets_block_spymaster_self_reveal_trigger = yes
NOT = {
any_secret_participant = {
OR = {
this = scope:councillor
this = scope:councillor_liege
}
}
}
spymaster_task_find_secrets_interesting_secret_type_trigger = yes
}
spymaster_task_find_secrets_court_has_minor_secrets_trigger = {
OR = {
AND = {
has_any_secrets = yes
any_secret = {
spymaster_task_find_secrets_suitable_minor_secret_trigger = yes
}
}
any_vassal = {
has_any_secrets = yes
this != scope:councillor_liege
this != scope:councillor
any_secret = {
spymaster_task_find_secrets_suitable_minor_secret_trigger = yes
}
}
any_courtier_or_guest = {
has_any_secrets = yes
this != scope:councillor_liege
this != scope:councillor
any_secret = {
spymaster_task_find_secrets_suitable_minor_secret_trigger = yes
}
}
}
}
spymaster_task_find_secrets_court_has_major_secrets_trigger = {
OR = {
AND = {
has_any_secrets = yes
any_secret = {
spymaster_task_find_secrets_suitable_major_secret_trigger = yes
}
}
any_vassal = {
has_any_secrets = yes
this != scope:councillor_liege
this != scope:councillor
any_secret = {
spymaster_task_find_secrets_suitable_major_secret_trigger = yes
}
}
any_courtier_or_guest = {
has_any_secrets = yes
this != scope:councillor_liege
this != scope:councillor
any_secret = {
spymaster_task_find_secrets_suitable_major_secret_trigger = yes
}
}
}
}
spymaster_find_secrets_secret_holder_is_interesting_to_me_trigger = {
scope:councillor_liege = {
save_temporary_scope_as = me
}
scope:secret_holder ?= {
OR = {
is_ruler = yes
is_close_or_extended_family_of = scope:me
is_courtier_of = scope:me
has_relation_rival = scope:me
has_relation_lover = scope:me
is_player_heir_of = scope:me
}
}
}
spymaster_find_secrets_secret_target_is_interesting_to_me_trigger = {
scope:councillor_liege = {
save_temporary_scope_as = me
}
trigger_if = {
limit = {
exists = secret_target
}
secret_target = {
OR = {
is_close_or_extended_family_of = scope:me
is_courtier_of = scope:me
has_relation_rival = scope:me
has_relation_lover = scope:me
is_player_heir_of = scope:me
}
}
}
trigger_else = {
always = no
}
}
# Event triggers
# Defined here because they need to be used in event + council task desc
marshal_task_1101_county_trigger = {
holder = root
NOT = {
has_county_modifier = marshal_task_organized_service_modifier
}
}
marshal_task_1102_county_trigger = {
NOT = {
has_county_modifier = marshal_task_military_presence_modifier
}
}
marshal_task_1003_county_trigger = {
is_valid_for_county_corruption_trigger = yes
OR = {
NOT = { has_county_modifier = county_corruption_unsafe_highways_modifier }
NOT = { has_county_modifier = county_corruption_thieves_guild_modifier }
NOT = { has_county_modifier = county_corruption_bandits_rampant_modifier }
}
}
steward_task_county_corruption_county_trigger = {
holder = {
OR = {
is_ai = yes
this = root
}
}
}
councillor_spouse_learning_2603_valid_councillor_trigger = {
is_available_ai_adult = yes
this != scope:councillor
}
councillor_liege_has_erudition_legacy_5_perk = {
scope:councillor_liege.dynasty ?= { has_dynasty_perk = erudition_legacy_5 }
}
councillor_liege_has_customs_legacy_perk = {
scope:councillor_liege.dynasty ?= { has_dynasty_perk = ep1_culture_legacy_2 }
}
councillor_liege_has_family_business_bonus = {
scope:councillor_liege.culture ?= { has_cultural_parameter = close_family_better_councillors }
scope:councillor ?= {
is_close_family_of = scope:councillor_liege
}
}
councillor_liege_has_consulted_house_bonus = {
scope:councillor_liege ?= { has_character_flag = fp3_consulted_house }
scope:councillor.house ?= scope:councillor_liege.house
}
councillor_is_unskilled_trigger = {
trigger_if = {
limit = { $EMPLOYER$.cp:councillor_chancellor ?= this }
diplomacy < mediocre_skill_rating
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_steward ?= this }
stewardship < mediocre_skill_rating
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_marshal ?= this }
martial < mediocre_skill_rating
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_spymaster ?= this }
intrigue < mediocre_skill_rating
}
trigger_else = { learning < mediocre_skill_rating }
}
councillor_is_skilled_trigger = {
trigger_if = {
limit = { $EMPLOYER$.cp:councillor_chancellor ?= this }
diplomacy > decent_skill_rating
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_steward ?= this }
stewardship > decent_skill_rating
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_marshal ?= this }
martial > decent_skill_rating
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_spymaster ?= this }
intrigue > decent_skill_rating
}
trigger_else = { learning > decent_skill_rating }
}
kurultai_is_skilled_trigger = {
trigger_if = {
limit = { $EMPLOYER$.cp:councillor_kurultai_1 ?= this }
OR = {
average_skill_rating >= sum_of_all_skills_threshold_average
has_any_high_skill_rating = yes
}
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_kurultai_2 ?= this }
OR = {
average_skill_rating >= sum_of_all_skills_threshold_average
has_any_high_skill_rating = yes
}
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_kurultai_3 ?= this }
OR = {
average_skill_rating >= sum_of_all_skills_threshold_average
has_any_high_skill_rating = yes
}
}
trigger_else_if = {
limit = { $EMPLOYER$.cp:councillor_kurultai_4 ?= this }
OR = {
average_skill_rating >= sum_of_all_skills_threshold_average
has_any_high_skill_rating = yes
}
}
trigger_else = { intrigue > decent_skill_rating } # Spymaster
}
#FP3 Legacy Track:
councillor_liege_has_khvarenah_legacy_perk = {
exists = scope:councillor_liege.dynasty
scope:councillor_liege.dynasty = { has_dynasty_perk = fp3_khvarenah_legacy_4 }
}
can_be_knight_now_light_trigger = {
is_available_quick = {
ai = yes # Players can't be knights
imprisoned = no
adult = yes
alive = yes
}
}
can_be_trained_as_knight_now_light_trigger = {
can_be_knight_now_light_trigger = yes
is_in_army = no
has_contagious_deadly_disease_trigger = no
NOT = { has_trait = incapable }
custom_description = {
text = ALREADY_IN_ACTIVITY
NOR = {
exists = involved_activity
has_variable = homage_liege_scope
has_character_flag = meditation_character_flag
has_character_flag = local_shrine_rite
has_character_flag = petition_liege_character_flag
has_character_flag = holding_court_character_flag
is_being_visited_on_tour_strict = yes
}
}
custom_description = {
text = ALREADY_PLANNING_ACTIVITY
NOT = { has_character_flag = planning_an_activity }
}
# Variable set within the adventure inspiration events
NOT = { has_variable = gone_adventuring }
}
teacher_has_trait_that_student_does_not_trigger = {
OR = {
AND = {
$TEACHER$ = { has_trait = logistician }
$STUDENT$ = { NOT = { has_trait = logistician } }
}
AND = {
$TEACHER$ = { has_trait = military_engineer }
$STUDENT$ = { NOT = { has_trait = military_engineer } }
}
AND = {
$TEACHER$ = { has_trait = aggressive_attacker }
$STUDENT$ = { NOT = { has_trait = aggressive_attacker } }
}
AND = {
$TEACHER$ = { has_trait = unyielding_defender }
$STUDENT$ = { NOT = { has_trait = unyielding_defender } }
}
AND = {
$TEACHER$ = { has_trait = forder }
$STUDENT$ = { NOT = { has_trait = forder } }
}
AND = {
$TEACHER$ = { has_trait = flexible_leader }
$STUDENT$ = { NOT = { has_trait = flexible_leader } }
}
AND = {
$TEACHER$ = { has_trait = desert_warrior }
$STUDENT$ = { NOT = { has_trait = desert_warrior } }
}
AND = {
$TEACHER$ = { has_trait = jungle_stalker }
$STUDENT$ = { NOT = { has_trait = jungle_stalker } }
}
AND = {
$TEACHER$ = { has_trait = winter_soldier }
$STUDENT$ = { NOT = { has_trait = winter_soldier } }
}
AND = {
$TEACHER$ = { has_trait = reaver }
$STUDENT$ = { NOT = { has_trait = reaver } }
}
AND = {
$TEACHER$ = { has_trait = reckless }
$STUDENT$ = { NOT = { has_trait = reckless } }
}
AND = {
$TEACHER$ = { has_trait = holy_warrior }
$STUDENT$ = { NOT = { has_trait = holy_warrior } }
}
AND = {
$TEACHER$ = { has_trait = open_terrain_expert }
$STUDENT$ = { NOT = { has_trait = open_terrain_expert } }
}
AND = {
$TEACHER$ = { has_trait = rough_terrain_expert }
$STUDENT$ = { NOT = { has_trait = rough_terrain_expert } }
}
AND = {
$TEACHER$ = { has_trait = forest_fighter }
$STUDENT$ = { NOT = { has_trait = forest_fighter } }
}
AND = {
$TEACHER$ = { has_trait = cautious_leader }
$STUDENT$ = { NOT = { has_trait = cautious_leader } }
}
AND = {
$TEACHER$ = { has_trait = organizer }
$STUDENT$ = { NOT = { has_trait = organizer } }
}
}
}