### search_filters = {FOCUS_FILTER_POLITICAL} ### search_filters = {FOCUS_FILTER_RESEARCH} ### search_filters = {FOCUS_FILTER_INDUSTRY} ### search_filters = {FOCUS_FILTER_STABILITY} ### search_filters = {FOCUS_FILTER_WAR_SUPPORT} ### search_filters = {FOCUS_FILTER_MANPOWER} ### search_filters = {FOCUS_FILTER_ANNEXATION} ### search_filters = {FOCUS_FILTER_INTERNAL_AFFAIRS} ### search_filters = {FOCUS_FILTER_ANNEXATION} ### search_filters = {FOCUS_FILTER_INTERNAL_AFFAIRS} ### search_filters = {FOCUS_FILTER_ARMY_XP} ### search_filters = {FOCUS_FILTER_NAVY_XP} ### search_filters = {FOCUS_FILTER_AIR_XP} ### search_filters = {FOCUS_FILTER_BALANCE_OF_POWERS} ### search_filters = {FOCUS_FILTER_POLITICAL_CHARACTER} ### search_filters = {FOCUS_FILTER_MILITARY_CHARACTER} ### search_filters = {FOCUS_FILTER_INTERNATIONAL_TRADE} focus_tree = { id = finnish_focus country = { factor = 0 modifier = { add = 10 tag = FIN } } default = no initial_show_position = { x = 23 y = 0 } continuous_focus_position = { x = 45 y = 1500 } shared_focus = NORDIC_form_joint_alliance ###### ####### ###### #### ### ## #### ###### ######## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ###### ## ## ## ## ## ## ## ## ###### ## ## ## ## ## ## ######### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ###### ####### ###### #### ## ## ######## #### ###### ## focus = { id = FIN_suomalainen_sosialismi icon = GFX_focus_FIN_suomalainen_sosialismi #Note: This is just reference stuff #icon = { # value = GFX_focus_smiling_buddha # trigger = { # has_government = fascism # } #} #icon = GFX_focus_ITA_grande_rivolta_rurale allow_branch = { has_dlc = "Arms Against Tyranny" if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = FIN_finnish_neutrality } NOT = { has_completed_focus = FIN_right_wing_policies } } } mutually_exclusive = { focus = FIN_finnish_neutrality focus = FIN_right_wing_policies } x = 7 y = 0 cost = 5 available = { is_subject = no } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_POLITICAL_CHARACTER } completion_reward = { add_political_power = 75 custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_yrjo_leino show_ideas_tooltip = FIN_karl_august_fagerholm custom_effect_tooltip = remove_political_advisor show_ideas_tooltip = FIN_antti_hackzell FIN_bop_medium_decrease_effect = yes hidden_effect = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } mark_focus_tree_layout_dirty = yes } } } } focus = { id = FIN_towards_a_red_government icon = GFX_focus_generic_join_comintern prerequisite = { focus = FIN_suomalainen_sosialismi } mutually_exclusive = { focus = FIN_social_democracy } x = -3 y = 1 relative_position_id = FIN_suomalainen_sosialismi cost = 5 bypass = { has_government = communism } available = { is_subject = no } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY FOCUS_FILTER_WAR_SUPPORT } completion_reward = { add_political_power = 120 add_popularity = { ideology = communism popularity = 0.05 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_otto_wille_kuusinen show_ideas_tooltip = FIN_aarne_saarinen FIN_bop_low_decrease_effect = yes } } focus = { id = FIN_the_second_finnish_civil_war icon = GFX_focus_FIN_the_second_finnish_civil_war prerequisite = { focus = FIN_towards_a_red_government } x = -6 y = 2 relative_position_id = FIN_suomalainen_sosialismi cost = 5 bypass = { has_government = communism } available = { communism > 0.4 is_subject = no } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_MANPOWER FOCUS_FILTER_MILITARY_CHARACTER FOCUS_FILTER_ARMY_XP } completion_reward = { hidden_effect = { # SWAP ADVISOR TRAITS TO HIDE TOOLTIP ABOUT DECISIONS FIN_yrjo_leino = { if = { limit = { has_trait = FIN_communist_revolutionary_leino } add_trait = { trait = communist_revolutionary slot = political_advisor } remove_trait = { trait = FIN_communist_revolutionary_leino slot = political_advisor } } } FIN_aarne_saarinen = { if = { limit = { has_trait = FIN_technocrat_saarinen } add_trait = { trait = technocrat slot = political_advisor } remove_trait = { trait = FIN_technocrat_saarinen slot = political_advisor } } } FIN_otto_wille_kuusinen = { if = { limit = { has_trait = FIN_patriotic_socialist_kuusinen } add_trait = { trait = patriotic_socialist slot = political_advisor } remove_trait = { trait = FIN_patriotic_socialist_kuusinen slot = political_advisor } } } # SWAP ADVISOR TRAITS TO HIDE TOOLTIP ABOUT DECISIONS FIN_karl_august_fagerholm = { if = { limit = { has_trait = FIN_democratic_reformer_fagerholm } add_trait = { trait = democratic_reformer slot = political_advisor } remove_trait = { trait = FIN_democratic_reformer_fagerholm slot = political_advisor } } } FIN_vaino_tanner = { if = { limit = { has_trait = FIN_humble_appeaser_tanner } add_trait = { trait = appeaser slot = political_advisor } remove_trait = { trait = FIN_humble_appeaser_tanner slot = political_advisor } } } FIN_miina_sillanpaa = { if = { limit = { has_trait = FIN_champion_of_equality_sillanpaa } add_trait = { trait = champion_of_equality slot = political_advisor } remove_trait = { trait = FIN_champion_of_equality_sillanpaa slot = political_advisor } } } } # Save Sisu NS version to apply to the breakaway country if = { limit = { has_idea = FIN_sisu_1 } set_variable = { FIN_sisu_version = 1 } } else_if = { limit = { has_idea = FIN_sisu_2 } set_variable = { FIN_sisu_version = 2 } } else_if = { limit = { has_idea = FIN_sisu_3 } set_variable = { FIN_sisu_version = 3 } } else_if = { limit = { has_idea = FIN_sisu_4 } set_variable = { FIN_sisu_version = 4 } } else = { set_variable = { FIN_sisu_version = 5 } } #Set basic size based on commie support if = { # 40-49% Support limit = { communism < 0.5 } set_variable = { FIN_communist_cw_size_of_breakaway_country = 0.7 } } else_if = { # 50-59% Support limit = { communism < 0.6 } set_variable = { FIN_communist_cw_size_of_breakaway_country = 0.6 } } else_if = { # 60-69% Support limit = { communism < 0.7 } set_variable = { FIN_communist_cw_size_of_breakaway_country = 0.5 } } else = { # 70%+ Support set_variable = { FIN_communist_cw_size_of_breakaway_country = 0.4 } } #Add size based on decisions completed if = { #Popular Support limit = { has_country_flag = FIN_cw_popular_support_flag } subtract_from_variable = { FIN_communist_cw_size_of_breakaway_country = 0.1 } } if = { #Construction Workers limit = { has_country_flag = FIN_cw_construction_workers_flag } subtract_from_variable = { FIN_communist_cw_size_of_breakaway_country = 0.05 } } if = { #Trade Unions limit = { has_country_flag = FIN_cw_trade_unions_flag } subtract_from_variable = { FIN_communist_cw_size_of_breakaway_country = 0.05 } } start_civil_war = { ideology = neutrality ruling_party = communism size = FIN_communist_cw_size_of_breakaway_country keep_all_characters = yes #Keep all characters on target country side - will ignore all following keep_ parameters - default value = no #capital = # Optional. Capital of Revolt country #states = {} # States that go to the revolter. Use "all" to include all states. #states_filter = { } # Optional. States that go to the revolter. Filtering trigger on the states scripted to go to the revolter. #keep_unit_leaders = { } # Optional. specify ID of unit leaders that remain with the original country #keep_unit_leaders_trigger = { } # Optional. Trigger for unit leaders to remain with the original country #keep_political_leader = no # optional, default is no; If yes, the party leader of the revolting ideology will not join the revolter as its leader. #keep_political_party_members = no # Optional, default is no; If yes, it will keep the non main leaders of the party leaders in original country # List of effects that will run on revolt country hidden_effect = { if = { limit = { check_variable = { ROOT.FIN_sisu_version = 1 } } add_ideas = FIN_sisu_1 } else_if = { limit = { check_variable = { ROOT.FIN_sisu_version = 2 } } add_ideas = FIN_sisu_2 } else_if = { limit = { check_variable = { ROOT.FIN_sisu_version = 3 } } add_ideas = FIN_sisu_3 } else_if = { limit = { check_variable = { ROOT.FIN_sisu_version = 4 } } add_ideas = FIN_sisu_4 } else = { add_ideas = FIN_sisu_5 } ROOT = { every_character = { limit = { has_character_flag = FIN_anti_communist_character_flag } set_nationality = PREV.PREV } } retire_ideology_leader = fascism retire_ideology_leader = neutrality # SET UP COUNTRY LEADERS if = { limit = { has_character = FIN_carl_mannerheim } promote_character = FIN_carl_mannerheim } if = { limit = { has_character = FIN_vilho_annala } promote_character = FIN_vilho_annala } } # EFFECTS to Breakaway country from decisions if = { #Construction Workers limit = { ROOT = { has_country_flag = FIN_cw_construction_workers_flag } } custom_effect_tooltip = FIN_communist_cw_construction_workers_tt hidden_effect = { every_controlled_state = { random_select_amount = 2 limit = { industrial_complex > 0 } damage_building = { type = industrial_complex damage = 2 } damage_building = { type = infrastructure damage = 1 } } } } if = { #Trade Unions limit = { ROOT = { has_country_flag = FIN_cw_trade_unions_flag } } custom_effect_tooltip = FIN_communist_cw_trade_unions_tt hidden_effect = { random_controlled_state = { limit = { arms_factory > 0 } damage_building = { type = arms_factory damage = 2 } } random_controlled_state = { limit = { dockyard > 0 } damage_building = { type = dockyard damage = 2 } } } } if = { limit = { ROOT = { has_country_flag = FIN_cw_crack_down_on_the_military_flag } } add_timed_idea = { idea = FIN_low_army_morale days = 365 } } if = { limit = { ROOT = { has_country_flag = FIN_cw_crack_down_on_fascists_flag } } add_timed_idea = { idea = FIN_imprisoned_right_wing_leaders days = 365 } } if = { limit = { ROOT = { has_country_flag = FIN_cw_crack_down_on_the_military_flag } } hidden_effect = { every_controlled_state = { limit = { PREV = { divisions_in_state = { state = PREV size > 0 type = infantry } } } random_select_amount = 2 #log = "deleting units in [THIS.GetName]" PREV = { delete_unit = { division_template = "Jalkaväkidivisioona" # optional - can be filtered a specific template state = PREV # optional - can be filtered by a given state disband = no # optional - default is no. if set to yes the game will refund equipment/manpower } } } } } #Set ideology hidden_effect = { add_popularity = { ideology = democratic popularity = 0.1 } add_popularity = { ideology = communism popularity = 0.2 } } #log = "Inside I am [THIS.GetName] My capital is [capital_scope.GetName]" division_template = { #Mustapaidat name = "Mustapaidat" division_names_group = FIN_MIL_01 #template_counter = 68 is_locked = yes force_allow_recruiting = yes division_cap = 12 regiments = { militia = { x = 0 y = 0 } militia = { x = 0 y = 1 } militia = { x = 1 y = 0 } militia = { x = 1 y = 1 } militia = { x = 2 y = 0 } militia = { x = 2 y = 1 } } support = { engineer = { x = 0 y = 0 } } } if = { limit = { ROOT = { has_country_flag = FIN_cw_crack_down_on_fascists_flag } } #SPAWN LESS MILITIAS capital_scope = { log = "I am in capital scope of Revolter = [THIS.GetName] ID [THIS]" create_unit = { division = "division_template = \"Mustapaidat\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = PREV count = 1 } } every_controlled_state = { limit = { is_capital = no NOT = { state = 722 #PETSAMO state = 147 #SALLA state = 145 #ÅLAND } } create_unit = { division = "division_template = \"Mustapaidat\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = PREV count = 1 } } } else = { #SPAWN NORMAL AMOUNT OF MILITIAS capital_scope = { create_unit = { division = "division_template = \"Mustapaidat\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = PREV count = 3 } } every_controlled_state = { limit = { is_capital = no } create_unit = { division = "division_template = \"Mustapaidat\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = PREV count = 1 } } } } # NECESSARY because capital scope and controlled states are borked insde the start_civil_war effect random_other_country = { limit = { original_tag = FIN NOT = { has_government = communism } } #log = "I am [THIS.GetName] My capital is [capital_scope.GetName]" } custom_effect_tooltip = FIN_the_communist_side_in_cw_tt # ADD STUFF TO PLAYER'S COUNTRY if = { #Popular Support - NS limit = { ROOT = { has_country_flag = FIN_cw_popular_support_flag } } add_timed_idea = { idea = FIN_popular_support_for_the_revolution days = 365 } } if = { #Construction Workers - NS limit = { ROOT = { has_country_flag = FIN_cw_construction_workers_flag } } add_timed_idea = { idea = FIN_commitment_from_construction_workers days = 365 } } if = { #Trade Unions - NS limit = { ROOT = { has_country_flag = FIN_cw_trade_unions_flag } } add_timed_idea = { idea = FIN_commitment_from_the_trade_unions days = 365 } } custom_effect_tooltip = FIN_red_guard_divisions_tt division_template = { #Red Guard name = "Punakaarti" division_names_group = FIN_MIL_02 #template_counter = 14 override_model = FIN_militia_alt_0_entity is_locked = yes force_allow_recruiting = yes division_cap = 12 regiments = { militia = { x = 0 y = 0 } militia = { x = 0 y = 1 } militia = { x = 1 y = 0 } militia = { x = 1 y = 1 } militia = { x = 2 y = 0 } militia = { x = 2 y = 1 } } support = { engineer = { x = 0 y = 0 } } } hidden_effect = { capital_scope = { create_unit = { division = "division_template = \"Punakaarti\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 2 } set_state_flag = FIN_red_guards_spawned_in_state_flag } if = { limit = { any_controlled_state = { NOT = { has_state_flag = FIN_red_guards_spawned_in_state_flag } } } random_controlled_state = { limit = { NOT = { has_state_flag = FIN_red_guards_spawned_in_state_flag } } create_unit = { division = "division_template = \"Punakaarti\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 2 } set_state_flag = FIN_red_guards_spawned_in_state_flag } } } if = { #Popular Support - NS limit = { ROOT = { has_country_flag = FIN_cw_popular_support_flag } } hidden_effect = { if = { limit = { any_controlled_state = { NOT = { has_state_flag = FIN_red_guards_spawned_in_state_flag } } } random_controlled_state = { limit = { NOT = { has_state_flag = FIN_red_guards_spawned_in_state_flag } } create_unit = { division = "division_template = \"Punakaarti\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 2 } set_state_flag = FIN_red_guards_spawned_in_state_flag } } else = { capital_scope = { create_unit = { division = "division_template = \"Punakaarti\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } } } if = { #Construction Workers - NS limit = { ROOT = { has_country_flag = FIN_cw_construction_workers_flag } } hidden_effect = { if = { limit = { any_controlled_state = { NOT = { has_state_flag = FIN_red_guards_spawned_in_state_flag } } } random_controlled_state = { limit = { NOT = { has_state_flag = FIN_red_guards_spawned_in_state_flag } } create_unit = { division = "division_template = \"Punakaarti\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 2 } set_state_flag = FIN_red_guards_spawned_in_state_flag } } else = { capital_scope = { create_unit = { division = "division_template = \"Punakaarti\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } } } if = { #Trade Unions - NS limit = { ROOT = { has_country_flag = FIN_cw_trade_unions_flag } } hidden_effect = { if = { limit = { any_controlled_state = { NOT = { has_state_flag = FIN_red_guards_spawned_in_state_flag } } } random_controlled_state = { limit = { NOT = { has_state_flag = FIN_red_guards_spawned_in_state_flag } } create_unit = { division = "division_template = \"Punakaarti\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 2 } set_state_flag = FIN_red_guards_spawned_in_state_flag } } else = { capital_scope = { create_unit = { division = "division_template = \"Punakaarti\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } } } if = { #Soviet Equipment - Add equipment limit = { ROOT = { has_country_flag = FIN_cw_purchase_soviet_equipment_flag } } custom_effect_tooltip = FIN_cw_soviet_equipment_delivery_tt hidden_effect = { FIN_purchase_soviet_equipment_for_cw = yes } } if = { #Soviet Commandos - Create div templates and spawn units limit = { ROOT = { has_country_flag = FIN_cw_infiltrate_soviet_commandos_flag } } custom_effect_tooltip = FIN_cw_soviet_commandos_tt division_template = { name = "Neuvostoliiton Legioona" division_names_group = FIN_INF_04 template_counter = 69 #override_model = FIN_infantry_alt_2_entity #Lets use Soviet uniform to better differentiate them from Finnish troops override_model = SOV_infantry_entity_snow is_locked = yes regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 1 y = 0 } infantry = { x = 1 y = 1 } infantry = { x = 2 y = 0 } infantry = { x = 2 y = 1 } artillery_brigade = { x = 3 y = 0 } artillery_brigade = { x = 3 y = 1 } } support = { engineer = { x = 0 y = 0 } artillery = { x = 0 y = 1 } recon = { x = 0 y = 2 } anti_air = { x = 0 y = 3 } } } hidden_effect = { capital_scope = { create_unit = { division = "division_template = \"Neuvostoliiton Legioona\" start_experience_factor = 0.8 start_equipment_factor = 1.0" owner = ROOT count = 3 } } } } show_unit_leaders_tooltip = FIN_akseli_anttila custom_effect_tooltip = available_theorist show_ideas_tooltip = FIN_akseli_anttila hidden_effect = { #Hidden due to silly BoP tooltips, can't be bothered FIN_initiate_balance_of_power_effect = yes } #Add relation modifier IF already completed focus Approach the Soviets hidden_effect = { if = { limit = { has_completed_focus = FIN_approach_the_soviets NOT = { SOV = { has_relation_modifier = { target = ROOT modifier = FIN_organized_support_for_finland } } } } SOV = { add_relation_modifier = { target = ROOT modifier = FIN_organized_support_for_finland } } # AI more friendly add_ai_strategy = { type = befriend id = SOV value = 40 } SOV = { add_ai_strategy = { type = befriend id = ROOT value = 40 } add_ai_strategy = { type = send_volunteers_desire id = ROOT value = 200 } } #AI less hostile SOV = { add_ai_strategy = { type = antagonize id = ROOT value = -100 } add_ai_strategy = { type = conquer id = ROOT value = -100 } } } } } } focus = { id = FIN_the_peoples_democratic_league icon = GFX_focus_FIN_the_peoples_democratic_league prerequisite = { focus = FIN_the_second_finnish_civil_war } x = -1 y = 1 relative_position_id = FIN_the_second_finnish_civil_war cost = 5 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_STABILITY FOCUS_FILTER_BALANCE_OF_POWER } completion_reward = { add_political_power = 100 add_popularity = { ideology = communism popularity = 0.1 } set_party_name = { ideology = communism long_name = FIN_communism_party_skdl_long name = FIN_communism_party_skdl } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_karl_harald_wiik show_ideas_tooltip = FIN_kaisu_mirjami_rydberg FIN_bop_very_low_increase_effect = yes } } focus = { id = FIN_cooperate_with_social_democrats icon = GFX_focus_generic_soviet_politics prerequisite = { focus = FIN_the_second_finnish_civil_war } x = 1 y = 1 relative_position_id = FIN_the_second_finnish_civil_war cost = 5 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_STABILITY FOCUS_FILTER_MILITARY_CHARACTER FOCUS_FILTER_BALANCE_OF_POWER } completion_reward = { add_political_power = 70 add_stability = 0.05 add_popularity = { ideology = democratic popularity = 0.1 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_vaino_tanner show_ideas_tooltip = FIN_miina_sillanpaa show_unit_leaders_tooltip = FIN_aarne_sihvo FIN_bop_very_low_increase_effect = yes } } focus = { id = FIN_the_workers_state icon = GFX_focus_YUG_pan_slavic_congress prerequisite = { focus = FIN_the_second_finnish_civil_war } x = 0 y = 2 relative_position_id = FIN_the_second_finnish_civil_war cost = 10 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_INDUSTRY FOCUS_FILTER_STABILITY } completion_reward = { add_ideas = FIN_the_workers_state custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_sandra_lehtinen FIN_bop_very_low_increase_effect = yes } } focus = { id = FIN_the_red_watch icon = GFX_focus_spr_torchbearers_of_tomorrow prerequisite = { focus = FIN_the_workers_state } x = 0 y = 1 relative_position_id = FIN_the_workers_state cost = 10 available = { } search_filters = { FOCUS_FILTER_POLITICAL } completion_reward = { FIN_bop_low_decrease_effect = yes if = { limit = { has_dlc = "La Resistance" } if = { limit = { has_intelligence_agency = no } create_intelligence_agency = yes } add_ideas = FIN_the_red_watch FIN_create_operative_hella_wuolijok = yes FIN_create_operative_vilho_pentikainen = yes } else = { add_ideas = FIN_the_red_watch_no_lar } unlock_decision_tooltip = FIN_appoint_yrjo_leino_as_president } } focus = { id = FIN_approach_the_soviets icon = GFX_focus_FIN_approach_the_soviets prerequisite = { focus = FIN_towards_a_red_government focus = FIN_social_democracy } mutually_exclusive = { focus = FIN_antagonize_the_soviets } x = 4 y = 0 relative_position_id = FIN_the_second_finnish_civil_war cost = 5 bypass = { is_in_faction_with = SOV } available = { is_subject = no OR = { has_government = democratic has_government = communism } any_other_country = { original_tag = SOV has_government = communism NOT = { has_war_with = ROOT } } NOT = { has_country_flag = FIN_soviet_refused_finno_soviet_pact_flag } } search_filters = { FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_INDUSTRY FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_aimo_aaltonen unlock_decision_tooltip = { decision = FIN_request_extradition_of_kullervo_manner show_effect_tooltip = yes } #Add relation modifier IF ALREADY COMMIE (otherwise it will be added in the civil war effect) if = { limit = { has_government = communism } SOV = { add_relation_modifier = { target = ROOT modifier = FIN_organized_support_for_finland } } hidden_effect = { # AI more friendly add_ai_strategy = { type = befriend id = SOV value = 40 } SOV = { add_ai_strategy = { type = befriend id = ROOT value = 40 } add_ai_strategy = { type = send_volunteers_desire id = ROOT value = 200 } } #AI less hostile SOV = { add_ai_strategy = { type = antagonize id = ROOT value = -100 } add_ai_strategy = { type = conquer id = ROOT value = -100 } } } } else = { effect_tooltip = { SOV = { add_relation_modifier = { target = ROOT modifier = FIN_organized_support_for_finland } } } } if = { limit = { NOT = { has_completed_focus = FIN_the_second_finnish_civil_war } } custom_effect_tooltip = when_civil_war_starts_tt } show_unit_leaders_tooltip = FIN_emil_vaateri show_unit_leaders_tooltip = FIN_eyolf_mattsson show_unit_leaders_tooltip = FIN_toivo_antikainen custom_effect_tooltip = available_chief_of_army show_ideas_tooltip = FIN_toivo_antikainen } } focus = { id = FIN_antagonize_the_soviets icon = GFX_focus_FIN_antagonize_the_soviets prerequisite = { focus = FIN_towards_a_red_government focus = FIN_social_democracy } mutually_exclusive = { focus = FIN_approach_the_soviets } x = 4 y = 0 relative_position_id = FIN_approach_the_soviets cost = 5 bypass = { NOT = { country_exists = SOV } } available = { has_civil_war = no is_subject = no NOT = { is_in_faction_with = SOV } } search_filters = { FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_POLITICAL FOCUS_FILTER_WAR_SUPPORT } completion_reward = { custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_arvo_tuominen custom_effect_tooltip = FIN_antagonize_the_soviets_event_tt if = { limit = { any_other_country = { is_major = yes NOT = { original_tag = SOV } capital_scope = { is_on_continent = europe } OR = { has_government = democratic has_government = communism } } } custom_effect_tooltip = generic_current_effects every_other_country = { limit = { is_major = yes NOT = { original_tag = SOV } capital_scope = { is_on_continent = europe } OR = { has_government = democratic has_government = communism } } country_event = { id = AAT_finland_diplomacy.23 hours = 4 random_hours = 2 } } } hidden_effect = { # AI less friendly add_ai_strategy = { type = befriend id = SOV value = -20 } SOV = { add_ai_strategy = { type = befriend id = ROOT value = -20 } add_ai_strategy = { type = send_volunteers_desire id = ROOT value = -200 } } #AI less hostile SOV = { add_ai_strategy = { type = antagonize id = ROOT value = 30 } add_ai_strategy = { type = conquer id = ROOT value = 30 } } } } } focus = { id = FIN_finno_soviet_pact icon = GFX_focus_chi_mission_to_the_soviet_union prerequisite = { focus = FIN_approach_the_soviets } x = -1 y = 1 relative_position_id = FIN_approach_the_soviets cost = 10 bypass = { is_in_faction_with = SOV } available = { is_subject = no has_civil_war = no OR = { has_government = communism has_government = democratic } any_other_country = { original_tag = SOV is_subject = no has_government = communism NOT = { has_war_with = ROOT } } } search_filters = { FOCUS_FILTER_POLITICAL } completion_reward = { add_political_power = 50 add_popularity = { ideology = communism popularity = 0.05 } SOV = { country_event = { id = AAT_finland_diplomacy.20 hours = 6 random_hours = 2 } } custom_effect_tooltip = if_they_accept_tt event_option_tooltip = AAT_finland_diplomacy.21.a } } focus = { id = FIN_subsidized_national_industrialization icon = GFX_goal_generic_soviet_construction prerequisite = { focus = FIN_finno_soviet_pact } x = 0 y = 1 relative_position_id = FIN_finno_soviet_pact cost = 10 available = { custom_trigger_tooltip = { tooltip = FIN_subsidized_national_industrialization_factories_required_tt NOT = { num_of_controlled_factories < FIN_subsidized_national_industrialization_factories_required } } SOV = { has_opinion = { target = ROOT value > 75 } } } continue_if_invalid = yes search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { random_core_state = { limit = { is_fully_controlled_by = ROOT is_coastal = yes free_building_slots = { building = arms_factory size > 2 include_locked = yes } } prioritize = { 149 926 111 } #VAASA TURKU UUSIMAA (Helsinki) add_extra_state_shared_building_slots = 3 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_building_construction = { type = arms_factory level = 1 instant_build = yes } add_building_construction = { type = dockyard level = 1 instant_build = yes } } every_military_industrial_organization = { tooltip = every_mio_tt add_mio_funds_gain_factor = 0.25 } } } focus = { id = FIN_finnish_learned_societies icon = GFX_focus_research prerequisite = { focus = FIN_approach_the_soviets focus = FIN_antagonize_the_soviets } x = 1 y = 1 relative_position_id = FIN_approach_the_soviets cost = 10 available = { } search_filters = { FOCUS_FILTER_RESEARCH } completion_reward = { add_research_slot = 1 FIN_bop_very_low_increase_effect = yes } } focus = { id = FIN_finnish_federation_of_trade_unions icon = GFX_focus_FIN_finnish_federation_of_trade_unions prerequisite = { focus = FIN_antagonize_the_soviets focus = FIN_approach_the_soviets } x = -1 y = 1 relative_position_id = FIN_antagonize_the_soviets cost = 10 available = { has_civil_war = no } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { add_ideas = FIN_finnish_federation_of_trade_unions unlock_decision_tooltip = { decision = FIN_prioritize_light_industry show_effect_tooltip = yes } unlock_decision_tooltip = { decision = FIN_prioritize_heavy_industry show_effect_tooltip = yes } FIN_bop_very_low_increase_effect = yes } } focus = { id = FIN_defensive_preparations icon = GFX_focus_generic_fortify_finland prerequisite = { focus = FIN_antagonize_the_soviets } x = 1 y = 1 relative_position_id = FIN_antagonize_the_soviets cost = 10 available = { } search_filters = { FOCUS_FILTER_MANPOWER } completion_reward = { ### NAVAL DEFENSES ### #UUSIMAA (Helsinki) 111 = { add_building_construction = { #Coastal Bunker in Helsinki, Hanko and Porvoo type = coastal_bunker level = 4 instant_build = yes province = { all_provinces = yes limit_to_coastal = yes limit_to_victory_point = yes } } add_building_construction = { #Bunker in Helsinki type = bunker level = 4 instant_build = yes province = 11105 } if = { limit = { anti_air_building < 5 } add_building_construction = { #AA in the state type = anti_air_building level = 1 instant_build = yes } } } # KYMI (Only if Naval Base) if = { limit = { 928 = { naval_base > 0 } } 928 = { #KYMI add_building_construction = { #Coastal Bunker in Kotka type = coastal_bunker level = 4 instant_build = yes province = 3061 } add_building_construction = { #Bunker in Kotka type = bunker level = 4 instant_build = yes province = 3061 } if = { limit = { anti_air_building < 5 } add_building_construction = { #AA in the state type = anti_air_building level = 1 instant_build = yes } } } } #KARJALA 146 = { add_building_construction = { #Coastal Bunker in Helsinki, Hanko and Porvoo type = coastal_bunker level = 4 instant_build = yes province = 9206 } add_building_construction = { #Bunker in Helsinki type = bunker level = 4 instant_build = yes province = 9206 } if = { limit = { anti_air_building < 5 } add_building_construction = { #AA in the state type = anti_air_building level = 1 instant_build = yes } } } #TURKU 926 = { add_building_construction = { #Coastal Bunker in Turku type = coastal_bunker level = 4 instant_build = yes province = 3083 } add_building_construction = { #Bunker in Turku type = bunker level = 4 instant_build = yes province = 3083 } if = { limit = { anti_air_building < 5 } add_building_construction = { #AA in the state type = anti_air_building level = 1 instant_build = yes } } } #VAASA 149 = { add_building_construction = { #Coastal Bunker in Vaasa type = coastal_bunker level = 4 instant_build = yes province = 3122 } add_building_construction = { #Bunker in Vaasa type = bunker level = 4 instant_build = yes province = 3122 } if = { limit = { anti_air_building < 5 } add_building_construction = { #AA in the state type = anti_air_building level = 1 instant_build = yes } } } # ÅLAND ISLANDS (Only if Militarized) if = { limit = { 145 = { is_demilitarized_zone = no } } 145 = { #ÅLAND add_building_construction = { #Coastal Bunker type = coastal_bunker level = 4 instant_build = yes province = 3061 } add_building_construction = { #Bunker type = bunker level = 4 instant_build = yes province = 3061 } if = { limit = { anti_air_building < 5 } add_building_construction = { #AA in the state type = anti_air_building level = 1 instant_build = yes } } } } ### DECISIONS ### unlock_decision_category_tooltip = FIN_national_defense_category # Tooltip for unlocking Coastal Garrisons dec if = { limit = { NOT = { has_country_flag = FIN_coastal_garrisons_deployed_flag } } custom_effect_tooltip = FIN_defensive_preparations_coastal_garrisons_dec_tt } #Reduce cost and time if already unlocked if = { limit = { has_completed_focus = FIN_coastal_defense } divide_variable = { FIN_coastal_garrisons_pp_xp_cost = 2 } set_variable = { FIN_coastal_garrisons_pp_xp_cost_trigger = FIN_coastal_garrisons_pp_xp_cost } add_to_variable = { FIN_coastal_garrisons_pp_xp_cost_trigger = -1 } divide_variable = { FIN_coastal_garrisons_cp_cost = 2 } set_variable = { FIN_coastal_garrisons_cp_cost_trigger = FIN_coastal_garrisons_cp_cost } add_to_variable = { FIN_coastal_garrisons_cp_cost_trigger = -1 } divide_variable = { FIN_coastal_garrisons_time = 2 } } # Tooltip for unlocking Mine the Sea dec if = { limit = { has_dlc = "Man the Guns" NOT = { has_country_flag = FIN_sea_mines_deployed_flag } } custom_effect_tooltip = FIN_defensive_preparations_mining_the_sea_dec_tt } #Reduce cost and time if already unlocked if = { limit = { has_completed_focus = FIN_sea_mines_strategy } divide_variable = { FIN_mining_the_sea_pp_xp_cost = 2 } set_variable = { FIN_mining_the_sea_pp_xp_cost_trigger = FIN_mining_the_sea_pp_xp_cost } add_to_variable = { FIN_mining_the_sea_pp_xp_cost_trigger = -1 } divide_variable = { FIN_mining_the_sea_cp_cost = 2 } set_variable = { FIN_mining_the_sea_cp_cost_trigger = FIN_mining_the_sea_cp_cost } add_to_variable = { FIN_mining_the_sea_cp_cost_trigger = -1 } divide_variable = { FIN_mining_the_sea_time = 2 } } } } focus = { id = FIN_trade_agreements icon = GFX_goal_generic_intelligence_exchange prerequisite = { focus = FIN_defensive_preparations } x = 0 y = 1 relative_position_id = FIN_defensive_preparations cost = 10 available = { } search_filters = { FOCUS_FILTER_INTERNATIONAL_TRADE FOCUS_FILTER_POLITICAL } completion_reward = { if = { limit = { country_exists = ENG NOT = { has_war_with = ENG } } add_equipment_subsidy = { cic = 1000 equipment_type = small_plane_airframe seller_tags = { ENG } } } if = { limit = { country_exists = FRA NOT = { has_war_with = FRA } } add_equipment_subsidy = { cic = 1000 equipment_type = light_tank_chassis seller_tags = { FRA } } } if = { limit = { country_exists = SWE NOT = { has_war_with = SWE } } add_equipment_subsidy = { cic = 1000 equipment_type = artillery_equipment seller_tags = { SWE } } } if = { limit = { has_dlc = "La Resistance" } add_ideas = FIN_infiltrated_assets FIN_create_operative_hella_wuolijok = yes } else = { add_ideas = FIN_infiltrated_assets_no_lar } } } focus = { id = FIN_finno_estonian_union icon = GFX_focus_FIN_viron_kansa prerequisite = { focus = FIN_approach_the_soviets focus = FIN_antagonize_the_soviets } x = 2 y = 2 relative_position_id = FIN_approach_the_soviets cost = 10 ai_will_do = { base = 1 modifier = { #Let Soviet player enjoy Baltics tack factor = 0.1 FIN_is_communist_ai = yes any_other_country = { original_tag = SOV is_ai = no has_completed_focus = SOV_baltic_security } } } bypass = { EST = { OR = { AND = { is_subject = yes NOT = { is_subject_of = ROOT } } has_capitulated = yes exists = no all_core_state = { OR = { is_claimed_by = ROOT is_owned_by = ROOT controller = { is_subject_of = ROOT } } } } } } available = { is_subject = no OR = { has_war = no surrender_progress < 0.05 } } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { EST = { country_event = { id = AAT_finland_diplomacy.01 hours = 4 random_hours = 2 } } custom_effect_tooltip = if_they_accept_tt custom_effect_tooltip = FIN_viron_kansa_positive_outcome_tt custom_effect_tooltip = if_they_refuse_tt event_option_tooltip = AAT_finland_diplomacy.04.b } } focus = { id = FIN_social_democracy icon = GFX_focus_generic_the_giant_wakes prerequisite = { focus = FIN_suomalainen_sosialismi } mutually_exclusive = { focus = FIN_towards_a_red_government } x = 3 y = 1 relative_position_id = FIN_suomalainen_sosialismi cost = 5 bypass = { has_government = democratic } available = { is_subject = no } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_STABILITY FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { add_political_power = 120 add_popularity = { ideology = democratic popularity = 0.05 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_vaino_tanner show_ideas_tooltip = FIN_miina_sillanpaa show_unit_leaders_tooltip = FIN_aarne_sihvo FIN_bop_low_decrease_effect = yes } } focus = { id = FIN_pragmatic_socialism icon = GFX_focus_FIN_pragmatic_socialism prerequisite = { focus = FIN_social_democracy } x = 4 y = 0 relative_position_id = FIN_antagonize_the_soviets cost = 5 bypass = { has_government = democratic } available = { democratic > 0.6 is_subject = no } search_filters = { FOCUS_FILTER_POLITICAL } completion_reward = { add_political_power = 70 set_politics = { ruling_party = democratic election_frequency = 36 elections_allowed = yes } add_stability = -0.1 hidden_effect = { # SWAP ADVISOR TRAITS TO HIDE TOOLTIP ABOUT DECISIONS FIN_karl_august_fagerholm = { if = { limit = { has_trait = FIN_democratic_reformer_fagerholm } add_trait = { trait = democratic_reformer slot = political_advisor } remove_trait = { trait = FIN_democratic_reformer_fagerholm slot = political_advisor } } } FIN_vaino_tanner = { if = { limit = { has_trait = FIN_humble_appeaser_tanner } add_trait = { trait = appeaser slot = political_advisor } remove_trait = { trait = FIN_humble_appeaser_tanner slot = political_advisor } } } FIN_miina_sillanpaa = { if = { limit = { has_trait = FIN_champion_of_equality_sillanpaa } add_trait = { trait = champion_of_equality slot = political_advisor } remove_trait = { trait = FIN_champion_of_equality_sillanpaa slot = political_advisor } } } # SWAP ADVISOR TRAITS TO HIDE TOOLTIP ABOUT DECISIONS FIN_yrjo_leino = { if = { limit = { has_trait = FIN_communist_revolutionary_leino } add_trait = { trait = communist_revolutionary slot = political_advisor } remove_trait = { trait = FIN_communist_revolutionary_leino slot = political_advisor } } } FIN_aarne_saarinen = { if = { limit = { has_trait = FIN_technocrat_saarinen } add_trait = { trait = technocrat slot = political_advisor } remove_trait = { trait = FIN_technocrat_saarinen slot = political_advisor } } } FIN_otto_wille_kuusinen = { if = { limit = { has_trait = FIN_patriotic_socialist_kuusinen } add_trait = { trait = patriotic_socialist slot = political_advisor } remove_trait = { trait = FIN_patriotic_socialist_kuusinen slot = political_advisor } } } } } } focus = { id = FIN_sosialistinen_eduskuntaryhma icon = GFX_focus_prc_agrarian_socialism prerequisite = { focus = FIN_pragmatic_socialism } x = -1 y = 1 relative_position_id = FIN_pragmatic_socialism cost = 5 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_BALANCE_OF_POWER } completion_reward = { add_political_power = 70 add_stability = 0.05 add_popularity = { ideology = communism popularity = 0.1 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_karl_harald_wiik show_ideas_tooltip = FIN_kaisu_mirjami_rydberg FIN_bop_very_low_increase_effect = yes } } focus = { id = FIN_social_democratic_womens_union icon = GFX_focus_FIN_social_democratic_womens_association prerequisite = { focus = FIN_pragmatic_socialism } x = 1 y = 1 relative_position_id = FIN_pragmatic_socialism cost = 10 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_INDUSTRY FOCUS_FILTER_BALANCE_OF_POWER } completion_reward = { add_political_power = 100 add_stability = 0.05 add_popularity = { ideology = democratic popularity = 0.1 } add_ideas = FIN_social_democratic_womens_union custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_mandi_hannula FIN_bop_very_low_increase_effect = yes } } focus = { id = FIN_mineral_wealth icon = GFX_focus_generic_mining_industry prerequisite = { focus = FIN_pragmatic_socialism } x = 0 y = 2 relative_position_id = FIN_pragmatic_socialism cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = FIN_mineral_wealth_tt every_core_state = { limit = { OR = { has_resources_amount = { resource = steel amount > 0 } has_resources_amount = { resource = chromium amount > 0 } has_resources_amount = { resource = tungsten amount > 0 } has_resources_amount = { resource = aluminium amount > 0 } } free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } random_select_amount = 3 add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } #Increase resources if = { limit = { has_resources_amount = { resource = steel amount > 0 } } add_resource = { type = steel amount = 6 show_state_in_tooltip = no } } if = { limit = { has_resources_amount = { resource = chromium amount > 0 } } add_resource = { type = chromium amount = 6 show_state_in_tooltip = no } } if = { limit = { has_resources_amount = { resource = tungsten amount > 0 } } add_resource = { type = tungsten amount = 6 show_state_in_tooltip = no } } if = { limit = { has_resources_amount = { resource = aluminium amount > 0 } } add_resource = { type = aluminium amount = 6 show_state_in_tooltip = no } } } } } focus = { id = FIN_funds_from_kalevala_koru_oy icon = GFX_focus_FIN_funds_from_kalevala_koru_oy prerequisite = { focus = FIN_social_democratic_womens_union } prerequisite = { focus = FIN_mineral_wealth } x = 0 y = 2 relative_position_id = FIN_social_democratic_womens_union cost = 5 available = { has_war_with_major = yes } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { add_timed_idea = { idea = FIN_funds_from_kalevala_koru_oy days = 730 } } } focus = { id = FIN_join_the_comintern icon = GFX_goal_support_communism prerequisite = { focus = FIN_the_second_finnish_civil_war } prerequisite = { focus = FIN_finno_soviet_pact } mutually_exclusive = { focus = FIN_united_under_the_north_star focus = FIN_approach_major_democracies } x = 2 y = 3 relative_position_id = FIN_the_second_finnish_civil_war cost = 5 ai_will_do = { base = 1 modifier = { factor = 100 FIN_is_communist_ai = yes any_other_country = { original_tag = SOV is_faction_leader = yes has_government = communism NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } } } bypass = { is_in_faction_with = SOV } available = { has_government = communism has_civil_war = no is_subject = no any_other_country = { original_tag = SOV is_faction_leader = yes has_government = communism NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } } search_filters = {} completion_reward = { SOV = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } custom_effect_tooltip = FIN_join_the_comintern_leader_tt } } focus = { id = FIN_united_under_the_north_star icon = GFX_focus_FIN_united_under_the_north_star prerequisite = { focus = FIN_finno_estonian_union } mutually_exclusive = { focus = FIN_join_the_comintern focus = FIN_approach_major_democracies } x = 0 y = 1 relative_position_id = FIN_finno_estonian_union ai_will_do = { base = 40 #High base AI weight so if the Comintern or Allies faction focuses are unavailable, AI prioritizes this one } cost = 10 bypass = { OR = { is_faction_leader = yes any_allied_country = { is_faction_leader = yes NORDIC_is_nordic = yes } } } available = { OR = { has_government = communism has_government = democratic } has_civil_war = no is_subject = no any_other_country = { OR = { tag = SWE tag = NOR tag = DEN tag = ICE tag = SMI } FIN_country_can_be_invited_into_faction_socialist = yes } } search_filters = {} completion_reward = { create_faction_from_template = { template = faction_template_NORDIC_alliance_democratic name = FIN_northern_defense_front_faction icon = GFX_faction_logo_generic_8 } complete_national_focus = NORDIC_form_joint_alliance #Just for tooltip purposes (more compact tooltip) every_other_country = { limit = { OR = { original_tag = SWE original_tag = NOR original_tag = DEN original_tag = ICE original_tag = SMI } FIN_country_can_be_invited_into_faction_socialist = yes } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } custom_effect_tooltip = FIN_unlock_foreign_politics_decisions_nordic_tt hidden_effect = { if = { limit = { SWE = { FIN_country_can_be_invited_into_faction_socialist = yes } } SWE = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } activate_targeted_decision = { target = SWE decision = FIN_pressure_country_government_nordic } activate_targeted_decision = { target = SWE decision = FIN_promote_ideology_rallies_nordic } } if = { limit = { NOR = { FIN_country_can_be_invited_into_faction_socialist = yes } } NOR = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } activate_targeted_decision = { target = NOR decision = FIN_pressure_country_government_nordic } activate_targeted_decision = { target = NOR decision = FIN_promote_ideology_rallies_nordic } } if = { limit = { DEN = { FIN_country_can_be_invited_into_faction_socialist = yes } } DEN = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } activate_targeted_decision = { target = DEN decision = FIN_pressure_country_government_nordic } activate_targeted_decision = { target = DEN decision = FIN_promote_ideology_rallies_nordic } } if = { limit = { ICE = { FIN_country_can_be_invited_into_faction_socialist = yes } } ICE = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } activate_targeted_decision = { target = ICE decision = FIN_pressure_country_government_nordic } activate_targeted_decision = { target = ICE decision = FIN_promote_ideology_rallies_nordic } } if = { limit = { SMI = { FIN_country_can_be_invited_into_faction_socialist = yes } } SMI = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } activate_targeted_decision = { target = SMI decision = FIN_pressure_country_government_nordic } activate_targeted_decision = { target = SMI decision = FIN_promote_ideology_rallies_nordic } } } } } focus = { id = FIN_approach_major_democracies icon = GFX_goal_support_democracy prerequisite = { focus = FIN_sosialistinen_eduskuntaryhma } prerequisite = { focus = FIN_defensive_preparations } mutually_exclusive = { focus = FIN_join_the_comintern focus = FIN_united_under_the_north_star } x = -1 y = 3 relative_position_id = FIN_pragmatic_socialism cost = 5 ai_will_do = { base = 1 modifier = { factor = 100 FIN_is_democratic_ai = yes OR = { ENG = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } FRA = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } USA = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } } } } bypass = { OR = { is_in_faction_with = ENG is_in_faction_with = FRA is_in_faction_with = USA } } available = { has_government = democratic has_civil_war = no threat > 0.55 is_subject = no OR = { ENG = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } FRA = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } USA = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } } } search_filters = {} completion_reward = { if = { limit = { ENG = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } NOT = { any_allied_country = { has_war_with = ROOT } } } } ENG = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } } else_if = { limit = { FRA = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } NOT = { any_allied_country = { has_war_with = ROOT } } } } FRA = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } } else = { USA = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } } } } focus = { id = FIN_finnish_autonomy icon = GFX_focus_generic_develop_finland_silhouette prerequisite = { focus = FIN_join_the_comintern } x = -2 y = 1 relative_position_id = FIN_join_the_comintern cost = 10 ai_will_do = { #AI Should never go for this base = 0 } available = { has_country_leader = { ruling_only = yes character = FIN_otto_wille_kuusinen } NOT = { SOV = { has_idea = FIN_finnish_goods } } } search_filters = {} completion_reward = { retire_character = FIN_otto_wille_kuusinen if = { limit = { has_cosmetic_tag = FIN_finnish_democratic_republic } drop_cosmetic_tag = yes if = { limit = { has_country_flag = FIN_formed_nordic_union } set_cosmetic_tag = NDC_UNIFIED } else_if = { limit = { has_completed_focus = FIN_red_finland } set_cosmetic_tag = FIN_red_finland } } add_political_power = 170 add_stability = 0.1 FIN_bop_medium_increase_effect = yes } } focus = { id = FIN_integrate_kola_and_karelia icon = GFX_focus_FIN_integrate_kola_and_karelia prerequisite = { focus = FIN_join_the_comintern } x = 0 y = 1 relative_position_id = FIN_join_the_comintern cost = 10 bypass = { controls_state = 213 #MURMANSK controls_state = 215 #ONEGA controls_state = 216 #OLONETS } available = { is_subject = no } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { custom_effect_tooltip = FIN_integrate_kola_and_karelia_tt hidden_effect = { #Add controllers of the target states to array so that the event can be send to all of them (only once) #MURMANSK 213 = { controller = { add_to_array = { ROOT.target_countries = THIS } } } #ONEGA 215 = { controller = { if = { limit = { NOT = { is_in_array = { ROOT.target_countries = THIS } } } add_to_array = { ROOT.target_countries = THIS } } } } #OLONETS 216 = { controller = { if = { limit = { NOT = { is_in_array = { ROOT.target_countries = THIS } } } add_to_array = { ROOT.target_countries = THIS } } } } for_each_scope_loop = { array = ROOT.target_countries country_event = { id = AAT_finland_diplomacy.11 hours = 1 } #log = "Sent event to [THIS.GetName]" } clear_array = ROOT.target_countries } } } focus = { id = FIN_british_threat icon = GFX_focus_attack_britain prerequisite = { focus = FIN_integrate_kola_and_karelia } x = -2 y = 1 relative_position_id = FIN_integrate_kola_and_karelia cost = 10 available = { is_subject = no country_exists = ENG NOT = { is_in_faction_with = ENG } NOT = { has_non_aggression_pact_with = ENG } NOT = { has_guaranteed = ENG } } select_effect = { add_ai_strategy = { type = prepare_for_war id = ENG value = 100 } } search_filters = { FOCUS_FILTER_WAR_SUPPORT } completion_reward = { add_war_support = 0.1 create_wargoal = { type = puppet_wargoal_focus target = ENG } add_timed_idea = { idea = FIN_british_threat days = 730 } if = { limit = { has_non_aggression_pact_with = ENG } diplomatic_relation = { country = ROOT relation = non_aggression_pact active = no } } if = { limit = { is_guaranteed_by = ENG } diplomatic_relation = { country = ROOT relation = guarantee active = no } } add_ai_strategy = { type = declare_war id = ENG value = 50 } } } focus = { id = FIN_keepers_of_the_baltic_countries icon = GFX_focus_FIN_keepers_of_the_baltic_countries prerequisite = { focus = FIN_integrate_kola_and_karelia } prerequisite = { focus = FIN_finnish_influence_in_the_baltic } x = 0 y = 1 relative_position_id = FIN_integrate_kola_and_karelia cost = 10 available = { has_government = communism is_subject = no } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { custom_effect_tooltip = FIN_keepers_of_the_baltic_countries_tt hidden_effect = { ### ESTONIA ### if = { #Finnish puppet or independent ally - Annexation limit = { EST = { FIN_is_valid_root_puppet_or_independent_ally = yes } } EST = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { EST = { FIN_is_valid_allied_puppet_ai = yes } } EST = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_baltic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_baltic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { is_core_of = EST is_core_of = LAT is_core_of = LIT is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { EST = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } EST = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } if = { #Someone else controls core states - Demand Estonian states. limit = { EST = { any_core_state = { FIN_is_valid_occupier_country = yes } } } EST = { every_core_state = { limit = { FIN_is_valid_occupier_country = yes } controller = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_baltic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_baltic_territory_array = THIS } } #Add state target for Finnish request of state transfer. This array will be used in the ONE event that the country will receive for transferring the appropriate states add_to_array = { FIN_states_requested_by_finland_array = PREV } } } } } ### LATVIA ### if = { #Finnish puppet or independent ally - Annexation limit = { LAT = { FIN_is_valid_root_puppet_or_independent_ally = yes } } LAT = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { LAT = { FIN_is_valid_allied_puppet_ai = yes } } LAT = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_baltic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_baltic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { is_core_of = EST is_core_of = LAT is_core_of = LIT is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { LAT = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } LAT = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } if = { #Someone else controls core states - Demand Estonian states. limit = { LAT = { any_core_state = { FIN_is_valid_occupier_country = yes } } } LAT = { every_core_state = { limit = { FIN_is_valid_occupier_country = yes } controller = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_baltic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_baltic_territory_array = THIS } } #Add state target for Finnish request of state transfer. This array will be used in the ONE event that the country will receive for transferring the appropriate states add_to_array = { FIN_states_requested_by_finland_array = PREV } } } } } ### LITHUANIA ### if = { #Finnish puppet or independent ally - Annexation limit = { LIT = { FIN_is_valid_root_puppet_or_independent_ally = yes } } LIT = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { LIT = { FIN_is_valid_allied_puppet_ai = yes } } LIT = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_baltic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_baltic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { is_core_of = EST is_core_of = LAT is_core_of = LIT is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { LIT = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } LIT = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } if = { #Someone else controls core states - Demand Estonian states. limit = { LIT = { any_core_state = { FIN_is_valid_occupier_country = yes } } } LIT = { every_core_state = { limit = { FIN_is_valid_occupier_country = yes } controller = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_baltic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_baltic_territory_array = THIS } } #Add state target for Finnish request of state transfer. This array will be used in the ONE event that the country will receive for transferring the appropriate states add_to_array = { FIN_states_requested_by_finland_array = PREV } } } } } #### SEND EVENT TO COUTNRIES OCCUPYING / PUPPETING BALTICS ### for_each_scope_loop = { array = ROOT.countries_with_baltic_territory_array country_event = { id = AAT_finland_diplomacy.17 hours = 1 } #log = "Sent event to [THIS.GetName]" } clear_array = ROOT.countries_with_baltic_territory_array every_controlled_state = { limit = { OR = { is_core_of = EST is_core_of = LAT is_core_of = LIT } has_resistance = yes } add_compliance = 30 } } } } focus = { id = FIN_red_finland icon = GFX_focus_FIN_red_finland prerequisite = { focus = FIN_keepers_of_the_baltic_countries } x = 0 y = 1 relative_position_id = FIN_keepers_of_the_baltic_countries cost = 10 will_lead_to_war_with = SWE will_lead_to_war_with = NOR will_lead_to_war_with = DEN will_lead_to_war_with = ICE will_lead_to_war_with = SOV available = { has_government = communism is_subject = no all_core_state = { is_controlled_by = ROOT } controls_state = 213 #MURMANSK controls_state = 215 #ONEGA controls_state = 216 #OLONETS } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_INDUSTRY } completion_reward = { set_cosmetic_tag = FIN_red_finland 213 = { #MURMANSK add_core_of = ROOT } 215 = { #ONEGA add_core_of = ROOT } 216 = { #OLONETS add_core_of = ROOT } 666 = { #NORRBOTTEN add_core_of = ROOT } 925 = { #FINNMARK add_core_of = ROOT } if = { limit = { SWE = { exists = yes NOT = { is_in_faction_with = ROOT } } } create_wargoal = { type = annex_everything target = SWE } } if = { limit = { NOR = { exists = yes NOT = { is_in_faction_with = ROOT } } } create_wargoal = { type = annex_everything target = NOR } } if = { limit = { DEN = { exists = yes NOT = { is_in_faction_with = ROOT } } } create_wargoal = { type = annex_everything target = DEN } } if = { limit = { ICE = { exists = yes NOT = { is_in_faction_with = ROOT } } } create_wargoal = { type = annex_everything target = ICE } } if = { limit = { SOV = { exists = yes NOT = { is_in_faction_with = ROOT } has_completed_focus = FIN_join_the_comintern #To prevent tooltip saying this at the begining of the game, because normally FIN won't get wargoal on SOV since they will join Comintern } } create_wargoal = { type = annex_everything target = SOV } } if = { limit = { any_controlled_state = { has_resistance = yes } } every_controlled_state = { limit = { has_resistance = yes } add_resistance_target = { amount = -15 occupier = ROOT tooltip = FIN_red_finland_resistance_target_tt } } } else = { custom_effect_tooltip = FIN_red_finland_resistance_tt } set_division_template_cap = { division_template = "Punakaarti" division_cap = 24 #Starts with 12 } custom_effect_tooltip = FIN_socialist_welfare_traits_upgrade_tt if = { limit = { has_country_leader = { ruling_only = yes character = FIN_aimo_aaltonen } } custom_effect_tooltip = generic_current_effects if = { limit = { has_dlc = "La Resistance" } FIN_aimo_aaltonen = { swap_country_leader_traits = { remove = committed_anti_fascist add = unbreakable_anti_fascist } } } else = { FIN_aimo_aaltonen = { swap_country_leader_traits = { remove = committed_anti_fascist_no_lar add = unbreakable_anti_fascist_no_lar } } } #Too long of a tooltip # custom_effect_tooltip = FIN_socialist_welfare_if_leino_tt # FIN_yrjo_leino = { # swap_country_leader_traits = { # remove = veteran_communist # add = devoted_communist # } # } # # custom_effect_tooltip = FIN_socialist_welfare_if_kuusinen_tt # FIN_otto_wille_kuusinen = { # remove_country_leader_trait = FIN_stalins_puppet_kuusinen # swap_country_leader_traits = { # remove = comintern_workhorse # add = international_communist # } # } } else_if = { limit = { has_country_leader = { ruling_only = yes character = FIN_yrjo_leino } } custom_effect_tooltip = generic_current_effects FIN_yrjo_leino = { swap_country_leader_traits = { remove = veteran_communist add = devoted_communist } } #Too long of a tooltip # custom_effect_tooltip = FIN_socialist_welfare_if_laaltonen_tt # if = { # limit = { # has_dlc = "La Resistance" # } # FIN_aimo_aaltonen = { # swap_country_leader_traits = { # remove = committed_anti_fascist # add = unbreakable_anti_fascist # } # } # } # else = { # FIN_aimo_aaltonen = { # swap_country_leader_traits = { # remove = committed_anti_fascist_no_lar # add = unbreakable_anti_fascist_no_lar # } # } # } # custom_effect_tooltip = FIN_socialist_welfare_if_kuusinen_tt # FIN_otto_wille_kuusinen = { # remove_country_leader_trait = FIN_stalins_puppet_kuusinen # swap_country_leader_traits = { # remove = comintern_workhorse # add = international_communist # } # } } else_if = { limit = { has_country_leader = { ruling_only = yes character = FIN_otto_wille_kuusinen } } custom_effect_tooltip = generic_current_effects FIN_otto_wille_kuusinen = { remove_country_leader_trait = FIN_stalins_puppet_kuusinen hidden_effect = { remove_country_leader_trait = personal_agenda_kuusinen #Necessary to keep the traits order } swap_country_leader_traits = { remove = comintern_workhorse add = international_communist } hidden_effect = { add_country_leader_trait = personal_agenda_kuusinen #Necessary to keep the traits order } } #Too long of a tooltip # custom_effect_tooltip = FIN_socialist_welfare_if_laaltonen_tt # if = { # limit = { # has_dlc = "La Resistance" # } # FIN_aimo_aaltonen = { # swap_country_leader_traits = { # remove = committed_anti_fascist # add = unbreakable_anti_fascist # } # } # } # else = { # FIN_aimo_aaltonen = { # swap_country_leader_traits = { # remove = committed_anti_fascist_no_lar # add = unbreakable_anti_fascist_no_lar # } # } # } # custom_effect_tooltip = FIN_socialist_welfare_if_leino_tt # FIN_yrjo_leino = { # swap_country_leader_traits = { # remove = veteran_communist # add = devoted_communist # } # } } else = { custom_effect_tooltip = FIN_socialist_welfare_traits_more_info_tt } FIN_bop_medium_increase_effect = yes } } focus = { id = FIN_finnish_influence_in_the_baltic icon = GFX_focus_FIN_finnish_influence_in_the_baltic prerequisite = { focus = FIN_join_the_comintern focus = FIN_united_under_the_north_star } x = 2 y = 1 relative_position_id = FIN_join_the_comintern cost = 10 bypass = { EST = { OR = { exists = no is_subject = yes is_in_faction = yes has_war_with = ROOT } } LAT = { OR = { exists = no is_subject = yes is_in_faction = yes has_war_with = ROOT } } LIT = { OR = { exists = no is_subject = yes is_in_faction = yes has_war_with = ROOT } } POL = { OR = { exists = no is_subject = yes is_in_faction = yes has_war_with = ROOT } } } available = { is_subject = no } search_filters = {} completion_reward = { custom_effect_tooltip = FIN_finnish_influence_in_the_baltic_tt if = { limit = { OR = { has_government = democratic has_government = communism } } custom_effect_tooltip = generic_current_effects_new_lines #Just for tooltip purposes (more compact tooltip) every_other_country = { limit = { OR = { original_tag = EST original_tag = LAT original_tag = LIT original_tag = POL } FIN_country_can_be_invited_into_faction_socialist = yes has_government = ROOT } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } every_other_country = { limit = { OR = { original_tag = EST original_tag = LAT original_tag = LIT original_tag = POL } FIN_country_can_be_invited_into_faction_socialist = yes NOT = { has_government = ROOT } } custom_effect_tooltip = FIN_northern_defense_front_influence_tt } } custom_effect_tooltip = FIN_unlock_foreign_politics_decisions_baltic_tt hidden_effect = { if = { #Estonia in case they somehow are still around limit = { EST = { FIN_country_can_be_invited_into_faction_socialist = yes has_government = ROOT } } EST = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } } else = { EST = { add_opinion_modifier = { target = ROOT modifier = FIN_finnish_influence_in_the_baltic } if = { limit = { NOT = { has_government = ROOT } } if = { limit = { ROOT = { has_government = democratic } } add_timed_idea = { idea = democratic_influence days = 1095 } } if = { limit = { ROOT = { has_government = communism } } add_timed_idea = { idea = communist_influence days = 1095 } } country_event = { id = generic.1 } } } activate_targeted_decision = { target = EST decision = FIN_pressure_country_government_baltic } activate_targeted_decision = { target = EST decision = FIN_promote_ideology_rallies_baltic } } if = { limit = { LAT = { FIN_country_can_be_invited_into_faction_socialist = yes has_government = ROOT } } LAT = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } else = { LAT = { if = { limit = { NOT = { has_government = ROOT } } add_opinion_modifier = { target = ROOT modifier = FIN_finnish_influence_in_the_baltic } if = { limit = { ROOT = { has_government = democratic } } add_timed_idea = { idea = democratic_influence days = 1095 } } if = { limit = { ROOT = { has_government = communism } } add_timed_idea = { idea = communist_influence days = 1095 } } country_event = { id = generic.1 } } } activate_targeted_decision = { target = LAT decision = FIN_pressure_country_government_baltic } activate_targeted_decision = { target = LAT decision = FIN_promote_ideology_rallies_baltic } } } if = { limit = { LIT = { FIN_country_can_be_invited_into_faction_socialist = yes has_government = ROOT } } LIT = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } } else = { LIT = { if = { limit = { NOT = { has_government = ROOT } } add_opinion_modifier = { target = ROOT modifier = FIN_finnish_influence_in_the_baltic } if = { limit = { ROOT = { has_government = democratic } } add_timed_idea = { idea = democratic_influence days = 1095 } } if = { limit = { ROOT = { has_government = communism } } add_timed_idea = { idea = communist_influence days = 1095 } } country_event = { id = generic.1 } } } activate_targeted_decision = { target = LIT decision = FIN_pressure_country_government_baltic } activate_targeted_decision = { target = LIT decision = FIN_promote_ideology_rallies_baltic } } if = { limit = { POL = { FIN_country_can_be_invited_into_faction_socialist = yes has_government = ROOT } } log = "Invitation" POL = { hidden_effect = { ROOT = { add_ai_strategy = { type = befriend id = PREV value = 50 } } add_ai_strategy = { type = befriend id = ROOT value = 50 } country_event = { id = generic.5 hours = 4 random_hours = 4 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } } else = { POL = { if = { limit = { NOT = { has_government = ROOT } } add_opinion_modifier = { target = ROOT modifier = FIN_finnish_influence_in_the_baltic } if = { limit = { ROOT = { has_government = democratic } } add_timed_idea = { idea = democratic_influence days = 1095 } } if = { limit = { ROOT = { has_government = communism } } add_timed_idea = { idea = communist_influence days = 1095 } } country_event = { id = generic.1 } } } activate_targeted_decision = { target = POL decision = FIN_pressure_country_government_baltic } activate_targeted_decision = { target = POL decision = FIN_promote_ideology_rallies_baltic } } } } } focus = { id = FIN_preserve_sapmi icon = GFX_focus_SWE_Sami_reconcilliation prerequisite = { focus = FIN_finnish_influence_in_the_baltic } x = 0 y = 1 relative_position_id = FIN_finnish_influence_in_the_baltic cost = 10 available = { is_subject = no SMI = { any_core_state = { NOT = { is_core_of = ROOT } NOT = { controller = { has_war_with = ROOT } } } } } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { custom_effect_tooltip = FIN_preserve_sapmi_event_tt if = { limit = { any_other_country = { NOT = { has_war_with = ROOT } any_controlled_state = { is_core_of = SMI } } } custom_effect_tooltip = generic_current_effects every_other_country = { limit = { NOT = { has_war_with = ROOT } any_controlled_state = { is_core_of = SMI } } country_event = { id = AAT_finland_diplomacy.05 hours = 8 random_hours = 6 } } } custom_effect_tooltip = FIN_preserve_sapmi_cores_tt if = { limit = { any_controlled_state = { is_core_of = SMI NOT = { is_core_of = FIN } } } custom_effect_tooltip = generic_current_effects every_controlled_state = { limit = { is_core_of = SMI NOT = { is_core_of = FIN } } add_core_of = ROOT } } } } focus = { id = FIN_confederated_finno_russian_republics icon = GFX_focus_FIN_confederated_finno_russian_republics prerequisite = { focus = FIN_united_under_the_north_star } x = 0 y = 1 relative_position_id = FIN_united_under_the_north_star cost = 10 available = { is_subject = no } search_filters = {} completion_reward = { set_cosmetic_tag = FIN_confederated_finno_russian_republics custom_effect_tooltip = FIN_confederated_finno_russian_republics_state_modifier_tt effect_tooltip = { add_dynamic_modifier = { modifier = FIN_confederation_of_finno_russian_republics_dm scope = ROOT } } hidden_effect = { every_controlled_state = { limit = { is_core_of = SOV NOT = { is_core_of = ROOT } } add_dynamic_modifier = { modifier = FIN_confederation_of_finno_russian_republics_dm scope = ROOT } } #Soviet states occupied later on receive the staate modifier via on_action } custom_effect_tooltip = FIN_confederated_finno_russian_republics_dec_cat_tt if = { limit = { NOT = { has_completed_focus = FIN_approach_the_soviets } } show_unit_leaders_tooltip = FIN_emil_vaateri show_unit_leaders_tooltip = FIN_eyolf_mattsson show_unit_leaders_tooltip = FIN_toivo_antikainen custom_effect_tooltip = available_chief_of_army show_ideas_tooltip = FIN_toivo_antikainen } FIN_bop_high_increase_effect = yes } } focus = { id = FIN_secure_the_baltic_sea icon = GFX_goal_generic_navy_cruiser prerequisite = { focus = FIN_united_under_the_north_star focus = FIN_approach_major_democracies } x = 2 y = 1 relative_position_id = FIN_united_under_the_north_star cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { add_timed_idea = { idea = FIN_baltic_sea_focus days = 730 } every_navy_leader = { limit = { OR = { NOT = { has_trait = arctic_water_expert } NOT = { has_trait = inshore_fighter } } } random_select_amount = 2 if = { limit = { NOT = { has_trait = arctic_water_expert } } add_trait = { trait = arctic_water_expert } } if = { limit = { NOT = { has_trait = inshore_fighter } } add_trait = { trait = inshore_fighter } } } custom_effect_tooltip = FIN_secure_the_baltic_sea_forts_tt every_controlled_state = { limit = { state_is_in_the_baltic_sea = yes is_fully_controlled_by = ROOT naval_base > 1 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = { all_provinces = yes limit_to_naval_base = yes } } add_building_construction = { type = bunker level = 2 instant_build = yes province = { all_provinces = yes limit_to_naval_base = yes } } } custom_effect_tooltip = FIN_secure_the_baltic_sea_dockyards_tt every_controlled_state = { limit = { state_is_in_the_baltic_sea = yes is_fully_controlled_by = ROOT free_building_slots = { building = dockyard size > 1 include_locked = yes } } random_select_amount = 2 add_extra_state_shared_building_slots = 2 add_building_construction = { type = dockyard level = 2 instant_build = yes } } } } focus = { id = FIN_german_threat icon = GFX_focus_attack_germany prerequisite = { focus = FIN_finnish_influence_in_the_baltic focus = FIN_secure_the_baltic_sea } x = 2 y = 1 relative_position_id = FIN_finnish_influence_in_the_baltic cost = 10 available = { is_subject = no country_exists = GER NOT = { is_in_faction_with = GER } NOT = { has_non_aggression_pact_with = GER } NOT = { has_guaranteed = GER } } select_effect = { add_ai_strategy = { type = prepare_for_war id = GER value = 100 } } search_filters = { FOCUS_FILTER_WAR_SUPPORT } completion_reward = { add_war_support = 0.1 create_wargoal = { type = puppet_wargoal_focus target = GER } add_timed_idea = { idea = FIN_german_threat days = 730 } if = { limit = { has_non_aggression_pact_with = GER } diplomatic_relation = { country = ROOT relation = non_aggression_pact active = no } } if = { limit = { is_guaranteed_by = GER } diplomatic_relation = { country = ROOT relation = guarantee active = no } } add_ai_strategy = { type = declare_war id = GER value = 50 } } } focus = { id = FIN_socialist_welfare icon = GFX_focus_FIN_socialist_welfare prerequisite = { focus = FIN_secure_the_baltic_sea } x = 0 y = 2 relative_position_id = FIN_secure_the_baltic_sea cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY FOCUS_FILTER_STABILITY FOCUS_FILTER_RESEARCH FOCUS_FILTER_WAR_SUPPORT } completion_reward = { add_ideas = FIN_socialist_welfare custom_effect_tooltip = FIN_socialist_welfare_compliance_tt if = { limit = { any_controlled_state = { has_resistance = yes } } custom_effect_tooltip = generic_current_effects every_controlled_state = { limit = { has_resistance = yes } add_compliance = 15 } } if = { limit = { has_country_leader = { ruling_only = yes character = FIN_vaino_tanner } } FIN_vaino_tanner = { swap_country_leader_traits = { remove = pragmatic_socialist add = champion_of_national_cooperation } } } else_if = { limit = { has_country_leader = { ruling_only = yes character = FIN_aimo_aaltonen } } if = { limit = { has_dlc = "La Resistance" } FIN_aimo_aaltonen = { swap_country_leader_traits = { remove = committed_anti_fascist add = unbreakable_anti_fascist } } } else = { FIN_aimo_aaltonen = { swap_country_leader_traits = { remove = committed_anti_fascist_no_lar add = unbreakable_anti_fascist_no_lar } } } custom_effect_tooltip = FIN_socialist_welfare_if_leino_tt FIN_yrjo_leino = { swap_country_leader_traits = { remove = veteran_communist add = devoted_communist } } } else_if = { limit = { has_country_leader = { ruling_only = yes character = FIN_yrjo_leino } } FIN_yrjo_leino = { swap_country_leader_traits = { remove = veteran_communist add = devoted_communist } } custom_effect_tooltip = FIN_socialist_welfare_if_laaltonen_tt if = { limit = { has_dlc = "La Resistance" } FIN_aimo_aaltonen = { swap_country_leader_traits = { remove = committed_anti_fascist add = unbreakable_anti_fascist } } } else = { FIN_aimo_aaltonen = { swap_country_leader_traits = { remove = committed_anti_fascist_no_lar add = unbreakable_anti_fascist_no_lar } } } } else = { custom_effect_tooltip = FIN_socialist_welfare_traits_upgrade_tt } FIN_bop_low_increase_effect = yes } } focus = { id = FIN_aid_for_entrepreneurs icon = GFX_goal_generic_construct_civ_factory prerequisite = { focus = FIN_approach_major_democracies focus = FIN_united_under_the_north_star } x = -1 y = 1 relative_position_id = FIN_approach_major_democracies cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH } completion_reward = { every_owned_state = { limit = { is_fully_controlled_by = ROOT free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } random_select_amount = 3 add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } add_tech_bonus = { ahead_reduction = 2 uses = 1 category = industry name = FIN_aid_for_entrepreneurs } add_tech_bonus = { ahead_reduction = 2 uses = 1 category = electronics name = FIN_aid_for_entrepreneurs } } } focus = { id = FIN_soviet_threat icon = GFX_focus_attack_soviet prerequisite = { focus = FIN_secure_the_baltic_sea focus = FIN_aid_for_entrepreneurs } x = 1 y = 1 relative_position_id = FIN_secure_the_baltic_sea cost = 10 available = { is_subject = no country_exists = SOV NOT = { is_in_faction_with = SOV } NOT = { has_non_aggression_pact_with = SOV } NOT = { has_guaranteed = SOV } } search_filters = { FOCUS_FILTER_WAR_SUPPORT } select_effect = { add_ai_strategy = { type = prepare_for_war id = SOV value = 100 } } completion_reward = { add_war_support = 0.1 create_wargoal = { type = puppet_wargoal_focus target = SOV } add_timed_idea = { idea = FIN_soviet_threat days = 730 } if = { limit = { has_non_aggression_pact_with = SOV } diplomatic_relation = { country = ROOT relation = non_aggression_pact active = no } } if = { limit = { is_guaranteed_by = SOV } diplomatic_relation = { country = ROOT relation = guarantee active = no } } add_ai_strategy = { type = declare_war id = SOV value = 50 } } } focus = { id = FIN_proclaim_greater_finland icon = GFX_focus_FIN_a_cry_for_help_2 prerequisite = { focus = FIN_control_the_flux_of_iron_ore } prerequisite = { focus = FIN_aid_for_entrepreneurs } x = 0 y = 3 relative_position_id = FIN_approach_major_democracies cost = 10 available = { is_subject = no count_triggers = { amount = 6 controls_state = 666 #NORRBOTTEN controls_state = 918 #VÄSTERBOTTEN controls_state = 144 #NORDLAND controls_state = 924 #TROMS controls_state = 925 #FINNMARK controls_state = 213 #MURMANSK controls_state = 215 #ONEGA controls_state = 216 #OLONETS controls_state = 812 #HARJU controls_state = 813 #VIRUMAA controls_state = 811 #SAAREMAA controls_state = 13 #PÄRNU controls_state = 191 #TARTU } } search_filters = {} completion_reward = { set_cosmetic_tag = FIN_grand_finnish_federation 213 = { #MURMANSK add_core_of = ROOT } 215 = { #ONEGA add_core_of = ROOT } 216 = { #OLONETS add_core_of = ROOT } 666 = { #NORRBOTTEN add_core_of = ROOT } 925 = { #FINNMARK add_core_of = ROOT } if = { limit = { any_controlled_state = { OR = { state = 666 state = 918 state = 144 state = 924 state = 925 state = 213 state = 215 state = 216 state = 812 state = 813 state = 811 state = 13 state = 191 } has_resistance = yes } } every_controlled_state = { limit = { OR = { state = 666 state = 918 state = 144 state = 924 state = 925 state = 213 state = 215 state = 216 state = 812 state = 813 state = 811 state = 13 state = 191 } has_resistance = yes } add_compliance = 50 } } else = { custom_effect_tooltip = FIN_proclaim_greater_finland_compliance_tt } if = { limit = { 208 = { NOT = { is_controlled_by = ROOT is_claimed_by = ROOT } } } add_state_claim = 208 #LUGA } if = { limit = { 195 = { NOT = { is_controlled_by = ROOT is_claimed_by = ROOT } } } add_state_claim = 195 #LENINGRAD } if = { limit = { 244 = { NOT = { is_controlled_by = ROOT is_claimed_by = ROOT } } } add_state_claim = 244 #VOLKHOV } if = { limit = { 264 = { NOT = { is_controlled_by = ROOT is_claimed_by = ROOT } } } add_state_claim = 264 #TIKHVIN } FIN_bop_medium_increase_effect = yes } } focus = { id = FIN_control_the_flux_of_iron_ore icon = GFX_focus_generic_invade_sweden prerequisite = { focus = FIN_approach_major_democracies } x = 1 y = 1 relative_position_id = FIN_approach_major_democracies cost = 10 bypass = { is_subject = no controls_state = 666 #NORRBOTTEN controls_state = 918 #VÄSTERBOTTEN controls_state = 144 #NORDLAND controls_state = 924 #TROMS controls_state = 925 #FINNMARK } available = { } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { custom_effect_tooltip = FIN_control_the_flux_of_iron_ore_tt hidden_effect = { #Add controllers of the target states to array so that the event can be send to all of them (only once) #NORRBOTTEN 666 = { controller = { add_to_array = { ROOT.target_countries = THIS } } } #VÄSTERBOTTEN 918 = { controller = { if = { limit = { NOT = { is_in_array = { ROOT.target_countries = THIS } } } add_to_array = { ROOT.target_countries = THIS } } } } #NORDLAND 144 = { controller = { if = { limit = { NOT = { is_in_array = { ROOT.target_countries = THIS } } } add_to_array = { ROOT.target_countries = THIS } } } } #TROMS 924 = { controller = { if = { limit = { NOT = { is_in_array = { ROOT.target_countries = THIS } } } add_to_array = { ROOT.target_countries = THIS } } } } #FINNMARK 925 = { controller = { if = { limit = { NOT = { is_in_array = { ROOT.target_countries = THIS } } } add_to_array = { ROOT.target_countries = THIS } } } } for_each_scope_loop = { array = ROOT.target_countries country_event = { id = AAT_finland_diplomacy.08 hours = 1 } #log = "Sent event to [THIS.GetName]" } clear_array = ROOT.target_countries } } } ## ## #### ###### ######## ####### ######## #### ###### ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ######### ## ###### ## ## ## ######## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ######### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ###### ## ####### ## ## #### ###### ## ## ######## focus = { id = FIN_finnish_neutrality icon = GFX_focus_FIN_finnish_neutrality allow_branch = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = FIN_suomalainen_sosialismi } NOT = { has_completed_focus = FIN_right_wing_policies } } } x = 16 y = 0 relative_position_id = FIN_suomalainen_sosialismi offset = { x = -16 y = 0 trigger = { OR = { NOT = { has_dlc = "Arms Against Tyranny" } AND = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = FIN_finnish_neutrality } } } } mutually_exclusive = { focus = FIN_right_wing_policies focus = FIN_suomalainen_sosialismi } cost = 5 available = { has_government = neutrality is_subject = no } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_INDUSTRY } completion_reward = { add_political_power = 50 add_war_support = -0.05 add_stability = 0.05 custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_risto_ryti hidden_effect = { if = { limit = { has_dlc = "Arms Against Tyranny" } # SWAP ADVISOR TRAITS TO HIDE TOOLTIP ABOUT DECISIONS FIN_karl_august_fagerholm = { if = { limit = { has_trait = FIN_democratic_reformer_fagerholm } add_trait = { trait = democratic_reformer slot = political_advisor } remove_trait = { trait = FIN_democratic_reformer_fagerholm slot = political_advisor } } } FIN_vaino_tanner = { if = { limit = { has_trait = FIN_humble_appeaser_tanner } add_trait = { trait = appeaser slot = political_advisor } remove_trait = { trait = FIN_humble_appeaser_tanner slot = political_advisor } } } FIN_miina_sillanpaa = { if = { limit = { has_trait = FIN_champion_of_equality_sillanpaa } add_trait = { trait = champion_of_equality slot = political_advisor } remove_trait = { trait = FIN_champion_of_equality_sillanpaa slot = political_advisor } } } # SWAP ADVISOR TRAITS TO HIDE TOOLTIP ABOUT DECISIONS FIN_yrjo_leino = { if = { limit = { has_trait = FIN_communist_revolutionary_leino } add_trait = { trait = communist_revolutionary slot = political_advisor } remove_trait = { trait = FIN_communist_revolutionary_leino slot = political_advisor } } } FIN_aarne_saarinen = { if = { limit = { has_trait = FIN_technocrat_saarinen } add_trait = { trait = technocrat slot = political_advisor } remove_trait = { trait = FIN_technocrat_saarinen slot = political_advisor } } } FIN_otto_wille_kuusinen = { if = { limit = { has_trait = FIN_patriotic_socialist_kuusinen } add_trait = { trait = patriotic_socialist slot = political_advisor } remove_trait = { trait = FIN_patriotic_socialist_kuusinen slot = political_advisor } } } } } hidden_effect = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_dlc = "Arms Against Tyranny" } mark_focus_tree_layout_dirty = yes } } } } focus = { id = FIN_political_unity icon = GFX_focus_generic_self_management prerequisite = { focus = FIN_finnish_neutrality } x = -5 y = 1 relative_position_id = FIN_finnish_neutrality cost = 10 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_MILITARY_CHARACTER FOCUS_FILTER_MANPOWER FOCUS_FILTER_STABILITY } completion_reward = { add_political_power = 100 FIN_bop_low_increase_effect = yes add_popularity = { ideology = neutrality popularity = 0.05 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_elias_simojoki show_ideas_tooltip = FIN_ilmari_kianto show_unit_leaders_tooltip = FIN_aarne_sihvo } } focus = { id = FIN_align_the_agrarian_league icon = GFX_focus_generic_workers prerequisite = { focus = FIN_political_unity focus = FIN_social_democracy } x = -3 y = 1 relative_position_id = FIN_political_unity cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_INDUSTRY } completion_reward = { add_political_power = 50 FIN_bop_very_low_increase_effect = yes add_popularity = { ideology = neutrality popularity = 0.03 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_urho_kekkonen } } focus = { id = FIN_the_finnish_swedish_peoples_party icon = GFX_focus_generic_industrialists prerequisite = { focus = FIN_social_democracy focus = FIN_political_unity } x = 2 y = 0 relative_position_id = FIN_align_the_agrarian_league cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_STABILITY } completion_reward = { add_political_power = 50 FIN_bop_very_low_increase_effect = yes add_popularity = { ideology = neutrality popularity = 0.03 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_ralf_torngren show_ideas_tooltip = FIN_ernst_von_born } } focus = { id = FIN_collaboration_with_the_left icon = GFX_goal_generic_national_unity prerequisite = { focus = FIN_political_unity } x = 1 y = 1 relative_position_id = FIN_political_unity cost = 5 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_STABILITY } completion_reward = { add_political_power = 50 FIN_bop_very_low_increase_effect = yes add_popularity = { ideology = democratic popularity = 0.1 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_vaino_tanner show_ideas_tooltip = FIN_miina_sillanpaa } } focus = { id = FIN_railways_and_infrastructure icon = GFX_focus_generic_railroad prerequisite = { focus = FIN_political_unity } x = 0 y = 2 relative_position_id = FIN_political_unity cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { #Railway to Pori and Rauma and Naval Base in Pori if = { limit = { has_full_control_of_state = 926 #TURKU } if = { limit = { 926 = { naval_base < 10 } } 926 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = naval_base level = 2 instant_build = yes province = 3117 } build_railway = { #To Pori path = { 3025 3009 3117 } } build_railway = { #To Rauma path = { 11172 9094 169 } } } } } #Railway Kemi-Rovaniemi and Supply Hub in Rovaniemi if = { limit = { has_full_control_of_state = 148 #LAPPI } 148 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = supply_node level = 1 instant_build = yes province = 6087 } build_railway = { #Kemi - Rovaniemi path = { 11164 162 6087 } } } } #Railway Lappeenranta - Savonlinna - Varkaus and Supply Hub in Savonlinna if = { limit = { controls_province = 6082 #Lappeenranta controls_province = 52 controls_province = 3131 controls_province = 37 #Savonlina controls_province = 136 #Varkaus controls_province = 11043 } 930 = { #MIKKELI add_extra_state_shared_building_slots = 1 add_building_construction = { type = supply_node level = 1 instant_build = yes province = 37 } } build_railway = { #Lappeenranta - Savonlinna - Varkaus path = { 6082 52 3131 37 136 11043 } } } #Supply Hub in Kaajani (KUOPIO) if = { limit = { controls_province = 3125 } 150 = { add_building_construction = { type = supply_node level = 1 instant_build = yes province = 3125 } } } } } focus = { id = FIN_repurpose_small_industries icon = GFX_goal_generic_construct_civ_factory prerequisite = { focus = FIN_railways_and_infrastructure } x = 0 y = 2 relative_position_id = FIN_railways_and_infrastructure cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { add_ideas = FIN_repurposed_small_industries random_core_state = { limit = { is_fully_controlled_by = ROOT free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } prioritize = { 150 } #KUOPIO add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } } } focus = { id = FIN_expand_state_military_factories icon = GFX_goal_generic_construct_mil_factory prerequisite = { focus = FIN_repurpose_small_industries } x = 0 y = 1 relative_position_id = FIN_repurpose_small_industries cost = 10 available = { has_tech = construction4 } search_filters = { FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH } completion_reward = { every_core_state = { limit = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 0 include_locked = yes } } random_select_amount = 2 add_extra_state_shared_building_slots = 1 add_building_construction = { type = arms_factory level = 1 instant_build = yes } } if = { limit = { has_idea = FIN_national_industry_modernize } swap_ideas = { remove_idea = FIN_national_industry_modernize add_idea = FIN_national_industry_final } } else_if = { #To prevent duplicated NS when debugging etc limit = { NOT = { has_idea = FIN_national_industry_expand } } add_ideas = FIN_national_industry_expand } if = { limit = { has_dlc = "Arms Against Tyranny" } custom_effect_tooltip = FIN_every_finnish_mio_tt every_military_industrial_organization = { limit = { OR = { is_military_industrial_organization = FIN_crichton_vulcan_organization is_military_industrial_organization = FIN_valtion_panssaritehdas_organization is_military_industrial_organization = FIN_valtion_lentokonetehdas_organization is_military_industrial_organization = FIN_valtion_kivaaritehdas_organization is_military_industrial_organization = FIN_valtion_tykkitehdas_organization is_military_industrial_organization = FIN_sisu_auto_organization } } add_mio_size = 1 add_mio_research_bonus = 0.1 } } } } focus = { id = FIN_a_new_course_for_kokoomus icon = GFX_focus_FIN_a_new_course_for_kokoomus prerequisite = { focus = FIN_expand_state_military_factories } mutually_exclusive = { focus = FIN_dreams_of_expansionism focus = FIN_strengthen_military_administration } x = -2 y = 1 relative_position_id = FIN_expand_state_military_factories cost = 10 available = { OR = { has_country_leader = { ruling_only = yes character = FIN_pehr_evind_svinhufvud } has_country_leader = { ruling_only = yes character = FIN_juho_kusti_paasikivi } } } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_INDUSTRY FOCUS_FILTER_STABILITY } completion_reward = { FIN_bop_low_increase_effect = yes add_political_power = 100 if = { #Only do it if he is the country leader (he can't come back) limit = { has_country_leader = { ruling_only = yes character = FIN_pehr_evind_svinhufvud } } FIN_pehr_evind_svinhufvud = { swap_country_leader_traits = { remove = member_of_the_suojeluskunta add = member_of_the_suojeluskunta_improved } add_country_leader_trait = kokoomus_policies } } FIN_juho_kusti_paasikivi = { swap_country_leader_traits = { remove = paasikivi_doctrine add = paasikivi_doctrine_improved } add_country_leader_trait = kokoomus_policies } hidden_effect = { mark_focus_tree_layout_dirty = yes } } } focus = { id = FIN_the_finnish_throne icon = GFX_focus_FIN_the_finnish_throne prerequisite = { focus = FIN_a_new_course_for_kokoomus } x = 0 y = 1 relative_position_id = FIN_a_new_course_for_kokoomus cost = 10 allow_branch = { has_completed_focus = FIN_a_new_course_for_kokoomus OR = { has_country_leader = { ruling_only = yes character = FIN_pehr_evind_svinhufvud } has_country_leader = { ruling_only = yes character = FIN_prince_wolfgang_von_hesse } } } available = { has_country_leader = { ruling_only = yes character = FIN_pehr_evind_svinhufvud } } search_filters = { FOCUS_FILTER_POLITICAL } completion_reward = { add_country_leader_role = { character = FIN_prince_wolfgang_von_hesse promote_leader = yes country_leader = { ideology = despotism expire = "1965.1.1.1" traits = { crown_prince_of_finland personal_agenda_von_hesse } } } set_party_name = { ideology = neutrality long_name = FIN_neutrality_party_monarchist_long name = FIN_neutrality_party_monarchist } add_popularity = { ideology = neutrality popularity = -0.3 } if = { limit = { has_completed_focus = FIN_greater_finland } set_cosmetic_tag = FIN_greater_kingdom_of_finland } else = { set_cosmetic_tag = FIN_kingdom_of_finland } } } focus = { id = FIN_strengthen_military_administration icon = GFX_focus_FIN_strengthen_military_administration prerequisite = { focus = FIN_expand_state_military_factories } mutually_exclusive = { focus = FIN_dreams_of_expansionism focus = FIN_a_new_course_for_kokoomus } x = 0 y = 1 relative_position_id = FIN_expand_state_military_factories cost = 10 available = { has_country_leader = { ruling_only = yes character = FIN_carl_mannerheim } } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_MILITARY_CHARACTER FOCUS_FILTER_ARMY_XP FOCUS_FILTER_AIR_XP FOCUS_FILTER_NAVY_XP FOCUS_FILTER_MANPOWER FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_STABILITY } completion_reward = { FIN_bop_low_increase_effect = yes army_experience = 50 air_experience = 25 navy_experience = 25 if = { limit = { has_dlc = "By Blood Alone" } every_country_division = { random_select_amount = 12 add_divisional_commander_xp = 650 hidden_effect = { add_history_entry = { key = FIN_strengthen_military_administration_history_entry subject = "Military Merit Award" allow = yes #(allow medal award) } } } } FIN_carl_mannerheim = { swap_country_leader_traits = { remove = sotamarsalkka add = sotamarsalkka_improved } } } } focus = { id = FIN_dreams_of_expansionism icon = GFX_focus_FIN_dreams_of_expansionism prerequisite = { focus = FIN_expand_state_military_factories } mutually_exclusive = { focus = FIN_strengthen_military_administration focus = FIN_a_new_course_for_kokoomus } x = 2 y = 1 relative_position_id = FIN_expand_state_military_factories cost = 10 available = { has_country_leader = { ruling_only = yes character = FIN_risto_ryti } } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER } completion_reward = { FIN_bop_low_increase_effect = yes add_political_power = 100 FIN_risto_ryti = { swap_country_leader_traits = { remove = white_liberal_leader add = white_liberal_leader_improved } add_country_leader_trait = expansionist_policies } } } focus = { id = FIN_reach_out_to_scandinavia icon = GFX_focus_generic_nordic_territory prerequisite = { focus = FIN_finnish_neutrality } x = 0 y = 1 relative_position_id = FIN_finnish_neutrality cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL } completion_reward = { every_other_country = { limit = { NORDIC_is_nordic = yes NOT = { has_war_with = ROOT } } add_opinion_modifier = { target = ROOT modifier = FIN_nordic_amity } ROOT = { add_opinion_modifier = { target = PREV modifier = FIN_nordic_amity } } } hidden_effect = { every_other_country = { limit = { NORDIC_is_nordic = yes NOT = { has_war_with = ROOT } } add_ai_strategy = { type = befriend id = ROOT value = 25 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 25 } } } } } } focus = { id = FIN_moderate_politics icon = GFX_goal_generic_neutrality_focus prerequisite = { focus = FIN_reach_out_to_scandinavia } x = 0 y = 1 relative_position_id = FIN_reach_out_to_scandinavia cost = 5 available = { has_government = neutrality } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER } completion_reward = { add_political_power = 50 FIN_bop_very_low_increase_effect = yes } } focus = { id = FIN_join_the_allies icon = GFX_focus_chi_british_cooperation prerequisite = { focus = FIN_moderate_politics } mutually_exclusive = { focus = FIN_northern_defense_front focus = FIN_the_lone_wolf } x = -2 y = 1 relative_position_id = FIN_moderate_politics cost = 5 bypass = { OR = { is_in_faction_with = ENG is_in_faction_with = FRA is_in_faction_with = USA } } available = { is_subject = no threat > 0.55 has_war = no democratic > 0.25 NOT = { has_government = communism } NOT = { has_government = fascism } OR = { ENG = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } FRA = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } USA = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } } } search_filters = {} completion_reward = { if = { limit = { ENG = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } NOT = { any_allied_country = { has_war_with = ROOT } } } } ENG = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } } else_if = { limit = { FRA = { is_faction_leader = yes has_government = democratic NOT = { has_war_with = ROOT } NOT = { any_allied_country = { has_war_with = ROOT } } } } FRA = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } } else = { USA = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } } } } focus = { id = FIN_northern_defense_front icon = GFX_focus_FIN_northern_defense_front prerequisite = { focus = FIN_moderate_politics } mutually_exclusive = { focus = FIN_join_the_allies focus = FIN_the_lone_wolf } x = 0 y = 1 relative_position_id = FIN_moderate_politics cost = 5 available = { is_subject = no threat > 0.5 has_war = no has_government = neutrality is_in_faction = no } bypass = { is_faction_leader = yes any_allied_country = { NORDIC_is_nordic = yes } } search_filters = {} completion_reward = { create_faction_from_template = { template = faction_template_NORDIC_alliance_democratic name = FIN_northern_defense_front_faction icon = GFX_faction_logo_generic_8 } IF = { limit = { has_dlc = "Arms Against Tyranny" } complete_national_focus = NORDIC_form_joint_alliance } custom_effect_tooltip = FIN_northern_defense_front_countries_tt every_other_country = { limit = { OR = { NORDIC_is_nordic = yes is_baltic_country = yes } NOT = { has_war_with = ROOT has_government = communism any_allied_country = { has_war_with = ROOT } } is_subject = no } if = { limit = { has_government = ROOT } add_ai_strategy = { type = befriend id = ROOT value = 50 } } tooltip = every_independent_nordic_and_baltic_country_tt hidden_effect = { if = { limit = { is_subject = no } } # AI more friendly add_ai_strategy = { type = befriend id = ROOT value = 40 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 40 } } country_event = { id = generic.5 hours = 2 } } custom_effect_tooltip = FIN_northern_defense_front_faction_tt } } } focus = { id = FIN_the_lone_wolf icon = GFX_focus_FIN_the_lone_wolf prerequisite = { focus = FIN_moderate_politics } mutually_exclusive = { focus = FIN_northern_defense_front focus = FIN_join_the_allies } x = 2 y = 1 relative_position_id = FIN_moderate_politics cost = 5 available = { is_subject = no is_in_faction = no threat > 0.5 neutrality > 0.85 NOT = { has_government = democratic } NOT = { has_government = communism } } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_MANPOWER } completion_reward = { add_political_power = 100 add_stability = 0.05 add_war_support = 0.05 add_ideas = FIN_the_lone_wolf } } focus = { id = FIN_military_aid icon = GFX_focus_generic_combined_arms prerequisite = { focus = FIN_join_the_allies } x = 0 y = 1 relative_position_id = FIN_join_the_allies cost = 5 available = { } search_filters = { FOCUS_FILTER_INTERNATIONAL_TRADE FOCUS_FILTER_ARMY_XP FOCUS_FILTER_NAVY_XP FOCUS_FILTER_AIR_XP } completion_reward = { army_experience = 35 navy_experience = 35 air_experience = 35 if = { limit = { has_dlc = "Arms Against Tyranny" } custom_effect_tooltip = FIN_military_aid_subsidies_tt if = { limit = { any_other_country = { is_in_faction_with = ROOT is_major = yes } } custom_effect_tooltip = generic_current_targets every_other_country = { limit = { is_in_faction_with = ROOT is_major = yes } } hidden_effect = { every_other_country = { limit = { is_in_faction_with = ROOT is_major = yes } display_individual_scopes = yes ROOT = { add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { PREV } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = medium_plane_airframe seller_tags = { PREV } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = light_tank_chassis seller_tags = { PREV } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = medium_tank_chassis seller_tags = { PREV } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = artillery_equipment seller_tags = { PREV } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = anti_air_equipment seller_tags = { PREV } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = anti_tank_equipment seller_tags = { PREV } } } } } } } custom_effect_tooltip = FIN_military_aid_equipment_tt if = { limit = { any_other_country = { is_in_faction_with = ROOT OR = { is_major = yes original_tag = SWE } } } custom_effect_tooltip = generic_current_targets #hidden_effect = { #Not great tooltip but better than nothing every_other_country = { limit = { is_in_faction_with = ROOT is_major = yes } ROOT = { if = { limit = { has_dlc = "No Step Back" } add_equipment_to_stockpile = { type = light_tank_chassis_1 amount = 50 producer = PREV } } else = { add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 50 producer = PREV } } if = { limit = { has_dlc = "By Blood Alone" } add_equipment_to_stockpile = { type = small_plane_airframe_1 amount = 50 producer = PREV } } else = { add_equipment_to_stockpile = { type = fighter_equipment_1 amount = 50 producer = PREV } } add_equipment_to_stockpile = { type = convoy_1 amount = 50 producer = PREV } add_equipment_to_stockpile = { type = artillery_equipment_1 amount = 50 producer = PREV } add_equipment_to_stockpile = { type = anti_air_equipment_1 amount = 25 producer = PREV } add_equipment_to_stockpile = { type = infantry_equipment_1 amount = 3000 producer = PREV } add_equipment_to_stockpile = { type = support_equipment_1 amount = 300 producer = PREV } } } if = { limit = { is_in_faction_with = SWE } if = { limit = { has_dlc = "No Step Back" } add_equipment_to_stockpile = { type = light_tank_chassis_1 amount = 25 producer = SWE } } else = { add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 25 producer = SWE } } if = { limit = { has_dlc = "By Blood Alone" } add_equipment_to_stockpile = { type = small_plane_airframe_0 amount = 25 producer = PREV } } else = { add_equipment_to_stockpile = { type = fighter_equipment_0 amount = 25 producer = PREV } } add_equipment_to_stockpile = { type = convoy_1 amount = 25 producer = PREV } add_equipment_to_stockpile = { type = artillery_equipment_1 amount = 25 producer = PREV } add_equipment_to_stockpile = { type = anti_air_equipment_1 amount = 25 producer = PREV } add_equipment_to_stockpile = { type = infantry_equipment_1 amount = 1500 producer = PREV } add_equipment_to_stockpile = { type = support_equipment_1 amount = 150 producer = PREV } } #} } } } focus = { id = FIN_mineral_wealth_development icon = GFX_goal_generic_construction2 prerequisite = { focus = FIN_military_aid } x = -1 y = 1 relative_position_id = FIN_military_aid cost = 5 available = { any_core_state = { state_is_fully_controlled_by_ROOT_or_subject = yes controller = { NORDIC_is_nordic = yes } OR = { has_resources_amount = { resource = steel amount > 0 } has_resources_amount = { resource = chromium amount > 0 } has_resources_amount = { resource = tungsten amount > 0 } has_resources_amount = { resource = aluminium amount > 0 } } } } search_filters = { FOCUS_FILTER_INDUSTRY } select_effect = { if = { limit = { is_in_faction = yes is_faction_leader = no } set_variable = { FIN_faction_leader_recieving_resource_rights = THIS.faction_leader } country_event = { id = AAT_finland_misc_events.03 hours = 6 random_hours = 3 } } } completion_reward = { custom_effect_tooltip = FIN_mineral_wealth_development_states_tt every_state = { limit = { state_is_fully_controlled_by_ROOT_or_subject = yes is_core_of = THIS.controller controller = { NORDIC_is_nordic = yes } OR = { has_resources_amount = { resource = steel amount > 0 } has_resources_amount = { resource = chromium amount > 0 } has_resources_amount = { resource = tungsten amount > 0 } has_resources_amount = { resource = aluminium amount > 0 } } } if = { limit = { has_resources_amount = { resource = steel amount > 0 } } add_resource = { type = steel amount = ROOT.FIN_mineral_wealth_development_resource_amount show_state_in_tooltip = no } } if = { limit = { has_resources_amount = { resource = chromium amount > 0 } } add_resource = { type = chromium amount = ROOT.FIN_mineral_wealth_development_resource_amount show_state_in_tooltip = no } } if = { limit = { has_resources_amount = { resource = tungsten amount > 0 } } add_resource = { type = tungsten amount = ROOT.FIN_mineral_wealth_development_resource_amount show_state_in_tooltip = no } } if = { limit = { has_resources_amount = { resource = aluminium amount > 0 } } add_resource = { type = aluminium amount = ROOT.FIN_mineral_wealth_development_resource_amount show_state_in_tooltip = no } } } #Some Aluminium in Helsinki 111 = { add_resource = { type = aluminium amount = ROOT.FIN_mineral_wealth_development_aluminium_amount show_state_in_tooltip = no } } if = { limit = { check_variable = { FIN_faction_leader_recieving_resource_rights = 0 compare = not_equals } var:FIN_faction_leader_recieving_resource_rights = { has_capitulated = no is_in_faction_with = ROOT } } country_event = AAT_finland_misc_events.04 } } } focus = { id = FIN_industrialize_the_region icon = GFX_goal_generic_construct_civilian prerequisite = { focus = FIN_northern_defense_front } x = 0 y = 1 relative_position_id = FIN_northern_defense_front cost = 10 available = { any_allied_country = { NORDIC_is_nordic = yes } } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = FIN_industrialize_the_region_building_tt if= { #For tooltip purposes limit = { any_allied_country = { NORDIC_is_nordic = yes } } every_country = { limit = { NORDIC_is_nordic = yes OR = { tag = ROOT is_in_faction_with = ROOT } } random_core_state = { limit = { is_fully_controlled_by = PREV free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } } } else = { random_core_state = { limit = { is_fully_controlled_by = PREV free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } } } } focus = { id = FIN_increase_military_investment icon = GFX_focus_generic_reorient_production prerequisite = { focus = FIN_military_aid focus = FIN_industrialize_the_region } x = 1 y = 1 relative_position_id = FIN_military_aid cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = FIN_increase_military_investment_building_tt if= { #For tooltip purposes limit = { any_allied_country = { NORDIC_is_nordic = yes } } every_country = { limit = { NORDIC_is_nordic = yes OR = { tag = ROOT is_in_faction_with = ROOT } } random_core_state = { limit = { is_fully_controlled_by = PREV free_building_slots = { building = arms_factory size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } hidden_effect = { if = { limit = { NOT = { original_tag = FIN } } country_event = { id = AAT_finland_misc_events.06 hours = 1 } } } } } else = { random_core_state = { limit = { is_fully_controlled_by = PREV free_building_slots = { building = arms_factory size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } } } } focus = { id = FIN_cooperation_with_germany icon = GFX_focus_chi_mission_to_germany prerequisite = { focus = FIN_the_lone_wolf } x = 0 y = 1 relative_position_id = FIN_the_lone_wolf cost = 5 bypass = { OR = { is_in_faction_with = GER is_subject_of = GER has_subject = SOV has_subject = GER NOT = { country_exists = GER } GER = { has_capitulated = yes } GER = { has_war_with = SOV } SOV = { exists = no } GER = { has_subject = SOV } AND = { has_war_with = SOV NOT = { has_country_flag = FIN_winter_war_ongoing_flag } } } } available = { is_subject = no NOT = { has_government = communism } NOT = { is_in_faction_with = SOV } NOT = { has_non_aggression_pact_with = SOV } NOT = { has_guaranteed = SOV } NOT = { has_country_flag = FIN_winter_war_ongoing_flag } GER = { NOT = { has_war_with = ROOT } NOT = { any_allied_country = { has_war_with = ROOT } } } } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INTERNATIONAL_TRADE } completion_reward = { if = { limit = { has_dlc = "Arms Against Tyranny" } custom_effect_tooltip = FIN_cooperation_with_germany_subsidies_tt hidden_effect = { add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { GER } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = medium_plane_airframe seller_tags = { GER } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = light_tank_chassis seller_tags = { GER } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = medium_tank_chassis seller_tags = { GER } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = artillery_equipment seller_tags = { GER } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = anti_air_equipment seller_tags = { GER } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = anti_tank_equipment seller_tags = { GER } } } } GER = { country_event = { id = AAT_finland_continuation_war.01 hours = 8 random_hours = 4 } } custom_effect_tooltip = if_they_accept_tt effect_tooltip = { FIN_pact_for_continuation_war_start = yes if = { limit = { has_dlc = "No Step Back" } add_equipment_to_stockpile = { type = light_tank_chassis_1 amount = 50 producer = GER } } else = { add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 50 producer = GER } } if = { limit = { has_dlc = "By Blood Alone" } add_equipment_to_stockpile = { type = small_plane_airframe_1 amount = 50 producer = GER } } else = { add_equipment_to_stockpile = { type = fighter_equipment_1 amount = 50 producer = GER } } add_equipment_to_stockpile = { type = convoy_1 amount = 50 producer = GER } add_equipment_to_stockpile = { type = artillery_equipment_1 amount = 50 producer = GER } add_equipment_to_stockpile = { type = anti_air_equipment_1 amount = 25 producer = GER } add_equipment_to_stockpile = { type = infantry_equipment_1 amount = 3000 producer = GER } add_equipment_to_stockpile = { type = support_equipment_1 amount = 300 producer = GER } } custom_effect_tooltip = FIN_pact_for_continuation_war_fin_focus_tt } } focus = { id = FIN_wartsila_engine_production icon = GFX_focus_FIN_wartsila_engine_production prerequisite = { focus = FIN_cooperation_with_germany } x = -1 y = 1 relative_position_id = FIN_cooperation_with_germany cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY FOCUS_FILTER_ARMY_XP FOCUS_FILTER_NAVY_XP FOCUS_FILTER_AIR_XP } completion_reward = { army_experience = 15 navy_experience = 15 air_experience = 15 random_core_state = { limit = { is_fully_controlled_by = ROOT free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } if = { limit = { has_dlc = "Arms Against Tyranny" } every_military_industrial_organization = { limit = { OR = { is_military_industrial_organization = FIN_crichton_vulcan_organization is_military_industrial_organization = FIN_valtion_panssaritehdas_organization is_military_industrial_organization = FIN_valtion_lentokonetehdas_organization is_military_industrial_organization = FIN_sisu_auto_organization } } add_mio_size = 1 unlock_mio_trait_tooltip = FIN_mio_trait_wartsila_engine_production } } } } focus = { id = FIN_german_military_advisors icon = GFX_focus_generic_military_mission prerequisite = { focus = FIN_cooperation_with_germany } x = 1 y = 1 relative_position_id = FIN_cooperation_with_germany cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_RESEARCH FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { army_experience = 50 add_command_power = 25 add_doctrine_cost_reduction = { name = FIN_german_military_advisors cost_reduction = 0.25 uses = 3 category = land_doctrine category = air_doctrine category = naval_doctrine } custom_effect_tooltip = available_military_high_command show_ideas_tooltip = GER_nikolaus_von_falkenhorst } } focus = { id = FIN_finnish_march_of_conquest icon = GFX_focus_generic_attack_finland prerequisite = { focus = FIN_wartsila_engine_production } prerequisite = { focus = FIN_german_military_advisors } x = 1 y = 1 relative_position_id = FIN_wartsila_engine_production cost = 10 available = { is_subject = no has_dynamic_modifier = { modifier = FIN_finnish_army } all_core_state = { is_controlled_by = ROOT } } search_filters = { FOCUS_FILTER_MANPOWER } completion_reward = { FIN_bop_low_increase_effect = yes custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_conscription_factor = 0.1 tooltip = conscription_factor_tt } add_timed_idea = { idea = FIN_finnish_march_of_conquest days = 730 } custom_effect_tooltip = FIN_heimosodat_dec_tt } } focus = { id = FIN_joint_scientific_program icon = GFX_focus_research prerequisite = { focus = FIN_industrialize_the_region focus = FIN_cooperation_with_germany focus = FIN_military_aid } x = 0 y = 2 relative_position_id = FIN_industrialize_the_region cost = 10 available = { OR = { is_in_faction = yes has_idea = FIN_the_lone_wolf } } search_filters = { FOCUS_FILTER_RESEARCH } completion_reward = { add_research_slot = 1 add_to_tech_sharing_group = FIN_joint_research_and_development_program custom_effect_tooltip = FIN_joint_scientific_program_tt if = { limit = { is_in_faction = yes } custom_effect_tooltip = generic_current_effects_new_lines every_other_country = { limit = { is_in_faction_with = ROOT } add_to_tech_sharing_group = FIN_joint_research_and_development_program hidden_effect = { country_event = { id = AAT_finland_misc_events.07 hours = 1 } } } } else_if = { #Used this instead of "else" for tooltip purposes limit = { has_idea = FIN_the_lone_wolf } custom_effect_tooltip = generic_current_effects_new_lines every_subject_country = { add_to_tech_sharing_group = FIN_joint_research_and_development_program hidden_effect = { country_event = { id = AAT_finland_misc_events.07 hours = 1 } } } } } } focus = { id = FIN_modernize_the_industry icon = GFX_focus_generic_modernize_industry prerequisite = { focus = FIN_joint_scientific_program } mutually_exclusive = { focus = FIN_modernize_the_army } x = -1 y = 1 relative_position_id = FIN_joint_scientific_program cost = 10 available = { has_tech = advanced_machine_tools } search_filters = { FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH } completion_reward = { add_tech_bonus = { name = FIN_modernize_the_industry bonus = 0.5 uses = 2 category = industry category = electronics } random_core_state = { limit = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } if = { limit = { has_idea = FIN_national_industry_expand } swap_ideas = { remove_idea = FIN_national_industry_expand add_idea = FIN_national_industry_final } } else_if = { #To prevent duplicated NS when debugging etc limit = { NOT = { has_idea = FIN_national_industry_modernize } } add_ideas = FIN_national_industry_modernize } if = { limit = { has_dlc = "Arms Against Tyranny" } custom_effect_tooltip = FIN_every_finnish_mio_tt every_military_industrial_organization = { limit = { OR = { is_military_industrial_organization = FIN_crichton_vulcan_organization is_military_industrial_organization = FIN_valtion_panssaritehdas_organization is_military_industrial_organization = FIN_valtion_lentokonetehdas_organization is_military_industrial_organization = FIN_valtion_kivaaritehdas_organization is_military_industrial_organization = FIN_valtion_tykkitehdas_organization is_military_industrial_organization = FIN_sisu_auto_organization } } complete_mio_trait = FIN_mio_trait_modernization_program } } } } focus = { id = FIN_modernize_the_army icon = GFX_goal_generic_axis_build_infantry prerequisite = { focus = FIN_joint_scientific_program } mutually_exclusive = { focus = FIN_modernize_the_industry } x = 1 y = 1 relative_position_id = FIN_joint_scientific_program cost = 10 available = { has_completed_focus = FIN_suomen_maavoimat } search_filters = { FOCUS_FILTER_RESEARCH FOCUS_FILTER_ARMY_XP FOCUS_FILTER_AIR_XP FOCUS_FILTER_NAVY_XP FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_special_forces_cap = 0.2 tooltip = special_forces_cap_tt } add_doctrine_cost_reduction = { name = FIN_modernize_the_army cost_reduction = 0.75 uses = 3 category = land_doctrine category = air_doctrine category = naval_doctrine } army_experience = 50 air_experience = 50 navy_experience = 50 custom_effect_tooltip = FIN_modernize_the_army_leaders_tt every_unit_leader = { limit = { skill > 3 } random_select_amount = 3 add_skill_level = 1 add_attack = 1 add_defense = 1 add_logistics = 1 } } } focus = { id = FIN_weapon_caches icon = GFX_focus_FIN_weapon_caches prerequisite = { focus = FIN_finnish_neutrality focus = FIN_right_wing_policies } x = 3 y = 0 relative_position_id = FIN_reach_out_to_scandinavia offset = { x = -25 y = 0 trigger = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = FIN_right_wing_policies } } cost = 5 available = { threat > 0.35 } search_filters = { FOCUS_FILTER_HISTORICAL } completion_reward = { unlock_decision_category_tooltip = FIN_national_defense_category } } focus = { id = FIN_national_unity icon = GFX_focus_EST_national_pride_in_finland prerequisite = { focus = FIN_finnish_neutrality focus = FIN_right_wing_policies } x = 3 y = 0 relative_position_id = FIN_weapon_caches cost = 10 available = { } search_filters = { FOCUS_FILTER_STABILITY FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_POLITICAL FOCUS_FILTER_INDUSTRY } completion_reward = { add_stability = 0.05 FIN_bop_medium_increase_effect = yes custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_vilho_annala } } focus = { id = FIN_viron_kansa icon = GFX_focus_FIN_viron_kansa prerequisite = { focus = FIN_national_unity } x = -1 y = 2 relative_position_id = FIN_national_unity cost = 10 bypass = { EST = { OR = { AND = { is_subject = yes NOT = { is_subject_of = ROOT } } has_capitulated = yes exists = no all_core_state = { OR = { is_claimed_by = ROOT is_owned_by = ROOT controller = { is_subject_of = ROOT } } } } } } available = { is_subject = no OR = { has_government = fascism threat > 0.7 } OR = { has_war = no surrender_progress < 0.05 } } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { EST = { country_event = { id = AAT_finland_diplomacy.01 hours = 4 random_hours = 2 } } custom_effect_tooltip = if_they_accept_tt custom_effect_tooltip = FIN_viron_kansa_positive_outcome_tt custom_effect_tooltip = if_they_refuse_tt event_option_tooltip = AAT_finland_diplomacy.04.b } } focus = { id = FIN_ambitions_in_the_south icon = GFX_focus_SOV_baltic_security prerequisite = { focus = FIN_viron_kansa } x = 0 y = 2 relative_position_id = FIN_viron_kansa cost = 10 bypass = { EST = { all_core_state = { OR = { is_claimed_by = ROOT is_owned_by = ROOT controller = { is_subject_of = ROOT } } } } LAT = { all_core_state = { OR = { is_claimed_by = ROOT is_owned_by = ROOT controller = { is_subject_of = ROOT } } } } LIT = { all_core_state = { OR = { is_claimed_by = ROOT is_owned_by = ROOT controller = { is_subject_of = ROOT } } } } } available = { is_subject = no OR = { NOT = { country_exists = EST } is_in_faction_with = EST has_subject = EST any_controlled_state = { is_core_of = EST } } OR = { has_war = no surrender_progress < 0.05 } } search_filters = {} completion_reward = { custom_effect_tooltip = FIN_ambitions_in_the_south_claims_tt custom_effect_tooltip = generic_current_effects every_state = { limit = { OR = { is_core_of = EST #In case previous focus was bypassed is_core_of = LAT is_core_of = LIT } NOT = { is_owned_by = ROOT } } add_claim_by = ROOT } } } focus = { id = FIN_arm_the_lotta_svard icon = GFX_focus_SWE_lottakoren prerequisite = { focus = FIN_national_unity } x = 0 y = 1 relative_position_id = FIN_national_unity cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_MANPOWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_POLITICAL FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { add_ideas = FIN_lotta_svard hidden_effect = { set_technology = { lotta_svard_tech = 1 popup = no } } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_hilja_riipinen show_unit_leaders_tooltip = FIN_fanni_luukkonen } } focus = { id = FIN_union_of_finnish_brothers_in_arms icon = GFX_focus_FIN_union_of_finnish_borthers_in_arms prerequisite = { focus = FIN_arm_the_lotta_svard } x = 0 y = 2 relative_position_id = FIN_arm_the_lotta_svard cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_MANPOWER FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { add_ideas = FIN_union_of_finnish_brothers_in_arms show_unit_leaders_tooltip = FIN_paavo_talvela } } focus = { id = FIN_parmis_devils icon = GFX_focus_FIN_parmis_devils prerequisite = { focus = FIN_union_of_finnish_brothers_in_arms } x = 1 y = 1 relative_position_id = FIN_union_of_finnish_brothers_in_arms cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_MANPOWER FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { #Spawn Penal divisions custom_effect_tooltip = FIN_parmis_devils_spawn_tt hidden_effect = { #set_technology = { penal_infantry = 1 popup = no } #Note: Granting tech will make the penal battalion available for any template division_template = { name = "Rangaistusdivisioona" division_names_group = FIN_PEN_01 is_locked = yes force_allow_recruiting = yes override_model = FIN_infantry_alt_1_entity division_cap = 6 regiments = { penal_battalion = { x = 0 y = 0 } penal_battalion = { x = 0 y = 1 } penal_battalion = { x = 0 y = 2 } penal_battalion = { x = 1 y = 0 } penal_battalion = { x = 1 y = 1 } penal_battalion = { x = 1 y = 2 } penal_battalion = { x = 2 y = 0 } penal_battalion = { x = 2 y = 1 } penal_battalion = { x = 2 y = 2 } } support = { artillery = { x = 0 y = 0 } } } capital_scope = { create_unit = { division = "division_template = \"Rangaistusdivisioona\" start_experience_factor = 1 start_equipment_factor = 1.0" officer = { name = FIN_nikke_parmi portraits = { army = { large = GFX_portrait_FIN_nikke_parmi small = GFX_portrait_FIN_nikke_parmi_small } } } owner = ROOT } } if = { limit = { has_dlc = "By Blood Alone" } random_country_division = { limit = { division_has_battalion_in_template = penal_battalion } add_divisional_commander_xp = 2300 add_history_entry = { key = FIN_parmis_devils subject = "Pärmi's Devils" allow = no #(allow medal award) } } } } } } focus = { id = FIN_militarized_society icon = GFX_focus_generic_limited_social_mobilization prerequisite = { focus = FIN_union_of_finnish_brothers_in_arms } x = 0 y = 2 relative_position_id = FIN_union_of_finnish_brothers_in_arms cost = 10 available = { OR = { has_idea = all_adults_serve has_idea = scraping_the_barrel } } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { add_ideas = FIN_militarized_society hidden_effect = { if = { limit = { has_dlc = "No Step Back" has_completed_focus = FIN_national_armor_focus } mark_focus_tree_layout_dirty = yes } } } } focus = { id = FIN_a_cry_for_help icon = GFX_focus_FIN_a_cry_for_help prerequisite = { focus = FIN_national_unity } mutually_exclusive = { focus = FIN_seek_german_protection } x = 1 y = 2 relative_position_id = FIN_national_unity cost = 5 available = { custom_trigger_tooltip = { tooltip = FIN_in_a_defensive_war_against_a_major_tt any_enemy_country = { is_major = yes ROOT = { has_defensive_war_with = PREV } } } } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_MANPOWER } completion_reward = { if = { #Just for tooltip purposes limit = { has_war = no country_exists = SWE NOT = { has_war_with = SWE any_enemy_country = { is_in_faction_with = SWE } } SWE = { is_subject = no } } effect_tooltip = { country_event = AAT_finland_winter_war.01 } } else_if = { limit = { country_exists = SWE NOT = { has_war_with = SWE any_enemy_country = { is_in_faction_with = SWE } } SWE = { is_subject = no } } country_event = AAT_finland_winter_war.01 } add_timed_idea = { idea = FIN_international_volunteers days = 365 } } } focus = { id = FIN_greater_finland icon = GFX_focus_FIN_greater_finland prerequisite = { focus = FIN_finnish_march_of_conquest focus = FIN_militarized_society focus = FIN_keepers_of_the_north } x = 0 y = 1 relative_position_id = FIN_militarized_society cost = 10 available = { is_subject = no all_core_state = { is_controlled_by = ROOT } controls_state = 213 #MURMANSK controls_state = 215 #ONEGA controls_state = 216 #OLONETS } search_filters = {} completion_reward = { FIN_bop_low_increase_effect = yes 213 = { #MURMANSK add_core_of = ROOT } 215 = { #ONEGA add_core_of = ROOT } 216 = { #OLONETS add_core_of = ROOT } 666 = { #NORRBOTTEN add_core_of = ROOT } 925 = { #FINNMARK add_core_of = ROOT } if = { limit = { has_country_leader = { ruling_only = yes character = FIN_prince_wolfgang_von_hesse } } set_cosmetic_tag = FIN_greater_kingdom_of_finland } else = { set_cosmetic_tag = FIN_greater_finland } add_state_claim = 208 #LUGA add_state_claim = 195 #LENINGRAD add_state_claim = 244 #VOLKHOV add_state_claim = 264 #TIKHVIN } } ######## ### ###### ###### #### ###### ######## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ###### ## ## ###### ## ## ###### ## ## ######### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ###### ###### #### ###### ## focus = { id = FIN_right_wing_policies icon = GFX_focus_FIN_right_wing_policies allow_branch = { has_dlc = "Arms Against Tyranny" if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = FIN_finnish_neutrality } NOT = { has_completed_focus = FIN_suomalainen_sosialismi } } } x = 13 y = 0 relative_position_id = FIN_finnish_neutrality offset = { x = -25 y = 0 trigger = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = FIN_right_wing_policies } } mutually_exclusive = { focus = FIN_finnish_neutrality focus = FIN_suomalainen_sosialismi } cost = 5 available = { is_subject = no } search_filters = { FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_WAR_SUPPORT } completion_reward = { FIN_bop_medium_decrease_effect = yes add_political_power = 75 add_war_support = 0.05 add_stability = -0.05 custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_paavo_susitaival hidden_effect = { # SWAP ADVISOR TRAITS TO HIDE TOOLTIP ABOUT DECISIONS FIN_karl_august_fagerholm = { if = { limit = { has_trait = FIN_democratic_reformer_fagerholm } add_trait = { trait = democratic_reformer slot = political_advisor } remove_trait = { trait = FIN_democratic_reformer_fagerholm slot = political_advisor } } } FIN_vaino_tanner = { if = { limit = { has_trait = FIN_humble_appeaser_tanner } add_trait = { trait = appeaser slot = political_advisor } remove_trait = { trait = FIN_humble_appeaser_tanner slot = political_advisor } } } FIN_miina_sillanpaa = { if = { limit = { has_trait = FIN_champion_of_equality_sillanpaa } add_trait = { trait = champion_of_equality slot = political_advisor } remove_trait = { trait = FIN_champion_of_equality_sillanpaa slot = political_advisor } } } # SWAP ADVISOR TRAITS TO HIDE TOOLTIP ABOUT DECISIONS FIN_yrjo_leino = { if = { limit = { has_trait = FIN_communist_revolutionary_leino } add_trait = { trait = communist_revolutionary slot = political_advisor } remove_trait = { trait = FIN_communist_revolutionary_leino slot = political_advisor } } } FIN_aarne_saarinen = { if = { limit = { has_trait = FIN_technocrat_saarinen } add_trait = { trait = technocrat slot = political_advisor } remove_trait = { trait = FIN_technocrat_saarinen slot = political_advisor } } } FIN_otto_wille_kuusinen = { if = { limit = { has_trait = FIN_patriotic_socialist_kuusinen } add_trait = { trait = patriotic_socialist slot = political_advisor } remove_trait = { trait = FIN_patriotic_socialist_kuusinen slot = political_advisor } } } } hidden_effect = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } mark_focus_tree_layout_dirty = yes } } } } focus = { id = FIN_discredit_the_democratic_system icon = GFX_focus_usa_voter_registration_act prerequisite = { focus = FIN_right_wing_policies } mutually_exclusive = { focus = FIN_prepare_a_military_coup } x = -1 y = 1 relative_position_id = FIN_right_wing_policies cost = 5 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER } completion_reward = { add_political_power = 120 add_stability = -0.05 FIN_bop_medium_decrease_effect = yes add_popularity = { ideology = fascism popularity = 0.1 } } } focus = { id = FIN_prepare_a_military_coup icon = GFX_goal_generic_more_territorial_claims prerequisite = { focus = FIN_right_wing_policies } mutually_exclusive = { focus = FIN_discredit_the_democratic_system } x = 1 y = 1 relative_position_id = FIN_right_wing_policies cost = 5 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER } completion_reward = { add_political_power = 50 FIN_bop_low_decrease_effect = yes add_popularity = { ideology = fascism popularity = 0.05 } unlock_decision_category_tooltip = FIN_coup_preparations } } focus = { id = FIN_a_fascist_regime icon = GFX_focus_generic_strike_at_democracy1 prerequisite = { focus = FIN_discredit_the_democratic_system focus = FIN_prepare_a_military_coup } x = 1 y = 1 relative_position_id = FIN_discredit_the_democratic_system cost = 5 bypass = { has_government = fascism } available = { is_subject = no OR = { has_completed_focus = FIN_prepare_a_military_coup AND = { has_completed_focus = FIN_discredit_the_democratic_system fascism > 0.6 has_stability > 0.6 } } } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_WAR_SUPPORT } completion_reward = { add_political_power = 100 add_popularity = { ideology = fascism popularity = 0.1 } add_dynamic_modifier = { modifier = FIN_fascist_regime } # Save Sisu NS version to apply to the breakaway country if = { limit = { has_idea = FIN_sisu_1 } set_variable = { FIN_sisu_version = 1 } } else_if = { limit = { has_idea = FIN_sisu_2 } set_variable = { FIN_sisu_version = 2 } } else_if = { limit = { has_idea = FIN_sisu_3 } set_variable = { FIN_sisu_version = 3 } } else_if = { limit = { has_idea = FIN_sisu_4 } set_variable = { FIN_sisu_version = 4 } } else = { set_variable = { FIN_sisu_version = 5 } } if = { limit = { has_completed_focus = FIN_prepare_a_military_coup } #Set basic size based on fascist support if = { # 40-49% Support limit = { fascism < 0.5 } set_variable = { FIN_fascist_cw_size_of_breakaway_country = 0.7 } } else_if = { # 50-59% Support limit = { fascism < 0.6 } set_variable = { FIN_fascist_cw_size_of_breakaway_country = 0.6 } } else_if = { # 60-69% Support limit = { fascism < 0.7 } set_variable = { FIN_fascist_cw_size_of_breakaway_country = 0.5 } } else = { # 70%+ Support set_variable = { FIN_fascist_cw_size_of_breakaway_country = 0.4 } } #Add size based on decisions completed if = { #Popular Support limit = { has_country_flag = FIN_cw_military_secured_flag } subtract_from_variable = { FIN_fascist_cw_size_of_breakaway_country = 0.05 } } if = { #Construction Workers limit = { has_country_flag = FIN_cw_support_from_middle_class_flag } subtract_from_variable = { FIN_fascist_cw_size_of_breakaway_country = 0.1 } } start_civil_war = { ideology = neutrality ruling_party = fascism size = FIN_fascist_cw_size_of_breakaway_country keep_all_characters = yes #Keep all characters on target country side - will ignore all following keep_ parameters - default value = no #capital = # Optional. Capital of Revolt country #states = {} # States that go to the revolter. Use "all" to include all states. #states_filter = { } # Optional. States that go to the revolter. Filtering trigger on the states scripted to go to the revolter. #keep_all_characters = no #Optional. Keep all characters on target country side - will ignore all following keep_ parameters - default value = no #keep_unit_leaders = { } # Optional. specify ID of unit leaders that remain with the original country #keep_unit_leaders_trigger = { always = yes } # Optional. Trigger for unit leaders to remain with the original country #keep_political_leader = no # optional, default is no; If yes, the party leader of the revolting ideology will not join the revolter as its leader. #keep_political_party_members = no # Optional, default is no; If yes, it will keep the non main leaders of the party leaders in original country ROOT = { every_character = { limit = { has_character_flag = FIN_anti_fascist_character_flag } set_nationality = PREV.PREV } } retire_ideology_leader = neutrality # SET UP COUNTRY LEADERS if = { limit = { has_character = FIN_kyosti_kallio } promote_character = FIN_kyosti_kallio } } #custom_effect_tooltip = FIN_the_fascist_side_in_cw_tt #Not necessary hidden_effect = { random_other_country = { limit = { original_tag = FIN NOT = { has_government = fascism } } if = { limit = { check_variable = { ROOT.FIN_sisu_version = 1 } } add_ideas = FIN_sisu_1 } else_if = { limit = { check_variable = { ROOT.FIN_sisu_version = 2 } } add_ideas = FIN_sisu_2 } else_if = { limit = { check_variable = { ROOT.FIN_sisu_version = 3 } } add_ideas = FIN_sisu_3 } else_if = { limit = { check_variable = { ROOT.FIN_sisu_version = 4 } } add_ideas = FIN_sisu_4 } else = { add_ideas = FIN_sisu_5 } } } # ADD STUFF TO PLAYER'S COUNTRY if = { #German Equipment - Add equipment limit = { ROOT = { has_country_flag = FIN_cw_purchase_german_equipment_flag } } FIN_purchase_german_equipment_for_cw = yes } } else_if = { limit = { has_completed_focus = FIN_discredit_the_democratic_system } if = { limit = { NOT = { has_government = fascism } } set_politics = { ruling_party = fascism elections_allowed = no } } } else = { custom_effect_tooltip = FIN_a_fascist_regime_no_focus_discredit_tt effect_tooltip = { set_politics = { ruling_party = fascism elections_allowed = no } } custom_effect_tooltip = FIN_a_fascist_regime_no_focus_coup_tt effect_tooltip = { start_civil_war = { ideology = neutrality ruling_party = fascism } } } hidden_effect = { FIN_initiate_balance_of_power_effect = yes } } } focus = { id = FIN_seek_german_protection icon = GFX_focus_chi_mission_to_germany prerequisite = { focus = FIN_a_fascist_regime } mutually_exclusive = { focus = FIN_a_cry_for_help } x = -4 y = 1 relative_position_id = FIN_a_fascist_regime cost = 10 available = { is_subject = no GER = { OR = { has_government = fascism has_government = neutrality } } if = { limit = { has_country_flag = FIN_germans_rejected_to_protect_finland_flag } NOT = { has_country_flag = FIN_germans_rejected_to_protect_finland_flag } } } search_filters = {} completion_reward = { GER = { country_event = { id = AAT_finland_diplomacy.26 hours = 6 random_hours = 2 } } custom_effect_tooltip = if_they_accept_tt effect_tooltip = { give_military_access = GER diplomatic_relation = { country = GER relation = docking_rights active = yes } diplomatic_relation = { country = GER relation = non_aggression_pact active = yes } GER = { give_guarantee = ROOT } give_resource_rights = { receiver = GER state = 148 } } } } focus = { id = FIN_join_axis icon = GFX_goal_support_fascism prerequisite = { focus = FIN_a_fascist_regime } mutually_exclusive = { focus = FIN_finnish_supremacy_in_the_north } x = -2 y = 1 relative_position_id = FIN_a_fascist_regime cost = 5 ai_will_do = { base = 1 modifier = { factor = 100 FIN_is_fascist_ai = yes OR = { GER = { is_faction_leader = yes has_government = fascism NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } ITA = { is_faction_leader = yes has_government = fascism NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } } } } bypass = { is_subject = no has_government = fascism is_in_faction = yes #More generic instead of checking for GER or ITA since there can be scenarios in which FIN goes with someone else like JAP, fascist ENG, etc. } available = { is_subject = no has_war = no has_government = fascism OR = { GER = { is_faction_leader = yes has_government = fascism NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } ITA = { is_faction_leader = yes has_government = fascism NOT = { has_war_with = ROOT } all_allied_country = { NOT = { has_war_with = ROOT } } } } } search_filters = {} completion_reward = { if = { limit = { GER = { is_faction_leader = yes has_government = fascism NOT = { has_war_with = ROOT } NOT = { any_allied_country = { has_war_with = ROOT } } } } GER = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } } else_if = { limit = { ITA = { is_faction_leader = yes has_government = fascism NOT = { has_war_with = ROOT } NOT = { any_allied_country = { has_war_with = ROOT } } } } ITA = { add_ai_strategy = { type = befriend id = ROOT value = 100 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 100 } } country_event = { id = generic.2 hours = 4 random_hours = 4 } if = { limit = { has_war = yes } ROOT = { add_war_support = 0.1 } } } } } } focus = { id = FIN_industrial_cooperation icon = GFX_focus_generic_modernize_industry prerequisite = { focus = FIN_join_axis } x = -1 y = 1 relative_position_id = FIN_join_axis cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH } completion_reward = { custom_effect_tooltip = FIN_modify_fascist_regime_ns_intro add_to_variable = { FIN_fasicst_regime_consumer_goods_factor = -0.1 tooltip = consumer_goods_factor_tt } random_core_state = { limit = { is_controlled_by = ROOT free_building_slots = { building = arms_factory size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } add_tech_bonus = { name = FIN_industrial_cooperation bonus = 0.5 uses = 1 category = cat_production } add_tech_bonus = { name = FIN_industrial_cooperation bonus = 0.5 uses = 1 category = construction_tech } } } focus = { id = FIN_military_research icon = GFX_focus_chi_army_reform prerequisite = { focus = FIN_join_axis } x = 1 y = 1 relative_position_id = FIN_join_axis cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH } completion_reward = { custom_effect_tooltip = FIN_modify_fascist_regime_ns_intro add_to_variable = { FIN_fascist_regime_military_industrial_organization_research_bonus = 0.1 tooltip = military_industrial_organization_research_bonus_tt } add_doctrine_cost_reduction = { name = FIN_military_research cost_reduction = 0.75 uses = 1 category = land_doctrine } add_doctrine_cost_reduction = { name = FIN_military_research cost_reduction = 0.75 uses = 1 category = air_doctrine } add_doctrine_cost_reduction = { name = FIN_military_research cost_reduction = 0.75 uses = 1 category = naval_doctrine } add_tech_bonus = { name = FIN_military_research bonus = 0.5 uses = 2 category = infantry_weapons category = motorized_equipment category = light_air category = dd_tech } } } focus = { id = FIN_bring_foreign_armor_experts icon = GFX_goal_generic_army_tanks prerequisite = { focus = FIN_military_research } prerequisite = { focus = FIN_industrial_cooperation } x = -1 y = 1 relative_position_id = FIN_military_research cost = 10 available = { if = { limit = { has_dlc = "No Step Back" } has_tech = basic_light_tank_chassis } } search_filters = { FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_INTERNATIONAL_TRADE } completion_reward = { mio:FIN_valtion_panssaritehdas_organization = { add_mio_size = 2 } add_tech_bonus = { name = FIN_bring_foreign_armor_experts bonus = 0.5 uses = 2 category = armor } if = { limit = { has_dlc = "No Step Back" } custom_effect_tooltip = FIN_bring_foreign_armor_experts_variants_tt #GERMAN TANKS if = { limit = { is_in_faction_with = GER } create_equipment_variant = { #Copy of Panzer I Ausf. A variant in German history file name = "Panzer I Ausf. A" type = light_tank_chassis_1 parent_version = 0 allow_without_tech = yes # Tooltip purposes, tech is required anyways modules = { main_armament_slot = tank_heavy_machine_gun turret_type_slot = tank_light_one_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = tank_radio_1 } upgrades = { tank_nsb_engine_upgrade = 5 tank_nsb_armor_upgrade = 1 } icon = "GFX_GER_basic_light_tank_medium" model = "GER_light_armor_0_entity" } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "Panzer I Ausf. A" amount = 100 producer = GER } } #ITALIAN TANKS if = { limit = { is_in_faction_with = ITA } create_equipment_variant = { #Copy of L3/35 variant in Italian history file name = "L3/35" type = light_tank_chassis_1 parent_version = 0 allow_without_tech = yes # Tooltip purposes, tech is required anyways modules = { main_armament_slot = tank_heavy_machine_gun turret_type_slot = tank_light_fixed_superstructure_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine } upgrades = { tank_nsb_engine_upgrade = 1 tank_nsb_armor_upgrade = 1 } icon = "GFX_ITA_basic_light_tank_medium" model = "ITA_light_armor_entity" } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "L3/35" amount = 50 producer = ITA } } #JAPANESE TANKS IF = { limit = { is_in_faction_with = JAP } create_equipment_variant = { #Copy of Light Tank Type 94 Tankette variant in Japanese history file name = "Type 94 Tankette" type = light_tank_chassis_1 parent_version = 0 allow_without_tech = yes # Tooltip purposes, tech is required anyways modules = { main_armament_slot = tank_heavy_machine_gun turret_type_slot = tank_light_one_man_tank_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = empty special_type_slot_2 = empty special_type_slot_3 = empty special_type_slot_4 = empty } upgrades = { tank_nsb_engine_upgrade = 0 tank_nsb_armor_upgrade = 0 } icon = "GFX_JAP_improved_light_tank_medium" model = "JAP_light_armor_entity" } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "Type 94 Tankette" amount = 50 producer = JAP } } #FRENCH TANKS if = { limit = { is_in_faction_with = FRA } create_equipment_variant = { #Copy of H-35 variant in French history file name = "H-35" #due to similar design this also covers R-35 type = light_tank_chassis_1 parent_version = 0 allow_without_tech = yes # Tooltip purposes, tech is required anyways modules = { main_armament_slot = tank_small_cannon turret_type_slot = tank_light_one_man_tank_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_cast_armor engine_type_slot = tank_gasoline_engine } upgrades = { tank_nsb_engine_upgrade = 2 tank_nsb_armor_upgrade = 4 } icon = "GFX_FRA_basic_light_tank_medium" model = "FRA_light_armor_0_entity" } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "H-35" amount = 50 producer = FRA } } #BRITISH TANKS if = { limit = { is_in_faction_with = ENG } create_equipment_variant = { #Copy of Light Tank Mk. IV variant in British history file name = "Light Tank Mk. IV" type = light_tank_chassis_1 parent_version = 0 allow_without_tech = yes # Tooltip purposes, tech is required anyways modules = { main_armament_slot = tank_heavy_machine_gun turret_type_slot = tank_light_one_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine } upgrades = { tank_nsb_engine_upgrade = 2 tank_nsb_armor_upgrade = 1 } icon = "GFX_ENG_basic_light_tank_medium" model = "commonwealth_gfx_light_armor_entity" } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "H-35" amount = 50 producer = ENG } } #USA TANKS if = { limit = { is_in_faction_with = USA } create_equipment_variant = { #Copy of Light Tank M2A2 variant in USA history file name = "M2A2" type = light_tank_chassis_1 parent_version = 1 allow_without_tech = yes # Tooltip purposes, tech is required anyways modules = { main_armament_slot = tank_heavy_machine_gun turret_type_slot = tank_light_one_man_tank_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = secondary_turret_hmg special_type_slot_2 = tank_radio_1 } upgrades = { tank_nsb_armor_upgrade = 2 tank_nsb_engine_upgrade = 5 } icon = "GFX_USA_basic_light_tank_medium" model = "USA_light_armor_0_entity" } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "M2A2" amount = 50 producer = USA } } #RUSSIAN TANKS if = { limit = { is_in_faction_with = SOV } create_equipment_variant = { #Copy of Light Tank BT-5 variant in Soviet history file name = "BT-5" type = light_tank_chassis_1 parent_version = 1 allow_without_tech = yes # Tooltip purposes, tech is required anyways modules = { main_armament_slot = tank_small_cannon_2 turret_type_slot = tank_light_one_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine } upgrades = { tank_nsb_engine_upgrade = 8 tank_nsb_armor_upgrade = 1 } icon = "GFX_SOV_improved_light_tank_medium" #More similar to BT-7 than to T-26 model = "SOV_light_armor_entity" #More similar to BT-7 than to T-26 } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "BT-5" amount = 50 producer = SOV } } #SWEDISH TANKS if = { limit = { is_in_faction_with = SWE } create_equipment_variant = { #Copy of Light Tank Stridsvagn m/31 variant in Swedish history file name = "Stridsvagn m/31" type = light_tank_chassis_1 parent_version = 0 allow_without_tech = yes # Tooltip purposes, tech is required anyways modules = { main_armament_slot = tank_small_cannon turret_type_slot = tank_light_two_man_tank_turret suspension_type_slot = tank_torsion_bar_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = tank_radio_1 } upgrades = { tank_nsb_armor_upgrade = 2 tank_nsb_engine_upgrade = 3 } icon = "GFX_SWE_basic_light_tank_alt_medium" model = "SWE_light_armor_0_entity" } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "Stridsvagn m/31" amount = 50 producer = SWE } } } } } focus = { id = FIN_finnish_supremacy_in_the_north icon = GFX_focus_FIN_finnish_supremacy_in_the_north prerequisite = { focus = FIN_a_fascist_regime } mutually_exclusive = { focus = FIN_join_axis } x = 2 y = 1 relative_position_id = FIN_a_fascist_regime cost = 10 ai_will_do = { base = 40 #High base AI weight so if the Axis faction focus is unavailable, AI prioritizes this one } available = { has_civil_war = no is_subject = no } bypass = { has_government = fascism is_faction_leader = yes } search_filters = {} completion_reward = { create_faction_from_template = { template = faction_template_european_dominance name = FIN_finnish_supremacy_league icon = GFX_faction_logo_generic_8 } custom_effect_tooltip = FIN_finnish_supremacy_in_the_north_invite_to_faction_tt if = { limit = { any_country = { OR = { is_baltic_country = yes NORDIC_is_nordic = yes tag = SMI } has_government = fascism NOT = { has_war_with = ROOT } is_in_faction = no is_subject = no } } custom_effect_tooltip = generic_current_targets } every_other_country = { limit = { OR = { is_baltic_country = yes NORDIC_is_nordic = yes tag = SMI } has_government = fascism NOT = { has_war_with = ROOT } is_in_faction = no is_subject = no } hidden_effect = { # AI more friendly add_ai_strategy = { type = befriend id = ROOT value = 40 } ROOT = { add_ai_strategy = { type = befriend id = PREV value = 40 } } country_event = { id = generic.5 hours = 2 } } } custom_effect_tooltip = FIN_finnish_supremacy_in_the_north_influence_tt custom_effect_tooltip = FIN_finnish_supremacy_in_the_north_unlock_decisions_tt if = { limit = { any_country = { OR = { is_baltic_country = yes NORDIC_is_nordic = yes tag = SMI } NOT = { has_government = fascism } NOT = { has_war_with = ROOT } is_in_faction = no is_subject = no } } custom_effect_tooltip = generic_current_effects every_other_country = { limit = { OR = { is_baltic_country = yes NORDIC_is_nordic = yes tag = SMI } NOT = { has_government = fascism } NOT = { has_war_with = ROOT } is_in_faction = no is_subject = no } add_timed_idea = { idea = fascist_influence days = 1095 } country_event = { id = generic.1 } custom_effect_tooltip = FIN_finnish_supremacy_in_the_north_unlock_decisions_country_specific_tt hidden_effect = { if = { limit = { is_baltic_country = yes } ROOT = { activate_targeted_decision = { target = PREV decision = FIN_pressure_country_government_baltic } activate_targeted_decision = { target = PREV decision = FIN_promote_ideology_rallies_baltic } } } else = { ROOT = { activate_targeted_decision = { target = PREV decision = FIN_pressure_country_government_nordic } activate_targeted_decision = { target = PREV decision = FIN_promote_ideology_rallies_nordic } } } } } } } } focus = { id = FIN_finnish_legion_of_honor icon = GFX_focus_generic_fascist_troops prerequisite = { focus = FIN_finnish_supremacy_in_the_north } x = -1 y = 1 relative_position_id = FIN_finnish_supremacy_in_the_north cost = 10 available = { } search_filters = { FOCUS_FILTER_ARMY_XP FOCUS_FILTER_MANPOWER } completion_reward = { custom_effect_tooltip = FIN_modify_fascist_regime_ns_intro add_to_variable = { FIN_fascist_regime_army_org_factor = 0.05 tooltip = army_org_factor_tt } add_to_variable = { FIN_fascist_regime_max_command_power = 25 tooltip = max_command_power_tt } army_experience = 70 if = { limit = { has_completed_focus = FIN_winter_warfare has_completed_focus = FIN_long_range_patrols } division_template = { name = "Kunnialegioona" division_names_group = FIN_INF_02 template_counter = 73 override_model = FIN_infantry_alt_0_entity regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 1 y = 0 } infantry = { x = 1 y = 1 } infantry = { x = 2 y = 0 } infantry = { x = 2 y = 1 } artillery_brigade = { x = 3 y = 0 } artillery_brigade = { x = 3 y = 0 } } support = { engineer = { x = 0 y = 0 } artillery = { x = 0 y = 1 } long_range_patrol_support = { x = 0 y = 2 } winter_logistics_support = { x = 0 y = 3 } } } } else_if = { limit = { has_completed_focus = FIN_winter_warfare } division_template = { name = "Kunnialegioona" division_names_group = FIN_INF_02 template_counter = 73 override_model = FIN_infantry_alt_0_entity regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 1 y = 0 } infantry = { x = 1 y = 1 } infantry = { x = 2 y = 0 } infantry = { x = 2 y = 1 } artillery_brigade = { x = 3 y = 0 } artillery_brigade = { x = 3 y = 1 } } support = { engineer = { x = 0 y = 0 } artillery = { x = 0 y = 1 } recon = { x = 0 y = 2 } winter_logistics_support = { x = 0 y = 3 } } } } else_if = { limit = { has_completed_focus = FIN_long_range_patrols } division_template = { name = "Kunnialegioona" division_names_group = FIN_INF_02 template_counter = 73 override_model = FIN_infantry_alt_0_entity regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 1 y = 0 } infantry = { x = 1 y = 1 } infantry = { x = 2 y = 0 } infantry = { x = 2 y = 1 } artillery_brigade = { x = 3 y = 0 } artillery_brigade = { x = 3 y = 1 } } support = { engineer = { x = 0 y = 0 } artillery = { x = 0 y = 1 } long_range_patrol_support = { x = 0 y = 2 } } } } else = { division_template = { name = "Kunnialegioona" division_names_group = FIN_INF_02 template_counter = 73 override_model = FIN_infantry_alt_0_entity regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 1 y = 0 } infantry = { x = 1 y = 1 } infantry = { x = 2 y = 0 } infantry = { x = 2 y = 1 } artillery_brigade = { x = 3 y = 0 } artillery_brigade = { x = 3 y = 1 } } support = { engineer = { x = 0 y = 0 } artillery = { x = 0 y = 1 } recon = { x = 0 y = 2 } } } } capital_scope = { create_unit = { division = "division_template = \"Kunnialegioona\" start_experience_factor = 0.8 start_equipment_factor = 1.0" owner = ROOT count = 2 } } } } focus = { id = FIN_tactical_wargaming_department icon = GFX_goal_generic_position_armies prerequisite = { focus = FIN_finnish_supremacy_in_the_north } x = 1 y = 1 relative_position_id = FIN_finnish_supremacy_in_the_north cost = 10 available = { } search_filters = { FOCUS_FILTER_ARMY_XP } completion_reward = { custom_effect_tooltip = FIN_tactical_wargaming_department_every_army_leader_tt hidden_effect = { every_army_leader = { include_invisible = yes add_planning = 1 } } add_ideas = FIN_tactical_wargaming_department } } focus = { id = FIN_advanced_jaeger_training_program icon = GFX_goal_generic_military_deal prerequisite = { focus = FIN_military_research focus = FIN_finnish_legion_of_honor } x = 1 y = 1 relative_position_id = FIN_military_research cost = 10 available = { } search_filters = { FOCUS_FILTER_RESEARCH FOCUS_FILTER_ARMY_XP FOCUS_FILTER_NAVY_XP FOCUS_FILTER_AIR_XP } completion_reward = { custom_effect_tooltip = FIN_modify_fascist_regime_ns_intro add_to_variable = { FIN_fascist_regime_special_forces_cap = 0.3 tooltip = special_forces_cap_tt } add_to_variable = { FIN_fascist_regime_special_forces_no_supply_grace = 24 tooltip = special_forces_no_supply_grace_tt } add_to_variable = { FIN_fascist_regime_special_forces_out_of_supply_factor = -0.15 tooltip = special_forces_out_of_supply_factor_tt } add_to_variable = { FIN_fascist_regime_special_forces_attack_factor = 0.10 tooltip = special_forces_attack_factor_tt } add_to_variable = { FIN_fascist_regime_special_forces_training_time_factor = 0.2 tooltip = special_forces_training_time_factor_tt } add_tech_bonus = { name = FIN_advanced_jaeger_training_program bonus = 0.5 uses = 1 category = cat_special_forces_generic } add_doctrine_cost_reduction = { name = FIN_advanced_jaeger_training_program cost_reduction = 0.5 uses = 3 category = special_forces_doctrine } } } focus = { id = FIN_finnish_irredentism icon = GFX_focus_generic_attack_finland prerequisite = { focus = FIN_finnish_legion_of_honor } prerequisite = { focus = FIN_tactical_wargaming_department } x = 1 y = 1 relative_position_id = FIN_finnish_legion_of_honor cost = 10 available = { is_subject = no } search_filters = { FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY } completion_reward = { FIN_bop_very_low_increase_effect = yes custom_effect_tooltip = FIN_modify_fascist_regime_ns_intro add_to_variable = { FIN_fascist_regime_war_support_factor = 0.05 tooltip = war_support_factor_tt } add_to_variable = { FIN_fascist_regime_justify_war_goal_time = -0.35 tooltip = justify_war_goal_time_tt } 213 = { #MURMANSK add_claim_by = ROOT } 215 = { #ONEGA add_claim_by = ROOT } 216 = { #OLONETS add_claim_by = ROOT } custom_effect_tooltip = FIN_finnish_irredentism_take_states_tt custom_effect_tooltip = FIN_heimosodat_dec_tt custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_ilmari_kianto } } focus = { id = FIN_keepers_of_the_north icon = GFX_focus_FIN_keepers_of_the_north prerequisite = { focus = FIN_finnish_irredentism focus = FIN_bring_foreign_armor_experts } x = -2 y = 1 relative_position_id = FIN_finnish_irredentism cost = 10 available = { is_subject = no } bypass = { #SMI and KAR excluded so that focus can be bypasssed without Kola, which will be cored later. SWE = { all_core_state = { is_core_of = ROOT } } NOR = { all_core_state = { is_core_of = ROOT } } DEN = { all_core_state = { is_core_of = ROOT } } ICE = { all_core_state = { is_core_of = ROOT } } } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { FIN_bop_low_increase_effect = yes custom_effect_tooltip = FIN_keepers_of_the_north_tt hidden_effect = { ### SAMI ### (Only if country exists) if = { #Finnish puppet or independent ally - Annexation limit = { SMI = { FIN_is_valid_root_puppet_or_independent_ally = yes } } SMI = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { SMI = { FIN_is_valid_allied_puppet_ai = yes } } SMI = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { AND = { is_core_of = SMI is_owned_by = SMI } AND = { is_core_of = KAR is_owned_by = KAR } is_core_of = ICE is_core_of = SWE is_core_of = NOR is_core_of = DEN is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { SMI = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } SMI = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } ### KARELIA ### (Only if country exists) if = { #Finnish puppet or independent ally - Annexation limit = { KAR = { FIN_is_valid_root_puppet_or_independent_ally = yes } } KAR = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { KAR = { FIN_is_valid_allied_puppet_ai = yes } } KAR = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { AND = { is_core_of = SMI is_owned_by = SMI } AND = { is_core_of = KAR is_owned_by = KAR } is_core_of = ICE is_core_of = SWE is_core_of = NOR is_core_of = DEN is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { KAR = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } KAR = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } ### ICELAND ### (First since it's puppet of DEN potentially) if = { #Finnish puppet or independent ally - Annexation limit = { ICE = { FIN_is_valid_root_puppet_or_independent_ally = yes } } ICE = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { ICE = { FIN_is_valid_allied_puppet_ai = yes } } ICE = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { AND = { is_core_of = SMI is_owned_by = SMI } AND = { is_core_of = KAR is_owned_by = KAR } is_core_of = ICE is_core_of = SWE is_core_of = NOR is_core_of = DEN is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { ICE = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } ICE = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } if = { #Someone else controls Icelandic states - Demand Icelandic states. limit = { ICE = { any_core_state = { FIN_is_valid_occupier_country = yes } } } ICE = { every_core_state = { limit = { FIN_is_valid_occupier_country = yes } controller = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } #Add state target for Finnish request of state transfer. This array will be used in the ONE event that the country will receive for transferring the appropriate states add_to_array = { FIN_states_requested_by_finland_array = PREV } } } } } ### SWEDEN ### if = { #Finnish puppet or independent ally - Annexation limit = { SWE = { FIN_is_valid_root_puppet_or_independent_ally = yes } } SWE = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { SWE = { FIN_is_valid_allied_puppet_ai = yes } } SWE = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { AND = { is_core_of = SMI is_owned_by = SMI } AND = { is_core_of = KAR is_owned_by = KAR } is_core_of = ICE is_core_of = SWE is_core_of = NOR is_core_of = DEN is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { SWE = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } SWE = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } if = { #Someone else controls Swedish states - Demand Swedish states. limit = { SWE = { any_core_state = { FIN_is_valid_occupier_country = yes } } } SWE = { every_core_state = { limit = { FIN_is_valid_occupier_country = yes } controller = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } #Add state target for Finnish request of state transfer. This array will be used in the ONE event that the country will receive for transferring the appropriate states add_to_array = { FIN_states_requested_by_finland_array = PREV } } } } } ### NORWAY ### if = { #Finnish puppet or independent ally - Annexation limit = { NOR = { FIN_is_valid_root_puppet_or_independent_ally = yes } } #log = "Finnish Puppet or Ally" NOR = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { NOR = { FIN_is_valid_allied_puppet_ai = yes } } #log = "Ally's puppet" NOR = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { AND = { is_core_of = SMI is_owned_by = SMI } AND = { is_core_of = KAR is_owned_by = KAR } is_core_of = ICE is_core_of = SWE is_core_of = NOR is_core_of = DEN is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { NOR = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } #log = "NOR is neutral/enemy" NOR = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } if = { #Someone else controls Norwegian states - Demand Norwegian states. limit = { NOR = { any_core_state = { FIN_is_valid_occupier_country = yes } } } #log = "Cores controlled by someone else" NOR = { every_core_state = { limit = { FIN_is_valid_occupier_country = yes } controller = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } #Add state target for Finnish request of state transfer. This array will be used in the ONE event that the country will receive for transferring the appropriate states add_to_array = { FIN_states_requested_by_finland_array = PREV } } } } } ### DENMARK ### if = { #Finnish puppet or independent ally - Annexation limit = { DEN = { FIN_is_valid_root_puppet_or_independent_ally = yes } } DEN = { country_event = { id = AAT_finland_diplomacy.14 hours = 1 } } } else_if = { #Ally's puppet and AI - Request puppet transfer limit = { DEN = { FIN_is_valid_allied_puppet_ai = yes } } DEN = { overlord = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } PREV = { every_controlled_state = { if = { limit = { OR = { AND = { is_core_of = SMI is_owned_by = SMI } AND = { is_core_of = KAR is_owned_by = KAR } is_core_of = ICE is_core_of = SWE is_core_of = NOR is_core_of = DEN is_owned_by = PREV } } #This array will be used in the ONE event that the country's overlord will receive for transferring the appropriate states add_to_array = { PREV.PREV.FIN_states_requested_by_finland_array = THIS } #store array in overlord } else = { #This array will be used in the ONE event that the country's overlord will receive for transferring states back to the overlord add_to_array = { PREV.PREV.FIN_states_to_come_back_to_overlord_array = THIS } #store array in overlord } } } } } } else_if = { #Neutral/enemy - Claims and wargoal limit = { DEN = { OR = { FIN_is_valid_neutral_or_enemy = yes has_civil_war = yes } } } DEN = { every_core_state = { limit = { controller = { original_tag = PREV.PREV FIN_is_valid_neutral_or_enemy = yes } } add_claim_by = ROOT } ROOT = { create_wargoal = { type = annex_everything target = PREV } if = { limit = { has_non_aggression_pact_with = PREV } diplomatic_relation = { country = PREV relation = non_aggression_pact active = no } } if = { limit = { has_guaranteed = PREV } diplomatic_relation = { country = PREV relation = guarantee active = no } } } } } if = { #Someone else controls Danish states - Demand Danish states. limit = { DEN = { any_core_state = { FIN_is_valid_occupier_country = yes } } } DEN = { every_core_state = { limit = { FIN_is_valid_occupier_country = yes } controller = { if = { limit = { NOT = { is_in_array = { ROOT.countries_with_nordic_territory_array = THIS } } } #This array will be used at the end of the effect to send ONE SINGLE EVENT to each country with Baltic puppets or states with Finnish demands add_to_array = { ROOT.countries_with_nordic_territory_array = THIS } } #Add state target for Finnish request of state transfer. This array will be used in the ONE event that the country will receive for transferring the appropriate states add_to_array = { FIN_states_requested_by_finland_array = PREV } } } } } #### SEND EVENT TO COUTNRIES OCCUPYING / PUPPETING BALTICS ### for_each_scope_loop = { array = ROOT.countries_with_nordic_territory_array country_event = { id = AAT_finland_diplomacy.17 hours = 1 } #log = "Sent event to [THIS.GetName]" } clear_array = ROOT.countries_with_nordic_territory_array every_controlled_state = { limit = { OR = { #No need to add SMI here is_core_of = ICE is_core_of = SWE is_core_of = NOR is_core_of = DEN } has_resistance = yes } add_compliance = 30 } } } } focus = { id = FIN_patriotic_peoples_movement icon = GFX_focus_FIN_patriotic_peoples_movement prerequisite = { focus = FIN_a_fascist_regime } x = 4 y = 0 relative_position_id = FIN_finnish_supremacy_in_the_north cost = 5 available = { } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_MANPOWER FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { add_political_power = 50 FIN_bop_very_low_increase_effect = yes add_ideas = FIN_patriotic_peoples_movement_ns_1 custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_elias_simojoki show_unit_leaders_tooltip = FIN_kurt_martti_wallenius } } focus = { id = FIN_mustapaidat icon = GFX_focus_FIN_mustapaidat prerequisite = { focus = FIN_patriotic_peoples_movement } x = -1 y = 1 relative_position_id = FIN_patriotic_peoples_movement cost = 10 available = { } search_filters = { FOCUS_FILTER_MANPOWER FOCUS_FILTER_WAR_SUPPORT } completion_reward = { division_template = { #Mustapaidat name = "Mustapaidat" division_names_group = FIN_MIL_01 #template_counter = 68 is_locked = yes force_allow_recruiting = yes division_cap = 12 regiments = { militia = { x = 0 y = 0 } militia = { x = 0 y = 1 } militia = { x = 1 y = 0 } militia = { x = 1 y = 1 } militia = { x = 2 y = 0 } militia = { x = 2 y = 1 } } support = { engineer = { x = 0 y = 0 } } } capital_scope = { create_unit = { division = "division_template = \"Mustapaidat\" start_experience_factor = 0.5 start_equipment_factor = 1.0" owner = ROOT count = 3 } } swap_ideas = { remove_idea = FIN_patriotic_peoples_movement_ns_1 add_idea = FIN_patriotic_peoples_movement_ns_2 } } } focus = { id = FIN_sotilaalliset_kappalaiset icon = GFX_focus_FIN_chaplains prerequisite = { focus = FIN_mustapaidat } x = 0 y = 1 relative_position_id = FIN_mustapaidat cost = 10 available = { } search_filters = { FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_POLITICAL } completion_reward = { FIN_bop_very_low_increase_effect = yes swap_ideas = { remove_idea = FIN_patriotic_peoples_movement_ns_2 add_idea = FIN_patriotic_peoples_movement_ns_3 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_reino_ala_kulju } } focus = { id = FIN_national_fanatism icon = GFX_focus_FIN_national_fanatism prerequisite = { focus = FIN_sotilaalliset_kappalaiset } x = 0 y = 1 relative_position_id = FIN_sotilaalliset_kappalaiset cost = 10 available = { fascism > 0.9 has_stability > 0.8 } search_filters = { FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_MANPOWER FOCUS_FILTER_INDUSTRY } completion_reward = { add_war_support = 0.05 FIN_bop_low_increase_effect = yes set_division_template_cap = { division_template = "Mustapaidat" division_cap = 24 #Starts with 12 } swap_ideas = { remove_idea = FIN_patriotic_peoples_movement_ns_3 add_idea = FIN_patriotic_peoples_movement_ns_4 } FIN_vilho_annala = { swap_country_leader_traits = { remove = economic_reformer add = architect_of_finnish_coporatism } } } } focus = { id = FIN_academic_karelian_society icon = GFX_focus_FIN_academic_karelian_society prerequisite = { focus = FIN_a_fascist_regime } x = 2 y = 0 relative_position_id = FIN_patriotic_peoples_movement cost = 5 available = { } search_filters = { FOCUS_FILTER_STABILITY FOCUS_FILTER_BALANCE_OF_POWER FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_RESEARCH } completion_reward = { add_stability = 0.05 FIN_bop_very_low_increase_effect = yes add_ideas = FIN_academic_karelian_society_ns_1 } } focus = { id = FIN_take_over_the_suojeluskunta icon = GFX_focus_FIN_take_over_the_suojeluskunta prerequisite = { focus = FIN_patriotic_peoples_movement focus = FIN_academic_karelian_society } x = 1 y = 1 relative_position_id = FIN_patriotic_peoples_movement cost = 10 available = { } search_filters = { FOCUS_FILTER_MANPOWER } completion_reward = { add_ideas = FIN_suojeluskunta_ns_1 if = { limit = { has_completed_focus = FIN_long_range_patrols } division_template = { name = "Suojeluskunta" division_names_group = FIN_GAR_02 template_counter = 6 override_model = FIN_infantry_alt_1_entity regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 1 y = 0 } infantry = { x = 1 y = 1 } } support = { engineer = { x = 0 y = 0 } long_range_patrol_support = { x = 0 y = 1 } artillery = { x = 0 y = 2 } anti_air = { x = 0 y = 3 } } } } else = { division_template = { name = "Suojeluskunta" division_names_group = FIN_GAR_02 template_counter = 6 override_model = FIN_infantry_alt_1_entity regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 1 y = 0 } infantry = { x = 1 y = 1 } } support = { engineer = { x = 0 y = 0 } recon = { x = 0 y = 1 } artillery = { x = 0 y = 2 } anti_air = { x = 0 y = 3 } } } } #HELSINKI if = { limit = { controls_state = 111 } 111 = { create_unit = { division = "division_template = \"Suojeluskunta\" start_experience_factor = 0.7 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } #TURKU if = { limit = { controls_state = 926 } 926 = { create_unit = { division = "division_template = \"Suojeluskunta\" start_experience_factor = 0.7 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } #VASA if = { limit = { controls_state = 149 } 149 = { create_unit = { division = "division_template = \"Suojeluskunta\" start_experience_factor = 0.7 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } #MIKKELI if = { limit = { controls_state = 930 } 930 = { create_unit = { division = "division_template = \"Suojeluskunta\" start_experience_factor = 0.7 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } #KUOPIO if = { limit = { controls_state = 150 } 150 = { create_unit = { division = "division_template = \"Suojeluskunta\" start_experience_factor = 0.7 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } #OULU if = { limit = { controls_state = 929 } 929 = { create_unit = { division = "division_template = \"Suojeluskunta\" start_experience_factor = 0.7 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } } } focus = { id = FIN_maan_turva icon = GFX_focus_generic_secret_service_agency prerequisite = { focus = FIN_academic_karelian_society } x = 1 y = 1 relative_position_id = FIN_academic_karelian_society cost = 10 available = { } search_filters = { FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_POLITICAL_CHARACTER } completion_reward = { if = { limit = { has_dlc = "La Resistance" } if = { limit = { has_intelligence_agency = no } create_intelligence_agency = yes } add_ideas = FIN_maan_turva } else = { add_ideas = FIN_maan_turva_no_lar } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_vilho_helanen } } focus = { id = FIN_military_promotions icon = GFX_focus_generic_military_mission prerequisite = { focus = FIN_take_over_the_suojeluskunta } x = 0 y = 1 relative_position_id = FIN_take_over_the_suojeluskunta cost = 10 available = { } search_filters = { FOCUS_FILTER_MILITARY_CHARACTER FOCUS_FILTER_ARMY_XP FOCUS_FILTER_AIR_XP FOCUS_FILTER_NAVY_XP } completion_reward = { show_unit_leaders_tooltip = FIN_paavo_susitaival show_unit_leaders_tooltip = FIN_lauri_torni if = { limit = { has_dlc = "By Blood Alone" } swap_ideas = { remove_idea = FIN_suojeluskunta_ns_1 add_idea = FIN_suojeluskunta_ns_2 } every_country_division = { random_select_amount = 6 add_divisional_commander_xp = 1200 add_history_entry = { key = FIN_military_promotions subject = "Military Promotions" allow = yes #(allow medal award) } } } else = { swap_ideas = { remove_idea = FIN_suojeluskunta_ns_1 add_idea = FIN_suojeluskunta_ns_2_no_bba } } } } focus = { id = FIN_indoctrinate_the_workers icon = GFX_focus_generic_full_employment prerequisite = { focus = FIN_maan_turva } x = 0 y = 1 relative_position_id = FIN_maan_turva cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { swap_ideas = { remove_idea = FIN_academic_karelian_society_ns_1 add_idea = FIN_academic_karelian_society_ns_2 } random_core_state = { limit = { is_controlled_by = ROOT free_building_slots = { building = industrial_complex size > 0 include_locked = yes } has_resources_amount = { resource = steel amount > 0 } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_resource = { type = steel amount = 8 } } } } focus = { id = FIN_intellectual_elite icon = GFX_focus_research prerequisite = { focus = FIN_military_promotions } prerequisite = { focus = FIN_indoctrinate_the_workers } x = 1 y = 1 relative_position_id = FIN_military_promotions cost = 10 available = { } search_filters = { FOCUS_FILTER_RESEARCH FOCUS_FILTER_POLITICAL FOCUS_FILTER_RESEARCH FOCUS_FILTER_POLITICAL_CHARACTER FOCUS_FILTER_STABILITY } completion_reward = { FIN_bop_low_increase_effect = yes add_research_slot = 1 swap_ideas = { remove_idea = FIN_academic_karelian_society_ns_2 add_idea = FIN_academic_karelian_society_ns_3 } custom_effect_tooltip = available_political_advisor show_ideas_tooltip = FIN_ilmari_kianto } } #### ## ## ######## ## ## ###### ######## ######## #### ### ## ######## ######## ### ## ## ###### ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ### ## ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## ## ## ###### ## ######## ## ## ## ## ######## ######## ## ## ## ## ## ## ######### ## ## #### ## ## ## ## ## ## ## ## ## ######### ## ## ## ## ## ######### ## #### ## ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ### ## ## ## ## #### ## ## ######## ####### ###### ## ## ## #### ## ## ######## ######## ## ## ## ## ## ## ###### ## ## focus = { id = FIN_enhance_southern_infrastructure icon = GFX_goal_generic_construct_infrastructure x = 13 y = 0 relative_position_id = FIN_right_wing_policies offset = { x = -14 y = 0 trigger = { OR = { NOT = { has_dlc = "Arms Against Tyranny" } AND = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = FIN_finnish_neutrality } } } } offset = { x = -27 y = 0 trigger = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = FIN_suomalainen_sosialismi } } cost = 10 available = { has_full_control_of_state = 111 #UUSIMAA (Helsinki) has_full_control_of_state = 926 #TURKU } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { #UUSIMAA (Helsinki) 111 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = infrastructure level = 1 instant_build = yes } } #TURKU 926 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = infrastructure level = 1 instant_build = yes } } # Turku - Hanko - Helsinki build_railway = { path = { 3083 9194 11211 6108 11105 } } #HÄME if = { limit = { has_full_control_of_state = 927 } 927 = { #HÄME add_extra_state_shared_building_slots = 1 add_building_construction = { type = infrastructure level = 1 instant_build = yes } #Supply Hub in Tampere add_building_construction = { type = supply_node level = 1 province = 3137 instant_build = yes } } # Helsinki - Tampere - Hämeenlinna build_railway = { path = { 11105 9129 11172 3025 3137 9167 } } } #KYME if = { limit = { has_full_control_of_state = 928 } 928 = { #KYME add_extra_state_shared_building_slots = 1 add_building_construction = { type = infrastructure level = 1 instant_build = yes } #Naval Base in Kotka add_building_construction = { type = supply_node level = 1 province = 3061 instant_build = yes } } if = { limit = { has_full_control_of_state = 930 has_full_control_of_state = 927 } # Helsinki - Hämeenlinna - Lahti - Kouvola - Kotka build_railway = { path = { 11105 9129 6144 9167 67 9073 9183 3061 } } # Helsinki - Porvoo - Kotka build_railway = { path = { 11105 6009 204 3161 3061 } } } else = { # Helsinki - Porvoo - Kouvola - Kotka build_railway = { path = { 11105 9129 6144 6009 204 9183 3061 } } } #VIIPURI if = { limit = { controls_province = 9206 #Controls Viipuri VP } # Kouvola - Viipuri build_railway = { path = { 9183 11056 6082 9206 } } } } #MIKKELI if = { limit = { has_full_control_of_state = 930 } 930 = { #MIKKELI add_extra_state_shared_building_slots = 1 add_building_construction = { type = infrastructure level = 1 instant_build = yes } } } } } focus = { id = FIN_industrial_development icon = GFX_goal_generic_construct_civ_factory prerequisite = { focus = FIN_enhance_southern_infrastructure } x = 0 y = 1 relative_position_id = FIN_enhance_southern_infrastructure cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { add_timed_idea = { idea = FIN_infrastructure_effort days = 730 } #UUSIMAA (Helsinki) if = { limit = { controls_state = 111 } 111 = { #UUSIMAA (Helsinki) add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } else = { random_owned_state = { prioritize = { 928 } #KYME limit = { is_controlled_by = ROOT } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } #TURKU if = { limit = { controls_state = 926 } 926 = { #TURKU add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } else = { random_owned_state = { prioritize = { 149 } #VAASA limit = { is_controlled_by = ROOT } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } } } focus = { id = FIN_bank_of_aland icon = GFX_focus_usa_reestablish_the_gold_standard prerequisite = { focus = FIN_industrial_development } x = -2 y = 1 relative_position_id = FIN_industrial_development cost = 10 bypass = { has_civil_war = no NOT = { 145 = { #ÅLAND is_owned_by = ROOT } } } available = { 145 = { #ÅLAND is_owned_and_controlled_by = ROOT } } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_INDUSTRY } completion_reward = { add_political_power = 70 add_stability = 0.05 add_timed_idea = { idea = FIN_bank_of_aland_ns days = 730 } } } focus = { id = FIN_suomen_akatemia icon = GFX_focus_research prerequisite = { focus = FIN_bank_of_aland } x = 0 y = 1 relative_position_id = FIN_bank_of_aland cost = 10 available = { has_tech = computing_machine } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_RESEARCH } completion_reward = { add_research_slot = 1 add_tech_bonus = { name = FIN_suomen_akatemia bonus = 0.75 uses = 1 category = electronics } } } focus = { id = FIN_janiskoski_power_plant icon = GFX_focus_generic_energy prerequisite = { focus = FIN_industrial_development } x = 0 y = 1 relative_position_id = FIN_industrial_development cost = 5 available = { 722 = { #PETSAMO OR = { is_controlled_by = ROOT controller = { is_subject_of = ROOT } } } } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { 722 = { #PETSAMO set_state_category = rural add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_resource = { type = steel amount = 4 } } } } focus = { id = FIN_found_pohjolan_voima icon = GFX_focus_generic_land_reclamation prerequisite = { focus = FIN_janiskoski_power_plant } x = 0 y = 2 relative_position_id = FIN_janiskoski_power_plant cost = 10 available = { has_tech = construction3 } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = available_designer show_ideas_tooltip = FIN_pohjolan_voima custom_effect_tooltip = FIN_found_pohjolan_voima_factories_tt every_core_state = { random_select_amount = 5 limit = { is_fully_controlled_by = ROOT infrastructure > 2 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } } focus = { id = FIN_expand_imatra_hydropower_plant icon = GFX_goal_generic_construction prerequisite = { focus = FIN_janiskoski_power_plant } x = 1 y = 1 relative_position_id = FIN_janiskoski_power_plant cost = 5 available = { has_full_control_of_state = 928 #KYME } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { 928 = { #KYME add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_resource = { type = steel amount = 4 } } } } focus = { id = FIN_makola_mine icon = GFX_focus_generic_mining_industry prerequisite = { focus = FIN_expand_imatra_hydropower_plant } x = 1 y = 1 relative_position_id = FIN_expand_imatra_hydropower_plant cost = 5 available = { has_tech = excavation3 has_full_control_of_state = 929 #OULU } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { 929 = { #OULU add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_building_construction = { type = supply_node level = 1 province = 11132 instant_build = yes } add_resource = { type = steel amount = 4 } add_resource = { type = chromium amount = 2 } } # Oulu - Nivala build_railway = { path = { 158 11121 195 11132 } } if = { limit = { has_full_control_of_state = 149 } # Oulu - Vaasa build_railway = { path = { 158 11121 195 66 3172 11065 3122 } } } } } focus = { id = FIN_power_from_the_dams icon = GFX_focus_generic_hydroelectric_energy prerequisite = { focus = FIN_expand_imatra_hydropower_plant } x = 0 y = 2 relative_position_id = FIN_expand_imatra_hydropower_plant cost = 10 available = { has_tech = construction4 148 = { is_owned_and_controlled_by = ROOT } 929 = { is_owned_and_controlled_by = ROOT } } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { add_ideas = FIN_hydro_electric_expansion random_core_state = { prioritize = { 927 } #HÄME (Tampere) limit = { is_fully_controlled_by = ROOT free_building_slots = { building = industrial_complex size > 0 include_locked = yes } NOT = { has_state_flag = FIN_power_from_the_dams_flag } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } set_state_flag = FIN_power_from_the_dams_flag } custom_effect_tooltip = generic_skip_one_line_tt 148 = { add_building_construction = { type = dam level = 1 instant_build = yes province = { id = 11164 } } custom_effect_tooltip = { localization_key = building_state_modifier|dam INDENT = " " } } custom_effect_tooltip = generic_skip_one_line_tt 929 = { add_building_construction = { type = dam level = 1 instant_build = yes province = { id = 158 } } custom_effect_tooltip = { localization_key = building_state_modifier|dam INDENT = " " } } } } focus = { id = FIN_tire_factory_at_nokia icon = GFX_focus_generic_improve_roads prerequisite = { focus = FIN_industrial_development } x = 2 y = 1 relative_position_id = FIN_industrial_development cost = 10 available = { has_full_control_of_state = 927 #HÄME (Tampere - Nokia) } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { add_tech_bonus = { name = FIN_tire_factory_at_nokia bonus = 0.5 uses = 2 category = synth_resources } if = { limit = { has_tech = synth_oil_experiments } FIN_nokia_tires_after_tech_effect = yes } else = { custom_effect_tooltip = FIN_tire_factory_at_nokia_tech_tt effect_tooltip = { 927 = { add_extra_state_shared_building_slots = 3 custom_effect_tooltip = FIN_tire_factory_at_nokia_add_synthetic_refineries_tt } } if = { limit = { has_idea = FIN_nokia } swap_ideas = { remove_idea = FIN_nokia add_idea = FIN_nokia_improved } } else = { custom_effect_tooltip = FIN_improves_nokia_designer_tt effect_tooltip = { swap_ideas = { remove_idea = FIN_nokia add_idea = FIN_nokia_improved } } } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_sisu_auto_organization = { unlock_mio_trait_tooltip = FIN_mio_trait_recycled_materials } } } } focus = { id = FIN_vaisala_radiosonde_tests icon = GFX_goal_generic_radar prerequisite = { focus = FIN_industrial_development } x = 4 y = 1 relative_position_id = FIN_industrial_development cost = 5 available = { has_full_control_of_state = 111 #UUSIMAA (Helsinki) } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { add_tech_bonus = { name = FIN_vaisala_radiosonde_tests bonus = 0.5 uses = 2 category = electronics } 111 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } } focus = { id = FIN_contract_with_yhteissisu icon = GFX_focus_generic_truck prerequisite = { focus = FIN_tire_factory_at_nokia } prerequisite = { focus = FIN_outokumpu_for_defence_industry } x = 1 y = 1 relative_position_id = FIN_tire_factory_at_nokia cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_sisu_auto_organization = { add_mio_size = 1 add_mio_funds_gain_factor = 0.35 unlock_mio_trait_tooltip = FIN_mio_trait_yhteissisus_modern_premises } } else = { if = { limit = { has_idea = FIN_sisu_auto } swap_ideas = { remove_idea = FIN_sisu_auto add_idea = FIN_sisu_auto_improved } } else = { effect_tooltip = { swap_ideas = { remove_idea = FIN_sisu_auto add_idea = FIN_sisu_auto_improved } } } } } } focus = { id = FIN_industrial_upgrade_in_harjavalta #Power plant and copper) icon = GFX_goal_generic_production prerequisite = { focus = FIN_outokumpu_for_defence_industry } x = 3 y = 1 relative_position_id = FIN_tire_factory_at_nokia cost = 5 available = { has_full_control_of_state = 926 #TURKU } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { 926 = { #TURKU add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_building_construction = { type = naval_base level = 1 instant_build = yes province = 3083 } add_resource = { type = steel amount = 4 } add_resource = { type = chromium amount = 4 } } } } focus = { id = FIN_expand_mining_prospection icon = GFX_goal_generic_construct_civilian prerequisite = { focus = FIN_expand_imatra_hydropower_plant } prerequisite = { focus = FIN_industrial_upgrade_in_harjavalta } x = -1 y = 1 relative_position_id = FIN_industrial_upgrade_in_harjavalta cost = 5 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = FIN_expand_mining_prospection_tt every_core_state = { limit = { is_fully_controlled_by = ROOT has_resources_amount = { resource = steel amount > 0 } } add_resource = { show_state_in_tooltip = no type = steel amount = 2 #WARNING No vars supported here so if this changes the custom tooltip above needs to be updated. Tack } } #PETSAMO Chromium if = { limit = { controls_state = 722 } 722 = { add_resource = { type = chromium amount = 2 } } } #OULU Chromium if = { limit = { controls_state = 929 } 929 = { add_resource = { type = chromium amount = 2 } } } #TURKU Chromium if = { limit = { controls_state = 926 } 926 = { add_resource = { type = chromium amount = 2 } } } } } focus = { id = FIN_elijarvi_mine icon = GFX_goal_generic_construction2 prerequisite = { focus = FIN_expand_mining_prospection } x = 0 y = 1 relative_position_id = FIN_expand_mining_prospection cost = 5 available = { has_tech = excavation5 has_full_control_of_state = 148 #LAPPI (Kemi) } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { 148 = { #LAPPI (Kemi) add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_resource = { type = steel amount = 4 } add_resource = { type = chromium amount = 2 } } } } focus = { id = FIN_tornio_steel_factory icon = GFX_focus_generic_steel prerequisite = { focus = FIN_elijarvi_mine } x = 0 y = 1 relative_position_id = FIN_elijarvi_mine cost = 10 available = { has_full_control_of_state = 148 #LAPPI (Kemi) } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { 148 = { #LAPPI (Kemi) add_extra_state_shared_building_slots = 3 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_building_construction = { type = arms_factory level = 1 instant_build = yes } add_resource = { type = steel amount = 6 } add_resource = { type = chromium amount = 4 } } } } focus = { id = FIN_outokumpu_for_defence_industry icon = GFX_goal_generic_construct_mil_factory prerequisite = { focus = FIN_suomen_maavoimat } x = 4 y = 0 relative_position_id = FIN_tire_factory_at_nokia cost = 10 available = { has_full_control_of_state = 926 #TURKU (Pori) } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { 926 = { #TURKU (Pori) add_extra_state_shared_building_slots = 3 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_building_construction = { type = arms_factory level = 1 instant_build = yes } add_resource = { type = steel amount = 6 } } } } focus = { id = FIN_oy_alkoholiliike icon = GFX_focus_FIN_oy_alkoholiliike prerequisite = { focus = FIN_outokumpu_for_defence_industry } x = 1 y = 1 relative_position_id = FIN_outokumpu_for_defence_industry cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_WAR_SUPPORT } completion_reward = { add_stability = 0.05 add_war_support = 0.05 custom_effect_tooltip = FIN_oy_alkoholiliike_ns_tt hidden_effect = { set_technology = { molotov_cocktails_tech = 1 popup = no } } } } focus = { id = FIN_integrate_oy_tikkakoski icon = GFX_focus_SOV_merge_plants prerequisite = { focus = FIN_outokumpu_for_defence_industry } x = 0 y = 2 relative_position_id = FIN_outokumpu_for_defence_industry cost = 10 available = { if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_valtion_kivaaritehdas_organization = { has_mio_size > 4 } } } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { add_tech_bonus = { name = FIN_integrate_oy_tikkakoski bonus = 0.5 uses = 2 category = infantry_weapons } random_core_state = { prioritize = { 149 } #VAASA (Tikkakoski - Jyväskylä) limit = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_valtion_kivaaritehdas_organization = { add_mio_size = 1 add_mio_funds_gain_factor = 0.35 add_mio_research_bonus = 0.05 unlock_mio_trait_tooltip = FIN_mio_trait_oy_tikkakoski } } else = { if = { limit = { has_idea = FIN_valtion_kivaaritehdas } swap_ideas = { remove_idea = FIN_valtion_kivaaritehdas add_idea = FIN_valtion_kivaaritehdas_improved } } else = { effect_tooltip = { swap_ideas = { remove_idea = FIN_valtion_kivaaritehdas add_idea = FIN_valtion_kivaaritehdas_improved } } } } } } focus = { id = FIN_national_firepower icon = GFX_goal_generic_army_artillery2 prerequisite = { focus = FIN_integrate_oy_tikkakoski } x = 0 y = 1 relative_position_id = FIN_integrate_oy_tikkakoski cost = 10 available = { if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_valtion_tykkitehdas_organization = { has_mio_size > 4 } } } search_filters = { FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { add_tech_bonus = { name = FIN_national_firepower bonus = 0.5 uses = 2 category = artillery } random_core_state = { prioritize = { 149 } #VAASA (Tikkakoski - Jyväskylä) limit = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_valtion_tykkitehdas_organization = { add_mio_size = 1 add_mio_research_bonus = 0.1 add_mio_funds_gain_factor = 0.35 } } else = { if = { limit = { has_idea = FIN_valtion_tykkitehdas } swap_ideas = { remove_idea = FIN_valtion_tykkitehdas add_idea = FIN_valtion_tykkitehdas_improved } } else = { effect_tooltip = { swap_ideas = { remove_idea = FIN_valtion_tykkitehdas add_idea = FIN_valtion_tykkitehdas_improved } } } } } } ## ## #### ## #### ######## ### ######## ## ## ######## ######## ### ## ## ###### ## ## ### ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ### ## ## ## ## ## #### #### ## ## ## ## ## ## ## ## #### ## ## ## ## ## ## #### ## ## ## ## ## ### ## ## ## ## ## ## ## ######## ## ######## ######## ## ## ## ## ## ## ######### ## ## ## ## ## ## ######### ## ## ## ## ## ## ## ######### ## #### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ### ## ## ## ## ## ## #### ######## #### ## ## ## ## ## ## ######## ## ## ## ## ## ## ###### ## ## focus = { id = FIN_increase_military_budget icon = GFX_focus_FIN_increase_military_budget x = 17 y = 0 relative_position_id = FIN_enhance_southern_infrastructure cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { add_tech_bonus = { name = FIN_increase_military_budget bonus = 0.5 uses = 2 category = infantry_weapons category = artillery category = motorized_equipment category = support_tech category = air_equipment category = naval_equipment } random_core_state = { prioritize = { 111 } #UUSIMAA (Helsinki) limit = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = arms_factory level = 1 instant_build = yes } } } } focus = { id = FIN_suomen_maavoimat icon = GFX_focus_FIN_suomen_maavoimat prerequisite = { focus = FIN_increase_military_budget } x = -6 y = 1 relative_position_id = FIN_increase_military_budget cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { army_experience = 25 add_tech_bonus = { name = FIN_suomen_maavoimat bonus = 1 uses = 1 category = infantry_weapons category = support_tech category = artillery category = motorized_equipment } add_doctrine_cost_reduction = { name = FIN_suomen_maavoimat cost_reduction = 0.75 uses = 1 category = land_doctrine } random_core_state = { prioritize = { 149 } #VAASA (Valtion Tykkitehdas premises in Jyväskylä) limit = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = arms_factory level = 1 instant_build = yes } } #TOOLTIP STUFF TO MAKE MAINTENANCE A BIT LESS PAINFUL (no vars will show up in tooltips) - Changes to initial modifiers values will have to be adjusted in both dynamic modifiers effect_tooltip = { add_ideas = FIN_finnish_army_fake } hidden_effect = { add_dynamic_modifier = { modifier = FIN_finnish_army } } } } focus = { id = FIN_operation_kilpapurjehdus icon = GFX_focus_SWE_the_aland_question prerequisite = { focus = FIN_suomen_maavoimat } x = -2 y = 1 relative_position_id = FIN_suomen_maavoimat cost = 5 available = { threat > 0.7 145 = { #ÅLAND is_demilitarized_zone = yes } } continue_if_invalid = yes search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_NAVY_XP FOCUS_FILTER_MANPOWER } completion_reward = { army_experience = 15 navy_experience = 15 145 = { #ÅLAND set_demilitarized_zone = no if = { limit = { naval_base < 9 } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 9228 } } if = { limit = { bunker < 9 } add_building_construction = { type = bunker level = 2 instant_build = yes province = 9228 } } if = { limit = { coastal_bunker < 9 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 9228 } } if = { limit = { anti_air_building < 5 } add_building_construction = { type = anti_air_building level = 1 instant_build = yes } } } hidden_effect = { news_event = { id = aat_news.101 hours = 16 random_hours = 8 } } } } focus = { id = FIN_extra_refresher_exercises icon = GFX_focus_generic_little_entente prerequisite = { focus = FIN_suomen_maavoimat } x = 0 y = 1 relative_position_id = FIN_suomen_maavoimat cost = 10 available = { threat > 0.25 } continue_if_invalid = yes search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_MANPOWER } completion_reward = { army_experience = 15 custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_experience_gain_army_factor = 0.05 tooltip = experience_gain_army_factor_tt } add_to_variable = { FIN_finnish_army_dig_in_speed_factor = 0.1 tooltip = dig_in_speed_factor_tt } add_to_variable = { FIN_finnish_army_training_time_factor = -0.1 tooltip = training_time_factor_tt } add_to_variable = { FIN_finnish_army_mobilization_speed = 0.1 tooltip = mobilization_speed_tt } add_to_variable = { FIN_finnish_army_conscription_factor = 0.1 tooltip = conscription_factor_tt } } } focus = { id = FIN_the_cold_front icon = GFX_focus_SOV_the_road_of_life prerequisite = { focus = FIN_extra_refresher_exercises } x = -2 y = 1 relative_position_id = FIN_extra_refresher_exercises cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_acclimatization_cold_climate_gain_factor = 0.1 tooltip = acclimatization_cold_climate_gain_factor_tt } add_to_variable = { FIN_finnish_army_cas_damage_reduction = 0.15 tooltip = cas_damage_reduction_tt } add_to_variable = { FIN_finnish_army_winter_attrition_factor = -0.15 tooltip = winter_attrition_factor_tt } army_experience = 15 } } focus = { id = FIN_jaeger_movement icon = GFX_focus_FIN_jaeger_movement prerequisite = { focus = FIN_extra_refresher_exercises } x = 0 y = 1 relative_position_id = FIN_extra_refresher_exercises cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { army_experience = 15 set_technology = { bicycle_infantry = 1 popup = no } custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_army_org_factor = 0.1 tooltip = army_org_factor_tt } add_to_variable = { FIN_finnish_army_special_forces_cap = 0.15 tooltip = special_forces_cap_tt } add_to_variable = { FIN_finnish_army_breakthrough_factor = 0.05 tooltip = breakthrough_factor_tt } add_to_variable = { FIN_finnish_army_special_forces_out_of_supply_factor = -0.1 tooltip = special_forces_out_of_supply_factor_tt } show_unit_leaders_tooltip = FIN_hannu_hannuksela show_unit_leaders_tooltip = FIN_hjalmar_siilasvuo show_unit_leaders_tooltip = FIN_taavetti_laatikainen custom_effect_tooltip = available_military_high_command show_ideas_tooltip = FIN_johan_arajuuri } } focus = { id = FIN_salvaged_and_retooled icon = GFX_focus_FIN_salvaged_and_retooled prerequisite = { focus = FIN_extra_refresher_exercises } x = 2 y = 1 relative_position_id = FIN_extra_refresher_exercises cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_INDUSTRY } completion_reward = { army_experience = 15 custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_equipment_capture_factor = 0.3 tooltip = equipment_capture_factor_tt } add_to_variable = { FIN_finnish_army_equipment_conversion_speed = 0.3 tooltip = equipment_conversion_speed_tt } add_to_variable = { FIN_finnish_army_production_lack_of_resource_penalty_factor = -0.15 tooltip = production_lack_of_resource_penalty_factor_tt } if = { limit = { has_dlc = "Arms Against Tyranny" } every_military_industrial_organization = { limit = { OR = { is_military_industrial_organization = FIN_valtion_panssaritehdas_organization is_military_industrial_organization = FIN_valtion_kivaaritehdas_organization is_military_industrial_organization = FIN_valtion_tykkitehdas_organization is_military_industrial_organization = FIN_sisu_auto_organization } } add_mio_design_team_assign_cost = -0.5 complete_mio_trait = FIN_mio_trait_salvaged_and_retooled } } add_tech_bonus = { name = FIN_salvaged_and_retooled bonus = 0.5 uses = 1 category = cat_mechanized_equipment } if = { limit = { has_dlc = "No Step Back" } add_tech_bonus = { name = FIN_salvaged_and_retooled bonus = 0.5 uses = 2 category = cat_light_armor } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { name = "BT-42" type = light_tank_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_close_support_gun turret_type_slot = tank_light_two_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_gasoline_engine } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 2 } icon = "GFX_FIN_improved_light_art_medium" design_team = mio:FIN_valtion_panssaritehdas_organization } } else = { create_equipment_variant = { name = "BT-42" type = light_tank_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_close_support_gun turret_type_slot = tank_light_two_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_gasoline_engine } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 2 } icon = "GFX_FIN_improved_light_art_medium" } } } if = { limit = { has_dlc = "Arms Against Tyranny" } if = { limit = { has_tech = mechanised_infantry3 } mio:FIN_sisu_auto_organization = { unlock_mio_trait_tooltip = FIN_mio_trait_repurposed_equipment } } else = { custom_effect_tooltip = FIN_salvaged_and_retooled_sisu_trait_repurposed_tt mio:FIN_sisu_auto_organization = { unlock_mio_trait_tooltip = FIN_mio_trait_repurposed_equipment } } } } } focus = { id = FIN_winter_warfare icon = GFX_focus_generic_winter_warfare prerequisite = { focus = FIN_the_cold_front } x = 0 y = 1 relative_position_id = FIN_the_cold_front cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP } completion_reward = { army_experience = 25 custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_acclimatization_cold_climate_gain_factor = 0.15 tooltip = acclimatization_cold_climate_gain_factor_tt } add_to_variable = { FIN_finnish_army_winter_attrition_factor = -0.15 tooltip = winter_attrition_factor_tt } add_to_variable = { FIN_finnish_army_supply_combat_penalties_on_core_factor = -0.15 tooltip = supply_combat_penalties_on_core_factor_tt } custom_effect_tooltip = FIN_winter_warfare_battalion_tt hidden_effect = { set_technology = { winter_logistics_support_tech = 1 popup = no } } } } focus = { id = FIN_motti_tactics icon = GFX_focus_FIN_motti_tactics prerequisite = { focus = FIN_jaeger_movement focus = FIN_salvaged_and_retooled } prerequisite = { focus = FIN_the_cold_front } x = 0 y = 1 relative_position_id = FIN_jaeger_movement cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { army_experience = 25 custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_org_loss_when_moving = -0.15 tooltip = org_loss_when_moving_tt } add_to_variable = { FIN_finnish_army_recon_factor_while_entrenched = 0.1 tooltip = recon_factor_while_entrenched_tt } add_to_variable = { FIN_finnish_army_army_attack_speed_factor = 0.1 tooltip = army_attack_speed_factor_tt } show_unit_leaders_tooltip = FIN_matti_aarnio unlock_decision_category_tooltip = FIN_motti_tactics_category } } focus = { id = FIN_foreign_armor icon = GFX_focus_FIN_foreign_anti_air prerequisite = { focus = FIN_salvaged_and_retooled } x = 1 y = 1 relative_position_id = FIN_salvaged_and_retooled cost = 5 available = { NOT = { is_justifying_wargoal_against = SWE } SWE = { exists = yes has_capitulated = no NOT = { is_justifying_wargoal_against = ROOT } } } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INTERNATIONAL_TRADE } completion_reward = { add_tech_bonus = { name = FIN_foreign_armor bonus = 0.5 uses = 2 category = armor } if = { limit = { has_dlc = "Arms Against Tyranny" } custom_effect_tooltip = FIN_foreign_armor_equipment_and_subsidies_tt } else = { custom_effect_tooltip = FIN_foreign_armor_equipment_only_tt } effect_tooltip = { #Just tooltip purposes every_other_country = { limit = { OR = { original_tag = GER original_tag = ITA original_tag = ENG original_tag = FRA original_tag = SOV original_tag = SWE } FIN_can_purchase_equipment_from_country = yes } display_individual_scopes = yes } } hidden_effect = { if = { limit = { has_dlc = "Arms Against Tyranny" } if = { limit = { GER = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = light_tank_chassis seller_tags = { GER } } } if = { limit = { ITA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = light_tank_chassis seller_tags = { ITA } } } if = { limit = { ENG = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = light_tank_chassis seller_tags = { ENG } } } if = { limit = { FRA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = light_tank_chassis seller_tags = { FRA } } } if = { limit = { SOV = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = light_tank_chassis seller_tags = { SOV } } } if = { limit = { SWE = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = light_tank_chassis seller_tags = { SWE } } } } if = { limit = { has_dlc = "No Step Back" } if = { limit = { GER = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = light_tank_chassis_1 amount = 50 producer = GER } add_equipment_to_stockpile = { type = heavy_tank_chassis_1 amount = 15 producer = GER } } if = { limit = { ITA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = light_tank_chassis_1 amount = 35 producer = ITA } } if = { limit = { ENG = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = light_tank_chassis_0 amount = 50 producer = ENG } add_equipment_to_stockpile = { type = light_tank_chassis_1 amount = 25 producer = ENG } if = { limit = { NOT = { has_country_flag = FIN_vickers_template_created_flag } } create_equipment_variant = { name = "Vickers Mark E Tpye B" type = light_tank_chassis_0 parent_version = 0 modules = { main_armament_slot = tank_high_velocity_cannon turret_type_slot = tank_light_one_man_tank_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = secondary_turret_hmg } upgrades = { tank_nsb_armor_upgrade = 3 tank_nsb_engine_upgrade = 2 } obsolete = yes icon = "GFX_FIN_gw_tank_destroyer_vickers_medium" model = "commonwealth_gfx_light_armor_entity" } } add_equipment_to_stockpile = { type = light_tank_chassis_0 variant_name = "Vickers 6 ton A" amount = 26 producer = ENG } } if = { limit = { FRA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = light_tank_chassis_0 amount = 25 producer = FRA } add_equipment_to_stockpile = { type = medium_tank_chassis_0 amount = 15 producer = FRA } } if = { limit = { SOV = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "T-26TU mod. 1933" amount = 50 producer = SOV } add_equipment_to_stockpile = { type = light_tank_chassis_1 variant_name = "BT-5" amount = 25 producer = SOV } add_equipment_to_stockpile = { type = medium_tank_chassis_0 amount = 15 producer = SOV } } if = { limit = { has_dlc = "Arms Against Tyranny" SWE = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = light_tank_chassis_0 amount = 35 producer = SWE } add_equipment_to_stockpile = { type = light_tank_chassis_1 amount = 15 producer = SWE } create_equipment_variant = { name = "Landsverk L-62" type = light_tank_aa_chassis_2 parent_version = 1 modules = { main_armament_slot = tank_anti_air_cannon_2 turret_type_slot = tank_light_three_man_tank_turret suspension_type_slot = tank_torsion_bar_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine } upgrades = { tank_nsb_engine_upgrade = 3 tank_nsb_armor_upgrade = 2 } model = "FIN_light_sp_anti_air_brigade_entity" icon = "GFX_SWE_basic_light_spaa_medium" } add_equipment_to_stockpile = { type = light_tank_aa_chassis_2 variant_name = "Landsverk L-62" amount = 15 producer = SWE } } } else = { if = { limit = { GER = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 50 producer = GER } add_equipment_to_stockpile = { type = heavy_tank_equipment_1 amount = 15 producer = GER } } if = { limit = { ITA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 35 producer = ITA } } if = { limit = { ENG = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = gw_tank_equipment amount = 50 producer = ENG } add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 25 producer = ENG } } if = { limit = { FRA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = gw_tank_equipment amount = 25 producer = FRA } add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 15 producer = FRA } } if = { limit = { SOV = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = gw_tank_equipment amount = 50 producer = SOV } add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 25 producer = SOV } } if = { limit = { has_dlc = "Arms Against Tyranny" SWE = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = gw_tank_equipment amount = 35 producer = SWE } add_equipment_to_stockpile = { type = light_tank_equipment_1 amount = 15 producer = SWE } } } } } } focus = { id = FIN_utilize_the_sami icon = GFX_focus_FIN_utilize_the_sami prerequisite = { focus = FIN_winter_warfare } x = -1 y = 1 relative_position_id = FIN_winter_warfare cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL } completion_reward = { add_ideas = FIN_sami_pathfinders hidden_effect = { set_technology = { sami_pathfinders_tech = 1 popup = no } } } } focus = { id = FIN_long_range_patrols icon = GFX_focus_FIN_sissi prerequisite = { focus = FIN_winter_warfare } prerequisite = { focus = FIN_motti_tactics } x = 1 y = 1 relative_position_id = FIN_winter_warfare cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL } completion_reward = { custom_effect_tooltip = FIN_long_range_patrols_battalion_tt hidden_effect = { set_technology = { long_range_patrol_support_tech = 1 popup = no } } } } focus = { id = FIN_finnish_radio_intelligence icon = GFX_focus_generic_cryptologic_bomb prerequisite = { focus = FIN_motti_tactics } x = 1 y = 1 relative_position_id = FIN_motti_tactics cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_MILITARY_CHARACTER FOCUS_FILTER_RESEARCH } completion_reward = { army_experience = 25 custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_intel_from_combat_factor = 0.1 tooltip = intel_from_combat_factor_tt } add_to_variable = { FIN_finnish_army_recon_factor_while_entrenched = 0.1 tooltip = recon_factor_while_entrenched_tt } custom_effect_tooltip = available_military_high_command show_ideas_tooltip = FIN_reino_hallamaa } } focus = { id = FIN_sissi icon = GFX_focus_FIN_the_cold_front prerequisite = { focus = FIN_long_range_patrols } prerequisite = { focus = FIN_finnish_radio_intelligence } prerequisite = { focus = FIN_utilize_the_sami } mutually_exclusive = { focus = FIN_national_armor_focus } x = 1 y = 1 relative_position_id = FIN_long_range_patrols cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_ARMY_XP FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { army_experience = 35 custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_initiative_factor = 0.02 tooltip = initiative_factor_tt } add_to_variable = { FIN_finnish_army_recon_factor_while_entrenched = 0.1 tooltip = recon_factor_while_entrenched_tt } add_to_variable = { FIN_finnish_army_modifier_army_sub_unit_long_range_patrol_support_attack_factor = 0.1 tooltip = modifier_army_sub_unit_long_range_patrol_support_attack_factor_tt } add_to_variable = { FIN_finnish_army_modifier_army_sub_unit_long_range_patrol_support_defence_factor = 0.1 tooltip = modifier_army_sub_unit_long_range_patrol_support_defence_factor_tt } show_unit_leaders_tooltip = FIN_erkki_raappana } } focus = { id = FIN_national_armor_focus icon = GFX_focus_generic_tank_production prerequisite = { focus = FIN_salvaged_and_retooled } prerequisite = { focus = FIN_finnish_radio_intelligence } mutually_exclusive = { focus = FIN_sissi } x = 0 y = 3 relative_position_id = FIN_salvaged_and_retooled cost = 10 available = { } search_filters = { FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { add_breakthrough_progress = { specialization = specialization_land value = 0.5 } add_tech_bonus = { name = FIN_national_armor_focus bonus = 0.5 uses = 1 # was 2 category = armor } custom_effect_tooltip = generic_skip_one_line_tt show_unit_leaders_tooltip = FIN_ruben_lagus if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_valtion_panssaritehdas_organization = { add_mio_size = 1 add_mio_funds_gain_factor = 0.35 } } else = { if = { limit = { has_idea = FIN_valtion_panssaritehdas } swap_ideas = { remove_idea = FIN_valtion_panssaritehdas add_idea = FIN_valtion_panssaritehdas_improved } } else = { effect_tooltip = { swap_ideas = { remove_idea = FIN_valtion_panssaritehdas add_idea = FIN_valtion_panssaritehdas_improved } } } } if = { limit = { has_dlc = "No Step Back" } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "Pukki" type = light_tank_chassis_3 parent_version = 0 modules = { main_armament_slot = tank_small_cannon_2 turret_type_slot = tank_light_three_man_tank_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = tank_radio_1 special_type_slot_2 = secondary_turret_hmg special_type_slot_3 = additional_machine_guns special_type_slot_4 = additional_machine_guns } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } design_team = mio:FIN_valtion_panssaritehdas_organization } create_equipment_variant = { #Made-up name = "Sonni" type = medium_tank_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_medium_cannon turret_type_slot = tank_medium_three_man_tank_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = tank_radio_1 special_type_slot_2 = secondary_turret_small_cannon special_type_slot_3 = additional_machine_guns special_type_slot_4 = additional_machine_guns } upgrades = { tank_nsb_engine_upgrade = 9 tank_nsb_armor_upgrade = 6 } design_team = mio:FIN_valtion_panssaritehdas_organization } } else = { create_equipment_variant = { #Made-up name = "Pukki" type = light_tank_chassis_3 parent_version = 0 modules = { main_armament_slot = tank_small_cannon_2 turret_type_slot = tank_light_three_man_tank_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = tank_radio_1 special_type_slot_2 = secondary_turret_hmg special_type_slot_3 = additional_machine_guns special_type_slot_4 = additional_machine_guns } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } } create_equipment_variant = { #Made-up name = "Sonni" type = medium_tank_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_medium_cannon turret_type_slot = tank_medium_three_man_tank_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = tank_radio_1 special_type_slot_2 = secondary_turret_small_cannon special_type_slot_3 = additional_machine_guns special_type_slot_4 = additional_machine_guns } upgrades = { tank_nsb_engine_upgrade = 9 tank_nsb_armor_upgrade = 6 } } } hidden_effect = { if = { limit = { has_completed_focus = FIN_militarized_society } mark_focus_tree_layout_dirty = yes } } } } } focus = { id = FIN_innovative_designs icon = GFX_focus_generic_army_tanks2 prerequisite = { focus = FIN_national_armor_focus } x = 0 y = 1 relative_position_id = FIN_national_armor_focus cost = 5 allow_branch = { has_dlc = "No Step Back" has_completed_focus = FIN_national_armor_focus has_completed_focus = FIN_militarized_society } available = { has_tech = super_heavy_tank_chassis } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { if = { #Intended that this is not to shown to the player until the other focus is completed. limit = { has_completed_focus = FIN_militarized_society } random_core_state = { limit = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = arms_factory level = 1 instant_build = yes } } create_equipment_variant = { name = "Hyökkäysvaunu" type = super_heavy_tank_chassis_1 parent_version = 0 modules = { main_armament_slot = tank_heavy_cannon_2 turret_type_slot = tank_super_heavy_three_man_tank_turret suspension_type_slot = tank_torsion_bar_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_gasoline_engine special_type_slot_1 = secondary_turret_hmg special_type_slot_2 = secondary_turret_hmg special_type_slot_3 = wet_ammo_storage special_type_slot_4 = empty } upgrades = { tank_nsb_engine_upgrade = 18 tank_nsb_armor_upgrade = 7 } icon = "GFX_FIN_super_heavy_tank_2_medium" } add_equipment_production = { equipment = { type = super_heavy_tank_chassis_1 creator = "FIN" version_name = "Hyökkäysvaunu" } requested_factories = 1 progress = 0.6 efficiency = 50 } } } } focus = { id = FIN_underground_resistance_cells icon = GFX_goal_generic_major_war prerequisite = { focus = FIN_suomen_maavoimat } x = 2 y = 1 relative_position_id = FIN_suomen_maavoimat cost = 5 available = { has_defensive_war = yes } search_filters = {} completion_reward = { if = { limit = { has_dlc = "La Resistance" } add_ideas = FIN_underground_resistance_cells_ns } else = { add_ideas = FIN_underground_resistance_cells_ns_no_lar } } } focus = { id = FIN_mannerheim_line icon = GFX_goal_fortify_the_westwall prerequisite = { focus = FIN_suomen_maavoimat } x = 4 y = 1 relative_position_id = FIN_suomen_maavoimat cost = 10 available = { has_full_control_of_state = 146 #KARJALA } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { 146 = { #KARJALA #Mannerheim Line add_building_construction = { type = bunker level = 3 instant_build = yes province = 9105 } add_building_construction = { type = bunker level = 3 instant_build = yes province = 9100 } #Supply Hub defenses add_building_construction = { type = bunker level = 2 instant_build = yes province = 3187 } #Viipuri add_building_construction = { type = bunker level = 2 instant_build = yes province = 9206 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 9206 } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 9206 } #Viipuri - Supply Hub to the North East (Sortavala?) build_railway = { path = { 9206 11162 3050 6150 3187 } } add_dynamic_modifier = { modifier = FIN_mannerheim_line_expansion_modifier scope = FIN } } } } focus = { id = FIN_defense_in_depth icon = GFX_goal_generic_defence prerequisite = { focus = FIN_mannerheim_line } x = 0 y = 1 relative_position_id = FIN_mannerheim_line cost = 10 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_army_ns_intro add_to_variable = { FIN_finnish_army_max_dig_in_factor = 0.1 tooltip = max_dig_in_factor_tt } add_to_variable = { FIN_finnish_army_dig_in_speed_factor = 0.05 tooltip = dig_in_speed_factor_tt } add_timed_idea = { idea = FIN_fortification_effort days = 730 } if = { limit = { has_full_control_of_state = 146 #KARJALA has_full_control_of_state = 928 #KYME has_full_control_of_state = 930 #MIKKELI } 146 = { #Viipuri add_building_construction = { type = bunker level = 2 instant_build = yes province = 9206 } } 928 = { #Lappeenranta add_building_construction = { type = bunker level = 2 instant_build = yes province = 6082 } add_building_construction = { type = bunker level = 2 instant_build = yes province = 52 } } 930 = { add_building_construction = { type = bunker level = 2 instant_build = yes province = 3131 } #Savonlina add_building_construction = { type = bunker level = 2 instant_build = yes province = 37 } add_building_construction = { type = supply_node level = 1 instant_build = yes province = 37 } } #Viipuri - Lappeenranta - Savonlina build_railway = { path = { 9206 6082 52 3131 37 } } } } } focus = { id = FIN_helsinki_air_defense icon = GFX_focus_generic_air_defense prerequisite = { focus = FIN_mannerheim_line focus = FIN_expand_air_bases } x = 1 y = 2 relative_position_id = FIN_mannerheim_line cost = 5 available = { is_special_project_completed = sp:sp_air_radar controls_state = 111 #UUSIMAA (Helsinki) } search_filters = { FOCUS_FILTER_HISTORICAL } completion_reward = { 111 = { #UUSIMAA (Helsinki) add_building_construction = { type = bunker level = 3 instant_build = yes province = 11105 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 11105 } add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = radar_station level = 1 instant_build = yes } } } } focus = { id = FIN_suomen_ilmavoimat icon = GFX_focus_FIN_suomen_ilmavoimat prerequisite = { focus = FIN_increase_military_budget } x = 7 y = 0 relative_position_id = FIN_suomen_maavoimat cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_AIR_XP FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { air_experience = 25 add_tech_bonus = { name = FIN_suomen_ilmavoimat bonus = 0.75 uses = 1 category = air_equipment } add_doctrine_cost_reduction = { name = FIN_suomen_ilmavoimat cost_reduction = 0.75 uses = 1 category = air_doctrine } random_core_state = { prioritize = { 111 } #UUSIMAA (Helsinki) (Valtion Lentokonetehdas premises in Jyväskylä) limit = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = arms_factory level = 1 instant_build = yes } } effect_tooltip = { add_ideas = FIN_finnish_airforce_fake } hidden_effect = { add_dynamic_modifier = { modifier = FIN_finnish_airforce } } } } focus = { id = FIN_expand_air_bases icon = GFX_focus_generic_air_bases prerequisite = { focus = FIN_suomen_ilmavoimat } x = -1 y = 1 relative_position_id = FIN_suomen_ilmavoimat cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { # UUSIMAA (Helsinki) if = { limit = { controls_state = 111 111 = { air_base < 9 } } 111 = { add_building_construction = { type = air_base level = 2 instant_build = yes } } } # TURKU (Pori) if = { limit = { controls_state = 926 926 = { air_base < 9 } } 926 = { add_building_construction = { type = air_base level = 2 instant_build = yes } } } #KYME (Kouvola) if = { limit = { controls_state = 928 928 = { air_base < 9 } } 928 = { add_building_construction = { type = air_base level = 2 instant_build = yes } } } #LAPPLAND if = { limit = { controls_state = 148 } if = { limit = { 148 = { air_base < 9 } } 148 = { add_building_construction = { type = air_base level = 2 instant_build = yes } } } 148 = { add_building_construction = { type = infrastructure level = 1 instant_build = yes } #Supply Hub in Rovaniemi add_building_construction = { type = supply_node level = 1 instant_build = yes province = 6087 } #Kemi - Rovaniemi build_railway = { path = { 11164 162 6087 } } } } #PETSAMO if = { limit = { controls_state = 722 } if = { limit = { 722 = { air_base < 10 } } 722 = { add_building_construction = { type = air_base level = 1 instant_build = yes } } } } } } focus = { id = FIN_foreign_aircraft icon = GFX_focus_generic_copy_plane_designs prerequisite = { focus = FIN_expand_air_bases } x = 0 y = 1 relative_position_id = FIN_expand_air_bases cost = 5 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INTERNATIONAL_TRADE } completion_reward = { add_tech_bonus = { name = FIN_foreign_aircraft bonus = 0.5 uses = 2 category = air_equipment } if = { limit = { has_dlc = "Arms Against Tyranny" } custom_effect_tooltip = FIN_foreign_aircraft_equipment_and_subsidies_tt } else = { custom_effect_tooltip = FIN_foreign_aircraft_equipment_only_tt } effect_tooltip = { #Just tooltip purposes every_other_country = { limit = { OR = { original_tag = GER original_tag = ITA original_tag = ENG original_tag = FRA original_tag = USA original_tag = SOV original_tag = SWE original_tag = HOL } FIN_can_purchase_equipment_from_country = yes } display_individual_scopes = yes } } hidden_effect = { if = { limit = { has_dlc = "Arms Against Tyranny" } if = { limit = { GER = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { GER } } } if = { limit = { ITA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { ITA } } } if = { limit = { ENG = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { ENG } } } if = { limit = { FRA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { FRA } } } if = { limit = { USA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { USA } } } if = { limit = { SOV = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { SOV } } } if = { limit = { SWE = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { SWE } } } if = { limit = { HOL = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_subsidy = { cic = FIN_basic_subsidies_value equipment_type = small_plane_airframe seller_tags = { HOL } } } } if = { limit = { has_dlc = "By Blood Alone" } if = { limit = { GER = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = small_plane_airframe_1 amount = 50 producer = GER } add_equipment_to_stockpile = { type = small_plane_cas_airframe_1 amount = 35 producer = GER } add_equipment_to_stockpile = { type = small_plane_naval_bomber_airframe_1 amount = 35 producer = GER } } if = { limit = { ITA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = medium_plane_airframe_1 amount = 25 producer = ITA } } if = { limit = { ENG = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = small_plane_airframe_0 amount = 50 producer = ENG } add_equipment_to_stockpile = { type = medium_plane_airframe_1 amount = 25 producer = ENG } } if = { limit = { FRA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = small_plane_naval_bomber_airframe_0 amount = 35 producer = FRA } } if = { limit = { USA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = small_plane_airframe_1 amount = 25 producer = USA } } if = { limit = { SOV = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = small_plane_airframe_0 amount = 50 producer = SOV } add_equipment_to_stockpile = { type = medium_plane_airframe_1 amount = 35 producer = SOV } add_equipment_to_stockpile = { type = large_plane_airframe_0 amount = 25 producer = SOV } } if = { limit = { HOL = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = medium_plane_airframe_0 amount = 25 producer = HOL } } if = { limit = { has_dlc = "Arms Against Tyranny" SWE = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = small_plane_airframe_0 amount = 35 producer = SWE } } } else = { if = { limit = { GER = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = fighter_equipment_1 amount = 50 producer = GER } add_equipment_to_stockpile = { type = CAS_equipment_1 amount = 35 producer = GER } add_equipment_to_stockpile = { type = nav_bomber_equipment_1 amount = 35 producer = GER } } if = { limit = { ITA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = nav_bomber_equipment_1 amount = 25 producer = ITA } } if = { limit = { ENG = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = fighter_equipment_0 amount = 50 producer = ENG } add_equipment_to_stockpile = { type = CAS_equipment_1 amount = 25 producer = ENG } } if = { limit = { FRA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = nav_bomber_equipment_1 amount = 35 producer = FRA } } if = { limit = { USA = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = fighter_equipment_0 amount = 25 producer = USA } } if = { limit = { SOV = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = fighter_equipment_0 amount = 50 producer = SOV } add_equipment_to_stockpile = { type = tac_bomber_equipment_0 amount = 35 producer = SOV } add_equipment_to_stockpile = { type = strat_bomber_equipment_1 amount = 25 producer = SOV } } if = { limit = { HOL = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = tac_bomber_equipment_0 amount = 25 producer = HOL } } if = { limit = { has_dlc = "Arms Against Tyranny" SWE = { FIN_can_purchase_equipment_from_country = yes } } add_equipment_to_stockpile = { type = fighter_equipment_0 amount = 35 producer = SWE } } } } } } focus = { id = FIN_pilot_training icon = GFX_focus_SOV_flying_clubs prerequisite = { focus = FIN_suomen_ilmavoimat } x = 1 y = 1 relative_position_id = FIN_suomen_ilmavoimat cost = 5 available = { } search_filters = { FOCUS_FILTER_AIR_XP FOCUS_FILTER_RESEARCH FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { air_experience = 25 custom_effect_tooltip = FIN_modify_finnish_airforce_ns_intro add_to_variable = { FIN_finnish_airforce_air_weather_penalty = -0.1 tooltip = air_weather_penalty_tt } add_to_variable = { FIN_finnish_airforce_air_ace_generation_chance_factor = 0.1 tooltip = air_ace_generation_chance_factor_tt } add_to_variable = { FIN_finnish_airforce_air_home_defence_factor = 0.1 tooltip = air_home_defence_factor_tt } add_doctrine_cost_reduction = { name = FIN_pilot_training cost_reduction = 0.5 uses = 1 category = air_doctrine } add_ace = { name = Jorma surname = Sarvanto callsign = Zamba type = fighter_unique } add_ace = { name = Jorma surname = Karhunen callsign = Joppe type = fighter_good } } } focus = { id = FIN_expand_air_force_academy icon = GFX_focus_FIN_expand_air_force_academy prerequisite = { focus = FIN_pilot_training } x = 0 y = 1 relative_position_id = FIN_pilot_training cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_AIR_XP FOCUS_FILTER_RESEARCH FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { air_experience = 35 custom_effect_tooltip = FIN_modify_finnish_airforce_ns_intro add_to_variable = { FIN_finnish_airforce_air_ace_generation_chance_factor = 0.1 tooltip = air_ace_generation_chance_factor_tt } add_to_variable = { FIN_finnish_airforce_ace_effectiveness_factor = 0.1 tooltip = ace_effectiveness_factor_tt } add_to_variable = { FIN_finnish_airforce_air_mission_efficiency = 0.05 tooltip = air_mission_efficiency_tt } add_doctrine_cost_reduction = { name = FIN_expand_air_force_academy cost_reduction = 0.5 uses = 2 category = air_doctrine } #Air Bases in VAASA state (Kauhava and Tikkakoski) if = { limit = { controls_state = 149 } 149 = { add_building_construction = { type = air_base level = 2 instant_build = yes } } } add_ace = { name = Ilmari surname = Juutilainen callsign = Illu type = fighter_genius } add_ace = { name = Hans surname = Wind callsign = Hasse type = fighter_genius } add_ace = { name = Oiva surname = Tuominen callsign = Oippa type = fighter_unique } } } focus = { id = FIN_naval_airforce icon = GFX_goal_generic_air_naval_bomber prerequisite = { focus = FIN_suomen_ilmavoimat } prerequisite = { focus = FIN_suomen_merivoimat } x = 2 y = 3 relative_position_id = FIN_suomen_ilmavoimat cost = 10 available = { if = { limit = { has_dlc = "By Blood Alone" } has_tech = iw_small_airframe } } search_filters = { FOCUS_FILTER_AIR_XP FOCUS_FILTER_NAVY_XP FOCUS_FILTER_RESEARCH } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_airforce_ns_intro add_to_variable = { FIN_finnish_airforce_naval_strike_targetting_factor = 0.1 tooltip = naval_strike_targetting_factor_tt } custom_effect_tooltip = FIN_naval_airforce_ns_tt hidden_effect = { add_ideas = FIN_hidden_naval_bomber_production_ns } add_tech_bonus = { name = FIN_naval_airforce bonus = 0.75 uses = 1 category = naval_bomber } air_experience = 15 navy_experience = 15 if = { limit = { has_dlc = "By Blood Alone" } if = { limit = { has_tech = basic_small_airframe } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { name = "VL Kotka" type = small_plane_naval_bomber_airframe_1 modules = { fixed_main_weapon_slot = torpedo_mounting engine_type_slot = engine_1_1x special_type_slot_1 = empty } icon = "GFX_FIN_naval_bomber1_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } } else = { create_equipment_variant = { name = "VL Kotka" type = small_plane_naval_bomber_airframe_1 modules = { fixed_main_weapon_slot = torpedo_mounting engine_type_slot = engine_1_1x special_type_slot_1 = empty } icon = "GFX_FIN_naval_bomber1_medium" } } } else = { if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { name = "VL Kotka" type = small_plane_naval_bomber_airframe_0 allow_without_tech = yes #Tooltip purposes (focus requires tech anyways) modules = { fixed_main_weapon_slot = torpedo_mounting engine_type_slot = engine_1_1x special_type_slot_1 = empty } icon = "GFX_FIN_iw_small_naval_bomber_1_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } } else = { create_equipment_variant = { name = "VL Kotka" type = small_plane_naval_bomber_airframe_0 allow_without_tech = yes #Tooltip purposes (focus requires tech anyways) modules = { fixed_main_weapon_slot = torpedo_mounting engine_type_slot = engine_1_1x special_type_slot_1 = empty } icon = "GFX_FIN_iw_small_naval_bomber_1_medium" } } } } } } focus = { id = FIN_national_aircraft_production icon = GFX_focus_generic_aircraft_production prerequisite = { focus = FIN_expand_air_bases } prerequisite = { focus = FIN_pilot_training } x = 1 y = 2 relative_position_id = FIN_expand_air_bases cost = 10 available = { } search_filters = { FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { add_tech_bonus = { name = FIN_national_aircraft_production bonus = 0.5 uses = 2 category = air_equipment } random_core_state = { limit = { is_fully_controlled_by = ROOT air_base > 0 free_building_slots = { building = arms_factory size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_valtion_lentokonetehdas_organization = { add_mio_size = 1 add_mio_funds_gain_factor = 0.35 add_mio_research_bonus = 0.1 add_mio_design_team_assign_cost = -0.5 } } else = { if = { limit = { has_idea = FIN_valtion_lentokonetehdas } swap_ideas = { remove_idea = FIN_valtion_lentokonetehdas add_idea = FIN_valtion_lentokonetehdas_improved } } else = { effect_tooltip = { swap_ideas = { remove_idea = FIN_valtion_lentokonetehdas add_idea = FIN_valtion_lentokonetehdas_improved } } } } } } focus = { id = FIN_support_for_ground_forces icon = GFX_focus_generic_cas_aircraft prerequisite = { focus = FIN_national_aircraft_production } mutually_exclusive = { focus = FIN_dominate_the_skies } x = -1 y = 1 relative_position_id = FIN_national_aircraft_production cost = 10 available = { if = { limit = { has_dlc = "By Blood Alone" } has_tech = iw_small_airframe } } search_filters = { FOCUS_FILTER_AIR_XP FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_airforce_ns_intro add_to_variable = { FIN_finnish_airforce_air_cas_efficiency = 0.1 tooltip = air_cas_efficiency_tt } custom_effect_tooltip = FIN_support_for_ground_forces_ns_tt hidden_effect = { add_ideas = FIN_hidden_cas_production_ns } add_tech_bonus = { name = FIN_support_for_ground_forces bonus = 0.75 uses = 1 category = cas_bomber } air_experience = 15 if = { limit = { has_dlc = "By Blood Alone" } if = { limit = { has_tech = improved_small_airframe } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "VL Kemi" type = small_plane_cas_airframe_2 parent_version = 0 modules = { fixed_main_weapon_slot = bomb_locks fixed_auxiliary_weapon_slot_1 = heavy_mg_2x engine_type_slot = engine_2_1x } icon = "GFX_FIN_CAS2_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } } else = { create_equipment_variant = { #Made-up name = "VL Kemi" type = small_plane_cas_airframe_2 parent_version = 0 modules = { fixed_main_weapon_slot = bomb_locks fixed_auxiliary_weapon_slot_1 = heavy_mg_2x engine_type_slot = engine_2_1x } icon = "GFX_FIN_CAS2_medium" } } } else_if = { limit = { has_tech = basic_small_airframe } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "VL Kemi" type = small_plane_cas_airframe_1 parent_version = 0 modules = { fixed_main_weapon_slot = bomb_locks fixed_auxiliary_weapon_slot_1 = heavy_mg_2x engine_type_slot = engine_1_1x } icon = "GFX_FIN_CAS1_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } } else = { create_equipment_variant = { #Made-up name = "VL Kemi" type = small_plane_cas_airframe_1 parent_version = 0 modules = { fixed_main_weapon_slot = bomb_locks fixed_auxiliary_weapon_slot_1 = heavy_mg_2x engine_type_slot = engine_1_1x } icon = "GFX_FIN_CAS1_medium" } } } else = { if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "VL Kemi" type = small_plane_cas_airframe_0 parent_version = 0 modules = { fixed_main_weapon_slot = bomb_locks engine_type_slot = engine_1_1x } icon = "GFX_FIN_CAS1_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } } else = { create_equipment_variant = { #Made-up name = "VL Kemi" type = small_plane_cas_airframe_0 parent_version = 0 modules = { fixed_main_weapon_slot = bomb_locks engine_type_slot = engine_1_1x } icon = "GFX_FIN_CAS1_medium" } } } } } } focus = { id = FIN_dominate_the_skies icon = GFX_goal_generic_air_fighter prerequisite = { focus = FIN_national_aircraft_production } mutually_exclusive = { focus = FIN_support_for_ground_forces } x = 1 y = 1 relative_position_id = FIN_national_aircraft_production cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_AIR_XP FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_airforce_ns_intro add_to_variable = { FIN_finnish_airforce_air_superiority_efficiency = 0.1 tooltip = air_superiority_efficiency_tt } custom_effect_tooltip = FIN_dominate_the_skies_ns_tt hidden_effect = { add_ideas = FIN_hidden_fighter_production_ns } add_tech_bonus = { name = FIN_dominate_the_skies bonus = 0.75 uses = 1 category = light_fighter } air_experience = 15 if = { limit = { has_dlc = "By Blood Alone" } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { name = "VL Pyörremyrsky" type = small_plane_airframe_4 parent_version = 0 modules = { fixed_main_weapon_slot = heavy_mg_2x fixed_auxiliary_weapon_slot_1 = aircraft_cannon_1_1x fixed_auxiliary_weapon_slot_2 = bomb_locks engine_type_slot = engine_4_1x } icon = "GFX_FIN_modern_small_fighter_1_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } create_equipment_variant = { name = "VL Humu" type = small_plane_airframe_3 parent_version = 0 modules = { fixed_main_weapon_slot = heavy_mg_2x fixed_auxiliary_weapon_slot_1 = heavy_mg_2x engine_type_slot = engine_3_1x } icon = "GFX_FIN_fighter3_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } create_equipment_variant = { name = "VL Myrsky" type = small_plane_airframe_2 parent_version = 0 modules = { fixed_main_weapon_slot = heavy_mg_2x fixed_auxiliary_weapon_slot_1 = bomb_locks engine_type_slot = engine_2_1x } icon = "GFX_FIN_fighter2_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } create_equipment_variant = { #Made-up name = "IVL Haukka II" type = small_plane_airframe_1 parent_version = 0 modules = { fixed_main_weapon_slot = heavy_mg_2x engine_type_slot = engine_1_1x } icon = "GFX_FIN_fighter1_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } create_equipment_variant = { name = "IVL Haukka" type = small_plane_airframe_0 parent_version = 0 modules = { fixed_main_weapon_slot = light_mg_2x engine_type_slot = engine_1_1x } icon = "GFX_FIN_early_fighter_medium" design_team = mio:FIN_valtion_lentokonetehdas_organization } } else = { create_equipment_variant = { name = "VL Pyörremyrsky" type = small_plane_airframe_4 parent_version = 0 modules = { fixed_main_weapon_slot = heavy_mg_2x fixed_auxiliary_weapon_slot_1 = aircraft_cannon_1_1x fixed_auxiliary_weapon_slot_2 = bomb_locks engine_type_slot = engine_4_1x } icon = "GFX_FIN_modern_small_fighter_1_medium" } create_equipment_variant = { name = "VL Humu" type = small_plane_airframe_3 parent_version = 0 modules = { fixed_main_weapon_slot = heavy_mg_2x fixed_auxiliary_weapon_slot_1 = heavy_mg_2x engine_type_slot = engine_3_1x } icon = "GFX_FIN_fighter3_medium" } create_equipment_variant = { name = "VL Myrsky" type = small_plane_airframe_2 parent_version = 0 modules = { fixed_main_weapon_slot = heavy_mg_2x fixed_auxiliary_weapon_slot_1 = bomb_locks engine_type_slot = engine_2_1x } icon = "GFX_FIN_fighter2_medium" } create_equipment_variant = { #Made-up name = "IVL Haukka II" type = small_plane_airframe_1 parent_version = 0 modules = { fixed_main_weapon_slot = heavy_mg_2x engine_type_slot = engine_1_1x } icon = "GFX_FIN_fighter1_medium" } create_equipment_variant = { name = "IVL Haukka" type = small_plane_airframe_0 parent_version = 0 modules = { fixed_main_weapon_slot = light_mg_2x engine_type_slot = engine_1_1x } icon = "GFX_FIN_early_fighter_medium" } } } } } focus = { id = FIN_expand_production_lines icon = GFX_focus_generic_industry_3 prerequisite = { focus = FIN_support_for_ground_forces focus = FIN_dominate_the_skies } mutually_exclusive = { focus = FIN_modernize_production_lines } x = -1 y = 1 relative_position_id = FIN_support_for_ground_forces cost = 10 available = { has_tech = advanced_machine_tools } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { if = { limit = { any_core_state = { arms_factory > 0 free_building_slots = { building = arms_factory size > 1 } } } random_core_state = { limit = { arms_factory > 0 free_building_slots = { building = arms_factory size > 1 } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } if = { limit = { ROOT = { any_core_state = { NOT = { state = PREV.PREV } arms_factory > 0 free_building_slots = { building = arms_factory size > 1 } } } } ROOT = { random_core_state = { limit = { NOT = { state = PREV.PREV } arms_factory > 0 free_building_slots = { building = arms_factory size > 1 } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } } } else = { ROOT = { random_core_state = { limit = { NOT = { state = PREV.PREV } free_building_slots = { building = arms_factory size > 1 } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } } } } } } } focus = { id = FIN_modernize_production_lines icon = GFX_goal_generic_air_production prerequisite = { focus = FIN_dominate_the_skies focus = FIN_support_for_ground_forces } prerequisite = { focus = FIN_naval_airforce } mutually_exclusive = { focus = FIN_expand_production_lines } x = 1 y = 1 relative_position_id = FIN_dominate_the_skies cost = 10 available = { has_tech = advanced_machine_tools } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { if = { limit = { has_completed_focus = FIN_support_for_ground_forces } custom_effect_tooltip = FIN_modernize_production_lines_cas_designs_tt hidden_effect = { if = { limit = { has_idea = FIN_hidden_cas_production_ns } swap_ideas = { remove_idea = FIN_hidden_cas_production_ns add_idea = FIN_hidden_cas_production_ns_improved } } else = { #Extra check for weird situations add_ideas = FIN_hidden_cas_production_ns_improved } } } else_if = { limit = { has_completed_focus = FIN_dominate_the_skies } custom_effect_tooltip = FIN_modernize_production_lines_fighter_designs_tt hidden_effect = { if = { limit = { has_idea = FIN_hidden_fighter_production_ns } swap_ideas = { remove_idea = FIN_hidden_fighter_production_ns add_idea = FIN_hidden_fighter_production_ns_improved } } else = { #Extra check for weird situations add_ideas = FIN_hidden_fighter_production_ns_improved } } } else = { custom_effect_tooltip = FIN_modernize_production_lines_no_focus_tt } custom_effect_tooltip = FIN_modernize_production_lines_naval_airforce_tt hidden_effect = { if = { limit = { has_idea = FIN_hidden_naval_bomber_production_ns } swap_ideas = { remove_idea = FIN_hidden_naval_bomber_production_ns add_idea = FIN_hidden_naval_bomber_production_ns_improved } } else = { #Extra check for weird situations add_ideas = FIN_hidden_naval_bomber_production_ns_improved } } } } focus = { id = FIN_suomen_merivoimat icon = GFX_focus_FIN_suomen_merivoimat prerequisite = { focus = FIN_increase_military_budget } x = 6 y = 0 relative_position_id = FIN_suomen_ilmavoimat cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_NAVY_XP FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { navy_experience = 25 add_tech_bonus = { name = FIN_suomen_merivoimat bonus = 0.75 uses = 1 category = naval_equipment } add_doctrine_cost_reduction = { name = FIN_suomen_merivoimat cost_reduction = 0.75 uses = 1 category = naval_doctrine } random_core_state = { prioritize = { 149 } #VAASA limit = { is_fully_controlled_by = ROOT free_building_slots = { building = dockyard size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } effect_tooltip = { add_ideas = FIN_finnish_navy_fake } hidden_effect = { add_dynamic_modifier = { modifier = FIN_finnish_navy } } } } focus = { id = FIN_the_merchant_fleet icon = GFX_focus_generic_merchant_fleet prerequisite = { focus = FIN_suomen_merivoimat } x = -3 y = 1 relative_position_id = FIN_suomen_merivoimat cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_navy_ns_intro add_to_variable = { FIN_finnish_navy_convoy_retreat_speed = 0.1 tooltip = convoy_retreat_speed_tt } custom_effect_tooltip = FIN_the_merchant_fleet_ns_tt hidden_effect = { add_ideas = FIN_hidden_convoy_production_ns } add_equipment_to_stockpile = { type = convoy amount = 50 producer = ROOT } } } focus = { id = FIN_conversion_of_civilian_vessels icon = GFX_focus_generic_refit_civilian_ships prerequisite = { focus = FIN_the_merchant_fleet } prerequisite = { focus = FIN_coastal_defense } x = 1 y = 1 relative_position_id = FIN_the_merchant_fleet cost = 10 available = { has_war = yes if = { limit = { NOT = { has_dlc = "Man the Guns" } } has_tech = early_destroyer } } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_navy_ns_intro if = { limit = { has_dlc = "Man the Guns" } add_to_variable = { FIN_finnish_navy_refit_speed = 0.1 tooltip = refit_speed_tt } } custom_effect_tooltip = FIN_conversion_of_civilian_vessels_ns_tt hidden_effect = { if = { limit = { has_dlc = "Man the Guns" } add_ideas = FIN_hidden_dd_and_coastal_defense_production_ns } else = { add_ideas = FIN_hidden_dd_and_coastal_defense_production_ns_no_mtg } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_crichton_vulcan_organization = { add_mio_funds_gain_factor = 0.15 } } else = { if = { limit = { has_idea = FIN_crichton_vulcan } swap_ideas = { remove_idea = FIN_crichton_vulcan add_idea = FIN_crichton_vulcan_improved } } else = { effect_tooltip = { swap_ideas = { remove_idea = FIN_crichton_vulcan add_idea = FIN_crichton_vulcan_improved } } } } unlock_decision_category_tooltip = generic_refit_civilian_ships_category set_country_flag = refit_convoy_ships_flag #Necessary flag for unlocking Refit Civilian Ships decs #The variants created here replace the variants that can be created via decisions set_country_flag = refit_to_destroyer_flag set_country_flag = refit_to_cruiser_flag if = { limit = { has_dlc = "Man the Guns" } # DESTROYER create_equipment_variant = { #Made-up name = "Refitted Destroyer Class" type = ship_hull_light_1 name_group = "FIN_DD_HISTORICAL" #Note: Doesn't matter if ROOT is not DEN, the effect will grab the appropriate country-specific name list anyways parent_version = 0 modules = { fixed_ship_battery_slot = ship_light_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = ship_fire_control_system_0 fixed_ship_radar_slot = empty fixed_ship_engine_slot = light_ship_engine_1 fixed_ship_torpedo_slot = ship_torpedo_1 mid_1_custom_slot = empty rear_1_custom_slot = empty } obsolete = yes design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = ship_hull_light_1 creator = "FIN" version_name = "Refitted Destroyer Class" } name = "Mikkeli" requested_factories = 1 progress = 0.75 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } # Light Cruiser create_equipment_variant = { #Made-up name = "Refitted Cruiser Class" type = ship_hull_cruiser_1 name_group = FIN_CL_HISTORICAL parent_version = 0 modules = { fixed_ship_battery_slot = ship_light_medium_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = ship_fire_control_system_0 fixed_ship_radar_slot = empty fixed_ship_engine_slot = cruiser_ship_engine_1 fixed_ship_armor_slot = ship_armor_cruiser_1 fixed_ship_secondaries_slot = dp_ship_secondaries_1 mid_1_custom_slot = empty mid_2_custom_slot = empty rear_1_custom_slot = empty } obsolete = yes design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = ship_hull_cruiser_1 creator = "FIN" version_name = "Refitted Cruiser Class" } name = "Pori" requested_factories = 1 progress = 0.75 amount = 1 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } #NO MTG else = { # DESTROYER create_equipment_variant = { #Made-up name = "Refitted Destroyer Class" type = destroyer_1 upgrades = { ship_torpedo_upgrade = 0 destroyer_engine_upgrade = 0 ship_ASW_upgrade = 0 ship_anti_air_upgrade = 0 } obsolete = yes design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = destroyer_1 creator = "FIN" version_name = "Refitted Destroyer Class" } name = "Mikkeli" requested_factories = 1 progress = 0.75 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } if = { limit = { NOT = { has_tech = early_light_cruiser } } hidden_effect = { set_technology = { early_light_cruiser = 1 } } } # CRUISER create_equipment_variant = { #Made-up name = "Refitted Cruiser Class" type = light_cruiser_1 upgrades = { ship_reliability_upgrade = 0 ship_engine_upgrade = 0 ship_gun_upgrade = 0 ship_anti_air_upgrade = 0 } obsolete = yes design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = light_cruiser_1 creator = "FIN" version_name = "Refitted Cruiser Class" } name = "Pori" requested_factories = 1 progress = 0.75 amount = 1 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } # COASTAL DEFENSE SHIP if = { limit = { has_dlc = "Man the Guns" } create_equipment_variant = { #Made-up name = "Refitted Coastal Defense Ship" type = ship_hull_cruiser_coastal_defense_ship name_group = FIN_BC_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since focus grants appropriate tech (above), but it improves tooltip modules = { front_1_custom_slot = ship_anti_air_1 mid_1_custom_slot = ship_anti_air_1 #mid_2_custom_slot = ship_anti_air_1 rear_1_custom_slot = ship_light_medium_battery_1 fixed_ship_battery_slot = ship_light_medium_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = ship_fire_control_system_0 fixed_ship_radar_slot = empty fixed_ship_engine_slot = cruiser_ship_engine_1 fixed_ship_secondaries_slot = ship_secondaries_1 fixed_ship_armor_slot = ship_armor_cruiser_1 } design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = ship_hull_cruiser_coastal_defense_ship creator = "FIN" version_name = "Refitted Coastal Defense Ship" } name = "Voima" requested_factories = 1 progress = 0.75 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } } } focus = { id = FIN_coastal_defense icon = GFX_focus_FIN_coastal_defense prerequisite = { focus = FIN_suomen_merivoimat } x = 0 y = 1 relative_position_id = FIN_suomen_merivoimat cost = 10 available = { } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_navy_ns_intro add_to_variable = { FIN_finnish_navy_spotting_chance = 0.05 tooltip = spotting_chance_tt } if = { limit = { any_core_state = { is_fully_controlled_by = ROOT is_coastal = yes dockyard > 0 free_building_slots = { building = dockyard size > 0 } } } random_core_state = { limit = { is_fully_controlled_by = ROOT is_coastal = yes dockyard > 0 free_building_slots = { building = dockyard size > 0 } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } else = { random_core_state = { limit = { is_fully_controlled_by = ROOT is_coastal = yes free_building_slots = { building = dockyard size > 0 } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } add_doctrine_cost_reduction = { name = FIN_coastal_defense cost_reduction = 0.5 uses = 1 category = naval_doctrine } show_unit_leaders_tooltip = FIN_svante_sundman if = { limit = { has_dlc = "No Step Back" } add_ideas = FIN_coastal_batteries_effort if = { limit = { NOT = { has_tech = railway_gun } } add_tech_bonus = { name = FIN_coastal_defense bonus = 0.5 uses = 1 technology = railway_gun } } } # Tooltip for unlocking Coastal Garrisons dec if = { limit = { NOT = { has_country_flag = FIN_coastal_garrisons_deployed_flag } } custom_effect_tooltip = FIN_coastal_defense_coastal_garrisons_dec_tt } #Reduce cost and time if already unlocked if = { limit = { has_completed_focus = FIN_defensive_preparations } divide_variable = { FIN_coastal_garrisons_pp_xp_cost = 2 } set_variable = { FIN_coastal_garrisons_pp_xp_cost_trigger = FIN_coastal_garrisons_pp_xp_cost } add_to_variable = { FIN_coastal_garrisons_pp_xp_cost_trigger = -1 } divide_variable = { FIN_coastal_garrisons_cp_cost = 2 } set_variable = { FIN_coastal_garrisons_cp_cost_trigger = FIN_coastal_garrisons_cp_cost } add_to_variable = { FIN_coastal_garrisons_cp_cost_trigger = -1 } divide_variable = { FIN_coastal_garrisons_time = 2 } } } } focus = { id = FIN_marine_jaeger_divisions icon = GFX_goal_generic_amphibious_assault prerequisite = { focus = FIN_coastal_defense } x = 0 y = 1 relative_position_id = FIN_coastal_defense cost = 10 available = { has_tech = marines } search_filters = { FOCUS_FILTER_RESEARCH FOCUS_FILTER_MANPOWER } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_navy_ns_intro add_to_variable = { FIN_finnish_navy_extra_marine_supply_grace = 48 tooltip = extra_marine_supply_grace_tt } add_to_variable = { FIN_finnish_navy_naval_invasion_capacity = 15 tooltip = naval_invasion_capacity_tt } if = { limit = { has_dlc = "Arms Against Tyranny" } add_doctrine_cost_reduction = { name = FIN_marine_jaeger_divisions cost_reduction = 0.5 uses = 2 category = special_forces_doctrine } custom_effect_tooltip = marine_subdoctrines_default_add_mastery_bonus_effect_tooltip hidden_effect = { add_mastery_bonus = { name = FIN_marine_jaeger_divisions bonus = 0.1 days = 240 sub_doctrine = marines_1 } add_mastery_bonus = { name = FIN_marine_jaeger_divisions bonus = 0.1 days = 240 sub_doctrine = marines_2 } } } add_tech_bonus = { name = FIN_marine_jaeger_divisions bonus = 1.0 uses = 1 category = marine_tech category = tp_tech } hidden_effect = { if = { limit = { NOT = { has_template = "Marines" } } load_oob = "unlock_marines" } } division_template = { name = "Rannikkojääkäritdivisioona" template_counter = 33 regiments = { marine = { x = 0 y = 0 } marine = { x = 0 y = 1 } marine = { x = 1 y = 0 } marine = { x = 1 y = 1 } marine = { x = 2 y = 0 } marine = { x = 2 y = 1 } } support = { engineer = { x = 0 y = 0 } recon = { x = 0 y = 1 } artillery = { x = 0 y = 2 } } } capital_scope = { create_unit = { division = "division_template = \"Rannikkojääkäritdivisioona\" start_experience_factor = 0.7 start_equipment_factor = 1.0" owner = ROOT count = 1 } } } } focus = { id = FIN_rapid_raiders icon = GFX_focus_generic_destroyer prerequisite = { focus = FIN_coastal_defense } mutually_exclusive = { focus = FIN_deep_sea_raiders } x = -1 y = 2 relative_position_id = FIN_coastal_defense cost = 5 available = { } search_filters = { FOCUS_FILTER_NAVY_XP FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { navy_experience = 35 if = { limit = { has_dlc = "Man the Guns" } add_tech_bonus = { name = FIN_rapid_raiders bonus = 0.5 uses = 2 category = cat_torpedoes category = naval_mines category = dd_tech } } else = { add_tech_bonus = { name = FIN_rapid_raiders bonus = 0.5 uses = 2 category = dd_tech } } random_core_state = { limit = { free_building_slots = { building = dockyard size > 0 include_locked = yes } } prioritize = { 926 111 149 } #TURKU HELSINKI VAASA add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_crichton_vulcan_organization = { complete_mio_trait = FIN_mio_trait_rapid_raiders add_mio_size = 1 #For Covering Production line below } } if = { limit = { has_dlc = "Man the Guns" } if = { limit = { has_tech = improved_ship_hull_light } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "Turku Class" type = ship_hull_light_3 name_group = FIN_DD_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_battery_slot = ship_light_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = empty fixed_ship_radar_slot = empty fixed_ship_engine_slot = light_ship_engine_3 fixed_ship_torpedo_slot = ship_torpedo_2 mid_1_custom_slot = ship_torpedo_2 rear_1_custom_slot = ship_torpedo_2 front_1_custom_slot = ship_anti_air_1 } design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = ship_hull_light_3 creator = "FIN" version_name = "Turku Class" } name = "Turku" requested_factories = 1 progress = 0.65 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } else = { create_equipment_variant = { #Made-up name = "Turku Class" type = ship_hull_light_3 name_group = FIN_DD_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_battery_slot = ship_light_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = empty fixed_ship_radar_slot = empty fixed_ship_engine_slot = light_ship_engine_3 fixed_ship_torpedo_slot = ship_torpedo_2 mid_1_custom_slot = ship_torpedo_2 rear_1_custom_slot = ship_torpedo_2 front_1_custom_slot = ship_anti_air_1 } } #Line Production add_equipment_production = { equipment = { type = ship_hull_light_3 creator = "FIN" version_name = "Turku Class" } name = "Turku" requested_factories = 1 progress = 0.65 amount = 3 } } } else_if = { limit = { has_tech = basic_ship_hull_light } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "Turku Class" type = ship_hull_light_2 name_group = FIN_DD_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_battery_slot = ship_light_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = empty fixed_ship_radar_slot = empty fixed_ship_engine_slot = light_ship_engine_2 fixed_ship_torpedo_slot = ship_torpedo_2 mid_1_custom_slot = ship_torpedo_2 rear_1_custom_slot = ship_torpedo_2 #front_1_custom_slot = ship_light_battery_2 } design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = ship_hull_light_2 creator = "FIN" version_name = "Turku Class" } name = "Turku" requested_factories = 1 progress = 0.55 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } else = { create_equipment_variant = { #Made-up name = "Turku Class" type = ship_hull_light_2 name_group = FIN_DD_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_battery_slot = ship_light_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = empty fixed_ship_radar_slot = empty fixed_ship_engine_slot = light_ship_engine_2 fixed_ship_torpedo_slot = ship_torpedo_2 mid_1_custom_slot = ship_torpedo_2 rear_1_custom_slot = ship_torpedo_2 #front_1_custom_slot = ship_light_battery_2 } } #Line Production add_equipment_production = { equipment = { type = ship_hull_light_2 creator = "FIN" version_name = "Turku Class" } name = "Turku" requested_factories = 1 progress = 0.55 amount = 3 } } } else = { if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "Turku Class" type = ship_hull_light_1 name_group = FIN_DD_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_battery_slot = ship_light_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = empty fixed_ship_radar_slot = empty fixed_ship_engine_slot = light_ship_engine_1 fixed_ship_torpedo_slot = ship_torpedo_1 mid_1_custom_slot = ship_torpedo_1 rear_1_custom_slot = ship_torpedo_1 #front_1_custom_slot = ship_light_battery_2 } design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = ship_hull_light_1 creator = "FIN" version_name = "Turku Class" } name = "Turku" requested_factories = 1 progress = 0.45 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } else = { create_equipment_variant = { #Made-up name = "Turku Class" type = ship_hull_light_1 name_group = FIN_DD_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_battery_slot = ship_light_battery_1 fixed_ship_anti_air_slot = ship_anti_air_1 fixed_ship_fire_control_system_slot = empty fixed_ship_radar_slot = empty fixed_ship_engine_slot = light_ship_engine_1 fixed_ship_torpedo_slot = ship_torpedo_1 mid_1_custom_slot = ship_torpedo_1 rear_1_custom_slot = ship_torpedo_1 #front_1_custom_slot = ship_light_battery_2 } } #Line Production add_equipment_production = { equipment = { type = ship_hull_light_1 creator = "FIN" version_name = "Turku Class" } name = "Turku" requested_factories = 1 progress = 0.45 amount = 3 } } } } } } focus = { id = FIN_deep_sea_raiders icon = GFX_goal_generic_navy_submarine prerequisite = { focus = FIN_coastal_defense } mutually_exclusive = { focus = FIN_rapid_raiders } x = 1 y = 2 relative_position_id = FIN_coastal_defense cost = 5 available = { } search_filters = { FOCUS_FILTER_NAVY_XP FOCUS_FILTER_RESEARCH FOCUS_FILTER_INDUSTRY } completion_reward = { navy_experience = 35 if = { limit = { has_dlc = "Man the Guns" } add_tech_bonus = { name = FIN_deep_sea_raiders bonus = 0.5 uses = 2 category = ss_tech category = cat_torpedoes } } else = { add_tech_bonus = { name = FIN_deep_sea_raiders bonus = 0.5 uses = 2 category = ss_tech } } random_core_state = { limit = { free_building_slots = { building = dockyard size > 0 include_locked = yes } } prioritize = { 926 111 149 } #TURKU HELSINKI VAASA add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_crichton_vulcan_organization = { complete_mio_trait = FIN_mio_trait_deep_sea_raiders add_mio_size = 1 } } if = { limit = { has_dlc = "Man the Guns" } if = { limit = { has_tech = improved_ship_hull_submarine } if = { limit = { has_tech = basic_submarine_snorkel } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { name = "Oulu Class" type = ship_hull_submarine_3 name_group = FIN_SS_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_torpedo_slot = ship_torpedo_sub_2 fixed_ship_engine_slot = sub_ship_engine_2 front_1_custom_slot = ship_torpedo_sub_2 mid_1_custom_slot = ship_sub_snorkel_1 rear_1_custom_slot = ship_torpedo_sub_2 } design_team = mio:FIN_crichton_vulcan_organization } } else = { create_equipment_variant = { name = "Oulu Class" type = ship_hull_submarine_3 name_group = FIN_SS_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_torpedo_slot = ship_torpedo_sub_2 fixed_ship_engine_slot = sub_ship_engine_2 front_1_custom_slot = ship_torpedo_sub_2 mid_1_custom_slot = ship_sub_snorkel_1 rear_1_custom_slot = ship_torpedo_sub_2 } } } } else = { if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "Oulu Class" type = ship_hull_submarine_3 name_group = FIN_SS_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_torpedo_slot = ship_torpedo_sub_2 fixed_ship_engine_slot = sub_ship_engine_2 front_1_custom_slot = ship_torpedo_sub_2 mid_1_custom_slot = empty rear_1_custom_slot = ship_torpedo_sub_2 } design_team = mio:FIN_crichton_vulcan_organization } } else = { create_equipment_variant = { #Made-up name = "Oulu Class" type = ship_hull_submarine_3 name_group = FIN_SS_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_torpedo_slot = ship_torpedo_sub_2 fixed_ship_engine_slot = sub_ship_engine_2 front_1_custom_slot = ship_torpedo_sub_2 mid_1_custom_slot = empty rear_1_custom_slot = ship_torpedo_sub_2 } } } } #Line Production if = { limit = { has_dlc = "Arms Against Tyranny" } add_equipment_production = { equipment = { type = ship_hull_submarine_3 creator = "FIN" version_name = "Oulu Class" } name = "Oulu" requested_factories = 1 progress = 0.65 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } else = { add_equipment_production = { equipment = { type = ship_hull_submarine_3 creator = "FIN" version_name = "Oulu Class" } name = "Oulu" requested_factories = 1 progress = 0.65 amount = 3 } } } else_if = { limit = { has_tech = basic_ship_hull_submarine } if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "Oulu Class" type = ship_hull_submarine_2 name_group = FIN_SS_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_torpedo_slot = ship_torpedo_sub_2 fixed_ship_engine_slot = sub_ship_engine_2 rear_1_custom_slot = ship_torpedo_sub_2 } design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = ship_hull_submarine_2 creator = "FIN" version_name = "Oulu Class" } name = "Oulu" requested_factories = 1 progress = 0.55 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } else = { create_equipment_variant = { #Made-up name = "Oulu Class" type = ship_hull_submarine_2 name_group = FIN_SS_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_torpedo_slot = ship_torpedo_sub_2 fixed_ship_engine_slot = sub_ship_engine_2 rear_1_custom_slot = ship_torpedo_sub_2 } } #Line Production add_equipment_production = { equipment = { type = ship_hull_submarine_2 creator = "FIN" version_name = "Oulu Class" } name = "Oulu" requested_factories = 1 progress = 0.55 amount = 3 } } } else = { if = { limit = { has_dlc = "Arms Against Tyranny" } create_equipment_variant = { #Made-up name = "Oulu Class" type = ship_hull_submarine_1 name_group = FIN_SS_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_torpedo_slot = ship_torpedo_sub_1 fixed_ship_engine_slot = sub_ship_engine_1 rear_1_custom_slot = ship_torpedo_sub_1 } design_team = mio:FIN_crichton_vulcan_organization } #Line Production add_equipment_production = { equipment = { type = ship_hull_submarine_1 creator = "FIN" version_name = "Oulu Class" } name = "Oulu" requested_factories = 1 progress = 0.45 amount = 3 industrial_manufacturer = mio:FIN_crichton_vulcan_organization } } else = { create_equipment_variant = { #Made-up name = "Oulu Class" type = ship_hull_submarine_1 name_group = FIN_SS_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since checks for tech, for tooltip purposes only modules = { fixed_ship_torpedo_slot = ship_torpedo_sub_1 fixed_ship_engine_slot = sub_ship_engine_1 rear_1_custom_slot = ship_torpedo_sub_1 } } #Line Production add_equipment_production = { equipment = { type = ship_hull_submarine_1 creator = "FIN" version_name = "Oulu Class" } name = "Oulu" requested_factories = 1 progress = 0.45 amount = 3 } } } } } } focus = { id = FIN_sea_mines_strategy icon = GFX_focus_generic_mine_warfare prerequisite = { focus = FIN_rapid_raiders focus = FIN_deep_sea_raiders } x = 1 y = 1 relative_position_id = FIN_rapid_raiders cost = 5 available = { } search_filters = { FOCUS_FILTER_NAVY_XP FOCUS_FILTER_RESEARCH } completion_reward = { if = { limit = { has_dlc = "Man the Guns" } custom_effect_tooltip = FIN_modify_finnish_navy_ns_intro add_to_variable = { FIN_finnish_navy_mines_planting_by_fleets_factor = 0.1 tooltip = mines_planting_by_fleets_factor_tt } add_to_variable = { FIN_finnish_navy_naval_mines_effect_reduction = 0.15 tooltip = naval_mines_effect_reduction_tt } navy_experience = 25 add_tech_bonus = { name = FIN_sea_mines_strategy bonus = 0.5 uses = 2 category = naval_mines } # Tooltip for unlocking Mine the Sea dec if = { limit = { NOT = { has_country_flag = FIN_sea_mines_deployed_flag } } custom_effect_tooltip = FIN_defensive_preparations_mining_the_sea_dec_tt } #Reduce cost and time if already unlocked if = { limit = { has_completed_focus = FIN_defensive_preparations } divide_variable = { FIN_mining_the_sea_pp_xp_cost = 2 } set_variable = { FIN_mining_the_sea_pp_xp_cost_trigger = FIN_mining_the_sea_pp_xp_cost } add_to_variable = { FIN_mining_the_sea_pp_xp_cost_trigger = -1 } divide_variable = { FIN_mining_the_sea_cp_cost = 2 } set_variable = { FIN_mining_the_sea_cp_cost_trigger = FIN_mining_the_sea_cp_cost } add_to_variable = { FIN_mining_the_sea_cp_cost_trigger = -1 } divide_variable = { FIN_mining_the_sea_time = 2 } } } else = { navy_experience = 50 add_tech_bonus = { name = FIN_sea_mines_strategy bonus = 0.5 uses = 2 category = dd_tech category = ca_tech } } add_doctrine_cost_reduction = { name = FIN_sea_mines_strategy cost_reduction = 0.5 uses = 2 category = naval_doctrine } } } focus = { id = FIN_strengthen_the_naval_bases icon = GFX_focus_generic_coastal_fort prerequisite = { focus = FIN_suomen_merivoimat } x = 2 y = 1 relative_position_id = FIN_suomen_merivoimat cost = 5 available = { } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { add_to_variable = { FIN_finnish_navy_repair_speed_factor = 0.1 } custom_effect_tooltip = FIN_strengthen_the_naval_bases_ns_tt if = { limit = { has_full_control_of_state = 926 } #TURKU 926 = { add_building_construction = { type = naval_base level = 2 instant_build = yes province = 3083 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 3083 } } } if = { limit = { has_full_control_of_state = 111 } #UUSIMAA (Helsinki) 111 = { add_building_construction = { type = naval_base level = 2 instant_build = yes province = 11105 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 11105 } } } if = { limit = { has_full_control_of_state = 145 } #ÅLAND 145 = { add_building_construction = { type = naval_base level = 2 instant_build = yes province = 9228 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 9228 } } } if = { limit = { has_full_control_of_state = 149 } #VAASA 149 = { add_building_construction = { type = naval_base level = 2 instant_build = yes province = 3122 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 3122 } } } if = { limit = { has_full_control_of_state = 929 } #OULU 929 = { add_building_construction = { type = naval_base level = 2 instant_build = yes province = 158 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 158 } } } } } focus = { id = FIN_acquire_andros_dockyards icon = GFX_focus_FIN_acquire_andros_dockyards prerequisite = { focus = FIN_suomen_merivoimat } x = 4 y = 1 relative_position_id = FIN_suomen_merivoimat cost = 5 available = { has_full_control_of_state = 926 } search_filters = { FOCUS_FILTER_HISTORICAL FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_navy_ns_intro add_to_variable = { FIN_finnish_navy_industrial_capacity_dockyard = 0.05 tooltip = industrial_capacity_dockyard_tt } if = { limit = { 926 = { free_building_slots = { building = dockyard size > 0 include_locked = yes } } } 926 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_crichton_vulcan_organization = { add_mio_size = 1 add_mio_funds_gain_factor = 0.15 add_mio_research_bonus = 0.05 unlock_mio_trait_tooltip = FIN_mio_trait_andros_engines } } } } focus = { id = FIN_expand_ship_building_industry icon = GFX_goal_generic_construct_naval_dockyard prerequisite = { focus = FIN_strengthen_the_naval_bases } prerequisite = { focus = FIN_acquire_andros_dockyards } x = 0 y = 1 relative_position_id = FIN_strengthen_the_naval_bases cost = 10 available = { OR = { has_full_control_of_state = 111 #UUSIMAA (Helsinki) has_full_control_of_state = 928 #KYME (Kotka) has_full_control_of_state = 149 #VAASA (Vaasa) } } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_navy_ns_intro add_to_variable = { FIN_finnish_navy_production_speed_dockyard_factor = 0.1 tooltip = production_speed_dockyard_factor_tt } #UUSIMAA (Helsinki) if = { limit = { 111 = { free_building_slots = { building = dockyard size > 0 include_locked = yes } } } 111 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } #KYME (Kotka) if = { limit = { 928 = { free_building_slots = { building = dockyard size > 0 include_locked = yes } } } 928 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } #VAASA (Vaasa) if = { limit = { 149 = { free_building_slots = { building = dockyard size > 0 include_locked = yes } } } 149 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } } } focus = { id = FIN_expansion_towards_the_atlantic icon = GFX_focus_FIN_expansion_towards_the_atlantic prerequisite = { focus = FIN_sea_mines_strategy } prerequisite = { focus = FIN_expand_ship_building_industry } x = 2 y = 1 relative_position_id = FIN_sea_mines_strategy cost = 10 available = { #state is in the atlantic custom_trigger_tooltip = { tooltip = FIN_state_is_in_the_atlantic_tt any_controlled_state = { FIN_state_is_european_and_on_the_atlantic = yes } } } search_filters = { FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_MILITARY_CHARACTER } completion_reward = { custom_effect_tooltip = FIN_modify_finnish_navy_ns_intro add_to_variable = { FIN_finnish_navy_industrial_capacity_dockyard = 0.1 tooltip = industrial_capacity_dockyard_tt } add_to_variable = { FIN_finnish_navy_experience_gain_navy_unit_factor = 0.1 tooltip = experience_gain_navy_unit_factor_tt } add_to_variable = { FIN_finnish_navy_naval_coordination = 0.05 tooltip = naval_coordination_tt } add_to_variable = { FIN_finnish_navy_naval_equipment_upgrade_xp_cost = -0.1 tooltip = naval_equipment_upgrade_xp_cost_tt } add_tech_bonus = { name = FIN_expansion_towards_the_atlantic bonus = 0.5 uses = 2 category = cv_tech category = bb_tech category = bc_tech category = ca_tech } custom_effect_tooltip = FIN_expansion_towards_the_atlantic_no_state_tt if = { limit = { any_controlled_state = { FIN_state_is_european_and_on_the_atlantic = yes } } custom_effect_tooltip = generic_current_effects } random_controlled_state = { limit = { FIN_state_is_european_and_on_the_atlantic = yes free_building_slots = { building = dockyard size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = dockyard level = 2 instant_build = yes } add_building_construction = { type = naval_base level = 2 instant_build = yes province = { all_provinces = yes limit_to_naval_base = yes } } } if = { limit = { has_dlc = "Arms Against Tyranny" } mio:FIN_crichton_vulcan_organization = { add_mio_size = 1 add_mio_research_bonus = 0.1 add_mio_design_team_assign_cost = -0.5 } } every_character = { limit = { is_navy_leader = yes } random_select_amount = 2 add_skill_level = 1 } } } }