################## # # Cybernetics Events # ################## namespace = cybernetics # Furnace Lvl 1 country_event = { id = cybernetics.1000 hide_window = yes location = FROM is_triggered_only = yes after = { fromfromfrom = { solar_system = { every_system_planet = { limit = { NOT = { has_deposit_for = shipclass_research_station } is_star = no is_astral_scar = no colonizable_planet = no } save_event_target_as = target_planet remove_trade_deposits = yes add_deposit = d_arc_furnace_1 add_modifier = { modifier = orbital_arc_furnace_1_mod days = -1 } } } } } } # Furnace Lvl 2 country_event = { id = cybernetics.1005 hide_window = yes location = FROM is_triggered_only = yes after = { fromfromfrom = { solar_system = { every_system_planet = { limit = { NOT = { has_deposit_for = shipclass_research_station } is_star = no is_astral_scar = no colonizable_planet = no } save_event_target_as = target_planet remove_trade_deposits = yes remove_deposit = d_arc_furnace_1 add_deposit = d_arc_furnace_2 remove_modifier = orbital_arc_furnace_1_mod add_modifier = { modifier = orbital_arc_furnace_2_mod days = -1 } } } } } } # Furnace Lvl 3 country_event = { id = cybernetics.1010 hide_window = yes location = FROM is_triggered_only = yes after = { fromfromfrom = { solar_system = { every_system_planet = { limit = { NOT = { has_deposit_for = shipclass_research_station } is_star = no is_astral_scar = no colonizable_planet = no } save_event_target_as = target_planet remove_trade_deposits = yes remove_deposit = d_arc_furnace_2 add_deposit = d_arc_furnace_3 remove_modifier = orbital_arc_furnace_2_mod add_modifier = { modifier = orbital_arc_furnace_3_mod days = -1 } } } } } } # Furnace Lvl 4 country_event = { id = cybernetics.1015 hide_window = yes location = FROM is_triggered_only = yes after = { fromfromfrom = { solar_system = { every_system_planet = { limit = { NOT = { has_deposit_for = shipclass_research_station } is_star = no is_astral_scar = no colonizable_planet = no } save_event_target_as = target_planet remove_trade_deposits = yes remove_deposit = d_arc_furnace_3 add_deposit = d_arc_furnace_4 remove_modifier = orbital_arc_furnace_3_mod add_modifier = { modifier = orbital_arc_furnace_4_mod days = -1 } } } } } } # Furnace Restored country_event = { id = cybernetics.1016 hide_window = yes location = FROM is_triggered_only = yes after = { fromfromfrom = { solar_system = { every_system_planet = { limit = { NOT = { has_deposit_for = shipclass_research_station } is_star = no is_astral_scar = no colonizable_planet = no } save_event_target_as = target_planet remove_trade_deposits = yes add_deposit = d_arc_furnace_4 remove_modifier = orbital_arc_furnace_3_mod add_modifier = { modifier = orbital_arc_furnace_4_mod days = -1 } } } } } } ship_event = { id = cybernetics.1017 hide_window = yes is_triggered_only = yes trigger = { from = { OR = { has_modifier = orbital_arc_furnace_1_mod has_modifier = orbital_arc_furnace_2_mod has_modifier = orbital_arc_furnace_3_mod has_modifier = orbital_arc_furnace_4_mod } } } immediate = { from = { if = { limit = { NOT = { has_deposit_for = shipclass_research_station } is_star = no is_astral_scar = no colonizable_planet = no } remove_trade_deposits = yes switch = { trigger = has_modifier orbital_arc_furnace_1_mod = { add_deposit = d_arc_furnace_1 } orbital_arc_furnace_2_mod = { add_deposit = d_arc_furnace_2 } orbital_arc_furnace_3_mod = { add_deposit = d_arc_furnace_3 } orbital_arc_furnace_4_mod = { add_deposit = d_arc_furnace_4 } } } else = { remove_modifier = orbital_arc_furnace_1_mod remove_modifier = orbital_arc_furnace_2_mod remove_modifier = orbital_arc_furnace_3_mod remove_modifier = orbital_arc_furnace_4_mod } } } } # Dyson Swarm 0 country_event = { id = cybernetics.1020 hide_window = yes location = FROM is_triggered_only = yes after = { from = { random_system_planet = { limit = { is_star = yes } add_modifier = { modifier = dyson_swarm_1_mod days = -1 } } } } } # Dyson Swarm 1 country_event = { id = cybernetics.1025 hide_window = yes location = FROM is_triggered_only = yes after = { from = { random_system_planet = { limit = { is_star = yes } remove_modifier = "dyson_swarm_1_mod" add_modifier = { modifier = dyson_swarm_2_mod days = -1 } } } } } # Dyson Swarm 2 country_event = { id = cybernetics.1030 hide_window = yes location = FROM is_triggered_only = yes after = { from = { random_system_planet = { limit = { is_star = yes } remove_modifier = "dyson_swarm_2_mod" add_modifier = { modifier = dyson_swarm_3_mod days = -1 } } } } } #Obsessional Directive #Start Paperclip Situation country_event = { id = cyber.5000 hide_window = yes is_triggered_only = yes trigger = { has_valid_civic = civic_machine_obsessional_directive } immediate = { hidden_effect = { set_saved_date = { key = situation_paperclips_timer days_from_present = 3600 expires = 3601 } if = { limit = { NOT = { is_variable_set = paperclips_once_again } } switch = { trigger = is_difficulty 0 = { # Civilian set_variable = { which = paperclips_once_again value = @paperclip_quota_civilian } } 1 = { # Cadet set_variable = { which = paperclips_once_again value = @paperclip_quota_cadet } } 2 = { # Ensign set_variable = { which = paperclips_once_again value = @paperclip_quota_ensign } } 3 = { # Captain set_variable = { which = paperclips_once_again value = @paperclip_quota_captain } } 4 = { # Commodore set_variable = { which = paperclips_once_again value = @paperclip_quota_commodore } } 5 = { # Admiral set_variable = { which = paperclips_once_again value = @paperclip_quota_admiral } } 6 = { # Grand Admiral set_variable = { which = paperclips_once_again value = @paperclip_quota_grand_admiral } } } } set_variable = { which = paperclips_current_amount value = 0 } set_variable = { which = paperclips_max_capacity value = 15000 # max of consumer_goods in 00_strategic_resources.txt } set_variable = { which = paperclips_current_income value = 0 } export_resource_stockpile_to_variable = { resource = consumer_goods variable = paperclips_current_amount } } } after = { start_situation = { type = situation_paperclips target = root } } } #Check if you met the production Quota country_event = { id = cyber.5004 hide_window = yes is_triggered_only = yes immediate = { IF = { limit = { owner = { resource_stockpile_compare = { resource = consumer_goods value > paperclips_once_again } } } country_event = { id = cyber.5005 } remove_modifier = paperclip_failure } else = { country_event = { id = cyber.5006 } } } } #Paperclips resolution good country_event = { # choose your reward id = cyber.5005 title = "cyber.5005.name" desc = cyber.5005.desc picture = GFX_evt_relic_world_street show_sound = event_worrying_signal is_triggered_only = yes immediate = { export_resource_stockpile_to_variable = { resource = consumer_goods variable = paperclips_current_amount } } option = { name = cyber.5005.a custom_tooltip = cyber.5005.a.tooltip trigger = { has_resource = { type = consumer_goods amount > 0 } } add_resource = { consumer_goods = -1 mult = paperclips_current_amount } add_resource = { unity = 1 mult = value:paperclips_reward|DIVISOR|3| } random_planet_within_border = { limit = { colonizable_planet = no is_star = no NOR = { is_planet_class = pc_gas_giant is_terraforming_candidate = yes } } add_deposit = d_consumer_goods_obsessional_directive if = { limit = { NOT = { has_modifier = obsessional_directive_mod } } hidden_effect = { add_modifier = { modifier = obsessional_directive_mod days = -1 } } } } } option = { name = cyber.5005.b custom_tooltip = cyber.5005.b.tooltip trigger = { has_resource = { type = consumer_goods amount > 0 } perc_communications_with_playable > 0 } add_resource = { consumer_goods = -1 mult = paperclips_current_amount } add_resource = { energy = 1.5 mult = paperclips_current_amount } } option = { name = cyber.5005.c custom_tooltip = cyber.5005.c.tooltip trigger = { has_resource = { type = consumer_goods amount > 0 } perc_communications_with_playable > 0 } add_resource = { consumer_goods = -1 mult = paperclips_current_amount } add_resource = { influence = 1 mult = value:paperclips_reward|DIVISOR|50| } } option = { name = cyber.5005.d custom_tooltip = cyber.5005.d.tooltip trigger = { has_resource = { type = consumer_goods amount > 0 } perc_communications_with_playable > 0 } add_resource = { consumer_goods = -1 mult = paperclips_current_amount } locked_random_list = { 30 = { add_resource = { society_research = 1 mult = value:paperclips_reward|DIVISOR|3| } } 30 = { add_resource = { engineering_research = 1 mult = value:paperclips_reward|DIVISOR|3| } } 30 = { add_resource = { physics_research = 1 mult = value:paperclips_reward|DIVISOR|3| } } } } option = { name = cyber.5005.e custom_tooltip = cyber.5005.e.tooltip trigger = { has_resource = { type = consumer_goods amount > 0 } any_system_within_border = { is_star_class = sc_black_hole } } add_resource = { consumer_goods = -1 mult = paperclips_current_amount } add_victory_score = { source = obsessional_directive_score score = value:paperclips_reward|DIVISOR|30| } } after = { hidden_effect = { set_variable = { which = paperclips_current_amount value = 0 } country_event = { id = cyber.5010 } # Loop Variable country_event = { id = cyber.5000 days = 30 } } } } #Paperclips resolution bad country_event = { # choose your reward id = cyber.5006 title = "cyber.5006.name" desc = cyber.5006.desc picture = GFX_evt_relic_world_street show_sound = event_worrying_signal is_triggered_only = yes immediate = { set_country_flag = failed_paperclip_quota export_resource_stockpile_to_variable = { resource = consumer_goods variable = paperclips_current_amount } } option = { name = cyber.5006.a add_modifier = { modifier = paperclip_failure days = -1 } if = { limit = { has_resource = { type = consumer_goods amount > 1000 } } custom_tooltip = paperclip_stockpile_reset_tt hidden_effect = { add_resource = { consumer_goods = -1 mult = paperclips_current_amount } add_resource = { consumer_goods = 1000 } } } } after = { hidden_effect = { country_event = { id = cyber.5000 days = 30 } divide_variable = { which = paperclips_once_again value = @paperclip_scaling_factor } set_saved_date = { key = situation_paperclips_timer days_from_present = 3600 expires = 3601 } floor_variable = paperclips_once_again set_variable = { which = paperclips_current_amount value = 0 } set_variable = { which = paperclips_current_income value = 0 } set_variable = { which = paperclips_max_capacity value = 15000 # max of consumer_goods in 00_strategic_resources.txt } if = { limit = { NOR = { has_ascension_perk = ap_become_the_crisis has_valid_civic = civic_machine_terminator has_country_flag = paperclip_shamed } } custom_tooltip = cyber.5006.purge.tt set_country_flag = paperclip_shamed } } } } # Update the count situation_event = { id = cyber.5016 hide_window = yes is_triggered_only = yes immediate = { owner = { export_resource_stockpile_to_variable = { resource = consumer_goods variable = paperclips_current_amount } floor_variable = paperclips_current_amount export_trigger_value_to_variable = { trigger = resource_income_compare parameters = { resource = consumer_goods } variable = paperclips_current_income } set_variable = { which = paperclips_max_capacity value = value:max_paperclip_capacity } } } } # paperclips loop country_event = { # increase the loop id = cyber.5010 hide_window = yes is_triggered_only = yes immediate = { hidden_effect = { set_saved_date = { key = situation_paperclips_timer days_from_present = 3600 expires = 3601 } multiply_variable = { which = paperclips_once_again value = @paperclip_scaling_factor } floor_variable = paperclips_once_again } } } ##### Virtual Ascension Events ### Create the Unemployed ### Country scope gatekeeper ### on_monthly_pulse_country country_event = { id = cybernetics.5025 hide_window = yes is_triggered_only = yes trigger = { is_fallen_empire = no has_active_tradition = tr_virtuality_finish any_owned_planet = { is_under_colonization = no NOT = { is_planet_class = pc_cosmogenesis_world } free_jobs > 0 NOR = { free_jobs_of_type = { job = mortal_initiate value >= 100 } free_jobs_of_type = { category = bio_trophy value >= 100 } } } } immediate = { random_owned_planet = { limit = { is_under_colonization = no NOT = { is_planet_class = pc_cosmogenesis_world } free_jobs > 0 NOR = { free_jobs_of_type = { job = mortal_initiate value >= 100 } free_jobs_of_type = { category = bio_trophy value >= 100 } } } planet_event = { id = cybernetics.2027 days = 1 } } } } ### Create the Unemployed ### Planet scope gatekeeper ### on_building_complete, on_building_upgraded, on_building_demolished, ### on_building_downgraded, on_building_replaced ### on_district_complete, on_district_demolished planet_event = { id = cybernetics.2026 hide_window = yes is_triggered_only = yes trigger = { is_under_colonization = no NOT = { is_planet_class = pc_cosmogenesis_world } exists = owner owner = { is_fallen_empire = no has_active_tradition = tr_virtuality_finish } free_jobs > 0 } immediate = { planet_event = { id = cybernetics.2027 days = 1 } } } ### Create the Unemployed ### Fired by cybernetics.2025 and cybernetics.2026 planet_event = { id = cybernetics.2027 hide_window = yes is_triggered_only = yes trigger = { is_under_colonization = no NOT = { is_planet_class = pc_cosmogenesis_world } exists = owner owner = { is_fallen_empire = no has_tradition = tr_virtuality_finish } free_jobs > 0 } immediate = { set_variable = { which = pop_amount value = value:num_free_virtual_jobs } # Create pops for every free job create_pop_group = { species = owner_main_species size = pop_amount } # Kill pops generated in excess (e.g. from forbidden jobs) if = { limit = { OR = { any_owned_pop_group = { is_unemployed = yes is_robotic_species = yes has_virtual_species_trait = yes } any_owned_pop_group = { is_robotic_species = yes has_virtual_species_trait = yes is_pop_category = civilian } } } every_owned_pop_group = { limit = { OR = { AND = { is_unemployed = yes is_robotic_species = yes has_virtual_species_trait = yes } AND = { is_robotic_species = yes has_virtual_species_trait = yes is_pop_category = civilian } } } kill_pop_group = { pop_group = this percentage = 1 } } } } } ### Kill the unemployed ### Country scope ### on_monthly_pulse_country country_event = { id = cybernetics.5030 hide_window = yes is_triggered_only = yes trigger = { is_fallen_empire = no has_active_tradition = tr_virtuality_finish any_owned_planet = { OR = { any_owned_pop_group = { is_unemployed = yes is_robotic_species = yes has_virtual_species_trait = yes } any_owned_pop_group = { is_robotic_species = yes has_virtual_species_trait = yes is_pop_category = civilian } any_owned_pop_job = { has_job_type = maintenance_drone } } } } immediate = { every_owned_planet = { limit = { OR = { any_owned_pop_group = { is_unemployed = yes is_robotic_species = yes has_virtual_species_trait = yes } any_owned_pop_group = { is_robotic_species = yes has_virtual_species_trait = yes is_pop_category = civilian } any_owned_pop_job = { has_job_type = maintenance_drone } } } every_owned_pop_group = { limit = { OR = { AND = { is_unemployed = yes is_robotic_species = yes has_virtual_species_trait = yes } AND = { is_robotic_species = yes has_virtual_species_trait = yes is_pop_category = civilian } } } kill_pop_group = { pop_group = this percentage = 1 } } random_owned_pop_job = { limit = { has_job_type = maintenance_drone } kill_assigned_pop_amount = { percentage = 1 } } } } } ### Kill the unemployed ### Planet scope ### on_building_complete, on_building_upgraded, on_building_demolished, ### on_building_downgraded, on_building_replaced ### on_district_complete, on_district_demolished planet_event = { id = cybernetics.2031 hide_window = yes is_triggered_only = yes trigger = { exists = owner owner = { is_fallen_empire = no has_active_tradition = tr_virtuality_finish } OR = { any_owned_pop_group = { is_unemployed = yes is_robotic_species = yes has_virtual_species_trait = yes } any_owned_pop_group = { is_robotic_species = yes has_virtual_species_trait = yes is_pop_category = civilian } } } immediate = { every_owned_pop_group = { limit = { OR = { AND = { is_unemployed = yes is_robotic_species = yes has_virtual_species_trait = yes } AND = { is_robotic_species = yes has_virtual_species_trait = yes is_pop_category = civilian } } } kill_pop_group = { pop_group = this percentage = 1 # 100% of Unemployed Pops } } } } ### Digitize country_event = { id = cybernetics.5035 hide_window = yes location = FROM is_triggered_only = yes trigger = { has_tradition = tr_virtuality_adopt } immediate = { modify_species = { species = owner_main_species add_trait = trait_robot_digital_1 } change_dominant_species = { species = last_created_species change_all = yes } } after = { hidden_effect = { random_owned_planet = { limit = { is_planet_class = pc_cosmogenesis_world } every_owned_pop_group = { modify_species = { remove_trait = trait_robot_digital_1 } } } } } } country_event = { id = cybernetics.5040 hide_window = yes location = FROM is_triggered_only = yes trigger = { has_tradition = tr_virtuality_1 } immediate = { modify_species = { species = owner_main_species remove_trait = trait_robot_digital_1 add_trait = trait_robot_digital_2 } change_dominant_species = { species = last_created_species change_all = yes } } } # Add Virtual Leader Trait country_event = { id = cybernetics.5046 is_triggered_only = yes hide_window = yes trigger = { OR = { has_tradition = tr_virtuality_finish has_country_flag = synth_virtual } } immediate = { every_owned_leader = { limit = { species = { OR = { has_trait = trait_machine_unit has_trait = trait_mechanical } } NOR = { has_trait = leader_trait_virtual } is_leader_tier = leader_tier_default is_gestalt_node = no } if = { limit = { has_trait = trait_machine_unit } add_trait = { trait = leader_trait_virtual show_message = no } } else = { remove_trait = leader_trait_synthetic add_trait = { trait = leader_trait_virtual show_message = no } } } every_pool_leader = { limit = { species = { OR = { has_trait = trait_machine_unit has_trait = trait_mechanical } } NOT = { has_trait = leader_trait_virtual } } if = { limit = { has_trait = trait_machine_unit } add_trait = { trait = leader_trait_virtual show_message = no } } else = { remove_trait = leader_trait_synthetic add_trait = { trait = leader_trait_virtual show_message = no } } } create_message = { type = MESSAGE_ALL_GAINED_TRAIT localization = MESSAGE_ALL_GAINED_TRAIT_DESC days = @toast_message_days variable = { type = key value = leader_trait_virtual localization = TRAIT } variable = { key = TRAIT_KEY value = leader_trait_virtual } variable = { key = "border" value = "GFX_invisible" } } } } # New Leaders Get Virtual Trait country_event = { id = cybernetics.5047 is_triggered_only = yes hide_window = yes trigger = { OR = { has_tradition = tr_virtuality_finish has_country_flag = synth_virtual } from = { NOT = { leader_class = envoy } species = { OR = { has_trait = trait_machine_unit has_trait = trait_mechanical } } } } immediate = { from = { if = { limit = { has_trait = trait_machine_unit } add_trait = { trait = leader_trait_virtual show_message = no } } else = { remove_trait = leader_trait_synthetic add_trait = { trait = leader_trait_virtual show_message = no } } } } } ##### Nanite Ascension Events system_event = { id = cybernetics.5050 hide_window = yes location = FROM is_triggered_only = yes immediate = { every_system_planet = { limit = { can_have_mineral_deposits = yes NOT = { has_deposit_for = shipclass_research_station has_deposit = d_nanite_harvester_deposit } } add_deposit = d_nanite_harvester_deposit } } } system_event = { id = cybernetics.5051 hide_window = yes location = FROM is_triggered_only = yes immediate = { every_system_planet = { limit = { OR = { has_deposit = d_nanite_harvester_deposit has_deposit = d_nanite_harvester_deposit_regular has_deposit = d_nanite_harvester_deposit_large } } every_deposit = { limit = { OR = { is_deposit_type = d_nanite_harvester_deposit is_deposit_type = d_nanite_harvester_deposit_regular is_deposit_type = d_nanite_harvester_deposit_large } } remove_deposit = yes } remove_planet_flag = nanites_doubled_1 remove_planet_flag = nanites_doubled_2 remove_planet_flag = nanites_doubled_3 remove_planet_flag = nanites_doubled_4 remove_planet_flag = nanites_doubled_5 remove_planet_flag = nanites_doubled_6 remove_planet_flag = nanites_doubled_7 remove_planet_flag = nanites_doubled_8 remove_planet_flag = nanites_doubled_9 } } } event = { id = cybernetics.5053 hide_window = yes is_triggered_only = yes immediate = { every_system = { limit = { exists = owner owner = { has_tradition = tr_nanotech_finish } exists = starbase starbase = { has_starbase_building = nanite_harvester } } system_event = { id = cybernetics.5054 } } } } system_event = { id = cybernetics.5054 hide_window = yes is_triggered_only = yes trigger = { exists = owner owner = { has_tradition = tr_nanotech_finish } starbase = { has_starbase_building = nanite_harvester } } immediate = { owner = { save_event_target_as = nanotech_country } every_system_planet = { limit = { OR = { has_deposit = d_nanite_harvester_deposit has_planet_flag = nanites_doubled_1 has_planet_flag = nanites_doubled_2 has_planet_flag = nanites_doubled_3 has_planet_flag = nanites_doubled_4 has_planet_flag = nanites_doubled_5 has_planet_flag = nanites_doubled_6 has_planet_flag = nanites_doubled_7 has_planet_flag = nanites_doubled_8 has_planet_flag = nanites_doubled_9 } has_mining_station = yes } if = { limit = { NOR = { has_planet_flag = nanites_doubled_1 has_planet_flag = nanites_doubled_2 has_planet_flag = nanites_doubled_3 has_planet_flag = nanites_doubled_4 has_planet_flag = nanites_doubled_5 has_planet_flag = nanites_doubled_6 has_planet_flag = nanites_doubled_7 has_planet_flag = nanites_doubled_8 has_planet_flag = nanites_doubled_9 } } add_deposit = d_nanite_harvester_deposit set_planet_flag = nanites_doubled_1 } else_if = { limit = { has_planet_flag = nanites_doubled_1 planet_size >= 3 } add_deposit = d_nanite_harvester_deposit add_deposit = d_nanite_harvester_deposit set_planet_flag = nanites_doubled_2 remove_planet_flag = nanites_doubled_1 } else_if = { limit = { has_planet_flag = nanites_doubled_2 planet_size > 6 } add_deposit = d_nanite_harvester_deposit add_deposit = d_nanite_harvester_deposit add_deposit = d_nanite_harvester_deposit add_deposit = d_nanite_harvester_deposit set_planet_flag = nanites_doubled_3 remove_planet_flag = nanites_doubled_2 } else_if = { limit = { has_planet_flag = nanites_doubled_3 planet_size >= 9 } every_deposit = { limit = { is_deposit_type = d_nanite_harvester_deposit } remove_deposit = yes } add_deposit = d_nanite_harvester_deposit_regular set_planet_flag = nanites_doubled_4 remove_planet_flag = nanites_doubled_3 } else_if = { limit = { has_planet_flag = nanites_doubled_4 planet_size >= 12 } random_list = { 50 = { nanotech_deposit_nanite_generation = yes } 50 = { add_deposit = d_nanite_harvester_deposit_regular set_planet_flag = nanites_doubled_5 remove_planet_flag = nanites_doubled_4 } } } else_if = { limit = { has_planet_flag = nanites_doubled_5 planet_size >= 15 } random_list = { 50 = { nanotech_deposit_nanite_generation = yes } 50 = { add_deposit = d_nanite_harvester_deposit_regular add_deposit = d_nanite_harvester_deposit_regular set_planet_flag = nanites_doubled_6 remove_planet_flag = nanites_doubled_5 } } } else_if = { limit = { has_planet_flag = nanites_doubled_6 planet_size >= 18 } random_list = { 50 = { nanotech_deposit_nanite_generation = yes } 50 = { add_deposit = d_nanite_harvester_deposit_regular add_deposit = d_nanite_harvester_deposit_regular add_deposit = d_nanite_harvester_deposit_regular add_deposit = d_nanite_harvester_deposit_regular set_planet_flag = nanites_doubled_7 remove_planet_flag = nanites_doubled_6 } } } else_if = { limit = { has_planet_flag = nanites_doubled_7 planet_size >= 21 } random_list = { 50 = { nanotech_deposit_nanite_generation = yes } 50 = { every_deposit = { limit = { is_deposit_type = d_nanite_harvester_deposit_regular } remove_deposit = yes } add_deposit = d_nanite_harvester_deposit_large set_planet_flag = nanites_doubled_8 remove_planet_flag = nanites_doubled_7 } } } else_if = { limit = { has_planet_flag = nanites_doubled_8 planet_size >= 25 } random_list = { 50 = { nanotech_deposit_nanite_generation = yes } 50 = { add_deposit = d_nanite_harvester_deposit_large set_planet_flag = nanites_doubled_9 remove_planet_flag = nanites_doubled_8 } } } else_if = { limit = { has_planet_flag = nanites_doubled_9 } nanotech_deposit_nanite_generation = yes } } } } ### Set variables for Dyson Swarm and Arc Furnace country_event = { id = cybernetics.5065 hide_window = yes location = FROM is_triggered_only = yes trigger = { last_increased_tech = tech_dyson_swarm } immediate = { set_variable = { which = dyson_swarm_counter value = 0 } } } country_event = { id = cybernetics.5070 hide_window = yes location = FROM is_triggered_only = yes trigger = { last_increased_tech = tech_orbital_arc_furnace } immediate = { set_variable = { which = arc_furnace_counter value = 0 } } } # Add Synth Leader Trait country_event = { id = cybernetics.5080 is_triggered_only = yes hide_window = yes trigger = { has_tradition = tr_modularity_finish } immediate = { every_owned_leader = { limit = { species = { has_trait = trait_machine_unit } NOR = { has_trait = leader_trait_synthetic } is_leader_tier = leader_tier_default is_gestalt_node = no } add_trait = { trait = leader_trait_synthetic show_message = no } } every_pool_leader = { limit = { species = { has_trait = trait_machine_unit } NOT = { has_trait = leader_trait_synthetic } } add_trait = { trait = leader_trait_synthetic show_message = no } } create_message = { type = MESSAGE_ALL_GAINED_TRAIT localization = MESSAGE_ALL_GAINED_TRAIT_DESC days = @toast_message_days variable = { type = key value = leader_trait_synthetic localization = TRAIT } variable = { key = TRAIT_KEY value = leader_trait_synthetic } variable = { key = "border" value = "GFX_invisible" } } } } ### Turn presapient pops into hivemind pops planet_event = { id = cybernetics.5085 hide_window = yes location = FROM is_triggered_only = yes trigger = { exists = owner owner = { has_valid_civic = civic_hive_guided_sapience } } immediate = { planet_event = { id = cybernetics.5086 days = 5 } } } ### Turn presapient pops into hivemind pops planet_event = { id = cybernetics.5086 hide_window = yes location = FROM is_triggered_only = yes trigger = { exists = owner owner = { has_valid_civic = civic_hive_guided_sapience } } immediate = { random_owned_species = { limit = { has_presapient_trait = yes NOT = { has_trait = trait_hive_mind } } change_species_characteristics = { add_trait = trait_hive_mind } set_citizenship_type = { country = root.owner type = citizenship_full } set_military_service_type = { country = root.owner type = military_service_full cooldown = no } set_population_controls = { country = root.owner type = population_control_no cooldown = no } set_migration_controls = { country = root.owner type = migration_control_no cooldown = no } set_colonization_controls = { country = root.owner type = colonization_control_no cooldown = no } set_living_standard = { country = root.owner type = living_standard_hive_mind cooldown = no } } } } # Virtual Pops go home planet_event = { id = cybernetics.5048 title = cybernetics.5048.name desc = cybernetics.5048.desc picture = GFX_evt_generator_powerup is_triggered_only = yes trigger = { from = { is_virtual_empire = no } any_owned_pop_group = { has_virtual_species_trait = yes } } immediate = { create_pop_group = { species = owner_main_species } every_owned_pop_group = { limit = { has_virtual_species_trait = yes } kill_all_pop = yes } } option = { name = cybernetics.5048.a } } planet_event = { id = cybernetics.5090 hide_window = yes is_triggered_only = yes trigger = { NOT = { has_designation = col_cosmogenesis_world } exists = owner owner = { any_owned_planet = { has_designation = col_cosmogenesis_world } exists = fromfrom #crisis.202 can remove the last pop fromfrom = { has_purge_type = { type = purge_cosmogenesis_lathe_resettle } } } } immediate = { fromfrom = { save_event_target_as = purged_pop } owner = { random_owned_planet = { limit = { has_designation = col_cosmogenesis_world } save_event_target_as = lathe_resettlement_planet } } event_target:lathe_resettlement_planet = { create_pop_group = { species = event_target:purged_pop size = local_pop_amount } } } } # Colony Ship stragglers gate planet_event = { id = cybernetics.5045 hide_window = yes is_triggered_only = yes trigger = { exists = owner owner = { is_virtual_empire = yes } } immediate = { planet_event = { id = cybernetics.5049 days = 2 } } } # Colony Ship stragglers become virtual planet_event = { id = cybernetics.5049 hide_window = yes is_triggered_only = yes trigger = { exists = owner owner = { is_virtual_empire = yes } any_owned_pop_group = { is_same_species = owner_main_species has_virtual_species_trait = no } } immediate = { if = { limit = { owner = { has_tradition = tr_virtuality_1 } } every_owned_pop_group = { limit = { is_same_species = owner_main_species has_virtual_species_trait = no } modify_species = { species = this add_trait = trait_robot_digital_2 } } } else = { every_owned_pop_group = { limit = { is_same_species = owner_main_species has_virtual_species_trait = no } modify_species = { species = this add_trait = trait_robot_digital_1 } } } } } country_event = { id = cybernetics.5095 hide_window = yes location = FROM is_triggered_only = yes trigger = { NOT = { has_valid_civic = civic_machine_tactical_algorithms } from = { has_trait = leader_trait_tactical_algorithms } } immediate = { set_timed_country_flag = { flag = no_murdering_tactical_leaders days = 3600 } } }