2025-12-15 15:13:56 -05:00
should_be_naked_trigger = {
# Character must be an adult.
exists = this
is_adult = yes
# Character must have a valid reasion to be naked.
OR = {
has_character_modifier = diplomacy_majesty_4090_no_raiment_modifier # Lunatic event where character goes naked instead of buying new clothes.
has_character_flag = is_naked # Special flag used in certain events.
faith = { has_doctrine_parameter = naked_adherents_active }
culture = { has_cultural_parameter = naked_culture_active }
trigger_if = {
limit = {
faith = { has_doctrine_parameter = naked_priests_active }
}
OR = {
government_has_flag = government_is_theocracy
has_council_position = councillor_court_chaplain
has_trait = devoted
has_trait = zealous
ai_zeal >= 50
}
}
}
}
# Can only be checked in the interface since the setting isn't synced
should_be_fully_naked_portrait_trigger = {
should_show_nudity = yes
should_be_naked_trigger = yes
}
should_be_topless_portrait_trigger = {
should_show_nudity = yes
exists = this
OR = {
has_character_flag = should_be_topless
has_character_flag = single_combat_stripped_to_waist
activity_tournament_shirtless_trigger = yes
}
}
portrait_wear_no_headgear_trigger = {
OR = {
AND = {
trigger_if = { # No headgear for children under 16
limit = {
portrait_wear_no_crown_trigger = yes
}
scope:age < 16
}
trigger_else = { # Unless it's a crown
scope:age <= coronation_minimum_age_value
}
NOR = {
portrait_sami_clothing_trigger = yes
portrait_ugro_permian_clothing_trigger = yes
}
}
has_character_flag = no_hat
portrait_prisoner_trigger = yes
has_character_modifier = hajj_halq_modifier # To show shaved hair
has_character_flag = roaming_character
AND = { # No headgear for characters without crowns
exists = this
portrait_wear_no_crown_trigger = yes
# Should still wear armor when going to war
portrait_wear_armor_trigger = no
}
AND = {
OR = {
should_be_naked_trigger = yes # Deliberately not the "fully naked" one since dropping your crown's intended even if nudity is disabled
AND = {
highest_held_title_tier < tier_duchy # Should wear ducal or royal crown instead.
OR = {
has_short_disease_trigger = yes # Affliction that would plausibly leave them bedridden for treatment
has_character_flag = use_sickness_clothes
}
}
activity_tournament_shirtless_trigger = yes
}
NOR = { # Exceptions for dukes, kings, popes
highest_held_title_tier >= tier_duchy # Should wear ducal or royal crown instead.
portrait_religious_head_popes_trigger = yes
culture = { has_cultural_pillar = heritage_japonic } # Showing the top of your head is shameful
culture = { has_cultural_pillar = heritage_chinese } # Showing the top of your head is shameful
}
}
AND = { # No headgear for vanity characters with the no_headgear flag, unless they are dukes or higher
exists = this
has_character_flag = no_headgear
highest_held_title_tier < tier_duchy
}
portrait_ep2_ihram_clothes_trigger = yes # Remove headgear if you are undertaking the Hajj and meet the requirements for the Ihram clothes (Halq modifier and male)
AND = { # No headgear for charioteers
exists = this
has_any_charioteer_trait = yes
}
}
}
portrait_wear_armor_trigger = {
exists = this
is_incapable = no
is_imprisoned = no
trigger_if = {
limit = { exists = involved_activity }
involved_activity = { has_activity_type = activity_tournament }
}
NOT = {
OR = {
has_court_position = court_astrologer_court_position
has_any_charioteer_trait = yes
}
}
portrait_ep2_wedding_clothes_trigger = no
trigger_if = {
limit = { portrait_sickness_trigger = yes }
is_in_army = yes
}
2026-03-04 01:15:23 +00:00
trigger_if = {
limit = { government_allows = barter }
OR = {
is_at_war = yes
involved_activity = { has_activity_type = activity_tournament }
# Serving Varangian
has_character_flag = is_currently_varangian
# In a Duel
has_character_flag = single_combat_duel_armor
has_character_flag = forced_knight_armor
# In a Tournament
activity_tournament_armor_trigger = yes
}
}
2025-12-15 15:13:56 -05:00
OR = {
# Mercenaries, Holy Orders, Adventurers
AND = {
is_ruler = yes
OR = {
government_has_flag = government_is_mercenary
government_has_flag = government_is_holy_order
has_realm_law = camp_purpose_mercenaries
has_realm_law = camp_purpose_brigands
}
}
has_trait = order_member
# Commanding an army
is_commanding_army = yes
# Knight in an army
exists = knight_army
AND = {
OR = {
is_landed_or_landless_administrative = no
liege = { is_at_war = yes }
}
is_councillor = no
OR = {
AND = {
is_knight = yes
NAND = {
is_ruler = no
government_has_flag = government_is_landless_adventurer
liege ?= {
NOR = {
has_realm_law = camp_purpose_mercenaries
has_realm_law = camp_purpose_brigands
}
is_at_war = no
}
}
}
has_court_position = bodyguard_court_position
has_court_position = champion_court_position
has_court_position = garuda_court_position
has_court_position = akolouthos_court_position
has_court_position = master_of_arms_camp_officer
has_court_position = light_cavalry_captain_camp_officer
has_court_position = camelry_captain_camp_officer
has_court_position = elephantry_captain_camp_officer
has_court_position = heavy_cavalry_captain_camp_officer
has_court_position = horse_archer_captain_camp_officer
has_court_position = archer_captain_camp_officer
has_court_position = heavy_infantry_captain_camp_officer
has_court_position = light_infantry_captain_camp_officer
has_court_position = pike_captain_camp_officer
}
}
# Marshal lower than Duke
AND = {
has_council_position = councillor_marshal
OR = {
is_landed_or_landless_administrative = no
primary_title.tier < tier_kingdom
}
}
# Military style governor
trigger_if = {
limit = {
is_independent_ruler = no
OR = {
has_government = celestial_government
has_government = meritocratic_government
has_government = steppe_admin_government
}
}
OR = {
vassal_contract_has_flag = celestial_province_protectorate
vassal_contract_has_flag = celestial_province_military
vassal_contract_has_flag = meritocratic_province_protectorate
vassal_contract_has_flag = meritocratic_province_military
has_title = title:e_minister_grand_marshal
}
is_adult = yes
trigger_if = {
limit = { has_trait = devoted }
faith = { has_doctrine_parameter = clergy_can_fight }
}
save_temporary_scope_as = fighter_temp
can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = scope:fighter_temp }
}
has_character_flag = wear_armor
# Serving Varangian
has_character_flag = is_currently_varangian
# In a Duel
has_character_flag = single_combat_duel_armor
has_character_flag = forced_knight_armor
# In a Tournament
activity_tournament_armor_trigger = yes
AND = { # In case these characters become landed they should stop wearing armor
has_character_flag = military_outfit
is_ruler = no
}
# Died in battle
trigger_if = {
limit = { is_alive = no }
death_reason = death_battle
}
}
}
portrait_wear_armor_currently_in_army_trigger = {
exists = this
OR = {
is_commanding_army = yes
exists = knight_army
}
2026-03-04 02:03:34 +00:00
trigger_if = {
limit = { government_allows = barter }
OR = {
is_at_war = yes
involved_activity = { has_activity_type = activity_tournament }
# Serving Varangian
has_character_flag = is_currently_varangian
# In a Duel
has_character_flag = single_combat_duel_armor
has_character_flag = forced_knight_armor
# In a Tournament
activity_tournament_armor_trigger = yes
}
}
2025-12-15 15:13:56 -05:00
}
portrait_wear_no_armor_trigger = {
NOR = {
portrait_wear_armor_trigger = yes
portrait_wear_armor_currently_in_army_trigger = yes
}
}
portrait_accoladed_knight_trigger = {
exists = this
exists = liege
is_acclaimed = yes
OR = {
AND = {
liege ?= {
highest_held_title_tier = tier_duchy
}
accolade = {
is_accolade_active = yes
accolade_rank >= 5
}
}
AND = {
liege ?= {
highest_held_title_tier = tier_kingdom
}
accolade = {
is_accolade_active = yes
accolade_rank >= 3
}
}
AND = {
liege ?= {
highest_held_title_tier = tier_empire
}
accolade = {
is_accolade_active = yes
}
}
}
}
portrait_wear_helmet_trigger = { # Different from Armor, as (crowned) Kings and Emperors should show their crowns!
exists = this
trigger_if = {
limit = { exists = involved_activity }
involved_activity = {
NOR = {
has_activity_type = activity_hunt
has_activity_type = activity_pilgrimage
has_activity_type = activity_roaming
}
}
}
is_incapable = no
is_imprisoned = no
NOT = { has_court_position = court_astrologer_court_position }
trigger_if = {
limit = { portrait_sickness_trigger = yes }
is_in_army = yes
}
2026-03-04 02:03:34 +00:00
trigger_if = {
limit = { government_allows = barter }
OR = {
is_at_war = yes
involved_activity = { has_activity_type = activity_tournament }
# Serving Varangian
has_character_flag = is_currently_varangian
# In a Duel
has_character_flag = single_combat_duel_armor
has_character_flag = forced_knight_armor
# In a Tournament
activity_tournament_armor_trigger = yes
}
}
2025-12-15 15:13:56 -05:00
OR = {
# Adventurers
AND = {
is_ruler = yes
government_has_flag = government_is_landless_adventurer
has_realm_law = camp_purpose_mercenaries
}
# Holy Orders
AND = {
is_ruler = yes
government_has_flag = government_is_holy_order
}
has_trait = order_member
# Commanding and lower than a King or uncrowned
AND = {
is_commanding_army = yes
OR = {
is_landed_or_landless_administrative = no
AND = {
exists = primary_title
OR = {
primary_title.tier < tier_kingdom
portrait_wear_no_crown_trigger = yes
}
}
}
}
# Knight in an army
exists = knight_army
# Non-Council Knight lower than King and liege is at war
AND = {
is_knight = yes
is_councillor = no
OR = {
is_landed_or_landless_administrative = no
AND = {
exists = primary_title
primary_title.tier < tier_kingdom
liege = { is_at_war = yes }
}
}
NAND = {
is_ruler = no
government_has_flag = government_is_landless_adventurer
liege ?= {
is_at_war = no
NOT = { has_realm_law = camp_purpose_mercenaries }
}
}
}
# Marshal lower than Duke
AND = {
has_council_position = councillor_marshal
OR = {
is_landed_or_landless_administrative = no
primary_title.tier < tier_duchy
}
}
has_character_flag = wear_armor
# Serving Varangian
has_character_flag = is_currently_varangian
# In a Duel
has_character_flag = single_combat_duel_armor
# In a Tournament
activity_tournament_armor_trigger = yes
AND = { # In case these characters become landed they should stop wearing armor
has_character_flag = military_outfit
is_ruler = no
}
# Military style governor
AND = {
is_independent_ruler = no
OR = {
has_government = celestial_government
has_government = meritocratic_government
has_government = steppe_admin_government
}
OR = {
vassal_contract_has_flag = celestial_province_protectorate
vassal_contract_has_flag = celestial_province_military
vassal_contract_has_flag = meritocratic_province_protectorate
vassal_contract_has_flag = meritocratic_province_military
has_title = title:e_minister_grand_marshal
}
is_adult = yes
trigger_if = {
limit = { has_trait = devoted }
faith = { has_doctrine_parameter = clergy_can_fight }
}
save_temporary_scope_as = fighter_temp
can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = scope:fighter_temp }
}
}
NOR = {
activity_tournament_shirtless_trigger = yes
has_character_flag = no_hat
}
# Not peasants leading revolts
NAND = {
has_trait = peasant_leader
OR = {
is_ruler = no
is_leading_faction_type = peasant_faction
AND = {
is_ruler = yes
is_landed_or_landless_administrative = no
OR = {
government_has_flag = government_is_feudal
government_has_flag = government_is_clan
}
}
}
}
}
portrait_wear_no_crown_trigger = { # Rulers should be coronated to wear a crown barring exceptions
exists = this
OR = {
trigger_if = { # No crowns for uncoronated characters
limit = { has_ach_dlc_trigger = yes }
has_realm_law = uncrowned
NOT = { coronation_proper_artifact_regalia_trigger = yes } #don't take off your fancy hat if you care about regalia. But do take it off if you care about crowns AND regalia
}
trigger_if = { # Unlanded spouses of uncoronated ruler's shouldn't have crowns
limit = {
is_married = yes
has_ach_dlc_trigger = yes
NOT = { coronation_proper_artifact_regalia_trigger = yes }
}
is_landed = no
primary_spouse ?= {
is_landed = yes
has_realm_law = uncrowned
NOT = { coronation_proper_artifact_regalia_trigger = yes }
}
}
2026-03-09 20:02:09 +00:00
government_has_flag = government_is_prepublic
2025-12-15 15:13:56 -05:00
has_character_flag = sold_crown_charmod # No crowns for characters who sold theirs
has_character_modifier = vow_of_poverty_modifier # Or for characters with an active Vow of Poverty
has_character_modifier = fp1_abased_before_highgod_modifier # Refuses to wear a crown due to HighGod
}
}
portrait_wear_christian_holy_order_trigger = { # Christian holy order members/vassals should wear different armor
OR = {
AND = { # Is a Christian holy order member
religion = religion:christianity_religion
government_has_flag = government_is_holy_order
}
AND = { # Is a Christian holy order vassal
religion = religion:christianity_religion
is_playable_character = no
portrait_wear_armor_trigger = yes
liege ?= { government_has_flag = government_is_holy_order }
}
}
}
portrait_has_trait_trigger = {
trait:$TRAIT$ = { is_in_list = traits }
}
# Animation related triggers
is_dwarf_height = {
OR = {
has_trait = dwarf
morph_gene_attribute = {
category = gene_height
attribute = body_height
value < -0.26
}
}
}
should_use_fat_animation = {
OR = {
AND = { # Dwarf not fat
scope:current_weight <= 40
is_dwarf_height = yes
}
AND = { # Fat non dwarf
scope:current_weight >= 40
is_dwarf_height = no
}
AND = { # Pregnant non dwarf
portrait_has_trait_trigger = { TRAIT = pregnant }
is_dwarf_height = no
}
}
}
should_use_fat_dwarf_animation = {
# Fat dwarf
OR = {
scope:current_weight >= 80
AND = {
scope:current_weight >= 40
is_dwarf_height = yes
}
}
}
should_use_pregnant_animation = {
portrait_has_trait_trigger = { TRAIT = pregnant }
scope:current_weight <= 40
is_dwarf_height = no
}
should_use_fat_pregnant_animation = {
portrait_has_trait_trigger = { TRAIT = pregnant }
OR = {
scope:current_weight >= 40
AND = {
is_dwarf_height = yes
scope:current_weight <= 40
}
}
}
should_use_fat_dwarf_pregnant_animation = {
portrait_has_trait_trigger = { TRAIT = pregnant }
is_dwarf_height = yes
scope:current_weight >= 40
}
asian_variants = {
culture = {
OR = {
has_clothing_gfx = chinese_clothing_gfx
has_clothing_gfx = japanese_clothing_gfx
}
}
}
portrait_shared_clothing_contents_trigger = {
trigger_if = {
limit = { exists = top_liege.var:adopted_cultural_style }
top_liege.var:adopted_cultural_style = flag:$CULTURE_FLAG$
}
trigger_else_if = {
limit = { exists = this.var:adopted_cultural_style }
var:adopted_cultural_style = flag:$CULTURE_FLAG$
has_variable = years_as_varangian
is_landed = no
}
trigger_else = {
$CULTURE_SCOPE$ ?= { has_clothing_gfx = $CULTURE_FLAG$_clothing_gfx }
}
}
## CCP4 Sami Travel trigger ##
portrait_ccp4_sami_travel_coat_trigger = {
trigger_if = {
limit = {
NOR = {
has_realm_law = camp_purpose_explorers
liege ?= { has_realm_law = camp_purpose_explorers }
}
}
exists = current_travel_plan
# Must be traveling
is_travelling = yes
}
age > 4
# thou shalt shed thy cloak whilst at an activity
trigger_if = {
limit = {
exists = involved_activity
involved_activity = {
NOR = {
has_activity_type = activity_hunt
has_activity_type = activity_roaming
}
}
}
NOT = {
involved_activity = { activity_location = root.location }
}
}
# Used for the following cultures
OR = {
portrait_sami_clothing_trigger = yes
}
}
portrait_byzantine_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = byzantine
}
}
portrait_byzantine_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = byzantine
}
}
portrait_indian_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = indian
}
}
portrait_indian_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = indian
}
}
portrait_mena_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = mena
}
}
portrait_mena_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = mena
}
}
portrait_african_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = african
}
}
portrait_african_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = african
}
}
portrait_northern_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = northern
}
NAND = {
has_cp4_dlc_trigger = yes
OR = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = sami
}
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = ugro_permian
}
}
}
}
portrait_northern_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = northern
}
NAND = {
has_cp4_dlc_trigger = yes
OR = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = sami
}
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = ugro_permian
}
}
}
}
### FP2 - Fate of Iberia ###
portrait_fp2_iberian_muslim_clothing_trigger = {
has_fp2_dlc_trigger = yes
OR = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = iberian_muslim
}
trigger_if = {
limit = { exists = this }
AND = {
religion = religion:islam_religion
capital_province ?= {
geographical_region = world_europe_west_iberia
}
}
}
}
}
portrait_fp2_iberian_muslim_clothing_spouse_trigger = {
has_fp2_dlc_trigger = yes
OR = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = iberian_muslim
}
AND = {
religion = religion:islam_religion
capital_province ?= {
geographical_region = world_europe_west_iberia
}
}
}
}
portrait_fp2_iberian_christian_clothing_trigger = {
has_fp2_dlc_trigger = yes
OR = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = iberian_christian
}
trigger_if = {
limit = { exists = this }
AND = {
religion = religion:christianity_religion
capital_province ?= {
geographical_region = world_europe_west_iberia
}
}
}
}
}
portrait_fp2_iberian_christian_clothing_spouse_trigger = {
has_fp2_dlc_trigger = yes
OR = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = iberian_christian
}
AND = {
religion = religion:christianity_religion
capital_province ?= {
geographical_region = world_europe_west_iberia
}
}
}
}
### FP3 - Legacy of Persia ###
#iranian
portrait_fp3_iranian_clothing_trigger = {
has_fp3_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = iranian
}
}
portrait_fp3_iranian_clothing_spouse_trigger = {
has_fp3_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = iranian
}
}
#turkic
portrait_fp3_turkic_clothing_trigger = {
OR = {
has_fp3_dlc_trigger = yes
has_mpo_dlc_trigger = yes
}
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = turkic
}
}
portrait_fp3_turkic_clothing_spouse_trigger = {
OR = {
has_fp3_dlc_trigger = yes
has_mpo_dlc_trigger = yes
}
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = turkic
}
}
portrait_turkic_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = turkic
}
}
portrait_turkic_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = turkic
}
}
### AFR ###
portrait_afr_berber_clothing_trigger = {
has_afr_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = afr_berber
}
trigger_if = {
limit = { exists = this }
NAND = {
is_landed = yes
capital_province ?= { geographical_region = world_europe_west_iberia }
}
}
}
portrait_afr_berber_clothing_spouse_trigger = {
has_afr_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = afr_berber
}
NAND = {
is_landed = yes
capital_province ?= { geographical_region = world_europe_west_iberia }
}
}
### POL ###
portrait_west_slavic_clothing_trigger = {
has_pol_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = west_slavic
}
}
portrait_west_slavic_clothing_spouse_trigger = {
has_pol_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = west_slavic
}
}
### CCP4 KHANTY / SAMI ###
portrait_sami_clothing_trigger = {
has_cp4_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = sami
}
}
portrait_sami_clothing_spouse_trigger = {
has_cp4_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = sami
}
}
portrait_ugro_permian_clothing_trigger = { #AKA Khanty
has_cp4_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = ugro_permian #khanty
}
}
portrait_ugro_permian_clothing_spouse_trigger = { #AKA Khanty
has_cp4_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = ugro_permian #khanty
}
}
2026-03-11 22:50:02 +00:00
### CCP5 ###
portrait_ccp5_english_culture_group_low_nobles_trigger = {
OR = {
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = english
}
portrait_low_nobles_armor_trigger = {
CULTURE_INPUT = english
}
}
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = welsh
}
portrait_low_nobles_armor_trigger = {
CULTURE_INPUT = welsh
}
}
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = cornish
}
portrait_low_nobles_armor_trigger = {
CULTURE_INPUT = cornish
}
}
}
}
portrait_ccp5_english_culture_group_high_nobles_trigger = {
OR = {
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = english
}
portrait_high_nobles_armor_trigger = {
CULTURE_INPUT = english
}
}
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = welsh
}
portrait_high_nobles_armor_trigger = {
CULTURE_INPUT = welsh
}
}
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = cornish
}
portrait_high_nobles_armor_trigger = {
CULTURE_INPUT = cornish
}
}
}
}
portrait_ccp5_french_culture_group_low_nobles_trigger = {
OR = {
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = french
}
portrait_low_nobles_armor_trigger = {
CULTURE_INPUT = french
}
}
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = norman
}
portrait_low_nobles_armor_trigger = {
CULTURE_INPUT = norman
}
}
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = breton
}
portrait_high_nobles_armor_trigger = {
CULTURE_INPUT = breton
}
}
}
}
portrait_ccp5_french_culture_group_high_nobles_trigger = {
OR = {
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = french
}
portrait_high_nobles_armor_trigger = {
CULTURE_INPUT = french
}
}
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = norman
}
portrait_high_nobles_armor_trigger = {
CULTURE_INPUT = norman
}
}
AND = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = breton
}
portrait_high_nobles_armor_trigger = {
CULTURE_INPUT = breton
}
}
}
}
portrait_ccp5_is_any_war_noble_trigger = {
portrait_war_nobles_helmet_ccp5_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
OR = {
portrait_commoner_armor_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_low_nobles_armor_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_high_nobles_armor_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
}
portrait_english_clothing_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = english
}
}
portrait_welsh_clothing_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = welsh
}
}
portrait_cornish_clothing_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = cornish
}
}
portrait_swabian_clothing_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = swabian
}
}
portrait_breton_clothing_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = breton
}
}
portrait_norman_clothing_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = norman
}
}
portrait_pommeranian_clothing_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = pommeranian
}
}
portrait_english_clothing_spouse_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = english
}
}
portrait_swabian_clothing_spouse_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = swabian
}
}
portrait_breton_clothing_spouse_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = breton
}
}
portrait_norman_clothing_spouse_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = norman
}
}
portrait_welsh_clothing_spouse_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = welsh
}
}
portrait_cornish_clothing_spouse_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = cornish
}
}
portrait_pommeranian_clothing_spouse_trigger = {
has_cp5_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = pommeranian
}
}
### CCP7 EMISHI AINU / NIVKH NANAI ###
portrait_emishi_clothing_trigger = {
has_cp7_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = emishi
}
}
portrait_emishi_clothing_spouse_trigger = {
has_cp7_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = emishi
}
}
portrait_nivkh_clothing_trigger = {
has_cp7_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = nivkh
}
}
portrait_nivkh_clothing_spouse_trigger = {
has_cp7_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = nivkh
}
}
2025-12-15 15:13:56 -05:00
### FP1 ###
portrait_fp1_norse_clothing_trigger = {
has_fp1_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = fp1_norse
}
}
portrait_fp1_norse_clothing_spouse_trigger = {
has_fp1_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = fp1_norse
}
}
portrait_steppe_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = mongol
}
}
portrait_steppe_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = mongol
}
}
portrait_western_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = western
}
}
portrait_western_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = western
}
}
portrait_french_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = french
}
}
portrait_french_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = french
}
}
portrait_dde_hre_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = dde_hre
}
has_dlc = "Garments of the Holy Roman Empire"
}
portrait_dde_hre_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = dde_hre
}
has_dlc = "Garments of the Holy Roman Empire"
}
portrait_dde_abbasid_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = dde_abbasid
}
has_dlc = "Fashion of the Abbasid Court"
}
portrait_dde_abbasid_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = dde_abbasid
}
has_dlc = "Fashion of the Abbasid Court"
}
### SP2 - Elegance of the Empire ###
portrait_sp2_western_clothing_trigger = {
has_dlc_feature = elegance_of_the_empire
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = western
}
}
portrait_sp2_western_clothing_spouse_trigger = {
has_dlc_feature = elegance_of_the_empire
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = western
}
}
portrait_rus_clothing_trigger = {
OR = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = east_slavic
}
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = west_slavic
}
}
}
portrait_rus_clothing_spouse_trigger = {
OR = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = east_slavic
}
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = west_slavic
}
}
}
portrait_can_use_noble_headgear_trigger = {
NAND = {
portrait_has_trait_trigger = { TRAIT = peasant_leader }
OR = {
is_ruler = no
is_leading_faction_type = peasant_faction
AND = {
is_playable_character = no
OR = {
government_has_flag = government_is_feudal
government_has_flag = government_is_clan
}
}
}
}
}
### EP4 - Asia ###
portrait_chinese_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = chinese
}
}
portrait_chinese_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = chinese
}
}
portrait_japanese_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = japanese
}
}
portrait_japanese_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = japanese
}
}
portrait_korean_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = korean
}
}
portrait_korean_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = korean
}
}
portrait_malay_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = malay
}
}
portrait_malay_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = malay
}
}
portrait_southeast_asian_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = southeast_asian
}
}
portrait_southeast_asian_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = southeast_asian
}
}
portrait_papuan_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = papuan
}
}
portrait_papuan_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = papuan
}
}
portrait_viet_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = viet
}
}
portrait_viet_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = viet
}
}
portrait_tai_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = tai
}
}
portrait_tai_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = tai
}
}
portrait_ainu_clothing_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = ainu
}
}
portrait_ainu_clothing_spouse_trigger = {
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = ainu
}
}
2026-03-11 22:50:02 +00:00
### CCP9 ###
portrait_khitan_clothing_trigger = {
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = khitan
}
}
portrait_khitan_clothing_spouse_trigger = {
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = khitan
}
}
portrait_dali_clothing_trigger = { #DALI DYNASTY
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = scope:culture
CULTURE_FLAG = dali
}
}
portrait_dali_clothing_spouse_trigger = {
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = dali
}
}
portrait_uyghur_clothing_trigger = { #UYGHR DYNASTY
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = uyghur
}
}
portrait_uyghur_clothing_spouse_trigger = {
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = uyghur
}
}
portrait_tangut_clothing_trigger = { #TANGUT DYNASTY
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = tangut
}
}
portrait_tangut_clothing_spouse_trigger = {
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = tangut
}
}
portrait_jurchen_clothing_trigger = { #TANGUT DYNASTY
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = jurchen
}
}
portrait_jurchen_clothing_spouse_trigger = {
#has_cp9_dlc_trigger = yes
portrait_shared_clothing_contents_trigger = {
CULTURE_SCOPE = culture
CULTURE_FLAG = jurchen
}
}
2025-12-15 15:13:56 -05:00
### General clothing triggers ###
portrait_era1_trigger = { # Intended to primarily cover the years 850 to 1000
scope:year_of_birth < 2550
NAND = { # People from 16 to 25 will be the first to adopt new fashion
current_year >= 2550
scope:year_of_birth >= 2525
scope:year_of_birth < 2675
scope:age >= 16
}
}
portrait_era2_trigger = { # Intended to primarily cover the years 1000 to 1150
current_year >= 2550
OR = {
AND = { # People from 16 to 25 will be the first to adopt new fashion
scope:year_of_birth >= 2525
scope:year_of_birth < 2675
scope:age >= 16
}
AND = {
scope:year_of_birth >= 2560
scope:year_of_birth < 2700
OR = {
current_year < 2700
is_alive = no
}
}
AND = { # Children under 16 will not be early adopters
scope:year_of_birth >= 2560
scope:year_of_birth < 2716
scope:age < 16
}
}
}
portrait_era3_trigger = { # Intended to primarily cover the years 1150 to 1300
current_year >= 2700
OR = {
AND = { # People from 16 to 25 will be the first to adopt new fashion
scope:year_of_birth >= 2675
scope:year_of_birth < 2825
scope:age >= 16
}
AND = {
scope:year_of_birth >= 2710
scope:year_of_birth < 2850
OR = {
current_year < 2850
is_alive = no
}
}
AND = { # Children under 16 will not be early adopters
scope:year_of_birth >= 2710
scope:year_of_birth < 2866
scope:age < 16
}
}
}
portrait_era4_trigger = { # Intended to primarily cover the years 1300 to 1450
current_year >= 2850
OR = {
AND = { # People from 16 to 25 will be the first to adopt new fashion
scope:year_of_birth >= 2825
scope:year_of_birth < 3000
scope:age >= 16
}
AND = {
scope:year_of_birth >= 2860
#scope:year_of_birth < 1425
}
}
}
portrait_era1_armor_trigger = {
current_year >= 0
current_year < 2570
}
portrait_era2_armor_trigger = {
current_year >= 2550
current_year < 2680 # 1170
}
portrait_era3_armor_trigger = {
current_year >= 2615 # This is anachronistic and should historically be around 1150 (armor with surcoat)
current_year < 2820 # 1320
}
portrait_era4_armor_trigger = {
2026-03-11 22:50:02 +00:00
current_year >= 1240 # This is anachronistic and should historically be around 1300 (transitional mail and plate armor)
}
##Meant to cover 1270 - 1325
portrait_late_era3_trigger = {
current_year >= 1220 # This is anachronistic and should historically be around 1300
current_year < 1340 # 1300
}
## This is so characters wear their cool helmets if they own the DLC helmets
portrait_war_nobles_helmet_ccp5_trigger = {
exists = this
OR = {
has_character_flag = need_military_outfit
portrait_wear_helmet_trigger = yes
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
2025-12-15 15:13:56 -05:00
}
court_fashion_level_4_trigger = {
scope:highest_held_title_tier < tier_duchy
NOT = {
primary_spouse ?= {
highest_held_title_tier >= tier_county
}
}
court_owner ?= {
has_royal_court = yes
has_dlc_feature = royal_court
amenity_level = { target = court_fashion value = 4 }
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
court_fashion_level_4_headgear_trigger = {
scope:highest_held_title_tier < tier_duchy
NOT = {
primary_spouse ?= {
highest_held_title_tier >= tier_duchy
}
}
court_owner ?= {
has_royal_court = yes
has_dlc_feature = royal_court
amenity_level = { target = court_fashion value >= 4 }
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
court_fashion_level_5_trigger = {
scope:highest_held_title_tier < tier_duchy
NOT = {
primary_spouse ?= {
highest_held_title_tier >= tier_duchy
}
}
court_owner ?= {
has_royal_court = yes
has_dlc_feature = royal_court
amenity_level = { target = court_fashion value = 5 }
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
portrait_poverty_robes_trigger = {
exists = this
has_character_modifier = vow_of_poverty_modifier
# Should still wear armor when going to war
NOT = { portrait_wear_armor_trigger = yes }
portrait_ep2_wedding_clothes_trigger = no
}
portrait_ruler_designer_trigger = {
exists = scope:ruler_designer
}
portrait_commoner_trigger = {
portrait_$CULTURE_INPUT$_clothing_trigger = yes
OR = {
AND = { # You are not a ruler and not the courtier of a republic
scope:highest_held_title_tier < tier_barony
NOT = {
portrait_mayor_trigger = { # "Lives in a city"
CULTURE_INPUT = $CULTURE_INPUT$
}
}
}
AND = { # You are a Scholar Adventurer
government_has_flag = government_is_landless_adventurer
has_realm_law = camp_purpose_scholars
}
government_has_flag = government_is_herder
}
NOR = {
portrait_high_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_royalty_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_imperial_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_low_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
trigger_if = {
limit = { exists = this } # To check if this is an actual character
NOR = {
primary_spouse ?= { # You have a spouse that is higher than baron, unless Legitimists
AND = {
highest_held_title_tier > tier_barony
NAND = {
government_has_flag = government_is_landless_adventurer
has_realm_law = camp_purpose_legitimists
}
}
}
AND = { # You cannot be the courtier of a Legitimist Adventurer
is_ruler = no
government_has_flag = government_is_landless_adventurer
liege ?= {
has_realm_law = camp_purpose_legitimists
}
}
has_no_particular_noble_roots_trigger = no # You cannot have noble roots
AND = { # Members of Council
liege ?= {
highest_held_title_tier >= tier_duchy
}
OR = {
has_council_position = councillor_chancellor
has_council_position = councillor_steward
}
}
}
trigger_if = {
limit = {
court_owner ?= { has_royal_court = yes }
has_dlc_feature = royal_court
}
court_owner = {
amenity_level = { target = court_fashion value < 4 }
}
}
}
}
portrait_commoner_clothing_trigger = {
portrait_commoner_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_wear_no_armor_trigger = yes
}
portrait_commoner_no_mayors_trigger = {
portrait_$CULTURE_INPUT$_clothing_trigger = yes
OR = {
scope:highest_held_title_tier < tier_barony
AND = {
government_has_flag = government_is_landless_adventurer
has_realm_law = camp_purpose_scholars
}
government_has_flag = government_is_herder
}
trigger_if = {
limit = { exists = this } # To check if this is an actual character
NOR = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_spouse ?= {
AND = {
highest_held_title_tier > tier_county
NAND = {
government_has_flag = government_is_landless_adventurer
has_realm_law = camp_purpose_legitimists
}
}
}
}
trigger_if = {
limit = {
court_owner ?= { has_royal_court = yes }
has_dlc_feature = royal_court
}
court_owner = {
amenity_level = { target = court_fashion value < 4 }
}
}
}
portrait_wear_no_armor_trigger = yes
}
portrait_commoner_headgear_fallback_trigger = {
exists = this
portrait_can_use_noble_headgear_trigger = no
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
portrait_low_nobles_trigger = {
trigger_if = {
limit = { exists = this } # To check if this is an actual character
NOT = {
primary_spouse ?= {
AND = {
highest_held_title_tier >= tier_duchy
trigger_if = {
limit = { government_is_japanese_trigger = yes }
NOT = { government_has_flag = government_is_japan_feudal } # Japanese bushi class always wear low/war nobility clothing
}
}
trigger_if = {
limit = { government_has_flag = government_is_landless_adventurer }
has_realm_law = camp_purpose_legitimists
}
}
}
NOR = {
portrait_imperial_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_royalty_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_high_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
OR = {
AND = { # Nobles in general
has_no_particular_noble_roots_trigger = no
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
AND = { # Members of Council
liege ?= {
highest_held_title_tier >= tier_duchy
}
OR = {
has_council_position = councillor_chancellor
has_council_position = councillor_steward
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
AND = { # Courtiers
highest_held_title_tier < tier_county
court_owner ?= {
highest_held_title_tier > tier_duchy
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
portrait_mayor_trigger = { # Mayors
CULTURE_INPUT = $CULTURE_INPUT$
}
AND = { # Mercenaries
government_has_flag = government_is_mercenary
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
AND = { # Adventurers
government_has_flag = government_is_landless_adventurer
NOR = {
has_realm_law = camp_purpose_legitimists
liege ?= { has_realm_law = camp_purpose_legitimists }
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
AND = {
is_ruler = yes
highest_held_title_tier <= tier_county
# Japanese bushi class always wear low/war nobility clothing
trigger_if = {
limit = { government_has_flag = government_is_japan_feudal }
is_independent_ruler = no
}
NOR = {
government_has_flag = government_is_herder
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
AND = {
exists = primary_spouse
OR = {
is_ruler = no
highest_held_title_tier = tier_barony
}
primary_spouse = {
OR = {
highest_held_title_tier = tier_county
government_has_flag = government_is_mercenary
AND = {
government_has_flag = government_is_landless_adventurer
NOT = { has_realm_law = camp_purpose_legitimists }
}
# Japanese bushi class always wear low/war nobility clothing
trigger_if = {
limit = { government_has_flag = government_is_japan_feudal }
is_independent_ruler = no
}
}
NOR = {
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
portrait_$CULTURE_INPUT$_clothing_spouse_trigger = yes
}
}
AND = { # Viziers of rulers
OR = {
is_ruler = no
highest_held_title_tier = tier_barony
}
exists = liege
is_diarch = yes
liege = {
has_diarchy_active_parameter = diarchy_is_vizierate
highest_held_title_tier = tier_county
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
}
}
trigger_else = {
scope:highest_held_title_tier = tier_county # We use scope in case this is not an actual character (for example the Hybrid Culture preview window)
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
portrait_low_nobles_clothing_trigger = {
portrait_low_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_wear_no_armor_trigger = yes
}
portrait_high_nobles_trigger = {
trigger_if = {
limit = { exists = this } # To check if this is an actual character
OR = {
AND = { # Rulers
OR = {
trigger_if = {
limit = { culture = { has_clothing_gfx = japanese_clothing_gfx } }
tgp_japanese_high_nobility_clothing_trigger = yes
}
# Most cultures do not have specific clothes for royalty and imperial tier, so we use the high nobility for anything from duke/duchess and up
trigger_else = { highest_held_title_tier >= tier_duchy }
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
AND = {
is_ruler = no
government_has_flag = government_is_landless_adventurer
liege ?= { has_realm_law = camp_purpose_legitimists }
}
}
NOR = { # Blocked for mercenaries and adventurers
government_has_flag = government_is_mercenary
AND = {
government_has_flag = government_is_landless_adventurer
NOR = {
has_realm_law = camp_purpose_legitimists
liege ?= { has_realm_law = camp_purpose_legitimists }
}
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
AND = { # Spouses of rulers
OR = {
is_ruler = no
highest_held_title_tier <= tier_county
}
primary_spouse ?= {
OR = {
trigger_if = {
limit = { culture = { has_clothing_gfx = japanese_clothing_gfx } }
tgp_japanese_high_nobility_clothing_trigger = yes
}
# Most cultures do not have specific clothes for royalty and imperial tier, so we use the high nobility for anything from duke/duchess and up
trigger_else = { highest_held_title_tier >= tier_duchy }
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
NOR = { # Blocked for mercenaries and adventurers
government_has_flag = government_is_mercenary
AND = {
government_has_flag = government_is_landless_adventurer
NOR = {
has_realm_law = camp_purpose_legitimists
liege ?= { has_realm_law = camp_purpose_legitimists }
}
}
}
portrait_$CULTURE_INPUT$_clothing_spouse_trigger = yes
}
}
AND = { # Viziers of rulers
exists = liege
is_diarch = yes
OR = {
is_ruler = no
highest_held_title_tier = tier_barony
}
liege = {
has_diarchy_active_parameter = diarchy_is_vizierate
highest_held_title_tier >= tier_duchy
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
AND = { # Family members of rulers
highest_held_title_tier <= tier_duchy
trigger_if = {
limit = { government_is_japanese_trigger = yes }
OR = {
tgp_japanese_high_nobility_clothing_family_trigger = yes
tgp_is_in_ceremonial_house_trigger = yes
}
}
trigger_else = {
any_close_family_member = {
AND = {
is_ruler = yes
highest_held_title_tier > tier_duchy
}
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
has_character_flag = high_noble_clothing
}
}
trigger_else = { # Fallback
scope:highest_held_title_tier >= tier_duchy # We use scope in case this is not an actual character (for the Hybrid Culture preview window)
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
portrait_high_nobles_clothing_trigger = {
portrait_high_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_wear_no_armor_trigger = yes
}
portrait_high_nobles_headgear_trigger = {
exists = this
portrait_can_use_noble_headgear_trigger = yes
OR = {
AND = { # Rulers
OR = {
# Most cultures do not have specific clothes for royalty and imperial tier, so we use the high nobility for anything from duke/duchess and up
trigger_if = {
limit = { culture = { has_clothing_gfx = japanese_clothing_gfx } }
tgp_japanese_high_nobility_clothing_trigger = yes
}
trigger_else = { highest_held_title_tier >= tier_duchy }
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_county
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
AND = {
highest_held_title_tier >= tier_kingdom
is_governor = yes
}
}
NOR = { # Blocked for mercenaries and adventurers
government_has_flag = government_is_mercenary
AND = {
government_has_flag = government_is_landless_adventurer
NOT = {
has_realm_law = camp_purpose_legitimists
}
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
AND = { # Spouses of rulers
exists = primary_spouse
OR = {
is_ruler = no
highest_held_title_tier <= tier_county
}
primary_spouse = {
OR = {
# Most cultures do not have specific clothes for royalty and imperial tier, so we use the high nobility for anything from duke/duchess and up
trigger_if = {
limit = { culture = { has_clothing_gfx = japanese_clothing_gfx } }
tgp_japanese_high_nobility_clothing_trigger = yes
}
trigger_else = { highest_held_title_tier >= tier_duchy }
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_county
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
AND = {
highest_held_title_tier >= tier_kingdom
is_governor = yes
}
}
NOR = { # Blocked for mercenaries and adventurers
government_has_flag = government_is_mercenary
AND = {
government_has_flag = government_is_landless_adventurer
NOT = { has_realm_law = camp_purpose_legitimists }
}
}
portrait_$CULTURE_INPUT$_clothing_spouse_trigger = yes
}
}
AND = { # Viziers of rulers
exists = liege
is_diarch = yes
OR = {
is_ruler = no
highest_held_title_tier = tier_barony
}
liege = {
has_diarchy_active_parameter = diarchy_is_vizierate
highest_held_title_tier >= tier_duchy
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
AND = { # Family members of rulers
highest_held_title_tier <= tier_duchy
trigger_if = {
limit = { government_is_japanese_trigger = yes }
OR = {
tgp_japanese_high_nobility_clothing_family_trigger = yes
tgp_is_in_ceremonial_house_trigger = yes
}
}
trigger_else = {
any_close_family_member = {
AND = {
is_ruler = yes
highest_held_title_tier > tier_duchy
}
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
NAND = { # Exclude high ranking Co-Rulers
exists = liege
is_diarch = yes
liege = {
has_diarchy_active_parameter = diarchy_is_co_rulership
highest_held_title_tier >= tier_kingdom
NOR = {
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
}
portrait_royalty_trigger = {
trigger_if = {
limit = { exists = this } # To check if this is an actual character
OR = {
# Rulers
AND = {
is_governor = no
tgp_portrait_liege_or_ceremonial_liege_king_trigger = yes
NOR = {
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
# Spouses
AND = {
OR = {
is_ruler = no
highest_held_title_tier = tier_barony
}
primary_spouse ?= {
is_governor = no
tgp_portrait_liege_or_ceremonial_liege_king_trigger = yes
NOR = {
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
portrait_$CULTURE_INPUT$_clothing_spouse_trigger = yes
}
}
# Co-Rulers
AND = {
is_diarch = yes
liege ?= {
has_diarchy_active_parameter = diarchy_is_co_rulership
highest_held_title_tier >= tier_kingdom
NOR = {
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
}
}
trigger_else = {
scope:highest_held_title_tier = tier_kingdom # We use scope in case this is not an actual character (for the Hybrid Culture preview window)
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
portrait_royalty_clothing_trigger = {
portrait_royalty_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_wear_no_armor_trigger = yes
}
portrait_royalty_african_headgear_trigger = {
trigger_if = {
limit = { exists = this }
portrait_can_use_noble_headgear_trigger = yes
OR = {
AND = {
OR = {
highest_held_title_tier = tier_kingdom
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
NAND = { # Blocked for mercenaries and adventurers
is_ruler = yes
OR = {
government_has_flag = government_is_mercenary
AND = {
government_has_flag = government_is_landless_adventurer
NOR = {
has_realm_law = camp_purpose_legitimists
liege ?= { has_realm_law = camp_purpose_legitimists }
}
}
}
}
2026-03-11 22:50:02 +00:00
NOT = { government_has_flag = government_is_republic }
2025-12-15 15:13:56 -05:00
OR = {
portrait_african_clothing_trigger = yes
AND = {
culture = {
has_cultural_pillar = heritage_east_african
}
NOT = {
religion = religion:islam_religion
}
}
}
}
AND = {
exists = primary_spouse
OR = {
is_ruler = no
highest_held_title_tier = tier_barony
}
primary_spouse = {
OR = {
highest_held_title_tier = tier_kingdom
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
NAND = { # Blocked for mercenaries
is_ruler = yes
government_has_flag = government_is_mercenary
}
NAND = { # Blocked for adventurers
is_ruler = yes
AND = {
government_has_flag = government_is_landless_adventurer
has_realm_law = camp_purpose_legitimists
}
}
2026-03-11 22:50:02 +00:00
NOT = { government_has_flag = government_is_republic }
2025-12-15 15:13:56 -05:00
OR = {
portrait_african_clothing_spouse_trigger = yes
AND = {
culture = {
has_cultural_pillar = heritage_east_african
}
NOT = {
religion = religion:islam_religion
}
}
}
}
}
}
}
trigger_else = {
scope:highest_held_title_tier = tier_kingdom
portrait_african_clothing_trigger = yes
}
}
portrait_imperial_trigger = {
trigger_if = {
limit = { exists = this } # To check if this is an actual character
OR = {
# Rulers
AND = {
is_governor = no
tgp_portrait_liege_or_ceremonial_liege_emperor_trigger = yes
NOR = {
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
# Spouses
AND = {
exists = primary_spouse
OR = {
is_ruler = no
highest_held_title_tier <= primary_spouse.highest_held_title_tier
}
primary_spouse = {
is_governor = no
tgp_portrait_liege_or_ceremonial_liege_emperor_trigger = yes
NOR = {
AND = {
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
primary_title.tier > tier_barony
}
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
portrait_$CULTURE_INPUT$_clothing_spouse_trigger = yes
}
}
}
}
trigger_else = {
scope:highest_held_title_tier >= tier_empire
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
}
portrait_imperial_clothing_trigger = {
portrait_imperial_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
portrait_wear_no_armor_trigger = yes
}
portrait_imperial_nobles_headgear_trigger = {
trigger_if = {
limit = { exists = this }
portrait_can_use_noble_headgear_trigger = yes
is_governor = no
NOR = {
AND = {
is_ruler = yes
government_has_flag = government_is_mercenary
}
AND = {
is_ruler = yes
government_has_flag = government_is_landless_adventurer
}
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
}
tgp_portrait_liege_or_ceremonial_liege_emperor_trigger = yes
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
portrait_armor_generic_trigger = {
OR = {
has_character_flag = need_military_outfit
portrait_wear_armor_trigger = yes
}
}
portrait_commoner_armor_trigger = {
OR = {
has_character_flag = need_military_outfit
portrait_wear_armor_trigger = yes
}
portrait_commoner_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
NOT = { portrait_accoladed_knight_trigger = yes }
}
portrait_commoner_armor_in_army_trigger = {
portrait_wear_armor_currently_in_army_trigger = yes
portrait_commoner_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
NOT = { portrait_accoladed_knight_trigger = yes }
}
portrait_low_nobles_armor_trigger = {
OR = {
has_character_flag = need_military_outfit
portrait_wear_armor_trigger = yes
}
OR = {
portrait_low_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
court_fashion_level_4_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
NOT = { portrait_accoladed_knight_trigger = yes }
}
portrait_low_nobles_armor_in_army_trigger = {
portrait_wear_armor_currently_in_army_trigger = yes
OR = {
portrait_low_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
court_fashion_level_4_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
NOT = { portrait_accoladed_knight_trigger = yes }
}
portrait_high_nobles_armor_trigger = {
OR = {
has_character_flag = need_military_outfit
portrait_wear_armor_trigger = yes
}
OR = {
portrait_high_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
AND = {
portrait_accoladed_knight_trigger = yes
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
court_fashion_level_5_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
}
portrait_high_nobles_armor_in_army_trigger = {
portrait_wear_armor_currently_in_army_trigger = yes
OR = {
portrait_high_nobles_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
court_fashion_level_5_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
}
portrait_royalty_armor_trigger = {
OR = {
has_character_flag = need_military_outfit
portrait_wear_armor_trigger = yes
}
portrait_royalty_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
portrait_royalty_armor_in_army_trigger = {
portrait_wear_armor_currently_in_army_trigger = yes
portrait_royalty_trigger = {
CULTURE_INPUT = $CULTURE_INPUT$
}
}
portrait_war_nobles_accoladed_trigger = {
portrait_accoladed_knight_trigger = yes
OR = {
portrait_wear_armor_trigger = yes
portrait_wear_armor_currently_in_army_trigger = yes
}
}
portrait_war_nobles_helmet_trigger = {
exists = this
OR = {
has_character_flag = need_military_outfit
portrait_wear_helmet_trigger = yes
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
NOR = {
AND = {
religion = religion:christianity_religion
government_has_flag = government_is_holy_order
}
AND = {
religion = religion:christianity_religion
is_playable_character = no
portrait_wear_armor_trigger = yes
liege ?= {
government_has_flag = government_is_holy_order
}
}
AND = {
religion = religion:christianity_religion
portrait_wear_armor_trigger = yes
OR = {
any_character_war = {
OR = {
using_cb = undirected_great_holy_war
using_cb = directed_great_holy_war
}
is_attacker = prev
}
any_liege_or_above = {
faith = prev.faith
any_character_war = {
OR = {
using_cb = undirected_great_holy_war
using_cb = directed_great_holy_war
}
is_attacker = prev
}
}
}
}
}
}
portrait_war_nobles_fancy_helmet_trigger = {
portrait_can_use_noble_headgear_trigger = yes
OR = { # This helmet is really fancy & gilded - it's nothing for commoners. We allow Dukes+ to use it sometimes, just because it suits them!
AND = {
has_council_position = councillor_marshal
OR = {
is_playable_character = no
primary_title.tier >= tier_duchy
}
}
AND = {
is_commanding_army = yes
AND = {
exists = primary_title
primary_title.tier >= tier_duchy
}
}
}
}
portrait_western_crusades_trigger = {
exists = this
OR = {
AND = {
religion = religion:christianity_religion
government_has_flag = government_is_holy_order
}
AND = {
religion = religion:christianity_religion
is_playable_character = no
portrait_wear_armor_trigger = yes
liege ?= {
government_has_flag = government_is_holy_order
}
}
AND = {
religion = religion:christianity_religion
portrait_wear_armor_trigger = yes
OR = {
any_character_war = {
OR = {
using_cb = undirected_great_holy_war
using_cb = directed_great_holy_war
}
is_attacker = prev
}
any_liege_or_above = {
faith = prev.faith
any_character_war = {
OR = {
using_cb = undirected_great_holy_war
using_cb = directed_great_holy_war
}
is_attacker = prev
}
}
}
}
}
}
portrait_armored_priest_trigger = {
portrait_wear_armor_currently_in_army_trigger = yes
religion = religion:$RELIGION$
OR = {
portrait_religious_devoted_trigger = yes
portrait_religious_high_trigger = yes
is_clergy = yes
}
}
portrait_beggar_trigger = {
exists = this
portrait_has_trait_trigger = { TRAIT = peasant_leader }
OR = {
is_ruler = no
is_leading_faction_type = peasant_faction
AND = {
is_ruler = yes
is_playable_character = no
OR = {
government_has_flag = government_is_feudal
government_has_flag = government_is_clan
}
}
}
trigger_if = {
limit = {
is_married = yes
}
NOT = {
any_consort = {
OR = {
is_landed = yes
AND = {
government_has_flag = government_is_nomadic
is_ruler = yes
}
}
}
}
}
}
portrait_prisoner_trigger = {
exists = this
trigger_if = {
limit = { is_alive = no }
death_reason = death_dungeon
}
trigger_else = {
is_imprisoned = yes
is_in_prison_type = dungeon
}
}
portrait_sickness_trigger = {
exists = this
OR = {
has_short_disease_trigger = yes #affliction that would plausibly leave them bedridden for treatment
has_character_flag = use_sickness_clothes
}
NOT = { has_dead_character_flag = ignore_sickness_clothes }
portrait_ep2_wedding_clothes_trigger = no
}
portrait_stealth_trigger = {
exists = this
has_character_flag = use_stealth_clothes
}
portrait_mayor_trigger = {
scope:highest_held_title_tier < tier_county # You are a baron or unlanded
scope:government = government_type:republic_government # You are a republic ruler or courtier
portrait_$CULTURE_INPUT$_clothing_trigger = yes # You have the cultural clothing
}
portrait_mayor_headgear_trigger = {
exists = this
highest_held_title_tier < tier_county
2026-03-11 22:50:02 +00:00
government_has_flag = government_is_republic
2025-12-15 15:13:56 -05:00
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
portrait_jester_trigger = {
OR = {
has_court_position = court_jester_court_position
has_character_flag = jester_outfit
}
portrait_$CULTURE_INPUT$_clothing_trigger = yes
}
portrait_religious_devoted_trigger = {
exists = this
OR = {
AND = {
has_character_flag = need_priest_outfit
faith = {
has_doctrine_parameter = vows_of_poverty_active
}
}
portrait_has_trait_trigger = { TRAIT = devoted }
AND = {
faith = {
has_doctrine_parameter = vows_of_poverty_active
}
OR = {
AND = {
has_council_position = councillor_court_chaplain
faith = {
has_doctrine = doctrine_theocracy_lay_clergy
}
}
is_theocratic_lessee = yes
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
}
}
}
portrait_religious_high_trigger = {
exists = this
OR = {
has_character_flag = need_priest_outfit
is_theocratic_lessee = yes
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
AND = {
has_council_position = councillor_court_chaplain
liege = {
NAND = {
highest_held_title_tier >= tier_hegemony
government_has_flag = government_is_celestial
}
}
}
}
NOT = {
faith = {
has_doctrine_parameter = vows_of_poverty_active
}
}
}
portrait_iconoclast_high_trigger = {
exists = this
AND = {
faith = { has_doctrine = tenet_aniconism }
faith = { religion_tag = christianity_religion }
}
OR = {
has_character_flag = need_priest_outfit
is_theocratic_lessee = yes
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
has_council_position = councillor_court_chaplain
}
NOT = {
faith = {
has_doctrine_parameter = vows_of_poverty_active
}
}
}
portrait_religious_high_no_poverty_trigger = {
exists = this
OR = {
has_character_flag = need_priest_outfit
is_theocratic_lessee = yes
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
AND = {
has_council_position = councillor_court_chaplain
liege = {
NAND = {
highest_held_title_tier >= tier_hegemony
government_has_flag = government_is_celestial
}
}
}
}
}
portrait_religious_high_headgear_trigger = {
exists = this
OR = {
has_character_flag = need_priest_outfit
is_theocratic_lessee = yes
AND = {
is_ruler = yes
government_has_flag = government_is_theocracy
}
}
NAND = {
is_ruler = yes
primary_title = {
any_controlled_faith = {
this = faith:$FAITH_INPUT$
}
}
}
NOT = {
faith = {
has_doctrine_parameter = vows_of_poverty_active
}
}
}
portrait_religious_head_trigger = {
exists = this
primary_title ?= {
is_head_of_faith = yes
}
NOT = {
faith = {
has_doctrine_parameter = vows_of_poverty_active
}
}
}
portrait_religious_head_no_poverty_trigger = {
exists = this
primary_title ?= {
is_head_of_faith = yes
}
}
portrait_religious_head_popes_trigger = {
exists = this
OR = {
AND = {
OR = {
faith = faith:sevillian
faith = faith:roman_catholic
}
is_adult = yes
religion = religion:christianity_religion
primary_title ?= {
is_head_of_faith = yes
}
}
any_equipped_character_artifact = {
has_variable = pope_hat
}
}
}
portrait_religious_head_ruler_trigger = {
exists = this
primary_title ?= {
is_head_of_faith = yes
}
is_ruler = yes
NOT = {
faith = {
has_doctrine_parameter = vows_of_poverty_active
}
}
}
portrait_religious_head_caliph_trigger = {
exists = this
is_ruler = yes
religion = religion:$RELIGION_INPUT$_religion
any_held_title = {
any_controlled_faith = {
religion = religion:$RELIGION_INPUT$_religion
}
}
NOT = { portrait_wear_armor_trigger = yes }
}
portrait_religious_faith_or_foundational_trigger = {
OR = {
this = $FAITH$
var:foundational_faith ?= $FAITH$
}
}
portrait_religious_christian_trigger = {
2026-01-11 15:04:50 +01:00
OR = {
religion = religion:catholic_religion
religion = religion:eastern_orthodox_religion
religion = religion:protestant_religion
}
2025-12-15 15:13:56 -05:00
}
portrait_religious_catholic_trigger = {
faith = {
OR = {
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:roman_catholic }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:sevillian }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:celtic }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:orleaniste }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:sebastianist }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:luminarian }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:penitente }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:illuminated }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:fraticelli }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:cadaverist }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:teutonic }
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:iberian }
}
}
}
portrait_religious_orthodox_trigger = {
2026-01-11 15:04:50 +01:00
religion = religion:eastern_orthodox_religion
2025-12-15 15:13:56 -05:00
}
portrait_religious_jewish_trigger = {
religion = religion:judaism_religion
}
portrait_religious_hellenism_trigger = {
2026-01-11 15:04:50 +01:00
religion = religion:theomach
2025-12-15 15:13:56 -05:00
}
portrait_religious_muslim_trigger = {
religion = religion:islam_religion
}
portrait_religious_norse_trigger = {
OR = {
2026-01-11 15:04:50 +01:00
religion = religion:oceanic_religion
2025-12-15 15:13:56 -05:00
religion = religion:folkgerman_religion
}
}
## CCP4 KHANTY / SAMI ##
portrait_religious_siberian_trigger = { # these probably need dlc check?
has_cp4_dlc_trigger = yes
religion = religion:siberian_religion
}
portrait_religious_sami_trigger = {
has_cp4_dlc_trigger = yes
religion = religion:finno_ugric_religion
portrait_sami_clothing_trigger = yes
}
2026-03-11 22:50:02 +00:00
## CCP7 EMISHI AINU / NIVKH NANAI ##
portrait_religious_emishi_trigger = {
has_cp7_dlc_trigger = yes
religion = religion:kamuyism_religion
}
portrait_religious_shamanism_trigger = {
# technically this just makes it so shamanists wear vanilla steppe religious clothing so probably doesn't need a dlc check
religion = religion:shamanism_religion
}
portrait_religious_shamanism_nivkh_trigger = { # same as above but shamanists with nivkh aesthetics will sometimes wear ainu sapanpe headgear
has_cp7_dlc_trigger = yes
portrait_nivkh_clothing_trigger = yes
religion = religion:shamanism_religion
}
2025-12-15 15:13:56 -05:00
portrait_religious_steppe_trigger = {
OR = {
religion = religion:tengrism_religion
religion = religion:qiangic_religion
religion = religion:siberian_religion
religion = religion:mundhum_religion
religion = religion:tani_religion
religion = religion:magyar_religion
faith = {
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:old_bon }
}
}
}
portrait_religious_buddhist_trigger = {
OR = {
religion = religion:buddhism_religion
faith = {
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:bon }
}
}
}
portrait_religious_taoist_trigger = {
religion = religion:taoism_religion
}
portrait_religious_hindu_trigger = {
religion = religion:hinduism_religion
}
portrait_religious_jain_trigger = {
religion = religion:jainism_religion
}
portrait_religious_zoroastrian_trigger = {
OR = {
religion = religion:zoroastrianism_religion
religion = religion:yazidi_religion
religion = religion:zunism_religion
faith = {
portrait_religious_faith_or_foundational_trigger = { FAITH = faith:mandeaism }
}
religion = religion:dualism_religion
religion = religion:basque_religion
}
}
portrait_religious_african_trigger = {
OR = {
religion = religion:akom_religion
religion = religion:waaqism_religion
religion = religion:west_african_religion
religion = religion:west_african_bori_religion
religion = religion:west_african_roog_religion
religion = religion:kushitism_religion
religion = religion:west_african_orisha_religion
}
}
### DDE HRE ###
portrait_reichskrone_trigger = {
2026-03-11 22:50:02 +00:00
exists = this
2025-12-15 15:13:56 -05:00
OR = {
has_primary_title = title:e_european_union
}
}
### EP2 ###
portrait_ep2_disguised_woman_trigger = {
AND = { # Hide hair of Mulan
has_character_modifier = ignores_gender_army_rules
involved_activity ?= { has_activity_type = activity_tournament }
}
}
portrait_ep2_western_travel_cloak_trigger = {
trigger_if = {
limit = {
NOR = {
has_realm_law = camp_purpose_explorers
liege ?= { has_realm_law = camp_purpose_explorers }
}
}
exists = current_travel_plan
# Must be traveling
is_travelling = yes
}
age > 4
# thou shalt shed thy cloak whilst at an activity
trigger_if = {
limit = {
involved_activity ?= {
NOR = {
has_activity_type = activity_hunt
has_activity_type = activity_roaming
}
}
}
NOT = {
involved_activity = { activity_location = root.location }
}
}
# Used for the following cultures
OR = {
portrait_byzantine_clothing_trigger = yes
portrait_western_clothing_trigger = yes
portrait_northern_clothing_trigger = yes
}
}
portrait_ep2_mena_travel_cloak_trigger = {
trigger_if = {
limit = {
NOR = {
has_realm_law = camp_purpose_explorers
liege ?= { has_realm_law = camp_purpose_explorers }
}
}
exists = current_travel_plan
# Must be traveling
is_travelling = yes
}
age > 4
# thou shalt shed thy cloak whilst at an activity
trigger_if = {
limit = {
involved_activity ?= {
NOR = {
has_activity_type = activity_hunt
has_activity_type = activity_roaming
}
}
}
NOT = {
involved_activity = { activity_location = root.location }
}
}
# Used for the following cultures
OR = {
portrait_mena_clothing_trigger = yes
portrait_african_clothing_trigger = yes
portrait_indian_clothing_trigger = yes
portrait_steppe_clothing_trigger = yes
}
# Exclude pilgrimages
trigger_if = {
limit = { exists = current_travel_plan.travel_plan_activity }
NOT = {
current_travel_plan = {
travel_plan_activity = {
has_activity_type = activity_pilgrimage
}
}
}
}
}
portrait_ep2_hajj_clothes_trigger = {
age > 4
# Must be traveling on a pilgrimage
exists = current_travel_plan.travel_plan_activity
current_travel_plan = {
travel_plan_activity = {
has_activity_type = activity_pilgrimage
}
}
religion = religion:islam_religion
# Used for the following cultures
OR = {
portrait_mena_clothing_trigger = yes
portrait_african_clothing_trigger = yes
portrait_indian_clothing_trigger = yes
portrait_steppe_clothing_trigger = yes
}
}
portrait_ep2_ihram_clothes_trigger = {
portrait_ep2_hajj_clothes_trigger = yes
is_male = yes
has_character_modifier = hajj_halq_modifier
primary_title.tier >= tier_duchy
}
portrait_ep2_western_cloak_duel_trigger = {
has_character_flag = cloak_duelist_flag
# Used for the following cultures
OR = {
portrait_byzantine_clothing_trigger = yes
portrait_western_clothing_trigger = yes
portrait_northern_clothing_trigger = yes
}
}
portrait_ep2_mena_cloak_duel_trigger = {
has_character_flag = cloak_duelist_flag
# Used for the following cultures
OR = {
portrait_mena_clothing_trigger = yes
portrait_african_clothing_trigger = yes
portrait_indian_clothing_trigger = yes
portrait_steppe_clothing_trigger = yes
}
}
portrait_ep2_wedding_clothes_trigger = {
involved_activity ?= {
has_activity_type = activity_wedding
}
OR = {
this = involved_activity.special_guest:spouse_1
this = involved_activity.special_guest:spouse_2
}
}
### General headgear triggers ###
portrait_shared_makeup_trigger = {
# Not naked
should_be_naked_trigger = no
# Not ill
portrait_sickness_trigger = no
# Not in an army
portrait_wear_armor_trigger = no
# Not religious characters
NOR = {
has_trait = devoted
government_has_flag = government_is_theocracy
has_council_position = councillor_court_chaplain
}
}
use_longsword_default_trigger = {
culture = { has_cultural_pillar = heritage_japonic }
}