### 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_SOV_POLITICAL_PARANOIA} ### search_filters = {FOCUS_FILTER_PROPAGANDA} ### search_filters = {FOCUS_FILTER_ARMY_XP} ### search_filters = {FOCUS_FILTER_NAVY_XP} ### search_filters = {FOCUS_FILTER_AIR_XP} # Reminder that focus filters prio has to be handled in the generic focus file :) focus_tree = { id = soviet_focus country = { factor = 0 modifier = { add = 10 tag = SOV } } default = no continuous_focus_position = { x = 55 y = 1600 } ## ## ####### ###### ######## ######## ######## ######## ### ###### ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ###### ## ###### ######## ######## ## ## ## ##### ## #### ## ## ## ## ## ## ## ## ######### ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ####### ###### ## ######## ## ######## ## ## ###### ## ## ###### #### ## ## #### ## #### ### ## ## #### ## ## ######## ## ## ###### ######## ######## ## ## ## ## ## ## ## ## ## ## ## ## ### ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ## ## #### ## ## ## ## ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ###### ## ######## ## ## ## ## ## ## ## ## ######### ## #### ## ## #### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ### ## ## ### ## ## ## ## ## ## ## ## ## ## ###### #### ### #### ######## #### ## ## ## ## #### ## ## ######## ####### ###### ## ## ## ## focus = { id = SOV_infrastructure_effort_nsb icon = GFX_SOV_infrastructure_effort_nsb_ccp_2d_sov_compatibility x = 1 y = 0 cost = 5 ai_will_do = { factor = 1 } available = { } bypass = { custom_trigger_tooltip = { tooltip = infrastructure_effort_tt all_owned_state = { free_building_slots = { building = infrastructure size < 2 } } } } search_filters = {FOCUS_FILTER_INDUSTRY} complete_tooltip = { every_state = { limit = { has_state_flag = SOV_infrastructure_effort_3Inf } add_building_construction = { type = infrastructure level = 2 instant_build = yes } } } completion_reward = { if = { limit = { all_owned_state = { infrastructure > 2 } } random_owned_controlled_state = { limit = { free_building_slots = { building = infrastructure size > 1 } } add_building_construction = { type = infrastructure level = 2 instant_build = yes } set_state_flag = SOV_infrastructure_effort_3Inf } random_owned_controlled_state = { limit = { free_building_slots = { building = infrastructure size > 1 } } add_building_construction = { type = infrastructure level = 2 instant_build = yes } set_state_flag = SOV_infrastructure_effort_3Inf } } random_owned_controlled_state = { limit = { infrastructure < 3 } add_building_construction = { type = infrastructure level = 2 instant_build = yes } set_state_flag = SOV_infrastructure_effort_3Inf } random_owned_controlled_state = { limit = { infrastructure < 3 } add_building_construction = { type = infrastructure level = 2 instant_build = yes } set_state_flag = SOV_infrastructure_effort_3Inf } random_owned_controlled_state = { limit = { infrastructure < 3 } add_building_construction = { type = infrastructure level = 2 instant_build = yes } set_state_flag = SOV_infrastructure_effort_3Inf } random_owned_controlled_state = { limit = { infrastructure < 3 } add_building_construction = { type = infrastructure level = 2 instant_build = yes } set_state_flag = SOV_infrastructure_effort_3Inf } } } focus = { id = SOV_heavy_industry icon = GFX_SOV_heavy_industry_ccp_2d_sov_compatibility x = 2 y = 0 relative_position_id = SOV_infrastructure_effort_nsb cost = 5 ai_will_do = { factor = 1 } available = { } search_filters = {FOCUS_FILTER_INDUSTRY} complete_tooltip = { every_state = { limit = { has_state_flag = SOV_finish_five_year_plan_2IC } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } completion_reward = { IF = { limit = { any_owned_state = { is_controlled_by = ROOT industrial_complex > 0 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } NOT = { has_state_flag = SOV_finish_five_year_plan_2IC } } } random_owned_controlled_state = { limit = { industrial_complex > 0 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } set_state_flag = SOV_finish_five_year_plan_2IC } } ELSE = { random_owned_controlled_state = { limit = { # industrial_complex > 0 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } set_state_flag = SOV_finish_five_year_plan_2IC } } IF = { limit = { check_variable = { num_owned_states > 1} any_owned_state = { is_controlled_by = ROOT industrial_complex > 0 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } NOT = { has_state_flag = SOV_finish_five_year_plan_2IC } } } random_owned_controlled_state = { limit = { industrial_complex > 0 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } NOT = { has_state_flag = SOV_finish_five_year_plan_2IC } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } set_state_flag = SOV_finish_five_year_plan_2IC } } ELSE_IF = { limit = { check_variable = { num_owned_states > 1 } } random_owned_controlled_state = { limit = { # industrial_complex > 0 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } NOT = { has_state_flag = SOV_finish_five_year_plan_2IC } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } set_state_flag = SOV_finish_five_year_plan_2IC } } } } focus = { id = SOV_finish_the_five_year_plan icon = GFX_SOV_finish_the_five_year_plan_ccp_2d_sov_compatibility prerequisite = { focus = SOV_infrastructure_effort_nsb } prerequisite = { focus = SOV_heavy_industry } x = 1 y = 1 relative_position_id = SOV_infrastructure_effort_nsb cost = 10 available = { custom_trigger_tooltip = { tooltip = SOV_fyp_controlled_factories_tier_1_tt NOT = { num_of_controlled_factories < SOV_fyp_factory_requirement_tier_1 } } } search_filters = {FOCUS_FILTER_INDUSTRY} complete_tooltip = { every_state = { limit = { has_state_flag = SOV_finish_five_year_plan_2IC } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } completion_reward = { random_owned_controlled_state = { limit = { industrial_complex > 0 free_building_slots = { building = industrial_complex size > 2 include_locked = yes } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } set_state_flag = SOV_finish_five_year_plan_2IC } random_owned_controlled_state = { limit = { industrial_complex > 0 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 = 1 instant_build = yes } set_state_flag = SOV_finish_five_year_plan_2IC } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = available_political_advisor show_ideas_tooltip = SOV_lazar_kaganovich } } focus = { id = SOV_improve_railway_network icon = GFX_goal_generic_construct_infrastructure prerequisite = { focus = SOV_finish_the_five_year_plan } x = -2 y = 1 relative_position_id = SOV_finish_the_five_year_plan cost = 10 ai_will_do = { factor = 1 } available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { # Moscow - Rostov on Don build_railway = { path = { 9330 3356 6279 6230 6398 6341 413 3527 11475 11412 6591 3540 3519 11459 11450 11434 9417 } } # Stalingrad-Rostov on Don build_railway = { path = { 3529 9504 533 9516 509 500 11459 } #(Stalingrad - Conjunction near Millerovo) } # Stalingrad-Mikhaylovka build_railway = { path = { 9504 3582 9436 11485 3539 9564 11408 } #(Conjunction right next to Stalingrad - Conjunction in West Saratov) } # Stalingrad - Astrakhan build_railway = { path = { 3529 11474 520 6516 6486 9455 11429 6620 9753 } } # Tbilisi - Yerevan build_railway = { path = { 1599 9702 12441 3564 12320 } } #Supply Hub in Yerevan 230 = { add_building_construction = { type = supply_node level = 1 province = 12320 instant_build = yes } } #Supply Hub in Kandalaksha 213 = { add_building_construction = { type = supply_node level = 1 province = 6181 instant_build = yes } } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = available_designer show_ideas_tooltip = SOV_soviet_railways } } focus = { id = SOV_third_five_year_plan icon = GFX_SOV_third_five_year_plan_ccp_2d_sov_compatibility prerequisite = { focus = SOV_finish_the_five_year_plan } x = 0 y = 1 relative_position_id = SOV_finish_the_five_year_plan cost = 10 available = { SOV_third_five_year_plan_available = yes custom_trigger_tooltip = { tooltip = SOV_fyp_controlled_factories_tier_2_tt NOT = { num_of_controlled_factories < SOV_fyp_factory_requirement_tier_2 } } NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { hidden_effect = { add_to_variable = { SOV_fyp_production_factory_efficiency_gain_factor = 0.05 } add_to_variable = { SOV_fyp_consumer_goods_factor = 0.10 } } if = { limit = { has_government = communism } hidden_effect = { #Swap dynamic modifier to change icon remove_dynamic_modifier = { modifier = SOV_second_five_year_plan_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier } } custom_effect_tooltip = SOV_third_five_year_plan_ns_tt add_tech_bonus = { name = SOV_third_five_year_plan_default bonus = 0.75 uses = 2 category = construction_tech } } else = { custom_effect_tooltip = SOV_third_five_year_plan_ns_alt_tt hidden_effect = { #Swap dynamic modifier to change icon remove_dynamic_modifier = { modifier = SOV_second_five_year_plan_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier_alt } } add_tech_bonus = { name = SOV_third_five_year_plan_alt bonus = 0.75 uses = 2 category = construction_tech } } } } focus = { id = SOV_reorganize_the_pc_of_heavy_industry icon = GFX_SOV_reorganize_the_pc_of_heavy_industry_ccp_2d_sov_compatibility prerequisite = { focus = SOV_third_five_year_plan } x = -2 y = 2 relative_position_id = SOV_third_five_year_plan cost = 10 mutually_exclusive = { focus = SOV_shift_to_armaments_production } available = { SOV_third_five_year_plan_available = yes custom_trigger_tooltip = { tooltip = SOV_fyp_controlled_factories_tier_3_tt NOT = { num_of_controlled_factories < SOV_fyp_factory_requirement_tier_3 } } NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { hidden_effect = { add_to_variable = { SOV_fyp_consumer_goods_factor = -0.05 } } custom_effect_tooltip = SOV_reorganize_the_pc_of_heavy_industry_ns_tt if = { limit = { has_government = communism } hidden_effect = { #Swap dynamic modifier to change icon remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_third_five_year_plan_civilian_dynamic_modifier } } add_tech_bonus = { name = SOV_reorganize_the_pc_of_heavy_industry_name_default bonus = 1.0 uses = 2 category = industry category = electronics } } else = { hidden_effect = { #Swap dynamic modifier to change icon remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier_alt} add_dynamic_modifier = { modifier = SOV_third_five_year_plan_civilian_dynamic_modifier_alt } } add_tech_bonus = { name = SOV_reorganize_the_pc_of_heavy_industry_name_alt bonus = 1.0 uses = 2 category = industry category = electronics } } } } focus = { id = SOV_industrial_modernization icon = GFX_SOV_industrial_modernization_ccp_2d_sov_compatibility prerequisite = { focus = SOV_reorganize_the_pc_of_heavy_industry } x = 0 y = 3 relative_position_id = SOV_reorganize_the_pc_of_heavy_industry cost = 10 available = { SOV_third_five_year_plan_available = yes custom_trigger_tooltip = { tooltip = SOV_fyp_controlled_factories_tier_4_tt NOT = { num_of_controlled_factories < SOV_fyp_factory_requirement_tier_4 } } NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { add_to_variable = { SOV_fyp_production_factory_max_efficiency_factor = 0.05 } add_to_variable = { SOV_fyp_line_change_production_efficiency_factor = 0.1 } custom_effect_tooltip = SOV_industrial_modernization_ns_tt add_tech_bonus = { name = SOV_industrial_modernization ahead_reduction = 2 bonus = 1.0 uses = 1 category = industry } } } focus = { id = SOV_increase_state_reserves icon = GFX_SOV_increase_state_reserves_ccp_2d_sov_compatibility prerequisite = { focus = SOV_third_five_year_plan } x = 0 y = 1 relative_position_id = SOV_third_five_year_plan cost = 5 available = { SOV_third_five_year_plan_available = yes NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { #Modify Third Year Plan NS set_variable = { SOV_fyp_local_resources_factor = 0.1 } custom_effect_tooltip = SOV_increase_state_reserves_ns_tt custom_effect_tooltip = SOV_increase_state_reserves_silo_tt set_temp_variable = { temp_targets_index = 0 } while_loop_effect = { limit = { check_variable = { temp_targets_index = 3 compare = less_than } any_owned_state = { infrastructure < 3 free_building_slots = { building = fuel_silo size > 0 include_locked = yes } NOT = { has_state_flag = SOV_increase_state_reserves_flag } } } if = { #If possible, prio low-infrastructure states for silos limit = { any_owned_state = { infrastructure < 3 free_building_slots = { building = fuel_silo size > 0 include_locked = yes } NOT = { has_state_flag = SOV_increase_state_reserves_flag } } } random_owned_controlled_state = { limit = { infrastructure < 3 free_building_slots = { building = fuel_silo size > 0 include_locked = yes } NOT = { has_state_flag = SOV_increase_state_reserves_flag } } set_state_flag = SOV_increase_state_reserves_flag add_extra_state_shared_building_slots = 1 add_building_construction = { type = fuel_silo level = 1 instant_build = yes } } } else = { random_owned_controlled_state = { limit = { free_building_slots = { building = fuel_silo size > 0 include_locked = yes } NOT = { has_state_flag = SOV_increase_state_reserves_flag } } set_state_flag = SOV_increase_state_reserves_flag add_extra_state_shared_building_slots = 1 add_building_construction = { type = fuel_silo level = 1 instant_build = yes } } } add_to_temp_variable = { temp_targets_index = 1 } } every_owned_state = { #Tooltip purposes (lets you know which states have been selected once the focus is completed) limit = { has_state_flag = SOV_increase_state_reserves_flag } } } } focus = { id = SOV_shift_to_armaments_production icon = GFX_SOV_shift_to_armaments_production_ccp_2d_sov_compatibility prerequisite = { focus = SOV_third_five_year_plan } x = 2 y = 2 relative_position_id = SOV_third_five_year_plan cost = 10 mutually_exclusive = { focus = SOV_reorganize_the_pc_of_heavy_industry} available = { SOV_third_five_year_plan_available = yes custom_trigger_tooltip = { tooltip = SOV_fyp_controlled_factories_tier_3_tt NOT = { num_of_controlled_factories < SOV_fyp_factory_requirement_tier_3 } } NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { hidden_effect = { set_variable = { SOV_fyp_production_speed_industrial_complex_factor = 0 } #Remove Civ constr speed } if = { limit = { has_government = communism } hidden_effect = { #Swap dynamic modifier to change icon remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_third_five_year_plan_military_dynamic_modifier } } } else = { hidden_effect = { #Swap dynamic modifier to change icon remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier_alt } add_dynamic_modifier = { modifier = SOV_third_five_year_plan_military_dynamic_modifier_alt } } } custom_effect_tooltip = SOV_shift_to_armaments_production_ns_tt add_tech_bonus = { name = SOV_shift_to_armaments_production bonus = 1.0 uses = 2 category = infantry_weapons } } } focus = { id = SOV_optimize_production_lines icon = GFX_SOV_optimize_production_lines_ccp_2d_sov_compatibility prerequisite = { focus = SOV_shift_to_armaments_production } x = 0 y = 3 relative_position_id = SOV_shift_to_armaments_production cost = 10 available = { SOV_third_five_year_plan_available = yes custom_trigger_tooltip = { tooltip = SOV_fyp_controlled_factories_tier_4_tt NOT = { num_of_controlled_factories < SOV_fyp_factory_requirement_tier_4 } } NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { add_to_variable = { SOV_fyp_production_factory_efficiency_gain_factor = 0.05 } #Add efficiency gain add_to_variable = { SOV_fyp_production_factory_start_efficiency_factor = 0.05 } #Add efficiency start add_to_variable = { SOV_fyp_industrial_capacity_factory = 0.02 } #Add small output bonus custom_effect_tooltip = SOV_optimize_production_lines_ns_tt add_tech_bonus = { name = SOV_optimize_production_lines bonus = 1 uses = 2 category = cat_production } } } focus = { id = SOV_steel_casting_industry icon = GFX_SOV_steel_casting_industry_ccp_2d_sov_compatibility prerequisite = { focus = SOV_reorganize_the_pc_of_heavy_industry focus = SOV_shift_to_armaments_production } x = 2 y = 1 relative_position_id = SOV_reorganize_the_pc_of_heavy_industry cost = 10 available = { any_owned_state = { has_resources_amount = { resource = steel amount > 0 } free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } SOV_third_five_year_plan_available = yes NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { set_variable = { SOV_fyp_industrial_capacity_factory = 0.05 } set_variable = { SOV_fyp_industrial_capacity_dockyard = 0.05 } custom_effect_tooltip = SOV_steel_casting_industry_ns_tt random_owned_controlled_state = { limit = { has_resources_amount = { resource = steel amount > 0 } free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_resource = { type = steel amount = 5 } set_state_flag = SOV_steel_casting_industry_flag } if = { limit = { any_owned_state = { has_resources_amount = { resource = steel amount > 0 } free_building_slots = { building = industrial_complex size > 1 include_locked = yes } NOT = { has_state_flag = SOV_steel_casting_industry_flag } } } random_owned_controlled_state = { limit = { has_resources_amount = { resource = steel amount > 0 } free_building_slots = { building = industrial_complex size > 0 include_locked = yes } NOT = { has_state_flag = SOV_steel_casting_industry_flag } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_resource = { type = steel amount = 5 } set_state_flag = SOV_steel_casting_industry_flag } } } } focus = { id = SOV_synthetic_rubber icon = GFX_SOV_synthetic_rubber_ccp_2d_sov_compatibility prerequisite = { focus = SOV_steel_casting_industry } x = -1 y = 1 relative_position_id = SOV_steel_casting_industry cost = 5 available = { has_tech = rubber_processing SOV_third_five_year_plan_available = yes NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } has_full_control_of_state = 219 #MOSCOW OR = { has_full_control_of_state = 260 #VORONEZH has_full_control_of_state = 223 #TULA } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { # ADD SYNTHETICS IN HISTORICAL STATES (VORONEZH AND TULA) if = { limit = { has_full_control_of_state = 260 #VORONEZH } 260 = { #VORONEZH add_extra_state_shared_building_slots = 2 add_building_construction = { type = synthetic_refinery level = 1 instant_build = yes } } if = { limit = { has_full_control_of_state = 254 #RYAZAN has_full_control_of_state = 258 #LIPETSK } # Moscow - Voronezh build_railway = { path = { 6380 6414 9348 9282 11268 9330 3356 6279 6230 6398 6341 413 3527 } } } } if = { limit = { has_full_control_of_state = 223 #TULA } 223 = { #TULA add_extra_state_shared_building_slots = 2 add_building_construction = { type = synthetic_refinery level = 1 instant_build = yes } } # Moscow - Tula build_railway = { path = { 6380 6414 9348 6290 6396 6262 } } } add_tech_bonus = { name = SOV_synthetic_rubber bonus = 0.75 uses = 2 category = cat_synth_rubber } } } focus = { id = SOV_oil_production icon = GFX_SOV_oil_production_ccp_2d_sov_compatibility prerequisite = { focus = SOV_steel_casting_industry } x = 1 y = 1 relative_position_id = SOV_steel_casting_industry cost = 5 available = { SOV_third_five_year_plan_available = yes NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { set_variable = { SOV_fyp_fuel_gain_factor_from_states = 0.05 } set_variable = { SOV_fyp_production_oil_factor = 0.05 } custom_effect_tooltip = SOV_oil_production_ns_tt set_temp_variable = { SOV_silos_from_focus = 0 } every_owned_state = { limit ={ is_fully_controlled_by = ROOT has_resources_amount = { resource = oil amount > 0 } infrastructure < 3 } add_building_construction = { type = infrastructure level = 1 instant_build = yes } hidden_effect = { if = { limit = { check_variable = { SOV_silos_from_focus = 2 compare = less_than_or_equals } } add_building_construction = { type = fuel_silo level = 1 instant_build = yes } add_to_temp_variable = { SOV_silos_from_focus = 1 } } } custom_effect_tooltip = SOV_oil_production_silo_tt } #Build Railways in Caucasus if = { limit = { has_full_control_of_state = 229 #BAKU has_full_control_of_state = 230 #ARMENIA has_full_control_of_state = 231 #GEORGIA } # Baku - Tbilisi build_railway = { path = { 7661 1536 4614 4477 11645 11674 1539 11708 1599 } } } if = { limit = { has_full_control_of_state = 232 #DAGESTAN has_full_control_of_state = 821 #CHECHNYA-INGUSHETIA } # Makhachkala (Hub province) - Grozny build_railway = { path = { 3668 3682 3672 } } } } } focus = { #unlock this focus once the war with a major is over id = SOV_restoration_and_development icon = GFX_SOV_restoration_and_development_ccp_2d_sov_compatibility prerequisite = { focus = SOV_industrial_modernization focus = SOV_optimize_production_lines } x = 2 y = 1 relative_position_id = SOV_industrial_modernization cost = 5 cancel_if_invalid = no available = { SOV_fourth_five_year_plan_available = yes NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_PROPAGANDA} completion_reward = { add_timed_idea = { idea = SOV_restoration_and_development_idea days = 365 } if = { limit = { has_government = communism } custom_effect_tooltip = unlock_propaganda_campaign_tt unlock_decision_tooltip = SOV_propaganda_rebuild_to_glory unlock_decision_tooltip = SOV_propaganda_peace unlock_decision_tooltip = SOV_propaganda_happy_life custom_effect_tooltip = propaganda_campaign_requirement_tt } } } focus = { id = SOV_fourth_five_year_plan icon = GFX_SOV_fourth_five_year_plan_ccp_2d_sov_compatibility prerequisite = { focus = SOV_restoration_and_development } x = 0 y = 1 relative_position_id = SOV_restoration_and_development cost = 10 available = { custom_trigger_tooltip = { tooltip = SOV_fyp_controlled_factories_tier_5_tt NOT = { num_of_controlled_factories < SOV_fyp_factory_requirement_tier_5 } } NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { hidden_effect = { add_to_variable = { SOV_fyp_consumer_goods_factor = -0.05 } #Bonus to CG add_to_variable = { SOV_fyp_production_factory_max_efficiency_factor = 0.05 } #Bonus to max efficicency if = { limit = { has_government = communism } #Swap dynamic modifier to change icon if = { limit = { has_dynamic_modifier = { modifier = SOV_third_five_year_plan_civilian_dynamic_modifier } } remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_civilian_dynamic_modifier } } else_if = { limit = { has_dynamic_modifier = { modifier = SOV_third_five_year_plan_military_dynamic_modifier } } remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_military_dynamic_modifier } } else_if = { limit = { has_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier } } remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier } } add_dynamic_modifier = { modifier = SOV_fourth_five_year_plan_dynamic_modifier } } else = { #Swap dynamic modifier to change icon if = { limit = { has_dynamic_modifier = { modifier = SOV_third_five_year_plan_civilian_dynamic_modifier_alt } } remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_civilian_dynamic_modifier_alt } } else_if = { limit = { has_dynamic_modifier = { modifier = SOV_third_five_year_plan_military_dynamic_modifier_alt } } remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_military_dynamic_modifier_alt } } else_if = { limit = { has_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier_alt } } remove_dynamic_modifier = { modifier = SOV_third_five_year_plan_dynamic_modifier_alt } } add_dynamic_modifier = { modifier = SOV_fourth_five_year_plan_dynamic_modifier_alt } } } custom_effect_tooltip = SOV_fourth_five_year_plan_ns_tt } } focus = { id = SOV_found_the_comecon icon = GFX_focus_SOV_the_comecon prerequisite = { focus = SOV_fourth_five_year_plan } x = 0 y = 1 relative_position_id = SOV_fourth_five_year_plan cost = 10 ai_will_do = { base = 1 modifier = { factor = 10 has_war = no } } allow_branch = { has_government = communism } available = { num_subjects > 0 NOT = { has_completed_focus = SOV_curtailment_of_the_collective_farms } } bypass = { IF = { limit = { has_dlc = "No Compromise, No Surrender" } has_completed_focus = SOV_curtailment_of_the_collective_farms } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { if = { limit = { num_subjects > 0 } add_ideas = SOV_comecon_sov_default custom_effect_tooltip = SOV_found_the_comecon_subjects_tt every_other_country = { limit = { is_subject_of = ROOT } add_ideas = SOV_comecon_puppet_default } custom_effect_tooltip = SOV_found_the_comecon_program_tt hidden_effect = { add_to_tech_sharing_group = SOV_comecon every_country = { limit = { is_subject_of = ROOT } add_to_tech_sharing_group = SOV_comecon } } } else = { #Early tooltip for when Soviets have no subjects effect_tooltip = { add_ideas = SOV_comecon_sov_default } custom_effect_tooltip = SOV_found_the_comecon_subjects_tt effect_tooltip = { add_ideas = SOV_comecon_puppet_default } custom_effect_tooltip = SOV_found_the_comecon_program_tt } unlock_decision_category_tooltip = SOV_comecon_dec_cat } } focus = { id = SOV_the_common_economic_space_initiative icon = GFX_goal_anschluss prerequisite = { focus = SOV_fourth_five_year_plan } x = 0 y = 1 relative_position_id = SOV_fourth_five_year_plan cost = 10 ai_will_do = { base = 5 } allow_branch = { NOT = { has_government = communism } } available = { num_subjects > 0 } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { if = { limit = { num_subjects > 0 } add_ideas = SOV_common_economic_space_sov_default custom_effect_tooltip = SOV_found_the_comecon_subjects_tt every_other_country = { limit = { is_subject_of = ROOT } add_ideas = SOV_common_economic_space_puppet_default } custom_effect_tooltip = SOV_found_the_comecon_program_tt hidden_effect = { add_to_tech_sharing_group = SOV_common_economic_space every_country = { limit = { is_subject_of = ROOT } add_to_tech_sharing_group = SOV_comecon } } } else = { #Early tooltip for when Soviets have no subjects effect_tooltip = { add_ideas = SOV_common_economic_space_sov_default } custom_effect_tooltip = SOV_found_the_comecon_subjects_tt effect_tooltip = { add_ideas = SOV_common_economic_space_puppet_default } custom_effect_tooltip = SOV_found_the_comecon_program_tt } #unlock_decision_category_tooltip = SOV_comecon_dec_cat #not allowed by visible statement, decisions presume communism and category lacks description and icon } } focus = { id = SOV_found_the_warsaw_pact icon = GFX_focus_SOV_found_the_warsaw_pact prerequisite = { focus = SOV_found_the_comecon } x = 0 y = 1 relative_position_id = SOV_found_the_comecon cost = 10 allow_branch = { has_government = communism has_dlc = "No Compromise, No Surrender" } available = { num_subjects > 0 is_subject = no is_faction_leader = yes has_government = communism } search_filters = { } completion_reward = { set_faction_name = SOV_warsaw_pact_faction set_faction_manifest = faction_manifest_an_iron_curtain add_faction_goal_slot = { category = long_term # options: short_term, medium_term, long_term value = 1 } add_faction_goal = faction_goal_eastern_european_security add_faction_initiative = 1 } } focus = { id = SOV_no_time_for_peace icon = GFX_SOV_no_time_for_peace_ccp_2d_sov_compatibility prerequisite = { focus = SOV_fourth_five_year_plan } prerequisite = { focus = SOV_national_academies_of_sciences } x = 3 y = 1 relative_position_id = SOV_fourth_five_year_plan cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { add_breakthrough_progress = { specialization = specialization_nuclear value = 0.75 } add_breakthrough_progress = { specialization = specialization_air value = 0.75 } custom_effect_tooltip = generic_skip_one_line_tt IF = { limit = { NOT = { has_tech = atomic_research } } add_tech_bonus = { name = SOV_no_time_for_peace bonus = 0.5 uses = 1 # was 2 category = nuclear } } add_tech_bonus = { name = SOV_no_time_for_peace bonus = 0.5 uses = 1 # was 2 category = rocketry } custom_effect_tooltip = generic_skip_one_line_tt add_ideas = SOV_no_time_for_peace_idea } } focus = { id = SOV_national_specialists icon = GFX_SOV_national_specialists_ccp_2d_sov_compatibility prerequisite = { focus = SOV_finish_the_five_year_plan } x = 3 y = 1 relative_position_id = SOV_finish_the_five_year_plan cost = 5 mutually_exclusive = { focus = SOV_foreign_experts } available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { custom_effect_tooltip = SOV_national_specialists_tt SOV_replace_industrial_designer = yes #"National" Industrial Designers get +5% research bonus hidden_effect = { add_ideas = SOV_national_specialists_ns } } } focus = { id = SOV_foreign_experts icon = GFX_SOV_foreign_experts_ccp_2d_sov_compatibility prerequisite = { focus = SOV_finish_the_five_year_plan } x = 2 y = 0 relative_position_id = SOV_national_specialists cost = 5 mutually_exclusive = { focus = SOV_national_specialists } available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { custom_effect_tooltip = available_designer show_ideas_tooltip = SOV_gosproyektstroy_1 } } focus = { id = SOV_eastern_development icon = GFX_SOV_eastern_development_ccp_2d_sov_compatibility prerequisite = { focus = SOV_national_specialists focus = SOV_foreign_experts } x = 0 y = 1 relative_position_id = SOV_national_specialists cost = 5 bypass = { 408 = { #VLADIVOSTOK is_fully_controlled_by = ROOT NOT = { infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 409 = { #KHABAROVSK is_fully_controlled_by = ROOT is_fully_controlled_by = ROOT NOT = { infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 566 = { #IRKUTSK is_fully_controlled_by = ROOT is_fully_controlled_by = ROOT NOT = { infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 564 = { #ULAN UDE is_fully_controlled_by = ROOT is_fully_controlled_by = ROOT NOT = { infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } } available = { OR = { 408 = { #VLADIVOSTOK is_fully_controlled_by = ROOT } 409 = { #KHABAROVSK is_fully_controlled_by = ROOT } 566 = { #IRKUTSK is_fully_controlled_by = ROOT } 564 = { #ULAN UDE is_fully_controlled_by = ROOT } } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { set_temp_variable = { SOV_states_targeted_eastern_development = 0 } #Used this way to prioritize between desirable states if = { limit = { 408 = { #VLADIVOSTOK is_fully_controlled_by = ROOT infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 408 = { #VLADIVOSTOK add_building_construction = { type = infrastructure level = 1 instant_build = yes } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } add_to_temp_variable = { SOV_states_targeted_eastern_development = 1 } } else_if = { #Irkutsk replaces Vladivostok if necessary limit = { check_variable = { SOV_states_targeted_eastern_development = 2 compare = less_than_or_equals } 566 = { #IRKUTSK is_fully_controlled_by = ROOT infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 566 = { #IRKUTSK add_building_construction = { type = infrastructure level = 1 instant_build = yes } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } if = { limit = { 409 = { #KHABAROVSK is_fully_controlled_by = ROOT infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 409 = { #KHABAROVSK add_building_construction = { type = infrastructure level = 1 instant_build = yes } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } add_to_temp_variable = { SOV_states_targeted_eastern_development = 1 } } else_if = { #Ulan Ude replaces Khabarovsk if necessary limit = { check_variable = { SOV_states_targeted_eastern_development = 2 compare = less_than_or_equals } 564 = { #ULAN UDE is_fully_controlled_by = ROOT infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 564 = { #ULAN UDE add_building_construction = { type = infrastructure level = 1 instant_build = yes } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } } } focus = { id = SOV_develop_the_urals icon = GFX_SOV_develop_the_urals_ccp_2d_sov_compatibility prerequisite = { focus = SOV_national_specialists focus = SOV_foreign_experts } x = 2 y = 0 relative_position_id = SOV_eastern_development cost = 5 bypass = { 572 = { #CHELYABISNK is_fully_controlled_by = ROOT NOT = { infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 573 = { #ZLATOUST is_fully_controlled_by = ROOT is_fully_controlled_by = ROOT NOT = { infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 582 = { #MAGNITOGORSK is_fully_controlled_by = ROOT is_fully_controlled_by = ROOT NOT = { infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 653 = { #SVERDLOVSK is_fully_controlled_by = ROOT is_fully_controlled_by = ROOT NOT = { infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } } available = { OR = { 572 = { #CHELYABISNK is_fully_controlled_by = ROOT } 573 = { #ZLATOUST is_fully_controlled_by = ROOT } 582 = { #MAGNITOGORSK is_fully_controlled_by = ROOT } 653 = { #SVERDLOVSK is_fully_controlled_by = ROOT } } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { set_temp_variable = { SOV_states_targeted_eastern_development = 0 } #Used this way to prioritize between desirable states if = { limit = { 572 = { #CHELYABISNK is_fully_controlled_by = ROOT infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 572 = { #CHELYABISNK add_building_construction = { type = infrastructure level = 1 instant_build = yes } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } add_to_temp_variable = { SOV_states_targeted_eastern_development = 1 } } else_if = { #Magnitogorsk replaces Chelyabinsk if necessary limit = { check_variable = { SOV_states_targeted_eastern_development = 2 compare = less_than_or_equals } 582 = { #MAGNITOGORSK is_fully_controlled_by = ROOT infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 582 = { #MAGNITOGORSK add_building_construction = { type = infrastructure level = 1 instant_build = yes } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } if = { limit = { 573 = { #ZLATOUST is_fully_controlled_by = ROOT infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 573 = { #ZLATOUST add_building_construction = { type = infrastructure level = 1 instant_build = yes } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } add_to_temp_variable = { SOV_states_targeted_eastern_development = 1 } } else_if = { #Sverdlovsk replaces Zlatoust if necessary limit = { check_variable = { SOV_states_targeted_eastern_development = 2 compare = less_than_or_equals } 653 = { #SVERDLOVSK is_fully_controlled_by = ROOT infrastructure < 5 free_building_slots = { building = industrial_complex size > 0 include_locked = yes } } } 653 = { #SVERDLOVSK add_building_construction = { type = infrastructure level = 1 instant_build = yes } add_extra_state_shared_building_slots = 1 add_building_construction = { type = industrial_complex level = 1 instant_build = yes } } } } } focus = { id = SOV_the_ussr_academy_of_sciences icon = GFX_SOV_the_ussr_academy_of_sciences_ccp_2d_sov_compatibility prerequisite = { focus = SOV_eastern_development } prerequisite = { focus = SOV_develop_the_urals } x = 1 y = 1 relative_position_id = SOV_eastern_development cost = 10 available = { } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { add_research_slot = 1 if = { limit = { any_country = { SOV_is_valid_academy_of_sciences_target = yes } } if = { #ALT IDEOLOGY limit = { NOT = { has_government = communism } } add_to_tech_sharing_group = SOV_imperial_academies_of_sciences_joint_program every_country = { limit = { SOV_is_valid_academy_of_sciences_target = yes } add_to_tech_sharing_group = SOV_imperial_academies_of_sciences_joint_program } } else = { #DEFAULT COMMUNISM add_to_tech_sharing_group = SOV_soviet_academies_of_sciences_joint_program every_country = { limit = { SOV_is_valid_academy_of_sciences_target = yes } add_to_tech_sharing_group = SOV_soviet_academies_of_sciences_joint_program } } } custom_effect_tooltip = generic_skip_one_line_tt if = { #ALT IDEOLOGY limit = { NOT = { has_government = communism } } hidden_effect = { add_dynamic_modifier = { modifier = SOV_ussr_academy_of_sciences_dynamic_modifier_alt } } effect_tooltip = { add_ideas = SOV_national_academy_of_sciences_alt_fake } } else = { #DEFAULT COMMUNISM hidden_effect = { add_dynamic_modifier = { modifier = SOV_ussr_academy_of_sciences_dynamic_modifier } } effect_tooltip = { add_ideas = SOV_national_academy_of_sciences_fake } } } } focus = { id = SOV_national_academies_of_sciences icon = GFX_SOV_national_academies_of_sciences_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_ussr_academy_of_sciences } x = 0 y = 3 relative_position_id = SOV_the_ussr_academy_of_sciences cost = 5 available = { } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { if = { limit = { #DEFAULT COMMUNISM has_government = communism } custom_effect_tooltip = SOV_national_academies_of_sciences_tt } else = { #ALT IDEOLOGY custom_effect_tooltip = SOV_national_academies_of_sciences_alt_tt } } } focus = { id = SOV_transformation_of_nature icon = GFX_SOV_transformation_of_nature_ccp_2d_sov_compatibility prerequisite = { focus = SOV_fourth_five_year_plan } prerequisite = { focus = SOV_national_academies_of_sciences } x = 2 y = 0 relative_position_id = SOV_no_time_for_peace cost = 12 allow_branch = { has_government = communism } available = { 196 = { is_controlled_by_ROOT_or_subject = yes } 251 = { is_controlled_by_ROOT_or_subject = yes } 217 = { is_controlled_by_ROOT_or_subject = yes } 245 = { is_controlled_by_ROOT_or_subject = yes } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { hidden_effect = { IF = { limit = { has_country_leader = { ruling_only = yes character = SOV_iosif_stalin } } set_province_name = { id = 3555 name = SOV_stalingrad_hydro_station } } ELSE = { set_province_name = { id = 3555 name = SOV_volgograd_hydro_station } } set_province_name = { id = 6275 name = SOV_kuybyshev_hydro_station } set_province_name = { id = 737 name = SOV_kakhovka_dam } set_province_name = { id = 3478 name = SOV_tsimlyanskoye_hydroelectric_station } } add_ideas = SOV_transformation_of_nature custom_effect_tooltip = generic_skip_one_line_tt 217 = { add_building_construction = { type = dam level = 1 instant_build = yes province = { id = 3555 } } custom_effect_tooltip = { localization_key = building_state_modifier|dam INDENT = " " } } 196 = { add_building_construction = { type = dam level = 1 instant_build = yes province = { id = 737 } } custom_effect_tooltip = { localization_key = building_state_modifier|dam INDENT = " " } } 245 = { add_building_construction = { type = dam level = 1 instant_build = yes province = { id = 3478 } } custom_effect_tooltip = { localization_key = building_state_modifier|dam INDENT = " " } } 251 = { add_building_construction = { type = dam level = 1 instant_build = yes province = { id = 6275 } } custom_effect_tooltip = { localization_key = building_state_modifier|dam INDENT = " " } } } } focus = { id = SOV_transformation_of_nature_alt icon = GFX_goal_generic_construction2 prerequisite = { focus = SOV_fourth_five_year_plan } prerequisite = { focus = SOV_national_academies_of_sciences } x = 2 y = 0 relative_position_id = SOV_no_time_for_peace cost = 10 allow_branch = { NOT = { has_government = communism } } available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { add_ideas = SOV_transformation_of_nature } } ### #### ######## ###### ######## ### ######## ######## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ######## ## ######## ## ## ###### ## ######### ## ## ## ## ## ## ######### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ## ## ###### ## ## ## ## ## ## focus = { id = SOV_transpolar_flights icon = GFX_SOV_transpolar_flights_ccp_2d_sov_compatibility x = 10 y = 0 relative_position_id = SOV_infrastructure_effort_nsb cost = 5 ai_will_do = { factor = 1 } available = { } search_filters = {FOCUS_FILTER_AIR_XP} completion_reward = { air_experience = 50 } } focus = { id = SOV_expand_the_aircraft_industry icon = GFX_SOV_expand_the_aircraft_industry_ccp_2d_sov_compatibility prerequisite = { focus = SOV_transpolar_flights } x = -1 y = 1 relative_position_id = SOV_transpolar_flights cost = 10 available = { any_owned_state = { is_fully_controlled_by = ROOT free_building_slots = { building = arms_factory size > 1 include_locked = yes } } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { set_variable = { SOV_soviet_airforce_aircraft_manufacturer_cost_factor = -0.25 } custom_effect_tooltip = SOV_expand_the_aircraft_industry_ns_tt random_owned_controlled_state = { limit = { 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 = { air_base < 9 } add_building_construction = { type = air_base level = 2 instant_build = yes } } else = { ROOT = { random_owned_controlled_state = { limit = { air_base < 9 } add_building_construction = { type = air_base level = 2 instant_build = yes } } } } } } } focus = { id = SOV_modernize_aircraft_facilities icon = GFX_SOV_modernize_aircraft_facilities_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_aircraft_industry } x = -1 y = 1 relative_position_id = SOV_expand_the_aircraft_industry cost = 10 available = { } search_filters = {} completion_reward = { add_to_variable = { SOV_soviet_airforce_air_fuel_consumption_factor = -0.05 } add_to_variable = { SOV_soviet_airforce_air_range_factor = 0.05 } add_to_variable = { SOV_soviet_airforce_air_agility_factor = 0.05 } custom_effect_tooltip = SOV_modernize_aircraft_facilities_ns_tt custom_effect_tooltip = SOV_modernize_aircraft_facilities_tt hidden_effect = { IF = { limit = { 260 = { is_fully_controlled_by = ROOT air_facility < 1 land_facility < 1 naval_facility < 1 nuclear_facility < 1 } } 260 = { add_building_construction = { type = air_facility level = 1 instant_build = yes province = 9448 # East of Voronezh } } } } } } focus = { id = SOV_merge_aircraft_plants icon = GFX_focus_SOV_merge_plants prerequisite = { focus = SOV_modernize_aircraft_facilities } x = -1 y = 2 relative_position_id = SOV_modernize_aircraft_facilities cost = 5 available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { if = { limit = { has_dlc = "Arms Against Tyranny" } every_military_industrial_organization = { limit = { has_mio_trait = SOV_mio_trait_merge_plant_no_28 #All Aircraft MIOs have this trait } unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_28 unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_150 unlock_mio_trait_tooltip = SOV_mio_trait_merge_vef_plant } } else = { custom_effect_tooltip = SOV_merge_aircraft_plants_tt } } } focus = { id = SOV_found_the_jet_institute icon = GFX_SOV_found_the_jet_institute_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_ussr_academy_of_sciences } prerequisite = { focus = SOV_merge_aircraft_plants } x = 0 y = 2 relative_position_id = SOV_merge_aircraft_plants cost = 10 available = { } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { add_breakthrough_progress = { specialization = specialization_air value = 0.75 } add_tech_bonus = { name = SOV_found_the_jet_institute bonus = 0.5 uses = 2 category = jet_technology } } } focus = { id = SOV_increase_aircraft_production icon = GFX_SOV_increase_aircraft_production_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_aircraft_industry } x = 0 y = 2 relative_position_id = SOV_expand_the_aircraft_industry cost = 10 mutually_exclusive = { focus = SOV_intensify_pilot_training_program } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { hidden_effect = { #This handles the equipment bonus that's not supported by dynamic modifiers add_ideas = SOV_increased_aircraft_production_ns_bonus add_to_variable = { SOV_soviet_airforce_air_accidents_factor = 0.05 } } hidden_effect = { if = { #DEFAULT COMMIE limit = { has_government = communism } #Swap dynamic modifiers to show the bonus equipment custom tooltip remove_dynamic_modifier = { modifier = SOV_soviet_airforce_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_soviet_airforce_aircraft_production_focus_dynamic_modifier } } else = { #ALT IDEOLOGY #Swap dynamic modifiers to show the bonus equipment custom tooltip remove_dynamic_modifier = { modifier = SOV_soviet_airforce_dynamic_modifier_alt } add_dynamic_modifier = { modifier = SOV_soviet_airforce_aircraft_production_focus_dynamic_modifier_alt } } } custom_effect_tooltip = SOV_increase_aircraft_production_ns_tt add_tech_bonus = { name = SOV_increase_aircraft_production bonus = 1.0 uses = 2 category = light_air } } } focus = { id = SOV_foster_flying_clubs icon = GFX_focus_SOV_flying_clubs prerequisite = { focus = SOV_transpolar_flights } x = 1 y = 1 relative_position_id = SOV_transpolar_flights cost = 10 available = { } search_filters = {FOCUS_FILTER_AIR_XP} completion_reward = { add_to_variable = { SOV_soviet_airforce_air_accidents_factor = -0.25 } add_to_variable = { SOV_soviet_airforce_air_ace_generation_chance_factor = 0.25 } add_to_variable = { SOV_soviet_airforce_air_weather_penalty = -0.1 } add_to_variable = { SOV_soviet_airforce_air_training_xp_gain_factor = 0.1 } custom_effect_tooltip = SOV_foster_flying_clubs_ns_tt air_experience = 25 } } focus = { id = SOV_women_in_aviation icon = GFX_focus_SOV_women_in_aviation prerequisite = { focus = SOV_foster_flying_clubs } x = 1 y = 1 relative_position_id = SOV_foster_flying_clubs cost = 10 available = { OR = { has_completed_focus = SOV_the_path_of_marxism_leninism has_completed_focus = SOV_womens_fascist_movement } } search_filters = {FOCUS_FILTER_AIR_XP} completion_reward = { add_to_variable = { SOV_soviet_airforce_air_ace_generation_chance_factor = 0.25 } add_to_variable = { SOV_soviet_airforce_air_weather_penalty = -0.05 } add_to_variable = { SOV_soviet_airforce_air_mission_xp_gain_factor = 0.05 } add_to_variable = { SOV_soviet_airforce_air_training_xp_gain_factor = 0.05 } custom_effect_tooltip = SOV_women_in_aviation_ns_tt air_experience = 25 set_rule = { can_generate_female_aces = yes } } } focus = { id = SOV_raskovas_aviation_group icon = GFX_SOV_raskovas_aviation_group_ccp_2d_sov_compatibility prerequisite = { focus = SOV_women_in_aviation } x = 1 y = 1 relative_position_id = SOV_women_in_aviation cost = 10 available = { any_enemy_country = { SOV_is_major_not_original_sov = yes } has_full_control_of_state = 219 #MOSCOW } search_filters = {FOCUS_FILTER_AIR_XP} completion_reward = { add_to_variable = { SOV_soviet_airforce_air_night_penalty = -0.2 } add_to_variable = { SOV_soviet_airforce_air_wing_xp_loss_when_killed_factor = -0.1 } set_variable = { SOV_soviet_airforce_air_strategic_bomber_night_penalty = -0.1 } custom_effect_tooltip = SOV_raskovas_aviation_group_ns_tt custom_effect_tooltip = SOV_night_witches_nsb_tt hidden_effect = { if = { limit = { has_dlc = "By Blood Alone" } create_equipment_variant = { name = "U-2" # type = small_plane_cas_airframe_0 modules = { fixed_main_weapon_slot = bomb_locks fixed_auxiliary_weapon_slot_1 = empty engine_type_slot = engine_1_1x special_type_slot_1 = non_strategic_materials_small } } create_equipment_variant = { name = "Pe-2" # type = small_plane_cas_airframe_2 allow_without_tech = yes modules = { fixed_main_weapon_slot = small_bomb_bay fixed_auxiliary_weapon_slot_1 = light_mg_2x engine_type_slot = engine_2_2x special_type_slot_1 = lmg_defense_turret special_type_slot_2 = dive_brakes_small } } create_equipment_variant = { name = "Yak-1" # type = small_plane_airframe_1 modules = { fixed_main_weapon_slot = aircraft_cannon_1_1x fixed_auxiliary_weapon_slot_1 = heavy_mg_2x engine_type_slot = engine_2_1x special_type_slot_1 = non_strategic_materials_small } } if = { limit = { NOT = { has_government = communism } } load_oob = "SOV_night_witches_nsb_alt_bba" else = { load_oob = "SOV_night_witches_nsb_bba" #nested here because otherwise it is considered a nested else for the higher level if } } } else_if = { #ALT IDEOLOGY limit = { NOT = { has_government = communism } } load_oob = "SOV_night_witches_nsb_alt" } else = { #DEFAULT COMMUNISM load_oob = "SOV_night_witches_nsb" } } } } focus = { id = SOV_intensify_pilot_training_program icon = GFX_SOV_intensify_pilot_training_program_ccp_2d_sov_compatibility prerequisite = { focus = SOV_foster_flying_clubs } x = 0 y = 2 relative_position_id = SOV_foster_flying_clubs cost = 10 mutually_exclusive = { focus = SOV_increase_aircraft_production } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } } search_filters = {FOCUS_FILTER_AIR_XP} completion_reward = { add_to_variable = { SOV_soviet_airforce_air_accidents_factor = -0.25 } add_to_variable = { SOV_soviet_airforce_air_ace_generation_chance_factor = 0.15 } add_to_variable = { SOV_soviet_airforce_air_night_penalty = -0.1 } add_to_variable = { SOV_soviet_airforce_air_weather_penalty = -0.15 } add_to_variable = { SOV_soviet_airforce_air_wing_xp_loss_when_killed_factor = -0.15 } add_to_variable = { SOV_soviet_airforce_air_fuel_consumption_factor = 0.1 } custom_effect_tooltip = SOV_intensify_pilot_training_program_ns_tt air_experience = 50 } } focus = { id = SOV_expand_aviation_institutes icon = GFX_SOV_expand_aviation_institutes_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_aircraft_industry focus = SOV_foster_flying_clubs } x = 1 y = 1 relative_position_id = SOV_expand_the_aircraft_industry cost = 10 available = { } search_filters = {FOCUS_FILTER_AIR_XP} completion_reward = { add_to_variable = { SOV_soviet_airforce_air_accidents_factor = -0.25 } add_to_variable = { SOV_soviet_airforce_air_weather_penalty = -0.1 } add_to_variable = { SOV_soviet_airforce_air_training_xp_gain_factor = 0.05 } add_to_variable = { SOV_soviet_airforce_air_wing_xp_loss_when_killed_factor = -0.15 } custom_effect_tooltip = SOV_expand_aviation_institutes_ns_tt } } focus = { id = SOV_ground_support icon = GFX_SOV_ground_support_ccp_2d_sov_compatibility prerequisite = { focus = SOV_increase_aircraft_production focus = SOV_intensify_pilot_training_program } x = 0 y = 1 relative_position_id = SOV_increase_aircraft_production cost = 10 mutually_exclusive = { focus = SOV_long_range_aircraft } available = { } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { add_to_variable = { SOV_soviet_airforce_air_cas_present_factor = 0.1 } custom_effect_tooltip = SOV_ground_support_ns_tt add_tech_bonus = { name = SOV_ground_support bonus = 0.75 uses = 2 category = light_fighter category = cas_bomber } } } focus = { id = SOV_long_range_aircraft icon = GFX_SOV_long_range_aircraft_ccp_2d_sov_compatibility prerequisite = { focus = SOV_increase_aircraft_production focus = SOV_intensify_pilot_training_program } x = 0 y = 1 relative_position_id = SOV_intensify_pilot_training_program cost = 10 mutually_exclusive = { focus = SOV_ground_support } available = { } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { add_to_variable = { SOV_soviet_airforce_strategic_bomb_visibility = -0.1 } custom_effect_tooltip = SOV_long_range_aircraft_ns_tt add_tech_bonus = { name = SOV_long_range_aircraft bonus = 0.75 uses = 2 category = cat_heavy_fighter category = tactical_bomber category = cat_strategic_bomber } } } focus = { id = SOV_the_modern_war_in_the_skies icon = GFX_SOV_the_modern_war_in_the_skies_ccp_2d_sov_compatibility prerequisite = { focus = SOV_ground_support focus = SOV_long_range_aircraft } x = 1 y = 1 relative_position_id = SOV_ground_support cost = 10 available = { } search_filters = {FOCUS_FILTER_AIR_XP} completion_reward = { add_to_variable = { SOV_soviet_airforce_air_night_penalty = -0.1 } add_to_variable = { SOV_soviet_airforce_air_mission_efficiency = 0.1 } custom_effect_tooltip = SOV_the_modern_war_in_the_skies_ns_tt air_experience = 50 add_breakthrough_progress = { specialization = specialization_air value = 0.5 } } } ## ## ### ## ## ## ## ### ## ## ## ## ## ## ## #### ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## #### ######### ## ## ## ## ### ## ## ## ## ## ## ## ## ## ### ## focus = { id = SOV_expand_the_red_fleet icon = GFX_SOV_expand_the_red_fleet_ccp_2d_sov_compatibility x = 6 y = 0 relative_position_id = SOV_transpolar_flights cost = 5 ai_will_do = { factor = 1 } available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_NAVY_XP} completion_reward = { navy_experience = 25 random_owned_controlled_state = { limit = { dockyard > 0 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_tech_bonus = { name = ships_bonus bonus = 1.0 uses = 2 category = naval_equipment } } } focus = { id = SOV_reinforce_western_naval_bases icon = GFX_SOV_reinforce_western_naval_bases_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_red_fleet } x = -3 y = 1 relative_position_id = SOV_expand_the_red_fleet cost = 5 available = { 195 = { #LENINGRAD is_owned_and_controlled_by = ROOT } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { 195 = { #LENINGRAD if = { limit = { 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 } } add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 3151 } if = { limit = { ROOT = { is_special_project_completed = sp:sp_air_radar } radar_station < 1 } add_building_construction = { type = radar_station level = 1 instant_build = yes } } else = { custom_effect_tooltip = SOV_reinforce_western_naval_bases_radar_tt } set_state_flag = SOV_naval_bases_reinforced_flag } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = SOV_reinforce_western_naval_bases_other_states_tt if = { #HELSINKI (UUSIMAA) limit = { has_full_control_of_state = 111 } 111 = { add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 11105 } set_state_flag = SOV_naval_bases_reinforced_flag } } if = { #TALLIN (HARNU) limit = { has_full_control_of_state = 812 } 812 = { add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 3152 } set_state_flag = SOV_naval_bases_reinforced_flag } } if = { #RIGA limit = { has_full_control_of_state = 808 } 808 = { add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 9340 } set_state_flag = SOV_naval_bases_reinforced_flag } } if = { #PALANGA (ŽEMAITIJA) limit = { has_full_control_of_state = 189 } 189 = { add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 6314 } set_state_flag = SOV_naval_bases_reinforced_flag } } } } focus = { id = SOV_reinforce_northern_naval_bases icon = GFX_SOV_reinforce_northern_naval_bases_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_red_fleet } x = -1 y = 1 relative_position_id = SOV_expand_the_red_fleet cost = 5 available = { OR = { 213 = { #MURMANSK is_owned_and_controlled_by = ROOT } 214 = { #ARKHANGELSK is_owned_and_controlled_by = ROOT } } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { if = { #MURMANSK - Improved naval base + AA + coastal fort limit = { has_full_control_of_state = 213 } 213 = { add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 3134 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 3134 } set_state_flag = SOV_naval_bases_reinforced_flag } custom_effect_tooltip = generic_skip_one_line_tt } if = { #ARKHANGELSK - Improved naval base + Severodvinsk Naval Base + AA + coastal fort limit = { has_full_control_of_state = 214 } 214 = { add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = naval_base level = 1 instant_build = yes province = 3338 } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 312 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 3338 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 312 } set_state_flag = SOV_naval_bases_reinforced_flag } } } } focus = { id = SOV_reinforce_southern_naval_bases icon = GFX_SOV_reinforce_southern_naval_bases_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_red_fleet } x = 1 y = 1 relative_position_id = SOV_expand_the_red_fleet cost = 5 available = { OR = { 192 = { #ODESSA is_owned_and_controlled_by = ROOT } 137 = { #CRIMEA is_owned_and_controlled_by = ROOT } 218 = { #ROSTOV is_owned_and_controlled_by = ROOT } 234 = { #KRASNODAR is_owned_and_controlled_by = ROOT } } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { if = { #ODESSA - Improved naval base + AA + coastal fort limit = { has_full_control_of_state = 192 } 192 = { add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 11670 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 11670 } set_state_flag = SOV_naval_bases_reinforced_flag } custom_effect_tooltip = generic_skip_one_line_tt } if = { #SEVASTOPOL (CRIMEA) - Extra AA + coastal fort limit = { has_full_control_of_state = 137 } 137 = { add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = coastal_bunker level = 3 instant_build = yes province = 3686 } set_state_flag = SOV_naval_bases_reinforced_flag } custom_effect_tooltip = generic_skip_one_line_tt } if = { #ROSTOV - Improved naval base + AA + coastal fort limit = { has_full_control_of_state = 218 } 218 = { add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 9417 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 9417 } set_state_flag = SOV_naval_bases_reinforced_flag } custom_effect_tooltip = generic_skip_one_line_tt } if = { #KRASNODAR - Improved naval base + AA + coastal fort limit = { has_full_control_of_state = 234 } 234 = { add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 719 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 719 } set_state_flag = SOV_naval_bases_reinforced_flag } } } } focus = { id = SOV_reinforce_eastern_naval_bases icon = GFX_SOV_reinforce_eastern_naval_bases_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_red_fleet } x = 3 y = 1 relative_position_id = SOV_expand_the_red_fleet cost = 5 available = { OR = { 408 = { #VLADIVOSTOK is_owned_and_controlled_by = ROOT } 409 = { #KHABAROVSK is_owned_and_controlled_by = ROOT } } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { if = { #VLADIVOSTOK - Improved naval base + AA + coastal fort limit = { has_full_control_of_state = 408 } 408 = { add_building_construction = { type = anti_air_building level = 2 instant_build = yes } add_building_construction = { type = air_base level = 2 instant_build = yes } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 957 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 957 } set_state_flag = SOV_naval_bases_reinforced_flag } custom_effect_tooltip = generic_skip_one_line_tt } if = { #VLADIVOSTOK - Improved naval base + AA + coastal fort limit = { has_full_control_of_state = 409 } 409 = { add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = air_base level = 1 instant_build = yes } add_building_construction = { type = naval_base level = 2 instant_build = yes province = 9604 } add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 9604 } set_state_flag = SOV_naval_bases_reinforced_flag } } } } focus = { id = SOV_expand_shipbuilding_plants icon = GFX_SOV_expand_shipbuilding_plants_ccp_2d_sov_compatibility prerequisite = { focus = SOV_reinforce_western_naval_bases focus = SOV_reinforce_northern_naval_bases focus = SOV_reinforce_southern_naval_bases focus = SOV_reinforce_eastern_naval_bases } x = 1 y = 1 relative_position_id = SOV_reinforce_northern_naval_bases cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { custom_effect_tooltip = SOV_expand_shipbuilding_plants_tt every_owned_state = { limit = { has_state_flag = SOV_naval_bases_reinforced_flag is_fully_controlled_by = ROOT free_building_slots = { building = dockyard size > 0 include_locked = yes } } if = { limit = { state = 195 #LENINGRAD - Gets 2 dockyards instead of 1 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 } } else = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } } } focus = { id = SOV_merge_naval_plants icon = GFX_focus_SOV_merge_plants prerequisite = { focus = SOV_expand_shipbuilding_plants } x = -1 y = 2 relative_position_id = SOV_expand_shipbuilding_plants cost = 5 available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { if = { limit = { has_dlc = "Arms Against Tyranny" } if = { limit = { has_dlc = "Man the Guns" } mio:SOV_nevskoye_design_bureau_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_370 unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_5 } mio:SOV_rubin_design_bureau_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_370 unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_363 unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_190 } mio:SOV_black_sea_shipyard_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_mariupol_plant unlock_mio_trait_tooltip = SOV_mio_trait_merge_leninskaya_kuznitsa_plant unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_340 } mio:SOV_sevastopol_marine_plant_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_mariupol_plant unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_200 } } else = { mio:SOV_nevskoye_design_bureau_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_370_no_mtg unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_5 } mio:SOV_rubin_design_bureau_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_370_no_mtg unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_363 unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_190 } mio:SOV_black_sea_shipyard_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_mariupol_plant_no_mtg unlock_mio_trait_tooltip = SOV_mio_trait_merge_leninskaya_kuznitsa_plant unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_340 } mio:SOV_sevastopol_marine_plant_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_mariupol_plant_no_mtg unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_200 } } } else = { custom_effect_tooltip = SOV_merge_naval_plants_tt } } } focus = { id = SOV_pc_of_the_ussr_navy icon = GFX_SOV_pc_of_the_ussr_navy_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_red_fleet } x = 4 y = 2 relative_position_id = SOV_expand_the_red_fleet cost = 5 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { hidden_effect = { if = { limit = { has_government = communism } add_dynamic_modifier = { modifier = SOV_the_red_fleet_dynamic_modifier } } else = { add_dynamic_modifier = { modifier = SOV_the_red_fleet_dynamic_modifier_alt } } } custom_effect_tooltip = SOV_pc_of_the_ussr_navy_ns_tt if = { limit = { has_government = communism } add_tech_bonus = { name = SOV_the_red_fleet_dynamic_modifier bonus = 1.0 uses = 2 category = ship_modules_tech } } else = { add_tech_bonus = { name = SOV_the_red_fleet_dynamic_modifier_alt bonus = 1.0 uses = 2 category = ship_modules_tech } } } } focus = { id = SOV_surface_warfare icon = GFX_SOV_surface_warfare_ccp_2d_sov_compatibility prerequisite = { focus = SOV_pc_of_the_ussr_navy } x = -2 y = 1 relative_position_id = SOV_pc_of_the_ussr_navy cost = 10 mutually_exclusive = { focus = SOV_submarine_warfare } available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_NAVY_XP} completion_reward = { hidden_effect = { if = { #DEFAULT COMMIE limit = { has_government = communism } #Swap dynamic modifier to change dynamic modifier's custom tooltip remove_dynamic_modifier = { modifier = SOV_the_red_fleet_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_the_red_fleet_surface_1_dynamic_modifier } } else = { #ALT IDEOLOGY #Swap dynamic modifier to change dynamic modifier's custom tooltip remove_dynamic_modifier = { modifier = SOV_the_red_fleet_dynamic_modifier_alt } add_dynamic_modifier = { modifier = SOV_the_red_fleet_surface_1_dynamic_modifier_alt } } #This handles the equipment bonus that's not supported by dynamic modifiers add_ideas = SOV_red_fleet_surface_bonus_1 } custom_effect_tooltip = SOV_surface_warfare_ns_tt navy_experience = 15 add_tech_bonus = { name = SOV_surface_warfare bonus = 1.0 uses = 1 category = dd_tech } } } focus = { id = SOV_submarine_warfare icon = GFX_SOV_submarine_warfare_ccp_2d_sov_compatibility prerequisite = { focus = SOV_pc_of_the_ussr_navy } x = 2 y = 1 relative_position_id = SOV_pc_of_the_ussr_navy cost = 10 mutually_exclusive = { focus = SOV_surface_warfare } available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_NAVY_XP} completion_reward = { hidden_effect = { if = { #DEFAULT COMMIE limit = { has_government = communism } #Swap dynamic modifier to change dynamic modifier's custom tooltip remove_dynamic_modifier = { modifier = SOV_the_red_fleet_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_the_red_fleet_submarine_1_dynamic_modifier } } else = { #ALT IDEOLOGY #Swap dynamic modifier to change dynamic modifier's custom tooltip remove_dynamic_modifier = { modifier = SOV_the_red_fleet_dynamic_modifier_alt } add_dynamic_modifier = { modifier = SOV_the_red_fleet_submarine_1_dynamic_modifier_alt } } #This handles the equipment bonus that's not supported by dynamic modifiers add_ideas = SOV_red_fleet_submarine_bonus_1 } custom_effect_tooltip = SOV_submarine_warfare_ns_tt navy_experience = 15 add_tech_bonus = { name = SOV_submarine_warfare bonus = 1.0 uses = 1 category = ss_tech } } } focus = { id = SOV_offensive_maritime_strategy icon = GFX_SOV_offensive_maritime_strategy_ccp_2d_sov_compatibility prerequisite = { focus = SOV_surface_warfare } x = -1 y = 1 relative_position_id = SOV_surface_warfare cost = 10 available = { if = { limit = { has_dlc = "Man the Guns" } has_tech = basic_ship_hull_heavy } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_NAVY_XP} completion_reward = { hidden_effect = { if = { #DEFAULT COMMIE limit = { has_government = communism } #Swap dynamic modifier to change dynamic modifier's custom tooltip remove_dynamic_modifier = { modifier = SOV_the_red_fleet_surface_1_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_the_red_fleet_surface_2_dynamic_modifier } } else = { #ALT IDEOLOGY #Swap dynamic modifier to change dynamic modifier's custom tooltip remove_dynamic_modifier = { modifier = SOV_the_red_fleet_surface_1_dynamic_modifier_alt } add_dynamic_modifier = { modifier = SOV_the_red_fleet_surface_2_dynamic_modifier_alt } } #Hidden National Spirits handle the equipment bonus that's not supported by dynamic modifiers swap_ideas = { remove_idea = SOV_red_fleet_surface_bonus_1 add_idea = SOV_red_fleet_surface_bonus_2 } } custom_effect_tooltip = SOV_offensive_maritime_strategy_ns_tt navy_experience = 25 add_tech_bonus = { name = SOV_offensive_maritime_strategy bonus = 1.0 uses = 1 category = ca_tech } #Kronshtadt Class Battlecruiser if = { limit = { NOT = { has_dlc = "Man the Guns" } } add_tech_bonus = { name = SOV_offensive_maritime_strategy bonus = 2.0 uses = 1 category = bc_tech } } else = { create_equipment_variant = { name = "Kronshtadt Class" type = ship_hull_heavy_2 name_group = SOV_BC_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip modules = { fixed_ship_battery_slot = ship_heavy_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 = heavy_ship_engine_2 fixed_ship_secondaries_slot = ship_secondaries_1 fixed_ship_armor_slot = ship_armor_bc_2 front_1_custom_slot = ship_heavy_battery_1 mid_1_custom_slot = ship_secondaries_1 mid_2_custom_slot = ship_anti_air_1 rear_1_custom_slot = ship_airplane_launcher_1 } } #Line Production add_equipment_production = { equipment = { type = ship_hull_heavy_2 creator = "SOV" version_name = "Kronshtadt Class" } requested_factories = 1 progress = 0.50 amount = 1 #Tooltip purposes } #Line Production add_equipment_production = { equipment = { type = ship_hull_heavy_2 creator = "SOV" version_name = "Kronshtadt Class" } requested_factories = 1 progress = 0.35 amount = 1 } } } } focus = { id = SOV_an_oceangoing_navy icon = GFX_SOV_an_oceangoing_navy_ccp_2d_sov_compatibility prerequisite = { focus = SOV_surface_warfare focus = SOV_submarine_warfare } x = 1 y = 1 relative_position_id = SOV_surface_warfare cost = 10 available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } if = { limit = { has_dlc = "Man the Guns" } has_tech = basic_ship_hull_heavy } } search_filters = {FOCUS_FILTER_RESEARCH FOCUS_FILTER_NAVY_XP} completion_reward = { navy_experience = 25 add_tech_bonus = { name = SOV_an_oceangoing_navy bonus = 1.0 uses = 2 category = bb_tech } custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { NOT = { is_special_project_completed = sp:sp_naval_super_heavy_battleship } } add_breakthrough_progress = { specialization = specialization_naval value = 0.5 } } #Sovietsky Soyuz Super-Heavy Battleship if = { limit = { NOT = { has_dlc = "Man the Guns" } } add_tech_bonus = { name = SOV_an_oceangoing_navy bonus = 2.0 uses = 1 category = shbb_tech } } if = { limit = { is_special_project_completed = sp:sp_naval_super_heavy_battleship} #Grant SHBB Tech and required battery modules (not fire control) #if = { #limit = { #NOT = { is_special_project_completed = sp:sp_naval_super_heavy_battleship } #} #add_breakthrough_progress = { #specialization = specialization_naval #value = 0.5 #} #hidden_effect = { #set_technology = { #ship_hull_super_heavy = 1 #} #} #custom_effect_tooltip = SOV_an_oceangoing_navy_shbb_tt create_equipment_variant = { #MM: Engine should be 3 (but also should Yamato's) name = "Sovetsky Soyuz Class" type = ship_hull_super_heavy_1 name_group = SOV_STATES parent_version = 0 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip modules = { fixed_ship_battery_slot = ship_super_heavy_battery_1 fixed_ship_anti_air_slot = ship_anti_air_2 fixed_ship_fire_control_system_slot = ship_fire_control_system_1 fixed_ship_radar_slot = empty fixed_ship_engine_slot = heavy_ship_engine_2 fixed_ship_secondaries_slot = ship_secondaries_2 fixed_ship_armor_slot = ship_armor_shbb front_1_custom_slot = ship_anti_air_2 front_2_custom_slot = empty mid_1_custom_slot = empty mid_2_custom_slot = ship_secondaries_2 mid_3_custom_slot = ship_secondaries_2 rear_1_custom_slot = ship_super_heavy_battery_1 rear_2_custom_slot = ship_airplane_launcher_1 } } #Line Production add_equipment_production = { equipment = { type = ship_hull_super_heavy_1 creator = "SOV" version_name = "Sovetsky Soyuz Class" } requested_factories = 1 progress = 0.50 amount = 1 } add_equipment_production = { equipment = { type = ship_hull_super_heavy_1 creator = "SOV" version_name = "Sovetsky Soyuz Class" } requested_factories = 1 progress = 0.25 amount = 1 } add_equipment_production = { equipment = { type = ship_hull_super_heavy_1 creator = "SOV" version_name = "Sovetsky Soyuz Class" } requested_factories = 1 progress = 0.25 amount = 1 } } } } focus = { id = SOV_mine_warfare icon = GFX_focus_generic_mine_warfare prerequisite = { focus = SOV_surface_warfare focus = SOV_submarine_warfare } x = -1 y = 1 relative_position_id = SOV_submarine_warfare cost = 10 available = { } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { if = { limit = { has_dlc = "Man the Guns" } add_ideas = SOV_mine_warfare_ns custom_effect_tooltip = generic_skip_one_line_tt add_tech_bonus = { name = SOV_mine_warfare bonus = 1.0 uses = 2 category = naval_mines } } else = { add_tech_bonus = { name = SOV_mine_warfare bonus = 0.5 uses = 1 category = ss_tech category = dd_tech } custom_effect_tooltip = generic_skip_one_line_tt add_doctrine_cost_reduction = { name = SOV_mine_warfare cost_reduction = 0.75 uses = 1 category = naval_doctrine } } } } focus = { id = SOV_long_range_raiders icon = GFX_SOV_long_range_raiders_ccp_2d_sov_compatibility prerequisite = { focus = SOV_submarine_warfare } x = 1 y = 1 relative_position_id = SOV_submarine_warfare cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_NAVY_XP} completion_reward = { hidden_effect = { if = { #DEFAULT COMMIE limit = { has_government = communism } #Swap dynamic modifier to change dynamic modifier's custom tooltip remove_dynamic_modifier = { modifier = SOV_the_red_fleet_submarine_1_dynamic_modifier } add_dynamic_modifier = { modifier = SOV_the_red_fleet_submarine_2_dynamic_modifier } } else = { #ALT IDEOLOGY #Swap dynamic modifier to change dynamic modifier's custom tooltip remove_dynamic_modifier = { modifier = SOV_the_red_fleet_submarine_1_dynamic_modifier_alt } add_dynamic_modifier = { modifier = SOV_the_red_fleet_submarine_2_dynamic_modifier_alt } } #Hidden National Spirits handle the equipment bonus that's not supported by dynamic modifiers swap_ideas = { remove_idea = SOV_red_fleet_submarine_bonus_1 add_idea = SOV_red_fleet_submarine_bonus_2 } } custom_effect_tooltip = SOV_submarine_warfare_ns_tt navy_experience = 25 add_tech_bonus = { name = SOV_long_range_raiders ahead_reduction = 2 uses = 1 category = ss_tech } IF = { limit = { has_dlc = "Man the Guns" } add_ideas = cruiser_submarine_specialization_mtg } ELSE = { add_ideas = cruiser_submarine_specialization } } } focus = { id = SOV_advanced_maneuvers icon = GFX_goal_generic_navy_doctrines_tactics prerequisite = { focus = SOV_expand_shipbuilding_plants } prerequisite = { focus = SOV_an_oceangoing_navy } x = 0 y = 3 relative_position_id = SOV_expand_shipbuilding_plants cost = 10 available = { } search_filters = {FOCUS_FILTER_NAVY_XP} completion_reward = { set_variable = { SOV_red_fleet_naval_coordination = 0.1 } set_variable = { SOV_red_fleet_navy_visibility = -0.05 } set_variable = { SOV_red_fleet_positioning = 0.1 } set_variable = { SOV_red_fleet_screening_efficiency = 0.1 } custom_effect_tooltip = SOV_advanced_maneuvers_ns_tt navy_experience = 50 } } focus = { id = SOV_expand_the_morskaya_aviatsiya icon = GFX_SOV_expand_the_morskaya_aviatsiya_ccp_2d_sov_compatibility prerequisite = { focus = SOV_increase_aircraft_production focus = SOV_intensify_pilot_training_program } prerequisite = { focus = SOV_advanced_maneuvers } x = -2 y = 1 relative_position_id = SOV_advanced_maneuvers cost = 10 available = { } search_filters = {FOCUS_FILTER_RESEARCH FOCUS_FILTER_AIR_XP FOCUS_FILTER_NAVY_XP} completion_reward = { navy_experience = 25 air_experience = 25 custom_effect_tooltip = generic_skip_one_line_tt add_tech_bonus = { name = SOV_expand_the_morskaya_aviatsiya bonus = 1 uses = 2 category = cv_tech category = naval_air } ########### ### MTG ### ########### if = { #MTG limit = { has_dlc = "Man the Guns" } if = { limit = { #Carrier 4 has_tech = advanced_ship_hull_carrier } #Equipment Variant create_equipment_variant = { name = "Project 71 Class" type = ship_hull_carrier_3 name_group = SOV_CV_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip modules = { fixed_ship_deck_slot_1 = ship_deck_space fixed_ship_deck_slot_2 = ship_deck_space fixed_ship_anti_air_slot = ship_anti_air_2 fixed_ship_radar_slot = empty fixed_ship_engine_slot = carrier_ship_engine_4 fixed_ship_secondaries_slot = ship_secondaries_1 front_1_custom_slot = ship_deck_space } } #Line Production add_equipment_production = { equipment = { type = ship_hull_carrier_3 creator = "SOV" version_name = "Project 71 Class" } name = "Siberia" requested_factories = 1 progress = 0.45 amount = 1 } } else_if = { limit = { #Carrier 3 has_tech = improved_ship_hull_carrier } #Equipment Variant create_equipment_variant = { name = "Project 71 Class" type = ship_hull_carrier_2 name_group = SOV_CV_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip modules = { fixed_ship_deck_slot_1 = ship_deck_space fixed_ship_deck_slot_2 = ship_deck_space fixed_ship_anti_air_slot = ship_anti_air_2 fixed_ship_radar_slot = empty fixed_ship_engine_slot = carrier_ship_engine_3 fixed_ship_secondaries_slot = ship_secondaries_1 front_1_custom_slot = ship_deck_space } } #Line Production add_equipment_production = { equipment = { type = ship_hull_carrier_2 creator = "SOV" version_name = "Project 71 Class" } name = "Siberia" requested_factories = 1 progress = 0.45 amount = 1 } } else_if = { limit = { #Carrier 2 has_tech = basic_ship_hull_carrier } #Equipment Variant create_equipment_variant = { name = "Project 71 Class" type = ship_hull_carrier_1 name_group = SOV_CV_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip modules = { fixed_ship_deck_slot_1 = ship_deck_space fixed_ship_deck_slot_2 = ship_deck_space fixed_ship_anti_air_slot = ship_anti_air_2 fixed_ship_radar_slot = empty fixed_ship_engine_slot = carrier_ship_engine_2 fixed_ship_secondaries_slot = ship_secondaries_1 front_1_custom_slot = ship_deck_space } } #Line Production add_equipment_production = { equipment = { type = ship_hull_carrier_1 creator = "SOV" version_name = "Project 71 Class" } name = "Siberia" requested_factories = 1 progress = 0.45 amount = 1 } } else = { #Carrier 1 if = { limit = { NOT = { has_tech = early_ship_hull_carrier } } set_technology = { early_ship_hull_carrier = 1 } } #Equipment Variant create_equipment_variant = { name = "Project 71 Class" type = ship_hull_carrier_conversion_ca name_group = SOV_CV_HISTORICAL parent_version = 0 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip modules = { fixed_ship_deck_slot_1 = ship_deck_space fixed_ship_deck_slot_2 = ship_deck_space fixed_ship_anti_air_slot = ship_anti_air_2 fixed_ship_radar_slot = empty fixed_ship_engine_slot = carrier_ship_engine_1 fixed_ship_secondaries_slot = ship_secondaries_1 } } #Line Production add_equipment_production = { equipment = { type = ship_hull_carrier_conversion_ca creator = "SOV" version_name = "Project 71 Class" } name = "Siberia" requested_factories = 1 progress = 0.45 amount = 1 } } } ############## ### NO MTG ### ############## else = { if = { limit = { #Carrier 4 has_tech = advanced_carrier } create_equipment_variant = { name = "Project 71 Class" type = carrier_4 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip upgrades = { ship_deckspace_upgrade = 4 carrier_armor_upgrade = 4 ship_engine_upgrade = 3 ship_reliability_upgrade = 3 } } add_equipment_production = { equipment = { type = carrier_4 creator = "SOV" version_name = "Project 71 Class" } requested_factories = 1 progress = 0.45 amount = 1 } } else_if = { limit = { #Carrier 3 has_tech = improved_carrier } create_equipment_variant = { name = "Project 71 Class" type = carrier_3 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip upgrades = { ship_deckspace_upgrade = 3 carrier_armor_upgrade = 3 ship_engine_upgrade = 3 ship_reliability_upgrade = 2 } } add_equipment_production = { equipment = { type = carrier_3 creator = "SOV" version_name = "Project 71 Class" } requested_factories = 1 progress = 0.45 amount = 1 } } else_if = { limit = { #Carrier 2 has_tech = basic_carrier } create_equipment_variant = { name = "Project 71 Class" type = carrier_2 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip upgrades = { ship_deckspace_upgrade = 2 carrier_armor_upgrade = 2 ship_engine_upgrade = 2 ship_reliability_upgrade = 2 } } add_equipment_production = { equipment = { type = carrier_2 creator = "SOV" version_name = "Project 71 Class" } requested_factories = 1 progress = 0.45 amount = 1 } } else = { #Carrier 1 if = { limit = { NOT = { has_tech = early_carrier } } set_technology = { early_carrier = 1 } } create_equipment_variant = { name = "Project 71 Class" type = carrier_1 allow_without_tech = yes #Makes no difference since focus requires appropriate tech (above), but it improves tooltip upgrades = { ship_deckspace_upgrade = 2 carrier_armor_upgrade = 1 ship_engine_upgrade = 2 ship_reliability_upgrade = 1 } } add_equipment_production = { equipment = { type = carrier_1 creator = "SOV" version_name = "Project 71 Class" } requested_factories = 1 progress = 0.45 amount = 1 } } } } } focus = { id = SOV_naval_infantry icon = GFX_SOV_naval_infantry_ccp_2d_sov_compatibility prerequisite = { focus = SOV_advanced_maneuvers } x = 0 y = 1 relative_position_id = SOV_advanced_maneuvers cost = 10 available = { } search_filters = {FOCUS_FILTER_RESEARCH FOCUS_FILTER_NAVY_XP FOCUS_FILTER_ARMY_XP} completion_reward = { if = { limit = { has_dlc = "Arms Against Tyranny" } add_potential_special_forces_tree = yes add_doctrine_cost_reduction = { name = SOV_naval_infantry cost_reduction = 0.25 uses = 2 category = special_forces_doctrine } } else = { set_variable = { SOV_red_fleet_naval_invasion_capacity = 10 } set_variable = { SOV_red_fleet_invasion_preparation = -0.1 } set_variable = { SOV_red_fleet_special_forces_cap = 0.1 } custom_effect_tooltip = SOV_naval_infantry_ns_tt add_tech_bonus = { name = SOV_naval_infantry bonus = 1 uses = 1 category = marine_tech } } navy_experience = 25 army_experience = 25 } } ## ## #### ## #### ######## ### ######## ## ## ### ### ## ## ## ## ## ## ## ## ## ## #### #### ## ## ## ## ## ## ## ## #### ## ### ## ## ## ## ## ## ## ######## ## ## ## ## ## ## ## ######### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ######## #### ## ## ## ## ## ## focus = { id = SOV_found_the_pcdi icon = GFX_SOV_found_the_pcdi_ccp_2d_sov_compatibility x = 15 y = 0 relative_position_id = SOV_expand_the_red_fleet cost = 5 ai_will_do = { factor = 1 } available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { hidden_effect = { add_dynamic_modifier = { modifier = SOV_defense_industry_dynamic_modifier } } custom_effect_tooltip = SOV_found_the_pcdi_ns_tt } } focus = { id = SOV_pc_of_mechanical_engineering icon = GFX_SOV_pc_of_mechanical_engineering_ccp_2d_sov_compatibility prerequisite = { focus = SOV_found_the_pcdi } x = -5 y = 1 relative_position_id = SOV_found_the_pcdi cost = 10 available = { has_full_control_of_state = 219 #MOSCOW } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { add_to_variable = { SOV_defense_industry_production_factory_max_efficiency_factor = 0.05 } add_to_variable = { SOV_defense_industry_production_factory_efficiency_gain_factor = -0.05 } custom_effect_tooltip = SOV_pc_of_mechanical_engineering_ns_tt if = { #DEFAULT COMMIE limit = { has_government = communism } add_tech_bonus = { name = SOV_pc_of_mechanical_engineering_name_default bonus = 1 uses = 2 category = motorized_equipment category = infantry_weapons } } else = { #ALT IDEOLOGY add_tech_bonus = { name = SOV_pc_of_mechanical_engineering_name_alt bonus = 1 uses = 2 category = motorized_equipment category = infantry_weapons } } 219 = { if = { limit = { 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 = SOV_superior_war_machines icon = GFX_SOV_superior_war_machines_ccp_2d_sov_compatibility prerequisite = { focus = SOV_pc_of_mechanical_engineering } x = -1 y = 1 relative_position_id = SOV_pc_of_mechanical_engineering cost = 5 available = { if = { limit = { has_dlc = "No Step Back" } has_tech = basic_medium_tank_chassis } else = { has_tech = basic_medium_tank } } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { set_variable = { SOV_defense_industry_tank_manufacturer_cost_factor = -0.25 } custom_effect_tooltip = SOV_superior_war_machines_ns_tt add_tech_bonus = { name = SOV_superior_war_machines bonus = 0.5 uses = 2 category = armor } if = { limit = { has_dlc = "No Step Back" } #T-34 tank template if = { limit = { OR = { has_tech = artillery3 has_tech = antitank3 } } create_equipment_variant = { name = "T-34" type = medium_tank_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_medium_cannon_2 turret_type_slot = tank_medium_two_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 7 } icon = "GFX_SOV_improved_medium_tank_medium" } } else_if = { limit = { OR = { has_tech = artillery1 has_tech = antitank1 } } create_equipment_variant = { name = "T-34" type = medium_tank_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_medium_cannon turret_type_slot = tank_medium_two_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 7 tank_nsb_armor_upgrade = 5 } icon = "GFX_SOV_improved_medium_tank_medium" } } else_if = { #Why? You ruined your T-34 limit = { has_tech = interwar_artillery } create_equipment_variant = { name = "T-34" type = medium_tank_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_small_cannon_2 turret_type_slot = tank_medium_two_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 5 tank_nsb_armor_upgrade = 5 } icon = "GFX_SOV_improved_medium_tank_medium" } } else = { #Don't do this to yourself dude create_equipment_variant = { name = "T-34" type = medium_tank_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_small_cannon turret_type_slot = tank_medium_two_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 5 tank_nsb_armor_upgrade = 3 } icon = "GFX_SOV_improved_medium_tank_medium" } } } } } focus = { id = SOV_the_means_to_wage_war icon = GFX_SOV_the_means_to_wage_war_ccp_2d_sov_compatibility prerequisite = { focus = SOV_pc_of_mechanical_engineering } x = 1 y = 1 relative_position_id = SOV_pc_of_mechanical_engineering cost = 5 available = { } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { set_variable = { SOV_defense_industry_materiel_manufacturer_cost_factor = -0.25 } custom_effect_tooltip = SOV_the_means_to_wage_war_ns_tt add_tech_bonus = { name = SOV_the_means_to_wage_war bonus = 0.5 uses = 2 category = support_tech } } } focus = { id = SOV_soviet_artillery icon = GFX_SOV_soviet_artillery_ccp_2d_sov_compatibility prerequisite = { focus = SOV_superior_war_machines } x = -1 y = 1 relative_position_id = SOV_superior_war_machines cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { if = { limit = { has_government = communism } add_tech_bonus = { name = SOV_soviet_artillery_tech_bonus_name_default bonus = 0.75 uses = 2 ahead_reduction = 2 category = artillery } } else ={ add_tech_bonus = { name = SOV_soviet_artillery_tech_bonus_name_alt bonus = 0.75 uses = 2 ahead_reduction = 2 category = artillery } } custom_effect_tooltip = generic_skip_one_line_tt if = { # 2 Mils in Chelyabinsk limit = { has_full_control_of_state = 572 572 = { free_building_slots = { building = arms_factory size > 0 include_locked = yes } } } 572 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = arms_factory level = 1 instant_build = yes } } } else = { # If Chelyabinsk not available, then 1 Mil elsewhere random_owned_state = { limit = { is_fully_controlled_by = ROOT arms_factory > 1 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 } } } custom_effect_tooltip = generic_skip_one_line_tt add_ideas = SOV_defense_industry_artillery_bonus custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { has_dlc = "No Step Back" } #SU-85/100 tank template (AT) if = { limit = { has_tech = antitank5 } create_equipment_variant = { name = "SU-100" type = medium_tank_destroyer_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_high_velocity_cannon_3 turret_type_slot = tank_medium_fixed_superstructure_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } icon = "GFX_SOV_advanced_medium_td_medium" } } else_if = { limit = { has_tech = antitank4 } create_equipment_variant = { name = "SU-100" type = medium_tank_destroyer_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_high_velocity_cannon_2 turret_type_slot = tank_medium_fixed_superstructure_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } icon = "GFX_SOV_advanced_medium_td_medium" } } else_if = { #You really should invest some time in research AT... limit = { has_tech = interwar_antitank } create_equipment_variant = { name = "SU-85" type = medium_tank_destroyer_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_high_velocity_cannon turret_type_slot = tank_medium_fixed_superstructure_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } icon = "GFX_SOV_improved_medium_td_medium" } } else = { #This is just blasphemy create_equipment_variant = { name = "SU-85" type = medium_tank_destroyer_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_heavy_cannon turret_type_slot = tank_medium_fixed_superstructure_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } icon = "GFX_SOV_improved_medium_td_medium" } } #SU-122 tank template (SPG) if = { limit = { has_tech = artillery4 } create_equipment_variant = { name = "SU-122" type = medium_tank_artillery_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_heavy_howitzer turret_type_slot = tank_medium_fixed_superstructure_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } icon = "GFX_SOV_improved_medium_art_medium" } } else_if = { limit = { has_tech = artillery1 } create_equipment_variant = { name = "SU-122" type = medium_tank_artillery_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_medium_howitzer_2 turret_type_slot = tank_medium_fixed_superstructure_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } icon = "GFX_SOV_improved_medium_art_medium" } } else = { #You really need some arty research create_equipment_variant = { name = "SU-122" type = medium_tank_artillery_chassis_2 parent_version = 0 modules = { main_armament_slot = tank_medium_howitzer turret_type_slot = tank_medium_fixed_superstructure_turret suspension_type_slot = tank_bogie_suspension armor_type_slot = tank_riveted_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 10 tank_nsb_armor_upgrade = 8 } icon = "GFX_SOV_improved_medium_art_medium" } } } } } focus = { id = SOV_pc_of_mortar_armament icon = GFX_SOV_pc_of_mortar_armament_ccp_2d_sov_compatibility prerequisite = { focus = SOV_pc_of_mechanical_engineering } x = 0 y = 2 relative_position_id = SOV_pc_of_mechanical_engineering cost = 10 available = { has_full_control_of_state = 219 #MOSCOW } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { add_to_variable = { SOV_defense_industry_breakthrough_factor = 0.05 } add_to_variable = { SOV_defense_industry_army_artillery_defence_factor = 0.05 } custom_effect_tooltip = SOV_pc_of_mortar_armament_ns_tt if = { #DEFAULT COMMIE limit = { has_government = communism } add_tech_bonus = { name = SOV_pc_of_mortar_armament_name_default bonus = 0.75 uses = 2 category = artillery } } else = { #ALT IDEOLOGY add_tech_bonus = { name = SOV_pc_of_mortar_armament_name_alt bonus = 0.75 uses = 2 category = artillery } } 219 = { if = { limit = { 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 = SOV_development_of_tankograd icon = GFX_SOV_development_of_tankograd_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_means_to_wage_war } x = 1 y = 1 relative_position_id = SOV_the_means_to_wage_war cost = 10 available = { custom_trigger_tooltip = { tooltip = SOV_fyp_controlled_factories_tier_4_tt NOT = { num_of_controlled_factories < SOV_fyp_factory_requirement_tier_4 } } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_ARMY_XP} completion_reward = { add_to_variable = { SOV_defense_industry_land_equipment_upgrade_xp_cost = -0.1 } custom_effect_tooltip = SOV_development_of_tankograd_ns_tt custom_effect_tooltip = SOV_development_of_tankograd_factories_tt #This is just for tooltip purposes effect_tooltip = { every_owned_state = { limit = { is_on_continent = asia arms_factory > 2 free_building_slots = { building = arms_factory size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = arms_factory level = 1 instant_build = yes } } } #Actual effects set_temp_variable = { temp_targets_index = 0 } while_loop_effect = { limit = { check_variable = { temp_targets_index = 10 compare = less_than } } hidden_effect = { random_owned_state = { limit = { is_on_continent = asia arms_factory > 2 free_building_slots = { building = arms_factory size > 1 include_locked = yes } NOT = { has_state_flag = SOV_development_of_tankograd_flag } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = arms_factory level = 1 instant_build = yes } set_state_flag = SOV_development_of_tankograd_flag add_to_temp_variable = { SOV.temp_targets_index = 1 } #log = "Round [?SOV.temp_targets_index]" } } } } } focus = { id = SOV_merge_tank_and_materiel_plants icon = GFX_focus_SOV_merge_plants prerequisite = { focus = SOV_development_of_tankograd focus = SOV_pc_of_mortar_armament focus = SOV_soviet_artillery } x = 0 y = 1 relative_position_id = SOV_pc_of_mortar_armament cost = 5 available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { if = { limit = { has_dlc = "Arms Against Tyranny" } #TANKS every_military_industrial_organization = { limit = { has_mio_trait = SOV_mio_trait_merge_plant_no_174 #All Tank MIOs have this trait } unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_174 unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_112 unlock_mio_trait_tooltip = SOV_mio_trait_merge_ural_heavy_machine_building_plant } custom_effect_tooltip = generic_skip_one_line_tt #MATERIEL every_military_industrial_organization = { limit = { has_mio_trait = SOV_mio_trait_merge_nkmz_plant #All Materiel MIOs have this trait } unlock_mio_trait_tooltip = SOV_mio_trait_merge_nkmz_plant unlock_mio_trait_tooltip = SOV_mio_trait_merge_magnitogorsk_metallurgical_plant } mio:SOV_grabin_design_bureau_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_172 } mio:SOV_tula_arms_plant_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_plant_no_622 } mio:SOV_gaz_organization = { unlock_mio_trait_tooltip = SOV_mio_trait_merge_automobile_tool_plant } } else = { custom_effect_tooltip = SOV_merge_tank_and_materiel_plants_tt } } } focus = { id = SOV_strengthen_the_mobilization_plan icon = GFX_SOV_strengthen_the_mobilization_plan_ccp_2d_sov_compatibility x = 7 y = 0 relative_position_id = SOV_found_the_pcdi cost = 5 ai_will_do = { factor = 1 } available = { } search_filters = {FOCUS_FILTER_MANPOWER} completion_reward = { custom_effect_tooltip = modify_the_red_army_tt add_to_variable = { SOV_the_red_army_mobilization_speed = 0.05 tooltip = mobilization_speed_tt} add_to_variable = { SOV_the_red_army_conscription_factor = 0.03 tooltip = conscription_factor_tt } add_to_variable = { SOV_the_red_army_mastery_loss_factor = 0.05 tooltip = land_mastery_gain_factor_tt } #Need for tooltip set_variable = { SOV_the_red_army_mastery_loss_factor_inverted = SOV_the_red_army_mastery_loss_factor } multiply_variable = { SOV_the_red_army_mastery_loss_factor_inverted = -1 } } } focus = { id = SOV_military_engineering_university icon = GFX_SOV_military_engineering_university_ccp_2d_sov_compatibility prerequisite = { focus = SOV_found_the_pcdi } prerequisite = { focus = SOV_strengthen_the_mobilization_plan } x = 2 y = 1 relative_position_id = SOV_found_the_pcdi cost = 5 available = { } search_filters = {} completion_reward = { add_to_variable = { SOV_defense_industry_production_speed_coastal_bunker_factor = 0.05 } add_to_variable = { SOV_defense_industry_production_speed_bunker_factor = 0.05 } add_to_variable = { SOV_defense_industry_max_dig_in_factor = 0.05 } custom_effect_tooltip = SOV_military_engineering_university_ns_tt } } focus = { id = SOV_leningrad_polytechnical_institute icon = GFX_SOV_leningrad_polytechnical_institute_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_means_to_wage_war } prerequisite = { focus = SOV_military_engineering_university } x = 2 y = 2 relative_position_id = SOV_the_means_to_wage_war cost = 10 dynamic = yes available = { } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { add_research_slot = 1 } } focus = { id = SOV_soviet_atomic_bomb_project icon = GFX_SOV_soviet_atomic_bomb_project_ccp_2d_sov_compatibility prerequisite = { focus = SOV_leningrad_polytechnical_institute } x = 0 y = 2 relative_position_id = SOV_leningrad_polytechnical_institute cost = 10 available = { custom_trigger_tooltip = { tooltip = SOV_national_academies_of_sciences_available_tt set_temp_variable = { SOV_current_academies = SOV_academy_of_sciences_research_speed_factor } #This is a factor (0.X value) multiply_temp_variable = { SOV_current_academies = 100 } #Now it is possible to track the current number of civs check_variable = { SOV_current_academies = SOV_academies_required_for_atomic_bomb_project compare = greater_than_or_equals } } is_subject = no } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { IF = { limit = { NOT = { has_tech = atomic_research } } add_tech_bonus = { name = SOV_soviet_atomic_bomb_project_tech_bonus_name bonus = 1 uses = 1 ahead_reduction = 1 category = nuclear } add_breakthrough_progress = { specialization = specialization_nuclear value = 0.5 } } ELSE = { add_breakthrough_progress = { specialization = specialization_nuclear value = 0.8 } } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = SOV_soviet_atomic_bomb_project_tt hidden_effect = { IF = { limit = { 588 = { is_fully_controlled_by = ROOT air_facility < 1 land_facility < 1 naval_facility < 1 nuclear_facility < 1 } } 588 = { add_building_construction = { type = nuclear_facility level = 1 instant_build = yes province = 7350 # Kurchatov } add_victory_points = { province = 7350 value = 1 } } } } custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { has_dlc = "La Resistance" } create_operative_leader = { name = SOV_ursula_kuczynski GFX = GFX_Portrait_ursula_kuczynski female = yes traits = { operative_safe_cracker operative_infiltrator } bypass_recruitment = no available_to_spy_master = yes nationalities = { SOV GER } } add_ideas = SOV_soviet_atomic_bomb_project_ns } custom_effect_tooltip = SOV_soviet_atomic_bomb_project_unlock_operation_tt } } focus = { id = SOV_move_industry_to_the_urals icon = GFX_SOV_move_industry_to_the_urals_ccp_2d_sov_compatibility prerequisite = { focus = SOV_military_engineering_university } x = -3 y = 1 relative_position_id = SOV_military_engineering_university cost = 10 available = { has_full_control_of_state = 219 #MOSCOW has_equipment = { train_equipment > 119 } #20 trains per factory OR = { threat > 0.85 any_enemy_country = { SOV_is_major_not_original_sov = yes capital_scope = { is_on_continent = europe } } } } select_effect = { add_equipment_to_stockpile = { type = train_equipment amount = SOV_industrial_relocation_trains_focus_negative producer = SOV } #Factories are removed immediately to keep consistency with how decisions work 219 = { #Moscow remove_building = { type = arms_factory level = 1 } remove_building = { type = industrial_complex level = 1 } } if = { limit = { has_full_control_of_state = 195 } 195 = { #Leningrad remove_building = { type = arms_factory level = 1 } remove_building = { type = industrial_complex level = 1 } } } if = { limit = { has_full_control_of_state = 202 } 202 = { #Kiev remove_building = { type = arms_factory level = 1 } remove_building = { type = industrial_complex level = 1 } } } } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { hidden_effect = { add_equipment_to_stockpile = { type = train_equipment amount = SOV_industrial_relocation_trains_focus producer = SOV } } custom_effect_tooltip = SOV_focus_select_effect_tt effect_tooltip = { 219 = { #Moscow remove_building = { type = arms_factory level = 1 } remove_building = { type = industrial_complex level = 1 } } if = { limit = { has_full_control_of_state = 195 } 195 = { #Leningrad remove_building = { type = arms_factory level = 1 } remove_building = { type = industrial_complex level = 1 } } } if = { limit = { has_full_control_of_state = 202 } 202 = { #Kiev remove_building = { type = arms_factory level = 1 } remove_building = { type = industrial_complex level = 1 } } } } custom_effect_tooltip = SOV_move_industry_to_the_urals_trains_tt custom_effect_tooltip = SOV_focus_complete_effect_tt unlock_decision_category_tooltip = SOV_industry_relocation random_controlled_state = { limit = { SOV_is_industrial_relocation_destiny_state = yes } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 1 instant_build = yes } add_building_construction = { type = industrial_complex level = 1 instant_build = yes } hidden_effect = { damage_building = { type = arms_factory damage = 0.5 } damage_building = { type = industrial_complex damage = 0.5 } } } if = { limit = { ROOT = { has_full_control_of_state = 195 } #Leningrad } random_controlled_state = { #Different State please thanks limit = { NOT = { state = PREV } SOV_is_industrial_relocation_destiny_state = yes } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 1 instant_build = yes } add_building_construction = { type = industrial_complex level = 1 instant_build = yes } hidden_effect = { damage_building = { type = arms_factory damage = 0.5 } damage_building = { type = industrial_complex damage = 0.5 } } } } if = { limit = { ROOT = { has_full_control_of_state = 202 } #Leningrad } random_controlled_state = { #Different State please thanks limit = { NOT = { state = PREV } SOV_is_industrial_relocation_destiny_state = yes } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 1 instant_build = yes } add_building_construction = { type = industrial_complex level = 1 instant_build = yes } hidden_effect = { damage_building = { type = arms_factory damage = 0.5 } damage_building = { type = industrial_complex damage = 0.5 } } } } custom_effect_tooltip = SOV_relocate_industry_repair_tt } } focus = { id = SOV_the_road_of_life icon = GFX_focus_SOV_the_road_of_life prerequisite = { focus = SOV_leningrad_polytechnical_institute } prerequisite = { focus = SOV_move_industry_to_the_urals } x = 1 y = 1 relative_position_id = SOV_leningrad_polytechnical_institute cost = 5 available = { OR = { 195 = { #LENINGRAD is_controlled_by = ROOT any_neighbor_state = { is_owned_by = ROOT NOT = { is_fully_controlled_by = ROOT } } } 219 = { #MOSCOW is_controlled_by = ROOT any_neighbor_state = { is_owned_by = ROOT NOT = { is_fully_controlled_by = ROOT } } } 217 = { #STALINGRAD is_controlled_by = ROOT any_neighbor_state = { is_owned_by = ROOT NOT = { is_fully_controlled_by = ROOT } } } 137 = { #SEVASTOPOL is_controlled_by = ROOT any_neighbor_state = { is_owned_by = ROOT NOT = { is_fully_controlled_by = ROOT } } } 202 = { #Kiev is_controlled_by = ROOT any_neighbor_state = { is_owned_by = ROOT NOT = { is_fully_controlled_by = ROOT } } } } } search_filters = {} completion_reward = { add_timed_idea = { idea = SOV_the_road_of_life_ns days = 730 } } } focus = { id = SOV_the_molotov_line icon = GFX_SOV_the_molotov_line_ccp_2d_sov_compatibility prerequisite = { focus = SOV_military_engineering_university } x = -1 y = 1 relative_position_id = SOV_military_engineering_university cost = 10 mutually_exclusive = { focus = SOV_improve_the_stalin_line } available = { OR = { has_full_control_of_state = 188 has_full_control_of_state = 189 has_full_control_of_state = 814 has_full_control_of_state = 97 has_full_control_of_state = 94 has_full_control_of_state = 93 has_full_control_of_state = 91 has_full_control_of_state = 89 has_full_control_of_state = 80 has_full_control_of_state = 78 has_full_control_of_state = 766 } } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_the_molotov_line_tt ### LITHUANIA ### if = { #If Memel is controlled, then add forts in Memel, if not, then go to Zemaitija limit = { 188 = { is_fully_controlled_by = ROOT } } custom_effect_tooltip = SOV_molotov_line_forts_3 hidden_effect = { 188 = { add_building_construction = { type = bunker level = 3 province = { id = 3288 } instant_build = yes } } } } else = { 189 = { #ZEMAITIJA if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_3 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 6314 id = 9499 id = 3337 } instant_build = yes } } } } } 814 = { #Suduva if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_2 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 6407 id = 11312 } instant_build = yes } } } } ### POLAND ### 97 = { #Bialystok if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_6 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 3254 id = 400 id = 11357 id = 11329 id = 11274 id = 290 } instant_build = yes } } } } 94 = { #Polesie if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_2 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 3392 id = 6546 } instant_build = yes } } } } 93 = { #Wolyn if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_2 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 11441 id = 422 } instant_build = yes } } } } 91 = { #Lwow if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_2 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 536 id = 9468 } instant_build = yes } } } } 89 = { #Stanislawow if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_4 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 6431 id = 6460 id = 9425 id = 3743 } instant_build = yes } } } } ### ROMANIA ### 80 = { #Bucovina if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_2 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 9548 id = 577 } instant_build = yes } } } } ### ROMANIA ### 78 = { #Bessarabia if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_5 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 3407 id = 3577 id = 565 id = 3707 id = 3724 } instant_build = yes } } } } 766 = { #Southern Bessarabia if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_molotov_line_forts_2 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 3704 id = 3701 } instant_build = yes } } } } } } focus = { id = SOV_improve_the_stalin_line icon = GFX_SOV_improve_the_stalin_line_ccp_2d_sov_compatibility prerequisite = { focus = SOV_military_engineering_university } x = 1 y = 1 relative_position_id = SOV_military_engineering_university cost = 10 mutually_exclusive = { focus = SOV_the_molotov_line } available = { OR = { has_full_control_of_state = 209 has_full_control_of_state = 210 has_full_control_of_state = 207 has_full_control_of_state = 206 has_full_control_of_state = 202 has_full_control_of_state = 203 has_full_control_of_state = 834 has_full_control_of_state = 192 } } search_filters = {} completion_reward = { 209 = { if = { limit = { is_fully_controlled_by = ROOT } add_building_construction = { type = bunker level = 6 province = 415 instant_build = yes } } } 210 = { if = { limit = { is_fully_controlled_by = ROOT } add_building_construction = { type = bunker level = 4 province = 3333 instant_build = yes } } } 207 = { if = { limit = { is_fully_controlled_by = ROOT } add_building_construction = { type = bunker level = 4 province = 3219 instant_build = yes } add_building_construction = { type = bunker level = 4 province = 6371 instant_build = yes } add_building_construction = { type = bunker level = 4 province = 6220 instant_build = yes } } } 206 = { if = { limit = { is_fully_controlled_by = ROOT } add_building_construction = { type = bunker level = 4 province = 11370 instant_build = yes } } } 202 = { if = { limit = { is_fully_controlled_by = ROOT } add_building_construction = { type = bunker level = 7 province = 525 instant_build = yes } add_building_construction = { type = bunker level = 7 province = 3494 instant_build = yes } } } 203 = { if = { limit = { is_fully_controlled_by = ROOT } add_building_construction = { type = bunker level = 7 province = 11409 instant_build = yes } } } 834 ={ if = { limit = { is_fully_controlled_by = ROOT } add_building_construction = { type = bunker level = 5 province = 754 instant_build = yes } add_building_construction = { type = bunker level = 5 province = 741 instant_build = yes } } } 192 = { if = { limit = { is_fully_controlled_by = ROOT } add_building_construction = { type = bunker level = 5 province = 11670 instant_build = yes } } } } } focus = { id = SOV_the_defense_of_moscow icon = GFX_SOV_the_defense_of_moscow_ccp_2d_sov_compatibility prerequisite = { focus = SOV_move_industry_to_the_urals focus = SOV_improve_the_stalin_line focus = SOV_the_molotov_line } x = 1 y = 1 relative_position_id = SOV_move_industry_to_the_urals cost = 5 available = { 219 = { is_controlled_by = ROOT OR = { any_neighbor_state = { NOT = { is_controlled_by = ROOT } } SOV = { surrender_progress > 0.1 } #Keep an eye on this, might be too cheesy } } } search_filters = {FOCUS_FILTER_ARMY_XP} completion_reward = { army_experience = 15 219 = { custom_effect_tooltip = SOV_defense_of_moscow_forts hidden_effect = { if = { limit = { ROOT = { controls_province = 3391 } } add_building_construction = { type = bunker level = 3 province = 3391 instant_build = yes } } if = { limit = { ROOT = { controls_province = 6414 } } add_building_construction = { type = bunker level = 3 province = 6414 instant_build = yes } } if = { limit = { ROOT = { controls_province = 9348 } } add_building_construction = { type = bunker level = 3 province = 9348 instant_build = yes } } if = { limit = { ROOT = { controls_province = 301 } } add_building_construction = { type = bunker level = 3 province = 301 instant_build = yes } } if = { limit = { ROOT = { controls_province = 9378 } } add_building_construction = { type = bunker level = 3 province = 9378 instant_build = yes } } if = { limit = { ROOT = { controls_province = 6283 } } add_building_construction = { type = bunker level = 3 province = 6283 instant_build = yes } } if = { limit = { ROOT = { controls_province = 3259 } } add_building_construction = { type = bunker level = 3 province = 3259 instant_build = yes } } if = { limit = { ROOT = { controls_province = 11282 } } add_building_construction = { type = bunker level = 3 province = 11282 instant_build = yes } } if = { limit = { ROOT = { controls_province = 6380 } } add_building_construction = { type = bunker level = 4 province = 6380 instant_build = yes } } } } } } focus = { id = SOV_impregnable_forts icon = GFX_goal_generic_fortify_city prerequisite = { focus = SOV_improve_the_stalin_line focus = SOV_the_molotov_line } x = -1 y = 1 relative_position_id = SOV_improve_the_stalin_line cost = 10 available = { OR = { has_full_control_of_state = 195 #LENINGRAD has_full_control_of_state = 208 #LUGA has_full_control_of_state = 137 #CRIMEA } } search_filters = {} completion_reward = { if = { limit = { has_full_control_of_state = 195 #LENINGRAD } 195 = { #LENINGRAD add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = bunker level = 3 province = { id = 3151 id = 6174 } instant_build = yes } add_building_construction = { type = coastal_bunker level = 3 province = { id = 3151 id = 6174 } instant_build = yes } add_dynamic_modifier = { modifier = SOV_krasnaya_gorka_battery scope = SOV } } } if = { limit = { has_full_control_of_state = 208 #LUGA } 208 = { #LUGA add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = bunker level = 3 province = 9097 instant_build = yes } add_building_construction = { type = coastal_bunker level = 3 province = 9097 instant_build = yes } add_dynamic_modifier = { modifier = SOV_seraya_loshad_battery scope = SOV } } } if = { limit = { has_full_control_of_state = 137 #CRIMEA } 137 = { #CRIMEA add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = bunker level = 3 province = 3686 instant_build = yes } add_building_construction = { type = coastal_bunker level = 3 province = 3686 instant_build = yes } add_dynamic_modifier = { modifier = SOV_armored_battery_35 scope = SOV } } } } } focus = { id = SOV_protect_the_white_sea_baltic_canal icon = GFX_SOV_protect_the_white_sea_baltic_canal_ccp_2d_sov_compatibility prerequisite = { focus = SOV_military_engineering_university } x = 2 y = 2 relative_position_id = SOV_military_engineering_university cost = 5 available = { has_full_control_of_state = 215 #ONEGA has_full_control_of_state = 216 #OLONETS has_full_control_of_state = 264 #TIKHVIN has_full_control_of_state = 195 #LENINGRAD } search_filters = {} completion_reward = { if = { limit = { has_full_control_of_state = 215 #ONEGA } 215 = { #ONEGA add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = bunker level = 1 province = { id = 9045 id = 3078 id = 11212 } instant_build = yes } add_building_construction = { type = coastal_bunker level = 1 province = 9045 instant_build = yes } } } if = { limit = { has_full_control_of_state = 216 #OLONETS } 216 = { #OLONETS add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = bunker level = 1 province = { id = 92 id = 11092 } instant_build = yes } } } if = { limit = { has_full_control_of_state = 264 #TIKHVIN } 264 = { #TIKHVIN add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = bunker level = 1 province = { id = 9082 id = 9190 id = 11059 } instant_build = yes } } } if = { limit = { has_full_control_of_state = 195 #LENINGRAD } 195 = { #LENINGRAD add_building_construction = { type = anti_air_building level = 1 instant_build = yes } add_building_construction = { type = bunker level = 1 province = { id = 149 id = 11068 id = 79 } instant_build = yes } } } } } focus = { id = SOV_far_east_fortification icon = GFX_SOV_far_east_fortification_ccp_2d_sov_compatibility prerequisite = { focus = SOV_military_engineering_university } x = 3 y = 1 relative_position_id = SOV_military_engineering_university cost = 10 available = { OR = { has_full_control_of_state = 563 has_full_control_of_state = 561 has_full_control_of_state = 657 has_full_control_of_state = 409 has_full_control_of_state = 408 } } search_filters = {} completion_reward = { 563 = { #CHITA if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_far_east_fortification_forts_4 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 4719 id = 12622 } instant_build = yes } add_building_construction = { type = bunker level = 2 province = { id = 10559 } instant_build = yes } } } } 561 = { #AMUR if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_far_east_fortification_forts_4 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 12543 id = 7851 id = 10678 } instant_build = yes } add_building_construction = { #Set like this for stupid tooltip purposes type = bunker level = 1 province = { id = 12657 } instant_build = yes } } } } 657 = { #BIROBIDZHAN if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_far_east_fortification_forts_10 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 10655 id = 7801 id = 10722 id = 7672 } instant_build = yes } add_building_construction = { type = bunker level = 2 province = { id = 7763 id = 4725 id = 4805 } instant_build = yes } } } } 409 = { #KHABAROVSK if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_far_east_fortification_forts_4 hidden_effect = { add_building_construction = { type = bunker level = 2 province = { id = 12189 } instant_build = yes } add_building_construction = { #Set like this for stupid tooltip purposes type = bunker level = 2 province = { id = 10466 } instant_build = yes } } } } 408 = { #VLADIVOSTOK if = { limit = { is_fully_controlled_by = ROOT } custom_effect_tooltip = SOV_far_east_fortification_forts_10 hidden_effect = { add_building_construction = { type = bunker level = 1 province = { id = 11643 id = 6686 id = 664 id = 6684 id = 3787 id = 6838 } instant_build = yes } add_building_construction = { type = bunker level = 2 province = { id = 3977 id = 957 } instant_build = yes } } } } # Other possible Provinces #11879 (Border Conflict with Japan) 1755 (North Sakhalin) } } focus = { id = SOV_restore_cossack_units icon = GFX_focus_SOV_restore_cossack_units prerequisite = { focus = SOV_strengthen_the_mobilization_plan } x = -1 y = 1 relative_position_id = SOV_strengthen_the_mobilization_plan cost = 5 mutually_exclusive = { focus = SOV_cohesion_first } available = { } search_filters = {} completion_reward = { add_to_variable = { SOV_the_red_army_modifier_army_sub_unit_cavalry_speed_factor = 0.05 } add_to_variable = { SOV_the_red_army_cavalry_attack_factor = 0.05 } custom_effect_tooltip = SOV_restore_cossack_units_ns_tt show_unit_leaders_tooltip = SOV_lev_dovator #Spawn Cossack divisions custom_effect_tooltip = SOV_restore_cossack_units_spawn_tt hidden_effect = { division_template = { name = "Kazachya Kavaleryskaya Diviziya" division_names_group = SOV_CAV_02 template_counter = 05 regiments = { cavalry = { x = 0 y = 0 } cavalry = { x = 0 y = 1 } cavalry = { x = 1 y = 0 } cavalry = { x = 1 y = 1 } mot_artillery_brigade = { x = 2 y = 0 } light_armor = { x = 3 y = 0 } } support = { engineer = { x = 0 y = 0 } artillery = { x = 0 y = 1 } recon = { x = 0 y = 2 } } } capital_scope = { #Cossack Cavalry create_unit = { division = "name = \"4ya Donskaya Kazachya Kav. Div.\" division_template = \"Kazachya Kavaleryskaya Diviziya\" start_experience_factor = 0.8 start_equipment_factor = 1.0" owner = ROOT } create_unit = { division = "name = \"6ya Kubansko-Terskaya Kazachya Kav. Div.\" division_template = \"Kazachya Kavaleryskaya Diviziya\" start_experience_factor = 0.8 start_equipment_factor = 1.0" owner = ROOT } create_unit = { division = "name = \"10ya Tersko-Stavropolskaya Kazachya Kav. Div\" division_template = \"Kazachya Kavaleryskaya Diviziya\" start_experience_factor = 0.8 start_equipment_factor = 1.0" owner = ROOT } create_unit = { division = "name = \"12ya Kubanskaya Kazachya Kav. Div.\" division_template = \"Kazachya Kavaleryskaya Diviziya\" start_experience_factor = 0.8 start_equipment_factor = 1.0" owner = ROOT } #Cossack Infantry create_unit = { division = "name = \"13ya Donskaya Kazachya Div.\" division_template = \"Strelkovaya Diviziya\" start_experience_factor = 0.7 start_equipment_factor = 1.0" owner = ROOT } } } } } focus = { id = SOV_cohesion_first icon = GFX_SOV_cohesion_first_ccp_2d_sov_compatibility prerequisite = { focus = SOV_strengthen_the_mobilization_plan } x = 1 y = 1 relative_position_id = SOV_strengthen_the_mobilization_plan cost = 5 mutually_exclusive = { focus = SOV_restore_cossack_units } available = { } search_filters = {} completion_reward = { add_to_variable = { SOV_the_red_army_army_org_factor = 0.05 } add_to_variable = { SOV_the_red_army_training_time_factor = 0.1 } custom_effect_tooltip = SOV_cohesion_first_ns_tt } } focus = { id = SOV_rehabilitated_military icon = GFX_SOV_rehabilitated_military_ccp_2d_sov_compatibility prerequisite = { focus = SOV_restore_cossack_units focus = SOV_cohesion_first } x = 0 y = 2 relative_position_id = SOV_strengthen_the_mobilization_plan cost = 10 available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } } search_filters = {} completion_reward = { custom_effect_tooltip = modify_the_red_army_tt add_to_variable = { SOV_the_red_army_army_org_factor = 0.05 tooltip = army_org_factor_tt } if = { limit = { NOT = { has_completed_focus = SOV_lessons_of_war } } add_to_variable = { SOV_the_red_army_mastery_loss_factor = 0.15 tooltip = land_mastery_gain_factor_tt } #Need for tooltip set_variable = { SOV_the_red_army_mastery_loss_factor_inverted = SOV_the_red_army_mastery_loss_factor } multiply_variable = { SOV_the_red_army_mastery_loss_factor_inverted = -1 } } add_ideas = SOV_rehabilitated_military_ns } } focus = { id = SOV_military_reorganization icon = GFX_SOV_military_reorganization_ccp_2d_sov_compatibility prerequisite = { focus = SOV_rehabilitated_military } x = 0 y = 2 relative_position_id = SOV_rehabilitated_military cost = 10 select_effect = { add_ideas = SOV_military_reorganization_ns } available = { } search_filters = {FOCUS_FILTER_ARMY_XP} completion_reward = { #Tooltip purposes (Select Effect) custom_effect_tooltip = SOV_focus_select_effect_tt effect_tooltip = { add_ideas = SOV_military_reorganization_ns } #(Complete Effect) custom_effect_tooltip = SOV_focus_complete_effect_tt hidden_effect = { remove_ideas = SOV_military_reorganization_ns } add_to_variable = { SOV_the_red_army_unit_infantry_design_cost_factor = -0.1 } add_to_variable = { SOV_the_red_army_unit_artillery_brigade_design_cost_factor = -0.1 } custom_effect_tooltip = SOV_military_reorganization_ns_tt army_experience = 50 add_command_power = 25 } } focus = { id = SOV_desperate_measures icon = GFX_SOV_desperate_measures_ccp_2d_sov_compatibility prerequisite = { focus = SOV_strengthen_the_mobilization_plan } x = 3 y = 2 relative_position_id = SOV_strengthen_the_mobilization_plan cost = 5 available = { any_enemy_country = { SOV_is_major_not_original_sov = yes } } search_filters = {} completion_reward = { add_timed_idea = { idea = SOV_desperate_measures_ns days = 365 } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = SOV_desperate_measures_decisions_unlocked_tt } } focus = { id = SOV_an_adaptable_army icon = GFX_SOV_an_adaptable_army_ccp_2d_sov_compatibility prerequisite = { focus = SOV_rehabilitated_military } prerequisite = { focus = SOV_desperate_measures } x = 1 y = 1 relative_position_id = SOV_rehabilitated_military cost = 10 available = { } search_filters = {} completion_reward = { add_to_variable = { SOV_the_red_army_heat_attrition_factor = -0.1 } add_to_variable = { SOV_the_red_army_winter_attrition_factor = -0.1 } add_to_variable = { SOV_the_red_army_acclimatization_cold_climate_gain_factor = 0.15 } add_to_variable = { SOV_the_red_army_acclimatization_hot_climate_gain_factor = 0.15 } add_to_variable = { SOV_the_red_army_terrain_trait_xp_gain_factor = 0.15 } custom_effect_tooltip = SOV_an_adaptable_army_ns_tt } } focus = { id = SOV_lessons_of_war icon = GFX_SOV_lessons_of_war_ccp_2d_sov_compatibility prerequisite = { focus = SOV_rehabilitated_military } prerequisite = { focus = SOV_desperate_measures } x = 0 y = 1 relative_position_id = SOV_desperate_measures cost = 5 available = { NOT = { has_idea = SOV_desperate_measures_ns } } search_filters = {FOCUS_FILTER_ARMY_XP} completion_reward = { add_to_variable = { SOV_the_red_army_army_org_factor = 0.05 } set_variable = { SOV_the_red_army_experience_loss_factor = 0 } set_variable = { SOV_the_red_army_mastery_loss_factor = 0 } custom_effect_tooltip = SOV_lessons_of_war_ns_tt effect_tooltip = { #this should be the positive of whatever the negative mastery lsos is, only used for tooltip add_to_variable = { SOV_the_red_army_mastery_loss_factor = SOV_the_red_army_mastery_loss_factor_inverted tooltip = land_mastery_gain_factor_tt } } unlock_decision_tooltip = SOV_order_227 custom_effect_tooltip = SOV_lessons_of_war_unlock_military_operations_tt custom_effect_tooltip = SOV_lessons_of_war_cowed_trait_tt hidden_effect = { every_army_leader = { limit = { has_trait = trait_SOV_cowed_by_stalin_army } remove_unit_leader_trait = trait_SOV_cowed_by_stalin_army } every_navy_leader = { limit = { has_trait = trait_SOV_cowed_by_stalin_navy } remove_unit_leader_trait = trait_SOV_cowed_by_stalin_navy } } } } focus = { id = SOV_penal_battalions icon = GFX_focus_SOV_penal_battalions prerequisite = { focus = SOV_desperate_measures } x = 2 y = 1 relative_position_id = SOV_desperate_measures cost = 5 available = { has_war = yes } search_filters = {} completion_reward = { #Spawn Penal divisions custom_effect_tooltip = SOV_penal_battalions_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 = "Shtrafnaya Chast" division_names_group = SOV_PEN_01 is_locked = yes 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 } } } SOV_spawn_penal_divisions_effect = yes } } } focus = { id = SOV_organization_of_the_partisans icon = GFX_focus_focus_fra_maquis prerequisite = { focus = SOV_lessons_of_war } x = -1 y = 1 relative_position_id = SOV_lessons_of_war cost = 10 available = { any_owned_state = { controller = { has_war_with = ROOT } } } search_filters = {FOCUS_FILTER_PROPAGANDA} completion_reward = { add_to_variable = { SOV_the_red_army_operative_slot = 1 } custom_effect_tooltip = SOV_organization_of_the_partisans_ns_tt if = { limit = { has_government = communism } show_unit_leaders_tooltip = SOV_vasily_korzh show_unit_leaders_tooltip = SOV_sidor_kovpak } if = { limit = { has_dlc = "La Resistance" } if = { limit = { has_government = communism } create_operative_leader = { name = SOV_dimitry_medvedev GFX = GFX_Portrait_dmitry_medvedev female = yes traits = { operative_demolition_expert operative_commando } bypass_recruitment = no available_to_spy_master = yes nationalities = { SOV } } } custom_effect_tooltip = generic_skip_one_line_tt add_timed_idea = { idea = SOV_central_headquarters_of_the_partisan_movement days = 720 } } else = { add_timed_idea = { idea = SOV_central_headquarters_of_the_partisan_movement_no_lar days = 720 } } if = { limit = { has_government = communism } custom_effect_tooltip = unlock_propaganda_campaign_tt unlock_decision_tooltip = SOV_propaganda_glory_to_partisans unlock_decision_tooltip = SOV_propaganda_death_to_invaders custom_effect_tooltip = propaganda_campaign_requirement_tt } } } focus = { id = SOV_smersh icon = GFX_SOV_smersh_ccp_2d_sov_compatibility prerequisite = { focus = SOV_lessons_of_war } x = 2 y = 1 relative_position_id = SOV_lessons_of_war cost = 10 available = { } search_filters = {FOCUS_FILTER_PROPAGANDA} completion_reward = { if = { limit = { has_dlc = "La Resistance" } add_ideas = SOV_smersh } else = { add_ideas = SOV_smersh_no_lar } if = { limit = { has_government = communism } custom_effect_tooltip = unlock_propaganda_campaign_tt if = { limit ={ has_dlc = "La Resistance" } unlock_decision_tooltip = SOV_propaganda_treacherous_enemy } unlock_decision_tooltip = SOV_propaganda_do_not_blab custom_effect_tooltip = propaganda_campaign_requirement_tt } } } focus = { id = SOV_barrier_troops icon = GFX_SOV_barrier_troops_ccp_2d_sov_compatibility prerequisite = { focus = SOV_smersh } x = 0 y = 1 relative_position_id = SOV_smersh cost = 5 available = { } search_filters = {} completion_reward = { add_to_variable = { SOV_the_red_army_army_org_regain = 0.1 } custom_effect_tooltip = SOV_barrier_troops_ns_tt } } focus = { id = SOV_experts_in_camouflage icon = GFX_SOV_experts_in_camouflage_ccp_2d_sov_compatibility prerequisite = { focus = SOV_military_reorganization } x = -1 y = 1 relative_position_id = SOV_military_reorganization cost = 5 available = { } search_filters = {} completion_reward = { add_to_variable = { SOV_the_red_army_cas_damage_reduction = 0.05 } add_to_variable = { SOV_the_red_army_max_dig_in = 5 } add_to_variable = { SOV_the_red_army_dig_in_speed_factor = 0.05 } custom_effect_tooltip = SOV_experts_in_camouflage_ns_tt } } focus = { id = SOV_keep_commissars_organization icon = GFX_SOV_keep_commissars_organization_ccp_2d_sov_compatibility prerequisite = { focus = SOV_military_reorganization } prerequisite = { focus = SOV_lessons_of_war } x = 1 y = 1 relative_position_id = SOV_military_reorganization cost = 10 mutually_exclusive = { focus = SOV_swap_to_political_advisors } allow_branch = { NOT = { has_government = fascism has_government = neutrality } } available = { } bypass = { has_completed_focus = SOV_depoliticize_the_military } search_filters = {} completion_reward = { if = { limit = { has_idea = SOV_politicized_military } swap_ideas = { remove_idea = SOV_politicized_military add_idea = SOV_politicized_military_keep } } else_if = { limit = { has_idea = SOV_politicized_military_humanism } swap_ideas = { remove_idea = SOV_politicized_military_humanism add_idea = SOV_politicized_military_keep_humanism } } } } focus = { id = SOV_adjoined_battle_priests icon = GFX_focus_GRE_an_orthodox_state prerequisite = { focus = SOV_military_reorganization } prerequisite = { focus = SOV_lessons_of_war } x = 1 y = 1 relative_position_id = SOV_military_reorganization cost = 10 mutually_exclusive = { focus = SOV_swap_to_political_advisors } allow_branch = { OR = { has_government = fascism has_government = neutrality } } available = { has_completed_focus = SOV_church_candidates } bypass = { has_completed_focus = SOV_depoliticize_the_military has_completed_focus = SOV_socialist_humanism } search_filters = {} completion_reward = { if = { limit = { has_idea = SOV_politicized_military } swap_ideas = { remove_idea = SOV_politicized_military add_idea = SOV_politicized_military_battle_priests } } else_if = { #Just in case weird shit happens limit = { has_idea = SOV_politicized_military_humanism } swap_ideas = { remove_idea = SOV_politicized_military_humanism add_idea = SOV_politicized_military_battle_priests } } else = { add_ideas = SOV_politicized_military_battle_priests } } } focus = { id = SOV_swap_to_political_advisors icon = GFX_SOV_swap_to_political_advisors_ccp_2d_sov_compatibility prerequisite = { focus = SOV_military_reorganization } prerequisite = { focus = SOV_lessons_of_war } x = 3 y = 1 relative_position_id = SOV_military_reorganization cost = 10 mutually_exclusive = { focus = SOV_keep_commissars_organization focus = SOV_adjoined_battle_priests } available = { } bypass = { has_completed_focus = SOV_depoliticize_the_military } search_filters = {FOCUS_FILTER_ARMY_XP} completion_reward = { if = { limit = { has_idea = SOV_politicized_military } swap_ideas = { remove_idea = SOV_politicized_military add_idea = SOV_politicized_military_swap } } else_if = { limit = { has_idea = SOV_politicized_military_humanism } swap_ideas = { remove_idea = SOV_politicized_military_humanism add_idea = SOV_politicized_military_swap_humanism } } else_if = { limit = { OR = { has_government = neutrality has_government = fascism } } add_ideas = SOV_politicized_military_swap } else = { #To prevent the ugly "No current effects" tooltip if other focus taken effect_tooltip = { swap_ideas = { remove_idea = SOV_politicized_military add_idea = SOV_politicized_military_swap } } } } } focus = { id = SOV_the_glory_of_the_red_army icon = GFX_SOV_the_glory_of_the_red_army_ccp_2d_sov_compatibility prerequisite = { focus = SOV_keep_commissars_organization focus = SOV_swap_to_political_advisors focus = SOV_adjoined_battle_priests } x = 1 y = 1 relative_position_id = SOV_keep_commissars_organization cost = 10 allow_branch = { NOT = { has_government = fascism has_government = neutrality } } available = { any_enemy_country = { SOV_is_major_not_original_sov = yes } surrender_progress < 0.05 } search_filters = {FOCUS_FILTER_ARMY_XP} completion_reward = { add_to_variable = { SOV_the_red_army_special_forces_cap = 0.1 } add_to_variable = { SOV_the_red_army_land_doctrine_cost_factor = -0.1 } custom_effect_tooltip = SOV_the_glory_of_the_red_army_ns_tt army_experience = 75 show_unit_leaders_tooltip = SOV_pavel_rybalko #New hidden_effect = { unlock_tactic = tactic_masterful_blitz } custom_effect_tooltip = SOV_the_glory_of_the_red_army_masterful_blitz_tactic_tt custom_effect_tooltip = generic_skip_one_line_tt add_breakthrough_progress = { specialization = specialization_land value = 0.25 } } } focus = { id = SOV_the_glory_of_the_red_army_alt icon = GFX_SOV_the_glory_of_the_red_army_alt_ccp_2d_sov_compatibility prerequisite = { focus = SOV_keep_commissars_organization focus = SOV_swap_to_political_advisors focus = SOV_adjoined_battle_priests } x = 1 y = 1 relative_position_id = SOV_keep_commissars_organization cost = 10 allow_branch = { OR = { has_government = fascism has_government = neutrality } } available = { any_enemy_country = { SOV_is_major_not_original_sov = yes } surrender_progress < 0.05 } search_filters = {FOCUS_FILTER_ARMY_XP} completion_reward = { add_to_variable = { SOV_the_red_army_special_forces_cap = 0.1 } add_to_variable = { SOV_the_red_army_land_doctrine_cost_factor = -0.1 } custom_effect_tooltip = SOV_the_glory_of_the_red_army_ns_tt army_experience = 75 #New hidden_effect = { unlock_tactic = tactic_masterful_blitz } custom_effect_tooltip = SOV_the_glory_of_the_red_army_masterful_blitz_tactic_tt } } ######## ####### ## #### ######## #### ###### ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ######## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ######### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ####### ######## #### ## #### ###### ## ## ######## focus = { id = SOV_the_path_of_marxism_leninism icon = GFX_focus_SOV_the_path_of_marxism_leninism x = 16 y = 0 offset = { x = -8 y = 0 trigger = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = SOV_beaten_but_not_defeated } } relative_position_id = SOV_strengthen_the_mobilization_plan cost = 5 mutually_exclusive = { focus = SOV_beaten_but_not_defeated } allow_branch = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = SOV_the_hands_do } } } available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_political_power = 25 SOV_paranoia_low_decrease_effect = yes if = { limit = { has_dlc = "No Step Back" has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } mark_focus_tree_layout_dirty = yes } } } focus = { id = SOV_the_centre icon = GFX_focus_fra_loyalty_stalin prerequisite = { focus = SOV_the_path_of_marxism_leninism } x = -8 y = 1 offset = { x = 8 y = 1 trigger = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = SOV_beaten_but_not_defeated NOT = { has_completed_focus = SOV_the_hands_do } } } relative_position_id = SOV_the_path_of_marxism_leninism cost = 5 mutually_exclusive = { focus = SOV_the_right_opposition focus = SOV_the_left_opposition } allow_branch = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { AND = { has_completed_focus = SOV_the_left_opposition has_completed_focus = SOV_left_opposition_coup } AND = { has_completed_focus = SOV_the_right_opposition has_completed_focus = SOV_coup_detat } AND = { has_completed_focus = SOV_beaten_but_not_defeated has_completed_focus = SOV_the_hands_do } } } } available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA FOCUS_FILTER_STABILITY} completion_reward = { hidden_effect = { add_dynamic_modifier = { modifier = SOV_the_politburo_good_dynamic_modifier } } custom_effect_tooltip = SOV_the_centre_ns_tt add_political_power = 25 add_stability = 0.05 set_division_template_lock = { division_template = "NKVD Pogranichnaya Diviziya" is_locked = no } SOV_paranoia_low_decrease_effect = yes if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } mark_focus_tree_layout_dirty = yes } } } focus = { id = SOV_socialism_in_one_country icon = GFX_focus_SOV_socialism_in_one_country prerequisite = { focus = SOV_the_centre } x = -1 y = 1 relative_position_id = SOV_the_centre cost = 5 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_to_variable = { SOV_the_politburo_communism_drift = 0.05 } add_to_variable = { SOV_the_politburo_drift_defence_factor = 0.05 } add_to_variable = { SOV_the_politburo_defensive_war_stability_factor = 0.25 } custom_effect_tooltip = SOV_socialism_in_one_country_ns_tt add_political_power = 25 SOV_paranoia_low_decrease_effect = yes IF = { limit ={ is_faction_leader = yes } add_faction_goal = faction_goal_the_red_tide } } } focus = { id = SOV_the_stalin_constitution icon = GFX_SOV_the_stalin_constitutiony_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_centre } x = 1 y = 1 relative_position_id = SOV_the_centre cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA FOCUS_FILTER_STABILITY} completion_reward = { add_to_variable = { SOV_the_politburo_political_power_factor = 0.05 } add_to_variable = { SOV_the_politburo_drift_defence_factor = 0.05 } custom_effect_tooltip = SOV_the_stalin_constitution_ns_tt add_political_power = 50 add_stability = 0.05 SOV_paranoia_low_decrease_effect = yes } } focus = { id = SOV_the_zinovyevite_terrorist_center icon = GFX_focus_SOV_purge_zinovyevists prerequisite = { focus = SOV_the_stalin_constitution } x = 0 y = 1 relative_position_id = SOV_the_stalin_constitution cost = 5 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} select_effect = { set_country_flag = SOV_paranoia_do_not_cancel_focus_flag #This focus cannot be canceled } completion_reward = { clr_country_flag = SOV_paranoia_do_not_cancel_focus_flag set_country_flag = { flag = SOV_paranoia_random_purge_cooldown_from_focus_flag days = 15 } #Used to prevent random purges from popping up while this is active set_country_flag = SOV_first_moscow_trial_flag #Used to unlock the next purge focus add_political_power = 25 SOV_paranoia_high_increase_effect = yes #HISTORICAL #Zinovyev if = { limit = { has_character = SOV_grigory_zinovyev } SOV_grigory_zinovyev = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Kamenev if = { limit = { has_character = SOV_lev_kamenev } SOV_lev_kamenev = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Smirnov if = { limit = { has_character = SOV_ivan_smirnov } SOV_ivan_smirnov = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #NOT-SO-HISTORICAL #Sokolnikov if = { limit = { has_character = SOV_grigory_sokolnikov } SOV_grigory_sokolnikov = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Shlyapnikov if = { limit = { has_character = SOV_aleksandr_shlyapnikov } SOV_aleksandr_shlyapnikov = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } custom_effect_tooltip = SOV_will_trigger_a_great_purge_tt hidden_effect = { set_country_flag = SOV_purge_event_unavoidable_flag #No way to avoid this purge. This people are about to be purged and there's nothing you can do for them. SOV_trigger_great_purge_moscow_trial_effect = yes #FIRST MOSCOW TRIAL -> Zinovyev & friends } custom_effect_tooltip = SOV_trigger_first_moscow_trial_tt custom_effect_tooltip = newline_tt if = { limit = { NOT = { has_completed_focus = SOV_lessons_of_war } } custom_effect_tooltip = modify_the_red_army_tt add_to_variable = { SOV_the_red_army_mastery_loss_factor = -0.05 tooltip = land_mastery_gain_factor_tt } #Need for tooltip set_variable = { SOV_the_red_army_mastery_loss_factor_inverted = SOV_the_red_army_mastery_loss_factor } multiply_variable = { SOV_the_red_army_mastery_loss_factor_inverted = -1 } } } } focus = { id = SOV_secure_the_administration icon = GFX_focus_generic_join_comintern prerequisite = { focus = SOV_the_zinovyevite_terrorist_center } x = -1 y = 1 relative_position_id = SOV_the_zinovyevite_terrorist_center cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_to_variable = { SOV_the_politburo_economy_cost_factor = -0.2 } add_to_variable = { SOV_the_politburo_trade_laws_cost_factor = -0.2 } add_to_variable = { SOV_the_politburo_mobilization_laws_cost_factor = -0.2 } custom_effect_tooltip = SOV_secure_the_administration_ns_tt add_political_power = 50 SOV_paranoia_medium_decrease_effect = yes } } focus = { id = SOV_the_collectivization_process icon = GFX_focus_prc_agrarian_socialism prerequisite = { focus = SOV_socialism_in_one_country } prerequisite = { focus = SOV_secure_the_administration } x = 0 y = 3 relative_position_id = SOV_socialism_in_one_country cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_to_variable = { SOV_the_politburo_good_consumer_goods_factor = -0.02 } add_to_variable = { SOV_the_politburo_production_speed_buildings_factor = 0.05 } add_to_variable = { SOV_the_politburo_global_building_slots_factor = 0.1 } custom_effect_tooltip = SOV_the_collectivization_process_ns_tt add_stability = -0.05 add_war_support = -0.05 if = { #Target a rural state with no civs limit = { any_owned_state = { OR = { has_state_category = town #Developed Rural Region has_state_category = rural #Rural Region } is_fully_controlled_by = ROOT industrial_complex < 1 arms_factory < 1 dockyard < 1 free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } } random_owned_state = { limit = { OR = { has_state_category = town #Developed Rural Region has_state_category = rural #Rural Region } is_fully_controlled_by = ROOT industrial_complex < 1 arms_factory < 1 dockyard < 1 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_if = { #Failsafe 1: Target a random rural state limit = { any_owned_state = { OR = { has_state_category = town #Developed Rural Region has_state_category = rural #Rural Region } is_fully_controlled_by = ROOT free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } } random_owned_state = { limit = { OR = { has_state_category = town #Developed Rural Region has_state_category = rural #Rural Region } 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 } } } else_if = { #Failsafe 2: Target a random state limit = { any_owned_state = { is_fully_controlled_by = ROOT free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } } random_owned_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 } } } SOV_paranoia_medium_decrease_effect = yes } } focus = { id = SOV_the_anti_soviet_trotskyist_center icon = GFX_focus_SOV_purge_trotskyists prerequisite = { focus = SOV_the_zinovyevite_terrorist_center } x = 0 y = 2 relative_position_id = SOV_the_zinovyevite_terrorist_center cost = 5 available = { has_country_flag = { flag = SOV_first_moscow_trial_flag days > 175 } custom_trigger_tooltip = { tooltip = SOV_last_purge_focus_days_tt has_country_flag = { flag = SOV_first_moscow_trial_flag days > 175 } } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} select_effect = { set_country_flag = SOV_paranoia_do_not_cancel_focus_flag #This focus cannot be canceled } completion_reward = { clr_country_flag = SOV_paranoia_do_not_cancel_focus_flag set_country_flag = { flag = SOV_paranoia_random_purge_cooldown_from_focus_flag days = 15 } #Used to prevent random purges from popping up while this is active set_country_flag = SOV_second_moscow_trial_flag #Used to unlock the next purge focus add_political_power = 25 SOV_paranoia_high_increase_effect = yes #HISTORICAL #Radek if = { limit = { has_character = SOV_karl_radek } SOV_karl_radek = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #NOT-SO-HISTORICAL #Smilga if = { limit = { has_character = SOV_ivar_smilga } SOV_ivar_smilga = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Preobrazhensky if = { limit = { has_character = SOV_yevgeny_preobrazhensky } SOV_yevgeny_preobrazhensky = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Ryutin if = { limit = { has_character = SOV_martemyan_ryutin } SOV_martemyan_ryutin = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Ustryalov if = { limit = { has_dlc = "No Step Back" } if = { limit = { has_character = SOV_nikolay_ustryalov } SOV_nikolay_ustryalov = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } } custom_effect_tooltip = SOV_will_trigger_a_great_purge_tt hidden_effect = { set_country_flag = SOV_purge_event_unavoidable_flag #No way to avoid this purge. This people are about to be purged and there's nothing you can do for them. SOV_trigger_great_purge_moscow_trial_effect = yes #SECOND MOSCOW TRIAL -> Left Opposition } custom_effect_tooltip = SOV_trigger_second_moscow_trial_tt hidden_effect = { swap_ruler_traits = { remove = stalin_political_paranoia add = stalin_political_paranoia_advanced } add_to_variable = { SOV_paranoia_weekly_modifiers_amount = 1 } SOV_paranoia_modifier_update_gui_tooltip = yes } custom_effect_tooltip = SOV_increase_weekly_paranoia_in_trait_tt custom_effect_tooltip = newline_tt if = { limit = { NOT = { has_completed_focus = SOV_lessons_of_war } } custom_effect_tooltip = modify_the_red_army_tt add_to_variable = { SOV_the_red_army_mastery_loss_factor = -0.05 tooltip = land_mastery_gain_factor_tt } #Need for tooltip set_variable = { SOV_the_red_army_mastery_loss_factor_inverted = SOV_the_red_army_mastery_loss_factor } multiply_variable = { SOV_the_red_army_mastery_loss_factor_inverted = -1 } } } } focus = { id = SOV_the_workers_dictatorship icon = GFX_SOV_the_workers_dictatorship_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_anti_soviet_trotskyist_center } x = 0 y = 1 relative_position_id = SOV_the_anti_soviet_trotskyist_center cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_to_variable = { SOV_the_politburo_political_power_factor = 0.05 } add_to_variable = { SOV_the_politburo_max_surrender_limit_offset = 0.05 } custom_effect_tooltip = SOV_the_workers_dictatorship_ns_tt add_political_power = 50 SOV_paranoia_low_decrease_effect = yes } } focus = { id = SOV_organization_centralization_discipline icon = GFX_focus_SOV_organization_centralization_discipline prerequisite = { focus = SOV_the_collectivization_process } prerequisite = { focus = SOV_the_workers_dictatorship } x = -2 y = 1 relative_position_id = SOV_the_workers_dictatorship cost = 5 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_to_variable = { SOV_the_politburo_max_command_power = 20 } add_to_variable = { SOV_the_politburo_mobilization_speed = 0.05 } custom_effect_tooltip = SOV_organization_centralization_discipline_ns_tt add_political_power = 50 SOV_paranoia_medium_decrease_effect = yes } } focus = { id = SOV_war_economy icon = GFX_SOV_war_economy_ccp_2d_sov_compatibility prerequisite = { focus = SOV_organization_centralization_discipline } x = 0 y = 1 relative_position_id = SOV_organization_centralization_discipline cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { custom_effect_tooltip = SOV_war_economy_stability_tt if = { limit = { has_war = no } add_stability = -0.1 } else = { custom_effect_tooltip = SOV_war_economy_stability_war_tt } if = { limit = { NOT = { has_idea = war_economy } NOT = { has_idea = tot_economic_mobilisation } } add_ideas = war_economy } custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { 217 = { is_controlled_by = ROOT free_building_slots = { building = arms_factory size > 1 include_locked = yes } } } 217 = { add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } } else = { random_controlled_state = { limit = { arms_factory > 1 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 = SOV_the_military_conspiracy icon = GFX_focus_SOV_military_purge prerequisite = { focus = SOV_the_workers_dictatorship } x = 0 y = 2 relative_position_id = SOV_the_anti_soviet_trotskyist_center cost = 5 available = { has_country_flag = { flag = SOV_second_moscow_trial_flag days > 175 } custom_trigger_tooltip = { tooltip = SOV_last_purge_focus_days_military_tt has_country_flag = { flag = SOV_second_moscow_trial_flag days > 175 } } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} select_effect = { set_country_flag = SOV_paranoia_do_not_cancel_focus_flag #This focus cannot be canceled } completion_reward = { clr_country_flag = SOV_paranoia_do_not_cancel_focus_flag set_country_flag = { flag = SOV_paranoia_random_purge_cooldown_from_focus_flag days = 15 } #Used to prevent random purges from popping up while this is active set_country_flag = SOV_trial_of_the_generals_flag #Used to unlock the next purge focus add_political_power = 25 SOV_paranoia_high_increase_effect = yes #Historical if = { limit = { has_character = SOV_mikhail_tukhachevsky } SOV_mikhail_tukhachevsky = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #NOT-SO-HISTORICAL #Yegorov if = { limit = { has_character = SOV_aleksandr_yegorov } SOV_aleksandr_yegorov = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Blyukher if = { limit = { has_character = SOV_vasily_blyukher } SOV_vasily_blyukher = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Primakov if = { limit = { has_character = SOV_vitaly_primakov } SOV_vitaly_primakov = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } custom_effect_tooltip = SOV_will_trigger_a_great_purge_tt hidden_effect = { set_country_flag = SOV_purge_event_unavoidable_flag #No way to avoid this purge. This people are about to be purged and there's nothing you can do for them. SOV_great_purge_army_trial_of_the_generals_effect = yes #TRIAL OF THE GENERALS -> Tukhachevsky } set_country_flag = SOV_stalinist_military_flag #New Generals have more chances of being Stalinists after this custom_effect_tooltip = newline_tt if = { limit = { NOT = { has_completed_focus = SOV_lessons_of_war } } custom_effect_tooltip = modify_the_red_army_tt add_to_variable = { SOV_the_red_army_mastery_loss_factor = -0.05 tooltip = land_mastery_gain_factor_tt } #Need for tooltip set_variable = { SOV_the_red_army_mastery_loss_factor_inverted = SOV_the_red_army_mastery_loss_factor } multiply_variable = { SOV_the_red_army_mastery_loss_factor_inverted = -1 } } } } focus = { id = SOV_the_bloc_of_rights_and_trotskyites icon = GFX_focus_SOV_purge_bukharinists prerequisite = { focus = SOV_the_military_conspiracy } x = 0 y = 1 relative_position_id = SOV_the_military_conspiracy cost = 10 available = { has_country_flag = { flag = SOV_trial_of_the_generals_flag days > 175 } custom_trigger_tooltip = { tooltip = SOV_last_purge_focus_days_rights_tt has_country_flag = { flag = SOV_trial_of_the_generals_flag days > 175 } } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} select_effect = { set_country_flag = SOV_paranoia_do_not_cancel_focus_flag #This focus cannot be canceled } completion_reward = { clr_country_flag = SOV_paranoia_do_not_cancel_focus_flag set_country_flag = { flag = SOV_paranoia_random_purge_cooldown_from_focus_flag days = 15 } #Used to prevent random purges from popping up while this is active set_country_flag = SOV_third_moscow_trial_flag #Used to unlock the next purge focus add_political_power = 25 #HISTORICAL #Bukharin if = { limit = { has_character = SOV_nikolay_bukharin } SOV_nikolay_bukharin = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Rykov if = { limit = { has_character = SOV_aleksey_rykov } SOV_aleksey_rykov = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #NOT-SO-HISTORICAL #Tomsky if = { limit = { has_character = SOV_mikhail_tomsky } SOV_mikhail_tomsky = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } #Litvinov if = { limit = { has_character = SOV_maksim_litvinov } SOV_maksim_litvinov = { set_character_flag = SOV_targeted_for_purge_flag } } else = { SOV_add_random_character_to_purge_targets_effect = yes } custom_effect_tooltip = SOV_will_trigger_a_great_purge_tt hidden_effect = { set_country_flag = SOV_purge_event_unavoidable_flag #No way to avoid this purge. This people are about to be purged and there's nothing you can do for them. SOV_trigger_great_purge_moscow_trial_effect = yes #THIRD MOSCOW TRIAL -> Right Opposition } custom_effect_tooltip = SOV_trigger_third_moscow_trial_tt SOV_remove_paranoia_effect = yes #REMOVE PARANOIA SYSTEM custom_effect_tooltip = newline_tt if = { limit = { NOT = { has_completed_focus = SOV_lessons_of_war } } custom_effect_tooltip = modify_the_red_army_tt add_to_variable = { SOV_the_red_army_mastery_loss_factor = -0.05 tooltip = land_mastery_gain_factor_tt } #Need for tooltip set_variable = { SOV_the_red_army_mastery_loss_factor_inverted = SOV_the_red_army_mastery_loss_factor } multiply_variable = { SOV_the_red_army_mastery_loss_factor_inverted = -1 } } } } focus = { id = SOV_behead_the_snake icon = GFX_focus_SOV_behead_the_snake prerequisite = { focus = SOV_the_military_conspiracy } x = 2 y = 1 relative_position_id = SOV_the_military_conspiracy cost = 5 available = { has_government = communism NOT = { has_global_flag = AAT_trotsky_sent_to_stalin } has_global_flag = AAT_trotsky_in_mexico } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { if = { limit = { has_dlc = "La Resistance" } custom_effect_tooltip = SOV_behead_the_snake_lar_tt create_operative_leader = { name = "Ramón Mercader" GFX = GFX_portrait_SOV_ramon_mercader traits = { operative_tough operative_infiltrator } bypass_recruitment = no available_to_spy_master = yes nationalities = { SOV SPR MEX } } #Extra operative slot set_variable = { SOV_the_politburo_operative_slot = 1 } custom_effect_tooltip = SOV_behead_the_snake_ns_tt } else = { custom_effect_tooltip = SOV_behead_the_snake_no_lar_tt } SOV_paranoia_high_decrease_effect = yes } } focus = { id = SOV_stalins_cult_of_personality icon = GFX_focus_SOV_stalins_cult_of_personality prerequisite = { focus = SOV_the_bloc_of_rights_and_trotskyites } x = 0 y = 1 relative_position_id = SOV_the_bloc_of_rights_and_trotskyites cost = 5 available = { has_country_flag = { flag = SOV_third_moscow_trial_flag days > 175 } custom_trigger_tooltip = { tooltip = SOV_last_purge_focus_days_cult_tt has_country_flag = { flag = SOV_third_moscow_trial_flag days > 175 } } has_completed_focus = SOV_expand_the_agitprop has_country_leader = { character = SOV_iosif_stalin ruling_only = yes } } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_PROPAGANDA} completion_reward = { add_political_power = 25 custom_effect_tooltip = unlock_propaganda_campaign_tt unlock_decision_tooltip = SOV_propaganda_stalin custom_effect_tooltip = propaganda_campaign_requirement_tt } } focus = { id = SOV_they_will_know_fear icon = GFX_SOV_they_will_know_fear_ccp_2d_sov_compatibility prerequisite = { focus = SOV_stalins_cult_of_personality } x = -3 y = 1 relative_position_id = SOV_stalins_cult_of_personality cost = 5 available = { has_defensive_war = yes if = { limit = { has_dlc = "No Step Back" } has_tech = advanced_heavy_tank_chassis } else = { has_tech = advanced_heavy_tank } } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { add_breakthrough_progress = { specialization = specialization_land value = 1 } add_tech_bonus = { name = SOV_they_will_know_fear bonus = 1 uses = 1 # was 2 category = armor } if = { limit = { has_dlc = "No Step Back" } # IS-2 tank template if = { limit = { OR = { has_tech = antiair2 has_tech = antitank2 } } create_equipment_variant = { name = "IS-2" type = heavy_tank_chassis_3 parent_version = 0 modules = { main_armament_slot = tank_heavy_cannon_2 turret_type_slot = tank_heavy_three_man_tank_turret suspension_type_slot = tank_torsion_bar_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = tank_radio_1 special_type_slot_2 = sloped_armor special_type_slot_3 = smoke_launchers } upgrades = { tank_nsb_engine_upgrade = 8 tank_nsb_armor_upgrade = 6 } icon = "GFX_SOV_advanced_heavy_tank_medium" } } else_if = { limit = { OR = { has_tech = interwar_antiair has_tech = interwar_antitank } } create_equipment_variant = { name = "IS-2" type = heavy_tank_chassis_3 parent_version = 0 modules = { main_armament_slot = tank_heavy_cannon turret_type_slot = tank_heavy_three_man_tank_turret suspension_type_slot = tank_torsion_bar_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = tank_radio_1 special_type_slot_2 = sloped_armor special_type_slot_3 = smoke_launchers } upgrades = { tank_nsb_engine_upgrade = 8 tank_nsb_armor_upgrade = 6 } icon = "GFX_SOV_advanced_heavy_tank_medium" } } } } } focus = { id = SOV_inheritor_of_the_mantle_of_lenin icon = GFX_SOV_inheritor_of_the_mantle_of_lenin_ccp_2d_sov_compatibility prerequisite = { focus = SOV_stalins_cult_of_personality } x = -1 y = 1 relative_position_id = SOV_stalins_cult_of_personality cost = 5 mutually_exclusive = { focus = SOV_the_faithful_servant_of_lenin } available = { custom_trigger_tooltip = { tooltip = SOV_propaganda_campaigns_taken_5_or_greater_tt check_variable = { SOV_propaganda_campaigns_taken = 5 compare = greater_than_or_equals } } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_WAR_SUPPORT} completion_reward = { add_war_support = 0.05 add_country_leader_trait = stalin_inheritor_of_lenin } } focus = { id = SOV_brilliant_genius icon = GFX_focus_generic_socialist_science prerequisite = { focus = SOV_inheritor_of_the_mantle_of_lenin } x = -1 y = 1 relative_position_id = SOV_inheritor_of_the_mantle_of_lenin cost = 10 available = { custom_trigger_tooltip = { tooltip = SOV_propaganda_campaigns_taken_10_or_greater_tt check_variable = { SOV_propaganda_campaigns_taken = 10 compare = greater_than_or_equals } } } search_filters = {FOCUS_FILTER_RESEARCH} completion_reward = { #Academies of Sciences decisions are 50% cheaper divide_variable = { SOV_national_academy_of_sciences_construction_cost = 2 } custom_effect_tooltip = SOV_brilliant_genius_academies_of_sciences_tt if = { limit = { has_completed_focus = SOV_leader_of_the_party_and_the_people } swap_ruler_traits = { remove = stalin_inheritor_of_lenin_leader add = stalin_inheritor_of_lenin_final } } else = { swap_ruler_traits = { remove = stalin_inheritor_of_lenin add = stalin_inheritor_of_lenin_genius } } } } focus = { id = SOV_the_faithful_servant_of_lenin icon = GFX_SOV_the_faithful_servant_of_lenin_ccp_2d_sov_compatibility prerequisite = { focus = SOV_stalins_cult_of_personality } x = 1 y = 1 relative_position_id = SOV_stalins_cult_of_personality cost = 5 mutually_exclusive = { focus = SOV_inheritor_of_the_mantle_of_lenin } available = { custom_trigger_tooltip = { tooltip = SOV_propaganda_campaigns_taken_5_or_greater_tt check_variable = { SOV_propaganda_campaigns_taken = 5 compare = greater_than_or_equals } } } search_filters = {FOCUS_FILTER_STABILITY} completion_reward = { add_stability = 0.1 add_country_leader_trait = stalin_servant_of_lenin } } focus = { id = SOV_ban_excessive_hero_worship icon = GFX_focus_renounce_the_treaty_of_trianon prerequisite = { focus = SOV_the_faithful_servant_of_lenin } x = 1 y = 1 relative_position_id = SOV_the_faithful_servant_of_lenin cost = 10 available = { custom_trigger_tooltip = { tooltip = SOV_propaganda_campaigns_taken_10_or_greater_tt check_variable = { SOV_propaganda_campaigns_taken = 10 compare = greater_than_or_equals } } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY} completion_reward = { custom_effect_tooltip = SOV_ban_excessive_hero_worship_dec_cost_tt SOV_foreign_politics_decision_cost_reduction_effect = yes if = { limit = { has_completed_focus = SOV_leader_of_the_party_and_the_people } swap_ruler_traits = { remove = stalin_servant_of_lenin_leader add = stalin_servant_of_lenin_final } } else = { swap_ruler_traits = { remove = stalin_servant_of_lenin add = stalin_servant_of_lenin_worship } } } } focus = { id = SOV_leader_of_the_party_and_the_people icon = GFX_SOV_leader_of_the_party_and_the_people_ccp_2d_sov_compatibility prerequisite = { focus = SOV_inheritor_of_the_mantle_of_lenin focus = SOV_the_faithful_servant_of_lenin } x = 1 y = 1 relative_position_id = SOV_inheritor_of_the_mantle_of_lenin cost = 5 available = { custom_trigger_tooltip = { tooltip = SOV_propaganda_campaigns_taken_10_or_greater_tt check_variable = { SOV_propaganda_campaigns_taken = 10 compare = greater_than_or_equals } } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY} completion_reward = { add_political_power = 50 #Swap Stalin's Trait if = { #INHERITOR BRANCH limit = { has_completed_focus = SOV_inheritor_of_the_mantle_of_lenin } if = { limit = { has_completed_focus = SOV_brilliant_genius } swap_ruler_traits = { remove = stalin_inheritor_of_lenin_genius add = stalin_inheritor_of_lenin_final } } else = { swap_ruler_traits = { remove = stalin_inheritor_of_lenin add = stalin_inheritor_of_lenin_leader } } } else_if = { #SERVANT BRANCH limit = { has_completed_focus = SOV_the_faithful_servant_of_lenin } if = { limit = { has_completed_focus = SOV_ban_excessive_hero_worship } swap_ruler_traits = { remove = stalin_servant_of_lenin_worship add = stalin_servant_of_lenin_final } } else = { swap_ruler_traits = { remove = stalin_servant_of_lenin add = stalin_servant_of_lenin_leader } } } else = { custom_effect_tooltip = SOV_leader_of_the_party_and_the_people_trait_tt } } } focus = { id = SOV_great_commander icon = GFX_SOV_great_commander_ccp_2d_sov_compatibility prerequisite = { focus = SOV_inheritor_of_the_mantle_of_lenin } prerequisite = { focus = SOV_leader_of_the_party_and_the_people } x = -1 y = 1 relative_position_id = SOV_leader_of_the_party_and_the_people cost = 5 mutually_exclusive = { focus = SOV_architect_of_communism } available = { custom_trigger_tooltip = { tooltip = SOV_propaganda_campaigns_taken_15_or_greater_tt check_variable = { SOV_propaganda_campaigns_taken = 15 compare = greater_than_or_equals } } } search_filters = {FOCUS_FILTER_WAR_SUPPORT} completion_reward = { add_country_leader_trait = stalin_great_commander add_field_marshal_role = { character = "SOV_iosif_stalin" traits={ old_guard politically_connected media_personality harsh_leader } skill=3 attack_skill=1 defense_skill=3 planning_skill=3 logistics_skill=3 legacy_id=0 } } } focus = { id = SOV_architect_of_communism icon = GFX_SOV_architect_of_communism_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_faithful_servant_of_lenin } prerequisite = { focus = SOV_leader_of_the_party_and_the_people } x = 1 y = 1 relative_position_id = SOV_leader_of_the_party_and_the_people cost = 5 mutually_exclusive = { focus = SOV_great_commander } available = { custom_trigger_tooltip = { tooltip = SOV_propaganda_campaigns_taken_15_or_greater_tt check_variable = { SOV_propaganda_campaigns_taken = 15 compare = greater_than_or_equals } } } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_country_leader_trait = stalin_architect_of_communism } } focus = { id = SOV_father_of_nations icon = GFX_SOV_father_of_nations_ccp_2d_sov_compatibility prerequisite = { focus = SOV_great_commander focus = SOV_architect_of_communism } x = 1 y = 1 relative_position_id = SOV_great_commander cost = 10 available = { custom_trigger_tooltip = { tooltip = SOV_propaganda_campaigns_taken_20_or_greater_tt check_variable = { SOV_propaganda_campaigns_taken = 20 compare = greater_than_or_equals } } } search_filters = {FOCUS_FILTER_MANPOWER FOCUS_FILTER_STABILITY} completion_reward = { swap_ruler_traits = { remove = stalin_heart_of_steel add = stalin_father_of_nations } hidden_effect = { play_song = "comintern_war_1" } } } focus = { id = SOV_freedom_of_debate_unity_of_action icon = GFX_focus_generic_soviet_politics prerequisite = { focus = SOV_stalins_cult_of_personality } x = 3 y = 1 relative_position_id = SOV_stalins_cult_of_personality cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_STABILITY} completion_reward = { add_to_variable = { SOV_the_politburo_political_power_factor = 0.05 } add_to_variable = { SOV_the_politburo_political_advisor_cost_factor = -0.15 } custom_effect_tooltip = SOV_freedom_of_debate_unity_of_action_ns_tt add_political_power = 50 add_stability = 0.05 add_war_support = 0.05 } } focus = { id = SOV_the_construction_of_communism icon = GFX_focus_ger_great_red_menace prerequisite = { focus = SOV_freedom_of_debate_unity_of_action } x = 0 y = 2 relative_position_id = SOV_freedom_of_debate_unity_of_action cost = 10 available = { num_subjects > 0 } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { add_to_variable = { SOV_the_politburo_opinion_gain_monthly_same_ideology_factor = 0.25 } custom_effect_tooltip = SOV_the_construction_of_communism_ns_tt if = { limit = { num_subjects > 0 } every_subject_country = { add_autonomy_score = { value = -100 localization = SOV_the_construction_of_communism } } } else = { custom_effect_tooltip = SOV_the_construction_of_communism_puppet_autonomy_tt } custom_effect_tooltip = SOV_the_construction_of_communism_railways_tt #Build railway from Moscow to Puppets hidden_effect = { #Hiidden for tooltip reasons every_subject_country = { limit = { capital_scope = { OR = { is_on_continent = europe is_on_continent = asia is_on_continent = middle_east } } } if = { limit = { can_build_railway = { start_state = ROOT.capital target_state = THIS.capital build_only_on_allied = yes } } build_railway = { start_state = ROOT.capital target_state = THIS.capital build_only_on_allied = yes } } } } } } ################################################################################################################ # ### ### ### ## ### ### ## ## ### ### ### ## # # ### # # ## # # # ## ### # # ### # # # # # # # # # # # # # # # # # # ## # # # # # # # # # # # # # # # ## ## # # # ### ### # # # # # # # # # ## ## # # # # # # # # # ## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ### ### # # ## # # ## ## ### # ### ## # # ### # # ## ### ## ## ### # ### ################################################################################################################ focus = { id = SOV_the_left_opposition icon = GFX_focus_fra_loyalty_trotzky prerequisite = { focus = SOV_the_path_of_marxism_leninism } mutually_exclusive = { focus = SOV_the_right_opposition focus = SOV_the_centre } x = 2 y = 1 offset = { x = -7 y = 0 trigger = { OR = { has_completed_focus = SOV_left_opposition_coup has_completed_focus = SOV_coup_detat } has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } } relative_position_id = SOV_the_path_of_marxism_leninism cost = 5 available = { SOV_soviet_civil_war_not_started = yes custom_trigger_tooltip = { tooltip = SOV_no_major_purge_tt check_variable = { SOV_great_purge_counter < 1 } } } allow_branch = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = SOV_the_centre } NOT = { has_completed_focus = SOV_beaten_but_not_defeated } } } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_political_power = 75 # SOV_paranoia_high_increase_effect = yes custom_effect_tooltip = SOV_the_left_opposition_tt set_variable = { SOV_left_opposition_army_support = 0.25 } set_variable = { SOV_left_opposition_navy_support = 0.05 } set_variable = { SOV_left_opposition_air_support = 0.15 } hidden_effect = { # Factionalism start modifier add_dynamic_modifier = { modifier = SOV_factionalism_modifier } country_event = { id = NSB_soviet_paranoia_system_events.01 hours = 6 random_hours = 24 } random_owned_state = { limit = { NOT = { state = 214 } NOT = { state = 192 } NOT = { state = 651 } NOT = { state = 137 } NOT = { state = 405 } NOT = { state = 571 } } set_state_flag = SOV_stalinist_state } # Launch the first Stalinist counter measures SOV_launch_stalinist_counter_measure = yes SOV_get_centre_military_support = yes } } } focus = { id = SOV_the_fourth_international icon = GFX_SOV_the_fourth_international_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_left_opposition } x = -4 y = 1 relative_position_id = SOV_the_left_opposition cost = 10 bypass = { has_global_flag = SOV_soviet_civil_war } available = { custom_trigger_tooltip = { tooltip = SOV_major_purge_tt check_variable = { SOV_great_purge_counter > 0 } } SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_political_power = 120 SOV_paranoia_low_increase_effect = yes news_event = { id = nsb_news.200 hours = 2 random_hours = 2 } } } focus = { id = SOV_bring_old_trotskyists_back icon = GFX_SOV_bring_old_trotskyists_back_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_left_opposition } x = -2 y = 1 relative_position_id = SOV_the_left_opposition cost = 5 bypass = { custom_trigger_tooltip = { tooltip = SOV_bring_old_trotskyists_back_trigger_tt NOT = { has_character = SOV_karl_radek } NOT = { has_character = SOV_yevgeny_preobrazhensky } } } available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { custom_effect_tooltip = SOV_bring_old_trotskyists_back_effect_tt #Radek and Preobrazhensky already set as algined to left oppo SOV_paranoia_low_increase_effect = yes } } focus = { id = SOV_organize_the_wreckers icon = GFX_focus_SOV_organize_wreckers prerequisite = { focus = SOV_the_left_opposition } x = 1 y = 1 relative_position_id = SOV_the_left_opposition cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { set_country_flag = SOV_organize_wreckers_flag add_political_power = 50 custom_effect_tooltip = SOV_organize_the_wreckers_tt } } focus = { id = SOV_integrate_smirnovs_bloc icon = GFX_focus_YUG_pan_slavic_congress prerequisite = { focus = SOV_the_left_opposition } x = 0 y = 2 relative_position_id = SOV_the_left_opposition cost = 10 available = { SOV_soviet_civil_war_not_started = yes SOV_has_selected_hq = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war SOV_ivan_smirnov = { has_character_flag = SOV_character_purged_flag } } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_medium_increase_effect = yes add_political_power = 50 custom_effect_tooltip = SOV_integrate_smirnovs_bloc_tt hidden_effect = { #Liberate and exile advisors SOV_ivan_smirnov = { #Already set as algined to left oppo clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_ivan_smirnov" } } } SOV_ivar_smilga = { #Already set as algined to left oppo clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_ivar_smilga" } } } SOV_aleksandr_shlyapnikov = { #Already set as algined to left oppo clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_aleksandr_shlyapnikov" } } } # Add support in armed forces add_to_variable = { SOV_left_opposition_army_support = 0.05 } add_to_variable = { SOV_left_opposition_navy_support = 0.05 } add_to_variable = { SOV_left_opposition_air_support = 0.05 } # Set a few states to join random_owned_state = { limit = { OR = { state = 399 state = 398 state = 400 state = 406 state = 402 state = 407 } #NOT = { has_state_flag = SOV_left_opposition_state } #NOT = { has_state_flag = SOV_right_opposition_state } #NOT = { has_state_flag = SOV_stalinist_state } } # set_state_flag = SOV_left_opposition_state set_state_flag = SOV_opposition_partisans_flag } random_owned_state = { limit = { OR = { state = 399 state = 398 state = 400 state = 406 state = 402 state = 407 } #NOT = { has_state_flag = SOV_left_opposition_state } #NOT = { has_state_flag = SOV_right_opposition_state } #NOT = { has_state_flag = SOV_stalinist_state } } #set_state_flag = SOV_left_opposition_state set_state_flag = SOV_opposition_partisans_flag } } } } focus = { id = SOV_left_eliminate_right icon = GFX_focus_SOV_purge_bukharinists prerequisite = { focus = SOV_the_left_opposition } mutually_exclusive = { focus = SOV_cooperation_against_stalin } x = 2 y = 2 relative_position_id = SOV_the_left_opposition cost = 5 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_high_increase_effect = yes # Target Right Opposition politician custom_effect_tooltip = SOV_left_eliminate_right_tt # custom_effect_tooltip = SOV_divert_purge_attention_tt # Modify factionalism custom_effect_tooltip = SOV_eliminate_opposition_factionalism_tt add_to_variable = { SOV_factionalism_political_power_factor = 0.05 } SOV_nikolay_bukharin = { set_character_flag = SOV_potential_target_flag } SOV_mikhail_tomsky = { set_character_flag = SOV_potential_target_flag } SOV_aleksey_rykov = { set_character_flag = SOV_potential_target_flag } } } focus = { id = SOV_committee_in_exile icon = GFX_SOV_committee_in_exile_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_fourth_international } prerequisite = { focus = SOV_bring_old_trotskyists_back } x = 1 y = 2 relative_position_id = SOV_the_fourth_international cost = 10 available = { } bypass = { OR = { has_global_flag = SOV_soviet_civil_war has_global_flag = SOV_soviet_civil_war_over } } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_increase_effect = yes custom_effect_tooltip = SOV_committee_in_exile_tt } } focus = { id = SOV_approach_tukhachevsky icon = GFX_focus_SOV_approach_tukahchevsky prerequisite = { focus = SOV_integrate_smirnovs_bloc } x = -1 y = 1 relative_position_id = SOV_integrate_smirnovs_bloc cost = 10 available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war NOT = { has_character = SOV_mikhail_tukhachevsky } } } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_increase_effect = yes custom_effect_tooltip = SOV_approach_tukhachevsky_tt hidden_effect = { SOV_mikhail_tukhachevsky = { add_unit_leader_trait = trait_SOV_trotskyist remove_unit_leader_trait = trait_SOV_stalinist set_character_flag = SOV_aligned_left_opposition_flag } random_unit_leader = { limit = { NOT = { has_trait = trait_SOV_trotskyist } NOT = { has_trait = trait_SOV_stalinist } NOT = { has_trait = trait_SOV_bukharinist } NOT = { has_trait = trait_SOV_monarchist_sympathizer } } add_unit_leader_trait = trait_SOV_trotskyist set_character_flag = SOV_aligned_left_opposition_flag } random_unit_leader = { limit = { NOT = { has_trait = trait_SOV_trotskyist } NOT = { has_trait = trait_SOV_stalinist } NOT = { has_trait = trait_SOV_bukharinist } NOT = { has_trait = trait_SOV_monarchist_sympathizer } } add_unit_leader_trait = trait_SOV_trotskyist set_character_flag = SOV_aligned_left_opposition_flag } random_unit_leader = { limit = { NOT = { has_trait = trait_SOV_trotskyist } NOT = { has_trait = trait_SOV_stalinist } NOT = { has_trait = trait_SOV_bukharinist } NOT = { has_trait = trait_SOV_monarchist_sympathizer } } add_unit_leader_trait = trait_SOV_trotskyist set_character_flag = SOV_aligned_left_opposition_flag } # Add support in armed forces add_to_variable = { SOV_left_opposition_army_support = 0.07 } add_to_variable = { SOV_left_opposition_navy_support = 0.05 } add_to_variable = { SOV_left_opposition_air_support = 0.05 } # add another state for Partisans random_owned_state = { limit = { OR = { state = 236 state = 406 state = 407 state = 249 state = 250 state = 401 state = 194 state = 201 state = 204 state = 206 } NOT = { has_state_flag = SOV_left_opposition_state } NOT = { has_state_flag = SOV_right_opposition_state } NOT = { has_state_flag = SOV_stalinist_state } NOT = { has_state_flag = SOV_opposition_partisans_flag } } set_state_flag = SOV_opposition_partisans_flag } SOV_get_centre_military_support = yes } } } focus = { id = SOV_approach_primakov icon = GFX_focus_SOV_approach_primakov prerequisite = { focus = SOV_integrate_smirnovs_bloc } x = 1 y = 1 relative_position_id = SOV_integrate_smirnovs_bloc cost = 10 available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war NOT = { has_character = SOV_vitaly_primakov } } } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_increase_effect = yes custom_effect_tooltip = SOV_approach_primakov_tt hidden_effect = { SOV_vitaly_primakov = { add_unit_leader_trait = trait_SOV_trotskyist remove_unit_leader_trait = trait_SOV_stalinist set_character_flag = SOV_aligned_left_opposition_flag } random_unit_leader = { limit = { NOT = { has_trait = trait_SOV_trotskyist } NOT = { has_trait = trait_SOV_stalinist } NOT = { has_trait = trait_SOV_bukharinist } NOT = { has_trait = trait_SOV_monarchist_sympathizer } } add_unit_leader_trait = trait_SOV_trotskyist set_character_flag = SOV_aligned_left_opposition_flag } random_unit_leader = { limit = { NOT = { has_trait = trait_SOV_trotskyist } NOT = { has_trait = trait_SOV_stalinist } NOT = { has_trait = trait_SOV_bukharinist } NOT = { has_trait = trait_SOV_monarchist_sympathizer } } add_unit_leader_trait = trait_SOV_trotskyist set_character_flag = SOV_aligned_left_opposition_flag } # Add support in armed forces add_to_variable = { SOV_left_opposition_army_support = 0.08 } add_to_variable = { SOV_left_opposition_navy_support = 0.05 } add_to_variable = { SOV_left_opposition_air_support = 0.1 } # add another state for partisans random_owned_state = { limit = { OR = { state = 234 state = 227 state = 235 state = 238 state = 237 } NOT = { has_state_flag = SOV_left_opposition_state } NOT = { has_state_flag = SOV_right_opposition_state } NOT = { has_state_flag = SOV_stalinist_state } NOT = { has_state_flag = SOV_opposition_partisans_flag } } set_state_flag = SOV_opposition_partisans_flag } SOV_get_centre_military_support = yes } } } focus = { id = SOV_funds_for_the_cause icon = GFX_SOV_funds_for_the_cause_ccp_2d_sov_compatibility prerequisite = { focus = SOV_approach_tukhachevsky focus = SOV_approach_primakov focus = SOV_committee_in_exile } x = -1 y = 1 relative_position_id = SOV_approach_tukhachevsky cost = 5 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_INDUSTRY} completion_reward = { custom_effect_tooltip = SOV_funds_for_the_cause_tt add_political_power = 50 every_other_country = { limit = { NOT = { is_in_faction_with = ROOT } OR = { is_major = yes tag = MEX } OR = { has_government = democratic has_government = communism } } country_event = { id = NSB_soviet_civil_war_common.118 days = 3 random_days = 5 } } } } focus = { id = SOV_left_opposition_coup icon = GFX_SOV_left_opposition_coup_ccp_2d_sov_compatibility prerequisite = { focus = SOV_approach_tukhachevsky focus = SOV_approach_primakov} x = 1 y = 2 relative_position_id = SOV_approach_tukhachevsky cost = 5 available = { SOV_soviet_civil_war_not_started = yes if = { limit = { is_ai = yes has_war = yes } date > 1940.1.1 #Some event spawned wars need to be given a chance to breathe for a bit, if they've happened by the time we get here. Beyond a certain date, we stop caring. } } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } ai_will_do = { factor = 1 modifier = { factor = 0 has_war = yes } } search_filters = {} completion_reward = { SOV_opposition_support_medium_increase_effect = yes custom_effect_tooltip = SOV_left_opposition_coup_tt add_to_variable = { SOV.SOV_left_opposition_army_support = 0.05 } add_to_variable = { SOV.SOV_left_opposition_navy_support = 0.05 } add_to_variable = { SOV.SOV_left_opposition_air_support = 0.05 } hidden_effect = { country_event = { id = NSB_soviet_communist_civil_war.001 hours = 1 } SOV_get_centre_military_support = yes } custom_effect_tooltip = SOV_exiled_advisors_available_tt IF = { limit = { has_idea = trotskyite_plot_nsb } effect_tooltip = { remove_ideas = trotskyite_plot_nsb } } if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } mark_focus_tree_layout_dirty = yes } } } focus = { id = SOV_the_vanguard_of_the_true_revolution icon = GFX_focus_spr_torchbearers_of_tomorrow prerequisite = { focus = SOV_left_opposition_coup } prerequisite = { focus = SOV_funds_for_the_cause } x = 0 y = 2 relative_position_id = SOV_funds_for_the_cause cost = 10 available = { has_global_flag = SOV_soviet_civil_war NOT = { has_global_flag = SOV_soviet_civil_war_over } } search_filters = {} completion_reward = { every_other_country = { limit = { NOT = { has_war_with = ROOT } communism > 0.05 } country_event = { id = NSB_soviet_communist_civil_war.004 days = 2 } } hidden_effect ={ country_event = { id = NSB_soviet_communist_civil_war.005 days = 18 # should be at least 13 days more than the other event } } } } focus = { id = SOV_long_live_the_workers_government icon = GFX_focus_generic_join_comintern prerequisite = { focus = SOV_left_opposition_coup } x = 1 y = 1 relative_position_id = SOV_left_opposition_coup cost = 10 available = { has_global_flag = SOV_soviet_civil_war_over } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY} completion_reward = { add_timed_idea = { idea = SOV_workers_government_idea days = 365 } add_stability = 0.1 add_political_power = 100 hidden_effect = { set_rule = { can_join_factions = yes } set_rule = { can_create_factions = yes } } create_faction_from_template = faction_template_fourth_international } } focus = { id = SOV_left_purges icon = GFX_focus_SOV_the_last_purge prerequisite = { focus = SOV_left_opposition_coup } mutually_exclusive = { focus = SOV_return_democracy_to_the_party } x = 3 y = 1 relative_position_id = SOV_left_opposition_coup cost = 10 available = { has_global_flag = SOV_soviet_civil_war_over } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { custom_effect_tooltip = SOV_left_purges_tt IF = { limit = { has_character = SOV_nikolay_bukharin } retire_character = SOV_nikolay_bukharin } IF = { limit = { has_character = SOV_aleksey_rykov } retire_character = SOV_aleksey_rykov } IF = { limit = { has_character = SOV_mikhail_tomsky } retire_character = SOV_mikhail_tomsky } IF = { limit = { has_character = SOV_grigory_zinovyev } retire_character = SOV_grigory_zinovyev } IF = { limit = { has_character = SOV_martemyan_ryutin } retire_character = SOV_martemyan_ryutin } IF = { limit = { has_character = SOV_mikhail_kalinin } retire_character = SOV_mikhail_kalinin } IF = { limit = { has_character = SOV_nikita_khrushchyov } retire_character = SOV_nikita_khrushchyov } IF = { limit = { has_character = SOV_vsevolod_merkulov } retire_character = SOV_vsevolod_merkulov } set_variable = { SOV_factionalism_political_power_factor = 0 } custom_effect_tooltip = SOV_left_right_purges_factionalism_tt } } focus = { id = SOV_the_builder_of_the_red_army icon = GFX_focus_SOV_builder_of_the_red_army prerequisite = { focus = SOV_long_live_the_workers_government } x = -1 y = 1 relative_position_id = SOV_long_live_the_workers_government mutually_exclusive = { focus = SOV_reigniting_the_revolutionary_spirit } cost = 10 available = { SOV_lev_trotsky = { is_country_leader = yes } } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_ARMY_XP} completion_reward = { random_owned_controlled_state = { limit = { 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 } } army_experience = 50 add_tech_bonus = { name = SOV_the_builder_of_the_red_army ahead_reduction = 1 uses = 2 category = artillery category = infantry_weapons } add_field_marshal_role = { character = SOV_lev_trotsky traits = { media_personality organisational_leader } skill = 4 attack_skill = 3 defense_skill = 1 planning_skill = 4 logistics_skill = 4 } } } focus = { id = SOV_reigniting_the_revolutionary_spirit icon = GFX_goal_generic_war_with_comintern prerequisite = { focus = SOV_long_live_the_workers_government } x = 1 y = 1 relative_position_id = SOV_long_live_the_workers_government mutually_exclusive = { focus = SOV_the_builder_of_the_red_army } cost = 10 available = { } search_filters = {FOCUS_FILTER_MANPOWER} completion_reward = { add_timed_idea = { idea = SOV_revolutionary_spirit_idea days = 365 } } } focus = { id = SOV_the_permanent_revolution icon = GFX_SOV_the_permanent_revolution_ccp_2d_sov_compatibility prerequisite = { focus = SOV_left_opposition_coup } prerequisite = { focus = SOV_committee_in_exile } x = 0 y = 4 relative_position_id = SOV_committee_in_exile cost = 10 available = { has_global_flag = SOV_soviet_civil_war_over } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_the_permanent_revolution_decisions_tt division_template = { #Template for Permanent Revolution decisions name = "Trotskyist Revolutionary Militias" priority = 1 is_locked = yes division_names_group = SOV_INF_02 regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 0 y = 2 } } } IF = { limit = { SOV_lev_trotsky = { is_country_leader = yes } } swap_ruler_traits = { remove = permanent_revolutionary add = triumphant_revolutionary } } ELSE = { effect_tooltip = { custom_effect_tooltip = SOV_the_permanent_revolution_trotsky_trait_tt add_trait = { character = SOV_lev_trotsky slot = country_leader trait = triumphant_revolutionary } } } } } focus = { id = SOV_depoliticize_the_military icon = GFX_SOV_depoliticize_the_military_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_builder_of_the_red_army focus = SOV_reigniting_the_revolutionary_spirit } x = -1 y = 1 relative_position_id = SOV_the_builder_of_the_red_army cost = 10 available = { } search_filters = {FOCUS_FILTER_ARMY_XP} completion_reward = { add_to_variable = { SOV_the_red_army_max_command_power_mult = 0.1 } custom_effect_tooltip = SOV_depoliticize_the_military_ns_tt army_experience = 150 if = { limit = { has_idea = SOV_politicized_military } remove_ideas = SOV_politicized_military } else_if = { limit = { has_idea = SOV_politicized_military_keep } remove_ideas = SOV_politicized_military_keep } else_if = { limit = { has_idea = SOV_politicized_military_swap } remove_ideas = SOV_politicized_military_swap } } } focus = { id = SOV_system_decentralization icon = GFX_goal_generic_forceful_treaty prerequisite = { focus = SOV_the_builder_of_the_red_army focus = SOV_reigniting_the_revolutionary_spirit } x = 1 y = 1 relative_position_id = SOV_the_builder_of_the_red_army cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_WAR_SUPPORT} completion_reward = { add_popularity = { ideology = communism popularity = 0.1 } add_ideas = SOV_system_decentralization_idea } } focus = { id = SOV_strengthen_heavy_industry icon = GFX_goal_generic_soviet_construction prerequisite = { focus = SOV_the_builder_of_the_red_army focus = SOV_reigniting_the_revolutionary_spirit } x = 1 y = 1 relative_position_id = SOV_reigniting_the_revolutionary_spirit cost = 10 available = { has_global_flag = SOV_soviet_civil_war_over } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { add_tech_bonus = { name = SOV_strengthen_heavy_industry ahead_reduction = 1 uses = 2 category = industry category = infantry_weapons } random_owned_controlled_state = { prioritize = { 252 254 } limit = { 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 } } random_owned_controlled_state = { prioritize = { 256 239 260 } limit = { 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 } } random_owned_controlled_state = { prioritize = { 195 214 213 408 137 } limit = { free_building_slots = { building = dockyard size > 1 include_locked = yes } is_coastal = yes } add_extra_state_shared_building_slots = 2 add_building_construction = { type = dockyard level = 2 instant_build = yes } } } } focus = { id = SOV_a_global_class_struggle icon = GFX_SOV_a_global_class_struggle_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_permanent_revolution } x = 0 y = 1 relative_position_id = SOV_the_permanent_revolution cost = 10 available = { surrender_progress < 0.15 } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_a_global_class_struggle_decision_tt } } focus = { id = SOV_all_power_to_the_soviets icon = GFX_goal_support_communism prerequisite = { focus = SOV_system_decentralization } x = 0 y = 1 relative_position_id = SOV_system_decentralization cost = 10 available = { } search_filters = {FOCUS_FILTER_STABILITY} completion_reward = { add_ideas = SOV_the_local_soviets_idea } } focus = { id = SOV_regional_development icon = GFX_focus_generic_soviet_politics prerequisite = { focus = SOV_all_power_to_the_soviets } x = 0 y = 1 relative_position_id = SOV_all_power_to_the_soviets mutually_exclusive = { focus = SOV_strengthen_the_trade_unions } offset = { x = -1 y = 0 trigger = { NOT = { has_dlc = "No Step Back"} } } cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_INDUSTRY} completion_reward = { add_political_power = 150 every_owned_state = { limit = { OR = { state = 202 # Kiev state = 229 # Azerbaijan state = 230 # Armenia state = 231 # Georgia state = 405 # tashkent state = 408 # Vladivostok state = 584 # Askabad state = 586 # Alma Ata state = 654 # Oyrot state = 732 # Pamir state = 743 # Dushanbe state = 206 # minsk } free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 2 } } } focus = { id = SOV_autonomous_soviet_republics icon = GFX_SOV_autonomous_soviet_republics_ccp_2d_sov_compatibility prerequisite = { focus = SOV_regional_development } x = 0 y = 1 relative_position_id = SOV_regional_development cost = 10 available = { } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_autonomous_soviet_republics_tt # Georgia IF = { limit = { 231 = { is_owned_and_controlled_by = ROOT }} release_autonomy = { target = GEO autonomy_state = autonomy_puppet freedom_level = 0.5 } GEO = { add_ideas = { SOV_system_decentralization_idea SOV_the_local_soviets_idea } } } # Armenia IF = { limit = { 230 = { is_owned_and_controlled_by = ROOT }} release_autonomy = { target = ARM autonomy_state = autonomy_puppet freedom_level = 0.5 } ARM = { add_ideas = { SOV_system_decentralization_idea SOV_the_local_soviets_idea } } } # Axerbaijan IF = { limit = { 229 = { is_owned_and_controlled_by = ROOT }} release_autonomy = { target = AZR autonomy_state = autonomy_puppet freedom_level = 0.5 } AZR = { add_ideas = { SOV_system_decentralization_idea SOV_the_local_soviets_idea } } } # Belarus IF = { limit = { 206 = { is_owned_and_controlled_by = ROOT }} release_autonomy = { target = BLR autonomy_state = autonomy_puppet freedom_level = 0.5 } BLR = { add_ideas = { SOV_system_decentralization_idea SOV_the_local_soviets_idea } } } } } focus = { id = SOV_international_union_of_soviet_republics icon = GFX_focus_SOV_international_union_of_soviet_republics prerequisite = { focus = SOV_autonomous_soviet_republics } x = 0 y = 1 relative_position_id = SOV_autonomous_soviet_republics cost = 10 available = { } search_filters = {FOCUS_FILTER_STABILITY} completion_reward = { add_to_variable = { SOV_factionalism_overlord_trade_cost_factor = -0.10 } add_to_variable = { SOV_factionalism_popularity_stability_cost_factor = 0.10 } custom_effect_tooltip = SOV_international_union_of_soviet_republics_tt every_country = { limit = { is_subject_of = ROOT } add_ideas = { SOV_puppet_international_of_soviet_republics_idea } custom_effect_tooltip = SOV_international_union_of_soviet_republics_puppet_tt hidden_effect = { random_owned_controlled_state = { limit = { is_capital = yes } add_building_construction = { type = industrial_complex level = 1 instant_build = yes } add_building_construction = { type = arms_factory level = 1 instant_build = yes } } } } } } focus = { id = SOV_the_onslaught_on_colonialism icon = GFX_SOV_the_onslaught_on_colonialism_ccp_2d_sov_compatibility prerequisite = { focus = SOV_a_global_class_struggle } x = -1 y = 1 relative_position_id = SOV_a_global_class_struggle cost = 10 available = { surrender_progress < 0.05 } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_the_onslaught_on_colonialism_decision_tt } } focus = { id = SOV_carry_revolution_east icon = GFX_SOV_carry_revolution_east_ccp_2d_sov_compatibility prerequisite = { focus = SOV_a_global_class_struggle } x = 1 y = 1 relative_position_id = SOV_a_global_class_struggle cost = 10 available = { surrender_progress < 0.05 } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_carry_revolution_east_decision_tt } } focus = { id = SOV_the_end_of_the_imperialist_era icon = GFX_SOV_the_end_of_the_imperialist_era_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_onslaught_on_colonialism focus = SOV_carry_revolution_east } x = 1 y = 1 relative_position_id = SOV_the_onslaught_on_colonialism cost = 10 available = { surrender_progress < 0.05 } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_the_end_of_the_imperialist_era_decision_tt } } ######################################################################################################## ### ### ## # # ### ## ### ### ## ## ### ### ### ## # # # # # # ### ## # # ### # # # # # # # # # # # # # # # # # # # # # ## # # # ## # # # # # # # ### # # ## #### # # # ### ### # # # # # # # # # ## # # # ## # # # # # ## # # # # # # # # # # # # # # # # # # # # # # # # # # # ## # # # # # ### ## # # # ## # # ## ## ### # ### ## # # ## # # ### # ## ### ######################################################################################################## focus = { id = SOV_the_right_opposition icon = GFX_focus_SOV_bukharinists prerequisite = { focus = SOV_the_path_of_marxism_leninism } allow_branch = { has_dlc = "No Step Back" if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = SOV_the_centre } NOT = { has_completed_focus = SOV_beaten_but_not_defeated } } } mutually_exclusive = { focus = SOV_the_left_opposition focus = SOV_the_centre} x = 15 y = 0 relative_position_id = SOV_the_left_opposition cost = 5 available = { SOV_soviet_civil_war_not_started = yes custom_trigger_tooltip = { tooltip = SOV_no_major_purge_tt check_variable = { SOV_great_purge_counter < 1 } } } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_political_power = 75 # SOV_paranoia_medium_increase_effect = yes custom_effect_tooltip = SOV_the_right_opposition_tt set_variable = { SOV_right_opposition_army_support = 0.1 } set_variable = { SOV_right_opposition_navy_support = 0.05 } set_variable = { SOV_right_opposition_air_support = 0.1 } hidden_effect = { # Factionalism start modifier add_dynamic_modifier = { modifier = SOV_factionalism_modifier } country_event = { id = NSB_soviet_paranoia_system_events.01 hours = 6 random_hours = 24 } random_owned_state = { limit = { NOT = { state = 214 } NOT = { state = 192 } NOT = { state = 651 } NOT = { state = 137 } NOT = { state = 405 } NOT = { state = 571 } } set_state_flag = SOV_stalinist_state } # Launch the first Stalinist counter measures SOV_launch_stalinist_counter_measure = yes SOV_get_centre_military_support = yes } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = available_political_advisor show_ideas_tooltip = SOV_nikolay_bukharin show_ideas_tooltip = SOV_aleksey_rykov show_ideas_tooltip = SOV_mikhail_tomsky } } focus = { id = SOV_the_need_for_policy_changes icon = GFX_focus_hol_abandon_the_gold_standard prerequisite = { focus = SOV_the_right_opposition } x = 0 y = 1 relative_position_id = SOV_the_right_opposition cost = 5 available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_increase_effect = yes add_political_power = 75 custom_effect_tooltip = SOV_the_need_for_policy_changes_tt } } focus = { id = SOV_reverse_the_collectivization_process icon = GFX_SOV_reverse_the_collectivization_process_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_right_opposition } x = 2 y = 1 relative_position_id = SOV_the_right_opposition cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA FOCUS_FILTER_STABILITY} completion_reward = { SOV_paranoia_medium_increase_effect = yes add_popularity = { ideology = democratic popularity = 0.10 } custom_effect_tooltip = SOV_reverse_the_collectivization_process_tt add_to_variable = { SOV_factionalism_building_slots_factor = -0.1 } add_to_variable = { SOV_factionalism_popularity_stability_cost_factor = 0.1 } } } focus = { id = SOV_organize_uprisings_in_the_country icon = GFX_SOV_organize_uprisings_in_the_country_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_need_for_policy_changes } x = -2 y = 1 relative_position_id = SOV_the_need_for_policy_changes cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_increase_effect = yes add_stability = -0.05 hidden_effect = { country_event = { id = NSB_soviet_communist_civil_war.007 days = 5 random_days = 3 } } custom_effect_tooltip = SOV_organize_uprisings_in_the_country_tt } } focus = { id = SOV_dissent_in_the_party icon = GFX_goal_generic_forceful_treaty prerequisite = { focus = SOV_the_need_for_policy_changes } x = 0 y = 1 relative_position_id = SOV_the_need_for_policy_changes cost = 10 available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_medium_increase_effect = yes add_political_power = 100 SOV_opposition_support_high_increase_effect = yes } } focus = { id = SOV_eliminate_the_left icon = GFX_focus_SOV_purge_trotskyists prerequisite = { focus = SOV_the_need_for_policy_changes } mutually_exclusive = { focus = SOV_cooperation_against_stalin } x = -4 y = 1 relative_position_id = SOV_the_need_for_policy_changes cost = 5 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_high_increase_effect = yes custom_effect_tooltip = SOV_eliminate_the_left_tt # custom_effect_tooltip = SOV_divert_purge_attention_tt custom_effect_tooltip = SOV_eliminate_opposition_factionalism_tt add_to_variable = { SOV_factionalism_political_power_factor = 0.05 } SOV_karl_radek = { set_character_flag = SOV_potential_target_flag } SOV_ivar_smilga = { set_character_flag = SOV_potential_target_flag } SOV_yevgeny_preobrazhensky = { set_character_flag = SOV_potential_target_flag } } } focus = { id = SOV_concessions_to_foreign_powers icon = GFX_goal_generic_dangerous_deal prerequisite = { focus = SOV_reverse_the_collectivization_process } mutually_exclusive = { focus = SOV_covert_support_for_spanish_poum } x = -1 y = 2 offset = { x = 1 y = -1 trigger = { NOT = { has_dlc = "La Resistance" } } } relative_position_id = SOV_reverse_the_collectivization_process cost = 5 available = { NOT = { has_country_flag = SOV_soviet_civil_war_over } # you should be able to do this during the CW as well SOV_has_selected_hq = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_increase_effect = yes custom_effect_tooltip = SOV_concessions_to_foreign_powers_tt } } focus = { id = SOV_covert_support_for_spanish_poum icon = GFX_focus_SOV_support_spanish_poum prerequisite = { focus = SOV_reverse_the_collectivization_process } mutually_exclusive = { focus = SOV_concessions_to_foreign_powers } x = 1 y = 2 relative_position_id = SOV_reverse_the_collectivization_process cost = 5 available = { SOV_soviet_civil_war_not_started = yes NOT = { has_global_flag = scw_over } #Allowed Soviets to do this before SCW starts, so that they can make Spanish AI go POUM OR = { NOT = { has_global_flag = SPR_anarchist_uprising_flag } AND = { country_exists = SPC NOT = { has_war_with = SPC } SPC = { has_completed_focus = SPR_the_anti_fascist_workers_revolution } } } } allow_branch = { has_dlc = "La Resistance" has_dlc = "No Step Back" if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = SOV_the_centre } NOT = { has_completed_focus = SOV_beaten_but_not_defeated } } } bypass = { SPR = { #Tooltip purposes OR = { has_global_flag = scw_over AND = { has_global_flag = SPR_anarchist_uprising_flag OR = { NOT = { SPC = { has_completed_focus = SPR_the_anti_fascist_workers_revolution } } NOT = { country_exists = SPC } } } } } } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_increase_effect = yes set_global_flag = SOV_covert_support_for_poum_flag custom_effect_tooltip = SOV_covert_support_for_spanish_poum_tt unlock_decision_category_tooltip = SOV_soviet_aid_to_poum_decision_category custom_effect_tooltip = SOV_if_poum_wins_tt } } focus = { id = SOV_undermine_stalins_authority icon = GFX_focus_ger_bulwark_against_bolshevism prerequisite = { focus = SOV_organize_uprisings_in_the_country } x = -1 y = 1 relative_position_id = SOV_organize_uprisings_in_the_country cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_medium_increase_effect = yes SOV_iosif_stalin = { swap_country_leader_traits = { remove = stalin_political_paranoia add = stalin_authority_undermined } } add_to_variable = { SOV_paranoia_weekly_modifiers_amount = 1 } SOV_paranoia_modifier_update_gui_tooltip = yes custom_effect_tooltip = SOV_undermine_stalins_authority_paranoia_tt } } focus = { id = SOV_clandestine_cells icon = GFX_goal_generic_more_territorial_claims prerequisite = { focus = SOV_organize_uprisings_in_the_country } x = 1 y = 1 relative_position_id = SOV_organize_uprisings_in_the_country cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_political_power = 50 custom_effect_tooltip = SOV_clandestine_cells_tt set_country_flag = SOV_organize_wreckers_flag } } focus = { id = SOV_the_plan_for_the_coup icon = GFX_goal_generic_major_war prerequisite = { focus = SOV_undermine_stalins_authority } prerequisite = { focus = SOV_clandestine_cells } x = 1 y = 1 relative_position_id = SOV_undermine_stalins_authority cost = 10 available = { SOV_soviet_civil_war_not_started = yes NOT = { has_idea = SOV_lavrenty_beriya } } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_the_plan_for_the_coup_tt } } focus = { id = SOV_the_socialist_bulwark icon = GFX_goal_generic_war_with_comintern prerequisite = { focus = SOV_covert_support_for_spanish_poum } x = 0 y = 2 relative_position_id = SOV_covert_support_for_spanish_poum cost = 5 available = { has_global_flag = SOV_soviet_civil_war_over custom_trigger_tooltip = { tooltip = SOV_poum_exists_tt SPC = { exists = yes has_completed_focus = SPR_the_anti_fascist_workers_revolution } } } search_filters = {} completion_reward = { add_political_power = 75 add_stability = 0.1 add_war_support = 0.1 IF = { limit = { NOT = { has_rule = can_join_factions } } set_rule = { can_join_factions = yes } } #Join SCW if still ongoing if = { limit = { SPR_scw_in_progress = yes } if = { limit = { country_exists = SPA } add_to_war = { targeted_alliance = SPC enemy = SPA hostility_reason = asked_to_join } } if = { limit = { country_exists = SPC } add_to_war = { targeted_alliance = SPC enemy = SPD hostility_reason = asked_to_join } } if = { limit = { country_exists = SPB } add_to_war = { targeted_alliance = SPC enemy = SPB hostility_reason = asked_to_join } } effect_tooltip = { give_military_access = SPC SPC = { give_military_access = ROOT } } hidden_effect = { diplomatic_relation = { country = SPC relation = military_access active = yes } SPC = { diplomatic_relation = { country = SOV relation = military_access active = yes } } } } else_if = { limit = { NOT = { has_global_flag = scw_over } } custom_effect_tooltip = SOV_the_socialist_bulwark_join_war_tt } #Invite to faction if SCW is over if = { limit = { is_in_faction = yes NOT = { is_in_faction_with = SPC } has_global_flag = scw_over } SPC = { country_event = { id = generic.5 hours = 8 random_hours = 4 } } } } } focus = { id = SOV_coup_detat icon = GFX_SOV_coup_detat_ccp_2d_sov_compatibility prerequisite = { focus = SOV_dissent_in_the_party } x = 0 y = 3 relative_position_id = SOV_dissent_in_the_party cost = 10 available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } search_filters = {} completion_reward = { # Stalin dead IF = { limit = { NOT = { has_character = SOV_iosif_stalin } } custom_effect_tooltip = SOV_coup_detat_success_tt hidden_effect = { set_global_flag = SOV_soviet_civil_war_over SOV_remove_paranoia_effect = yes if = { limit = { has_idea = SOV_anti_soviet_military_thinking_banned_army } remove_ideas = SOV_anti_soviet_military_thinking_banned_army } if = { limit = { has_idea = SOV_anti_soviet_military_thinking_banned_navy } remove_ideas = SOV_anti_soviet_military_thinking_banned_navy } if = { limit = { has_idea = SOV_anti_soviet_military_thinking_banned_airforce } remove_ideas = SOV_anti_soviet_military_thinking_banned_airforce } country_event = { id = NSB_soviet_communist_civil_war.002 hours = 1 } # Renaming of cities country_event = { id = NSB_soviet_civil_war_common.010 days = 14 random_days = 7 } # Bring Exiled Characters back hidden_effect = { every_character = { limit = { has_character_flag = SOV_exiled_flag has_character_flag = SOV_aligned_right_opposition_flag } clr_character_flag = SOV_exiled_flag } } } } # NOT Ready ELSE = { SOV_opposition_support_medium_increase_effect = yes custom_effect_tooltip = SOV_coup_detat_civil_war_tt add_to_variable = { SOV.SOV_right_opposition_army_support = 0.1 } add_to_variable = { SOV.SOV_right_opposition_navy_support = 0.1 } add_to_variable = { SOV.SOV_right_opposition_air_support = 0.1 } hidden_effect = { country_event = { id = NSB_soviet_communist_civil_war.003 hours = 1 } } SOV_get_centre_military_support = yes } custom_effect_tooltip = SOV_exiled_advisors_available_tt if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } mark_focus_tree_layout_dirty = yes } } } focus = { id = SOV_right_purges icon = GFX_focus_SOV_the_last_purge prerequisite = { focus = SOV_coup_detat } mutually_exclusive = { focus = SOV_return_democracy_to_the_party } x = -4 y = 1 relative_position_id = SOV_coup_detat cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { custom_effect_tooltip = SOV_right_purges_tt IF = { limit = { has_character = SOV_lev_trotsky } SOV_lev_trotsky = { retire = yes } } IF = { limit = { has_character = SOV_ivan_smirnov } SOV_ivan_smirnov = { retire = yes } } IF = { limit = { has_character = SOV_ivar_smilga } SOV_ivar_smilga = { retire = yes } } IF = { limit = { has_character = SOV_aleksandr_shlyapnikov } SOV_aleksandr_shlyapnikov = { retire = yes } } custom_effect_tooltip = SOV_left_right_purges_factionalism_tt set_variable = { SOV_factionalism_political_power_factor = 0 } IF = { limit = { has_idea = trotskyite_plot_nsb} custom_effect_tooltip = generic_skip_one_line_tt remove_ideas = trotskyite_plot_nsb } } } focus = { id = SOV_the_power_of_the_peasantry icon = GFX_focus_SOV_breadbasket_of_the_union prerequisite = { focus = SOV_coup_detat } x = -2 y = 1 relative_position_id = SOV_coup_detat cost = 10 available = { NOT = { has_global_flag = SOV_soviet_civil_war_over } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_MANPOWER} completion_reward = { add_popularity = { ideology = communism popularity = 0.05 } add_timed_idea = { idea = SOV_support_of_the_peasants_idea days = 365 } } } focus = { id = SOV_curtailment_of_the_collective_farms icon = GFX_focus_renounce_the_treaty_of_trianon prerequisite = { focus = SOV_coup_detat } x = 2 y = 1 relative_position_id = SOV_coup_detat cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_MANPOWER} completion_reward = { custom_effect_tooltip = SOV_curtailment_of_the_collective_farms_tt add_ideas = SOV_curtailment_collective_farms_idea } } focus = { id = SOV_administrative_reforms icon = GFX_focus_generic_soviet_politics prerequisite = { focus = SOV_curtailment_of_the_collective_farms } mutually_exclusive = { focus = SOV_a_new_theory_of_revolution } x = -4 y = 1 relative_position_id = SOV_curtailment_of_the_collective_farms cost = 10 available = { OR = { has_character = SOV_aleksey_rykov NOT = { SOV_nikolay_bukharin = { is_country_leader = yes } } } } search_filters = {FOCUS_FILTER_STABILITY FOCUS_FILTER_INDUSTRY} completion_reward = { add_stability = 0.05 add_ideas = SOV_administrative_reforms_idea } } focus = { id = SOV_a_new_theory_of_revolution icon = GFX_SOV_a_new_theory_of_revolution_ccp_2d_sov_compatibility prerequisite = { focus = SOV_curtailment_of_the_collective_farms } mutually_exclusive = { focus = SOV_administrative_reforms } x = -2 y = 1 relative_position_id = SOV_curtailment_of_the_collective_farms cost = 10 available = { SOV_nikolay_bukharin = { is_country_leader = yes } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_RESEARCH} completion_reward = { add_political_power = 75 IF = { limit = { has_character = SOV_nikolay_bukharin } if = { limit = { SOV_nikolay_bukharin = { is_country_leader = yes } } swap_ruler_traits = { remove = defender_of_the_peasantry add = hero_of_the_peasantry } } else = { effect_tooltip = { add_trait = { character = SOV_nikolay_bukharin slot = country_leader trait = hero_of_the_peasantry } } } } } } focus = { id = SOV_back_to_the_nep icon = GFX_focus_generic_treaty prerequisite = { focus = SOV_curtailment_of_the_collective_farms } x = 1 y = 1 relative_position_id = SOV_curtailment_of_the_collective_farms cost = 10 available = { has_war = no } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_STABILITY} completion_reward = { custom_effect_tooltip = SOV_back_to_the_nep_new_economy_law add_ideas = new_economic_policy add_stability = 0.05 add_popularity = { ideology = democratic popularity = -0.1 } } } focus = { id = SOV_planned_economy icon = GFX_SOV_planned_economy_ccp_2d_sov_compatibility prerequisite = { focus = SOV_back_to_the_nep } x = -2 y = 1 relative_position_id = SOV_back_to_the_nep cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { if = { limit = { num_subjects > 0 } every_subject_country = { country_event = { id = NSB_soviet_planned_economy.1 } effect_tooltip = { add_tech_bonus = { name = SOV_planned_economy bonus = 1.0 uses = 2 category = industry } add_ideas = new_economic_policy } } } else = { custom_effect_tooltip = SOV_planned_economy_subjects_tt effect_tooltip = { country_event = { id = NSB_soviet_planned_economy.1 } add_tech_bonus = { name = SOV_planned_economy bonus = 1.0 uses = 2 category = industry } add_ideas = new_economic_policy } } custom_effect_tooltip = SOV_planned_economy_dynamic_modifier_tt hidden_effect = { add_dynamic_modifier = { modifier = SOV_planned_economy_dynamic_modifier } } } } focus = { id = SOV_paced_industrialization icon = GFX_SOV_paced_industrialization_ccp_2d_sov_compatibility prerequisite = { focus = SOV_back_to_the_nep } x = 0 y = 1 relative_position_id = SOV_back_to_the_nep cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { random_owned_controlled_state = { prioritize = { 252 254 } limit = { 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 } } random_owned_controlled_state = { prioritize = { 256 239 260 } limit = { 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 = SOV_the_trade_union_as_labor_organizer icon = GFX_SOV_the_trade_union_as_labor_organizer_ccp_2d_sov_compatibility prerequisite = { focus = SOV_back_to_the_nep } x = 2 y = 1 relative_position_id = SOV_back_to_the_nep cost = 10 available = { has_idea = SOV_mikhail_tomsky } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { remove_trait = { character = SOV_mikhail_tomsky slot = political_advisor trait = right_trade_unionist } add_trait = { character = SOV_mikhail_tomsky slot = political_advisor trait = chair_of_the_unions } } } focus = { id = SOV_incorporate_local_organizations icon = GFX_goal_generic_major_alliance prerequisite = { focus = SOV_administrative_reforms focus = SOV_a_new_theory_of_revolution } x = 0 y = 2 relative_position_id = SOV_administrative_reforms cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_ideas = SOV_local_organizations_idea } } focus = { id = SOV_for_the_common_good icon = GFX_focus_eng_concessions_to_the_trade_unions prerequisite = { focus = SOV_incorporate_local_organizations } prerequisite = { focus = SOV_international_revolutionary_marxist_centre } x = 0 y = 1 relative_position_id = SOV_incorporate_local_organizations cost = 10 mutually_exclusive = { focus = SOV_strengthen_the_trade_unions } available = { is_faction_leader = yes } search_filters = {} completion_reward = { every_subject_country = { country_event = { id = NSB_soviet_for_the_common_good.1 hours = 4 } custom_effect_tooltip = if_they_accept effect_tooltip = { add_ideas = SOV_for_the_common_good_subjects add_autonomy_score = { value = -100 localization = SOV_for_the_common_good } } } every_other_country = { limit = { is_in_faction_with = ROOT is_subject = no } country_event = { id = NSB_soviet_for_the_common_good.1 hours = 4 } custom_effect_tooltip = if_they_accept effect_tooltip = { add_ideas = SOV_for_the_common_good_allies if = { limit = { has_dlc = "Death or Dishonor" } add_relation_modifier = { target = ROOT modifier = SOV_for_the_common_good_relation } } } } } } focus = { id = SOV_victory_over_devastation #SOV_get_rich_develop_the_country icon = GFX_focus_generic_support_the_left_right prerequisite = { focus = SOV_for_the_common_good } x = 0 y = 1 relative_position_id = SOV_for_the_common_good cost = 10 available = { } search_filters = {} completion_reward = { set_variable = { SOV_planned_economy_party_popularity_stability_factor = 0.15 } #Victory Over Devastation set_variable = { SOV_planned_economy_max_surrender_limit_offset = 0.1 } #Victory Over Devastation set_variable = { SOV_planned_economy_industry_repair_factor = 0.1 } #Victory Over Devastation set_variable = { SOV_planned_economy_consumer_goods_factor = -0.02 } #Victory Over Devastation custom_effect_tooltip = SOV_victory_over_devastation_tt #Industrial Relocation duration halved divide_variable = { SOV_industrial_relocation_days = 2 } custom_effect_tooltip = SOV_victory_over_devastation_industrial_relocation_tt } } focus = { id = SOV_socialist_humanism icon = GFX_SOV_socialist_humanism_ccp_2d_sov_compatibility #GFX_focus_generic_socialist_science prerequisite = { focus = SOV_victory_over_devastation } x = 0 y = 1 relative_position_id = SOV_victory_over_devastation cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_STABILITY} completion_reward = { add_stability = 0.1 add_war_support = -0.1 add_research_slot = 1 if = { limit = { has_idea = SOV_politicized_military } swap_ideas = { remove_idea = SOV_politicized_military add_idea = SOV_politicized_military_humanism } } else_if = { limit = { has_idea = SOV_politicized_military_keep } swap_ideas = { remove_idea = SOV_politicized_military_keep add_idea = SOV_politicized_military_keep_humanism } } else_if = { limit = { has_idea = SOV_politicized_military_swap } swap_ideas = { remove_idea = SOV_politicized_military_swap add_idea = SOV_politicized_military_swap_humanism } } } } focus = { id = SOV_international_revolutionary_marxist_centre icon = GFX_focus_spr_unify_the_london_bureau prerequisite = { focus = SOV_a_new_theory_of_revolution focus = SOV_administrative_reforms } prerequisite = { focus = SOV_planned_economy } x = 0 y = 2 relative_position_id = SOV_a_new_theory_of_revolution cost = 10 available = { surrender_progress < 0.1 OR = { is_faction_leader = yes is_in_faction = no } } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_political_power = 75 add_popularity = { ideology = communism popularity = 0.1 } IF = { limit = { NOT = { has_completed_focus = SOV_the_socialist_bulwark } } set_rule = { can_join_factions = yes } } if = { limit = { is_faction_leader = yes } set_faction_name = SOV_international_revolutionary_marxist_centre_faction_name } else_if = { limit = { is_in_faction = no } create_faction_from_template = { template = faction_template_comintern name = SOV_international_revolutionary_marxist_centre_faction_name } every_subject_country = { ROOT = { add_to_faction = PREV } } } every_other_country = { limit = { is_in_faction_with = ROOT NOT = { has_country_leader_ideology = stalinism } } set_country_leader_ideology = marxism custom_effect_tooltip = SOV_international_revolutionary_marxist_centre_marxism_tt } if = { limit = { any_other_country = { has_government = communism NOT = { has_country_leader_ideology = stalinism } is_in_faction = no NOT = { has_war_with = ROOT } } } custom_effect_tooltip = SOV_international_revolutionary_marxist_centre_allies_tt every_other_country = { limit = { has_government = communism NOT = { has_country_leader_ideology = stalinism } is_in_faction = no NOT = { has_war_with = ROOT } is_subject = no } add_opinion_modifier = { modifier = SOV_international_socialist_association target = ROOT } country_event = { id = generic.5 hours = 8 random_hours = 8 } } } else = { custom_effect_tooltip = SOV_international_revolutionary_marxist_centre_no_allies_tt effect_tooltip = { every_other_country = { limit = { has_government = communism NOT = { has_country_leader_ideology = stalinism } is_in_faction = no NOT = { has_war_with = ROOT } is_subject = no } add_opinion_modifier = { modifier = SOV_international_socialist_association target = ROOT } country_event = { id = generic.5 hours = 8 random_hours = 8 } } } } if = { #Stalinists hate us limit = { any_other_country = { has_country_leader_ideology = stalinism } } custom_effect_tooltip = SOV_international_revolutionary_marxist_centre_stalinists_tt every_other_country = { limit = { has_country_leader_ideology = stalinism } add_opinion_modifier = { modifier = SOV_international_socialist_association_bad target = ROOT } } } else = { custom_effect_tooltip = SOV_international_revolutionary_marxist_centre_stalinists_tt every_other_country = { limit = { has_country_leader_ideology = stalinism } add_opinion_modifier = { modifier = SOV_international_socialist_association_bad target = ROOT } } } } } focus = { id = SOV_a_sustainable_economy icon = GFX_focus_prc_agrarian_socialism prerequisite = { focus = SOV_paced_industrialization } x = 0 y = 1 relative_position_id = SOV_paced_industrialization cost = 10 available = { has_idea = new_economic_policy } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { swap_ideas = { remove_idea = new_economic_policy add_idea = new_economic_policy_2 } } } focus = { id = SOV_the_enemies_of_the_people icon = GFX_focus_spr_the_anti_fascist_workers_revolution prerequisite = { focus = SOV_international_revolutionary_marxist_centre } x = 0 y = 1 relative_position_id = SOV_international_revolutionary_marxist_centre cost = 10 available = { surrender_progress < 0.05 } search_filters = {} completion_reward = { every_other_country = { limit = { is_neighbor_of = ROOT OR = { has_government = fascism has_government = neutrality } } ROOT = { create_wargoal = { type = puppet_wargoal_focus target = PREV } } } every_country = { limit = { OR = { tag = ROOT is_in_faction_with = ROOT } } add_timed_idea = { idea = SOV_enemies_of_the_people_idea days = 365 } } } } focus = { id = SOV_proclaim_soviet_hegemony icon = GFX_focus_SOV_proclaim_soviet_hegemony prerequisite = { focus = SOV_the_enemies_of_the_people } x = 0 y = 1 relative_position_id = SOV_the_enemies_of_the_people cost = 10 available = { surrender_progress < 0.01 } search_filters = {FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_POLITICAL} completion_reward = { add_war_support = 0.1 add_timed_idea = { idea = SOV_soviet_hegemony_idea days = 730 } } } ################################################################################################################################ ### ### ## # # ### # ### ### ### ## ### ### ## ## ### ### ### ## # # ## ## # # # # ## # # # # # # # # # # # # # # # # # # # # # # # # # # # ## # # # # # ## ## ## ## # # ## # ### # # ## #### # # ## ## # # # ### ### # # # # # # # # # ## # # # # # # # # # # # # ## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ### ## # # # ### ### # # ## # # ## ## ### # ### ## # # ## ## # # # # ## # # ################################################################################################################################ focus = { id = SOV_military_support icon = GFX_goal_generic_army_doctrines prerequisite = { focus = SOV_the_left_opposition focus = SOV_the_right_opposition } x = 9 y = 1 relative_position_id = SOV_the_left_opposition mutually_exclusive = { focus = SOV_divert_attention_towards_military } cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_medium_increase_effect = yes custom_effect_tooltip = SOV_military_support_tt hidden_effect = { IF = { limit = { SOV_is_left_opposition = yes } add_to_variable = { SOV_left_opposition_army_support = 0.07} clamp_variable = { var = SOV.SOV_left_opposition_army_support max = 0.9 min = 0.1 } } ELSE_IF = { limit = { SOV_is_right_opposition = yes } add_to_variable = { SOV_right_opposition_army_support = 0.05 } clamp_variable = { var = SOV.SOV_right_opposition_army_support max = 0.9 min = 0.1 } } SOV_get_centre_military_support = yes IF = { #Align a valid Field Marshal, if possible limit = { any_army_leader = { is_field_marshal = yes NOT = { is_character = SOV_mikhail_tukhachevsky } #Has his own focus in the left oppo, probably wouldn't go with the right oppo straight away NOT = { has_trait = trait_SOV_stalinist } NOT = { has_trait = trait_SOV_bukharinist } NOT = { has_trait = trait_SOV_trotskyist } NOT = { has_trait = trait_SOV_monarchist_sympathizer } } } random_army_leader = { limit = { is_field_marshal = yes NOT = { is_character = SOV_mikhail_tukhachevsky } #Has his own focus in the left oppo, probably wouldn't go with the right oppo straight away NOT = { has_trait = trait_SOV_stalinist } NOT = { has_trait = trait_SOV_bukharinist } NOT = { has_trait = trait_SOV_trotskyist } NOT = { has_trait = trait_SOV_monarchist_sympathizer } } IF = { limit = { SOV_is_left_opposition = yes } add_unit_leader_trait = trait_SOV_trotskyist set_character_flag = SOV_aligned_left_opposition_flag } ELSE_IF = { limit = { SOV_is_right_opposition = yes } add_unit_leader_trait = trait_SOV_bukharinist set_character_flag = SOV_aligned_right_opposition_flag } } } ELSE = { random_army_leader = { limit = { NOT = { is_character = SOV_mikhail_tukhachevsky } #Has his own focus in the left oppo, probably wouldn't go with the right oppo straight away NOT = { is_character = SOV_vitaly_primakov } #Has his own focus in the left oppo, probably wouldn't go with the right oppo straight away NOT = { has_trait = trait_SOV_stalinist } NOT = { has_trait = trait_SOV_bukharinist } NOT = { has_trait = trait_SOV_trotskyist } NOT = { has_trait = trait_SOV_monarchist_sympathizer } } IF = { limit = { SOV_is_left_opposition = yes } add_unit_leader_trait = trait_SOV_trotskyist set_character_flag = SOV_aligned_left_opposition_flag } ELSE_IF = { limit = { SOV_is_right_opposition = yes } add_unit_leader_trait = trait_SOV_bukharinist set_character_flag = SOV_aligned_right_opposition_flag } } } } } } focus = { id = SOV_divert_attention_towards_military icon = GFX_focus_SOV_military_purge prerequisite = { focus = SOV_the_left_opposition focus = SOV_the_right_opposition } mutually_exclusive = { focus = SOV_military_support } x = 11 y = 1 relative_position_id = SOV_the_left_opposition cost = 5 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { custom_effect_tooltip = SOV_divert_purge_attention_tt hidden_effect = { SOV_pick_regular_purge_army_type_effect = yes } } } focus = { id = SOV_gain_support_from_party_members icon = GFX_focus_generic_soviet_politics prerequisite = { focus = SOV_the_left_opposition focus = SOV_the_right_opposition } x = 7 y = 1 relative_position_id = SOV_the_left_opposition cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA FOCUS_FILTER_STABILITY} completion_reward = { SOV_paranoia_low_increase_effect = yes add_political_power = 100 custom_effect_tooltip = SOV_gain_support_from_party_members_tt hidden_effect = { if = { limit = { SOV_is_left_opposition = yes } SOV_mikhail_kalinin = { set_character_flag = SOV_aligned_left_opposition_flag clr_character_flag = SOV_safe_from_purge_flag } SOV_vsevolod_merkulov = { set_character_flag = SOV_aligned_left_opposition_flag clr_character_flag = SOV_safe_from_purge_flag } SOV_nikita_khrushchyov = { set_character_flag = SOV_aligned_left_opposition_flag clr_character_flag = SOV_safe_from_purge_flag } } } } } focus = { id = SOV_sway_the_railway_workers icon = GFX_goal_generic_construction2 prerequisite = { focus = SOV_the_left_opposition focus = SOV_the_right_opposition } x = 3 y = 1 relative_position_id = SOV_the_left_opposition cost = 5 available = { SOV_has_selected_hq = yes SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA FOCUS_FILTER_INDUSTRY} completion_reward = { SOV_paranoia_very_low_increase_effect = yes custom_effect_tooltip = SOV_sway_the_railway_workers_tt set_country_flag = SOV_supply_hub_flag } } focus = { id = SOV_infiltrate_the_nkvd icon = GFX_SOV_infiltrate_the_nkvd_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_left_opposition focus = SOV_the_right_opposition } x = 5 y = 1 relative_position_id = SOV_the_left_opposition cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_decrease_effect = yes custom_effect_tooltip = SOV_infiltrate_the_nkvd_tt set_country_flag = SOV_nkvd_aligned_flag IF = { limit = { SOV_is_right_opposition = yes } custom_effect_tooltip = SOV_infiltrate_the_nkvd_coup_tt } } } focus = { id = SOV_cooperation_against_stalin icon = GFX_goal_generic_national_unity prerequisite = { focus = SOV_gain_support_from_party_members } mutually_exclusive = { focus = SOV_left_eliminate_right focus = SOV_eliminate_the_left} x = 0 y = 1 relative_position_id = SOV_gain_support_from_party_members cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_medium_increase_effect = yes IF = { limit = { SOV_is_left_opposition = yes } custom_effect_tooltip = SOV_cooperation_against_stalin_left_tt hidden_effect = { SOV_nikolay_bukharin = { set_character_flag = SOV_aligned_left_opposition_flag } SOV_aleksey_rykov = { set_character_flag = SOV_aligned_left_opposition_flag } } } ELSE_IF = { limit = { SOV_is_right_opposition = yes } custom_effect_tooltip = SOV_cooperation_against_stalin_right_tt hidden_effect = { SOV_karl_radek = { set_character_flag = SOV_aligned_right_opposition_flag } SOV_yevgeny_preobrazhensky = { set_character_flag = SOV_aligned_right_opposition_flag } } } ELSE = { custom_effect_tooltip = SOV_cooperation_against_stalin_other_tt } # Modify Factionalism - change tooltip if changing values!!! custom_effect_tooltip = SOV_cooperation_against_stalin_factionalism_tt add_to_variable = { SOV_factionalism_political_advisor_cost_factor = -0.15 } add_to_variable = { SOV_factionalism_political_power_factor = -0.05 } add_to_variable = { SOV_factionalism_popularity_stability_cost_factor = -0.1 } } } focus = { id = SOV_align_the_zinovyevites icon = GFX_focus_SOV_zinovyevists prerequisite = { focus = SOV_cooperation_against_stalin } x = -1 y = 1 relative_position_id = SOV_cooperation_against_stalin cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_medium_increase_effect = yes custom_effect_tooltip = SOV_align_the_zinovyevites_tt # Modify Factionalism - change tooltip if changing values!!! custom_effect_tooltip = SOV_align_the_zinovyevites_factionalism_tt add_to_variable = { SOV_factionalism_political_power_factor = -0.05 } hidden_effect = { if = { limit = { SOV_is_left_opposition = yes } SOV_grigory_zinovyev = { set_character_flag = SOV_aligned_left_opposition_flag clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_grigory_zinovyev" } } } SOV_lev_kamenev = { set_character_flag = SOV_aligned_left_opposition_flag clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_lev_kamenev" } } } } else_if = { limit = { SOV_is_right_opposition = yes } SOV_grigory_zinovyev = { set_character_flag = SOV_aligned_right_opposition_flag clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_grigory_zinovyev" } } } SOV_lev_kamenev = { set_character_flag = SOV_aligned_right_opposition_flag clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_lev_kamenev" } } } } } } } focus = { id = SOV_liberate_ryutin icon = GFX_SOV_liberate_ryutin_ccp_2d_sov_compatibility prerequisite = { focus = SOV_cooperation_against_stalin } x = 1 y = 1 relative_position_id = SOV_cooperation_against_stalin cost = 10 available = { SOV_soviet_civil_war_not_started = yes } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_medium_increase_effect = yes custom_effect_tooltip = SOV_liberate_ryutin_tt IF = { limit = { SOV_is_left_opposition = yes } 566 = { set_state_flag = SOV_left_opposition_state } hidden_effect = { SOV_martemyan_ryutin = { set_character_flag = SOV_aligned_left_opposition_flag clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_martemyan_ryutin" } } } } } ELSE_IF = { limit = { SOV_is_right_opposition = yes } 566 = { set_state_flag = SOV_right_opposition_state } hidden_effect = { SOV_martemyan_ryutin = { set_character_flag = SOV_aligned_right_opposition_flag clr_character_flag = SOV_imprisoned_flag set_character_flag = SOV_exiled_flag set_portraits = { army = { small = "GFX_idea_SOV_martemyan_ryutin" } } } } } } } focus = { id = SOV_return_democracy_to_the_party icon = GFX_SOV_return_democracy_to_the_party_ccp_2d_sov_compatibility prerequisite = { focus = SOV_cooperation_against_stalin } mutually_exclusive = { focus = SOV_left_purges focus = SOV_right_purges } x = 0 y = 4 relative_position_id = SOV_cooperation_against_stalin cost = 10 available = { has_global_flag = SOV_soviet_civil_war_over } search_filters = {} completion_reward = { # Modify Factionalism - change tooltip if changing values!!! custom_effect_tooltip = SOV_return_democracy_to_the_party_factionalism_tt add_to_variable = { SOV_factionalism_political_power_factor = -0.05 } IF = { limit = { SOV_is_left_opposition = yes } custom_effect_tooltip = SOV_return_democracy_to_the_party_unlock_right_tt } ELSE = { custom_effect_tooltip = SOV_return_democracy_to_the_party_unlock_left_tt } IF = { limit = { has_idea = trotskyite_plot_nsb} remove_ideas = trotskyite_plot_nsb } if = { limit = { SOV_ivan_smirnov = { NOT = { has_character_flag = SOV_character_purged_flag } has_character_flag = SOV_imprisoned_flag } } SOV_ivan_smirnov = { clr_character_flag = SOV_imprisoned_flag } } if = { limit = { SOV_ivar_smilga = { NOT = { has_character_flag = SOV_character_purged_flag } has_character_flag = SOV_imprisoned_flag } } SOV_ivar_smilga = { clr_character_flag = SOV_imprisoned_flag } } if = { limit = { SOV_aleksandr_shlyapnikov = { NOT = { has_character_flag = SOV_character_purged_flag } has_character_flag = SOV_imprisoned_flag } } SOV_aleksandr_shlyapnikov = { clr_character_flag = SOV_imprisoned_flag } } hidden_effect = { set_portraits = { character = SOV_ivan_smirnov army = { small = "GFX_idea_SOV_ivan_smirnov" } } set_portraits = { character = SOV_ivar_smilga army = { small = "GFX_idea_SOV_ivar_smilga" } } set_portraits = { character = SOV_aleksandr_shlyapnikov army = { small = "GFX_idea_SOV_aleksandr_shlyapnikov" } } IF = { limit = { SOV_is_right_opposition = yes } every_character = { limit = { has_character_flag = SOV_exiled_flag has_character_flag = SOV_aligned_left_opposition_flag } clr_character_flag = SOV_exiled_flag } } ELSE_IF = { limit = { SOV_is_left_opposition = yes } every_character = { limit = { has_character_flag = SOV_exiled_flag has_character_flag = SOV_aligned_right_opposition_flag } clr_character_flag = SOV_exiled_flag } } } } } focus = { id = SOV_strengthen_the_trade_unions icon = GFX_focus_generic_treaty prerequisite = { focus = SOV_all_power_to_the_soviets focus = SOV_incorporate_local_organizations } x = 6 y = 1 offset = { x = -5 y = 0 trigger = { NOT = { has_dlc = "No Step Back" } } } relative_position_id = SOV_all_power_to_the_soviets mutually_exclusive = { focus = SOV_regional_development } cost = 10 mutually_exclusive = { focus = SOV_for_the_common_good } available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_INDUSTRY} completion_reward = { add_political_power = 70 add_popularity = { ideology = communism popularity = 0.05 } add_ideas = SOV_strong_trade_unions_idea } } focus = { id = SOV_the_peoples_revolution icon = GFX_focus_por_workers_of_iberia prerequisite = { focus = SOV_strengthen_the_trade_unions } x = 0 y = 1 relative_position_id = SOV_strengthen_the_trade_unions cost = 10 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_MANPOWER} completion_reward = { add_popularity = { ideology = communism popularity = 0.1 } add_ideas = SOV_the_peoples_revolution_idea } } focus = { id = SOV_the_supreme_soviet icon = GFX_focus_SOV_the_supreme_soviet prerequisite = { focus = SOV_the_peoples_revolution } x = 0 y = 1 relative_position_id = SOV_the_peoples_revolution cost = 10 available = { has_government = communism } search_filters = {FOCUS_FILTER_STABILITY} completion_reward = { add_country_leader_role = { character = "SOV_supreme_soviet" country_leader = { ideology = marxism traits = { strong_party_discipline } expire = "1965.3.1.1" } promote_leader = yes } } } ###################################################################################################################################### #### ## ## ######## ######## ######## ## ## ### ## ### ######## ######## ### #### ######## ###### ## ### ## ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ###### ######## ## ## ## ## ## ## ## ## ###### ###### ## ## ## ######## ###### ## ## #### ## ## ## ## ## #### ######### ## ######### ## ## ######### ## ## ## ## ## ## ### ## ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ## ## ## ######## ## ## ## ## ## ## ######## ## ## ## ## ## ## #### ## ## ###### focus = { id = SOV_addressing_internal_affairs icon = GFX_focus_generic_self_management prerequisite = { focus = SOV_the_path_of_marxism_leninism } x = 24 y = 1 offset = { x = -7 y = 0 trigger = { #Basic offset to compensate for missing Bukharinist branch NOT = { has_dlc = "No Step Back" } } } offset = { x = -19 y = 0 trigger = { #Trotskyist branch hides NOT = { has_dlc = "No Step Back" } has_completed_focus = SOV_the_centre has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } } offset = { x = -7 y = 0 trigger = { # Stalinist branch hides NOT = { has_dlc = "No Step Back" } AND = { has_completed_focus = SOV_left_opposition_coup has_completed_focus = SOV_the_left_opposition } has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } } offset = { x = -26 y = 0 trigger = { has_dlc = "No Step Back" has_completed_focus = SOV_the_centre has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } } offset = { x = -7 y = 0 trigger = { has_dlc = "No Step Back" OR = { AND = { has_completed_focus = SOV_the_left_opposition has_completed_focus = SOV_left_opposition_coup } AND = { has_completed_focus = SOV_the_right_opposition has_completed_focus = SOV_coup_detat } } has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } } relative_position_id = SOV_the_path_of_marxism_leninism cost = 5 allow_branch = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = SOV_beaten_but_not_defeated } } } available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY} completion_reward = { add_political_power = 50 add_stability = 0.1 } } focus = { id = SOV_nkvd_primacy icon = GFX_SOV_nkvd_primacy_ccp_2d_sov_compatibility prerequisite = { focus = SOV_addressing_internal_affairs } x = -2 y = 1 relative_position_id = SOV_addressing_internal_affairs cost = 5 available = { } search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_ideas = SOV_nkvd_nsb SOV_paranoia_medium_increase_effect = yes } } focus = { id = SOV_the_new_soviet_woman icon = GFX_SOV_the_new_soviet_woman_ccp_2d_sov_compatibility prerequisite = { focus = SOV_addressing_internal_affairs } x = 2 y = 1 relative_position_id = SOV_addressing_internal_affairs cost = 5 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY} completion_reward = { add_political_power = 70 add_stability = 0.1 add_popularity = { ideology = communism popularity = 0.1 } } } focus = { id = SOV_expand_the_agitprop icon = GFX_SOV_expand_the_agitprop_ccp_2d_sov_compatibility prerequisite = { focus = SOV_addressing_internal_affairs } x = 0 y = 1 relative_position_id = SOV_addressing_internal_affairs cost = 5 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_PROPAGANDA} completion_reward = { add_political_power = 25 add_popularity = { ideology = communism popularity = 0.1 } hidden_effect = { SOV_unlock_propaganda_campaign_slot_effect = yes } unlock_decision_category_tooltip = SOV_propaganda_campaigns } } focus = { id = SOV_positive_heroism icon = GFX_SOV_positive_heroism_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_agitprop } x = -2 y = 1 relative_position_id = SOV_expand_the_agitprop cost = 10 mutually_exclusive = { focus = SOV_collectivist_propaganda } available = { } search_filters = {FOCUS_FILTER_PROPAGANDA} completion_reward = { add_political_power = 25 custom_effect_tooltip = available_military_high_command show_ideas_tooltip = konstantin_rokossovsky custom_effect_tooltip = available_theorist show_ideas_tooltip = georgy_zhukov custom_effect_tooltip = unlock_propaganda_campaign_tt unlock_decision_tooltip = SOV_propaganda_heroes_forward custom_effect_tooltip = unlock_propaganda_campaign_slot_tt SOV_unlock_propaganda_campaign_slot_effect = yes } } focus = { id = SOV_revive_the_stakhanovite_movement icon = GFX_SOV_revive_the_stakhanovite_movement_ccp_2d_sov_compatibility prerequisite = { focus = SOV_positive_heroism } x = 0 y = 1 relative_position_id = SOV_positive_heroism cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { add_ideas = SOV_stakhanovite_movement } } focus = { id = SOV_war_heroes icon = GFX_SOV_war_heroes_ccp_2d_sov_compatibility prerequisite = { focus = SOV_revive_the_stakhanovite_movement } x = 0 y = 1 relative_position_id = SOV_revive_the_stakhanovite_movement cost = 10 available = { } search_filters = {} completion_reward = { add_ideas = SOV_war_heroes_ns custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { SOV_georgy_zhukov = { NOT = { has_character_flag = SOV_character_purged_flag } is_corps_commander = yes } } SOV_georgy_zhukov = { promote_leader = yes } } else = { random_army_leader = { limit = { NOT = { has_character_flag = SOV_potential_target_flag } is_corps_commander = yes NOT = { is_character = SOV_konstantin_rokossovsky } NOT = { is_character = SOV_ivan_konev } } promote_leader = yes } } if = { limit = { SOV_konstantin_rokossovsky = { NOT = { has_character_flag = SOV_character_purged_flag } is_corps_commander = yes } } SOV_konstantin_rokossovsky = { promote_leader = yes } } else = { random_army_leader = { limit = { NOT = { has_character_flag = SOV_potential_target_flag } is_corps_commander = yes NOT = { is_character = SOV_georgy_zhukov } NOT = { is_character = SOV_ivan_konev } } promote_leader = yes } } if = { limit = { SOV_ivan_konev = { NOT = { has_character_flag = SOV_character_purged_flag } is_corps_commander = yes } } SOV_ivan_konev = { promote_leader = yes } } else = { random_army_leader = { limit = { NOT = { has_character_flag = SOV_potential_target_flag } is_corps_commander = yes NOT = { is_character = SOV_georgy_zhukov } NOT = { is_character = SOV_konstantin_rokossovsky } } promote_leader = yes } } } } focus = { id = SOV_collectivist_propaganda icon = GFX_SOV_collectivist_propaganda_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_agitprop } x = 0 y = 1 relative_position_id = SOV_expand_the_agitprop cost = 10 mutually_exclusive = { focus = SOV_positive_heroism } available = { } search_filters = {FOCUS_FILTER_MANPOWER FOCUS_FILTER_PROPAGANDA} completion_reward = { add_political_power = 25 add_ideas = SOV_collectivist_propaganda_ns custom_effect_tooltip = unlock_propaganda_campaign_tt unlock_decision_tooltip = SOV_propaganda_for_the_motherland custom_effect_tooltip = unlock_propaganda_campaign_slot_tt SOV_unlock_propaganda_campaign_slot_effect = yes } } focus = { id = SOV_socialist_emulation icon = GFX_SOV_socialist_emulation_ccp_2d_sov_compatibility prerequisite = { focus = SOV_collectivist_propaganda } x = 0 y = 1 relative_position_id = SOV_collectivist_propaganda cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { add_ideas = SOV_socialist_emulation_1_ns } } focus = { id = SOV_socialist_realism icon = GFX_SOV_socialist_realism_ccp_2d_sov_compatibility prerequisite = { focus = SOV_socialist_emulation } x = 0 y = 1 relative_position_id = SOV_socialist_emulation cost = 10 available = { } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_POLITICAL} completion_reward = { swap_ideas = { remove_idea = SOV_socialist_emulation_1_ns add_idea = SOV_socialist_emulation_2_ns } } } focus = { id = SOV_the_komsomol icon = GFX_SOV_the_komsomol_ccp_2d_sov_compatibility prerequisite = { focus = SOV_expand_the_agitprop } x = 2 y = 1 relative_position_id = SOV_expand_the_agitprop cost = 5 available = { } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_PROPAGANDA} completion_reward = { add_political_power = 50 add_popularity = { ideology = communism popularity = 0.1 } custom_effect_tooltip = unlock_propaganda_campaign_tt unlock_decision_tooltip = SOV_propaganda_knowledge unlock_decision_tooltip = SOV_propaganda_builders_of_communism unlock_decision_tooltip = SOV_propaganda_sweep_scum_out custom_effect_tooltip = unlock_propaganda_campaign_slot_tt SOV_unlock_propaganda_campaign_slot_effect = yes } } focus = { id = SOV_patriarch_of_all_russia icon = GFX_SOV_patriarch_of_all_russia_ccp_2d_sov_compatibility prerequisite = { focus = SOV_war_heroes focus = SOV_socialist_realism } x = 1 y = 1 relative_position_id = SOV_war_heroes cost = 5 available = { } search_filters = {FOCUS_FILTER_STABILITY} completion_reward = { add_stability = 0.1 custom_effect_tooltip = available_political_advisor show_ideas_tooltip = SOV_patriarch_sergy } } ######## ####### ######## ######## #### ###### ## ## ###### ####### ## ## ## ## #### ######## ## ## ## ## ## ## ## ## ## ### ## ## ## ## ## ### ### ### ### ## ## ## ## ## ## ## ## ## ## #### ## ## ## ## #### #### #### #### ## ## ###### ## ## ######## ###### ## ## #### ## ## ## ## ## ## ## ### ## ## ### ## ## ###### ## ## ## ## ## ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ####### ## ## ######## #### ###### ## ## ###### ####### ## ## ## ## #### ######## focus = { id = SOV_the_comintern icon = GFX_goal_support_communism prerequisite = { focus = SOV_the_path_of_marxism_leninism } x = 9 y = 0 relative_position_id = SOV_addressing_internal_affairs cost = 5 allow_branch = { if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = SOV_beaten_but_not_defeated } } } available = { } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_political_power = 50 add_popularity = { ideology = communism popularity = 0.05 } IF = { limit = { has_dlc = "No Compromise, No Surrender" is_faction_leader = yes } custom_effect_tooltip = generic_skip_one_line_tt add_faction_goal_slot = { category = medium_term # options: short_term, medium_term, long_term value = 1 } } } } focus = { id = SOV_development_aid_for_eastern_allies icon = GFX_SOV_development_aid_for_eastern_allies_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_comintern } x = -5 y = 1 relative_position_id = SOV_the_comintern cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { any_allied_country = { capital_scope = { is_on_continent = asia } is_major = no } num_of_civilian_factories_available_for_projects > 2 is_subject = no } search_filters = {} select_effect = { add_ideas = SOV_development_of_eastern_allies } completion_reward = { #Tooltip purposes (Select Effect) custom_effect_tooltip = SOV_focus_select_effect_tt effect_tooltip = { add_ideas = SOV_development_of_eastern_allies } #(Complete Effect) custom_effect_tooltip = SOV_focus_complete_effect_tt every_other_country = { limit = { is_in_faction_with = ROOT capital_scope = { is_on_continent = asia } is_major = no } country_event = { id = NSB_soviet_foreign_politics_events.10 hours = 2 random_hours = 1 } custom_effect_tooltip = if_they_accept custom_effect_tooltip = SOV_development_aid_for_eastern_allies_tt } hidden_effect = { remove_ideas = SOV_development_of_eastern_allies } } } focus = { id = SOV_war_measures_in_the_east icon = GFX_SOV_war_measures_in_the_east_ccp_2d_sov_compatibility prerequisite = { focus = SOV_development_aid_for_eastern_allies } x = 0 y = 1 relative_position_id = SOV_development_aid_for_eastern_allies cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { is_subject = no } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_war_measures_scope_tt every_other_country = { limit = { is_in_faction_with = ROOT capital_scope = { is_on_continent = asia } is_major = no } country_event = { id = NSB_soviet_foreign_politics_events.11 hours = 2 random_hours = 1 } custom_effect_tooltip = if_they_accept effect_tooltip = { add_timed_idea = { idea = SOV_war_measures_allies days = 1095 } } } } } focus = { id = SOV_annex_tannu_tuva icon = GFX_SOV_annex_tannu_tuva_ccp_2d_sov_compatibility prerequisite = { focus = SOV_war_measures_in_the_east } x = -1 y = 1 relative_position_id = SOV_war_measures_in_the_east cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { is_subject = no TAN = { OR = { is_in_faction_with = ROOT is_subject_of = ROOT } } } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { TAN = { country_event = { id = soviet.14 hours = 6 } } } } focus = { id = SOV_fortify_mongolian_border icon = GFX_SOV_fortify_mongolian_border_ccp_2d_sov_compatibility prerequisite = { focus = SOV_war_measures_in_the_east } x = 1 y = 1 relative_position_id = SOV_war_measures_in_the_east cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { MON = { is_in_faction_with = ROOT has_full_control_of_state = 330 has_full_control_of_state = 819 has_full_control_of_state = 817 has_full_control_of_state = 818 } is_subject = no } search_filters = {} completion_reward = { MON = { country_event = { id = NSB_soviet_foreign_politics_events.12 hours = 2 random_hours = 1 } } custom_effect_tooltip = if_they_accept custom_effect_tooltip = SOV_fortify_mongolian_border_forts_tt } } focus = { id = SOV_send_military_advisors_to_spain icon = GFX_focus_intervention_spain_republic prerequisite = { focus = SOV_the_comintern } x = -3 y = 1 relative_position_id = SOV_the_comintern cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { has_civil_war = no OR = { has_completed_focus = SOV_the_centre has_completed_focus = SOV_the_left_opposition has_completed_focus = SOV_the_right_opposition } if = { limit = { has_dlc = "La Resistance" } SPR_scw_in_progress = yes if = { limit = { NOT = { has_global_flag = spanish_civil_war } } custom_trigger_tooltip = { tooltip = POR_spr_tooltip_country_exist_tt country_exists = SPR } custom_trigger_tooltip = { tooltip = POR_spr_tooltip_at_peace_tt NOT = { has_war_with = SPR } } } else = { if = { limit = { has_completed_focus = SOV_covert_support_for_spanish_poum } country_exists = SPC NOT = { has_war_with = SPC } } else = { country_exists = SPD NOT = { has_war_with = SPD } } } } else = { any_other_country = { original_tag = SPR has_civil_war = yes NOT = { has_war_with = ROOT } OR = { has_government = democratic has_government = communism } } } has_government = communism is_subject = no } search_filters = {} completion_reward = { add_timed_idea = { idea = SOV_military_advisors_in_spain days = 1095 } if = { limit = { has_dlc = "La Resistance" has_completed_focus = SOV_covert_support_for_spanish_poum has_completed_focus = SOV_coup_detat has_global_flag = SPR_anarchist_uprising_flag country_exists = SPC SPC = { has_completed_focus = SPR_the_anti_fascist_workers_revolution } } SPC = { hidden_effect = { country_event = { id = NSB_soviet_foreign_politics_events.20 hours = 2 random_hours = 1 } } effect_tooltip = { add_timed_idea = {idea = SOV_soviet_advisors_spr days = 1095 } } } } else_if = { limit = { has_dlc = "La Resistance" country_exists = SPD } SPD = { hidden_effect = { country_event = { id = NSB_soviet_foreign_politics_events.20 hours = 2 random_hours = 1 } } effect_tooltip = { add_timed_idea = {idea = SOV_soviet_advisors_spr days = 1095 } } } } else_if = { limit = { has_dlc = "La Resistance" NOT = { country_exists = SPD } } custom_effect_tooltip = SOV_aid_republican_spain_tt effect_tooltip = { add_timed_idea = {idea = SOV_soviet_advisors_spr days = 1095 } } } else = { random_country = { limit = { original_tag = SPR has_civil_war = yes OR = { has_government = communism has_government = democratic } } hidden_effect = { country_event = { id = NSB_soviet_foreign_politics_events.20 hours = 2 random_hours = 1 } } effect_tooltip = { add_timed_idea = {idea = SOV_soviet_advisors_spr days = 1095 } } } } # A Spanish General will join the USSR if his side loses the SCW if = { limit = { has_dlc = "La Resistance" } custom_effect_tooltip = SOV_send_military_advisors_to_spain_generals_tt set_country_flag = SOV_spanish_refugee_generals_welcome_flag } } } focus = { id = SOV_policy_of_collective_security icon = GFX_SOV_policy_of_collective_security_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_comintern } x = -1 y = 1 relative_position_id = SOV_the_comintern cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_policy_of_individual_security } available = { } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_political_power = 35 IF = { limit = { has_dlc = "No Compromise, No Surrender" is_faction_leader = yes } add_faction_initiative = 1 } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = available_political_advisor show_ideas_tooltip = SOV_maksim_litvinov } } focus = { id = SOV_anti_fascist_policies icon = GFX_focus_generic_anti_fascist_diplomacy prerequisite = { focus = SOV_policy_of_collective_security } x = 0 y = 1 relative_position_id = SOV_policy_of_collective_security cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } search_filters = {FOCUS_FILTER_PROPAGANDA} completion_reward = { every_other_country = { limit = { is_major = yes OR = { has_government = democratic has_government = communism } NOT = { has_war_with = ROOT } } add_opinion_modifier = { target = SOV modifier = SOV_anti_fascist_policies_good } } every_other_country = { limit = { is_major = yes has_government = fascism } add_opinion_modifier = { target = SOV modifier = SOV_anti_fascist_policies_bad } } if = { limit = { has_government = communism } custom_effect_tooltip = unlock_propaganda_campaign_tt unlock_decision_tooltip = SOV_propaganda_anti_fascism custom_effect_tooltip = propaganda_campaign_requirement_tt } } } focus = { id = SOV_seek_a_defense_pact_with_the_allies icon = GFX_goal_generic_major_alliance prerequisite = { focus = SOV_anti_fascist_policies } x = 0 y = 1 relative_position_id = SOV_anti_fascist_policies cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } bypass = { OR = { NOT = { country_exists = FRA } FRA = { has_capitulated = yes } } NOT = { any_other_country = { is_faction_leader = yes SOV_is_valid_collective_security_target = yes } } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no } search_filters = {} completion_reward = { if = { #FRA is default target limit = { country_exists = FRA FRA = { SOV_is_valid_collective_security_target = yes } } set_variable = { SOV_collective_security_target = FRA } FRA = { country_event = { id = NSB_soviet_policies_of_collective_security.1 hours = 8 random_hours = 4 } } } else_if = { #ENG is first fallback target limit = { country_exists = ENG is_faction_leader = yes ENG = { SOV_is_valid_collective_security_target = yes } } set_variable = { SOV_collective_security_target = FRA } ENG = { country_event = { id = NSB_soviet_policies_of_collective_security.1 hours = 8 random_hours = 4 } } } else_if = { #Non-Fascist European faction leader is next limit = { any_country = { is_faction_leader = yes capital_scope = { is_on_continent = europe } SOV_is_valid_collective_security_target = yes } } random_other_country = { limit = { is_faction_leader = yes capital_scope = { is_on_continent = europe } SOV_is_valid_collective_security_target = yes } ROOT = { set_variable = { SOV_collective_security_target = PREV } } country_event = { id = NSB_soviet_policies_of_collective_security.1 hours = 8 random_hours = 4 } } } else_if = { #Alright I don't really care anymore, pick whoever is left alive limit = { any_other_country = { is_faction_leader = yes SOV_is_valid_collective_security_target = yes } } random_other_country = { limit = { is_faction_leader = yes SOV_is_valid_collective_security_target = yes } ROOT = { set_variable = { SOV_collective_security_target = PREV } } country_event = { id = NSB_soviet_policies_of_collective_security.1 hours = 8 random_hours = 4 } } } custom_effect_tooltip = SOV_seek_a_defense_pact_with_the_allies_event_effects_tt if = { limit = { country_exists = POL POL = { SOV_is_valid_collective_security_target = yes } var:SOV_collective_security_target = { capital_scope = { is_on_continent = europe } } } custom_effect_tooltip = SOV_seek_a_defense_pact_with_the_allies_poland_tt } } } focus = { id = SOV_the_khakimov_proposal icon = GFX_focus_generic_befriend_saudi_arabia prerequisite = { focus = SOV_seek_a_defense_pact_with_the_allies } x = -1 y = 1 relative_position_id = SOV_seek_a_defense_pact_with_the_allies cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { is_subject = no country_exists = SAU NOT = { has_war_with = SAU } } search_filters = {} completion_reward = { SAU = { add_ideas = SOV_ambassador_karim_khakimov #adds +35 communism acceptance and -50 for other ideologies add_opinion_modifier = { target = SOV modifier = SOV_cordial_relations_developed_by_soviet_diplomat } hidden_effect = { country_event = { id = NSB_soviet_foreign_politics_events.211 hours = 8 random_hours = 4 } } } activate_targeted_decision = { target = SAU decision = SOV_pressure_country_government_middle_east } activate_targeted_decision = { target = SAU decision = SOV_promote_ideology_rallies_middle_east } } } focus = { id = SOV_eradicate_western_fascism icon = GFX_focus_generic_strike_at_democracy1 prerequisite = { focus = SOV_seek_a_defense_pact_with_the_allies } x = 0 y = 2 relative_position_id = SOV_seek_a_defense_pact_with_the_allies cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } any_country = { OR = { tag = ENG tag = FRA tag = GER tag = ITA } has_government = fascism is_major = yes } is_subject = no } search_filters = {} completion_reward = { add_timed_idea = { idea = SOV_face_western_fascism_ns days = 365 } custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { ENG = { has_government = fascism } } hidden_effect = { add_ideas = SOV_targeted_bonus_against_ENG } create_wargoal = { type = puppet_wargoal_focus target = ENG } } if = { limit = { FRA = { has_government = fascism } } hidden_effect = { add_ideas = SOV_targeted_bonus_against_FRA } create_wargoal = { type = puppet_wargoal_focus target = FRA } } if = { limit = { GER = { has_government = fascism } } hidden_effect = { add_ideas = SOV_targeted_bonus_against_GER } create_wargoal = { type = puppet_wargoal_focus target = GER } } if = { limit = { ITA = { has_government = fascism } } hidden_effect = { add_ideas = SOV_targeted_bonus_against_ITA } create_wargoal = { type = puppet_wargoal_focus target = ITA } } } } focus = { id = SOV_policy_of_individual_security icon = GFX_SOV_policy_of_individual_security_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_comintern } x = 1 y = 1 relative_position_id = SOV_the_comintern cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_policy_of_collective_security } available = { } search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_political_power = 35 IF = { limit = { has_dlc = "No Compromise, No Surrender" is_faction_leader = yes } add_faction_initiative = 1 } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = available_political_advisor show_ideas_tooltip = SOV_vyacheslav_molotov } } focus = { id = SOV_approach_germany icon = GFX_goal_molotov_ribbentrop_pact prerequisite = { focus = SOV_policy_of_individual_security } prerequisite = { focus = SOV_anti_capitalist_policies } x = 0 y = 2 relative_position_id = SOV_policy_of_individual_security cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } country_exists = GER GER = { SOV_is_valid_subject = yes } NOT = { has_war_with = GER } is_subject = no } bypass = { NOT = { country_exists = GER } } search_filters = {} completion_reward = { GER = { country_event = { id = NSB_soviet_soviet_german_trade_agreement.1 hours = 1 } } custom_effect_tooltip = if_they_accept_tt #This will also make GER more likely to take Molotov-Ribbentrop pact and less to take Anti-Soviet Pact effect_tooltip = { if = { limit = { has_dlc = "Man the Guns" } if = { limit = { NOT = { has_tech = basic_ship_hull_cruiser } } set_technology = { basic_ship_hull_cruiser = 1 } } if = { limit = { NOT = { has_tech = basic_cruiser_armor_scheme } } set_technology = { basic_cruiser_armor_scheme = 1 } } if = { limit = { has_tech = basic_heavy_battery } create_equipment_variant = { name = "Hipper Class" type = ship_hull_cruiser_2 name_group = SOV_CA_HISTORICAL parent_version = 0 modules = { fixed_ship_battery_slot = ship_medium_battery_2 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 = empty fixed_ship_armor_slot = ship_armor_cruiser_2 front_1_custom_slot = ship_anti_air_1 mid_1_custom_slot = ship_torpedo_1 mid_2_custom_slot = ship_airplane_launcher_1 rear_1_custom_slot = ship_medium_battery_2 } } } else = { create_equipment_variant = { name = "Hipper Class" type = ship_hull_cruiser_2 name_group = SOV_CA_HISTORICAL parent_version = 0 modules = { fixed_ship_battery_slot = ship_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 = empty fixed_ship_armor_slot = ship_armor_cruiser_2 front_1_custom_slot = ship_anti_air_1 mid_1_custom_slot = ship_torpedo_1 mid_2_custom_slot = ship_airplane_launcher_1 rear_1_custom_slot = ship_medium_battery_1 } } } # CA: Lützow -> Petropavlovsk add_equipment_production = { equipment = { type = ship_hull_cruiser_2 creator = SOV version_name = "Hipper Class" } name = "Petropavlovsk" requested_factories = 1 progress = 0.5 amount = 1 } if = { #Default name limit = { has_government = communism } add_tech_bonus = { name = NSB_soviet_soviet_german_trade_agreement_tech_bonus_name bonus = 0.5 uses = 2 category = ship_modules_tech category = bb_tech category = dd_tech } } else = { #Alt name add_tech_bonus = { name = NSB_soviet_soviet_german_trade_agreement_tech_bonus_name_alt bonus = 0.5 uses = 2 category = ship_modules_tech category = bb_tech category = dd_tech } } } else = { #No MTG if = { limit = { NOT = { has_tech = basic_heavy_cruiser } } set_technology = { basic_heavy_cruiser = 1 } } create_equipment_variant = { name = "Hipper Class" type = heavy_cruiser_2 parent_version = 0 upgrades = { ship_reliability_upgrade = 1 ship_engine_upgrade = 1 ship_armor_upgrade = 2 ship_gun_upgrade = 2 } } add_equipment_production = { equipment = { type = heavy_cruiser_2 creator = SOV } requested_factories = 1 progress = 0.5 amount = 1 } if = { #Default name limit = { has_government = communism } add_tech_bonus = { name = NSB_soviet_soviet_german_trade_agreement_tech_bonus_name bonus = 0.5 uses = 2 category = ca_tech category = bb_tech category = dd_tech } } else = { #Alt name add_tech_bonus = { name = NSB_soviet_soviet_german_trade_agreement_tech_bonus_name_alt bonus = 0.5 uses = 2 category = ca_tech category = bb_tech category = dd_tech } } } IF = { limit = { has_dlc = "No Step Back" } create_equipment_variant = { name = "A-20" type = medium_tank_chassis_1 parent_version = 0 allow_without_tech = no modules = { main_armament_slot = tank_small_cannon_2 turret_type_slot = tank_medium_two_man_tank_turret suspension_type_slot = tank_christie_suspension armor_type_slot = tank_welded_armor engine_type_slot = tank_diesel_engine special_type_slot_1 = sloped_armor } upgrades = { tank_nsb_engine_upgrade = 8 tank_nsb_armor_upgrade = 2 } icon = "GFX_SOV_basic_medium_tank_medium" } create_equipment_variant = { name = "KV-1" type = heavy_tank_chassis_1 parent_version = 0 modules = { main_armament_slot = tank_medium_cannon turret_type_slot = tank_heavy_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 = 10 tank_nsb_armor_upgrade = 9 } icon = "GFX_SOV_improved_heavy_tank_medium" } } if = { #Default name limit = { has_government = communism } add_tech_bonus = { name = NSB_soviet_soviet_german_trade_agreement_tech_bonus_name bonus = 0.5 uses = 2 category = air_equipment } } else = { #Alt name add_tech_bonus = { name = NSB_soviet_soviet_german_trade_agreement_tech_bonus_name_alt bonus = 0.5 uses = 2 category = air_equipment } } random_owned_controlled_state = { limit = { is_core_of = ROOT free_building_slots = { building = industrial_complex size > 1 include_locked = yes } } prioritize = { 217 202 195 } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } custom_effect_tooltip = generic_skip_one_line_tt #Effects to Germans GER = { add_timed_idea = { idea = SOV_soviet_german_trade_agreement days = 800 } #Technically 1 year but really 18 months for Soviet payment } custom_effect_tooltip = generic_skip_one_line_tt add_opinion_modifier = { target = GER modifier = SOV_strengthened_relations_with_us } GER = { add_opinion_modifier = { target = ROOT modifier = SOV_strengthened_relations_with_us } } } } } focus = { id = SOV_liberation_of_the_european_proletariat icon = GFX_focus_spr_torchbearers_of_tomorrow prerequisite = { focus = SOV_approach_germany } x = 0 y = 2 relative_position_id = SOV_approach_germany cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } any_country = { OR = { tag = ENG tag = FRA tag = GER tag = ITA } has_government = democratic is_major = yes is_subject = no } } search_filters = {} completion_reward = { add_timed_idea = { idea = SOV_liberation_of_the_european_proletariat_ns days = 365 } custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { ENG = { has_government = democratic } } hidden_effect = { add_ideas = SOV_targeted_bonus_against_ENG } create_wargoal = { type = puppet_wargoal_focus target = ENG } } if = { limit = { FRA = { has_government = democratic } } hidden_effect = { add_ideas = SOV_targeted_bonus_against_FRA } create_wargoal = { type = puppet_wargoal_focus target = FRA } } if = { limit = { GER = { has_government = democratic } } hidden_effect = { add_ideas = SOV_targeted_bonus_against_GER } create_wargoal = { type = puppet_wargoal_focus target = GER } } if = { limit = { ITA = { has_government = democratic } } hidden_effect = { add_ideas = SOV_targeted_bonus_against_ITA } create_wargoal = { type = puppet_wargoal_focus target = ITA } } } } ######## ####### ######## ######## #### ###### ## ## ######## ####### ## #### ######## #### ###### ###### ## ## ## ## ## ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## ## ###### ## ## ######## ###### ## ## #### ## ## ## ######## ## ## ## ## ## ## ## ###### ## ## ## ## ## ## ## ## ## ## #### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ### ## ## ## ## ## ## ## ## ## ## ## ## ####### ## ## ######## #### ###### ## ## ## ####### ######## #### ## #### ###### ###### focus = { id = SOV_anti_capitalist_policies icon = GFX_focus_spr_class_war prerequisite = { focus = SOV_the_comintern } x = 2 y = 1 relative_position_id = SOV_policy_of_individual_security cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { NOT = { has_government = democratic } } search_filters = {FOCUS_FILTER_PROPAGANDA} completion_reward = { every_other_country = { limit = { is_major = yes OR = { has_government = fascism has_government = communism } NOT = { has_war_with = ROOT } } add_opinion_modifier = { target = SOV modifier = SOV_anti_capitalist_policies_good } } every_other_country = { limit = { is_major = yes has_government = democratic } add_opinion_modifier = { target = SOV modifier = SOV_anti_capitalist_policies_bad } } if = { limit = { has_government = communism } custom_effect_tooltip = unlock_propaganda_campaign_tt unlock_decision_tooltip = SOV_propaganda_anti_capitalism custom_effect_tooltip = propaganda_campaign_requirement_tt } } } focus = { id = SOV_recover_alaska icon = GFX_focus_SOV_recover_alaska prerequisite = { focus = SOV_anti_capitalist_policies } x = 0 y = 1 relative_position_id = SOV_anti_capitalist_policies cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no } bypass = { 463 = { is_owned_by = ROOT } 650 = { is_owned_by = ROOT } } search_filters = {FOCUS_FILTER_ANNEXATION} completion_reward = { if = { limit = { 463 = { NOT = { is_claimed_by = ROOT } } } add_state_claim = 463 } if = { limit = { 650 = { NOT = { is_claimed_by = ROOT } } } add_state_claim = 650 custom_effect_tooltip = generic_skip_one_line_tt } if = { #ONE CONTROLLER limit = { 463 = { controller = { controls_state = 650 } } } if = { limit = { 463 = { controller = { NOT = { has_war_with = ROOT } } } } 463 = { controller = { country_event = { id = NSB_soviet_foreign_politics_events.30 hours = 4 random_hours = 2 } custom_effect_tooltip = if_they_accept effect_tooltip = { ROOT = { transfer_state = 463 } #ALASKA ROOT = { transfer_state = 650 } #ATTU ISLAND add_opinion_modifier = { target = ROOT modifier = SOV_pressured_our_government } } } } } } else = { #TWO DIFFERENT CONTROLLERS if = { limit = { 463 = { controller = { NOT = { has_war_with = ROOT } } } } 463 = { controller = { country_event = { id = NSB_soviet_foreign_politics_events.30 hours = 4 random_hours = 2 } custom_effect_tooltip = if_they_accept effect_tooltip = { ROOT = { transfer_state = 463 } #ALASKA add_opinion_modifier = { target = ROOT modifier = SOV_pressured_our_government } } } } } if = { limit = { 650 = { controller = { NOT = { has_war_with = ROOT } } } } 650 = { controller = { country_event = { id = NSB_soviet_foreign_politics_events.30 hours = 4 random_hours = 2 } custom_effect_tooltip = if_they_accept effect_tooltip = { ROOT = { transfer_state = 650 } #ATTU ISLAND add_opinion_modifier = { target = ROOT modifier = SOV_pressured_our_government } } } } } } } } focus = { id = SOV_the_fight_for_the_pacific icon = GFX_SOV_the_fight_for_the_pacific_ccp_2d_sov_compatibility prerequisite = { focus = SOV_recover_alaska } x = 0 y = 1 relative_position_id = SOV_recover_alaska cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { OR = { has_full_control_of_state = 408 has_full_control_of_state = 409 has_full_control_of_state = 637 } is_subject = no } search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { #VLADIVOSTOK if = { limit = { 408 = { is_controlled_by = ROOT free_building_slots = { building = dockyard size > 1 include_locked = yes } } } 408 = { add_extra_state_shared_building_slots = 2 add_building_construction = { type = dockyard level = 2 instant_build = yes } } } else_if = { limit = { 408 = { is_controlled_by = ROOT free_building_slots = { building = dockyard size > 0 include_locked = yes } } } 408 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } #KHABAROVSK if = { limit = { 409 = { is_controlled_by = ROOT free_building_slots = { building = dockyard size > 1 include_locked = yes } } } 409 = { add_extra_state_shared_building_slots = 2 add_building_construction = { type = dockyard level = 2 instant_build = yes } } } else_if = { limit = { 409 = { is_controlled_by = ROOT free_building_slots = { building = dockyard size > 0 include_locked = yes } } } 409 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } #KAMCHATKA (PETROPAVLOVSK + COMMANDER ISLANDS) if = { #Dockyards limit = { 637 = { is_controlled_by = ROOT #I know this is duplicated but tooltip is more readable this way free_building_slots = { building = dockyard size > 0 include_locked = yes } } } 637 = { add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } if = { #Naval bases limit = { 637 = { is_controlled_by = ROOT naval_base < 9 } } 637 = { add_building_construction = { type = naval_base level = 2 instant_build = yes province = 4728 } if = { limit = { ROOT = { is_special_project_completed = sp:sp_air_radar } radar_station < 1 } add_building_construction = { type = radar_station level = 1 instant_build = yes } } else = { custom_effect_tooltip = SOV_reinforce_western_naval_bases_radar_tt } } } custom_effect_tooltip = generic_skip_one_line_tt add_tech_bonus = { name = SOV_the_fight_for_the_pacific bonus = 1.0 uses = 2 category = cv_tech category = bc_tech category = bb_tech category = shbb_tech } } } focus = { id = SOV_baltic_security icon = GFX_focus_SOV_baltic_security prerequisite = { focus = SOV_the_comintern } x = 3 y = -1 relative_position_id = SOV_anti_capitalist_policies cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } bypass = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } NOT = { country_exists = EST country_exists = LAT country_exists = LIT } } available = { OR = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } } is_subject = no } search_filters = {} completion_reward = { if = { limit = { country_exists = EST } EST = { if = { limit = { ROOT = { has_government = fascism } } add_timed_idea = { idea = fascist_influence days = 1095 } } 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 } } hidden_effect = { country_event = { id = generic.1 } } } } if = { limit = { country_exists = LAT } LAT = { if = { limit = { ROOT = { has_government = fascism } } add_timed_idea = { idea = fascist_influence days = 1095 } } 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 } } hidden_effect = { country_event = { id = generic.1 } } } } if = { limit = { country_exists = LIT } LIT = { if = { limit = { ROOT = { has_government = fascism } } add_timed_idea = { idea = fascist_influence days = 1095 } } 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 } } hidden_effect = { country_event = { id = generic.1 } } } } } } focus = { id = SOV_respect_baltic_self_determination icon = GFX_SOV_respect_baltic_self_determination_ccp_2d_sov_compatibility prerequisite = { focus = SOV_baltic_security } x = -1 y = 1 relative_position_id = SOV_baltic_security cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_claims_in_baltic } bypass = { NOT = { country_exists = EST country_exists = LAT country_exists = LIT } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no } search_filters = {} completion_reward = { activate_targeted_decision = { target = EST decision = SOV_promote_ideology_rallies_baltic } activate_targeted_decision = { target = LAT decision = SOV_promote_ideology_rallies_baltic } activate_targeted_decision = { target = LIT decision = SOV_promote_ideology_rallies_baltic } activate_targeted_decision = { target = EST decision = SOV_pressure_country_government_baltic } activate_targeted_decision = { target = LAT decision = SOV_pressure_country_government_baltic } activate_targeted_decision = { target = LIT decision = SOV_pressure_country_government_baltic } } } focus = { id = SOV_claims_in_baltic icon = GFX_SOV_claims_in_baltic_ccp_2d_sov_compatibility prerequisite = { focus = SOV_baltic_security } x = 1 y = 1 relative_position_id = SOV_baltic_security cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 OR = { has_civil_war = yes date < 1939.1.1 } } } mutually_exclusive = { focus = SOV_respect_baltic_self_determination } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no } bypass = { all_state = { OR = { is_core_of = EST is_core_of = LAT is_core_of = LIT } NOT = { state = 188 } is_controlled_by = ROOT } } search_filters = {FOCUS_FILTER_ANNEXATION} completion_reward = { # Estonia custom_effect_tooltip = SOV_estonian_claimed_states_tt hidden_effect = { EST = { every_owned_state = { limit = { is_core_of = PREV } ROOT = { add_state_claim = PREV } } } } # Latvia custom_effect_tooltip = SOV_latvian_claimed_states_tt hidden_effect = { LAT = { every_owned_state = { limit = { is_core_of = PREV } ROOT = { add_state_claim = PREV } } } } # Lithuania custom_effect_tooltip = SOV_lithuanian_claimed_states_tt hidden_effect = { LIT = { every_owned_state = { limit = { is_core_of = PREV } ROOT = { add_state_claim = PREV } } } } #Activate targeted decisions activate_targeted_decision = { target = EST decision = SOV_send_ultimatum_to_country_baltic } activate_targeted_decision = { target = LAT decision = SOV_send_ultimatum_to_country_baltic } activate_targeted_decision = { target = LIT decision = SOV_send_ultimatum_to_country_baltic } add_named_threat = { threat = 1 name = SOV_claims_in_baltic } } } focus = { id = SOV_secure_leningrad icon = GFX_focus_generic_attack_finland prerequisite = { focus = SOV_respect_baltic_self_determination focus = SOV_claims_in_baltic } x = 0 y = 1 relative_position_id = SOV_respect_baltic_self_determination cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } dynamic = yes available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no } will_lead_to_war_with = FIN bypass = { OR = { has_full_control_of_state = 146 is_in_faction_with = FIN has_country_flag = FIN_finno_soviet_pact_flag } } search_filters = {FOCUS_FILTER_ANNEXATION} completion_reward = { add_state_claim = 146 # Karjala if= { limit = { 146 = { controller = { NOT = { has_war_with = ROOT } } } } 146 = { controller = { set_country_flag = SOV_ultimatum_sent_flag #Add it for AI strats reasons add_timed_idea = { idea = communist_pressure days = 365 } country_event = { id = finland.1 hours = 16 random_hours = 8 } } } custom_effect_tooltip = if_they_accept_tt event_option_tooltip = soviet.12.a } } } focus = { id = SOV_control_scandinavia icon = GFX_SOV_control_scandinavia_ccp_2d_sov_compatibility prerequisite = { focus = SOV_secure_leningrad } x = 0 y = 2 relative_position_id = SOV_secure_leningrad cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no } search_filters = {} completion_reward = { #Sweden if = { limit = { country_exists = SWE SWE = { NOT = { is_in_faction_with = ROOT } } } SWE = { add_timed_idea = { idea = communist_pressure days = 365 } hidden_effect = { country_event = { id = generic.1 } } } } #Norway if = { limit = { country_exists = NOR NOR = { NOT = { is_in_faction_with = ROOT } } } NOR = { add_timed_idea = { idea = communist_pressure days = 365 } hidden_effect = { country_event = { id = generic.1 } } } } #Denmark if = { limit = { country_exists = DEN DEN = { NOT = { is_in_faction_with = ROOT } } } DEN = { add_timed_idea = { idea = communist_pressure days = 365 } hidden_effect = { country_event = { id = generic.1 } } } } #Karelia if = { limit = { country_exists = KAR } hidden_effect = { country_event = { id = generic.1 } } } custom_effect_tooltip = SOV_control_scandinavia_decisions_tt hidden_effect = { activate_targeted_decision = { target = FIN decision = SOV_promote_ideology_rallies_nordic } activate_targeted_decision = { target = SWE decision = SOV_promote_ideology_rallies_nordic } activate_targeted_decision = { target = NOR decision = SOV_promote_ideology_rallies_nordic } activate_targeted_decision = { target = DEN decision = SOV_promote_ideology_rallies_nordic } activate_targeted_decision = { target = FIN decision = SOV_pressure_country_government_nordic } activate_targeted_decision = { target = SWE decision = SOV_pressure_country_government_nordic } activate_targeted_decision = { target = NOR decision = SOV_pressure_country_government_nordic } activate_targeted_decision = { target = DEN decision = SOV_pressure_country_government_nordic } } } } focus = { id = SOV_claims_on_poland icon = GFX_SOV_claims_on_poland_ccp_2d_sov_compatibility prerequisite = { focus = SOV_respect_baltic_self_determination focus = SOV_claims_in_baltic } x = 0 y = 1 relative_position_id = SOV_claims_in_baltic cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } ai_will_do = { factor = 10 modifier = { factor = 0 date < 1939.1.1 } modifier = { factor = 200 GER = { has_government = democratic } } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no } bypass = { OR = { has_idea = SOV_molotov_ribbentrop_pact NOT = { country_exists = POL } has_non_aggression_pact_with = POL has_guaranteed = POL AND = { OR = { owns_state = 91 91 = { is_claimed_by = ROOT } } OR = { owns_state = 93 93 = { is_claimed_by = ROOT } } OR = { owns_state = 94 94 = { is_claimed_by = ROOT } } OR = { owns_state = 95 95 = { is_claimed_by = ROOT } } OR = { owns_state = 96 96 = { is_claimed_by = ROOT } } OR = { owns_state = 89 89 = { is_claimed_by = ROOT } } OR = { owns_state = 784 784 = { is_claimed_by = ROOT } } } } } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { # REVISIT Covers Polish border, may want to add/remove some states add_state_claim = 96 add_state_claim = 95 add_state_claim = 94 add_state_claim = 93 add_state_claim = 91 add_state_claim = 89 add_state_claim = 784 add_named_threat = { threat = 3 name = SOV_claims_on_poland } every_other_country = { limit = { OR = { owns_state = 96 owns_state = 95 owns_state = 94 owns_state = 93 owns_state = 91 owns_state = 89 owns_state = 784 } } add_opinion_modifier = { target = SOV modifier = claimed_eastern_poland } } } } focus = { id = SOV_demand_eastern_poland icon = GFX_SOV_demand_eastern_poland_ccp_2d_sov_compatibility prerequisite = { focus = SOV_claims_on_poland } x = -1 y = 1 relative_position_id = SOV_claims_on_poland cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } ai_will_do = { factor = 10 modifier = { factor = 0 date < 1939.1.1 } modifier = { factor = 0.5 ai_irrationality > 20 } modifier = { factor = 0.5 ai_irrationality > 25 } modifier = { factor = 0.5 ai_irrationality > 30 } modifier = { factor = 0.1 ai_irrationality > 35 } } mutually_exclusive = { focus = SOV_offer_poland_protection } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no NOT = { is_in_faction_with = POL } NOT = { has_non_aggression_pact_with = POL } NOT = { has_guaranteed = POL } NOT = { has_war_with = POL } OR = { 96 = { is_owned_and_controlled_by = POL } 95 = { is_owned_and_controlled_by = POL } 94 = { is_owned_and_controlled_by = POL } 93 = { is_owned_and_controlled_by = POL } 91 = { is_owned_and_controlled_by = POL } 89 = { is_owned_and_controlled_by = POL } 784 = { is_owned_and_controlled_by = POL } } } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { POL = { country_event = { id = poland.2 } custom_effect_tooltip = needs_approval } effect_tooltip = { SOV = { if = { limit = { POL = { owns_state = 96 controls_state = 96 } } transfer_state = 96 } if = { limit = { POL = { owns_state = 95 controls_state = 95 } } transfer_state = 95 } if = { limit = { POL = { owns_state = 94 controls_state = 94 } } transfer_state = 94 } if = { limit = { POL = { owns_state = 93 controls_state = 93 } } transfer_state = 93 } if = { limit = { POL = { owns_state = 91 controls_state = 91 } } transfer_state = 91 } if = { limit = { POL = { owns_state = 89 controls_state = 89 } } transfer_state = 89 } if = { limit = { POL = { owns_state = 784 controls_state = 784 } } transfer_state = 784 } } } } } focus = { id = SOV_offer_poland_protection icon = GFX_focus_generic_polish_deal prerequisite = { focus = SOV_claims_on_poland } x = 1 y = 1 relative_position_id = SOV_claims_on_poland cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } ai_will_do = { factor = 10 modifier = { factor = 0 date < 1939.1.1 } modifier = { factor = 0.5 ai_irrationality < 24 } modifier = { factor = 0.5 ai_irrationality < 20 } modifier = { factor = 0.5 ai_irrationality < 15 } modifier = { factor = 0.1 ai_irrationality < 10 } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } country_exists = POL NOT = { has_war_with = POL } POL = { SOV_is_valid_subject = yes has_capitulated = no } is_subject = no } mutually_exclusive = { focus = SOV_demand_eastern_poland } search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { POL = { country_event = { id = poland.5 } custom_effect_tooltip = needs_approval effect_tooltip = { add_state_claim = 5 add_state_claim = 63 add_state_claim = 68 add_state_claim = 66 add_state_claim = 67 custom_effect_tooltip = SOV_offer_poland_protection_tt #This will also make Poland and Soviet be more more keen on cooperating } } effect_tooltip = { SOV = { if = { limit = { POL = { owns_state = 96 controls_state = 96 } } transfer_state = 96 } if = { limit = { POL = { owns_state = 95 controls_state = 95 } } transfer_state = 95 } if = { limit = { POL = { owns_state = 94 controls_state = 94 } } transfer_state = 94 } if = { limit = { POL = { owns_state = 93 controls_state = 93 } } transfer_state = 93 } if = { limit = { POL = { owns_state = 91 controls_state = 91 } } transfer_state = 91 } if = { limit = { POL = { owns_state = 89 controls_state = 89 } } transfer_state = 89 } if = { limit = { POL = { owns_state = 784 controls_state = 784 } } transfer_state = 784 } } } } } focus = { id = SOV_claim_on_bessarabia icon = GFX_focus_generic_attack_romania prerequisite = { focus = SOV_claims_on_poland } x = 3 y = 1 relative_position_id = SOV_claims_on_poland cost = 10 ai_will_do = { factor = 2.5 modifier = { factor = 0 OR = { date < 1939.1.1 has_civil_war = yes } } modifier = { factor = 200 GER = { has_government = democratic } } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } is_subject = no any_country = { owns_state = 78 controls_state = 78 } } bypass = { OR = { AND = { OR = { owns_state = 78 #Bessarabia 78 = { owner = { is_in_faction_with = ROOT } } } OR = { owns_state = 80 #Bucovina 80 = { owner = { is_in_faction_with = ROOT } } } OR = { owns_state = 766 #Southern Bessarabia 766 = { owner = { is_in_faction_with = ROOT } } } } any_country = { owns_state = 78 owns_state = 80 owns_state = 766 has_war_with = ROOT } } } will_lead_to_war_with = ROM search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { #This is now generic and will target any potential (multiple) controllers for these states. if = { limit = { 78 = { OWNER = { NOT = { is_in_faction_with = ROOT} } } } add_state_claim = 78 } if = { limit = { 766 = { OWNER = { NOT = { is_in_faction_with = ROOT} } } } add_state_claim = 766 } if = { limit = { 80 = { OWNER = { NOT = { is_in_faction_with = ROOT} } } } add_state_claim = 80 } add_named_threat = { threat = 1 name = SOV_claim_on_bessarabia } random_other_country = { limit = { owns_state = 78 } add_opinion_modifier = { target = SOV modifier = claimed_bessarabia } set_country_flag = SOV_added_claimed_bessarabia country_event = { id = romania.1 hours = 16 random_hours = 8 } } if = { #Done like this to prevent disgusting tooltip issues, but I hate it ok? limit = { any_other_country = { owns_state = 78 NOT = { owns_state = 80 } } } random_other_country = { limit = { owns_state = 80 NOT = { has_country_flag = SOV_added_claimed_bessarabia } } add_opinion_modifier = { target = SOV modifier = claimed_bucovina } country_event = { id = romania.1 hours = 16 random_hours = 8 } } } if = { limit = { AND = { any_other_country = { owns_state = 78 NOT = { owns_state = 766 } } any_other_country = { owns_state = 80 NOT = { owns_state = 766 } } } } random_other_country = { limit = { owns_state = 766 NOT = { has_country_flag = SOV_added_claimed_bessarabia } } add_opinion_modifier = { target = SOV modifier = claimed_bucovina } country_event = { id = romania.1 hours = 16 random_hours = 8 } } } } } focus = { id = SOV_demand_balkan_submission icon = GFX_SOV_demand_balkan_submission_ccp_2d_sov_compatibility prerequisite = { focus = SOV_claim_on_bessarabia } x = -1 y = 1 relative_position_id = SOV_claim_on_bessarabia cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_seek_balkan_cooperation } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } any_other_country = { BUL_is_balkan_nation = yes } is_subject = no } search_filters = {} completion_reward = { every_other_country = { limit = { BUL_is_balkan_nation = yes } add_timed_idea = { idea = communist_pressure days = 365 } hidden_effect = { country_event = { id = generic.1 } } } custom_effect_tooltip = SOV_demand_balkan_submission_decisions_tt hidden_effect = { activate_targeted_decision = { target = ROM decision = SOV_send_ultimatum_to_country_balkan } activate_targeted_decision = { target = BUL decision = SOV_send_ultimatum_to_country_balkan } activate_targeted_decision = { target = GRE decision = SOV_send_ultimatum_to_country_balkan } activate_targeted_decision = { target = YUG decision = SOV_send_ultimatum_to_country_balkan } activate_targeted_decision = { target = TUR decision = SOV_send_ultimatum_to_country_balkan } } } } focus = { id = SOV_seek_balkan_cooperation icon = GFX_focus_BUL_free_balkan_states prerequisite = { focus = SOV_claim_on_bessarabia } x = 1 y = 1 relative_position_id = SOV_claim_on_bessarabia cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_demand_balkan_submission } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } any_other_country = { BUL_is_balkan_nation = yes } is_subject = no } search_filters = {} completion_reward = { every_other_country = { limit = { BUL_is_balkan_nation = yes } add_timed_idea = { idea = communist_pressure days = 365 } hidden_effect = { country_event = { id = generic.1 } } } custom_effect_tooltip = SOV_seek_balkan_cooperation_decisions_tt hidden_effect = { activate_targeted_decision = { target = ROM decision = SOV_pressure_country_government_balkan } activate_targeted_decision = { target = BUL decision = SOV_pressure_country_government_balkan } activate_targeted_decision = { target = GRE decision = SOV_pressure_country_government_balkan } activate_targeted_decision = { target = YUG decision = SOV_pressure_country_government_balkan } activate_targeted_decision = { target = TUR decision = SOV_pressure_country_government_balkan } activate_targeted_decision = { target = ROM decision = SOV_promote_ideology_rallies_balkan } activate_targeted_decision = { target = BUL decision = SOV_promote_ideology_rallies_balkan } activate_targeted_decision = { target = GRE decision = SOV_promote_ideology_rallies_balkan } activate_targeted_decision = { target = YUG decision = SOV_promote_ideology_rallies_balkan } activate_targeted_decision = { target = TUR decision = SOV_promote_ideology_rallies_balkan } } } } focus = { id = SOV_middle_east_diplomacy icon = GFX_focus_TUR_treaty_of_saadabad prerequisite = { focus = SOV_the_comintern } x = 4 y = 0 relative_position_id = SOV_baltic_security cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } bypass = { NOT = { country_exists = IRQ country_exists = PER country_exists = AFG country_exists = SAU } } available = { is_subject = no } search_filters = {} completion_reward = { if = { limit = { country_exists = IRQ } IRQ = { if = { limit = { ROOT = { has_government = fascism } } add_timed_idea = { idea = fascist_influence_weak days = 1095 } } if = { limit = { ROOT = { has_government = democratic } } add_timed_idea = { idea = democratic_influence_weak days = 1095 } } if = { limit = { ROOT = { has_government = communism } } add_timed_idea = { idea = communist_influence_weak days = 1095 } } hidden_effect = { country_event = { id = generic.1 } } } } if = { limit = { country_exists = PER } PER = { if = { limit = { ROOT = { has_government = fascism } } add_timed_idea = { idea = fascist_influence_weak days = 1095 } } if = { limit = { ROOT = { has_government = democratic } } add_timed_idea = { idea = democratic_influence_weak days = 1095 } } if = { limit = { ROOT = { has_government = communism } } add_timed_idea = { idea = communist_influence_weak days = 1095 } } hidden_effect = { country_event = { id = generic.1 } } } } if = { limit = { country_exists = AFG } AFG = { if = { limit = { ROOT = { has_government = fascism } } add_timed_idea = { idea = fascist_influence_weak days = 1095 } } if = { limit = { ROOT = { has_government = democratic } } add_timed_idea = { idea = democratic_influence_weak days = 1095 } } if = { limit = { ROOT = { has_government = communism } } add_timed_idea = { idea = communist_influence_weak days = 1095 } } hidden_effect = { country_event = { id = generic.1 } } } } if = { limit = { country_exists = SAU } SAU = { if = { limit = { ROOT = { has_government = fascism } } add_timed_idea = { idea = fascist_influence_weak days = 1095 } } if = { limit = { ROOT = { has_government = democratic } } add_timed_idea = { idea = democratic_influence_weak days = 1095 } } if = { limit = { ROOT = { has_government = communism } } add_timed_idea = { idea = communist_influence_weak days = 1095 } } hidden_effect = { country_event = { id = generic.1 } } } } } } focus = { id = SOV_the_southern_thrust icon = GFX_SOV_the_southern_thrust_ccp_2d_sov_compatibility prerequisite = { focus = SOV_middle_east_diplomacy } x = -1 y = 1 relative_position_id = SOV_middle_east_diplomacy cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } ai_will_do = { factor = 1 modifier = { has_war_with = GER factor = 0 } modifier = { AND = { has_war_with = ENG surrender_progress > 0.3 } factor = 0 } modifier = { has_war_with = RAJ factor = 5 } } bypass = { PER = { NOT = { owns_state = 419 } NOT = { owns_state = 420 } NOT = { owns_state = 266 } NOT = { owns_state = 416 } } IRQ = { NOT = { owns_state = 676 } NOT = { owns_state = 291 } } AFG = { NOT = { owns_state = 267 } NOT = { owns_state = 415 } } } available = { OR = { country_exists = IRQ country_exists = PER country_exists = AFG country_exists = SAU } is_subject = no } mutually_exclusive = { focus = SOV_support_afghan_ideology } will_lead_to_war_with = PER will_lead_to_war_with = IRQ will_lead_to_war_with = AFG search_filters = { FOCUS_FILTER_ANNEXATION } completion_reward = { if = { limit = { PER = { OR = { owns_state = 419 owns_state = 420 owns_state = 266 owns_state = 416 } } } create_wargoal = { type = take_state_focus target = PER expire = 0 generator = { 419 420 266 416} } } if = { limit = { IRQ = { OR = { owns_state = 676 owns_state = 291 } } } create_wargoal = { type = take_state_focus target = IRQ expire = 0 generator = { 676 291 } } } if = { limit = { AFG = { OR = { owns_state = 267 owns_state = 415 } } } create_wargoal = { type = take_state_focus target = AFG expire = 0 generator = { 267 415 } } } ENG = { add_opinion_modifier = { target = SOV modifier = middle_east_expansionism } } FRA = { add_opinion_modifier = { target = SOV modifier = middle_east_expansionism } } USA = { add_opinion_modifier = { target = SOV modifier = middle_east_expansionism } } } } focus = { id = SOV_support_afghan_ideology icon = GFX_focus_generic_befriend_afghanistan prerequisite = { focus = SOV_middle_east_diplomacy } x = 1 y = 1 relative_position_id = SOV_middle_east_diplomacy cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_the_southern_thrust } bypass = { NOT = { country_exists = AFG } } available = { NOT = { has_war_with = AFG } is_subject = no } search_filters = {} completion_reward = { activate_targeted_decision = { target = AFG decision = SOV_pressure_country_government_middle_east } activate_targeted_decision = { target = AFG decision = SOV_promote_ideology_rallies_middle_east } } } focus = { id = SOV_preemptive_invasion_of_iran icon = GFX_focus_generic_attack_iran prerequisite = { focus = SOV_support_afghan_ideology } x = 0 y = 1 relative_position_id = SOV_support_afghan_ideology cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } modifier = { factor = 0 PER = { has_government = ROOT } } } will_lead_to_war_with = PER available = { country_exists = PER NOT = { has_war_with = PER } NOT = { is_in_faction_with = PER} is_subject = no any_enemy_country = { is_major = yes } } search_filters = {} completion_reward = { PER = { set_country_flag = SOV_ultimatum_sent_flag country_event = { id = NSB_soviet_foreign_politics_events.210 hours = 16 random_hours = 8 } } effect_tooltip = { custom_effect_tooltip = if_they_accept_tt ROOT = { puppet = PER } custom_effect_tooltip = if_they_refuse_tt effect_tooltip = { activate_mission = SOV_preparations_for_operation_countenance custom_effect_tooltip = SOV_preparations_for_operation_countenance_tt } custom_effect_tooltip = SOV_preemptive_invasion_of_iran_tt } } } focus = { id = SOV_the_threat_from_the_land_of_the_rising_sun icon = GFX_focus_attack_japan prerequisite = { focus = SOV_the_comintern } x = 5 y = 0 relative_position_id = SOV_middle_east_diplomacy cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_reconcile_japan } available = { any_country = { SOV_is_free_chinese_tag = yes has_war_with = JAP } is_subject = no } search_filters = {} completion_reward = { JAP = { add_opinion_modifier = { target = SOV modifier = SOV_supported_china_bad } } every_other_country = { limit = { SOV_is_free_chinese_tag = yes } if = { limit = { ROOT = { has_government = communism } } add_ideas = SOV_support_in_china_communism } else_if = { limit = { ROOT = { has_government = democratic } } add_ideas = SOV_support_in_china_democratic } else_if = { limit = { ROOT = { has_government = fascism } } add_ideas = SOV_support_in_china_fascism } else_if = { limit = { ROOT = { has_government = neutrality } } add_ideas = SOV_support_in_china_neutrality } add_opinion_modifier = { target = SOV modifier = SOV_supported_china_good } } } } focus = { id = SOV_the_gobi_gambit icon = GFX_focus_generic_befriend_sinkiang prerequisite = { focus = SOV_the_threat_from_the_land_of_the_rising_sun } x = -2 y = 1 relative_position_id = SOV_the_threat_from_the_land_of_the_rising_sun cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } modifier = { factor = 10 has_subject = SIK } } mutually_exclusive = { focus = SOV_two_red_flags focus = SOV_support_the_kuomintang } available = { #SOV controls the states in which railway lines will be built #TASHKENT 405 = { is_controlled_by_ROOT_or_subject = yes } #KYZYL ORDA 404 = { is_controlled_by_ROOT_or_subject = yes } #PAMIR 732 = { is_controlled_by_ROOT_or_subject = yes } #ALMA-ATA 586 = { is_controlled_by_ROOT_or_subject = yes } OR = { AND = { #Relevant states under Soviet control controls_state = 617 #URUMQI controls_state = 618 #DZUNGARIA } SIK = { #Relevant states under Sinkiang control NOT = { has_war_with = ROOT } controls_state = 617 #URUMQI controls_state = 618 #DZUNGARIA } } is_subject = no } search_filters = { FOCUS_FILTER_INDUSTRY } completion_reward = { hidden_effect = { #Decrease SIK's desire to join Chinese faction (and other AI strategies) SOV_approach_sinkiang_diplomacy_effect = yes SIK = { add_ai_strategy = { #This is added in Gobi Gambit + all 3 investment decisions type = alliance id = SOV value = 4 } } } if = { #If SOV controls the relevant states (for whatever weird reason -.-), then insta-build limit = { controls_state = 617 #URUMQI controls_state = 618 #DZUNGARIA } # Tashkent - Frunze - Alma-Ata - Urumqi build_railway = { path = { 1459 10148 10366 12397 12340 12640 7706 12583 4224 1591 10547 10619 12529 7866 1783 10674 4709 } #1840 12526 4770 4709 } #Supply Hub in Alma-Ata 586 = { add_building_construction = { type = supply_node level = 1 province = 1591 instant_build = yes } } custom_effect_tooltip = SOV_sinkiang_decisions_available_tt } else = { #If SIK in control of them SIK = { country_event = { id = NSB_soviet_foreign_politics_events.270 hours = 6 random_hours = 6 } } # IF THEY ACCEPT custom_effect_tooltip = if_they_accept_tt effect_tooltip = { add_opinion_modifier = { target = SIK modifier = SOV_complied_with_our_demands } # Tashkent - Frunze - Alma-Ata - Urumqi build_railway = { path = { 1459 10148 10366 12397 12340 12640 7706 12583 4224 1591 10547 10619 12529 7866 1783 10674 4709 } } #Supply Hub in Alma-Ata 586 = { add_building_construction = { type = supply_node level = 1 province = 1591 instant_build = yes } } custom_effect_tooltip = SOV_sinikiang_influence_cg_tt_sov custom_effect_tooltip = SOV_sinkiang_decisions_available_tt } # IF THEY REFUSE custom_effect_tooltip = if_they_refuse_tt effect_tooltip = { add_opinion_modifier = { target = SIK modifier = SOV_rejected_our_demands } # Tashkent - Frunze - Alma-Ata build_railway = { path = { 1459 10148 10366 12397 12340 12640 7706 12583 4224 1591 } } #Supply Hub in Alma-Ata 586 = { add_building_construction = { type = supply_node level = 1 province = 1591 instant_build = yes } } custom_effect_tooltip = SOV_sinikiang_influence_refuse_tt } } custom_effect_tooltip = SOV_volunteers_allowed_sinkiang_tt } } focus = { id = SOV_two_red_flags icon = GFX_focus_chi_cooperation_with_the_communists prerequisite = { focus = SOV_the_threat_from_the_land_of_the_rising_sun } x = 2 y = 0 relative_position_id = SOV_the_gobi_gambit cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } modifier = { factor = 0 is_ally_with = SIK NOT = { is_ally_with = PRC } } } mutually_exclusive = { focus = SOV_the_gobi_gambit focus = SOV_support_the_kuomintang } bypass = { OR = { NOT = { country_exists = PRC } owns_state = 622 } } available = { has_government = communism NOT = { has_war_with = PRC } is_subject = no } search_filters = {} completion_reward = { PRC = { add_opinion_modifier = { #Good relations with Mao target = ROOT modifier = SOV_cooperating_with_us } add_relation_modifier = { target = ROOT modifier = SOV_soviet_chinese_relations } every_other_country = { limit = { SOV_is_free_chinese_tag = yes } add_opinion_modifier = { #Bad Relations with other Chinese tags target = ROOT modifier = SOV_cooperating_with_other } } } activate_targeted_decision = { target = PRC decision = SOV_send_infantry_equipment_asia } custom_effect_tooltip = SOV_volunteers_allowed_mao_tt } } focus = { id = SOV_support_the_kuomintang icon = GFX_focus_chi_cooperation_with_the_nationalists prerequisite = { focus = SOV_the_threat_from_the_land_of_the_rising_sun } x = 2 y = 0 relative_position_id = SOV_two_red_flags cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } modifier = { factor = 0 is_ally_with = SIK NOT = { is_ally_with = CHI } } } historical_ai = { # Setting this so that they can actually go down the Gobi gambit if CHI doesn't exist. OR = { country_exists = CHI NOT = { has_subject = SIK } } } mutually_exclusive = { focus = SOV_the_gobi_gambit focus = SOV_two_red_flags } bypass = { NOT = { country_exists = CHI } } available = { NOT = { has_completed_focus = SOV_the_left_opposition } NOT = { has_war_with = CHI } is_subject = no } search_filters = {} completion_reward = { CHI = { add_opinion_modifier = { #Good relations with Mao target = ROOT modifier = SOV_cooperating_with_us } add_relation_modifier = { target = ROOT modifier = SOV_soviet_chinese_relations } every_other_country = { limit = { SOV_is_free_chinese_tag = yes } add_opinion_modifier = { #Bad Relations with other Chinese tags target = ROOT modifier = SOV_cooperating_with_other } } } activate_targeted_decision = { target = CHI decision = SOV_send_infantry_equipment_asia } custom_effect_tooltip = SOV_volunteers_allowed_kuomintang_tt } } focus = { id = SOV_intervention_in_china icon = GFX_SOV_intervention_in_china_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_gobi_gambit focus = SOV_two_red_flags focus = SOV_support_the_kuomintang } x = 1 y = 1 relative_position_id = SOV_the_gobi_gambit cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } modifier = { factor = 0 any_enemy_country = { is_major = yes } } modifier = { factor = 0.5 is_historical_focus_on = yes } } available = { is_subject = no } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_intervention_in_china_wargoal_tt hidden_effect = { every_country = { limit = { SOV_is_chinese_tag = yes exists = yes NOT = { is_subject_of = ROOT } NOT = { is_in_faction_with = ROOT } } if = { limit = { tag = SIK ROOT = { has_completed_focus = SOV_the_gobi_gambit } } } else_if = { limit = { tag = PRC ROOT = { has_completed_focus = SOV_two_red_flags } } } else_if = { limit = { tag = CHI ROOT = { has_completed_focus = SOV_support_the_kuomintang } } } else = { ROOT = { create_wargoal = { type = puppet_wargoal_focus target = PREV } } } } } if = { limit = { has_completed_focus = SOV_the_gobi_gambit country_exists = SIK } every_state = { #Set cores for SIK limit = { is_core_of = CHI } add_core_of = SIK } } } } focus = { id = SOV_prepare_a_war_with_japan icon = GFX_focus_AST_war_japan prerequisite = { focus = SOV_the_gobi_gambit focus = SOV_two_red_flags focus = SOV_support_the_kuomintang } x = 1 y = 1 relative_position_id = SOV_two_red_flags cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } bypass = { has_war_with = JAP } available = { surrender_progress < 0.01 country_exists = JAP NOT = { JAP = { is_in_faction_with = ROOT } } is_subject = no } search_filters = {} completion_reward = { add_timed_idea = { idea = SOV_preparations_for_soviet_japanese_war days = 365 } custom_effect_tooltip = generic_skip_one_line_tt unlock_decision_tooltip = { decision = SOV_cancel_the_japanese_resource_rights_to_sakhalin_decision show_effect_tooltip = yes } custom_effect_tooltip = generic_skip_one_line_tt every_country = { limit = { is_in_faction_with = ROOT SOV_is_chinese_tag = yes is_in_faction_with = ROOT } hidden_effect = { country_event = NSB_soviet_foreign_politics_events.251 } effect_tooltip = { add_timed_idea = { idea = SOV_preparations_for_soviet_japanese_war_china days = 365 } } } } } focus = { id = SOV_end_the_khalkhin_gol_conflict icon = GFX_goal_generic_occupy_states_ongoing_war prerequisite = { focus = SOV_prepare_a_war_with_japan } x = -1 y = 1 relative_position_id = SOV_prepare_a_war_with_japan cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_recover_the_kuril_islands } available = { surrender_progress < 0.01 country_exists = JAP NOT = { is_in_faction_with = JAP } NOT = { has_war_together_with = JAP } 761 = { #Hulunbuir controller = { NOT = { is_in_faction_with = ROOT } } } is_subject = no } search_filters = {} completion_reward = { custom_effect_tooltip = SOV_end_the_khalkhin_gol_conflict_wargoal_tt hidden_effect = { every_country = { limit = { OR = { tag = JAP AND = { SOV_is_chinese_tag = yes is_in_faction_with = JAP } } } ROOT = { create_wargoal = { type = puppet_wargoal_focus target = PREV } } } } add_state_claim = 761 #Hulunbuir custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { has_idea = SOV_preparations_for_soviet_japanese_war } remove_ideas = SOV_preparations_for_soviet_japanese_war every_country = { limit = { is_in_faction_with = ROOT has_idea = SOV_preparations_for_soviet_japanese_war_china } remove_ideas = SOV_preparations_for_soviet_japanese_war_china } } add_timed_idea = { idea = SOV_soviet_japanese_reckoning days = 180 } every_country = { limit = { is_in_faction_with = ROOT OR = { SOV_is_chinese_tag = yes capital_scope = { is_on_continent = asia } } } hidden_effect = { country_event = NSB_soviet_foreign_politics_events.252 } effect_tooltip = { add_timed_idea = { idea = SOV_soviet_japanese_reckoning_china days = 180 } } } custom_effect_tooltip = generic_skip_one_line_tt if = { limit = { is_in_faction_with = MON 612 = { controller = { NOT = { is_in_faction_with = ROOT } } } } MON = { add_state_claim = 612 #Chahar add_state_claim = 611 #South Chahar } } } } focus = { id = SOV_recover_the_kuril_islands icon = GFX_goal_generic_political_pressure prerequisite = { focus = SOV_prepare_a_war_with_japan } x = 1 y = 1 relative_position_id = SOV_prepare_a_war_with_japan cost = 5 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_end_the_khalkhin_gol_conflict } available = { surrender_progress < 0.01 country_exists = JAP NOT = { JAP = { is_in_faction_with = ROOT } } JAP = { controls_state = 555 } NOT = { has_war_with = JAP } is_subject = no } search_filters = {} completion_reward = { create_wargoal = { type = take_state_focus target = JAP expire = 0 generator = { 537 555 } } if = { limit = { has_idea = SOV_preparations_for_soviet_japanese_war } remove_ideas = SOV_preparations_for_soviet_japanese_war every_country = { limit = { is_in_faction_with = ROOT has_idea = SOV_preparations_for_soviet_japanese_war_china } remove_ideas = SOV_preparations_for_soviet_japanese_war_china } } add_timed_idea = { idea = SOV_soviet_japanese_reckoning days = 180 } every_country = { limit = { is_in_faction_with = ROOT SOV_is_chinese_tag = yes is_in_faction_with = ROOT } hidden_effect = { country_event = NSB_soviet_foreign_politics_events.252 } effect_tooltip = { add_timed_idea = { idea = SOV_soviet_japanese_reckoning_china days = 180 } } } custom_effect_tooltip = SOV_recover_the_kuril_islands_decisions_tt } } focus = { id = SOV_reconcile_japan icon = GFX_focus_chi_collaboration_with_the_japanese prerequisite = { focus = SOV_the_comintern } x = 3 y = 0 relative_position_id = SOV_the_threat_from_the_land_of_the_rising_sun cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } mutually_exclusive = { focus = SOV_the_threat_from_the_land_of_the_rising_sun } bypass = { OR = { NOT = { country_exists = JAP } 655 = { is_owned_and_controlled_by = JAP } AND = { JAP = { has_government = ROOT } 537 = { is_owned_and_controlled_by = ROOT } } } } available = { NOT = { has_war_with = JAP } is_subject = no 655 = { is_owned_and_controlled_by = ROOT } 537 = { is_owned_and_controlled_by = JAP } } search_filters = {} completion_reward = { JAP = { country_event = { id = NSB_soviet_foreign_politics_events.262 hours = 12 random_hours = 6 } custom_effect_tooltip = if_they_accept effect_tooltip = { add_opinion_modifier = { target = SOV modifier = border_conflict_reconciled } transfer_state = 655 diplomatic_relation = { country = SOV relation = non_aggression_pact active = yes } } } } } focus = { id = SOV_spheres_of_influence_in_china icon = GFX_goal_generic_position_armies prerequisite = { focus = SOV_reconcile_japan } x = 1 y = 1 relative_position_id = SOV_reconcile_japan cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { is_subject = no } search_filters = {FOCUS_FILTER_ANNEXATION} completion_reward = { if = { limit = { SIK = { NOT = { has_government = ROOT } } } create_wargoal = { type = puppet_wargoal_focus target = SIK } } else = { SIK = { country_event = { id = NSB_soviet_foreign_politics_events.200 hours = 6 random_hours = 2 } } } } } focus = { id = SOV_soviet_japanese_pact_against_usa_focus icon = GFX_goal_generic_military_deal prerequisite = { focus = SOV_reconcile_japan } x = 0 y = 4 relative_position_id = SOV_reconcile_japan cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 has_civil_war = yes } } available = { NOT = { has_country_flag = SOV_paranoia_system_active_flag } country_exists = JAP NOT = { has_war_with = JAP } is_subject = no JAP = { SOV_is_valid_subject = yes } } search_filters = {} completion_reward = { #Event JAP = { country_event = { id = NSB_soviet_foreign_politics_events.263 hours = 8 random_hours = 4 } } #Potential effects custom_effect_tooltip = if_they_accept effect_tooltip = { #War if = { limit = { JAP = { has_war_with = USA } NOT = { SOV = { has_war_with = USA } } } SOV = { add_to_war = { targeted_alliance = JAP enemy = USA hostility_reason = asked_to_join } } } else_if = { limit = { SOV = { has_war_with = USA } NOT = { JAP = { has_war_with = USA } } } JAP = { add_to_war = { targeted_alliance = SOV enemy = USA hostility_reason = asked_to_join } } } else_if = { limit = { NOT = { SOV = { has_war_with = USA } } NOT = { JAP = { has_war_with = USA } } } SOV = { declare_war_on = { target = USA type = annex_everything } } JAP = { add_to_war = { targeted_alliance = SOV enemy = USA hostility_reason = asked_to_join } } } #Diplo stuff JAP = { if = { limit = { NOT = { has_non_aggression_pact_with = SOV } } diplomatic_relation = { country = SOV relation = non_aggression_pact active = yes } } } #Claims 463 = { add_claim_by = SOV } #Alaska 650 = { add_claim_by = SOV } #Atu Island 632 = { add_claim_by = JAP } #Wake Island 631 = { add_claim_by = JAP } #Midway Island 629 = { add_claim_by = JAP } #Hawaii 630 = { add_claim_by = JAP } #Johnston Atoll 727 = { add_claim_by = JAP } #Line Islands 642 = { add_claim_by = JAP } #Phoenix Island 638 = { add_claim_by = JAP } #Guam #Relations stuff JAP = { add_opinion_modifier = { target = SOV modifier = SOV_soviet_japanese_pact_against_usa } } #Targeted NS SOV = { add_timed_idea = { idea = SOV_soviet_japanese_anti_usa_pact days = 365 } } JAP = { add_timed_idea = { idea = SOV_soviet_japanese_anti_usa_pact days = 365 } } } } } # # ## # # ## ### ## # # ### ## ### ### ### ## # # ## # # ## ## # # ## # # # # # # # # # # # # # # # # # # ## # # # # # # # # # # # ## #### ### # #### # # # ### ### #### # ## # #### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # ## # # ### ## # ### # # # # # # ## # # focus = { id = SOV_beaten_but_not_defeated icon = GFX_SOV_beaten_but_not_defeated_ccp_2d_sov_compatibility x = 61 y = 0 relative_position_id = SOV_the_path_of_marxism_leninism offset = { x = -44 y = 0 trigger = { #All commie branches hide except for Stalinist has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = SOV_beaten_but_not_defeated } } offset = { x = -10 y = 0 trigger = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } has_completed_focus = SOV_the_hands_do #Stalinist branch hides } } allow_branch = { has_dlc = "No Step Back" if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } NOT = { has_completed_focus = SOV_the_path_of_marxism_leninism } } } mutually_exclusive = { focus = SOV_the_path_of_marxism_leninism } cost = 5 ai_will_do = { factor = 1 } available = { custom_trigger_tooltip = { tooltip = SOV_no_major_purge_tt check_variable = { SOV_great_purge_counter < 1 } } } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { custom_effect_tooltip = SOV_beaten_but_not_defeated_tt add_political_power = 25 hidden_effect = { country_event = { id = NSB_soviet_paranoia_system_events.01 # Trigger paranoia if not already active hours = 6 random_hours = 24 } set_variable = { SOV_exiles_army_support = 0.1 } set_variable = { SOV_exiles_navy_support = 0.02 } set_variable = { SOV_exiles_air_support = 0.02 } # Launch the first Stalinist counter measures SOV_launch_stalinist_counter_measure = yes SOV_get_centre_military_support = yes } if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } mark_focus_tree_layout_dirty = yes } } } focus = { id = SOV_unification_of_the_exiles icon = GFX_goal_generic_major_alliance prerequisite = { focus = SOV_beaten_but_not_defeated } x = -4 y = 1 relative_position_id = SOV_beaten_but_not_defeated available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { add_political_power = 75 SOV_paranoia_low_increase_effect = yes custom_effect_tooltip = SOV_unification_of_the_exiles_tt } } focus = { id = SOV_womens_fascist_movement icon = GFX_focus_SOV_womens_fascist_movement prerequisite = { focus = SOV_unification_of_the_exiles } x = -2 y = 1 relative_position_id = SOV_unification_of_the_exiles cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {FOCUS_FILTER_MANPOWER FOCUS_FILTER_INDUSTRY} completion_reward = { add_popularity = { ideology = fascism popularity = 0.05 } custom_effect_tooltip = SOV_fascist_womens_movement_tt effect_tooltip = { add_ideas = SOV_fascist_womens_movement_idea } set_country_flag = SOV_fascist_womens_movement_flag } } focus = { id = SOV_the_true_tsars icon = GFX_focus_SOV_the_true_tsars prerequisite = { focus = SOV_unification_of_the_exiles } x = 0 y = 1 relative_position_id = SOV_unification_of_the_exiles cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {FOCUS_FILTER_MANPOWER FOCUS_FILTER_STABILITY} completion_reward = { add_popularity = { ideology = fascism popularity = 0.05 } add_popularity = { ideology = neutrality popularity = 0.1 } custom_effect_tooltip = SOV_the_true_tsars_tt effect_tooltip = { add_ideas = SOV_the_true_tsars_idea } set_country_flag = SOV_the_true_tsars_flag } } focus = { id = SOV_national_unification icon = GFX_SOV_national_unification_ccp_2d_sov_compatibility prerequisite = { focus = SOV_unification_of_the_exiles } x = 2 y = 1 relative_position_id = SOV_unification_of_the_exiles cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_INDUSTRY} completion_reward = { add_popularity = { ideology = fascism popularity = 0.15 } add_popularity = { ideology = neutrality popularity = 0.1 } custom_effect_tooltip = SOV_national_unification_tt set_country_flag = SOV_national_unification_flag } } focus = { id = SOV_embrace_the_black_hundreds icon = GFX_focus_generic_little_entente prerequisite = { focus = SOV_womens_fascist_movement focus = SOV_the_true_tsars focus = SOV_national_unification } x = 0 y = 1 relative_position_id = SOV_the_true_tsars cost = 5 ai_will_do = { factor = 1 } available = { SOV_has_selected_hq = yes SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {} completion_reward = { set_country_flag = SOV_embrace_the_black_hundreds_flag custom_effect_tooltip = SOV_embrace_the_black_hundreds_tt add_political_power = 50 } } focus = { id = SOV_covert_operations icon = GFX_goal_generic_more_territorial_claims prerequisite = { focus = SOV_embrace_the_black_hundreds } x = -3 y = 1 relative_position_id = SOV_embrace_the_black_hundreds cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_INDUSTRY} completion_reward = { add_political_power = 50 custom_effect_tooltip = SOV_covert_operations_tt } } focus = { id = SOV_muster_the_old_guard icon = GFX_SOV_muster_the_old_guard_ccp_2d_sov_compatibility prerequisite = { focus = SOV_embrace_the_black_hundreds } x = -1 y = 1 relative_position_id = SOV_embrace_the_black_hundreds cost = 10 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {} completion_reward = { custom_effect_tooltip = SOV_muster_the_old_guard_tt add_popularity = { ideology = neutrality popularity = 0.1 } set_country_flag = SOV_muster_the_old_guard_flag } } focus = { id = SOV_approach_semyonov icon = GFX_focus_SOV_approach_semyonov prerequisite = { focus = SOV_embrace_the_black_hundreds } x = 3 y = 1 relative_position_id = SOV_embrace_the_black_hundreds cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { } available_if_capitulated = yes search_filters = {} completion_reward = { custom_effect_tooltip = SOV_approach_semyonov_tt add_command_power = 25 } } focus = { id = SOV_fascist_youth_union icon = GFX_SOV_fascist_youth_union_ccp_2d_sov_compatibility prerequisite = { focus = SOV_embrace_the_black_hundreds } x = 1 y = 1 relative_position_id = SOV_embrace_the_black_hundreds cost = 10 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {} completion_reward = { set_country_flag = SOV_fascist_youth_union_flag custom_effect_tooltip = SOV_fascist_youth_union_tt add_popularity = { ideology = fascism popularity = 0.05 } } } focus = { id = SOV_tolkachi icon = GFX_goal_generic_intelligence_exchange prerequisite = { focus = SOV_muster_the_old_guard focus = SOV_fascist_youth_union } x = 1 y = 1 relative_position_id = SOV_muster_the_old_guard cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {} completion_reward = { set_country_flag = SOV_tolkachi_flag custom_effect_tooltip = SOV_tolkachi_tt } } focus = { id = SOV_south_manchuria_railway icon = GFX_focus_SOV_south_manchuria_railway prerequisite = { focus = SOV_muster_the_old_guard focus = SOV_fascist_youth_union } x = 1 y = 1 relative_position_id = SOV_fascist_youth_union cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { } available_if_capitulated = yes search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { SOV_paranoia_low_increase_effect = yes custom_effect_tooltip = SOV_sway_the_railway_workers_tt set_country_flag = SOV_supply_hub_flag } } focus = { id = SOV_organize_wreckers icon = GFX_focus_SOV_organize_wreckers prerequisite = { focus = SOV_muster_the_old_guard focus = SOV_fascist_youth_union } x = -1 y = 1 relative_position_id = SOV_muster_the_old_guard cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { } available_if_capitulated = yes search_filters = {FOCUS_FILTER_SOV_POLITICAL_PARANOIA} completion_reward = { set_country_flag = SOV_organize_wreckers_flag SOV_paranoia_medium_increase_effect = yes custom_effect_tooltip = SOV_organize_wreckers_tt } } focus = { id = SOV_the_eyes_fear icon = GFX_SOV_the_eyes_fear_ccp_2d_sov_compatibility prerequisite = { focus = SOV_tolkachi focus = SOV_organize_wreckers focus = SOV_south_manchuria_railway } x = 0 y = 1 relative_position_id = SOV_tolkachi cost = 5 ai_will_do = { factor = 1 } available = { SOV = { OR = { fascism > 0.25 neutrality > 0.25 } } SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {} completion_reward = { #create unit after war begins - 15 infantry, split between ukraine and siberia (7 and 8) set_country_flag = Sov_the_eyes_fear_flag custom_effect_tooltip = SOV_the_eyes_fear_tt } } focus = { id = SOV_the_hands_do icon = GFX_SOV_the_hands_do_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_eyes_fear } x = 0 y = 1 relative_position_id = SOV_the_eyes_fear cost = 5 ai_will_do = { factor = 1 } available = { SOV_soviet_civil_war_not_started = yes } bypass = { OR = { has_global_flag = SOV_soviet_civil_war_over has_global_flag = SOV_soviet_civil_war } } available_if_capitulated = yes search_filters = {} completion_reward = { country_event = { id = NSB_Soviet_fascist_civil_war.001 hours = 6 random_hours = 6 } SOV_opposition_support_high_increase_effect = yes SOV_increase_opposition_army_support = yes custom_effect_tooltip = SOV_the_hands_do_tt if = { limit = { has_game_rule = { rule = obsolete_focus_branches_visibility option = HIDE } } mark_focus_tree_layout_dirty = yes } } } focus = { id = SOV_call_for_aid icon = GFX_SOV_call_for_aid_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_hands_do } x = -3 y = 1 relative_position_id = SOV_the_hands_do cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {} completion_reward = { every_other_country = { limit = { is_major = yes OR = { has_government = fascism AND = { tag = JAP has_government = neutrality } AND = { tag = ITA has_government = neutrality } AND = { tag = GER has_government = neutrality } AND = { tag = ENG has_government = neutrality } } } add_timed_idea = { idea = SOV_national_brotherhood_idea days = 730 } add_opinion_modifier = { target = ROOT modifier = SOV_support_for_exiles } add_ai_strategy = { type = send_volunteers_desire id = SOV value = 400 } add_ai_strategy = { type = send_lend_lease_desire id = SOV value = 300 } add_relation_rule_override = { target = SOV can_send_volunteers = yes } } } } focus = { id = SOV_request_imperial_protection icon = GFX_SOV_request_imperial_protection_ccp_2d_sov_compatibility prerequisite = { focus = SOV_call_for_aid } x = 0 y = 1 relative_position_id = SOV_call_for_aid cost = 10 ai_will_do = { factor = 1 modifier = { factor = 0 # No point asking for japanese help if we are winning, unless we get stuck surrender_progress < 0.1 SOS = { surrender_progress > 0.5 } date < 1938.6.1 } modifier = { factor = 0 # Never ask if we are close to winning, unless we are close to 1940 SOS = { surrender_progress > 0.75 } date < 1939.8.1 } modifier = { factor = 0 # Don't risk getting dragged into Chinese war unless desperate surrender_progress < 0.5 JAP = { has_war = yes } } } available = { has_global_flag = SOV_soviet_civil_war OR = { has_country_flag = SOV_CSW_transfer_vladivostok_flag has_country_flag = SOV_CSW_transfer_sakhalin_flag } } available_if_capitulated = yes search_filters = {} completion_reward = { JAP = { country_event = { id = NSB_soviet_civil_war_common.121 days = 2 random_days = 3 } } custom_effect_tooltip = SOV_request_imperial_protection_tt } } focus = { id = SOV_sabotage_behind_enemy_lines icon = GFX_focus_prc_infiltration prerequisite = { focus = SOV_the_hands_do } x = -1 y = 1 relative_position_id = SOV_the_hands_do cost = 5 ai_will_do = { factor = 1 } available = { has_global_flag = SOV_soviet_civil_war } available_if_capitulated = yes search_filters = {} completion_reward = { unlock_decision_tooltip = { decision = SOV_sabotage_behind_enemy_lines_decision show_effect_tooltip = yes show_modifiers = no } #hidden_effect = { # every_state = { # limit = { # OR = { # is_owned_by = SOV # is_owned_by = SOS # } # # } # damage_units = { # state = THIS # limit = { tag = SOS } # org_damage = 0.15 # str_damage = 0.01 # ratio = yes # army = yes # } # } #} } } focus = { id = SOV_aristocratic_investments icon = GFX_SOV_aristocratic_investments_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_hands_do } x = 1 y = 1 relative_position_id = SOV_the_hands_do cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { add_timed_idea = { idea = SOV_aristocratic_investments_idea days = 730 } random_owned_controlled_state = { add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } set_state_flag = SOV_national_unification_factory_bonus_flag } random_owned_controlled_state = { limit = { Not = { has_state_flag = SOV_national_unification_factory_bonus_flag} } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } #TODO jo remove this once the civil war ends } } focus = { id = SOV_consolidate_power icon = GFX_SOV_consolidate_power_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_hands_do } x = 0 y = 2 relative_position_id = SOV_the_hands_do cost = 5 ai_will_do = { factor = 1 } available = { has_global_flag = SOV_soviet_civil_war_over } available_if_capitulated = no search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY} completion_reward = { add_timed_idea = { idea = SOV_consolidate_power days = 365 } custom_effect_tooltip = SOV_consolidate_power_tt } } focus = { id = SOV_rebuild_the_nation icon = GFX_SOV_rebuild_the_nation_ccp_2d_sov_compatibility prerequisite = { focus = SOV_consolidate_power } x = 0 y = 1 relative_position_id = SOV_consolidate_power cost = 5 ai_will_do = { factor = 1 } available = { has_war = no } available_if_capitulated = no search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_timed_idea = { idea = SOV_rebuild_the_nation days = 540 } } } focus = { id = SOV_bringing_breakaways_back_to_the_fold icon = GFX_SOV_bringing_breakaways_back_to_the_fold_ccp_2d_sov_compatibility prerequisite = { focus = SOV_consolidate_power } x = -2 y = 1 relative_position_id = SOV_consolidate_power mutually_exclusive = { focus = SOV_offer_autonomy_to_former_soviet_republics } cost = 10 ai_will_do = { factor = 1 } available = { any_country = { has_country_flag = SOV_breakaway_country_flag } } available_if_capitulated = no search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { every_country = { limit = { has_country_flag = SOV_breakaway_country_flag } ROOT = { create_wargoal = { type = take_core_state target = PREV } } } } } focus = { id = SOV_offer_autonomy_to_former_soviet_republics icon = GFX_SOV_offer_autonomy_to_former_soviet_republics_ccp_2d_sov_compatibility prerequisite = { focus = SOV_consolidate_power } x = -4 y = 1 relative_position_id = SOV_consolidate_power mutually_exclusive = { focus = SOV_bringing_breakaways_back_to_the_fold } cost = 5 ai_will_do = { factor = 1 } available = { any_country = { has_country_flag = SOV_breakaway_country_flag } } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { every_country = { limit = { has_country_flag = SOV_breakaway_country_flag NOT = { is_in_faction_with = ROOT } } country_event = { id = NSB_soviet_nationalist.002 days = 3 random_days = 3 } } } } focus = { id = SOV_restore_the_glory_of_the_motherland icon = GFX_SOV_restore_the_glory_of_the_motherland_ccp_2d_sov_compatibility prerequisite = { focus = SOV_rebuild_the_nation } x = 0 y = 1 relative_position_id = SOV_rebuild_the_nation cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { add_ideas = SOV_restore_the_glory_of_the_motherland } } ### ### # ### ## ### ## # # ## ## ### # # ### ### # # # # # # # # # # # # # # # # # # {~._.~} ### ## # # # ## # # # # # # # # # # ## ## ( Y ) # # # # # # # # # # # # # # # # # # # ()~*~() # # ### ### ### ## ### ## ## ## ## # ## # # (_)-(_) focus = { id = SOV_article_124 icon = GFX_focus_generic_treaty prerequisite = { focus = SOV_beaten_but_not_defeated } x = 4 y = 1 relative_position_id = SOV_beaten_but_not_defeated cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY} completion_reward = { add_ideas = SOV_church_power_1 } } focus = { id = SOV_reopen_novodevichi icon = GFX_goal_generic_dangerous_deal prerequisite = { focus = SOV_article_124 } x = 0 y = 2 relative_position_id = SOV_article_124 cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL} available = { has_full_control_of_state = 219 } completion_reward = { add_political_power = 75 add_popularity = { ideology = communism popularity = -0.1 } } } focus = { id = SOV_rebuild_the_savior_cathedral icon = GFX_focus_SOV_rebuild_the_savior_cathedral prerequisite = { focus = SOV_reopen_novodevichi } x = -2 y = 2 relative_position_id = SOV_reopen_novodevichi cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {FOCUS_FILTER_STABILITY FOCUS_FILTER_INDUSTRY} available = { has_full_control_of_state = 219 } completion_reward = { add_stability = 0.1 add_timed_idea = { idea = SOV_rebuild_the_savior_cathedral days = 365 } } } focus = { id = SOV_the_synod icon = GFX_goal_generic_national_unity prerequisite = { focus = SOV_reopen_novodevichi } x = 2 y = 2 relative_position_id = SOV_reopen_novodevichi cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { SOV_increase_church_power = yes } } focus = { id = SOV_the_declaration icon = GFX_goal_generic_forceful_treaty prerequisite = { focus = SOV_the_synod } x = 0 y = 2 relative_position_id = SOV_the_synod cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {} completion_reward = { custom_effect_tooltip = SOV_the_declaration_tt } } focus = { id = SOV_return_of_the_rocor icon = GFX_SOV_return_of_the_rocor_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_declaration } prerequisite = { focus = SOV_consolidate_power } prerequisite = { focus = SOV_reformalize_the_role_of_the_patriarchate } x = 0 y = 3 relative_position_id = SOV_the_declaration cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { custom_effect_tooltip = SOV_the_return_of_the_rocor_tt add_popularity = { ideology = communism popularity = -0.1 } } } focus = { id = SOV_reformalize_the_role_of_the_patriarchate icon = GFX_SOV_reformalize_the_role_of_the_patriarchate_ccp_2d_sov_compatibility prerequisite = { focus = SOV_rebuild_the_savior_cathedral } prerequisite = { focus = SOV_the_synod } x = 2 y = 4 relative_position_id = SOV_rebuild_the_savior_cathedral cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { SOV_increase_church_power = yes } } focus = { id = SOV_reconvene_the_zemsky_sobor icon = GFX_focus_SOV_zemsky_sobor prerequisite = { focus = SOV_consolidate_power } prerequisite = { focus = SOV_reformalize_the_role_of_the_patriarchate } x = 4 y = 2 relative_position_id = SOV_consolidate_power cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no available = { has_civil_war = no } search_filters = { FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY } completion_reward = { add_ideas = SOV_romanov_spirit_idea custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = SOV_reconvene_the_zemsky_sobor_tt country_event = NSB_soviet_fascist_tsarist.14 SOV_aleksandr_kazembek = { clr_character_flag = SOV_exiled_flag } SOV_anastasy_vonsyatsky = { clr_character_flag = SOV_exiled_flag } custom_effect_tooltip = generic_skip_one_line_tt custom_effect_tooltip = SOV_recognized_country_tt set_rule = { can_join_factions = yes } custom_effect_tooltip = SOV_autonomous_soviet_republics_tt } } #focus = { # id = SOV_constitutional_monarchy # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_reconvene_the_zemsky_sobor } # x = 6 # y = 1 # relative_position_id = SOV_reconvene_the_zemsky_sobor # cost = 10 # ai_will_do = { # factor = 1 # } # available = { # has_civil_war = no # } # # available_if_capitulated = yes # # completion_reward = { # add_popularity = { # ideology = fascism # popularity = -0.3 # } # add_popularity = { # ideology = democratic # popularity = 0.2 # } # } #} # #focus = { # id = SOV_the_sobors_choice # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_constitutional_monarchy } # x = 0 # y = 1 # relative_position_id = SOV_constitutional_monarchy # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # recruit_character = SOV_tsar_vsevolod_ivanovich # set_politics = { # ruling_party = neutrality # elections_allowed = yes # } # add_popularity = { # ideology = democratic # popularity = .1 # } # add_popularity = { # ideology = neutrality # popularity = .1 # } # } #} ### ## ## ### ## ### # # ### # # # ## ### # # # # # # # # # # # # # # # # # # # ### # # # # # # # # # # # # # #### ### # # # # # # # # # # # # # # # # # # # # ## ## # ## ### # ### ### # # # # # # focus = { id = SOV_dismantle_the_zemsky_sobor icon = GFX_SOV_dismantle_the_zemsky_sobor_ccp_2d_sov_compatibility prerequisite = { focus = SOV_reconvene_the_zemsky_sobor } mutually_exclusive = { focus = SOV_romanov_reconstruction } x = 5 y = 1 relative_position_id = SOV_reconvene_the_zemsky_sobor cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_INDUSTRY} completion_reward = { hidden_effect = { set_temp_variable = { var = dismantle_the_zemsky_sobor_var value = party_popularity@fascism } subtract_from_temp_variable = { var = dismantle_the_zemsky_sobor_var value = 1 } multiply_temp_variable = { var = dismantle_the_zemsky_sobor_var value = 0.5 } } custom_effect_tooltip = SOV_dismantle_the_zemsky_sobor_tt add_stability = dismantle_the_zemsky_sobor_var retire_character = SOV_tsar_vladimir_kirillovich add_ideas = SOV_tsar_vladimir_i set_politics = { ruling_party = fascism elections_allowed = yes } add_popularity = { ideology = fascism popularity = 0.15 } promote_character = SOV_konstantin_rodzayevsky add_ideas = SOV_national_brotherhood_idea news_event = { id = nsb_news.401 hours = 12 } IF = { limit = { has_idea = SOV_uncertain_counter_revolution_idea } remove_ideas = SOV_uncertain_counter_revolution_idea } } } focus = { id = SOV_russian_corporate_state icon = GFX_SOV_russian_corporate_state_ccp_2d_sov_compatibility prerequisite = { focus = SOV_dismantle_the_zemsky_sobor } x = 2 y = 1 relative_position_id = SOV_dismantle_the_zemsky_sobor cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY} complete_tooltip = { every_state = { limit = { has_state_flag = SOV_russian_corporate_state_2IC } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } add_ideas = SOV_russian_corporate_state } completion_reward = { random_owned_controlled_state = { limit = { free_building_slots = { building = industrial_complex size > 1 include_locked = yes } is_core_of = ROOT } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } set_state_flag = SOV_russian_corporate_state_2IC } random_owned_controlled_state = { limit = { free_building_slots = { building = industrial_complex size > 1 include_locked = yes } NOT = { has_state_flag = SOV_russian_corporate_state_2IC } is_core_of = ROOT } add_extra_state_shared_building_slots = 2 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } set_state_flag = SOV_russian_corporate_state_2IC } add_ideas = SOV_russian_corporate_state } } focus = { id = SOV_romanov_reconstruction icon = GFX_SOV_romanov_reconstruction_ccp_2d_sov_compatibility prerequisite = { focus = SOV_reconvene_the_zemsky_sobor } mutually_exclusive = { focus = SOV_dismantle_the_zemsky_sobor } x = -5 y = 1 relative_position_id = SOV_reconvene_the_zemsky_sobor cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { add_timed_idea = { idea = SOV_romanov_reconstruction days = 730 } IF = { limit = { has_idea = SOV_uncertain_counter_revolution_idea } remove_ideas = SOV_uncertain_counter_revolution_idea } } } focus = { id = SOV_capital_of_the_tsars icon = GFX_SOV_capital_of_the_tsars_ccp_2d_sov_compatibility prerequisite = { focus = SOV_romanov_reconstruction } x = -2 y = 1 relative_position_id = SOV_romanov_reconstruction cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { if = { limit = { 195 = { is_capital = no } } set_capital = { state = 195 } } 195 = { if = { limit = { free_building_slots = { building = industrial_complex size > 5 include_locked = yes } } add_extra_state_shared_building_slots = 6 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } else_if = { limit = { free_building_slots = { building = industrial_complex size > 4 include_locked = yes } } add_extra_state_shared_building_slots = 5 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } else_if = { limit = { free_building_slots = { building = industrial_complex size > 3 include_locked = yes } } add_extra_state_shared_building_slots = 4 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } else_if = { limit = { free_building_slots = { building = industrial_complex size > 2 include_locked = yes } } add_extra_state_shared_building_slots = 3 add_building_construction = { type = industrial_complex level = 2 instant_build = yes } } else_if = { limit = { 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 } } add_building_construction = { type = anti_air_building level = 2 instant_build = yes } custom_effect_tooltip = generic_skip_one_line_tt add_dynamic_modifier = { modifier = SOV_capital_of_the_tsars } } } } focus = { id = SOV_church_candidates icon = GFX_focus_generic_diplomatic_treaty prerequisite = { focus = SOV_romanov_reconstruction focus = SOV_dismantle_the_zemsky_sobor } x = 5 y = 1 relative_position_id = SOV_romanov_reconstruction cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = yes search_filters = {FOCUS_FILTER_POLITICAL} completion_reward = { if = { limit = { NOT = { has_completed_focus = SOV_dismantle_the_zemsky_sobor } } add_popularity = { ideology = neutrality popularity = 0.1 } SOV_increase_church_power = yes } if = { limit = { has_completed_focus = SOV_dismantle_the_zemsky_sobor } add_stability = 0.05 SOV_increase_church_power = yes } } } focus = { id = SOV_reinstitute_the_mestnichestvo icon = GFX_SOV_reinstitute_the_mestnichestvo_ccp_2d_sov_compatibility prerequisite = { focus = SOV_romanov_reconstruction } x = -5 y = 1 relative_position_id = SOV_romanov_reconstruction cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_MANPOWER FOCUS_FILTER_INDUSTRY} completion_reward = { add_ideas = SOV_honest_serfdom_idea } } focus = { id = SOV_the_iron_wall_of_russian_resolve icon = GFX_SOV_the_iron_wall_of_russian_resolve_ccp_2d_sov_compatibility prerequisite = { focus = SOV_reinstitute_the_mestnichestvo } x = -1 y = 1 relative_position_id = SOV_reinstitute_the_mestnichestvo cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH} completion_reward = { random_owned_controlled_state = { limit = { 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_breakthrough_progress = { specialization = specialization_land value = 1 } add_tech_bonus = { name = SOV_the_iron_wall_of_russian_resolve ahead_reduction = 1 # was 2 bonus = 1 uses = 1 technology = super_heavy_tank_chassis } add_ideas = SOV_the_iron_wall_of_russian_resolve } } focus = { id = SOV_my_brothers_keeper icon = GFX_focus_SOV_my_brothers_keeper prerequisite = { focus = SOV_reinstitute_the_mestnichestvo } prerequisite = { focus = SOV_the_triple_entente } x = 0 y = 2 relative_position_id = SOV_reinstitute_the_mestnichestvo cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_ANNEXATION} available = { is_subject = no } completion_reward = { every_other_country = { limit = { OR = { tag = DEN tag = GRE tag = GER tag = NOR #tag = SPA #tag = ENG #tag = ROM } NOT = { is_in_faction_with = ROOT } } SOV = { create_wargoal = { type = puppet_wargoal_focus target = PREV } } } } } focus = { id = SOV_the_rightful_heir_to_the_empire icon = GFX_SOV_the_rightful_heir_to_the_empire_ccp_2d_sov_compatibility prerequisite = { focus = SOV_church_candidates } mutually_exclusive = { focus = SOV_panslavic_nationalism } x = 0 y = 2 relative_position_id = SOV_church_candidates cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {} available = { is_subject = no } completion_reward = { random_country = { limit = { owns_state = 2 } SOV = { create_wargoal = { type = take_state_focus target = PREV generator = { 2 } } } } random_country = { limit = { owns_state = 454 } SOV = { create_wargoal = { type = take_state_focus target = PREV generator = { 454 } } } } random_country = { limit = { owns_state = 797 } SOV = { create_wargoal = { type = take_state_focus target = PREV generator = { 797 } } } } add_state_claim = 2 add_state_claim = 797 add_state_claim = 454 } } focus = { id = SOV_the_third_rome icon = GFX_focus_SOV_third_rome prerequisite = { focus = SOV_the_rightful_heir_to_the_empire } x = 0 y = 1 relative_position_id = SOV_the_rightful_heir_to_the_empire cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no available = { is_subject = no OR = { has_government = neutrality has_government = fascism } } search_filters = {FOCUS_FILTER_POLITICAL FOCUS_FILTER_STABILITY FOCUS_FILTER_WAR_SUPPORT} completion_reward = { add_ideas = SOV_legacy_of_rome set_cosmetic_tag = SOV_ROME custom_effect_tooltip = generic_skip_one_line_tt remove_ideas = SOV_tsar_vladimir_i custom_effect_tooltip = SOV_the_third_rome_tt if = { limit = { has_government = neutrality } promote_character = SOV_metropolitan_meletius set_country_leader_name = { ideology = neutrality name = SOV_patriarch_meletius } } else_if = { limit = { has_government = fascism } add_country_leader_role = { character = SOV_metropolitan_meletius promote_leader = yes country_leader = { ideology = fascism_ideology expire = "1953.3.1.1" traits = { defier_of_the_sun_god supreme_representative_of_god_on_earth } } } set_country_leader_name = { ideology = fascism name = SOV_patriarch_meletius } } custom_effect_tooltip = SOV_the_third_rome_tt_2 country_event = NSB_soviet_fascist_tsarist.15 } } focus = { id = SOV_vengeance_for_the_yoke icon = GFX_focus_generic_attack_mongolia prerequisite = { focus = SOV_romanov_reconstruction focus = SOV_dismantle_the_zemsky_sobor } x = -3 y = 1 relative_position_id = SOV_dismantle_the_zemsky_sobor cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = no will_lead_to_war_with = MON search_filters = { FOCUS_FILTER_ANNEXATION } available = { is_subject = no MON = { exists = yes NOT = { OR = { is_in_faction_with = ROOT is_subject_of = ROOT } } } } completion_reward = { create_wargoal = { type = annex_everything target = MON } } } focus = { id = SOV_reclaim_uryankhay_krai icon = GFX_focus_generic_attack_tannu_tuva dynamic = yes prerequisite = { focus = SOV_romanov_reconstruction focus = SOV_dismantle_the_zemsky_sobor } x = -7 y = 1 relative_position_id = SOV_dismantle_the_zemsky_sobor cost = 5 ai_will_do = { factor = 1 } available_if_capitulated = no will_lead_to_war_with = TAN search_filters = { FOCUS_FILTER_ANNEXATION } available = { is_subject = no TAN = { exists = yes NOT = { OR = { is_in_faction_with = ROOT is_subject_of = ROOT } } } } completion_reward = { create_wargoal = { type = annex_everything target = TAN } } } focus = { id = SOV_westward_bound icon = GFX_SOV_westward_bound_ccp_2d_sov_compatibility prerequisite = { focus = SOV_romanov_reconstruction focus = SOV_dismantle_the_zemsky_sobor } x = 1 y = 1 relative_position_id = SOV_romanov_reconstruction cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY} available = { has_full_control_of_state = 213 has_full_control_of_state = 214 has_full_control_of_state = 208 } completion_reward = { # Murmansk 213 = { if = { limit = { free_building_slots = { building = infrastructure size > 1 } } add_building_construction = { type = infrastructure level = 2 instant_build = yes } } else_if = { limit = { free_building_slots = { building = infrastructure size > 0 } } add_building_construction = { type = infrastructure level = 1 instant_build = yes } } add_building_construction = { type = naval_base level = 1 province = 3134 instant_build = yes } if = { limit = { air_base < 8 } add_building_construction = { type = air_base level = 3 instant_build = yes } } else_if = { limit = { air_base < 9 } add_building_construction = { type = air_base level = 2 instant_build = yes } } else_if = { limit = { air_base < 10 } add_building_construction = { type = air_base level = 1 instant_build = yes } } add_building_construction = { type = anti_air_building level = 2 instant_build = yes } } # Onega 215 = { if = { limit = { free_building_slots = { building = infrastructure size > 0 } } add_building_construction = { type = infrastructure level = 1 instant_build = yes } } } # Olonets 216 = { if = { limit = { free_building_slots = { building = infrastructure size > 0 } } add_building_construction = { type = infrastructure level = 1 instant_build = yes } } } # Arkhangelsk 214 = { if = { limit = { 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 = { free_building_slots = { building = infrastructure size > 0 } } add_building_construction = { type = infrastructure level = 1 instant_build = yes } } } #Supply Hub in Luga 208 = { add_building_construction = { type = supply_node level = 1 province = 181 instant_build = yes } } #Volkhov-Murmansk build_railway = { path = { 3134 11117 9201 6181 3121 9162 3008 86 3189 9159 94 6021 11175 155 11092 3033 9118 11159 90 6057 11153 11059 70 } } #Leningrad-Volkhov build_railway = { path = { 9197 11068 } } #Vologda-Arkhangelsk build_railway = { path = { 9131 9199 75 72 9130 3130 11171 312 3338 } } } } focus = { id = SOV_the_triple_entente icon = GFX_SOV_the_triple_entente_ccp_2d_sov_compatibility prerequisite = { focus = SOV_westward_bound } prerequisite = { focus = SOV_romanov_reconstruction } x = -4 y = 1 relative_position_id = SOV_westward_bound cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {} available = { is_subject = no is_in_faction = no ENG = { NOT = { has_government = communism } NOT = { has_completed_focus = ENG_alliance_with_germany } } FRA = { NOT = { has_government = communism } NOT = { has_completed_focus = FRA_establish_spheres_of_influence } } } bypass = { ENG = { OR = { AND = { is_in_faction = yes is_faction_leader = no } has_war_with = ROOT is_in_faction_with = ROOT } } FRA = { OR = { AND = { is_in_faction = yes is_faction_leader = no } has_war_with = ROOT is_in_faction_with = ROOT } } } completion_reward = { if = { limit = { ENG = { is_faction_leader = yes NOT = { has_war_with = ROOT } } } ENG = { country_event = { id = NSB_soviet_fascist_tsarist.16 hours = 6 } } } else_if = { limit = { FRA = { is_faction_leader = yes NOT = { has_war_with = ROOT } } } FRA = { country_event = { id = NSB_soviet_fascist_tsarist.16 hours = 6 } } } else_if = { limit = { ENG = { is_faction_leader = no } FRA = { is_faction_leader = no } OR = { ENG = { is_in_faction = no NOT = { has_war_with = ROOT } } FRA = { is_in_faction = no NOT = { has_war_with = ROOT } } } } create_faction_from_template = { template = faction_template_allies name = TRIPLE_ENTENTE } ENG = { country_event = { id = NSB_soviet_fascist_tsarist.16 hours = 6 } } FRA = { country_event = { id = NSB_soviet_fascist_tsarist.16 hours = 6 } } } else = { create_faction_from_template = { template = faction_template_allies name = TRIPLE_ENTENTE } } } } focus = { id = SOV_our_slavic_commitments icon = GFX_SOV_our_slavic_commitments_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_triple_entente } mutually_exclusive = { focus = SOV_panslavic_nationalism } x = 0 y = 1 relative_position_id = SOV_the_triple_entente cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_POLITICAL} available = { is_subject = no } completion_reward = { add_ideas = SOV_our_slavic_commitments give_guarantee = CZE give_guarantee = POL give_guarantee = YUG give_guarantee = BUL news_event = { id = nsb_news.406 hours = 12 } } } focus = { id = SOV_the_old_enemy icon = GFX_SOV_the_old_enemy_ccp_2d_sov_compatibility prerequisite = { focus = SOV_westward_bound } x = -2 y = 1 relative_position_id = SOV_westward_bound cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no will_lead_to_war_with = SWE search_filters = {} available = { is_subject = no } bypass = { SWE = { OR = { exists = no has_war_with = SOV is_subject_of = SOV } } } completion_reward = { create_wargoal = { type = annex_everything target = SWE } } } focus = { id = SOV_secure_finland icon = GFX_SOV_secure_finland_ccp_2d_sov_compatibility prerequisite = { focus = SOV_westward_bound } x = 0 y = 1 relative_position_id = SOV_westward_bound cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no will_lead_to_war_with = FIN search_filters = {} available = { is_subject = no } bypass = { FIN = { OR = { exists = no has_war_with = SOV is_subject_of = SOV } } } completion_reward = { create_wargoal = { type = annex_everything target = FIN } } } focus = { id = SOV_secure_the_baltics icon = GFX_SOV_secure_the_baltics_ccp_2d_sov_compatibility prerequisite = { focus = SOV_westward_bound } x = 2 y = 1 relative_position_id = SOV_westward_bound cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no will_lead_to_war_with = EST will_lead_to_war_with = LIT will_lead_to_war_with = LAT search_filters = {} available = { is_subject = no } bypass = { EST = { OR = { exists = no has_war_with = SOV is_subject_of = SOV } } LAT = { OR = { exists = no has_war_with = SOV is_subject_of = SOV } } LIT = { OR = { exists = no has_war_with = SOV is_subject_of = SOV } } } completion_reward = { create_wargoal = { type = annex_everything target = EST } create_wargoal = { type = annex_everything target = LIT } create_wargoal = { type = annex_everything target = LAT } } } focus = { id = SOV_panslavic_nationalism icon = GFX_focus_SOV_panslavic_nationalism prerequisite = { focus = SOV_secure_the_baltics } prerequisite = { focus = SOV_secure_finland } prerequisite = { focus = SOV_the_old_enemy } mutually_exclusive = { focus = SOV_the_rightful_heir_to_the_empire focus = SOV_our_slavic_commitments } x = 0 y = 1 relative_position_id = SOV_secure_finland cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_ANNEXATION} completion_reward = { effect_tooltip = { every_country = { limit = { OR = { tag = POL tag = BUL tag = YUG tag = CZE } NOT = { has_war_with = ROOT } } country_event = { id = NSB_soviet_fascist_tsarist.1 days = 3 } ROOT = { annex_country = { target = PREV transfer_troops = yes } } } } custom_effect_tooltip = SOV_panslavic_nationalism_tt hidden_effect = { every_country = { limit = { OR = { tag = POL tag = BUL tag = YUG tag = CZE } NOT = { has_war_with = ROOT } } country_event = { id = NSB_soviet_fascist_tsarist.1 days = 3 } } } every_country = { limit = { NOT = { tag = POL tag = BUL tag = YUG tag = CZE tag = ROOT } OR = { controls_state = 9 controls_state = 69 controls_state = 972 controls_state = 70 controls_state = 71 controls_state = 72 controls_state = 73 controls_state = 74 controls_state = 75 controls_state = 664 controls_state = 48 controls_state = 211 controls_state = 212 controls_state = 801 controls_state = 97 controls_state = 85 controls_state = 762 controls_state = 90 controls_state = 88 controls_state = 92 controls_state = 91 controls_state = 95 controls_state = 94 controls_state = 86 controls_state = 98 controls_state = 89 controls_state = 10 controls_state = 96 controls_state = 784 controls_state = 93 controls_state = 87 controls_state = 104 controls_state = 109 controls_state = 103 controls_state = 804 controls_state = 802 controls_state = 106 controls_state = 970 controls_state = 105 controls_state = 108 controls_state = 107 controls_state = 102 controls_state = 853 controls_state = 803 controls_state = 45 controls_state = 764 controls_state = 736 controls_state = 852 controls_state = 163 } } every_state = { limit = { OR = { state = 9 state = 69 state = 972 state = 70 state = 71 state = 72 state = 73 state = 74 state = 75 state = 664 state = 48 state = 211 state = 212 state = 801 state = 97 state = 85 state = 762 state = 90 state = 88 state = 92 state = 91 state = 95 state = 94 state = 86 state = 98 state = 89 state = 10 state = 96 state = 784 state = 93 state = 87 state = 104 state = 109 state = 103 state = 804 state = 802 state = 106 state = 970 state = 105 state = 108 state = 107 state = 102 state = 853 state = 803 state = 45 state = 764 state = 736 state = 852 state = 163 } } ROOT = { add_state_claim = PREV } } # Changed the outcome from getting war goals to getting claims. # ROOT = { # create_wargoal = { # type = take_state_focus # generator = { 9 69 70 71 72 73 74 75 664 48 211 212 801 97 85 762 90 88 92 91 95 94 86 98 89 10 96 784 93 87 104 109 103 804 802 106 105 108 107 102 853 803 #45 764 736 852 163 } # target = PREV # } # } } } } focus = { id = SOV_the_fate_of_romania icon = GFX_SOV_the_fate_of_romania_ccp_2d_sov_compatibility prerequisite = { focus = SOV_our_slavic_commitments focus = SOV_panslavic_nationalism } x = 2 y = 1 relative_position_id = SOV_our_slavic_commitments cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no will_lead_to_war_with = ROM search_filters = {FOCUS_FILTER_ANNEXATION} available = { is_subject = no country_exists = ROM } completion_reward = { create_wargoal = { type = annex_everything target = ROM } } } focus = { id = SOV_pacify_the_rim icon = GFX_SOV_pacify_the_rim_ccp_2d_sov_compatibility prerequisite = { focus = SOV_dismantle_the_zemsky_sobor focus = SOV_romanov_reconstruction } x = -1 y = 1 relative_position_id = SOV_dismantle_the_zemsky_sobor cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY} available = { IF = { limit = { NOT = { has_country_flag = SOV_CSW_transfer_vladivostok_flag } } has_full_control_of_state = 408 } ELSE = { OR = { has_country_flag = SOV_CSW_transfer_vladivostok_flag has_full_control_of_state = 408 } } has_full_control_of_state = 409 has_full_control_of_state = 657 } completion_reward = { IF = { limit = { 408 = { is_owned_and_controlled_by = ROOT } } 408 = { if = { limit = { 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_building_construction = { type = anti_air_building level = 2 instant_build = yes } } } 409 = { if = { limit = { air_base < 10 } add_building_construction = { type = air_base level = 1 instant_build = yes } } if = { limit = { free_building_slots = { building = arms_factory size > 1 include_locked = yes } NOT = { 408 = { is_owned_and_controlled_by = ROOT } } } add_extra_state_shared_building_slots = 2 add_building_construction = { type = arms_factory level = 2 instant_build = yes } } } 657 = { if = { limit = { air_base < 8 } add_building_construction = { type = air_base level = 3 instant_build = yes } } } # Krasnoyarsk-Irkutsk build_railway = { path = { 12691 12621 1876 1813 10549 10661 12540 4797 } } # Chita-Belogorsk build_railway = { path = { 4677 7725 10559 12543 7851 10678 12657 7763 4725 } } } } focus = { id = SOV_eastern_expansion icon = GFX_SOV_eastern_expansion_ccp_2d_sov_compatibility prerequisite = { focus = SOV_pacify_the_rim } prerequisite = { focus = SOV_dismantle_the_zemsky_sobor } x = 5 y = 1 relative_position_id = SOV_pacify_the_rim cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY} completion_reward = { add_ideas = SOV_siberian_lessons every_owned_state = { limit = { OR = { state = 822 state = 875 state = 562 state = 874 state = 637 } free_building_slots = { building = infrastructure size > 0 } } add_building_construction = { type = infrastructure level = 1 instant_build = yes } } 637 = { if = { limit = { air_base < 8 } add_building_construction = { type = air_base level = 3 instant_build = yes } } add_building_construction = { type = naval_base level = 3 instant_build = yes province = 4728 } add_building_construction = { type = anti_air_building level = 2 instant_build = yes } } 408 = { add_building_construction = { type = naval_base level = 2 instant_build = yes province = 957 } } } } focus = { id = SOV_intervention_in_the_americas icon = GFX_focus_SOV_ivan_plays_baseball prerequisite = { focus = SOV_eastern_expansion } x = 1 y = 1 relative_position_id = SOV_eastern_expansion mutually_exclusive = { focus = SOV_into_central_asia } cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {} available = { is_subject = no } completion_reward = { if = { limit = { is_in_faction = no } create_faction_from_template = { template = faction_template_generic_dominance name = NPTO } } every_other_country = { limit = { capital_scope = { is_on_continent = south_america } NOT = { has_government = fascism } } add_timed_idea = { idea = SOV_russian_political_influence days = 730 } } custom_effect_tooltip = SOV_intervention_in_the_americas_tt hidden_effect = { every_other_country = { limit = { capital_scope = { is_on_continent = south_america } NOT = { has_government = fascism } } country_event = { id = NSB_soviet_fascist_tsarist.4 days = 3 random_days = 4 } set_country_flag = SOV_political_influence_americas_flag } } every_other_country = { limit = { capital_scope = { is_on_continent = south_america } has_government = fascism is_in_faction = no } country_event = { id = NSB_soviet_fascist_tsarist.5 days = 3 random_days = 4 } } news_event = { id = nsb_news.403 days = 35 random_days = 34 } } } focus = { id = SOV_restore_the_old_eastern_empire icon = GFX_focus_SOV_old_eastern_empire prerequisite = { focus = SOV_intervention_in_the_americas } x = 0 y = 1 relative_position_id = SOV_intervention_in_the_americas cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = { FOCUS_FILTER_ANNEXATION } available = { is_subject = no } completion_reward = { create_wargoal = { type = take_state_focus target = CAN generator = { 471 739 740 473 864 } } create_wargoal = { type = take_state_focus target = USA generator = { 463 386 385 } } } } focus = { id = SOV_into_central_asia icon = GFX_SOV_into_central_asia_ccp_2d_sov_compatibility prerequisite = { focus = SOV_eastern_expansion } x = -1 y = 1 relative_position_id = SOV_eastern_expansion mutually_exclusive = { focus = SOV_intervention_in_the_americas } cost = 10 ai_will_do = { factor = 1 } will_lead_to_war_with = AFG will_lead_to_war_with = PER available_if_capitulated = no search_filters = {FOCUS_FILTER_ANNEXATION} available = { is_subject = no } completion_reward = { create_wargoal = { type = annex_everything target = AFG } create_wargoal = { type = annex_everything target = PER } } } focus = { id = SOV_the_last_break_southward icon = GFX_SOV_the_last_break_southward_ccp_2d_sov_compatibility prerequisite = { focus = SOV_into_central_asia } x = 0 y = 1 relative_position_id = SOV_into_central_asia cost = 10 ai_will_do = { factor = 1 } will_lead_to_war_with = IRQ will_lead_to_war_with = TUR will_lead_to_war_with = FRA will_lead_to_war_with = RAJ will_lead_to_war_with = PAK available_if_capitulated = no search_filters = {FOCUS_FILTER_ANNEXATION} available = { is_subject = no } completion_reward = { create_wargoal = { type = annex_everything target = IRQ } if = { limit = { NOT = { has_completed_focus = SOV_the_rightful_heir_to_the_empire } } create_wargoal = { type = annex_everything target = TUR } } create_wargoal = { type = take_state_focus target = FRA generator = { 553 554 677 680 799 } } if = { limit = { country_exists = PAK } create_wargoal = { type = annex_everything target = PAK } } create_wargoal = { type = annex_everything target = RAJ } } } focus = { id = SOV_rebuild_the_far_eastern_fleet icon = GFX_SOV_rebuild_the_far_eastern_fleet_ccp_2d_sov_compatibility prerequisite = { focus = SOV_pacify_the_rim } x = 0 y = 1 relative_position_id = SOV_pacify_the_rim cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_NAVY_XP} completion_reward = { navy_experience = 10 408 = { if = { limit = { free_building_slots = { building = dockyard size > 3 include_locked = yes } } add_extra_state_shared_building_slots = 4 add_building_construction = { type = dockyard level = 4 instant_build = yes } } } 409 = { if = { limit = { 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 } } } 637 = { if = { limit = { free_building_slots = { building = dockyard size > 1 include_locked = yes } } add_extra_state_shared_building_slots = 1 add_building_construction = { type = dockyard level = 1 instant_build = yes } } } } } focus = { id = SOV_modernize_the_far_eastern_fleet icon = GFX_SOV_modernize_the_far_eastern_fleet_ccp_2d_sov_compatibility prerequisite = { focus = SOV_rebuild_the_far_eastern_fleet } x = -2 y = 1 relative_position_id = SOV_rebuild_the_far_eastern_fleet cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH FOCUS_FILTER_NAVY_XP} completion_reward = { navy_experience = 25 add_tech_bonus = { name = SOV_modernize_the_far_eastern_fleet bonus = 1.0 uses = 4 category = dd_tech category = ca_tech category = bb_tech category = cv_tech category = ss_tech } if = { #Modifiers in this NS are MTG-locked limit = { has_dlc = "Man the Guns" } add_timed_idea = { idea = SOV_modernize_the_far_eastern_fleet days = 730 } } else = { add_timed_idea = { idea = SOV_modernize_the_far_eastern_fleet_vanilla days = 730 } } } } focus = { id = SOV_memories_of_1905 icon = GFX_SOV_memories_of_1905_ccp_2d_sov_compatibility prerequisite = { focus = SOV_rebuild_the_far_eastern_fleet } mutually_exclusive = { focus = SOV_japanese_overtures } x = 0 y = 1 relative_position_id = SOV_rebuild_the_far_eastern_fleet cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_WAR_SUPPORT FOCUS_FILTER_INDUSTRY FOCUS_FILTER_NAVY_XP} completion_reward = { navy_experience = 15 408 = { add_building_construction = { type = coastal_bunker level = 2 instant_build = yes province = 957 } } add_timed_idea = { idea = SOV_memories_of_1905_idea days = 365 } } } focus = { id = SOV_the_lonely_island icon = GFX_SOV_the_lonely_island_ccp_2d_sov_compatibility prerequisite = { focus = SOV_memories_of_1905 } x = 0 y = 1 relative_position_id = SOV_memories_of_1905 cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {FOCUS_FILTER_ANNEXATION} completion_reward = { if = { limit = { OR = { NOT = { has_completed_focus = SOV_request_imperial_protection } NOT = { is_subject_of = JAP } } } create_wargoal = { type = take_state_focus target = JAP generator = { 536 537 555 } } } if = { limit = { has_completed_focus = SOV_request_imperial_protection is_subject_of = JAP } if = { limit = { has_war_together_with = JAP } every_enemy_country = { SOV = { white_peace = PREV } } } JAP = { set_autonomy = { target = SOV autonomy_state = autonomy_free } } leave_faction = yes create_wargoal = { type = puppet_wargoal_focus target = JAP } } } } focus = { id = SOV_an_empire_in_the_pacific icon = GFX_focus_SOV_pacific_empire prerequisite = { focus = SOV_the_lonely_island } x = 0 y = 1 relative_position_id = SOV_the_lonely_island cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {} completion_reward = { custom_effect_tooltip = SOV_an_empire_in_the_pacific_tt hidden_effect = { every_state = { limit = { OR = { is_core_of = SIK is_core_of = XSM is_core_of = SHX is_core_of = PRC is_core_of = CHI is_core_of = YUN is_core_of = GXC is_core_of = MEN is_core_of = MAN } } add_claim_by = ROOT } } add_ideas = SOV_an_empire_in_the_pacific_idea } } focus = { id = SOV_the_berlin_moscow_axis icon = GFX_SOV_the_berlin_moscow_axis_ccp_2d_sov_compatibility prerequisite = { focus = SOV_pacify_the_rim } x = 2 y = 1 relative_position_id = SOV_pacify_the_rim cost = 10 ai_will_do = { factor = 1 } bypass = { is_in_faction_with = GER GER = { is_faction_leader = yes } } available_if_capitulated = no search_filters = {} available = { is_subject = no is_in_faction = no GER = { is_faction_leader = yes has_government = fascism } } completion_reward = { GER = { country_event = { id = NSB_soviet_fascist_tsarist.22 hours = 6 } } } } focus = { id = SOV_japanese_overtures icon = GFX_SOV_japanese_overtures_ccp_2d_sov_compatibility prerequisite = { focus = SOV_the_berlin_moscow_axis } mutually_exclusive = { focus = SOV_memories_of_1905 } x = 0 y = 1 relative_position_id = SOV_the_berlin_moscow_axis cost = 10 ai_will_do = { factor = 1 } available_if_capitulated = no search_filters = {} available = { is_subject = no is_in_faction_with = GER GER = { is_faction_leader = yes } JAP = { is_in_faction = no has_government = fascism } } completion_reward = { GER = { country_event = { id = NSB_soviet_fascist_tsarist.25 hours = 6 } } } } } ### ### ## ### ## # # ## # ## ### # # ### ### # # # # # # # ## # # # # # # # # # # {~._.~} ### ## # ## # # # # ## #### # # # # # ## ## ( Y ) # # # # # # # # # # # # # # # # # # # ()~*~() # # ### ## ### ## # # # # ### ## # ## # # (_)-(_) # focus = { # id = SOV_consolidate_power # icon = GFX_goal_generic_dangerous_deal # x = 15 # y = 0 # relative_position_id = SOV_article_124 # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # add_political_power = 90 # } # } # # focus = { # id = SOV_consolidate_the_caucasus # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_power } # x = -5 # y = 1 # relative_position_id = SOV_consolidate_power # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # # completion_reward = { # # random_owned_controlled_state = { # limit = { # OR = { # state = 229 # state = 230 # state = 231 # state = 232 # state = 233 # } # #229 230 231 232 233 # free_building_slots = { # building = infrastructure # size > 0 # } # } # add_building_construction = { # type = infrastructure # level = 1 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 229 # state = 230 # state = 231 # state = 232 # state = 233 # } # # free_building_slots = { # building = infrastructure # size > 1 # } # } # add_building_construction = { # type = infrastructure # level = 2 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 229 # state = 230 # state = 231 # state = 232 # state = 233 # } # # } # add_extra_state_shared_building_slots = 1 # add_building_construction = { # type = industrial_complex # level = 1 # instant_build = yes # } # } # } # } # # focus = { # id = SOV_consolidate_the_west # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_power } # x = 0 # y = 1 # relative_position_id = SOV_consolidate_power # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # # random_owned_controlled_state = { # limit = { # OR = { # state = 192 # state = 193 # state = 194 # state = 195 # state = 196 # state = 197 # state = 198 # state = 199 # state = 200 # state = 201 # state = 202 # state = 203 # state = 204 # state = 206 # state = 207 # state = 221 # state = 225 # state = 226 # state = 227 # state = 241 # state = 137 # } # # free_building_slots = { # building = infrastructure # size > 0 # } # } # add_building_construction = { # type = infrastructure # level = 1 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 192 # state = 193 # state = 194 # state = 195 # state = 196 # state = 197 # state = 198 # state = 199 # state = 200 # state = 201 # state = 202 # state = 203 # state = 204 # state = 206 # state = 207 # state = 221 # state = 225 # state = 226 # state = 227 # state = 241 # state = 137 # } # free_building_slots = { # building = infrastructure # size > 1 # } # } # add_building_construction = { # type = infrastructure # level = 2 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 192 # state = 193 # state = 194 # state = 195 # state = 196 # state = 197 # state = 198 # state = 199 # state = 200 # state = 201 # state = 202 # state = 203 # state = 204 # state = 206 # state = 207 # state = 221 # state = 225 # state = 226 # state = 227 # state = 241 # state = 137 # } # } # add_extra_state_shared_building_slots = 1 # add_building_construction = { # type = industrial_complex # level = 1 # instant_build = yes # } # } # } # # } # # focus = { # id = SOV_consolidate_the_east # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_power } # x = 4 # y = 1 # relative_position_id = SOV_consolidate_power # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # # random_owned_controlled_state = { # limit = { # OR = { # state = 402 # state = 404 # state = 405 # state = 584 # state = 585 # state = 586 # state = 587 # state = 588 # state = 589 # state = 590 # state = 732 # state = 742 # state = 40 # } # free_building_slots = { # building = infrastructure # size > 0 # } # } # add_building_construction = { # type = infrastructure # level = 1 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 402 # state = 404 # state = 405 # state = 584 # state = 585 # state = 586 # state = 587 # state = 588 # state = 589 # state = 590 # state = 732 # state = 742 # state = 40 # } # free_building_slots = { # building = infrastructure # size > 1 # } # # } # add_building_construction = { # type = infrastructure # level = 2 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 402 # state = 404 # state = 405 # state = 584 # state = 585 # state = 586 # state = 587 # state = 588 # state = 589 # state = 590 # state = 732 # state = 742 # state = 40 # } # } # add_extra_state_shared_building_slots = 1 # add_building_construction = { # type = industrial_complex # level = 1 # instant_build = yes # } # } # } # } # # focus = { # id = SOV_sufi_stronghold # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_the_caucasus } # x = -2 # y = 1 # relative_position_id = SOV_consolidate_the_caucasus # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # SOV_decrease_church_power = yes # add_ideas = SOV_multi_religious_empire # } # } # # focus = { # id = SOV_independent_synod # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_the_caucasus } # x = 0 # y = 1 # relative_position_id = SOV_consolidate_the_caucasus # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # SOV_decrease_church_power = yes # add_political_power = 50 # } # } # # focus = { # id = SOV_educate_the_masses_caucasus # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_the_caucasus } # x = 2 # y = 3 # relative_position_id = SOV_consolidate_the_caucasus # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # # random_owned_controlled_state = { # limit = { # OR = { # state = 229 # state = 230 # state = 231 # state = 232 # state = 233 # } # #229 230 231 232 233 # free_building_slots = { # building = infrastructure # size > 0 # } # } # add_building_construction = { # type = infrastructure # level = 1 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 229 # state = 230 # state = 231 # state = 232 # state = 233 # } # # free_building_slots = { # building = infrastructure # size > 1 # } # } # add_building_construction = { # type = infrastructure # level = 2 # instant_build = yes # } # } # } # } # # focus = { # id = SOV_transcaucasian_republic # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_sufi_stronghold } # prerequisite = { focus = SOV_independent_synod } # prerequisite = { focus = SOV_educate_the_masses_caucasus } # x = 0 # y = 1 # relative_position_id = SOV_independent_synod # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # country_event = { # id = NSB_Soviet_puppeting.1 hours = 2 random_hours = 1 # } # } # } # # focus = { # id = SOV_independent_synod_west # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_the_west } # x = -1 # y = 1 # relative_position_id = SOV_consolidate_the_west # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # SOV_decrease_church_power = yes # add_political_power = 50 # } # } # # focus = { # id = SOV_educate_the_masses_west # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_the_west } # x = 1 # y = 3 # relative_position_id = SOV_consolidate_the_west # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # # random_owned_controlled_state = { # limit = { # OR = { # state = 259 # state = 192 # state = 193 # state = 194 # state = 195 # state = 196 # state = 197 # state = 198 # state = 199 # state = 200 # state = 201 # state = 202 # state = 203 # state = 204 # state = 206 # state = 207 # state = 221 # state = 225 # state = 226 # state = 227 # state = 241 # state = 137 # } # # free_building_slots = { # building = infrastructure # size > 0 # } # # } # add_building_construction = { # type = infrastructure # level = 1 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 259 # state = 192 # state = 193 # state = 194 # state = 195 # state = 196 # state = 197 # state = 198 # state = 199 # state = 200 # state = 201 # state = 202 # state = 203 # state = 204 # state = 206 # state = 207 # state = 221 # state = 225 # state = 226 # state = 227 # state = 241 # state = 137 # } # free_building_slots = { # building = infrastructure # size > 1 # } # # } # add_building_construction = { # type = infrastructure # level = 2 # instant_build = yes # } # } # } # } # # focus = { # id = SOV_free_rutenia # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_independent_synod_west } # prerequisite = { focus = SOV_educate_the_masses_west} # x = 0 # y = 1 # relative_position_id = SOV_independent_synod_west # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # country_event = { # id = NSB_Soviet_puppeting.2 hours = 2 random_hours = 1 # } # } # } # # focus = { # id = SOV_friendship_of_nations_university # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_educate_the_masses_west } # prerequisite = { focus = SOV_educate_the_masses_caucasus } # prerequisite = { focus = SOV_educate_the_masses_east } # x = 0 # y = 4 # relative_position_id = SOV_educate_the_masses_west # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # add_research_slot = 1 #this might be too much # add_to_variable = { SOV_defense_industry_research_speed_factor = 0.05 } # } # } # # # #focus = { # id = SOV_independent_koranic_school # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_the_east } # x = -1 # y = 1 # relative_position_id = SOV_consolidate_the_east # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # SOV_decrease_church_power = yes # add_ideas = SOV_multi_religious_empire # add_political_power = 50 # } # } # # focus = { # id = SOV_educate_the_masses_east # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_consolidate_the_east } # x = 1 # y = 3 # relative_position_id = SOV_consolidate_the_east # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # # random_owned_controlled_state = { # limit = { # OR = { # state = 402 # state = 404 # state = 405 # state = 584 # state = 585 # state = 586 # state = 587 # state = 588 # state = 589 # state = 590 # state = 732 # state = 742 # state = 40 # } # free_building_slots = { # building = infrastructure # size > 0 # } # # } # add_building_construction = { # type = infrastructure # level = 1 # instant_build = yes # } # } # # random_owned_controlled_state = { # limit = { # OR = { # state = 402 # state = 404 # state = 405 # state = 584 # state = 585 # state = 586 # state = 587 # state = 588 # state = 589 # state = 590 # state = 732 # state = 742 # state = 40 # } # free_building_slots = { # building = infrastructure # size > 1 # } # # } # add_building_construction = { # type = infrastructure # level = 2 # instant_build = yes # } # } # } # } # # focus = { # id = SOV_free_bukharan_republic # icon = GFX_goal_generic_dangerous_deal # prerequisite = { focus = SOV_independent_koranic_school } # prerequisite = { focus = SOV_educate_the_masses_east} # x = 0 # y = 1 # relative_position_id = SOV_independent_koranic_school # cost = 10 # ai_will_do = { # factor = 1 # } # # available_if_capitulated = yes # # completion_reward = { # country_event = { # id = NSB_Soviet_puppeting.3 hours = 2 random_hours = 1 # } # } # } #}