######################### # Biogenesis Situations # ######################### ### GENETIC ASCENSION SITUATION # Regular Empires genetic_ascension_situation = { picture = GFX_evt_genetic_modification complete_icon_frame = GFX_situation_outcome_frame_green complete_icon = GFX_situation_outcome_ascension category = positive initial_progress = 0 on_progress_complete = { custom_tooltip = genetic_ascension_situation_outcome hidden_effect = { situation_event = { id = bio.20 } # Situation Complete event } } stages = { stage_1 = { icon = GFX_situation_stage_1 icon_background = GFX_situation_stage_frame_blue end = 600 on_first_enter = { situation_event = { id = bio.5 days = 1 } } custom_tooltip = "genetic_stage_1_effects" } stage_2 = { icon = GFX_situation_stage_2 icon_background = GFX_situation_stage_frame_blue end = 1200 on_first_enter = { situation_event = { id = bio.10 } } custom_tooltip = "genetic_stage_2_effects" } stage_3 = { icon = GFX_situation_stage_3 icon_background = GFX_situation_stage_frame_blue end = 1800 on_first_enter = { situation_event = { id = bio.15 } } custom_tooltip = "genetic_stage_3_effects" } } monthly_progress = { base = 5 modifier = { mult = 0 desc = "genetic_ascension_situation_pause_desc" has_situation_flag = situation_biogenesis_pause } modifier = { mult = owner.value:biomorphosis_progress_mult_value desc = genetic_ascension_number_of_genomic_researchers } modifier = { mult = 0 desc = "situation_genomic_facility_needed_desc" owner = { NOT = { any_owned_planet = { has_active_building = building_genomic_facility } } } } modifier = { mult = 0 desc = "situation_gene_tailoring_needed_desc" current_stage = stage_2 owner = { NOT = { has_technology = tech_gene_tailoring } } } modifier = { mult = 0.90 owner = { has_modifier = superior_individuals } desc = "superior_individuals" } modifier = { mult = 0.5 desc = "biomorphosis_stalled_tt" has_situation_flag = biomorphosis_stalled } } triggered_blocked_desc = { trigger = { owner = { NOT = { any_owned_planet = { has_active_building = building_genomic_facility } } } } text = "situation_genomic_facility_needed_desc" } triggered_blocked_desc = { trigger = { current_stage = stage_2 owner = { NOT = { has_technology = tech_gene_tailoring } } } text = "situation_gene_tailoring_needed_desc" } triggered_modifier = { potential = { situation_monthly_progress > 0 } country_society_tech_research_speed = @genetic_situation_society_tech_research_speed_mult category_biology_research_speed_mult = @genetic_situation_biology_research_speed_mult } approach = { # Purity Approach name = genetic_ascension_approach_purity icon = GFX_situation_icon_purity icon_background = GFX_situation_approach_bg_green on_select = { set_situation_flag = purity_approach_selected # We do this here, so it shows in the Approach selection tooltip in the Sitation UI switch = { trigger = current_stage stage_1 = { owner = { set_country_flag = genetic_ascension_stage_1_purity } custom_tooltip = genetic_stage_one_purity_tt } stage_2 = { owner = { set_country_flag = genetic_ascension_stage_2_purity } custom_tooltip = genetic_stage_two_purity_tt } stage_3 = { owner = { set_country_flag = genetic_ascension_stage_3_purity } custom_tooltip = genetic_stage_three_purity_tt } } } allow = { custom_tooltip = { text = genetic_ascension_approach_selected NOR = { has_situation_flag = cloning_approach_selected has_situation_flag = mutation_approach_selected owner = { has_origin = origin_evolutionary_predators } owner = { has_country_flag = clone_army_full_potential } } } } } approach = { # Cloning Approach name = genetic_ascension_approach_cloning icon = GFX_situation_icon_cloning icon_background = GFX_situation_approach_bg_green on_select = { set_situation_flag = cloning_approach_selected # We do this here, so it shows in the Approach selection tooltip in the Sitation UI switch = { trigger = current_stage stage_1 = { owner = { set_country_flag = genetic_ascension_stage_1_cloning } if = { limit = { owner = { NOT = { has_country_flag = clone_army_full_potential } } } custom_tooltip = genetic_stage_one_cloning_tt } } stage_2 = { owner = { set_country_flag = genetic_ascension_stage_2_cloning } if = { limit = { owner = { NOT = { has_country_flag = clone_army_full_potential } } } custom_tooltip = genetic_stage_two_cloning_tt } } stage_3 = { owner = { set_country_flag = genetic_ascension_stage_3_cloning } if = { limit = { owner = { NOT = { has_country_flag = clone_army_full_potential } } } custom_tooltip = genetic_stage_three_cloning_tt } } } } allow = { custom_tooltip = { text = genetic_ascension_approach_selected NOR = { has_situation_flag = purity_approach_selected has_situation_flag = mutation_approach_selected owner = { has_origin = origin_evolutionary_predators } } } } } approach = { # Mutation Approach name = genetic_ascension_approach_mutation icon = GFX_situation_icon_mutation icon_background = GFX_situation_approach_bg_green on_select = { set_situation_flag = mutation_approach_selected # We do this here, so it shows in the Approach selection tooltip in the Sitation UI switch = { trigger = current_stage stage_1 = { owner = { set_country_flag = genetic_ascension_stage_1_mutation } if = { limit = { owner = { NOT = { has_origin = origin_evolutionary_predators } } } custom_tooltip = genetic_stage_one_mutation_tt } } stage_2 = { owner = { set_country_flag = genetic_ascension_stage_2_mutation } if = { limit = { owner = { NOT = { has_origin = origin_evolutionary_predators } } } custom_tooltip = genetic_stage_two_mutation_tt } } stage_3 = { owner = { set_country_flag = genetic_ascension_stage_3_mutation } if = { limit = { owner = { NOT = { has_origin = origin_evolutionary_predators } } } custom_tooltip = genetic_stage_three_mutation_tt } } } } allow = { custom_tooltip = { text = genetic_ascension_approach_selected NOR = { has_situation_flag = purity_approach_selected has_situation_flag = cloning_approach_selected owner = { has_country_flag = clone_army_full_potential } } } } } on_monthly = { events = { bio.2 # Fires a random event for the current situation approach bio.3 # Fires a random event for the situation determined by the current and any previously selected approaches } } } # Hive Empires genetic_ascension_situation_hive = { picture = GFX_evt_genetic_modification complete_icon_frame = GFX_situation_outcome_frame_green complete_icon = GFX_situation_outcome_ascension category = positive initial_progress = 0 on_progress_complete = { custom_tooltip = genetic_ascension_situation_hive_outcome hidden_effect = { situation_event = { id = bio.40 } # Situation Complete event } } stages = { stage_1 = { icon = GFX_situation_stage_1 icon_background = GFX_situation_stage_frame_blue end = 600 on_first_enter = { situation_event = { id = bio.25 days = 1 } } custom_tooltip = "genetic_stage_1_effects" } stage_2 = { icon = GFX_situation_stage_2 icon_background = GFX_situation_stage_frame_blue end = 1200 on_first_enter = { situation_event = { id = bio.30 } } custom_tooltip = "genetic_stage_2_effects" } stage_3 = { icon = GFX_situation_stage_3 icon_background = GFX_situation_stage_frame_blue end = 1800 on_first_enter = { situation_event = { id = bio.35 } } custom_tooltip = "genetic_stage_3_effects" } } monthly_progress = { base = 5 modifier = { mult = 0 desc = "genetic_ascension_situation_pause_desc" has_situation_flag = situation_biogenesis_pause } modifier = { mult = owner.value:biomorphosis_progress_mult_value desc = genetic_ascension_number_of_genomic_drones owner = { is_wilderness_empire = no } } modifier = { mult = 0 desc = "situation_genomic_facility_needed_desc" owner = { NOT = { any_owned_planet = { has_active_building = building_genomic_facility } } is_wilderness_empire = no } } modifier = { mult = 0 desc = "situation_gene_tailoring_needed_desc" current_stage = stage_2 owner = { NOT = { has_technology = tech_gene_tailoring } } } modifier = { mult = 0.5 desc = "biomorphosis_stalled_tt" has_situation_flag = biomorphosis_stalled } } triggered_blocked_desc = { trigger = { owner = { NOT = { any_owned_planet = { has_active_building = building_genomic_facility } } is_wilderness_empire = no } } text = "situation_genomic_facility_needed_desc" } triggered_blocked_desc = { trigger = { current_stage = stage_2 owner = { NOT = { has_technology = tech_gene_tailoring } } } text = "situation_gene_tailoring_needed_desc" } triggered_modifier = { potential = { situation_monthly_progress > 0 } country_society_tech_research_speed = @genetic_situation_society_tech_research_speed_mult category_biology_research_speed_mult = @genetic_situation_biology_research_speed_mult } approach = { name = genetic_ascension_approach_purity icon = GFX_situation_icon_purity icon_background = GFX_situation_approach_bg_green on_select = { set_situation_flag = purity_approach_selected # We do this here, so it shows in the Approach selection tooltip in the Sitation UI if = { limit = { owner = { is_wilderness_empire = no } } switch = { trigger = current_stage stage_1 = { owner = { set_country_flag = genetic_ascension_stage_1_purity } custom_tooltip = genetic_stage_one_purity_tt } stage_2 = { owner = { set_country_flag = genetic_ascension_stage_2_purity } custom_tooltip = genetic_stage_two_purity_tt } stage_3 = { owner = { set_country_flag = genetic_ascension_stage_3_purity } custom_tooltip = genetic_stage_three_purity_tt } } } else = { custom_tooltip = POP_FACTION_NO_EFFECTS } } allow = { custom_tooltip = { text = genetic_ascension_approach_selected NOR = { has_situation_flag = cloning_approach_selected has_situation_flag = mutation_approach_selected owner = { has_origin = origin_evolutionary_predators } owner = { has_country_flag = clone_army_full_potential } } } } } approach = { name = genetic_ascension_approach_cloning icon = GFX_situation_icon_cloning icon_background = GFX_situation_approach_bg_green potential = { owner = { is_wilderness_empire = no } } on_select = { set_situation_flag = cloning_approach_selected # We do this here, so it shows in the Approach selection tooltip in the Sitation UI switch = { trigger = current_stage stage_1 = { owner = { set_country_flag = genetic_ascension_stage_1_cloning } if = { limit = { owner = { NOT = { has_country_flag = clone_army_full_potential } } } custom_tooltip = genetic_stage_one_cloning_tt } } stage_2 = { owner = { set_country_flag = genetic_ascension_stage_2_cloning } if = { limit = { owner = { NOT = { has_country_flag = clone_army_full_potential } } } custom_tooltip = genetic_stage_two_cloning_tt } } stage_3 = { owner = { set_country_flag = genetic_ascension_stage_3_cloning } if = { limit = { owner = { NOT = { has_country_flag = clone_army_full_potential } } } custom_tooltip = genetic_stage_three_cloning_tt } } } } allow = { custom_tooltip = { text = genetic_ascension_approach_selected NOR = { has_situation_flag = purity_approach_selected has_situation_flag = mutation_approach_selected owner = { has_origin = origin_evolutionary_predators } owner = { has_origin = origin_wilderness } } } } } approach = { name = genetic_ascension_approach_mutation icon = GFX_situation_icon_mutation icon_background = GFX_situation_approach_bg_green potential = { owner = { is_wilderness_empire = no } } on_select = { set_situation_flag = mutation_approach_selected # We do this here, so it shows in the Approach selection tooltip in the Sitation UI switch = { trigger = current_stage stage_1 = { owner = { set_country_flag = genetic_ascension_stage_1_mutation } if = { limit = { owner = { NOT = { has_origin = origin_evolutionary_predators } } } custom_tooltip = genetic_stage_one_mutation_tt } } stage_2 = { owner = { set_country_flag = genetic_ascension_stage_2_mutation } if = { limit = { owner = { NOT = { has_origin = origin_evolutionary_predators } } } custom_tooltip = genetic_stage_two_mutation_tt } } stage_3 = { owner = { set_country_flag = genetic_ascension_stage_3_mutation } if = { limit = { owner = { NOT = { has_origin = origin_evolutionary_predators } } } custom_tooltip = genetic_stage_three_mutation_tt } } } } allow = { custom_tooltip = { text = genetic_ascension_approach_selected NOR = { has_situation_flag = purity_approach_selected has_situation_flag = cloning_approach_selected owner = { has_country_flag = clone_army_full_potential } owner = { has_origin = origin_wilderness } } } } } on_monthly = { events = { bio.2 # Fires a random event for the current situation approach bio.3 # Fires a random event for the situation determined by the current and any previously selected approaches } } } ### EVOLUTIONARY PREDATORS SITUATION evolutionary_predators_situation = { picture = GFX_evt_evolutionary_predators complete_icon_frame = GFX_situation_outcome_frame_green complete_icon = GFX_situation_outcome_eat category = positive initial_progress = 0 on_progress_complete = { custom_tooltip = evolutionary_predators_situation_outcome hidden_effect = { situation_event = { id = bio.1005 } } } on_start = { situation_event = { id = bio.1001 } if = { limit = { owner = { has_country_flag = evolutionary_predators_consume } } set_situation_approach = situation_evolutionary_predators_consume } else_if = { limit = { owner = { has_country_flag = evolutionary_predators_incorporate } } set_situation_approach = situation_evolutionary_predators_incorporate } else_if = { limit = { owner = { has_country_flag = evolutionary_predators_synthesize } } set_situation_approach = situation_evolutionary_predators_synthesize } } on_monthly = { events = { bio.1001 } } stages = { stage_1 = { icon = GFX_situation_stage_eat icon_background = GFX_situation_stage_frame_green end = { base = 1000 mult = owner.num_evopred_situations_ran } } } approach = { name = situation_evolutionary_predators_consume icon = GFX_situation_approach_hungry allow = { owner = { can_have_slaves = yes } } icon_background = GFX_situation_approach_bg_yellow on_select = { custom_tooltip = evolutionary_predators_consume_tooltip owner = { remove_country_flag = evolutionary_predators_incorporate remove_country_flag = evolutionary_predators_synthesize set_country_flag = evolutionary_predators_consume } } } approach = { name = situation_evolutionary_predators_incorporate icon = GFX_situation_approach_incorporate icon_background = GFX_situation_approach_bg_yellow on_select = { custom_tooltip = evolutionary_predators_incorporate_tooltip owner = { remove_country_flag = evolutionary_predators_consume remove_country_flag = evolutionary_predators_synthesize set_country_flag = evolutionary_predators_incorporate } } default = yes } approach = { name = situation_evolutionary_predators_synthesize icon = GFX_situation_approach_synthesize icon_background = GFX_situation_approach_bg_yellow on_select = { custom_tooltip = evolutionary_predators_synthesize_tooltip owner = { remove_country_flag = evolutionary_predators_consume remove_country_flag = evolutionary_predators_incorporate set_country_flag = evolutionary_predators_synthesize } } } monthly_progress = { base = 0 modifier = { add = owner.value:num_evolutionary_predators_planets desc = evolutionary_predators_planets check_variable_arithmetic = { which = owner.value:num_evolutionary_predators_planets value > 0 } } modifier = { add = owner.value:num_evolutionary_predators_purge desc = evolutionary_predators_purge check_variable_arithmetic = { which = owner.value:num_evolutionary_predators_purge value > 0 } } modifier = { add = owner.value:num_evolutionary_predators_species desc = evolutionary_predators_species check_variable_arithmetic = { which = owner.value:num_evolutionary_predators_species value > 0 } } modifier = { owner = { is_gestalt = no } add = owner.value:num_evolutionary_predators_council desc = evolutionary_predators_council check_variable_arithmetic = { which = owner.value:num_evolutionary_predators_council value > 0 } } modifier = { owner = { subjects > 0 } add = owner.value:num_evolutionary_predators_subjects desc = evolutionary_predators_subjects check_variable_arithmetic = { which = owner.value:num_evolutionary_predators_subjects value > 0 } } modifier = { owner = { is_megacorp = yes } add = owner.value:num_evolutionary_predators_megacorp desc = evolutionary_predators_megacorp check_variable_arithmetic = { which = owner.value:num_evolutionary_predators_megacorp value > 0 } } modifier = { owner = { has_modifier = agenda_mutation_divergence_evo_pred_finish } mult = 1.10 # Remember to update agenda_mutation_divergence_finish_evo_pred_tt if this value changes desc = agenda_mutation_divergence_evo_pred_finish } modifier = { owner = { has_tradition = tr_mutation_stage_3_swap } mult = 1.25 # Remember to update tr_mutation_nucleotide_isolation_evo_pred_tt if this value changes desc = tr_mutation_nucleotide_isolation } } } behemoth_finale_situation = { picture = GFX_evt_mechromancy complete_icon_frame = GFX_situation_outcome_frame_green complete_icon = GFX_situation_outcome_challenge category = positive initial_progress = 0 on_progress_complete = { custom_tooltip = behemoth_finale_situation_outcome hidden_effect = { situation_event = { id = biocrisis.250 } owner = { remove_modifier = voidspawn_boss_invincible set_country_flag = finished_behemoth_situation } } } stages = { stage_1 = { icon = GFX_situation_stage_1 icon_background = GFX_situation_stage_frame_blue end = 80 on_first_enter = { situation_event = { id = biocrisis.210 days = 30 } } custom_tooltip = "stage_behemoth_finale_effects_regular" } stage_2 = { icon = GFX_situation_stage_2 icon_background = GFX_situation_stage_frame_blue end = 180 on_first_enter = { situation_event = { id = biocrisis.150 } #Spawn the Voidspawn situation_event = { id = biocrisis.215 days = 7 } owner = { add_modifier = { modifier = behemoth_transference days = -1 mult = 2 } } } custom_tooltip = "stage_behemoth_finale_effects_regular" } stage_3 = { icon = GFX_situation_stage_3 icon_background = GFX_situation_stage_frame_blue end = 300 on_first_enter = { situation_event = { id = biocrisis.220 days = 2 } owner = { add_modifier = { modifier = behemoth_transference days = -1 mult = 3 } } } custom_tooltip = "stage_behemoth_finale_effects" } stage_4 = { icon = GFX_situation_stage_4 icon_background = GFX_situation_stage_frame_blue end = 440 on_first_enter = { situation_event = { id = biocrisis.225 days = 2 } owner = { add_modifier = { modifier = behemoth_transference days = -1 mult = 4 } } } custom_tooltip = "stage_behemoth_finale_effects_regular" } stage_5 = { icon = GFX_situation_stage_5 icon_background = GFX_situation_stage_frame_blue end = 600 on_first_enter = { situation_event = { id = biocrisis.230 days = 2 } owner = { add_modifier = { modifier = behemoth_transference days = -1 mult = 5 } } } custom_tooltip = "stage_behemoth_finale_effects_regular" } stage_6 = { icon = GFX_situation_stage_6 icon_background = GFX_situation_stage_frame_blue end = 780 on_first_enter = { situation_event = { id = biocrisis.235 days = 2 } owner = { add_modifier = { modifier = behemoth_transference days = -1 mult = 6 } } } custom_tooltip = "stage_behemoth_finale_effects" } stage_7 = { icon = GFX_situation_stage_7 icon_background = GFX_situation_stage_frame_blue end = 980 on_first_enter = { situation_event = { id = biocrisis.240 days = 2 } owner = { add_modifier = { modifier = behemoth_transference days = -1 mult = 7 } } } custom_tooltip = "stage_behemoth_finale_effects" } stage_8 = { icon = GFX_situation_stage_8 icon_background = GFX_situation_stage_frame_blue end = 1200 on_first_enter = { situation_event = { id = biocrisis.245 days = 2 } owner = { add_modifier = { modifier = behemoth_transference days = -1 mult = 8 } } } custom_tooltip = "stage_behemoth_finale_effects" } } monthly_progress = { add = 1 modifier = { add = 2 desc = approach_digestion current_situation_approach = behemoth_finale_approach_digestion } modifier = { add = -0.75 desc = approach_brawn current_situation_approach = behemoth_finale_approach_brawn } modifier = { mult = value:growth_factor desc = growth_factor_desc } modifier = { mult = owner.value:negative_empire_size_percent desc = behemoth_empire_size_desc } modifier = { owner = { is_wilderness_empire = yes } add = 1 desc = wilderness_behemoth } } approach = { # Brawn name = behemoth_finale_approach_brawn icon = GFX_situation_approach_fight icon_background = GFX_situation_approach_bg_red on_select = { custom_tooltip = behemoth_finale_approach_brawn_tooltip } modifier = { ship_fire_rate_mult = 0.15 ship_armor_hardening_add = 0.5 } resources = { cost = { food = 2500 } } } approach = { # Digestion name = behemoth_finale_approach_digestion icon = GFX_situation_approach_digestion icon_background = GFX_situation_approach_bg_green on_select = { custom_tooltip = behemoth_finale_approach_digestion_tooltip } modifier = { ship_speed_reduction = 0.3 ship_fire_rate_mult = -0.25 ship_hull_regen_add_perc = 0.25 } resources = { cost = { food = 2500 } } } approach = { # Speed name = behemoth_finale_approach_speed icon = GFX_situation_approach_flight icon_background = GFX_situation_approach_bg_yellow default = yes modifier = { ship_speed_mult = 0.25 ship_evasion_add = 5 } resources = { cost = { food = 2500 } } } on_monthly = { } }