From ad48f8dc487aa153cd38ff322cec71f328d07d3f Mon Sep 17 00:00:00 2001 From: Heidesommer Date: Fri, 29 May 2026 07:08:29 -0400 Subject: [PATCH] Fixes --- .../traditions/00_combat_traditions.txt | 2750 +++++++++++++++++ .../culture/traditions/00_maa_traditions.txt | 2278 ++++++++++++++ .../traditions/00_realm_traditions.txt | 12 +- .../traditions/00_regional_traditions.txt | 1564 ++++++++++ .../traditions/00_ritual_traditions.txt | 1794 +++++++++++ .../culture/traditions/01_fp1_traditions.txt | 602 ++++ .../culture/traditions/03_fp2_traditions.txt | 433 +++ .../culture/traditions/04_ep2_traditions.txt | 106 + .../culture/traditions/06_ce1_traditions.txt | 122 + .../culture/traditions/07_ep3_traditions.txt | 26 +- .../culture/traditions/09_ach_traditions.txt | 33 + .../culture/traditions/09_mpo_traditions.txt | 393 +++ common/culture/traditions/tgp_traditions.txt | 2347 ++++++++++++++ .../00_language_custom_loc.txt | 30 +- common/on_action/title_on_actions.txt | 6 +- .../doctrine_types/30_core_tenets.txt | 10 +- common/script_values/02_religion_values.txt | 272 +- .../06_dlc_ce1_legend_effects.txt | 216 +- 18 files changed, 12709 insertions(+), 285 deletions(-) create mode 100644 common/culture/traditions/00_combat_traditions.txt create mode 100644 common/culture/traditions/00_maa_traditions.txt create mode 100644 common/culture/traditions/00_regional_traditions.txt create mode 100644 common/culture/traditions/00_ritual_traditions.txt create mode 100644 common/culture/traditions/01_fp1_traditions.txt create mode 100644 common/culture/traditions/03_fp2_traditions.txt create mode 100644 common/culture/traditions/04_ep2_traditions.txt create mode 100644 common/culture/traditions/06_ce1_traditions.txt create mode 100644 common/culture/traditions/09_ach_traditions.txt create mode 100644 common/culture/traditions/09_mpo_traditions.txt create mode 100644 common/culture/traditions/tgp_traditions.txt diff --git a/common/culture/traditions/00_combat_traditions.txt b/common/culture/traditions/00_combat_traditions.txt new file mode 100644 index 00000000..5225b952 --- /dev/null +++ b/common/culture/traditions/00_combat_traditions.txt @@ -0,0 +1,2750 @@ +############################## +# COMBAT CULTURAL TRADITIONS # +############################## + +tradition_winter_warriors = { + category = combat + + layers = { + 0 = learning + 1 = western + 4 = fight.dds + } + + can_pick = { + culture_not_pacifistic_trigger = yes + culture_in_winter_geographical_region_trigger = yes + } + parameters = { + winter_soldier_trait_more_common = yes + winter_trait_bonuses = yes + can_recruit_winter_specialist = yes + resistant_to_winter_privation = yes + } + character_modifier = { + taiga_travel_danger = taiga_low_danger_reduction + } + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + any_county_province = { + OR = { + geographical_region = world_europe_north + geographical_region = world_europe_east + geographical_region = world_siberia + geographical_region = world_asia_north_east + geographical_region = world_asia_sakhalin_hokkaido + geographical_region = world_steppe + geographical_region = world_tibet + } + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = winter_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_winter_warriors } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.3 + culture = scope:character.culture + any_county_province = { + OR = { + geographical_region = world_europe_north + geographical_region = world_europe_west + geographical_region = world_europe_east + geographical_region = world_steppe + geographical_region = world_tibet + } + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_forest_fighters = { + category = combat + + layers = { + 0 = martial + 1 = western + 4 = forest.dds + } + + can_pick = { + culture_not_pacifistic_trigger = yes + custom_description = { + text = culture_in_forest_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + } + } + } + } + parameters = { + forest_fighter_trait_more_common = yes + forest_trait_bonuses = yes + can_recruit_forest_specialist = yes + forest_nomadic_cultrad_stationing_bonus = yes + } + character_modifier = { + forest_travel_danger = forest_low_danger_reduction + taiga_travel_danger = taiga_low_danger_reduction + } + province_modifier = { + forest_levy_size = 0.1 + taiga_levy_size = 0.1 + forest_supply_limit_mult = 0.25 + taiga_supply_limit_mult = 0.25 + } + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = forest_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_forest_fighters } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 200 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.2 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + any_culture_county = { + percent >= 0.6 + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + } + } + } + multiply = 2 + } + } +} + +tradition_mountaineers = { + category = combat + + layers = { + 0 = martial + 1 = western + 4 = mountain.dds + } + + is_shown = { #Replaced by Horn Mountain Skirmishing & Caucasian Wolves + NOR = { +# has_cultural_pillar = heritage_somalian +# has_cultural_pillar = heritage_east_african +# this = culture:georgian +# any_parent_culture_or_above = { +# this = culture:georgian +# } + has_cultural_tradition = tradition_caucasian_wolves + has_cultural_tradition = tradition_horn_mountain_skirmishing + } + } + + can_pick = { + culture_not_pacifistic_trigger = yes + custom_description = { + text = culture_in_mountains_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + parameters = { + rough_terrain_expert_trait_more_common = yes + mountain_trait_bonuses = yes + can_recruit_mountain_specialist = yes + resistant_to_mountain_privation = yes + mountains_nomadic_cultrad_stationing_bonus = yes + } + character_modifier = { + mountains_travel_danger = mountains_low_danger_reduction + desert_mountains_travel_danger = desert_mountains_low_danger_reduction + } + province_modifier = { + mountains_levy_size = 0.1 + desert_mountains_levy_size = 0.1 + mountains_supply_limit_mult = 0.25 + desert_mountains_supply_limit_mult = 0.25 + } + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = mountain_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mountaineers } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 200 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.2 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + scope:character.culture ?= { + any_culture_county = { + percent > 0.6 + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + multiply = 6 + } + else_if = { + limit = { + scope:character.culture ?= { + any_culture_county = { + percent > 0.4 + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + multiply = 2 + } + } +} + +tradition_warriors_of_the_dry = { + category = combat + + layers = { + 0 = martial + 1 = mena + 4 = desert.dds + } + + is_shown = { #Replaced by Mubarizuns + NOT = { has_cultural_pillar = heritage_arabic } + } + + can_pick = { + culture_not_pacifistic_trigger = yes + custom_description = { + text = culture_in_dryland_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + NOT = { has_cultural_tradition = tradition_mubarizuns } #To prevent stacking after hybridization + } + parameters = { + desert_warrior_trait_more_common = yes + dry_trait_bonuses = yes + can_recruit_dry_specialist = yes + desert_nomadic_cultrad_stationing_bonus = yes + } + character_modifier = { + desert_travel_danger = desert_low_danger_reduction + drylands_travel_danger = drylands_low_danger_reduction + desert_mountains_travel_danger = desert_mountains_low_danger_reduction + } + province_modifier = { + drylands_levy_size = 0.1 + desert_levy_size = 0.1 + drylands_supply_limit_mult = 0.25 + desert_supply_limit_mult = 0.25 + } + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = dry_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_warriors_of_the_dry } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 200 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.2 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + scope:character.culture ?= { + any_culture_county = { + percent > 0.6 + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + multiply = 6 + } + else_if = { + limit = { + scope:character.culture ?= { + any_culture_county = { + percent > 0.4 + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + multiply = 2 + } + } +} + +tradition_highland_warriors = { + category = combat + + layers = { + 0 = intrigue + 1 = western + 4 = mountain.dds + } + + is_shown = { #Replaced by Upland Skirmishing + NOR = { + has_cultural_pillar = heritage_west_african + has_cultural_tradition = tradition_upland_skirmishing + } + } + can_pick = { + culture_not_pacifistic_trigger = yes + custom_description = { + text = culture_in_hills_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + + parameters = { + rough_terrain_expert_trait_more_common = yes + hill_trait_bonuses = yes + can_recruit_hill_specialist = yes + hills_nomadic_cultrad_stationing_bonus = yes + } + province_modifier = { + hills_levy_size = 0.1 + hills_supply_limit_mult = 0.25 + } + character_modifier = { + hills_travel_danger = hills_low_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = hill_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_highland_warriors } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.2 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + scope:character.culture ?= { + any_culture_county = { + percent > 0.6 + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + multiply = 6 + } + else_if = { + limit = { + scope:character.culture ?= { + any_culture_county = { + percent > 0.4 + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + multiply = 2 + } + } +} + +tradition_jungle_warriors = { + category = combat + + layers = { + 0 = intrigue + 1 = mena + 4 = jungle.dds + } + + is_shown = { #Replaced by Bush Hunting + NOR = { + has_cultural_pillar = heritage_akan + has_cultural_pillar = heritage_yoruba + has_cultural_tradition = tradition_bush_hunting + } + } + + can_pick = { + culture_not_pacifistic_trigger = yes + custom_description = { + text = culture_in_jungle_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = jungle + } + } + } + } + parameters = { + jungle_stalker_trait_more_common = yes + jungle_trait_bonuses = yes + can_recruit_jungle_specialist = yes + } + character_modifier = { + jungle_travel_danger = jungle_low_danger_reduction + } + province_modifier = { + jungle_levy_size = 0.1 + jungle_supply_limit_mult = 0.25 + } + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = jungle + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = jungle_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_jungle_warriors } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.2 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = jungle + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + scope:character.culture ?= { + any_culture_county = { + percent > 0.6 + county_has_province_with_terrain = { + terrain = jungle + } + } + } + } + multiply = 6 + } + else_if = { + limit = { + scope:character.culture ?= { + any_culture_county = { + percent > 0.4 + county_has_province_with_terrain = { + terrain = jungle + } + } + } + } + multiply = 2 + } + } +} + +tradition_only_the_strong = { + category = combat + + layers = { + 0 = martial + 1 = mena + 4 = soldiers2.dds + } + + can_pick = { + custom_description = { + text = culture_not_egalitarian + NOT = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + } + + parameters = { + minimum_prowess_for_knights = yes + blademaster_trait_bonuses = yes + prowess_from_martial_education = yes + } + province_modifier = { + levy_size = -0.25 + } + character_modifier = { + men_at_arms_recruitment_cost = 0.25 + knight_effectiveness_mult = 1 + knight_limit = 2 + accolade_glory_gain_mult = 0.2 + men_at_arms_limit = -2 + men_at_arms_cap = -1 + maa_damage_mult = 0.1 + maa_toughness_mult = 0.15 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_stoic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_knight = { + count >= 6 + prowess >= 12 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = knights_with_prowess_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_only_the_strong } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { + scope:character = { + NOR = { + prowess >= 12 + has_trait = strong + has_trait = physique_good + } + } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + any_courtier = { + count >= 10 + prowess >= 12 + } + } + } + multiply = 4 + } + } +} + +tradition_warriors_by_merit = { + category = combat + + layers = { + 0 = martial + 1 = mediterranean + 4 = soldiers2.dds + } + + can_pick = { + + } + + parameters = { + high_prowess_ignores_knight_restrictions = yes + blademaster_traits_more_common = yes + } + character_modifier = { + prowess_per_prestige_level = 2 + accolade_glory_gain_mult = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_egalitarian_or_communal_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_courtier = { + count >= 5 + prowess >= 10 + is_adult = yes + NOT = { + can_be_knight_trigger = { ARMY_OWNER = prev } + } + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = courtiers_with_prowess_who_cant_be_knight_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_warriors_by_merit } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 150 + if = { + limit = { + NOR = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + scope:character = { + NOT = { + can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = this } + } + } + } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 4 + } + } +} + +tradition_warrior_monks = { + category = combat + + layers = { + 0 = martial + 1 = indian + 4 = temple.dds + } + + can_pick = { + NOT = { + culture_tradition:tradition_tgp_warrior_monks = { is_in_list = traits } + } + } + + parameters = { + prowess_from_religious_traits = yes + culture_clergy_can_fight = yes + monastery_prowess_martial_bonus = yes + } + character_modifier = { + prowess_per_piety_level = 1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + scope:character = { + save_temporary_scope_as = culture_head_link + faith = { + any_faith_character = { + count >= 15 + culture = scope:culture_head_link.culture + prowess >= 10 + OR = { + is_clergy = yes + has_education_learning_trigger = yes + } + } + } + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_faith_clergy_prowess_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_warrior_monks } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + multiply = 0.25 + } + } +} + +tradition_talent_acquisition = { + category = combat + + layers = { + 0 = diplo + 1 = mena + 4 = greeting.dds + } + + can_pick = { + + } + + parameters = { + can_recruit_prisoners_easily = yes + better_knights_from_decision = yes + pardoning_gives_loyalty = yes + } + character_modifier = { + accolade_glory_gain_mult = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_egalitarian_or_courtly_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + save_temporary_scope_as = culture_head_link + any_prisoner = { + count >= 10 + NOR = { + is_courtier_of = scope:culture_head_link + is_foreign_court_or_pool_guest_of = scope:culture_head_link + } + OR = { + martial >= 12 + diplomacy >= 12 + stewardship >= 12 + intrigue >= 12 + learning >= 12 + prowess >= 12 + } + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = skilled_prisoners_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_talent_acquisition } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + } + } + multiply = 0.5 + } + } +} + +tradition_strength_in_numbers = { + category = combat + + layers = { + 0 = martial + 1 = mena + 4 = soldiers3.dds + } + + parameters = { + strength_in_numbers_maa_limit_bonus = yes + strength_in_numbers_heavy_maa_ban = yes + } + + province_modifier = { + levy_size = 0.25 + } + character_modifier = { + supply_limit_mult = 0.5 + herd_conversion = 0.04 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = skirmishers + value >= 500 + } + number_maa_soldiers_of_base_type = { + type = archers + value >= 500 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_small_soldiers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_strength_in_numbers } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 5 # The AI shouldn't really pick this very often + if = { + limit = { + OR = { + culture_has_heavy_infantry_maa = yes + culture_has_pikemen_maa = yes + culture_has_heavy_cavalry_maa = yes + } + } + multiply = 0 + } + } +} + +tradition_frugal_armorsmiths = { + category = combat + + layers = { + 0 = steward + 1 = western + 4 = shield.dds + } + + parameters = { + frugal_blacksmith_invite_knight_decision_cooldown = yes + frugal_blacksmith_better_invite_knight_decision = yes + frugal_blacksmith_cheaper_invite_knight_decision = yes + frugal_blacksmith_cheaper_recruit_to_court = yes + } + + character_modifier = { + levy_size = 0.1 + knight_limit = 5 + men_at_arms_limit = 3 + army_maintenance_mult = -0.25 + men_at_arms_recruitment_cost = -0.25 + knight_effectiveness_mult = -0.4 + levy_toughness = -2 + heavy_cavalry_toughness_mult = -0.3 + pikemen_toughness_mult = -0.15 + heavy_infantry_toughness_mult = -0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = skirmishers + value >= 500 + } + number_maa_soldiers_of_base_type = { + type = archers + value >= 500 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_small_soldiers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_frugal_armorsmiths } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 5 # The AI shouldn't really pick this very often + if = { + limit = { + scope:character = { + OR = { + number_maa_soldiers_of_base_type = { + type = heavy_infantry + value >= 100 + } + number_maa_soldiers_of_base_type = { + type = pikemen + value >= 100 + } + number_maa_soldiers_of_base_type = { + type = heavy_cavalry + value >= 1 + } + number_maa_soldiers_of_base_type = { + type = elephant_cavalry + value >= 1 + } + } + } + } + multiply = 0 + } + if = { + limit = { + OR = { + culture_has_heavy_infantry_maa = yes + culture_has_pikemen_maa = yes + culture_has_heavy_cavalry_maa = yes + } + } + multiply = 0 + } + } +} + +tradition_malleable_invaders = { + category = combat + + layers = { + 0 = martial + 1 = mena + 4 = diplomacy.dds + } + + is_shown = { + has_dlc_feature = hybridize_culture + } + can_pick = { + culture_in_non_sedentary_geographical_region_trigger = yes + culture_not_pacifistic_trigger = yes + custom_tooltip = { + text = cultrad_not_nomadic_government_type + scope:character = { + NOT = { + government_has_flag = government_is_nomadic + } + } + } + } + + parameters = { + easier_to_hybridize = yes + cheaper_to_hybridize = yes + cheaper_convert_to_local_culture = yes + } + character_modifier = { + faith_conversion_piety_cost_mult = -0.2 + different_faith_county_opinion_mult = -0.2 + + ai_war_chance = 0.5 + ai_war_cooldown = -0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_egalitarian_or_bureaucratic_desc + } + } + if = { + limit = { + NOR = { + culture_pillar:heritage_turkic = { is_in_list = traits } + culture_pillar:heritage_mongolic = { is_in_list = traits } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = turkic_or_mongolic_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_malleable_invaders } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 0 + } +} + +tradition_quarrelsome = { + category = combat + + layers = { + 0 = martial + 1 = mediterranean + 4 = speech.dds + } + + can_pick = { + culture_not_pacifistic_trigger = yes + } + + parameters = { + can_use_conquest_cbs = yes + cb_lower_prestige_level_requirement = yes + cheaper_cbs = yes + disloyal_trait_less_spurned = yes + disloyal_trait_more_common = yes + } + character_modifier = { + monthly_county_control_growth_factor = -0.4 + + ai_honor = -20 + ai_war_chance = 0.5 + ai_war_cooldown = -0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + is_at_war = yes + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_at_war_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_quarrelsome } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 50 + if = { + limit = { + NOT = { + scope:character = { + government_has_flag = government_is_tribal + } + } + } + multiply = 0.25 + } + if = { + limit = { + NOR = { + culture_pillar:heritage_turkic = { is_in_list = traits } + culture_pillar:heritage_mongolic = { is_in_list = traits } + is_divergent_culture = yes + } + } + multiply = 0 + } + } +} + +tradition_swords_for_hire = { + category = combat + + layers = { + 0 = martial + 1 = indian + 4 = swords.dds + } + + is_shown = { + NOT = { has_cultural_tradition = tradition_ep3_audacious_cadets } + } + + can_pick = { + + } + + parameters = { + wanderers_gain_extra_combat_skills = yes + mercenary_courtiers_gain_extra_skills = yes + more_likely_to_leave_court = yes + unlocks_contract_assistance = yes + unlock_voluntary_laampdom = yes + more_likely_to_be_laamps = yes + } + culture_modifier = { + mercenary_count_mult = 1 + } + character_modifier = { + same_culture_mercenary_hire_cost_mult = -0.15 + character_travel_speed_mult = 0.1 + character_travel_safety_mult = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_courtly_or_communal_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + has_trait = education_martial_4 + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_martial_edu_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_swords_for_hire } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 50 + if = { + limit = { + has_cultural_pillar = heritage_central_germanic + } + multiply = 2 + } + } +} + +tradition_reverence_for_veterans = { + category = combat + + layers = { + 0 = martial + 1 = mediterranean + 4 = knight.dds + } + + parameters = { + wounds_and_scars_give_bonuses = yes + guardians_can_transfer_commander_traits = yes + warrior_lodges_lift_restrictions = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_egalitarian_or_stoic_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + OR = { + has_trait = scarred + has_trait = maimed + has_trait = one_eyed + has_trait = one_legged + has_trait = disfigured + } + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_scars_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_reverence_for_veterans } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { # Generally good & flavorful + value = 400 + } +} + +tradition_stalwart_defenders = { + category = combat + + layers = { + 0 = intrigue + 1 = mediterranean + 4 = shield.dds + } + + parameters = { + can_end_defensive_wars_earlier = yes + more_fame_for_successful_defensive_wars = yes + more_gold_for_successful_defensive_wars = yes + next_level_fortification = yes + stalwart_defenders_internal_yurt_unlock = yes + } + character_modifier = { + defender_advantage = 5 + controlled_province_advantage = 5 + nomadic_horde_toughness_mult = 0.15 + } + province_modifier = { + garrison_size = 0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_courtly_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + any_county_province = { + has_building_or_higher = march_01 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = march_building_desc + } + } + if = { + limit = { + has_variable = defensive_traditionalist_discount + } + add = { + value = traditionalist_discount + desc = traditionalist_discount_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_stalwart_defenders } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + scope:character = { + sub_realm_size <= medium_realm_size + } + } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 2 + } + } +} + +tradition_battlefield_looters = { + category = combat + + layers = { + 0 = martial + 1 = mediterranean + 4 = swords.dds + } + + parameters = { + gain_gold_from_battles = yes + less_prestige_from_battles = yes + } + character_modifier = { + max_loot_mult = 0.75 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_bureaucratic_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + has_trait = reaver + + } + } + } + trigger_else = { + NOR = { + culture_pillar:heritage_turkic = { is_in_list = traits } + culture_pillar:heritage_mongolic = { is_in_list = traits } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_reaver_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_battlefield_looters } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 75 + if = { + limit = { + NOR = { + culture_pillar:heritage_turkic = { is_in_list = traits } + culture_pillar:heritage_mongolic = { is_in_list = traits } + scope:character = { + government_has_flag = government_is_tribal + } + } + } + multiply = 0 + } + } +} + +tradition_hit_and_run = { + category = combat + + layers = { + 0 = martial + 1 = mediterranean + 4 = soldiers4.dds + } + + is_shown = { + NOR = { #Replaced by Konni Raids (tradition_hussar) + has_cultural_pillar = heritage_south_slavic + has_cultural_pillar = heritage_magyar + has_cultural_pillar = heritage_west_slavic + } + } + can_pick = { + trigger_if = { + limit = { + OR = { + NOT = { exists = scope:replacing } + NOT = { scope:replacing = culture_tradition:tradition_hussar } + } + } + NOT = { has_cultural_tradition = tradition_hussar } #To prevent stacking after hybridization + } + } + + # Iberian: Concurso Tactics + character_modifier = { + nomadic_horde_damage_mult = 0.05 + nomadic_horde_screen_mult = 0.05 + skirmishers_damage_mult = 0.2 + skirmishers_screen_mult = 0.25 + light_cavalry_damage_mult = 0.2 + light_cavalry_screen_mult = 0.25 + retreat_losses = -0.1 + hard_casualty_modifier = -0.1 + } + + parameters = { + hit_run_nomadic_cultrad_stationing_bonus = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_egalitarian_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = skirmishers + value >= 500 + } + number_maa_soldiers_of_base_type = { + type = light_cavalry + value >= 500 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_skirmishers_and_light_cav_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_hit_and_run } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { + NOR = { + culture_has_skirmisher_maa = yes + culture_has_light_cavalry_maa = yes + } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 4 + } + } +} + +tradition_stand_and_fight = { + category = combat + + is_shown = { + NOR = { #Replaced by Mobile Guards + has_cultural_pillar = heritage_israelite + has_cultural_tradition = tradition_mobile_guards + } + } + + layers = { + 0 = martial + 1 = indian + 4 = battle.dds + } + + character_modifier = { + levy_toughness = 2 + maa_toughness_mult = 0.1 + heavy_infantry_toughness_mult = 0.1 + heavy_cavalry_toughness_mult = 0.1 + pikemen_toughness_mult = 0.2 + hard_casualty_modifier = 0.4 + defender_advantage = 8 + } + + parameters = { + stand_fight_nomadic_cultrad_stationing_bonus = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_spiritual_or_stoic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = heavy_infantry + value >= 500 + } + number_maa_soldiers_of_base_type = { + type = pikemen + value >= 500 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_heavy_inf_and_pikemen_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_stand_and_fight } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOR = { + culture_has_heavy_infantry_maa = yes + culture_has_heavy_cavalry_maa = yes + culture_has_pikemen_maa = yes + } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 2 + } + } +} + +tradition_adaptive_skirmishing = { + category = combat + + layers = { + 0 = intrigue + 1 = western + 4 = soldiers4.dds + } + + parameters = { + next_level_military_camps = yes + skirmisher_nomadic_cultrad_stationing_bonus = yes + } + + character_modifier = { + enemy_terrain_advantage = -0.25 + archers_damage_mult = 0.15 + archers_toughness_mult = 0.15 + archers_maintenance_mult = -0.05 + skirmishers_damage_mult = 0.15 + skirmishers_toughness_mult = 0.2 + skirmishers_maintenance_mult = -0.05 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_spiritual_or_stoic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = skirmishers + value >= 500 + } + number_maa_soldiers_of_base_type = { + type = archers + value >= 500 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_small_soldiers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_adaptive_skirmishing } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + scope:character = { + OR = { + number_maa_soldiers_of_base_type = { + type = heavy_infantry + value >= 200 + } + number_maa_soldiers_of_base_type = { + type = pikemen + value >= 200 + } + } + } + } + multiply = 0 + } + if = { + limit = { + OR = { + culture_has_heavy_infantry_maa = yes + culture_has_heavy_cavalry_maa = yes + } + } + multiply = 0 + } + else_if = { + limit = { + NOR = { + culture_has_archer_maa = yes + culture_has_skirmisher_maa = yes + } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 2 + } + } +} + +tradition_formation_fighting = { + category = combat + + layers = { + 0 = martial + 1 = mediterranean + 4 = soldiers3.dds + } + + layers = { + 0 = martial + } + + parameters = { + next_level_barracks = yes + formation_fighting_strategist = yes + formation_nomadic_cultrad_stationing_bonus = yes + } + + character_modifier = { + counter_efficiency = 0.15 + pursue_efficiency = -0.15 + archers_damage_mult = 0.1 + archers_toughness_mult = 0.15 + pikemen_damage_mult = 0.15 + pikemen_toughness_mult = 0.2 + nomadic_horde_toughness_mult = 0.05 + nomadic_horde_damage_mult = 0.05 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_courtly_or_communal_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = pikemen + value >= 500 + } + number_maa_soldiers_of_base_type = { + type = archers + value >= 500 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_archers_and_pikemen_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_formation_fighting } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { + scope:character = { + OR = { + number_maa_soldiers_of_base_type = { + type = light_cavalry + value >= 300 + } + number_maa_soldiers_of_base_type = { + type = skirmishers + value >= 400 + } + } + } + } + multiply = 0 + } + if = { + limit = { + OR = { + culture_has_skirmisher_maa = yes + culture_has_light_cavalry_maa = yes + } + } + multiply = 0 + } + else_if = { + limit = { + NOR = { + culture_has_archer_maa = yes + culture_has_pikemen_maa = yes + } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 4 + } + } +} + +tradition_horse_breeder = { + category = combat + + layers = { + 0 = steward + 1 = mena + 4 = horses.dds + } + + is_shown = { + OR = { + culture_has_light_cavalry_maa = yes + culture_has_heavy_cavalry_maa = yes + culture_has_archer_cavalry_maa = yes + scope:character = { + mpo_can_recruit_nomad_maa_trigger = yes + } + } + } + + parameters = { + next_level_stables = yes + horse_breeder_internal_yurt_unlock = yes + } + + character_modifier = { + herd_conversion = 0.02 + light_cavalry_maintenance_mult = -0.15 + light_cavalry_recruitment_cost_mult = -0.25 + heavy_cavalry_maintenance_mult = -0.15 + heavy_cavalry_recruitment_cost_mult = -0.25 + archer_cavalry_maintenance_mult = -0.15 + archer_cavalry_recruitment_cost_mult = -0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + scope:character = { + NOR = { # Culture Head need to have a 8 sized regiment of either Light/Heavy/Archer Cavalry + number_maa_soldiers_of_base_type = { + type = light_cavalry + value >= 800 + } + number_maa_soldiers_of_base_type = { + type = heavy_cavalry + value >= 400 + } + number_maa_soldiers_of_base_type = { + type = archer_cavalry + value >= 800 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_cavalry_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_horse_breeder } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { # Reduce chance if the culture has access to other "cavalry" types + OR = { + has_innovation = innovation_war_camels + has_innovation = innovation_elephantry + } + } + multiply = 0.2 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 2 + } + } +} + +tradition_longbow_competitions = { + category = combat + layers = { + 0 = martial + 1 = western + 4 = bow.dds + } + + is_shown = { + OR = { + has_cultural_pillar = heritage_west_germanic + has_cultural_pillar = heritage_brythonic + has_cultural_pillar = heritage_goidelic + } + } + can_pick = { + OR = { + has_cultural_pillar = heritage_west_germanic + has_cultural_pillar = heritage_brythonic + has_cultural_pillar = heritage_goidelic + } + } + + parameters = { + unlock_maa_longbowmen = yes + archer_era_improvement = yes + } + character_modifier = { + archers_max_size_add = 4 + heavy_cavalry_max_size_add = -2 + pikemen_max_size_add = -2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_stoic_or_bureaucratic_desc + } + } + # Certain number of archer MaA requirement. + if = { + limit = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = archers + # Remember to sync the below with longbow_competitions_minimum_archer_maa_value. + value < 1200 + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_lacks_archer_maa_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_longbow_competitions } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 800 + if = { + limit = { + OR = { + culture_has_pikemen_maa = yes + culture_has_heavy_cavalry_maa = yes + } + } + multiply = 0 + } + } +} diff --git a/common/culture/traditions/00_maa_traditions.txt b/common/culture/traditions/00_maa_traditions.txt new file mode 100644 index 00000000..05616f8c --- /dev/null +++ b/common/culture/traditions/00_maa_traditions.txt @@ -0,0 +1,2278 @@ +####################### +# CULTURAL TRADITIONS # +####################### + +###################### +# MAA Traditions # +###################### + +tradition_futuwaa = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = soldiers.dds + } + + is_shown = { + has_cultural_pillar = heritage_iranian + NOR = { #Replaces Martial Admiration + has_cultural_tradition = tradition_chanson_de_geste + has_cultural_tradition = tradition_druzhina + has_cultural_tradition = tradition_martial_admiration + } + } + can_pick = { + has_cultural_pillar = heritage_iranian + NOR = { #Replaces Martial Admiration + has_cultural_tradition = tradition_chanson_de_geste + has_cultural_tradition = tradition_druzhina + has_cultural_tradition = tradition_martial_admiration + } + } + + parameters = { + unlock_maa_ayyar = yes + can_use_sparring_duel = yes + martial_education_more_valued = yes + prowess_traits_more_valued = yes + blademaster_trait_bonuses = yes + craven_and_content_traits_looked_down_upon = yes + knights_slightly_more_prone_to_injury = yes + unlock_voluntary_laampdom = yes + } + character_modifier = { + knight_limit = 2 + negate_prowess_penalty_add = 5 + accolade_glory_gain_mult = 0.2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_courtly_or_communal_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_knight = { + count >= 6 + prowess >= 12 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = knights_with_prowess_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_futuwaa } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 400 } +} + +tradition_mubarizuns = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = soldiers.dds + } + + #Can pick this if you have arabic heritage. + is_shown = { #Replaces Warriors of the Dry + has_cultural_pillar = heritage_arabic + } + can_pick = { + culture_not_pacifistic_trigger = yes + trigger_if = { + limit = { + OR = { + NOT = { exists = scope:replacing } + NOT = { scope:replacing = culture_tradition:tradition_warriors_of_the_dry } + } + } + NOT = { has_cultural_tradition = tradition_warriors_of_the_dry } #To prevent stacking after hybridization + } + } + + parameters = { + unlock_maa_mubarizun = yes + desert_warrior_trait_more_common = yes + dry_trait_bonuses = yes + can_recruit_dry_specialist = yes + } + character_modifier = { + drylands_levy_size = 0.1 + desert_levy_size = 0.1 + drylands_supply_limit_mult = 0.25 + desert_supply_limit_mult = 0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = dry_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mubarizuns } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_desert_ribat = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = city2.dds + } + + is_shown = { + has_cultural_pillar = heritage_berber + } + can_pick = { + culture_not_pacifistic_trigger = yes + custom_description = { + text = culture_in_dryland_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + + parameters = { + unlock_maa_mulaththamun = yes #Mulaththamun + desert_warrior_trait_more_common = yes + dry_trait_bonuses = yes + can_recruit_dry_specialist = yes + mystic_trait_more_common = yes + } + character_modifier = { + prowess_per_piety_level = 1 + desert_travel_danger = desert_low_danger_reduction + drylands_travel_danger = drylands_low_danger_reduction + desert_mountains_travel_danger = desert_mountains_low_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_spiritual_or_stoic_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = dry_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_desert_ribat } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = drylands + terrain = desert + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_land_of_the_bow = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = bow.dds + } + + is_shown = { + has_cultural_pillar = heritage_east_african + } + can_pick = { + has_cultural_pillar = heritage_east_african + } + + parameters = { + unlock_maa_archers_of_the_nile = yes + hunting_archery_building_bonuses = yes + } + county_modifier = { + floodplains_levy_size = 0.1 + } + province_modifier = { + garrison_size = 0.25 + } + character_modifier = { + defender_advantage = 5 + archers_damage_mult = 0.2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = archers + value >= 800 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_archers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_land_of_the_bow } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = floodplains + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_druzhina = { + category = regional + + layers = { + 0 = martial + 1 = western + 4 = shield.dds + } + + #East Slavic + #This replaces Martial Admiration + is_shown = { + has_cultural_pillar = heritage_east_slavic + NOR = { #Replaces Martial Admiration + has_cultural_tradition = tradition_futuwaa + has_cultural_tradition = tradition_chanson_de_geste + has_cultural_tradition = tradition_martial_admiration + } + } + can_pick = { + has_cultural_pillar = heritage_east_slavic + NOR = { #Replaces Martial Admiration + has_cultural_tradition = tradition_futuwaa + has_cultural_tradition = tradition_chanson_de_geste + has_cultural_tradition = tradition_martial_admiration + } + } + + parameters = { + unlock_maa_druzhina = yes + martial_education_more_valued = yes + prowess_traits_more_valued = yes + blademaster_trait_bonuses = yes + craven_and_content_traits_looked_down_upon = yes + knights_slightly_more_prone_to_injury = yes + can_duel_rivals = yes + } + character_modifier = { + knight_limit = 2 + negate_prowess_penalty_add = 5 + accolade_glory_gain_mult = 0.2 + heavy_infantry_toughness_mult = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_stoic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_knight = { + count >= 6 + prowess >= 12 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = knights_with_prowess_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_druzhina } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 400 } +} + +tradition_hussar = { #Konni Raids + category = regional + + layers = { + 0 = martial + 1 = western + 4 = rider.dds + } + + #This replaces Hit and Run + is_shown = { + OR = { + has_cultural_pillar = heritage_south_slavic + has_cultural_pillar = heritage_magyar + has_cultural_pillar = heritage_west_slavic + } + } + can_pick = { + trigger_if = { + limit = { + OR = { + NOT = { exists = scope:replacing } + NOT = { scope:replacing = culture_tradition:tradition_hit_and_run } + } + } + NOT = { has_cultural_tradition = tradition_hit_and_run } #To prevent stacking after hybridization + } + } + + parameters = { + unlock_maa_hussar = yes + } + character_modifier = { + skirmishers_screen_mult = 0.2 + light_cavalry_damage_mult = 0.2 + light_cavalry_screen_mult = 0.2 + retreat_losses = -0.1 + hard_casualty_modifier = -0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_stoic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = light_cavalry + value >= 500 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_light_cavalry_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_hussar } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 400 } +} + +tradition_horn_mountain_skirmishing = { + category = regional + + layers = { + 0 = steward + 1 = mena + 4 = desert_mountains.dds + } + + #In the Horn of Africa this replaces the Mountaineers tradition + is_shown = { + OR ={ + has_cultural_pillar = heritage_somalian + has_cultural_pillar = heritage_east_african + } + NOR = { + has_cultural_tradition = tradition_mountaineers + has_cultural_tradition = tradition_caucasian_wolves + } + } + can_pick = { + custom_description = { + text = culture_in_mountains_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + + parameters = { + unlock_maa_horn_warrior = yes + rough_terrain_expert_trait_more_common = yes + mountain_trait_bonuses = yes + can_recruit_mountain_specialist = yes + } + province_modifier = { + mountains_levy_size = 0.1 + desert_mountains_levy_size = 0.1 + mountains_supply_limit_mult = 0.25 + desert_mountains_supply_limit_mult = 0.25 + } + character_modifier = { + mountains_travel_danger = mountains_medium_danger_reduction + desert_mountains_travel_danger = desert_mountains_medium_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = mountain_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_horn_mountain_skirmishing } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_bush_hunting = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = jungle.dds + } + + #Replaces Jungle Warriors + is_shown = { + OR = { + has_cultural_pillar = heritage_akan + has_cultural_pillar = heritage_yoruba + } + NOT = { has_cultural_tradition = tradition_jungle_warriors } + } + can_pick = { + } + + parameters = { + unlock_maa_bush_hunter = yes + jungle_trait_bonuses = yes + dry_trait_bonuses = yes + can_recruit_jungle_specialist = yes + } + character_modifier = { + archers_damage_mult = 0.2 + jungle_supply_limit_mult = 0.25 + jungle_travel_danger = jungle_medium_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_communal_or_egalitarian_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = jungle + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = jungle_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_bush_hunting } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = jungle + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_mobile_guards = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = forest.dds + } + + #Replaces Stand and Fight + is_shown = { + has_cultural_pillar = heritage_israelite + NOT = { has_cultural_tradition = tradition_stand_and_fight } + } + can_pick = { + } + + parameters = { + unlock_maa_shomer = yes + } + character_modifier = { + maa_toughness_mult = 0.1 + heavy_infantry_toughness_mult = 0.2 + heavy_infantry_maintenance_mult = 0.1 + heavy_cavalry_toughness_mult = 0.2 + heavy_cavalry_maintenance_mult = 0.1 + pikemen_toughness_mult = 0.2 + pikemen_maintenance_mult = 0.1 + hard_casualty_modifier = 0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_communal_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = skirmishers + value >= 800 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_skirmishers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mobile_guards } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOR = { + culture_has_heavy_infantry_maa = yes + culture_has_heavy_cavalry_maa = yes + culture_has_pikemen_maa = yes + } + OR = { + culture_has_skirmisher_maa = yes + culture_has_archer_maa = yes + culture_has_light_cavalry_maa = yes + culture_has_archer_cavalry_maa = yes + scope:character = { + mpo_can_recruit_nomad_maa_trigger = yes + } + } + } + multiply = 0.25 + } + } +} + +tradition_khadga_puja = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = soldiers2.dds + } + + is_shown = { + has_cultural_pillar = heritage_indo_aryan + } + can_pick = { + custom_description = { + text = culture_not_egalitarian + NOT = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + } + + parameters = { + martial_education_more_valued = yes + unlock_maa_khandayat = yes + blademaster_trait_bonuses = yes + craven_and_content_traits_looked_down_upon = yes + } + province_modifier = { + } + character_modifier = { + knight_effectiveness_mult = 0.1 + accolade_glory_gain_mult = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_stoic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_knight = { + count >= 6 + prowess >= 12 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = knights_with_prowess_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_khadga_puja } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + } +} + +tradition_garuda_warriors = { + category = regional + + layers = { + 0 = martial + 1 = indian + 4 = soldiers2.dds + } + + is_shown = { + has_cultural_pillar = heritage_dravidian + } + can_pick = { + } + + parameters = { + unlock_maa_garudas = yes + unlock_garuda_warrior_title = yes + martial_education_more_valued = yes + prowess_traits_more_valued = yes + craven_and_content_traits_looked_down_upon = yes + loyal_trait_more_valued = yes + } + character_modifier = { + accolade_glory_gain_mult = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_stoic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_knight = { + count >= 6 + prowess >= 12 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = knights_with_prowess_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_garuda_warriors } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + } +} + +tradition_burman_royal_army = { + category = regional + + layers = { + 0 = martial + 1 = indian + 4 = elephant.dds + } + + is_shown = { + has_cultural_pillar = heritage_burman + } + can_pick = { + has_cultural_pillar = heritage_burman + } + + parameters = { + unlock_maa_palace_guards = yes + jungle_stalker_trait_more_common = yes + jungle_trait_bonuses = yes + can_recruit_jungle_specialist = yes + } + character_modifier = { + elephant_cavalry_damage_mult = 0.2 + elephant_cavalry_toughness_mult = 0.2 + jungle_travel_danger = jungle_medium_danger_reduction + accolade_glory_gain_mult = 0.1 + } + province_modifier = { + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + number_maa_soldiers_of_base_type = { + type = elephant_cavalry + value >= 5 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_has_elephants_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_burman_royal_army } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + } +} + +tradition_mountain_herding = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = desert_mountains.dds + } + + #Replaces Mountain Homes + is_shown = { + OR ={ + has_cultural_pillar = heritage_arabic + has_cultural_pillar = heritage_berber + } + } + can_pick = { + OR ={ + has_cultural_pillar = heritage_arabic + has_cultural_pillar = heritage_berber + } + culture_not_pacifistic_trigger = yes + custom_description = { + text = culture_in_mountains_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + + parameters = { + unlock_maa_abudrar = yes + rough_terrain_expert_trait_more_common = yes + desert_warrior_trait_more_common = yes + mountain_trait_bonuses = yes + can_recruit_mountain_specialist = yes + } + character_modifier = { + mountains_travel_danger = mountains_high_danger_reduction + desert_mountains_travel_danger = desert_mountains_high_danger_reduction + } + county_modifier = { + desert_mountains_development_growth_factor = 0.35 + } + province_modifier = { + desert_mountains_construction_gold_cost = -0.1 + desert_mountains_holding_construction_gold_cost = -0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = desert_mountains + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = mountain_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mountain_herding } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = desert_mountains + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_forest_wardens = { + category = regional + + layers = { + 0 = martial + 1 = western + 4 = forest.dds + } + + #Replaces Forest Folk + is_shown = { + OR = { + has_cultural_pillar = heritage_balto_finnic + has_cultural_pillar = heritage_volga_finnic + has_cultural_pillar = heritage_ugro_permian + has_cultural_pillar = heritage_baltic + } + NOT = { has_cultural_tradition = tradition_forest_folk } + } + can_pick = { + OR = { + has_cultural_pillar = heritage_balto_finnic + has_cultural_pillar = heritage_volga_finnic + has_cultural_pillar = heritage_ugro_permian + has_cultural_pillar = heritage_baltic + } + custom_description = { + text = culture_in_forest_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + } + } + } + } + + parameters = { + unlock_maa_metsanvartija = yes + logging_camps_building_bonuses = yes + can_recruit_forest_specialist = yes + forest_fighter_trait_more_common = yes + forest_hunt_success_chance = yes + watermills_forestries_unlock = yes + } + character_modifier = { + forest_travel_danger = forest_high_danger_reduction + taiga_travel_danger = taiga_high_danger_reduction + } + county_modifier = { + forest_development_growth_factor = 0.15 + taiga_development_growth_factor = 0.15 + } + province_modifier = { + forest_construction_gold_cost = -0.1 + taiga_construction_gold_cost = -0.1 + forest_holding_construction_gold_cost = -0.1 + taiga_holding_construction_gold_cost = -0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = forest_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_forest_wardens } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_upland_skirmishing = { + category = regional + + layers = { + 0 = martial + 1 = western + 4 = forest.dds + } + + #Replaces Highland Warriors + is_shown = { + has_cultural_pillar = heritage_west_african + NOT = { has_cultural_tradition = tradition_highland_warriors } + } + can_pick = { + has_cultural_pillar = heritage_west_african + custom_description = { + text = culture_in_hills_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + + parameters = { + unlock_maa_guinea_warrior = yes + hill_farms_building_bonuses = yes + + rough_terrain_expert_trait_more_common = yes + hill_trait_bonuses = yes + can_recruit_hill_specialist = yes + } + character_modifier = { + hills_travel_danger = hills_medium_danger_reduction + forest_travel_danger = forest_medium_danger_reduction + } + province_modifier = { + hills_levy_size = 0.1 + hills_supply_limit_mult = 0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_communal_or_egalitarian_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = hill_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_upland_skirmishing } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_strong_kinship = { #There can be only one! + category = regional + + layers = { + 0 = martial + 1 = western + 4 = conversation.dds + } + + is_shown = { + OR = { + this = culture:gaelic + this = culture:scottish + any_parent_culture_or_above = { + OR = { + this = culture:gaelic + this = culture:scottish + } + } + } + } + can_pick = { + OR = { + this = culture:gaelic + this = culture:scottish + any_parent_culture_or_above = { + OR = { + this = culture:gaelic + this = culture:scottish + } + } + } + } + + parameters = { + unlock_schiltron_innovation = yes + bonuses_from_patriarch_matriarch_trait = yes + cultural_house_personal_scheme_success_chance = yes + landing_house_members_give_prestige = yes + penalty_for_revoking_titles_from_house_members = yes + loyal_trait_more_common = yes + } + character_modifier = { + dynasty_house_opinion = 15 + opinion_of_liege = -10 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_bureaucratic_desc + } + } + if = { + limit = { + exists = scope:character.house + NOT = { + scope:character.house = { + any_house_member = { + count >= 3 + has_relation_friend = scope:character + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = house_friends_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_strong_kinship } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + } +} + +tradition_amharic_highlanders = { #Ethiopian Unique Tradition, replaces hill dwellers, Unlocks MAA innovation & Castration + category = realm + + layers = { + 0 = steward + 1 = mena + 4 = mountain.dds + } + + is_shown = { + NOT = { has_cultural_tradition = tradition_hill_dwellers } + always = no +# OR = { +# this = culture:ethiopian +# any_parent_culture_or_above = { +# this = culture:ethiopian +# } +# } + } + can_pick = { + NOT = { has_cultural_tradition = tradition_hill_dwellers } + always = no +# OR = { +# this = culture:ethiopian +# any_parent_culture_or_above = { +# this = culture:ethiopian +# } +# } + custom_description = { + text = culture_in_hills_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + + parameters = { + unlock_sarawit_innovation = yes + can_castrate_prisoners = yes + hill_farms_building_bonuses = yes + } + county_modifier = { + hills_development_growth_factor = 0.2 + } + province_modifier = { + hills_construction_gold_cost = -0.1 + hills_holding_construction_gold_cost = -0.1 + } + character_modifier = { + hills_advantage = 5 + hills_travel_danger = hills_high_danger_reduction + mountains_travel_danger = mountains_low_danger_reduction + desert_mountains_travel_danger = desert_mountains_low_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = hill_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_amharic_highlanders } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.2 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = hills + } + } + } + } + } + multiply = 0 + } + } +} + + +tradition_polders = { #Dutch Unique Tradition, bonuses to buildings along coastline, Unlocks MAA innovation + category = realm + + layers = { + 0 = steward + 1 = mena + 4 = svamp.dds + } + + is_shown = { + OR = { + this = culture:dutch + any_parent_culture_or_above = { + this = culture:dutch + } + } + } + can_pick = { + OR = { + this = culture:dutch + any_parent_culture_or_above = { + this = culture:dutch + } + } + custom_description = { + text = culture_on_coast_desc + any_culture_county = { + has_coastal_province = yes + } + } + } + + parameters = { + unlock_adaptive_militia_innovation = yes + coastal_agriculture_building_bonuses = yes + coastal_holding_bonuses = yes + } + character_modifier = { + skirmishers_damage_mult = 0.2 + skirmishers_screen_mult = 0.2 + coastal_sea_travel_danger = low_sea_danger_reduction + wetlands_travel_danger = wetlands_medium_danger_reduction + floodplains_travel_danger = floodplains_medium_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_communal_bureaucratic_or_stoic_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + has_coastal_province = yes + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = coastal_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_polders } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.3 + has_coastal_province = yes + } + } + } + } + multiply = 0 + } + if = { + limit = { + scope:character = { + any_sub_realm_county = { + percent >= 0.6 + has_coastal_province = yes + } + } + } + multiply = 3 + } + } +} + +tradition_caucasian_wolves = { + category = regional + + layers = { + 0 = steward + 1 = mena + 4 = mountain.dds + } + + #For Georgians this replaces the Mountaineers tradition + is_shown = { +# OR = { +# this = culture:georgian +# any_parent_culture_or_above = { +# this = culture:georgian +# } +# } + NOR = { + has_cultural_tradition = tradition_mountaineers + has_cultural_tradition = tradition_horn_mountain_skirmishing + } + } + can_pick = { + custom_description = { + text = culture_in_mountains_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + + parameters = { + unlock_maa_monaspa = yes + rough_terrain_expert_trait_more_common = yes + mountain_trait_bonuses = yes + can_recruit_mountain_specialist = yes + } + province_modifier = { + mountains_levy_size = 0.1 + desert_mountains_levy_size = 0.1 + mountains_supply_limit_mult = 0.25 + desert_mountains_supply_limit_mult = 0.25 + } + character_modifier = { + mountains_travel_danger = mountains_medium_danger_reduction + desert_mountains_travel_danger = desert_mountains_medium_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_communal_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = mountain_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_caucasian_wolves } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 1000 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_hird = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = viking.dds + } + + is_shown = { #Replaces Warrior Culture + NOR = { + has_cultural_tradition = tradition_warrior_culture + has_cultural_tradition = tradition_fp1_coastal_warriors + } + OR = { + AND = { + has_cultural_pillar = heritage_north_germanic + has_fp1_dlc_trigger = no + } + any_parent_culture_or_above = { + OR = { + this = culture:old_saxon + this = culture:norse #For instance Norman culture + } + } + } + } + can_pick = { + culture_not_pacifistic_trigger = yes + scope:character = { + government_has_flag = government_is_tribal + } + } + + parameters = { + unlock_maa_huscarls = yes + strong_traits_more_valued = yes + strong_traits_more_common = yes + weak_traits_looked_down_upon = yes + rowdy_trait_more_common = yes + pensive_trait_less_common = yes + cultrad_unlocks_t2_redouble_guards = yes + unlock_voluntary_laampdom = yes + more_likely_to_be_laamps = yes + } + character_modifier = { + cultural_head_fascination_mult = -0.05 + knight_limit = 1 + prowess = 2 + ai_boldness = 25 + accolade_glory_gain_mult = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + OR = { + has_trait = strong + has_trait = physique_good + } + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = strong_rulers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_hird } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + } + multiply = 0 + } + } +} + + +tradition_chanson_de_geste = { +#Replaces Martial Admiration + category = regional + + layers = { + 0 = martial + 1 = indian + 4 = knight.dds + } + + is_shown = { + has_cultural_pillar = heritage_frankish + NOR = { #Replaces Martial Admiration + has_cultural_tradition = tradition_futuwaa + has_cultural_tradition = tradition_druzhina + has_cultural_tradition = tradition_martial_admiration + } + } + can_pick = { + has_cultural_pillar = heritage_frankish + NOR = { #Replaces Martial Admiration + has_cultural_tradition = tradition_futuwaa + has_cultural_tradition = tradition_druzhina + has_cultural_tradition = tradition_martial_admiration + } + } + + parameters = { + unlock_valets_innovation = yes + poet_trait_gives_bonuses = yes + poet_trait_more_common = yes + martial_education_more_valued = yes + prowess_traits_more_valued = yes + blademaster_trait_bonuses = yes + craven_and_content_traits_looked_down_upon = yes + knights_slightly_more_prone_to_injury = yes + can_duel_rivals = yes + can_host_joust_contests = yes + knight_errant_trait_bonuses = yes + } + character_modifier = { + knight_limit = 2 + negate_prowess_penalty_add = 5 # Wounded knights fight better! + accolade_glory_gain_mult = 0.2 + owned_legend_spread_mult = 0.05 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_courtly_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_knight = { + count >= 6 + prowess >= 12 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = knights_with_prowess_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_chanson_de_geste } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 400 } +} diff --git a/common/culture/traditions/00_realm_traditions.txt b/common/culture/traditions/00_realm_traditions.txt index bd36edf4..d6c5f92a 100644 --- a/common/culture/traditions/00_realm_traditions.txt +++ b/common/culture/traditions/00_realm_traditions.txt @@ -945,12 +945,12 @@ tradition_female_only_inheritance = { has_cultural_pillar = heritage_akan has_cultural_pillar = heritage_west_african has_cultural_pillar = heritage_yoruba - any_parent_culture_or_above = { - OR = { - this = culture:nubian - this = culture:daju - } - } +# any_parent_culture_or_above = { +# OR = { +# this = culture:nubian +# this = culture:daju +# } +# } scope:character.faith = { has_doctrine_parameter = female_dominated_law } diff --git a/common/culture/traditions/00_regional_traditions.txt b/common/culture/traditions/00_regional_traditions.txt new file mode 100644 index 00000000..6a473489 --- /dev/null +++ b/common/culture/traditions/00_regional_traditions.txt @@ -0,0 +1,1564 @@ +################################ +# REGIONAL CULTURAL TRADITIONS # +################################ + +tradition_byzantine_succession = { + category = regional + + layers = { + 0 = intrigue + 1 = mediterranean + 4 = crown.dds + } + + is_shown = { + OR = { + has_cultural_pillar = heritage_byzantine + scope:character = { + has_title = title:e_byzantium + } + } + #replaced by new Byzantine traditions + has_ep3_dlc_trigger = no + } + can_pick = { + has_cultural_pillar = heritage_byzantine + scope:character = { + has_title = title:e_byzantium + } + custom_tooltip = { + text = cannot_have_tradition_court_eunuchs + NOT = { culture_tradition:tradition_court_eunuchs = { is_in_list = traits } } + } + custom_tooltip = { + text = cannot_have_tradition_merciful_blindings + NOT = { culture_tradition:tradition_merciful_blindings = { is_in_list = traits } } + } + } + + parameters = { + can_blind_prisoners = yes + can_castrate_prisoners = yes + eunuch_trait_bonuses = yes + can_appoint_chief_eunuch = yes + physical_disfigurement_blocks_inheritance = yes # Blocks claimant factions, claim wars, and reduce score in elective and acclamation. Also includes infertility for tooltip reasons. + children_can_be_born_in_the_purple = yes + disloyal_trait_more_common = yes + byzantine_faction_differences = yes + #byzantine_faction_preffered_claimants = yes + } + character_modifier = { + eligible_child_opinion = 20 + short_reign_duration_mult = 0.5 + hostile_scheme_phase_duration_add = medium_scheme_phase_duration_bonus_value + ai_amenity_target_baseline = 0.75 + ai_amenity_spending = 1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_or_communal_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + has_title = title:c_byzantion + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = byzantion_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_byzantine_succession } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 1000 } +} + +tradition_lords_of_the_elephant = { + category = regional + + layers = { + 0 = learning + 1 = indian + 4 = elephant.dds + } + + is_shown = { + OR = { + any_culture_county = { + title_province = { + geographical_region = world_innovation_elephants + } + } + has_innovation = innovation_elephantry + } + } + can_pick = { + has_innovation = innovation_elephantry + } + + parameters = { + can_recruit_jungle_specialist = yes + elephant_pens_building_bonuses = yes + elephant_bonuses_for_rank_4_education = yes + } + character_modifier = { + elephant_cavalry_recruitment_cost_mult = -0.15 + elephant_cavalry_maintenance_mult = -0.15 + elephant_cavalry_toughness_mult = 0.2 + elephant_cavalry_damage_mult = 0.4 + jungle_travel_danger = jungle_medium_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_courtly_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + any_county_province = { + count >= 3 + has_building_or_higher = elephant_pens_02 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = elephant_pens_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_lords_of_the_elephant } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 1000 + if = { + limit = { + NOR = { + has_cultural_pillar = heritage_indo_aryan + has_cultural_pillar = heritage_dravidian + } + } + multiply = 0 + } + } +} + +tradition_african_tolerance = { + category = regional + + layers = { + 0 = diplo + 1 = mena + 4 = diplomat.dds + } + + is_shown = { + OR = { # For cultures with any heritage from western or central Africa + has_cultural_pillar = heritage_berber + has_cultural_pillar = heritage_west_african + has_cultural_pillar = heritage_central_african + has_cultural_pillar = heritage_sahelian + has_cultural_pillar = heritage_senegambian + has_cultural_pillar = heritage_akan + has_cultural_pillar = heritage_yoruba + } + NOT = { + culture_tradition:tradition_steppe_tolerance = { is_in_list = traits } + } + } + can_pick = { + } + + parameters = { + less_likely_to_force_conversion = yes + } + character_modifier = { + different_faith_opinion = 10 + different_faith_county_opinion_mult = -0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_communal_or_egalitarian_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_culture_global = { + count >= 5 + cultural_acceptance = { target = prev value >= 50 } + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = five_accepted_cultures_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_african_tolerance } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + OR = { + culture_tradition:tradition_zealous_people = { is_in_list = traits } + culture_tradition:tradition_by_the_sword = { is_in_list = traits } + } + } + multiply = 0 + } + } +} + +tradition_the_witenagemot = { + category = regional + + layers = { + 0 = diplo + 1 = western + 4 = council.dds + } + + is_shown = { + OR = { + has_cultural_pillar = heritage_west_germanic + has_cultural_pillar = heritage_brythonic + has_cultural_pillar = heritage_goidelic + } + } + can_pick = { + OR = { + has_cultural_pillar = heritage_west_germanic + has_cultural_pillar = heritage_brythonic + has_cultural_pillar = heritage_goidelic + } + } + + parameters = { + witenagemot_succession_enabled = yes + } + character_modifier = { + monthly_prestige_gain_per_happy_powerful_vassal_mult = 0.04 + realm_priest_opinion = 15 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_stoic_or_bureaucratic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_councillor = { + percent = 1 + opinion = { + target = prev + value >= 0 + } + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = councillor_with_negative_opinion_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_the_witenagemot } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { + OR = { + culture_tradition:tradition_things = { is_in_list = traits } + culture_tradition:tradition_fp3_jirga = { is_in_list = traits } + } + } + multiply = 0 + } + } +} + +tradition_things = { + category = regional + + layers = { + 0 = learning + 1 = western + 4 = council.dds + } + + is_shown = { + has_cultural_pillar = heritage_north_germanic + } + can_pick = { + has_cultural_pillar = heritage_north_germanic + } + + parameters = { + scandinavian_elective_enabled = yes + trait_county_opinion_modifiers = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_bureaucratic_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + county_opinion < 0 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = counties_with_low_county_opinion_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_things } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { + OR = { + culture_tradition:tradition_the_witenagemot = { is_in_list = traits } + culture_tradition:tradition_fp3_jirga = { is_in_list = traits } + } + } + multiply = 0 + } + } +} + +tradition_caravaneers = { + category = regional + + layers = { + 0 = diplo + 1 = mena + 4 = camel.dds + } + + is_shown = { + always = no + } + + parameters = { + wanderers_gain_extra_economic_skills = yes + more_likely_to_leave_court = yes + second_caravanserai = yes + unlock_voluntary_laampdom = yes + } + + character_modifier = { + movement_speed = 0.05 + diplomatic_range_mult = 0.2 + character_travel_safety_mult = 0.2 + character_travel_speed_mult = 0.2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_egalitarian_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_caravaneers } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 600 } +} + +tradition_horse_lords = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = horses.dds + } + + is_shown = { + OR = { + has_cultural_pillar = heritage_mongolic + has_cultural_pillar = heritage_turkic + } + NOT = { + has_dlc_feature = khans_of_the_steppe + } + } + + can_pick = { + custom_description = { + text = culture_in_steppe_desc + any_culture_county = { + percent >= 0.4 + any_county_province = { + geographical_region = world_steppe + } + } + } + } + + parameters = { + unlock_maa_horse_archers = yes + can_recruit_open_specialist = yes + unlock_horse_pastures_building = yes + steppe_hunt_success_chance = yes + unlock_voluntary_laampdom = yes + } + + character_modifier = { + light_cavalry_damage_mult = 0.1 + light_cavalry_screen_mult = 0.1 + supply_duration = 1 + movement_speed = 0.1 + character_travel_speed_mult = 0.2 + character_travel_safety_mult = 0.2 + movement_speed_land_raiding = 0.3 + hostile_county_attrition_raiding = -0.25 + provisions_use_mult = -0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_communal_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_horse_lords } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + #if = { + # limit = { + # NOR = { + # has_cultural_pillar = heritage_turkic + # has_cultural_pillar = heritage_mongolic + # } + # } + # add = { + # value = tradition_unfulfilled_criteria_penalty + # desc = steppe_heritage_reduction_desc + # } + #} + } + } + + ai_will_do = { + value = 400 + } +} + +tradition_saharan_nomads = { + category = regional + + layers = { + 0 = learning + 1 = mena + 4 = desert.dds + } + + is_shown = { + any_culture_county = { + title_province = { + geographical_region = custom_sahara_proper + } + } + } + can_pick = { + any_culture_county = { + title_province = { + geographical_region = custom_sahara_proper + } + } + } + + parameters = { + desert_hunt_success_chance = yes + resistant_to_desert_privation = yes + } + character_modifier = { + light_cavalry_maintenance_mult = -0.25 + light_cavalry_recruitment_cost_mult = -0.25 + oasis_development_growth_factor = 0.1 + movement_speed = 0.1 + character_travel_speed = 10 + desert_travel_danger = desert_high_danger_reduction + drylands_travel_danger = drylands_high_danger_reduction + desert_mountains_travel_danger = desert_mountains_high_danger_reduction + movement_speed_land_raiding = 0.2 + hostile_county_attrition_raiding = -0.3 + + # Nullify the maluses from world_africa_sahara_provisions_usage_multiplier_modifier. + desert_provisions_use_mult = -0.66 + desert_mountains_provisions_use_mult = -0.66 + desert_supply_limit_mult = 0.5 + desert_mountains_supply_limit_mult = 0.5 + desert_fertility_growth_mult = medium_culture_county_fertility_value_mult + oasis_fertility_growth_mult = high_culture_county_fertility_value_mult + } + province_modifier = { + oasis_construction_gold_cost = -0.15 + desert_construction_gold_cost = -0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_stoic_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + any_county_province = { + geographical_region = custom_sahara_proper + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = sahara_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_saharan_nomads } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 400 } +} + +tradition_visigothic_codes = { + category = regional + + layers = { + 0 = intrigue + 1 = mediterranean + 4 = crown.dds + } + + is_shown = { + always = no +# OR = { +# this = culture:visigothic +# this = culture:basque +# any_parent_culture_or_above = { +# OR = { +# this = culture:visigothic +# this = culture:basque +# } +# } +# } + } + can_pick = { +# OR = { +# this = culture:visigothic +# this = culture:basque +# any_parent_culture_or_above = { +# OR = { +# this = culture:visigothic +# this = culture:basque +# } +# } +# } +# scope:character = { +# has_religion = religion:christianity_religion #The Visigothic code is strongly associated with Christian canon law. +# } + } + + parameters = { + can_enact_high_partition_succession_law = yes + gender_equal_inheritance = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_egalitarian_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NAND = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + is_male = yes + } + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + is_female = yes + } + } + } + trigger_else = { + always = yes + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = three_gender_rulers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_visigothic_codes } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 200 } +} + +tradition_himalayan_settlers = { + category = regional + + layers = { + 0 = learning + 1 = indian + 4 = mountain.dds + } + + is_shown = { #Replaces Mountain Homes + OR = { + has_cultural_pillar = heritage_tibetan + has_cultural_pillar = heritage_qiangic + any_culture_county = { + title_province = { + geographical_region = world_himalaya + } + } + } + } + can_pick = { + OR = { + has_cultural_pillar = heritage_tibetan + has_cultural_pillar = heritage_qiangic + any_culture_county = { + title_province = { + geographical_region = world_himalaya + } + } + } + } + + parameters = { + unlock_maa_mountaineer = yes + rough_terrain_expert_trait_more_common = yes + mountain_trait_bonuses = yes + can_recruit_mountain_specialist = yes + resistant_to_mountain_privation = yes + } + + character_modifier = { + mountains_development_growth_factor = 0.2 + mountains_travel_danger = mountains_high_danger_reduction + movement_speed_land_raiding = 0.15 + hostile_county_attrition_raiding = -0.2 + } + province_modifier = { + mountains_construction_gold_cost = -0.1 + mountains_holding_construction_gold_cost = -0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_communal_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + title_province = { + geographical_region = world_himalaya + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_in_himalaya_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_himalayan_settlers } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.4 + title_province = { + geographical_region = world_himalaya + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_desert_nomads = { + category = regional + + layers = { + 0 = martial + 1 = mena + 4 = camel.dds + } + + is_shown = { + OR = { + this = culture:bedouin + any_parent_culture_or_above = { + this = culture:bedouin + } + any_parent_culture = { + has_cultural_tradition = tradition_desert_nomads + } + } + } + can_pick = { + custom_tooltip = { + text = culture_in_camel_region_desc + any_culture_county = { + any_county_province = { + geographical_region = world_innovation_camels + } + } + } + } + + parameters = { + desert_warrior_trait_is_better = yes + desert_hunt_success_chance = yes + resistant_to_desert_privation = yes + } + character_modifier = { + camel_cavalry_maintenance_mult = -0.2 + camel_cavalry_recruitment_cost_mult = -0.2 + character_travel_speed = 10 + desert_travel_danger = desert_high_danger_reduction + drylands_travel_danger = drylands_high_danger_reduction + desert_mountains_travel_danger = desert_mountains_high_danger_reduction + movement_speed_land_raiding = 0.2 + hostile_county_attrition_raiding = -0.3 + } + province_modifier = { + desert_tax_mult = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_stoic_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= camel_percentage_multiplier_value + any_county_province = { + geographical_region = world_innovation_camels + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_in_camel_region_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_desert_nomads } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.5 + any_county_province = { + geographical_region = world_innovation_camels + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_mountaineer_ruralism = { + category = regional + + layers = { + 0 = martial + 1 = western + 4 = mountain.dds + } + + is_shown = { + has_cultural_pillar = heritage_west_slavic + NOR = { + has_cultural_tradition = tradition_himalayan_settlers + has_cultural_tradition = tradition_mountain_homes + any_culture_county = { + title_province = { + geographical_region = world_himalaya + } + } + } + } + + can_pick = { + has_cultural_pillar = heritage_west_slavic + NOT = { + has_cultural_tradition = tradition_mountain_homes + } + custom_description = { + text = culture_in_mountains_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + + parameters = { + unlock_maa_zbrojnosh = yes + quarries_building_bonuses = yes + hill_farms_building_bonuses = yes + rough_terrain_expert_trait_more_common = yes + mountain_trait_bonuses = yes + can_recruit_mountain_specialist = yes + } + + character_modifier = { + mountains_travel_danger = mountains_high_danger_reduction + hills_travel_danger = hills_high_danger_reduction + } + + county_modifier = { + hills_development_growth_factor = 0.1 + mountains_development_growth_factor = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_stoic_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = mountains + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = mountain_true_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mountaineer_ruralism } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = mountains + terrain = hills + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + any_culture_county = { + percent >= 0.6 + county_has_province_with_terrain = { + terrain = mountains + terrain = hills + } + } + } + multiply = 8 + } + } +} + +tradition_steppe_tolerance = { + category = regional + + layers = { + 0 = intrigue + 1 = mena + 4 = greeting.dds + } + + is_shown = { + NOR = { + culture_tradition:tradition_african_tolerance = { is_in_list = traits } + culture_tradition:tradition_religion_blending = { is_in_list = traits } + } + OR = { + has_cultural_pillar = heritage_mongolic + has_cultural_pillar = heritage_turkic + } + } + can_pick = { + custom_tooltip = { + text = culture_in_steppe_desc + any_culture_county = { + percent >= 0.4 + any_county_province = { + geographical_region = world_steppe + } + } + } + } + + parameters = { #easily convert and don't force conversion + more_easily_converted = yes + less_likely_to_force_conversion = yes + } + + character_modifier = { # easier to self-convert and create or reform faith + faith_creation_piety_cost_mult = -0.2 + faith_conversion_piety_cost_mult = -0.2 + different_faith_opinion = 10 + different_faith_county_opinion_mult = -0.25 # reduced penalty for different faiths (note this appears confusing in the UI right now) + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_egalitarian_or_communal_desc + } + } + # No extra cost here, since we have a fairly restrictive can_pick block. + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_steppe_tolerance } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + multiply = 0.25 + } + else_if = { + limit = { + any_culture_county = { + percent >= 0.6 + county_has_province_with_terrain = { + terrain = steppe + } + } + } + multiply = 8 + } + } +} + +tradition_nubian_warrior_queens = { + category = regional + + layers = { + 0 = intrigue + 1 = mediterranean + 4 = crown.dds + } + + is_shown = { + NOT = { has_game_rule = inversed_gender_equality } + always = no +# any_parent_culture_or_above = { +# OR = { +# this = culture:nubian +# this = culture:daju +# } +# } + } + can_pick = { +# any_parent_culture_or_above = { +# OR = { +# this = culture:nubian +# this = culture:daju +# } +# } + } + + parameters = { + gender_equal_inheritance = yes + female_only_inheritance = yes + female_preference_inheritance = yes + prowess_from_martial_education = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_egalitarian_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NAND = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier > tier_barony + is_male = yes + } + any_ruler = { + count >= 3 + culture = prev + primary_title.tier > tier_barony + is_female = yes + } + } + } + trigger_else = { + always = yes + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = three_gender_rulers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_nubian_warrior_queens } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 200 } +} + +tradition_nubian_warrior_kings = { + category = regional + + layers = { + 0 = intrigue + 1 = mediterranean + 4 = crown.dds + } + + is_shown = { + has_game_rule = inversed_gender_equality + any_parent_culture_or_above = { + OR = { + this = culture:nubian + this = culture:daju + } + } + } + can_pick = { + any_parent_culture_or_above = { + OR = { + this = culture:nubian + this = culture:daju + } + } + } + + parameters = { + gender_equal_inheritance = yes + male_only_inheritance = yes + male_preference_inheritance = yes + prowess_from_martial_education = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_egalitarian_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NAND = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier > tier_barony + is_male = yes + } + any_ruler = { + count >= 3 + culture = prev + primary_title.tier > tier_barony + is_female = yes + } + } + } + trigger_else = { + always = yes + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = three_gender_rulers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_nubian_warrior_kings } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 200 } +} diff --git a/common/culture/traditions/00_ritual_traditions.txt b/common/culture/traditions/00_ritual_traditions.txt new file mode 100644 index 00000000..b638d5b1 --- /dev/null +++ b/common/culture/traditions/00_ritual_traditions.txt @@ -0,0 +1,1794 @@ +############################## +# RITUAL CULTURAL TRADITIONS # +############################## + +tradition_monogamous = { + category = ritual + + layers = { + 0 = learning + 1 = western + 4 = knight.dds + } + + can_pick = { + custom_tooltip = { + text = only_one_marriage_tradition_allowed + trigger_if = { + limit = { + OR = { + NOT = { exists = scope:replacing } + NOR = { + scope:replacing = culture_tradition:tradition_polygamous + scope:replacing = culture_tradition:tradition_concubines + } + } + } + NOR = { + culture_tradition:tradition_polygamous = { is_in_list = traits } + culture_tradition:tradition_concubines = { is_in_list = traits } + } + } + } + } + can_pick_for_hybridization = { + custom_tooltip = { + text = only_one_marriage_tradition_allowed + NOT = { # Only blocks polygamous to avoid duplicate warnings, but is blocked by concubines + culture_tradition:tradition_polygamous = { is_in_list = traits } + } + } + } + + parameters = { + number_of_spouses = 1 + romance_scheme_bonus_vs_spouse = yes + } + + character_modifier = { + spouse_opinion = 10 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + scope:character.faith = { + has_doctrine = doctrine_monogamy + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = cheaper_tradition_from_faith + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_monogamous } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 0 } +} + +tradition_polygamous = { + category = ritual + + layers = { + 0 = diplo + 1 = mena + 4 = temple.dds + } + + can_pick = { + custom_tooltip = { + text = only_one_marriage_tradition_allowed + trigger_if = { + limit = { + OR = { + NOT = { exists = scope:replacing } + NOR = { + scope:replacing = culture_tradition:tradition_monogamous + scope:replacing = culture_tradition:tradition_concubines + } + } + } + NOR = { + culture_tradition:tradition_monogamous = { is_in_list = traits } + culture_tradition:tradition_concubines = { is_in_list = traits } + } + } + } + } + can_pick_for_hybridization = { + custom_tooltip = { + text = only_one_marriage_tradition_allowed + NOT = { # Only blocks concubines to avoid duplicate warnings, but is blocked by monogamous + culture_tradition:tradition_concubines = { is_in_list = traits } + } + } + } + + parameters = { + number_of_spouses = 4 + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + scope:character.faith = { + OR = { + has_doctrine = doctrine_polygamy + has_doctrine = doctrine_concubines + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = cheaper_tradition_from_faith + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_polygamous } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 0 } +} + +tradition_concubines = { + category = ritual + + layers = { + 0 = intrigue + 1 = indian + 4 = greeting.dds + } + + can_pick = { + custom_tooltip = { + text = only_one_marriage_tradition_allowed + trigger_if = { + limit = { + OR = { + NOT = { exists = scope:replacing } + NOR = { + scope:replacing = culture_tradition:tradition_monogamous + scope:replacing = culture_tradition:tradition_polygamous + } + } + } + NOR = { + culture_tradition:tradition_monogamous = { is_in_list = traits } + culture_tradition:tradition_polygamous = { is_in_list = traits } + } + } + } + } + can_pick_for_hybridization = { + custom_tooltip = { + text = only_one_marriage_tradition_allowed + NOT = { # Only blocks monogamous to avoid duplicate warnings, but is blocked by polygamous + culture_tradition:tradition_monogamous = { is_in_list = traits } + } + } + } + + parameters = { + number_of_spouses = 1 + number_of_consorts = 3 + + number_of_consorts_hegemony = 5 + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + scope:character.faith = { + OR = { + has_doctrine = doctrine_polygamy + has_doctrine = doctrine_concubines + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = cheaper_tradition_from_faith + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_concubines } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 0 } +} + +tradition_sacred_mountains = { + category = ritual + + layers = { + 0 = learning + 1 = mediterranean + 4 = mountain.dds + } + + is_shown = { + NOR = { + has_cultural_pillar = heritage_somalian + has_cultural_pillar = heritage_east_african + has_cultural_pillar = heritage_tibetan + has_cultural_pillar = heritage_qiangic + any_culture_county = { + title_province = { + geographical_region = world_himalaya + } + } + has_cultural_tradition = tradition_himalayan_settlers + } + scope:character = { government_has_flag = government_is_tribal } + } + can_pick = { + custom_description = { + text = culture_in_mountains_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + + parameters = { + piety_gain_on_building_complete_in_mountains = yes + zealous_people_internal_yurt_unlock = yes + } + + character_modifier = { + mountains_fertility_decline_mult = -0.1 + desert_mountains_fertility_decline_mult = -0.1 + } + + province_modifier = { + desert_mountains_tax_mult = 0.05 + mountains_tax_mult = 0.05 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = mountain_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_sacred_mountains } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { culture_pillar:ethos_spiritual = { is_in_list = traits } } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + piety_level >= 3 + } + } + multiply = scope:character.piety_level + } + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.3 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + any_culture_county = { + percent >= 0.6 + county_has_province_with_terrain = { + terrain = mountains + terrain = desert_mountains + } + } + } + multiply = 2 + } + } +} + +tradition_sacred_groves = { + category = ritual + + layers = { + 0 = learning + 1 = western + 4 = forest.dds + } + + is_shown = { + scope:character = { government_has_flag = government_is_tribal } + } + can_pick = { + custom_description = { + text = culture_in_forest_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + terrain = jungle + } + } + } + } + + parameters = { + piety_gain_on_building_complete_in_forest_taiga = yes + } + province_modifier = { + forest_tax_mult = 0.05 + taiga_tax_mult = 0.05 + jungle_tax_mult = 0.05 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + terrain = jungle + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = forest_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_sacred_groves } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { culture_pillar:ethos_spiritual = { is_in_list = traits } } + } + multiply = 0.25 + } + else_if = { + limit = { + scope:character ?= { + piety_level >= 3 + } + } + multiply = scope:character.piety_level + } + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.3 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + terrain = jungle + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + any_culture_county = { + percent >= 0.6 + county_has_province_with_terrain = { + terrain = forest + terrain = taiga + terrain = jungle + } + } + } + multiply = 4 + } + } +} + +tradition_culinary_art = { + category = ritual + + layers = { + 0 = diplo + 1 = indian + 4 = food.dds + } + + can_pick = { + custom_tooltip = { + text = culture_in_farmlands_or_floodplains_terrain_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = farmlands + terrain = floodplains + } + } + } + } + + parameters = { + more_expensive_feasts = yes + refined_feasts = yes + renown_from_feasts = yes + characters_are_better_food_tasters = yes + better_food_tasters = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + count >= 5 + county_has_province_with_terrain = { + terrain = farmlands + terrain = floodplains + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_in_farmlands_or_floodplains_terrain_count_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_culinary_art } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 50 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + count >= 2 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = farmlands + terrain = floodplains + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_festivities = { + category = ritual + + layers = { + 0 = diplo + 1 = indian + 4 = food.dds + } + + parameters = { + more_frequent_feasts = yes + reveler_traits_more_common = yes + reveler_traits_more_valued = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_stoic_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + has_trait = lifestyle_reveler + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_reveler_lifestyle_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_festivities } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { + scope:character ?= { + has_trait = lifestyle_reveler + } + } + } + multiply = 0.5 + } + else = { + multiply = 2 + } + } +} + +tradition_sorcerous_metallurgy = { + category = ritual + + layers = { + 0 = learning + 1 = mediterranean + 4 = tools.dds + } + + is_shown = { + } + + can_pick = { + scope:character = { + faith = { + NOR = { + has_doctrine_parameter = witchcraft_illegal + has_doctrine_parameter = witchcraft_shunned + } + } + } + } + + parameters = { + more_expensive_weapon_inspiration = yes + improved_weapon_inspiration = yes + building_barracks_piety_bonuses = yes + sorcerous_metallurgy_internal_yurt_unlock = yes + nomadic_metal_artifact_unlock = yes + } + + character_modifier = { + prowess_per_piety_level = 2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_or_communal_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + has_trait = witch + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = three_witch_rulers_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_sorcerous_metallurgy } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { + scope:character = { + has_trait = witch + } + } + } + multiply = 0.5 + } + else = { + multiply = 8 + } + } +} + +tradition_mystical_ancestors = { + category = ritual + + layers = { + 0 = learning + 1 = mediterranean + 4 = philosopher.dds + } + + is_shown = { + any_parent_culture_or_above = { + has_cultural_tradition = tradition_mystical_ancestors + } + } + + can_pick = { #Can pick if your culture has mystical ancestors in its history + custom_tooltip = { + text = any_ancestor_culture_was_mystical + any_parent_culture_or_above = { + has_cultural_tradition = tradition_mystical_ancestors + } + } + } + + parameters = { + cannot_disherit = yes + landing_house_members_gives_renown = yes + piety_penalty_for_revoking_titles_from_house_members = yes + } + + character_modifier = { + dynasty_opinion = 10 + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + } + if = { + limit = { + NOT = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mystical_ancestors } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 1000 } +} + +tradition_religion_blending = { + category = ritual + + layers = { + 0 = diplo + 1 = mediterranean + 4 = temple.dds + } + + is_shown = { + NOT = { + culture_tradition:tradition_steppe_tolerance = { is_in_list = traits } + } + } + can_pick = { + custom_tooltip = { + text = rulers_following_different_faiths_trigger_desc + scope:character = { + any_vassal = { + count >= 2 + culture = prev.culture + faith != prev.faith + } + } + } + } + + parameters = { + more_easily_converted = yes + } + + character_modifier = { + faith_creation_piety_cost_mult = -0.2 + faith_conversion_piety_cost_mult = -0.2 + ignore_opinion_of_different_faith = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_vassal = { + count >= 5 + culture = prev.culture + faith != prev.faith + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_following_different_faiths_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_religion_blending } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { + scope:character = { + any_vassal = { + count >= 5 + culture = prev.culture + faith != prev.faith + } + } + } + } + multiply = 0 + } + } +} + +tradition_religious_patronage = { + category = ritual + + layers = { + 0 = steward + 1 = indian + 4 = temple.dds + } + + can_pick = { + custom_tooltip = { + any_culture_county = { + percent >= 0.2 + any_county_province = { + has_holding_type = church_holding + } + } + text = 20_percent_churches + } + } + + parameters = { + extra_piety_from_temple_construction = yes + renown_from_temple_construction = yes + consolidate_rule_decision = yes + } + character_modifier = { + monthly_piety_from_buildings_mult = 0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + faith = scope:character.faith + has_trait = zealous + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_same_faith_zealous_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_religious_patronage } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 100 + if = { + limit = { + scope:character = { + government_has_flag = government_is_tribal + } + } + multiply = 0 + } + } +} + +tradition_medicinal_plants = { + category = ritual + + layers = { + 0 = learning + 1 = indian + 4 = forest.dds + } + + parameters = { + herbalist_traits_more_common = yes + herbalist_trait_gives_bonuses = yes + } + + character_modifier = { + owned_hostile_scheme_success_chance_add = 5 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_stoic_or_bureaucratic_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + has_trait = lifestyle_herbalist + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_lifestyle_herbalist_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_medicinal_plants } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + scope:character ?= { + NOT = { + has_trait = lifestyle_herbalist + } + } + } + multiply = 0.75 + } + else = { + multiply = 4 + } + } +} + +tradition_sacred_hunts = { + category = ritual + + layers = { + 0 = intrigue + 1 = mediterranean + 4 = hunter.dds + } + + can_pick = { + culture_not_pacifistic_trigger = yes + custom_tooltip = { + text = cannot_have_tradition_vegetarianism + NOT = { culture_tradition:tradition_vegetarianism = { is_in_list = traits } } + } + } + + parameters = { + sacred_hunts = yes + hunting_traits_more_pious = yes + zealous_people_internal_yurt_unlock = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_spiritual_or_stoic_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + has_trait = lifestyle_hunter + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_hunter_lifestyle_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_sacred_hunts } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOR = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + } + multiply = 0.5 + } + } +} + +tradition_faith_bound = { + category = ritual + + layers = { + 0 = learning + 1 = indian + 4 = crown.dds + } + + parameters = { + same_faith_inheritance_only = yes + } + character_modifier = { + opinion_of_different_faith = -10 + ai_zeal = 25 + } + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + any_ruler = { + culture = prev + THIS != scope:character + faith = scope:character.faith + primary_title.tier >= tier_county + } + } + NOT = { + any_ruler = { + percent >= 0.9 + culture = prev + primary_title.tier >= tier_county + faith = scope:character.faith + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_same_faith_desc + } + } + if = { + limit = { + OR = { + has_variable = defensive_traditionalist_discount + has_variable = aggressive_traditionalist_discount + } + } + add = { + value = traditionalist_discount + desc = traditionalist_discount_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_faith_bound } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 0 + if = { + limit = { + scope:character = { + has_trait = zealous + } + } + add = 100 + } + } +} + +tradition_by_the_sword = { + category = ritual + + layers = { + 0 = learning + 1 = mena + 4 = swords.dds + } + + can_pick = { + custom_tooltip = { + text = faith_not_allowed_holy_war_desc + scope:character = { + faith = { + NOT = { has_doctrine_parameter = holy_wars_forbidden } # Pacifists cannot Holy War + } + } + } + } + + parameters = { + no_limit_to_kingdom_level_holy_wars = yes + cb_lower_piety_level_requirement = yes + } + character_modifier = { + diplomacy_per_piety_level = -1 + martial_per_piety_level = 1 + different_faith_opinion = -15 + monthly_piety_gain_mult = -0.2 + ai_zeal = 25 + } + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOT = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + faith = scope:character.faith + has_trait = zealous + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_same_faith_zealous_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_by_the_sword } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 0 + if = { + limit = { + scope:character ?= { + has_trait = zealous + ai_has_warlike_personality = yes + any_neighboring_top_liege_realm_owner = { + count >= 2 + primary_title.tier >= tier_kingdom + faith != prev.faith + } + } + } + add = 1000 + } + } +} + +tradition_language_scholars = { + category = ritual + + layers = { + 0 = intrigue + 1 = indian + 4 = philosopher.dds + } + + parameters = { + piety_from_language_schemes = yes + language_success_chance_per_piety_level = yes + languages_speed_up_claims = yes + rulers_want_to_learn_languages_of_coreligionists = yes + } + character_modifier = { + learn_language_scheme_phase_duration_add = medium_scheme_phase_duration_bonus_value + } + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bureaucratic_spiritual_or_egalitarian_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + piety_level >= 3 + num_of_known_languages >= 3 + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = piety_level_kown_languages_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_language_scholars } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 100 + } +} + +# This is the free version of runestones. +tradition_runestones = { + category = ritual + + layers = { + 0 = steward + 1 = western + 4 = runestone.dds + } + + # Runestones are available in a slightly reduced form in the base title, so we let you access this tradition regardless of whether you have FP1 or not. + is_shown = { + has_cultural_pillar = heritage_north_germanic + } + can_pick = { + custom_tooltip = { + text = cannot_have_tradition_fp1_northern_stories + NOT = { culture_tradition:tradition_fp1_northern_stories = { is_in_list = traits } } + } + } + + parameters = { + has_access_to_runestones = yes + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_bureaucratic_desc + } + } + # Poet, Arrogant, or Journaller requirement. + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + OR = { + has_trait = lifestyle_poet + has_trait = arrogant + has_trait = journaller + } + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_lacks_storytelling_traits_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_runestones } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + } +} + +tradition_merciful_blindings = { + category = ritual + + layers = { + 0 = intrigue + 1 = mediterranean + 4 = tools.dds + } + + can_pick = { + custom_tooltip = { + text = cannot_have_tradition_byzantine_succession + NOT = { culture_tradition:tradition_byzantine_succession = { is_in_list = traits } } + } + } + + parameters = { + can_blind_prisoners = yes + merciful_blinding = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_or_courtly_desc + } + } + if = { + limit = { + scope:character = { + NOT = { + any_prisoner = { + scope:character = { + OR = { + has_banish_reason = prev + has_execute_reason = prev + } + } + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = no_prisoner_with_harsh_reason_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_merciful_blindings } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { # Reduce chance of picking this if the culture has another use of prisoners already + culture_tradition:tradition_talent_acquisition = { is_in_list = traits } + } + multiply = 0.5 + } + } +} diff --git a/common/culture/traditions/01_fp1_traditions.txt b/common/culture/traditions/01_fp1_traditions.txt new file mode 100644 index 00000000..6ad0f646 --- /dev/null +++ b/common/culture/traditions/01_fp1_traditions.txt @@ -0,0 +1,602 @@ +########################### +# FP1 CULTURAL TRADITIONS +########################### + +####################### +# Norse Specific +####################### + +tradition_fp1_coastal_warriors = { + category = combat + + layers = { + 0 = martial + 1 = western + 4 = viking.dds + } + + is_shown = { + # DLC check. + has_fp1_dlc_trigger = yes + NOT = { has_cultural_tradition = tradition_hird } + has_cultural_pillar = heritage_north_germanic + } + + can_pick = { + # Must be of a suitable heritage. + custom_tooltip = { + text = northern_germanic_heritage_trigger + has_cultural_pillar = heritage_north_germanic + } + # And have a coastal presence. + custom_description = { + text = culture_on_coast_desc + any_culture_county = { + has_coastal_province = yes + } + } + # Shouldn't be combined with the following traditions: + custom_tooltip = { + text = cannot_have_tradition_warrior_culture + NOT = { culture_tradition:tradition_warrior_culture = { is_in_list = traits } } + } + custom_tooltip = { + text = cannot_have_tradition_seafaring + NOT = { culture_tradition:tradition_seafaring = { is_in_list = traits } } + } + custom_tooltip = { + text = cultrad_not_nomadic_government_type + scope:character = { + NOT = { + government_has_flag = government_is_nomadic + } + } + } + custom_tooltip = { + text = cannot_have_tradition_maritime_way_of_life + NOT = { culture_tradition:tradition_maritime_way_of_life = { is_in_list = traits } } + } + } + + parameters = { + unlock_maa_bondi = yes + unlock_maa_vigmen = yes + unlock_maa_varangian_veterans = yes + unlock_maa_huscarls = yes + strong_traits_more_valued = yes + strong_traits_more_common = yes + trade_ports_stationed_maa_bonus = yes + trade_ports_enabled_for_tribals = yes + unlock_voluntary_laampdom = yes + more_likely_to_be_laamps = yes + } + + character_modifier = { + sea_travel_danger = medium_sea_danger_reduction + coastal_sea_travel_danger = medium_sea_danger_reduction + taiga_provisions_use_mult = -0.1 + forest_provisions_use_mult = -0.1 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = culture_not_bellicose + } + } + # Gotta be a heavily coastal culture not to get a surcharge. + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + has_coastal_province = yes + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = coastal_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp1_coastal_warriors } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.3 + has_coastal_province = yes + } + } + } + } + multiply = 0 + } + } +} + +tradition_fp1_performative_honour = { + category = societal + + layers = { + 0 = diplo + 1 = western + 4 = shieldmaiden.dds + } + + is_shown = { + # DLC check. + has_fp1_dlc_trigger = yes + has_cultural_pillar = heritage_north_germanic + } + + can_pick = { + # Must be of a suitable heritage. + custom_tooltip = { + text = northern_germanic_heritage_trigger + has_cultural_pillar = heritage_north_germanic + } + # Shouldn't be combined with the following traditions: + custom_tooltip = { + text = cannot_have_tradition_fp1_trials_by_combat + NOT = { culture_tradition:tradition_fp1_trials_by_combat = { is_in_list = traits } } + } + custom_tooltip = { + text = cannot_have_tradition_fp1_the_right_to_prove + NOT = { culture_tradition:tradition_fp1_the_right_to_prove = { is_in_list = traits } } + } + } + + parameters = { + has_access_to_shieldmaidens = yes + has_access_to_trials_by_combat = yes + craven_trait_costs_prestige = yes + weak_traits_looked_down_upon = yes + } + + character_modifier = { + knight_limit = 1 + accolade_glory_gain_mult = 0.1 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOT = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_courtier = { + count >= 5 + prowess >= 10 + is_adult = yes + NOT = { can_be_knight_trigger = { ARMY_OWNER = prev } } + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = courtiers_with_prowess_who_cant_be_knight_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp1_performative_honour } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 100 } +} + +tradition_fp1_northern_stories = { + category = societal + + layers = { + 0 = diplo + 1 = western + 4 = runestone.dds + } + + is_shown = { + # DLC check. + has_fp1_dlc_trigger = yes + has_cultural_pillar = heritage_north_germanic + } + + can_pick = { + # Must be of a suitable heritage. + custom_tooltip = { + text = northern_germanic_heritage_trigger + has_cultural_pillar = heritage_north_germanic + } + # Shouldn't be combined with the following traditions: + custom_tooltip = { + text = cannot_have_tradition_runestones + NOT = { culture_tradition:tradition_runestones = { is_in_list = traits } } + } + custom_tooltip = { + text = cannot_have_tradition_poetry + NOT = { culture_tradition:tradition_poetry = { is_in_list = traits } } + } + custom_tooltip = { + text = cannot_have_tradition_storytellers + NOT = { culture_tradition:tradition_storytellers = { is_in_list = traits } } + } + } + + parameters = { + has_access_to_runestones = yes + poet_trait_gives_bonuses = yes + poet_trait_more_common = yes + better_ward_education = yes + tells_stories = yes + better_court_poets = yes + } + + character_modifier = { + owned_scheme_secrecy_add = -15 + owned_legend_spread_mult = 0.1 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_bureaucratic_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + has_trait = lifestyle_poet + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_poet_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp1_northern_stories } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 100 } +} + +####################### +# Generic +####################### + +tradition_fp1_trials_by_combat = { + category = societal + + layers = { + 0 = intrigue + 1 = western + 4 = fight.dds + } + + is_shown = { + # DLC check. + has_fp1_dlc_trigger = yes + has_cultural_pillar = heritage_north_germanic + } + + can_pick = { + custom_tooltip = { + text = cannot_have_tradition_fp1_performative_honour + NOT = { culture_tradition:tradition_fp1_performative_honour = { is_in_list = traits } } + } + } + + parameters = { + has_access_to_trials_by_combat = yes + blademaster_traits_give_learning = yes + craven_trait_costs_prestige = yes + } + + character_modifier = { + knight_limit = 1 + accolade_glory_gain_mult = 0.1 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_stoic_or_courtly_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + OR = { + has_trait = education_martial_4 + has_trait = education_martial_5 + } + learning >= 10 + } + } + } + trigger_else_if = { + limit = { + scope:character = { + OR = { + has_trait = education_martial_4 + has_trait = education_martial_5 + } + learning >= 10 + } + } + always = no + } + trigger_else_if = { + limit = { + scope:character.culture = { + OR = { + has_cultural_pillar = heritage_brythonic + has_cultural_pillar = heritage_central_germanic + has_cultural_pillar = heritage_frankish + has_cultural_pillar = heritage_goidelic + has_cultural_pillar = heritage_iberian + has_cultural_pillar = heritage_latin + has_cultural_pillar = heritage_west_germanic + } + } + } + always = no + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_martial_edu_and_learning_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp1_trials_by_combat } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { value = 100 } +} + +tradition_fp1_the_right_to_prove = { + category = societal + + layers = { + 0 = intrigue + 1 = western + 4 = shieldmaiden.dds + } + + is_shown = { + # DLC check. + has_fp1_dlc_trigger = yes + } + + can_pick = { + custom_tooltip = { + text = cannot_have_tradition_fp1_performative_honour + NOT = { culture_tradition:tradition_fp1_performative_honour = { is_in_list = traits } } + } + } + + parameters = { + has_access_to_shieldmaidens = yes + } + + character_modifier = { + knight_limit = -2 + knight_effectiveness_mult = 0.25 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + + # Egalitarian, provided you're moving *up* the scale. Somewhat less so when moving down. + culture_pillar:ethos_egalitarian = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_egalitarian_or_communal_desc + } + } + if = { + limit = { + NOT = { + scope:character = { + any_courtier = { + count >= 5 + prowess >= 10 + is_adult = yes + NOT = { can_be_knight_trigger = { ARMY_OWNER = prev } } + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = courtiers_with_prowess_who_cant_be_knight_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp1_the_right_to_prove } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { + scope:character = { + any_courtier = { + count >= 5 + prowess >= 10 + is_adult = yes + NOT = { can_be_knight_trigger = { ARMY_OWNER = prev } } + } + } + } + } + multiply = 0 + } + } +} diff --git a/common/culture/traditions/03_fp2_traditions.txt b/common/culture/traditions/03_fp2_traditions.txt new file mode 100644 index 00000000..1b83e526 --- /dev/null +++ b/common/culture/traditions/03_fp2_traditions.txt @@ -0,0 +1,433 @@ +########################### +# FP2 CULTURAL TRADITIONS +########################### + +####################### +# Aragonese Specific +####################### + +tradition_fp2_state_ransoming = { + category = realm + + layers = { + 0 = steward + 1 = western + 4 = state_ransoming.dds + } + + is_shown = { + # DLC check. + has_fp2_dlc_trigger = yes + } + + # Anyone can take this. + + parameters = { + knights_die_less_but_are_captured_more = yes + characters_more_likely_to_be_captured_in_sieges = yes + can_demand_higher_ransoms_from_lower_tiers = yes + } + + character_modifier = { + hard_casualty_modifier = -0.5 + monthly_war_income_mult = -0.25 + } + + county_modifier = { + # Naturally, people are more keen to turn up to serve. + levy_size = 0.1 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_communal_desc + } + } + # Heritage or language + if = { + limit = { + NOR = { + has_cultural_pillar = heritage_iberian + culture_head ?= { knows_language = language_iberian } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = lack_iberian_heritage_or_language_penalty_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp2_state_ransoming } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + # General replacement stuff. + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + } +} + +####################### +# Castilian Specific +####################### + +tradition_fp2_strategy_gamers = { + category = ritual + + layers = { + 0 = diplo + 1 = western + 4 = board_gamers.dds + } + + is_shown = { + # DLC check. + has_fp2_dlc_trigger = yes + } + + # Anyone can take this. + + parameters = { + commanders_likelier_to_gain_commander_traits = yes + may_challenge_to_board_games = yes + may_wager_land_on_board_games = yes + withering_mind_less_likely = yes + } + + character_modifier = { + movement_speed = 0.1 + prowess = medium_skill_penalty + martial = medium_skill_bonus + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_courtly_desc + } + } + # Either high martial, high learning, or a chess board required. + if = { + limit = { exists = culture_head } + if = { + limit = { + culture_head = { + NOR = { + martial >= very_high_skill_rating + learning >= very_high_skill_rating + any_character_artifact = { has_variable = can_be_used_for_board_games } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = lack_martial_learning_or_chess_board_penalty_desc + } + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp2_strategy_gamers } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 0 + + if = { + limit = { exists = culture_head } + culture_head = { + # Absolute nerds. + if = { + limit = { + martial >= extremely_high_skill_rating + learning >= extremely_high_skill_rating + has_trait = scholar + } + add = 100 + } + # People who got suckered in & accidentally started a trend. + if = { + limit = { + any_character_artifact = { has_variable = can_be_used_for_board_games } + } + add = 100 + } + } + } + } +} + +####################### +# Andalusian Specific +####################### + +tradition_fp2_malleable_subjects = { + category = realm + + layers = { + 0 = intrigue + 1 = mena + 4 = malleable_subjects.dds + } + + is_shown = { + # DLC check. + has_fp2_dlc_trigger = yes + has_cultural_pillar = heritage_iberian + } + + can_pick = { + # Must be of a suitable heritage. + custom_tooltip = { + text = iberian_heritage_trigger + has_cultural_pillar = heritage_iberian + } + } + + parameters = { + doesnt_care_about_culture_faith_in_factions = yes + wants_to_learn_liege_language = yes + harder_to_convert_county_culture_without_heritage = yes + easier_to_convert_county_culture_with_heritage = yes + powerful_foreign_knights_find_you_attractive = yes + # ^[blushes] + } + + character_modifier = { + mercenary_hire_cost_mult = -0.5 + vassal_levy_contribution_mult = 0.25 + different_culture_opinion = 10 + ignore_negative_opinion_of_culture = yes + } + + culture_modifier = { + mercenary_count_mult = 2 + cultural_acceptance_gain_mult = 0.25 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_egalitarian_or_courtly_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp2_malleable_subjects } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 0 + # Players might want this, but the AI never does. + } +} + +####################### +# Generic +####################### + +tradition_fp2_ritualised_friendship = { + category = societal + + layers = { + 0 = diplo + 1 = western + 4 = ritualised_friendship.dds + } + + is_shown = { + # DLC check. + #has_fp2_dlc_trigger = yes + } + + can_pick = { + # Must have at least one friend. No friendless losers. Especially you, Nick. + custom_tooltip = { + text = need_at_least_one_friend + culture_head ?= { + any_relation = { type = friend } + } + } + } + + parameters = { + automatic_befriend_access = yes + may_propose_best_friendship = yes + strong_hooks_and_stress_effects_best_friends = yes + may_select_friendship_synergy_bonus = yes + } + + character_modifier = { + scheme_phase_duration_against_friend_add = 20 + scheme_phase_duration_against_best_friend_add = 40 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # No ethos requirement: everyone likes friends. + # Need at least three friends. + if = { + limit = { exists = culture_head } + if = { + limit = { + culture_head = { + any_relation = { + type = friend + count < 3 + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = guess_you_need_more_friends_desc + } + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_fp2_ritualised_friendship } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 0 + + if = { + limit = { exists = culture_head } + culture_head = { + # Some traits make you want to codify this more... + if = { + limit = { has_trait = gregarious } + add = 50 + } + if = { + limit = { has_trait = just } + add = 25 + } + if = { + limit = { has_trait = compassionate } + add = 25 + } + # ... but arbitrary characters have zero interest in anything nearly so formal + if = { + limit = { has_trait = arbitrary } + add = -200 + } + # We don't modify down for shy because, if anything, you'd expect a shy person to be more serious about the few friends they *do* have. + # Having lots of friends makes you more likely to want this. + if = { + limit = { + any_relation = { + type = friend + count >= 4 + } + } + add = 50 + } + # As does having a best friend already. + if = { + limit = { + any_relation = { type = best_friend } + } + add = 25 + } + # And certain lifestyles also make you want to focus on this. + if = { + limit = { has_focus = martial_chivalry_focus } + add = 10 + } + } + } + } +} diff --git a/common/culture/traditions/04_ep2_traditions.txt b/common/culture/traditions/04_ep2_traditions.txt new file mode 100644 index 00000000..3e115fdb --- /dev/null +++ b/common/culture/traditions/04_ep2_traditions.txt @@ -0,0 +1,106 @@ +########################### +# EP2 CULTURAL TRADITIONS +########################### + +####################### +# Generic +####################### + +tradition_ep2_avid_falconers = { + category = societal + + layers = { + 0 = diplo + 1 = mena + 4 = hunter.dds + } + + is_shown = { + # DLC check. + has_dlc_feature = tours_and_tournaments + } + + can_pick = { + culture_not_pacifistic_trigger = yes + custom_tooltip = { + text = cannot_have_tradition_vegetarianism + NOT = { culture_tradition:tradition_vegetarianism = { is_in_list = traits } } + } + } + + parameters = { + more_frequent_hunts = yes + hunting_traits_more_valued = yes + falconer_traits_more_common = yes + always_unlock_legendary_hunting_lodge = yes + } + + province_modifier = { + stationed_maa_pursuit_mult = 0.15 + } + + cost = { + prestige = { + # Base cost. + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + # Ethos requirement. + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_stoic_or_courtly_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_ep2_avid_falconers } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + # General replacement stuff. + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + + if = { + limit = { exists = culture_head } + culture_head = { + # Some traits make you want to codify this more... + if = { + limit = { has_trait = arrogant } + add = 25 + } + if = { + limit = { has_trait = diligent } + add = 25 + } + # ... and others less. + if = { + limit = { has_trait = lazy } + add = -50 + } + if = { + limit = { has_trait = humble } + add = -25 + } + } + } + } +} diff --git a/common/culture/traditions/06_ce1_traditions.txt b/common/culture/traditions/06_ce1_traditions.txt new file mode 100644 index 00000000..7ad3514c --- /dev/null +++ b/common/culture/traditions/06_ce1_traditions.txt @@ -0,0 +1,122 @@ +########################### +# EP2 CULTURAL TRADITIONS +########################### + +####################### +# Generic +####################### + +tradition_ce1_ritual_washing = { + category = ritual + + layers = { + 0 = diplo + 1 = mena + 4 = ritual_washing.dds + } + + character_modifier = { + monthly_learning_lifestyle_xp_gain_mult = 0.1 + } + + parameters = { + better_disease_resistance = yes + diligent_trait_more_common = yes + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + employs_court_position = court_physician_court_position + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = doesnt_employ_court_physician_desc + } + } + #Discounts + if = { + limit = { + scope:character = { + OR = { + has_trait = lifestyle_physician + has_trait = whole_of_body + } + } + } + add = { + value = tradition_trait_discount + desc = cheaper_tradition_physician_or_whole_of_body + } + } + if = { + limit = { + has_cultural_pillar = heritage_north_germanic + } + add = { + value = tradition_heritage_discount + desc = cheaper_tradition_norse_washing + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_ce1_ritual_washing } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + scope:character = { + has_perk = wash_your_hands_perk + } + } + add = 100 + } + } +} diff --git a/common/culture/traditions/07_ep3_traditions.txt b/common/culture/traditions/07_ep3_traditions.txt index d886b3a2..b9becd5b 100644 --- a/common/culture/traditions/07_ep3_traditions.txt +++ b/common/culture/traditions/07_ep3_traditions.txt @@ -16,12 +16,13 @@ tradition_ep3_indomitable_azatani = { } is_shown = { - OR = { - this = culture:armenian - any_parent_culture_or_above = { - this = culture:armenian - } - } + always = no +# OR = { +# this = culture:armenian +# any_parent_culture_or_above = { +# this = culture:armenian +# } +# } # DLC check. has_ep3_dlc_trigger = yes NOT = { @@ -145,12 +146,13 @@ tradition_ep3_audacious_cadets = { } is_shown = { - OR = { - this = culture:norman - any_parent_culture_or_above = { - this = culture:norman - } - } + always = no +# OR = { +# this = culture:norman +# any_parent_culture_or_above = { +# this = culture:norman +# } +# } # DLC check. has_ep3_dlc_trigger = yes NOT = { diff --git a/common/culture/traditions/09_ach_traditions.txt b/common/culture/traditions/09_ach_traditions.txt new file mode 100644 index 00000000..6c22b8db --- /dev/null +++ b/common/culture/traditions/09_ach_traditions.txt @@ -0,0 +1,33 @@ +####################### +# CULTURAL TRADITIONS # +####################### + +###################### +# ACH Traditions # +###################### + +oath_mend_the_fracture_tradition = { + category = regional + + is_shown = { #only added from decision + always = no + } + + parameters = { + synergy_cultures_counties_development = yes + synergy_cultures_maa_spawn = yes + synergy_cultures_opinion_gain = yes + synergy_cultures_positive_chance_desc = yes + } + + character_modifier = { + development_growth_factor = 0.2 + diplomacy = 1 + } + + layers = { + 0 = steward + 1 = mediterranean + 4 = hostages.dds + } +} \ No newline at end of file diff --git a/common/culture/traditions/09_mpo_traditions.txt b/common/culture/traditions/09_mpo_traditions.txt new file mode 100644 index 00000000..d7607bc2 --- /dev/null +++ b/common/culture/traditions/09_mpo_traditions.txt @@ -0,0 +1,393 @@ +####################### +# CULTURAL TRADITIONS # +####################### + +###################### +# MPO Traditions # +###################### + +tradition_mpo_iron_cavalry = { + category = regional + + layers = { + 0 = martial + 1 = steppe + 4 = iron_cavalry.dds + } + + is_shown = { + has_mpo_dlc_trigger = yes + OR = { + has_cultural_pillar = heritage_mongolic + has_cultural_pillar = heritage_turkic + has_cultural_pillar = heritage_magyar + scope:character = { + mpo_can_recruit_nomad_maa_trigger = yes + } + } + } + + + can_pick = { + culture_not_pacifistic_trigger = yes + custom_tooltip = { + text = culture_head_archer_cavalry_desc + scope:character = { + max_number_maa_soldiers_of_base_type = { + type = archer_cavalry + value >= 600 + } + } + } + trigger_if = { + limit = { + scope:character = { government_has_flag = government_is_nomadic } + } + scope:character.domicile ?= { + has_domicile_building_or_higher = paiza_metal_trade_yurt_01 + } + } + trigger_else = { + scope:character = { + has_trait = nomadic_philosophy + } + } + } + + parameters = { + unlock_maa_cataphract_archers = yes + martial_traits_give_out_hcav_bonus = yes + metalworkers_internal_yurt_unlock = yes + } + character_modifier = { + heavy_cavalry_toughness_mult = 0.2 + archer_cavalry_toughness_mult = 0.2 + light_cavalry_toughness_mult = 0.1 + herd_conversion = -0.01 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + multiply = 4 + desc = BASE + format = "BASE_VALUE_FORMAT" + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mpo_iron_cavalry } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { # Reduce chance slightly if the culture has access to other "cavalry" types + OR = { + has_innovation = innovation_war_camels + has_innovation = innovation_elephantry + } + } + multiply = 0.4 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 4 + } + } +} + +tradition_mpo_wolves_of_the_deep_steppe = { + category = regional + + layers = { + 0 = martial + 1 = steppe + 4 = wolves_of_the_deep_steppe.dds + } + + is_shown = { + has_mpo_dlc_trigger = yes + OR = { + has_cultural_pillar = heritage_mongolic + has_cultural_pillar = heritage_turkic + has_cultural_pillar = heritage_magyar + scope:character = { + mpo_can_recruit_nomad_maa_trigger = yes + } + } + } + + can_pick = { + culture_not_pacifistic_trigger = yes + scope:character = { + government_has_flag = government_is_nomadic + } + } + + parameters = { + unlock_maa_mangudai = yes + } + character_modifier = { + prowess = 4 + herd_capacity_mult = 0.2 + herd_conversion = 0.01 + nomadic_horde_damage_mult = 0.1 + nomadic_horde_pursuit_mult = 0.1 + archer_cavalry_damage_mult = 0.15 + archer_cavalry_pursuit_mult = 0.2 + mountains_fertility_growth_mult = medium_culture_county_fertility_value_mult + mountains_travel_danger = mountains_medium_danger_reduction + hills_travel_danger = hills_medium_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + multiply = 4 + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + has_cultural_pillar = heritage_mongolic + } + multiply = { + value = 0.5 + desc = heritage_mongolic_name + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mpo_wolves_of_the_deep_steppe } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { # Reduce chance slightly if the culture has access to other "cavalry" types + OR = { + has_innovation = innovation_war_camels + has_innovation = innovation_elephantry + } + } + multiply = 0.4 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 4 + } + } +} + +tradition_devoted_horsemanship = { + category = regional + + layers = { + 0 = martial + 1 = steppe + 4 = horses.dds + } + + is_shown = { + OR = { + has_cultural_pillar = heritage_mongolic + has_cultural_pillar = heritage_turkic + has_cultural_pillar = heritage_magyar + scope:character = { + mpo_can_recruit_nomad_maa_trigger = yes + } + } + } + + can_pick = { + OR = { + has_cultural_pillar = heritage_mongolic + has_cultural_pillar = heritage_turkic + has_cultural_pillar = heritage_magyar + scope:character = { + mpo_can_recruit_nomad_maa_trigger = yes + } + scope:character = { + has_trait = nomadic_philosophy + } + } + } + + parameters = { + unlock_maa_horse_archers = yes + can_recruit_open_specialist = yes + unlock_horse_pastures_building = yes + unlock_voluntary_laampdom = yes + stewardship_traits_give_out_cav_bonus = yes + unlock_maa_tarkhan = yes + } + + character_modifier = { + movement_speed = 0.1 + character_travel_speed_mult = 0.2 + movement_speed_land_raiding = 0.2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + multiply = 2 + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_communal_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_devoted_horsemanship } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + } +} + +tradition_mpo_northern_tribes = { + category = regional + + layers = { + 0 = steward + 1 = steppe + 4 = northern_tribes.dds + } + + can_pick_for_hybridization = { + custom_tooltip = { + text = cannot_hybridize_northern_tribes + always = no + } + } + + is_shown = { + has_mpo_dlc_trigger = yes + any_culture_county = { + OR = { + has_county_modifier = mpo_siberian_permafrost_modifier + has_county_modifier = mpo_siberian_permafrost_modifier_bad + } + } + } + can_pick = { + any_culture_county = { + percent >= 0.2 + has_county_modifier = mpo_siberian_permafrost_modifier_bad + } + } + + parameters = { + unlock_maa_maturkan_warriors = yes + permafrost_modifier_mechanic = yes + permafrost_modifier_removal_condition = yes + permafrost_unlock_tribal_building = yes + permafrost_cannot_become_feudal = yes + } + character_modifier = { + taiga_advantage = 4 + winter_advantage = 4 + taiga_travel_danger = taiga_medium_danger_reduction + hills_travel_danger = hills_medium_danger_reduction + taiga_construction_gold_cost = -0.2 + forest_construction_gold_cost = -0.2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + multiply = 2 + desc = BASE + format = "BASE_VALUE_FORMAT" + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_mpo_northern_tribes } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.5 + OR = { + has_county_modifier = mpo_siberian_permafrost_modifier + has_county_modifier = mpo_siberian_permafrost_modifier_bad + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = mpo_northern_tribes_percentage_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 0 #ai either has it on game start or should not pursue it + } +} diff --git a/common/culture/traditions/tgp_traditions.txt b/common/culture/traditions/tgp_traditions.txt new file mode 100644 index 00000000..5ab45896 --- /dev/null +++ b/common/culture/traditions/tgp_traditions.txt @@ -0,0 +1,2347 @@ +tradition_tgp_bushido = { + category = regional + + layers = { + 0 = martial + 1 = asian + 4 = samurai.dds + } + + is_shown = { + culture_head = { + top_liege = { has_character_flag = shogun_flag } + has_government = japan_feudal_government + } + } + can_pick = { + culture_head = { + top_liege = { has_character_flag = shogun_flag } + has_government = japan_feudal_government + } + # Mutually exclusive with Imperial Peace and other Horse Archer MaA + NOR = { + culture_tradition:tradition_horse_lords = { is_in_list = traits } + culture_tradition:tradition_devoted_horsemanship = { is_in_list = traits } + culture_tradition:tradition_tgp_imperial_peace = { is_in_list = traits } + culture_tradition:tradition_tgp_imperial_peace = { is_in_list = traits } + } + } + + parameters = { + unlock_mounted_samurai_units = yes + unlock_infantry_samurai_units = yes + must_pledge_loyalty_to_liege = yes + honorable_trait_bonuses = yes + prowess_from_martial_education = yes + stalwart_leader_non_admin_duels = yes + non_admin_close_family_non_martial_gender_knights_in_defensive_wars = yes + } + + character_modifier = { + character_opinion_from_high_prowess_add = 2 + character_opinion_from_low_prowess_add = -1 + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + } + } + + ai_will_do = { + value = 1000 # AI should always try to pick this when they can + } +} + +tradition_tgp_rice_cultivators = { + category = realm + + layers = { + 0 = steward + 1 = asian + 4 = svamp.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + NOT = { + culture_tradition:tradition_intensive_farming = { is_in_list = traits } + } + } + + can_pick = { + custom_tooltip = { + text = culture_in_terraced_hills_terrain_desc + any_culture_county = { + any_county_province = { + terrain = terraced_hills + } + } + } + } + + parameters = { + rice_cultivators_next_level_paddy_fields = yes + rice_cultivators_can_construct_paddy_fields_in_hills_and_jungle = yes + } + + county_modifier = { + terraced_hills_development_growth_factor = 0.3 + terraced_hills_construction_gold_cost = -0.1 + terraced_hills_levy_size = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = culture_not_bellicose + } + } + if = { + limit = { + NOT = { + any_culture_county = { + count >= 3 + any_county_province = { + terrain = terraced_hills + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_in_terraced_hills_terrain_count_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + culture = scope:character.culture + any_county_province = { + terrain = terraced_hills + } + } + } + } + } + multiply = 0 + } + if = { + limit = { + scope:character = { + government_has_flag = government_is_tribal + } + } + multiply = 0 + } + } +} + +tradition_tgp_imperial_peace = { + category = regional + + layers = { + 0 = martial + 1 = asian + 4 = samurai.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + culture_head = { + government_is_japanese_trigger = yes + } + } + + can_pick = { + # Mutually exclusive with Bushido and other Horse Archer MaA + NOR = { + culture_tradition:tradition_horse_lords = { is_in_list = traits } + culture_tradition:tradition_devoted_horsemanship = { is_in_list = traits } + culture_tradition:tradition_tgp_imperial_peace = { is_in_list = traits } + culture_tradition:tradition_tgp_bushido = { is_in_list = traits } + } + } + + parameters = { + unlock_mounted_samurai_units = yes + prowess_from_martial_education = yes + non_admin_close_family_non_martial_gender_knights_in_defensive_wars = yes + stalwart_leader_non_admin_duels = yes + } + + character_modifier = { + defender_holding_advantage = 2 + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 50 + if = { + # Only Courtly cultures should pick this + limit = { NOT = { culture_pillar:ethos_courtly = { is_in_list = traits } } } + multiply = 0 + } + if = { + # AI should avoid stacking traditions for courtly court positions + limit = { culture_tradition:tradition_music_theory = { is_in_list = traits } } + multiply = 0.25 + } + } +} + +tradition_tgp_defiant_ambushers = { + category = regional + + layers = { + 0 = martial + 1 = asian + 4 = samurai.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + has_cultural_pillar = heritage_ainuic + } + + can_pick = { + # Mutually exclusive with other Horse Archer MaA + NOR = { + culture_tradition:tradition_horse_lords = { is_in_list = traits } + culture_tradition:tradition_devoted_horsemanship = { is_in_list = traits } + culture_tradition:tradition_tgp_imperial_peace = { is_in_list = traits } + culture_tradition:tradition_tgp_bushido = { is_in_list = traits } + } + } + + parameters = { + unlock_emishi_horse_archers_units = yes + harder_to_convert_county_culture = yes + county_peasant_and_populist_factions_more_common = yes + } + + character_modifier = { + movement_speed_land_raiding = 0.2 + raid_speed = 0.1 + levy_reinforcement_rate_even_if_baron = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 50 + if = { + # Only Courtly cultures should pick this + limit = { NOT = { culture_pillar:ethos_courtly = { is_in_list = traits } } } + multiply = 0 + } + if = { + # AI should avoid stacking traditions for courtly court positions + limit = { culture_tradition:tradition_music_theory = { is_in_list = traits } } + multiply = 0.25 + } + } +} + +tradition_tgp_warrior_monks = { + category = regional + + layers = { + 0 = martial + 1 = asian + 4 = warrior_monk.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + culture_head = { + faith = { has_doctrine = special_doctrine_immaterial_harmony } + has_religion = religion:buddhism_religion + } + } + + can_pick = { + # Mutually exclusive with other Warrior Monk + NOT = { + culture_tradition:tradition_warrior_monks = { is_in_list = traits } + } + } + + parameters = { + unlock_warrior_monk_units = yes + prowess_from_religious_traits = yes + culture_clergy_can_fight = yes + monastery_prowess_martial_bonus = yes + } + character_modifier = { + prowess_per_piety_level = 1 + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 50 + if = { + # Only Courtly cultures should pick this + limit = { NOT = { culture_pillar:ethos_courtly = { is_in_list = traits } } } + multiply = 0 + } + if = { + # AI should avoid stacking traditions for courtly court positions + limit = { culture_tradition:tradition_music_theory = { is_in_list = traits } } + multiply = 0.25 + } + } +} + +tradition_tgp_ephemeral_grace = { + category = regional + + layers = { + 0 = diplo + 1 = asian + 4 = calligraphy.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + culture_head = { + OR = { + faith = { has_doctrine = special_doctrine_immaterial_harmony } + has_religion = religion:shintoism_religion + } + } + } + + can_pick = { + # Mutually exclusive with Poetry and Gardening + NOT = { culture_tradition:tradition_poetry = { is_in_list = traits } } + NOT = { culture_tradition:tradition_gardening = { is_in_list = traits } } + } + + parameters = { + stress_loss_bonus_from_harmonious_traits = yes + poet_trait_gives_bonuses = yes + poet_trait_more_common = yes + can_appoint_court_gardener = yes + can_recruit_gardeners = yes + ai_romance_scheme_increase = yes + poet_trait_romance_bonuses = yes + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + has_trait = lifestyle_poet + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_poet_desc + } + } + + if = { + limit = { + scope:character = { + has_variable = tradition_poetry_travel_discount + } + } + + add = { + value = tradition_travel_discount + desc = tradition_travel_discount_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 50 + if = { + # Only Courtly cultures should pick this + limit = { NOT = { culture_pillar:ethos_courtly = { is_in_list = traits } } } + multiply = 0 + } + if = { + # AI should avoid stacking traditions for courtly court positions + limit = { culture_tradition:tradition_music_theory = { is_in_list = traits } } + multiply = 0.25 + } + } +} + +tradition_tgp_inward_perfection = { + category = regional + + layers = { + 0 = diplo + 1 = asian + 4 = instrument.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + has_east_asian_heritage_pillar_trigger = yes + } + + can_pick = { + # Mutually exclusive with other Isolationist + NOR = { + culture_tradition:tradition_isolationist = { is_in_list = traits } + culture_tradition:tradition_cultural_primacy = { is_in_list = traits } + } + } + + parameters = { + reduced_marriage_acceptance_outside_culture = yes + reduced_marriage_acceptance_distant_realms = yes + ai_doesnt_marry_outside_culture = yes + harder_to_hybridize = yes + may_challenge_to_board_games = yes + } + + culture_modifier = { + culture_innovation_progress_chance_from_spread_add = -20 + } + + character_modifier = { + character_innovation_progress_chance_from_fascination_add = 10 + monthly_lifestyle_xp_gain_mult = 0.05 + diplomatic_range_mult = -0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_communal_or_stoic_desc + } + } + } + } + + ai_will_do = { + value = 50 + } +} + +tradition_cultural_primacy = { + category = regional + + layers = { + 0 = diplo + 1 = asian + 4 = instrument.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + scope:character = { + OR = { + culture = { has_cultural_pillar = heritage_chinese } + has_title = title:h_china #Always available to new emperors + } + } + } + + can_pick = { + # Mutually exclusive with other Isolationist + NOR = { + culture_tradition:tradition_isolationist = { is_in_list = traits } + culture_tradition:tradition_tgp_inward_perfection = { is_in_list = traits } + } + } + + parameters = { + innovation_from_learning_traits = yes + courtiers_less_likely_to_leave_same_culture_court = yes + less_likely_to_culture_convert = yes + + reduced_marriage_acceptance_outside_culture = yes + reduced_marriage_acceptance_distant_realms = yes + ai_doesnt_marry_outside_culture = yes + harder_to_hybridize = yes + may_challenge_to_board_games = yes + } + + character_modifier = { + monthly_piety_gain_per_legitimacy_level_add = 0.15 + court_grandeur_baseline_add = 5 + + monthly_lifestyle_xp_gain_mult = 0.05 + opinion_of_different_culture = -15 + different_culture_opinion = -15 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_spiritual_communal_or_stoic_desc + } + } + } + } + + ai_will_do = { + value = 50 + } +} + +tradition_maritime_way_of_life = { + category = regional + + layers = { + 0 = diplo + 1 = asian + 4 = boat.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + OR = { + has_cultural_pillar = heritage_austronesian + scope:character = { + any_sub_realm_county = { + culture = { has_cultural_pillar = heritage_austronesian } + } + } + } + } + + can_pick = { + has_cultural_pillar = heritage_austronesian + custom_description = { + text = percentage_of_culture_on_coast_desc + any_culture_county = { + percent >= 0.5 + any_county_province = { + is_coastal = yes + } + } + } + } + + parameters = { + can_travel_along_rivers = yes + coastal_tribe_bonuses = yes #Maa bonuses for coastal tribal + unlock_maa_pesilat = yes + } + character_modifier = { + embarkation_cost_mult = -0.85 + naval_movement_speed_mult = 0.25 + coastal_sea_travel_danger = medium_sea_danger_reduction + sea_travel_danger = medium_sea_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_bureaucratic_or_spiritual_desc + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.7 + any_county_province = { + is_coastal = yes + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = high_coastal_percentage_desc + } + } + + if = { + limit = { + scope:character = { + has_variable = tradition_seafaring_travel_discount + } + + } + + add = { + value = tradition_travel_discount + desc = tradition_travel_discount_desc + } + } + + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { # Make stacking more less common + limit = { + OR = { + culture_tradition:tradition_maritime_mercantilism = { is_in_list = traits } + culture_tradition:tradition_fishermen = { is_in_list = traits } + } + } + multiply = 2 + } + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.3 + any_county_province = { + is_coastal = yes + } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + any_culture_county = { + percent >= 0.6 + any_county_province = { + is_coastal = yes + } + } + } + multiply = 8 + } + } +} + +tradition_tgp_hydraulic_builders = { + category = regional + + layers = { + 0 = steward + 1 = asian + 4 = wat.dds + } + + can_pick = { + scope:character = { government_has_flag = government_is_mandala } + } + + is_shown = { + has_tgp_dlc_trigger = yes + scope:character = { government_has_flag = government_is_mandala } + OR = { + has_cultural_pillar = heritage_mon_khmer + scope:character = { + any_sub_realm_county = { + culture = { has_cultural_pillar = heritage_mon_khmer } + } + } + } + } + + parameters = { + sacred_pool_additional_bonuses = yes + may_build_sacred_pools_ahead_of_time = yes + unlocks_waterworks_buildings = yes + waterworks_additional_bonuses = yes + } + county_modifier = { + wetlands_development_growth_factor = 0.25 + wetlands_construction_gold_cost = -0.1 + terraced_hills_development_growth_factor = 0.1 + terraced_hills_construction_gold_cost = -0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_or_spiritual_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_tgp_hydraulic_builders } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + count >= 2 + culture = scope:character.culture + any_county_province = { + has_holding_type = temple_citadel_holding + } + } + } + } + } + multiply = 0 + } + } +} + +tradition_tgp_fortified_strongholds = { + category = regional + + layers = { + 0 = steward + 1 = asian + 4 = wall.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + scope:character = { government_has_flag = government_is_mandala } + OR = { + has_cultural_pillar = heritage_tai + has_cultural_pillar = heritage_burman + scope:character = { + any_sub_realm_county = { + culture = { + OR = { + has_cultural_pillar = heritage_tai + has_cultural_pillar = heritage_burman + } + } + } + } + } + } + + parameters = { + founding_temple_citadels_gives_more_piety = yes + warmonger_city_founders = yes + temple_citadel_fort_level_bonus = yes + temple_citadel_control_bonus = yes + } + county_modifier = { + temple_citadel_holding_holding_build_gold_cost = -0.2 + temple_citadel_holding_holding_build_speed = -0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_courtly_spiritual_or_stoic_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_tgp_fortified_strongholds } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + } +} + +tradition_tgp_religious_hospitality = { + category = regional + + layers = { + 0 = learning + 1 = asian + 4 = wat.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + scope:character = { government_has_flag = government_is_mandala } + } + + parameters = { + invite_courtiers_reasons = yes + less_cost_to_invite_religious_exiles = yes + development_gain_from_religious_exiles_is_doubled = yes + ai_uses_religious_exiles = yes + } + + character_modifier = { + different_faith_opinion = 20 + faith_conversion_piety_cost_mult = -0.25 + different_faith_county_opinion_mult = -0.5 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_egalitarian_or_spiritual_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_tgp_religious_hospitality } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { # Avoid stacking similar traditions + culture_tradition:tradition_culture_blending = { is_in_list = traits } + culture_tradition:tradition_xenophilic = { is_in_list = traits } + culture_tradition:tradition_religion_blending = { is_in_list = traits } + } + multiply = 0.25 + } + } +} + +tradition_tgp_esoteric_power = { + category = regional + + layers = { + 0 = steward + 1 = asian + 4 = kris.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + scope:character = { government_has_flag = government_is_mandala } + OR = { + has_cultural_pillar = heritage_austronesian + scope:character = { + any_sub_realm_county = { + culture = { + has_cultural_pillar = heritage_austronesian + } + } + } + } + } + + parameters = { + increases_effect_of_mandala_realm_contracts = yes + may_commission_kris = yes + piety_level_affect_artifact_quality = yes + unlock_maa_pesilat = yes + } + character_modifier = { + jungle_travel_danger = jungle_medium_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_tgp_esoteric_power } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 # Good tradition for Mandalas + } +} + +tradition_tgp_barangay_confederations = { + category = regional + + layers = { + 0 = diplo + 1 = asian + 4 = wall.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + scope:character = { government_has_flag = government_is_tribal } + OR = { + has_cultural_pillar = heritage_austronesian + scope:character = { + any_sub_realm_county = { + culture = { + has_cultural_pillar = heritage_austronesian + } + } + } + } + } + + parameters = { + forming_confederations_is_easier = yes + invite_to_confederation_extra_reasons = yes + confederation_tribal_authority = yes + mandala_tributaries = yes + religious_relations_is_empowered = yes + } + character_modifier = { + fellow_confederation_member_opinion = 10 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + + if = { + limit = { + NOR = { + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_egalitarian = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_communal_egalitarian_or_stoic_desc + } + } + + if = { + limit = { + any_culture_county = { + percent <= 0.5 + is_coastal_county = yes + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = not_a_coastal_culture + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_tgp_barangay_confederations } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + ai_will_do = { + value = 300 + if = { + limit = { + scope:character.primary_title ?= { + tier = tier_duchy + } + } + multiply = 0.5 + } + if = { + limit = { + scope:character.primary_title ?= { + tier >= tier_kingdom + } + } + multiply = 0 + } + } +} + +tradition_nudists = { + category = societal + + layers = { + 0 = diplo + 1 = asian + 4 = jungle.dds + } + + parameters = { + naked_culture_active = yes + lustful_trait_less_common = yes + } + county_modifier = { + jungle_development_growth_factor = 0.2 + jungle_supply_limit_mult = 1 + jungle_provisions_use_mult = -0.75 + jungle_barter_goods_mult = 0.15 + } + + character_modifier = { + stress_gain_mult = -0.1 + jungle_advantage = 5 + jungle_travel_danger = jungle_medium_danger_reduction + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + has_cultural_pillar = ethos_courtly + has_cultural_pillar = ethos_communal + has_cultural_pillar = ethos_spiritual + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 3 + culture = prev + primary_title.tier >= tier_county + OR = { + has_completed_inspiration = yes + any_courtier_or_guest = { + OR = { + has_completed_inspiration = yes + exists = inspiration + } + } + } + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = has_courtier_or_guest_with_inspiration_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 0 + } +} + +tradition_tgp_mountain_island = { + category = regional + + layers = { + 0 = steward + 1 = asian + 4 = mountain.dds + } + + is_shown = { + NOR = { #This is replaced by Himalayan Settlers, Mountaineer Ruralism and Mountain Herding. + has_cultural_tradition = tradition_himalayan_settlers + has_cultural_tradition = tradition_mountaineer_ruralism + has_cultural_tradition = tradition_mountain_homes + has_cultural_pillar = heritage_arabic + has_cultural_pillar = heritage_berber + has_cultural_pillar = heritage_tibetan + has_cultural_pillar = heritage_qiangic + has_cultural_pillar = heritage_west_slavic + any_culture_county = { + title_province = { + geographical_region = world_himalaya + } + } + } + any_culture_county = { + title_province = { + geographical_region = world_asia_japan + } + } + } + can_pick = { + custom_description = { + text = culture_in_mountains_desc + any_culture_county = { + any_county_province = { + OR = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + # Mutually exclusive with other Mountaineers + NOT = { + culture_tradition:tradition_mountaineers = { is_in_list = traits } + } + } + + parameters = { + prestige_gain_on_building_complete_in_mountains_forest = yes + } + character_modifier = { + coastal_sea_travel_danger = medium_sea_danger_reduction + mountains_travel_danger = mountains_medium_danger_reduction + hills_travel_danger = hills_medium_danger_reduction + forest_travel_danger = forest_medium_danger_reduction + } + county_modifier = { + hills_development_growth_factor = 0.05 + mountains_development_growth_factor = 0.2 + } + province_modifier = { + mountains_construction_gold_cost = -0.1 + mountains_holding_construction_gold_cost = -0.1 + forest_construction_gold_cost = -0.1 + forest_holding_construction_gold_cost = -0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = culture_not_bellicose + } + } + if = { + limit = { + NOT = { + any_culture_county = { + percent >= 0.3 + any_county_province = { + OR = { + terrain = mountains + terrain = desert_mountains + } + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = mountain_percentage_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_tgp_mountain_island } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + percent >= 0.2 + culture = scope:character.culture + any_county_province = { terrain = mountains } + } + } + } + } + multiply = 0 + } + else_if = { + limit = { + any_culture_county = { + percent >= 0.6 + any_county_province = { terrain = mountains } + } + } + multiply = 8 + } + } +} + +tradition_stratified_society = { + category = regional + + layers = { + 0 = diplo + 1 = asian + 4 = officials.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + culture_head = { + government_allows = merit + } + has_cultural_pillar = heritage_korean + } + + parameters = { + family_shares_merit = yes + family_skips_exams = yes + marrying_into_the_ruling_family_gives_influence = yes + } + + county_modifier = { + } + + character_modifier = { + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_spiritual_or_stoic_desc + } + } + } + } + + ai_will_do = { + value = 50 + } +} + +tradition_fortress_mastery = { + category = regional + + layers = { + 0 = martial + 1 = asian + 4 = marching_soldiers.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + OR = { + has_cultural_pillar = heritage_korean + has_cultural_pillar = heritage_buyeo + } + } + + parameters = { + unlock_maa_gakgung_archers = yes + castle_fortifications_increase = yes + governor_trait_gives_counter_resistance = yes + } + + county_modifier = { + } + + character_modifier = { + archers_recruitment_cost_mult = -0.1 + same_heritage_county_advantage_add = 4 + prowess_per_merit_level = 1 + archers_max_size_add = 1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + culture_pillar:ethos_stoic = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_spiritual_or_stoic_desc + } + } + } + } + + ai_will_do = { + value = 50 + } +} + +tradition_tgp_art_of_war = { + category = regional + + layers = { + 0 = martial + 1 = asian + 4 = marching_soldiers.dds + } + + is_shown = { + OR = { +# this = culture:han +# any_parent_culture_or_above = { +# this = culture:han +# } + has_cultural_pillar = heritage_chinese + } + # DLC check. + has_tgp_dlc_trigger = yes + } + can_pick = { + } + + parameters = { + unlock_shenbigong_innovation = yes + unlock_zhanmadao = yes + unlock_burenjia = yes + unlock_maa_black_armor_cavalry = yes + guardians_can_transfer_commander_traits = yes + prowess_from_martial_education = yes + military_governor_appointment_score = yes + } + + character_modifier = { + martial_per_merit_level = 0.35 #Formal Military Education + monthly_merit_per_title_maa_value = 0.002 + heavy_infantry_max_size_add = 2 + counter_efficiency = 0.1 + men_at_arms_maintenance = 0.2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bellicose_or_bureaucratic_desc + } + } + if = { #Teaching a military Curriculum + limit = { + NOT = { + any_culture_county = { + count >= 5 + any_county_province = { + has_building_or_higher = examination_hall_01 + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = duchies_with_examination_halls_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_tgp_art_of_war } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { # Admin should be more into this + scope:character = { + government_allows = administrative + } + } + multiply = 2 + } + else_if = { + limit = { + scope:character ?= { + ai_has_warlike_personality = yes + } + } + multiply = 4 + } + } + +} + +tradition_tgp_court_machinations = { + category = regional + + layers = { + 0 = intrigue + 1 = asian + 4 = officials.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + has_cultural_pillar = heritage_chinese + scope:character = { + has_title = title:h_china + } + } + can_pick = { + custom_tooltip = { + text = only_one_marriage_tradition_allowed + trigger_if = { + limit = { + OR = { + NOT = { exists = scope:replacing } + NOR = { + scope:replacing = culture_tradition:tradition_monogamous + scope:replacing = culture_tradition:tradition_polygamous + scope:replacing = culture_tradition:tradition_concubines + scope:replacing = culture_tradition:tradition_court_eunuchs + } + } + } + NOR = { + culture_tradition:tradition_monogamous = { is_in_list = traits } + culture_tradition:tradition_polygamous = { is_in_list = traits } + culture_tradition:tradition_concubines = { is_in_list = traits } + culture_tradition:tradition_court_eunuchs = { is_in_list = traits } + } + } + } + + } + + can_pick_for_hybridization = { + custom_tooltip = { + text = only_one_marriage_tradition_allowed + NOT = { # Only blocks monogamous to avoid duplicate warnings, but is blocked by polygamous + culture_tradition:tradition_monogamous = { is_in_list = traits } + } + } + } + + parameters = { + number_of_consorts_hegemony = 20 + number_of_consorts = 3 + number_of_spouses = 1 + can_appoint_chief_eunuch = yes + court_machinations_eunuch_trait_bonuses = yes + courtiers_more_likely_to_join_hostile_schemes_in_court = yes + eunuch_powerful_scheme_agents = yes + can_castrate_prisoners = yes + cultrad_unlocks_t4_bounties_for_whispers = yes + } + + character_modifier = { + owned_political_scheme_success_chance_add = 10 + } + + cost = { + prestige = { + add = { + value = tradition_double_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bureaucratic_courtly_or_spiritual_desc + } + } + if = { + limit = { + has_dlc_feature = royal_court + OR = { + scope:character = { has_royal_court = no } + NOT = { + scope:character = { + court_grandeur_current_level >= very_high_court_grandeur_level + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_head_court_grandeur_desc + } + } + if = { + limit = { + NOT = { + scope:character.faith = { + OR = { + has_doctrine = doctrine_polygamy + has_doctrine = doctrine_concubines + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = cheaper_tradition_from_faith + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 200 + if = { + limit = { # Admin should be more into this + scope:character = { + government_allows = administrative + } + } + multiply = 2 + } + } +} + + +#Scholar Officials +tradition_scholar_officials = { + category = regional + + layers = { + 0 = intrigue + 1 = asian + 4 = confucius.dds + } + + is_shown = { #Available to Chinese cultures and to cultures influenced by China + has_tgp_dlc_trigger = yes + scope:character = { + OR = { + culture = { has_cultural_pillar = heritage_chinese } + has_trait = confucian_education + government_has_flag = government_has_merit + has_title = title:h_china #Always available to new emperors + } + } + } + + can_pick = { + custom_description = { + text = culture_not_bellicose + NOT = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + } + NOT = { has_cultural_tradition = tradition_warrior_culture } + } + + parameters = { + can_always_convert_to_confucianism = yes + can_author_books = yes + + + wants_to_learn_chinese = yes + learn_language_success_chance_for_others = yes + + scholar_official_trait_bonuses = yes #Values loyal and confucian education + loyal_trait_more_common = yes + doesnt_care_about_culture_faith_in_factions = yes + } + + character_modifier = { + monthly_learning_lifestyle_xp_gain_mult = 0.2 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bureaucratic_courtly_or_spiritual_desc + } + } + if = { + limit = { + scope:character = { + has_trait = scholar + } + } + multiply = { + value = 0.75 + #desc = + } + } + if = { + limit = { + scope:character = { + has_trait = confucian_education + } + } + multiply = { + value = 0.5 + #desc = + } + } + } + } +} + +tradition_sinophilic = { + category = regional + + layers = { + 0 = intrigue + 1 = asian + 4 = calligraphy.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + NOT = { has_cultural_pillar = heritage_chinese } #Can't be Sinophilic when you're Chinese +# culture:han.culture_head ?= { +# in_diplomatic_range = scope:character +# } + } + + parameters = { + more_successful_kowtows = yes + may_adopt_silk_road_innovations = yes + } + + character_modifier = { + artifact_decay_reduction_mult = -0.15 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_bureaucratic = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_bureaucratic_courtly_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + has_trait = scholar + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_scholar_desc + } + } + } + } +} + +tradition_tgp_japanese_houses = { + category = regional + + layers = { + 0 = diplo + 1 = asian + 4 = fan.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + NOT = { + has_game_rule = no_adoption + } + culture_head = { # Only eastern Buddhists and regional faiths + faith = { has_doctrine = special_doctrine_immaterial_harmony } + } + } + + can_pick = { + # Mutually exclusive with other Adopters + NOT = { + culture_tradition:tradition_noble_adoption = { is_in_list = traits } + culture_tradition:tradition_ep3_cultivated_sophistication = { is_in_list = traits } + } + } + + parameters = { + adultery_always_accepted = yes + allows_noble_family_adoption = yes + free_adoption = yes + wider_adoption = yes + better_ward_education = yes + number_of_spouses = 4 + } + + character_modifier = { + house_relation_change_mult = 0.25 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_tgp_japanese_houses } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + } +} + +tradition_cultivation = { + category = regional + + layers = { + 0 = learning + 1 = asian + 4 = calligraphy.dds + } + + is_shown = { #Available to Chinese cultures and to cultures influenced by China + has_tgp_dlc_trigger = yes + scope:character = { + OR = { + culture = { has_cultural_pillar = heritage_chinese } + has_trait = confucian_education + government_has_flag = government_has_merit + has_title = title:h_china #Always available to new emperors + } + } + } + + can_pick = { + custom_description = { + text = culture_not_bellicose + NOT = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + } + NOT = { has_cultural_tradition = tradition_warrior_culture } + } + + parameters = { + can_always_convert_to_taoism = yes + mystic_trait_from_education = yes + mystic_trait_more_common = yes + less_likely_to_gain_elder_health_traits = yes + } + character_modifier = { + life_expectancy = 5 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + NOR = { + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = not_courtly_communal_or_spiritual_desc + } + } + if = { + limit = { + trigger_if = { + limit = { + scope:character = { + is_ai = no + } + } + NOT = { + any_ruler = { + count >= 5 + culture = prev + primary_title.tier >= tier_county + has_trait = scholar + } + } + } + trigger_else = { + always = no + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = rulers_with_scholar_desc + } + } + + if = { + limit = { + scope:character = { + has_variable = tradition_philosopher_culture_travel_discount + } + } + + add = { + value = tradition_travel_discount + desc = tradition_travel_discount_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_philosopher_culture } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 100 + if = { + limit = { + NOR = { + culture_pillar:ethos_communal = { is_in_list = traits } + culture_pillar:ethos_courtly = { is_in_list = traits } + culture_pillar:ethos_spiritual = { is_in_list = traits } + } + } + multiply = 0 + } + } +} + + +tradition_intensive_farming = { + category = regional + + layers = { + 0 = steward + 1 = asian + 4 = svamp.dds + } + + is_shown = { + has_tgp_dlc_trigger = yes + OR = { + has_cultural_pillar = heritage_chinese + any_parent_culture_or_above = { + has_cultural_pillar = heritage_chinese + } + } + NOR = { + culture_tradition:tradition_agrarian = { is_in_list = traits } + culture_tradition:tradition_tgp_rice_cultivators = { is_in_list = traits } + } + } + + can_pick = { + custom_tooltip = { + text = culture_in_farmlands_or_floodplains_terrain_desc + any_culture_county = { + county_has_province_with_terrain = { + terrain = farmlands + terrain = floodplains + } + } + } + custom_tooltip = { + text = cultrad_not_nomadic_government_type + scope:character = { + NOT = { + government_has_flag = government_is_nomadic + } + } + } + } + + parameters = { + content_trait_more_common = yes + martial_education_worse_outcomes = yes + hard_working_traits_more_valued = yes + rice_cultivators_next_level_paddy_fields = yes + } + character_modifier = { + men_at_arms_recruitment_cost = 0.25 + levy_maintenance = 0.025 + } + county_modifier = { + farmlands_development_growth_factor = 0.3 + farmlands_tax_mult = 0.05 + farmlands_levy_size = 0.1 + terraced_hills_development_growth_factor = 0.3 + terraced_hills_tax_mult = 0.05 + terraced_hills_levy_size = 0.1 + } + + cost = { + prestige = { + add = { + value = tradition_base_cost + desc = BASE + format = "BASE_VALUE_FORMAT" + } + if = { + limit = { + culture_pillar:ethos_bellicose = { is_in_list = traits } + } + add = { + value = tradition_incompatible_ethos_penalty + desc = culture_not_bellicose + } + } + if = { + limit = { + NOT = { + any_culture_county = { + count >= 5 + county_has_province_with_terrain = { + terrain = farmlands + terrain = floodplains + } + } + } + } + add = { + value = tradition_unfulfilled_criteria_penalty + desc = culture_in_farmlands_or_floodplains_terrain_count_desc + } + } + + if = { + limit = { + culture_tradition_reduction_trigger = { TRADITION = tradition_agrarian } + } + multiply = { + value = 0.5 + desc = inspired_by_culture_desc + } + } + + multiply = tradition_replacement_cost_if_relevant + } + } + + ai_will_do = { + value = 400 + if = { + limit = { + NOT = { + scope:character = { + any_sub_realm_county = { + count >= 2 + culture = scope:character.culture + county_has_province_with_terrain = { + terrain = farmlands + terrain = floodplains + } + } + } + } + } + multiply = 0 + } + if = { + limit = { + scope:character = { + government_has_flag = government_is_tribal + } + } + multiply = 0 + } + } +} diff --git a/common/customizable_localization/00_language_custom_loc.txt b/common/customizable_localization/00_language_custom_loc.txt index 0e99c800..5ff3004d 100644 --- a/common/customizable_localization/00_language_custom_loc.txt +++ b/common/customizable_localization/00_language_custom_loc.txt @@ -182,21 +182,21 @@ GetFaithSacredLanguageCharacter = { localization_key = language_pali_name #Pali } - text = { - trigger = { - OR = { - faith = faith:lamaism - religion = religion:bon_religion - AND = { - faith = faith:vajrayana - culture = { - has_cultural_pillar = heritage_tibetan - } - } - } - } - localization_key = language_classical_tibetan_name #Classical Tibetan - } +# text = { +# trigger = { +# OR = { +# faith = faith:lamaism +# religion = religion:bon_religion +# AND = { +# faith = faith:vajrayana +# culture = { +# has_cultural_pillar = heritage_tibetan +# } +# } +# } +# } +# localization_key = language_classical_tibetan_name #Classical Tibetan +# } text = { trigger = { diff --git a/common/on_action/title_on_actions.txt b/common/on_action/title_on_actions.txt index c3c4d0cd..bd025b41 100644 --- a/common/on_action/title_on_actions.txt +++ b/common/on_action/title_on_actions.txt @@ -2990,7 +2990,7 @@ on_title_gain_inheritance = { save_scope_as = change add_claim_on_loss = no } - scope:root = { + root = { becomes_independent = { change = scope:change } } resolve_title_and_vassal_change = scope:change @@ -3175,7 +3175,7 @@ on_title_gain_usurpation = { save_scope_as = change add_claim_on_loss = no } - scope:root = { + root = { becomes_independent = { change = scope:change } } resolve_title_and_vassal_change = scope:change @@ -3269,7 +3269,7 @@ on_title_lost = { save_scope_as = change add_claim_on_loss = no } - scope:root = { + root = { becomes_independent = { change = scope:change } } resolve_title_and_vassal_change = scope:change diff --git a/common/religion/doctrine_types/30_core_tenets.txt b/common/religion/doctrine_types/30_core_tenets.txt index 4d14dd62..e5e372b5 100644 --- a/common/religion/doctrine_types/30_core_tenets.txt +++ b/common/religion/doctrine_types/30_core_tenets.txt @@ -3283,11 +3283,11 @@ is_shown = { OR = { - religion_tag = west_african_bori_religion - religion_tag = akom_religion - religion_tag = muism_religion - religion_tag = dab_qhuas_religion - religion_tag = shamanism_religion +# religion_tag = west_african_bori_religion +# religion_tag = akom_religion +# religion_tag = muism_religion +# religion_tag = dab_qhuas_religion +# religion_tag = shamanism_religion has_doctrine = tenet_sun_worship #If you already have it } } diff --git a/common/script_values/02_religion_values.txt b/common/script_values/02_religion_values.txt index 880ab878..46f69c65 100644 --- a/common/script_values/02_religion_values.txt +++ b/common/script_values/02_religion_values.txt @@ -1287,76 +1287,76 @@ great_holy_war_target_kingdom_weight = { } add = ghw_target_fringe } - # Bon/Qiangicism/Donyipoloism/Mundhumism heartlands - else_if = { - limit = { - scope:the_faith.religion = { - OR = { - this = religion:bon_religion - this = religion:tani_religion - this = religion:mundhum_religion - this = religion:qiangic_religion - } - } - title_capital_county.title_province = { geographical_region = ghw_region_tibet } - } - add = ghw_target_heartlands - } +# # Bon/Qiangicism/Donyipoloism/Mundhumism heartlands +# else_if = { +# limit = { +# scope:the_faith.religion = { +# OR = { +# this = religion:bon_religion +# this = religion:tani_religion +# this = religion:mundhum_religion +# this = religion:qiangic_religion +# } +# } +# title_capital_county.title_province = { geographical_region = ghw_region_tibet } +# } +# add = ghw_target_heartlands +# } # Bon/Qiangicism/Donyipoloism/Mundhumism frontier - else_if = { - limit = { - scope:the_faith.religion = { - OR = { - this = religion:bon_religion - this = religion:tani_religion - this = religion:mundhum_religion - this = religion:qiangic_religion - } - } - title_capital_county.title_province = { - OR = { - geographical_region = ghw_region_northern_india - geographical_region = ghw_region_khotan - } - } - } - add = ghw_target_frontier - } +# else_if = { +# limit = { +# scope:the_faith.religion = { +# OR = { +# this = religion:bon_religion +# this = religion:tani_religion +# this = religion:mundhum_religion +# this = religion:qiangic_religion +# } +# } +# title_capital_county.title_province = { +# OR = { +# geographical_region = ghw_region_northern_india +# geographical_region = ghw_region_khotan +# } +# } +# } +# add = ghw_target_frontier +# } # Bon/Qiangicism/Donyipoloism/Mundhumism fringe - else_if = { - limit = { - scope:the_faith.religion = { - OR = { - this = religion:bon_religion - this = religion:tani_religion - this = religion:mundhum_religion - this = religion:qiangic_religion - } - } - title_capital_county.title_province = { - OR = { - geographical_region = ghw_region_mongolia - geographical_region = ghw_region_transoxiana - } - } - } - add = ghw_target_fringe - } +# else_if = { +# limit = { +# scope:the_faith.religion = { +# OR = { +# this = religion:bon_religion +# this = religion:tani_religion +# this = religion:mundhum_religion +# this = religion:qiangic_religion +# } +# } +# title_capital_county.title_province = { +# OR = { +# geographical_region = ghw_region_mongolia +# geographical_region = ghw_region_transoxiana +# } +# } +# } +# add = ghw_target_fringe +# } # Bon/Qiangicism/Donyipoloism/Mundhumism stretch goal - else_if = { - limit = { - scope:the_faith.religion = { - OR = { - this = religion:bon_religion - this = religion:tani_religion - this = religion:mundhum_religion - this = religion:qiangic_religion - } - } - title_capital_county.title_province = { geographical_region = ghw_region_southern_india } - } - add = ghw_target_stretch - } +# else_if = { +# limit = { +# scope:the_faith.religion = { +# OR = { +# this = religion:bon_religion +# this = religion:tani_religion +# this = religion:mundhum_religion +# this = religion:qiangic_religion +# } +# } +# title_capital_county.title_province = { geographical_region = ghw_region_southern_india } +# } +# add = ghw_target_stretch +# } # Mande Paganism & Senegambian Paganism heartlands else_if = { limit = { @@ -2032,29 +2032,29 @@ great_holy_war_target_kingdom_weight = { } } # Bon/Qiangicism/Donyipoloism/Mundhumism - else_if = { - limit = { - scope:the_faith.religion = { - OR = { - this = religion:bon_religion - this = religion:tani_religion - this = religion:mundhum_religion - this = religion:qiangic_religion - } - } - } - if = { - limit = { - title_capital_county = { - squared_distance = { - target = title:c_khotan - value >= ghw_target_distance_01_threshold - } - } - } - multiply = ghw_target_distance_01_reduction - } - } +# else_if = { +# limit = { +# scope:the_faith.religion = { +# OR = { +# this = religion:bon_religion +# this = religion:tani_religion +# this = religion:mundhum_religion +# this = religion:qiangic_religion +# } +# } +# } +# if = { +# limit = { +# title_capital_county = { +# squared_distance = { +# target = title:c_khotan +# value >= ghw_target_distance_01_threshold +# } +# } +# } +# multiply = ghw_target_distance_01_reduction +# } +# } # Mande Paganism else_if = { limit = { scope:the_faith.religion = religion:west_african_religion } @@ -2442,29 +2442,29 @@ great_holy_war_target_kingdom_weight = { } } # Bon/Qiangicism/Donyipoloism/Mundhumism - else_if = { - limit = { - scope:the_faith.religion = { - OR = { - this = religion:bon_religion - this = religion:tani_religion - this = religion:mundhum_religion - this = religion:qiangic_religion - } - } - } - if = { - limit = { - title_capital_county = { - squared_distance = { - target = title:c_khotan - value >= ghw_target_distance_02_threshold - } - } - } - multiply = ghw_target_distance_02_reduction - } - } +# else_if = { +# limit = { +# scope:the_faith.religion = { +# OR = { +# this = religion:bon_religion +# this = religion:tani_religion +# this = religion:mundhum_religion +# this = religion:qiangic_religion +# } +# } +# } +# if = { +# limit = { +# title_capital_county = { +# squared_distance = { +# target = title:c_khotan +# value >= ghw_target_distance_02_threshold +# } +# } +# } +# multiply = ghw_target_distance_02_reduction +# } +# } # Mande Paganism else_if = { limit = { scope:the_faith.religion = religion:west_african_religion } @@ -2852,29 +2852,29 @@ great_holy_war_target_kingdom_weight = { } } # Bon/Qiangicism/Donyipoloism/Mundhumism - else_if = { - limit = { - scope:the_faith.religion = { - OR = { - this = religion:bon_religion - this = religion:tani_religion - this = religion:mundhum_religion - this = religion:qiangic_religion - } - } - } - if = { - limit = { - title_capital_county = { - squared_distance = { - target = title:c_khotan - value >= ghw_target_distance_03_threshold - } - } - } - multiply = ghw_target_distance_03_reduction - } - } +# else_if = { +# limit = { +# scope:the_faith.religion = { +# OR = { +# this = religion:bon_religion +# this = religion:tani_religion +# this = religion:mundhum_religion +# this = religion:qiangic_religion +# } +# } +# } +# if = { +# limit = { +# title_capital_county = { +# squared_distance = { +# target = title:c_khotan +# value >= ghw_target_distance_03_threshold +# } +# } +# } +# multiply = ghw_target_distance_03_reduction +# } +# } # Mande Paganism else_if = { limit = { scope:the_faith.religion = religion:west_african_religion } diff --git a/common/scripted_effects/06_dlc_ce1_legend_effects.txt b/common/scripted_effects/06_dlc_ce1_legend_effects.txt index b825a6dd..18e5727c 100644 --- a/common/scripted_effects/06_dlc_ce1_legend_effects.txt +++ b/common/scripted_effects/06_dlc_ce1_legend_effects.txt @@ -1805,24 +1805,24 @@ generate_religion_descent_effect = { GOD = $GOD$ } } - else_if = { - limit = { - $RELIGION$ = religion:basque_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = basque - GOD = $GOD$ - } - } - else_if = { - limit = { - $RELIGION$ = religion:bon_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = bon - GOD = $GOD$ - } - } +# else_if = { +# limit = { +# $RELIGION$ = religion:basque_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = basque +# GOD = $GOD$ +# } +# } +# else_if = { +# limit = { +# $RELIGION$ = religion:bon_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = bon +# GOD = $GOD$ +# } +# } else_if = { limit = { $RELIGION$ = religion:buddhism_religion @@ -1832,15 +1832,15 @@ generate_religion_descent_effect = { GOD = $GOD$ } } - else_if = { - limit = { - $RELIGION$ = religion:tani_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = tani - GOD = $GOD$ - } - } +# else_if = { +# limit = { +# $RELIGION$ = religion:tani_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = tani +# GOD = $GOD$ +# } +# } # else_if = { # limit = { # $RELIGION$ = religion:dualism_religion @@ -1852,10 +1852,10 @@ generate_religion_descent_effect = { # } else_if = { limit = { - $RELIGION$ = religion:finno_ugric_religion + $RELIGION$ = religion:finnic_religion } generate_godly_descent_seed_support_effect = { - FAITH = finno_ugric + FAITH = finnic GOD = $GOD$ } } @@ -1873,7 +1873,7 @@ generate_religion_descent_effect = { $RELIGION$ = religion:theomach_religion } generate_godly_descent_seed_support_effect = { - FAITH = hellenism + FAITH = theomach GOD = $GOD$ } } @@ -1967,69 +1967,69 @@ generate_religion_descent_effect = { GOD = $GOD$ } } - else_if = { - limit = { - $RELIGION$ = religion:tengrism_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = tengrism - GOD = $GOD$ - } - } - else_if = { - limit = { - $RELIGION$ = religion:waaqism_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = waaqism - GOD = $GOD$ - } - } - else_if = { - limit = { - $RELIGION$ = religion:west_african_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = west_african - GOD = $GOD$ - } - } - else_if = { - limit = { - $RELIGION$ = religion:west_african_bori_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = west_african_bori - GOD = $GOD$ - } - } - else_if = { - limit = { - $RELIGION$ = religion:west_african_orisha_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = west_african_orisha - GOD = $GOD$ - } - } - else_if = { - limit = { - $RELIGION$ = religion:west_african_roog_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = west_african_roog - GOD = $GOD$ - } - } - else_if = { - limit = { - $RELIGION$ = religion:yazidi_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = yazidi - GOD = $GOD$ - } - } +# else_if = { +# limit = { +# $RELIGION$ = religion:tengrism_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = tengrism +# GOD = $GOD$ +# } +# } +# else_if = { +# limit = { +# $RELIGION$ = religion:waaqism_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = waaqism +# GOD = $GOD$ +# } +# } +# else_if = { +# limit = { +# $RELIGION$ = religion:west_african_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = west_african +# GOD = $GOD$ +# } +# } +# else_if = { +# limit = { +# $RELIGION$ = religion:west_african_bori_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = west_african_bori +# GOD = $GOD$ +# } +# } +# else_if = { +# limit = { +# $RELIGION$ = religion:west_african_orisha_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = west_african_orisha +# GOD = $GOD$ +# } +# } +# else_if = { +# limit = { +# $RELIGION$ = religion:west_african_roog_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = west_african_roog +# GOD = $GOD$ +# } +# } +# else_if = { +# limit = { +# $RELIGION$ = religion:yazidi_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = yazidi +# GOD = $GOD$ +# } +# } else_if = { limit = { $RELIGION$ = religion:zoroastrianism_religion @@ -2039,21 +2039,21 @@ generate_religion_descent_effect = { GOD = $GOD$ } } - else_if = { - limit = { - $RELIGION$ = religion:zunism_religion - } - generate_godly_descent_seed_support_effect = { - FAITH = zunism - GOD = $GOD$ - } - } - else = { # Generic Pagan, fallback - generate_godly_descent_seed_support_effect = { - FAITH = paganism - GOD = $GOD$ - } - } +# else_if = { +# limit = { +# $RELIGION$ = religion:zunism_religion +# } +# generate_godly_descent_seed_support_effect = { +# FAITH = zunism +# GOD = $GOD$ +# } +# } +# else = { # Generic Pagan, fallback +# generate_godly_descent_seed_support_effect = { +# FAITH = paganism +# GOD = $GOD$ +# } +# } } # Mythical Legends guaranteed access to Legendary Buildings