From 97ea859c6ce2271e9009a53fd0a792374674473e Mon Sep 17 00:00:00 2001 From: "ProjectKoi-Kalo\\Kalo" Date: Sat, 13 Apr 2024 22:07:02 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=B8=89=E5=90=88=E4=B8=80=EF=BC=8C?= =?UTF-8?q?=E4=B8=8D=E7=9F=A5=E9=81=93=E5=93=AA=E6=94=B9=E7=83=82=E4=BA=86?= =?UTF-8?q?=EF=BC=8C=E8=88=B0R=E5=85=BC=E5=AE=B9=E5=A4=A7=E6=A6=82?= =?UTF-8?q?=E4=B9=9F=E5=AF=84=E4=BA=86=20=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/leader_classes/RG_leader_classes.txt | 103 +++++++++++ .../scripted_effects/RG_gray_goo_effects.txt | 50 +++--- .../RG_gray_leader_init_effects.txt | 162 ++++++++++++++---- .../rg_gray_warship_init_effects.txt | 6 +- .../rg_leader_scripted_triggers.txt | 8 +- .../!_RG_projects_distant_stars.txt | 12 +- .../static_modifiers/RG_static_modifiers.txt | 74 ++++++++ common/traits/!_RG_gray_goo_traits.txt | 139 ++++++++------- events/!_RG_gray_goo_events.txt | 3 +- events/RG_gray_leader_dialog_event.txt | 34 ++-- events/RG_gray_leader_event.txt | 35 ++-- events/RG_wsg_graygoo_event.txt | 21 ++- .../simp_chinese/RG_l_simp_chinese.yml | 7 +- 13 files changed, 477 insertions(+), 177 deletions(-) create mode 100644 common/leader_classes/RG_leader_classes.txt diff --git a/common/leader_classes/RG_leader_classes.txt b/common/leader_classes/RG_leader_classes.txt new file mode 100644 index 0000000..66af17a --- /dev/null +++ b/common/leader_classes/RG_leader_classes.txt @@ -0,0 +1,103 @@ +# example_class = { +# name = +# name_plural = +# description = +# +# #all the following default to no +# can_lead_army = yes/no # Applies skill__army scaled by level to armies +# can_lead_navy = yes/no # Applies skill__navy scaled by level to fleets +# can_govern_planet = yes/no # Applies skill__planet_governor scaled by level to governed planet + # Applies skill__sector_governor scaled by level to governed sector, if governing the sector capital + # Applies skill__background_planet_governor scaled by level togoverned planet, if governing their homeworld +# can_be_envoy = yes/no +# can_research_tech = yes/no +# can_research_special_projects = yes/no +# can_crew_science_ship = yes/no +# can_research_anomalies = yes/no +# can_research_archaeology_site = yes/no +# can_survey = yes/no +# can_boost_cloaking_detection = yes/no +# can_explore_rifts = yes/no +# can_conduct_active_reconnaissance = yes/no +# can_govern_planet = yes/no +# can_have_traits = yes/no # defaults to yes, if no this class will not gain LEADER_ASSIGNED_MONTHLY_EXPERIENCE when assigned +# can_rule_empire = yes/no # defaults to yes +# recruitable = yes/no # defaults to yes +# max_trait_points = +# leader_capacity = # maximum number of leader of this type before you get maluses, 0 means no cap +# replaces_old_class = "old_class" # used for backwards compatibility. When "old_class" appears in an old save, it is converted to this class at loading +# # can appear multiple times +# +# resources = { #upkeep +# category = leader_scientists/etc +# cost = { +# ... +# } +# } +# +# ai_weight = { # used to determine which type of leader the AI prefers (frex: commanders for warlike leaders, and governor for pacifists) +# base = +# modifier = {} +# } +# +# ai_location_weight = { # used to evaluate a specific leader for an assignment to a specific location (right now only used for fleet), +# # scope is the leader, from is the leader location (can be a planet, a fleet, an army etc) +# # if the score is 0 or less, the leader will not be assigned to that location +# base = +# modifier = {} +# } +# +# minimum_ai_target = +# +# leader_background_job_weight = { +# job_name = +# # etc +# } +# } +# +# icon = 1 # 1-based index in the icon file. might be replaced by an icon name later +# +# paragon_background_selector = , used to display a background behind paragon portraits +# +# +# How the AI assigns leaders now: +# +# Step 1: Sort all possible location using the NDefines::NAI::LOCATION_WEIGHT_* values (all of them are multipliers except the galactic community which is a flat value) +# Step 2: Sort all available leaders by skill +# Step 3: for each leader in order, calculate a location weight based on the ai_location_weight of their class +# Step 4: Assign the highest leader/location pair based on the weight +# Step 5: if no leader was assigned, see if hiring a leader is possible repeating the same steps + +rg_nanite_leader = { + name = rg_nanite_leader + name_plural = rg_nanite_leader_plural + description = rg_nanite_leader_description + + can_lead_army = yes + can_lead_navy = yes + can_govern_planet = yes + can_be_envoy = yes + can_research_tech = yes + can_research_special_projects = yes + can_crew_science_ship = yes + can_research_anomalies = yes + can_research_archaeology_site = yes + can_survey = yes + can_boost_cloaking_detection = yes + can_explore_rifts = yes + can_conduct_active_reconnaissance = yes + can_govern_planet = yes + can_have_traits = yes + can_rule_empire = yes + recruitable = no + max_trait_points = 3 + leader_capacity = 3 + + ai_weight = { + modifier = { + factor = 0 + } + } + icon = 4 + paragon_background_selector = "paragon_background_selector" +} \ No newline at end of file diff --git a/common/scripted_effects/RG_gray_goo_effects.txt b/common/scripted_effects/RG_gray_goo_effects.txt index 57572d2..cb6b783 100644 --- a/common/scripted_effects/RG_gray_goo_effects.txt +++ b/common/scripted_effects/RG_gray_goo_effects.txt @@ -75,7 +75,7 @@ rg_global_gray_location_check = { any_owned_planet = { exists = sector.leader sector.leader = { - has_leader_flag = gray_governor + has_leader_flag = gray_official } } } @@ -83,7 +83,7 @@ rg_global_gray_location_check = { limit = { exists = sector.leader sector.leader = { - has_leader_flag = gray_governor + has_leader_flag = gray_official } } save_global_event_target_as = global_gray_location @@ -219,16 +219,16 @@ rg_create_gray_governor = { #把娘家的总督领袖接回来 if = { limit = { - exists = event_target:gray_governor + exists = event_target:gray_official } - event_target:gray_governor = { + event_target:gray_official = { set_owner = event_target:gray_owner remove_leader_flag = rg_gray_leader_temp } } #如果不存在总督备份,现场变一个 else = { - rg_gray_govener_init = yes + rg_gray_offical_init = yes } #设置总督已启用标识 set_country_flag = gray_official_active #新版flag @@ -241,7 +241,7 @@ rg_create_gray_governor = { #等级导入,把存储的领袖等级赋予到领袖身上 random_owned_leader = { limit = { - has_leader_flag = gray_governor + has_leader_flag = gray_official } set_skill = owner.rg_gray_level } @@ -331,16 +331,16 @@ rg_create_gray_governor_habitat = { #把娘家的总督领袖接回来 if = { limit = { - exists = event_target:gray_governor + exists = event_target:gray_official } - event_target:gray_governor = { + event_target:gray_official = { set_owner = event_target:gray_owner remove_leader_flag = rg_gray_leader_temp } } #如果不存在总督备份,现场变一个 else = { - rg_gray_govener_init = yes + rg_gray_offical_init = yes } rg_juggernaut_habitat_init = yes #设置总督已启用标识 @@ -355,7 +355,7 @@ rg_create_gray_governor_habitat = { #等级导入,把存储的领袖等级赋予到领袖身上 random_owned_leader = { limit = { - has_leader_flag = gray_governor + has_leader_flag = gray_official } set_skill = owner.rg_gray_level } @@ -406,15 +406,15 @@ rg_create_gray_warship = { } if = { limit = { - exists = event_target:gray_leader_admiral + exists = event_target:gray_official } - event_target:gray_leader_admiral = { + event_target:gray_official = { set_owner = event_target:gray_owner remove_leader_flag = rg_gray_leader_temp } } else = { - rg_gray_commander_init = yes + rg_gray_offical_init = yes } set_country_flag = gray_warship_active if = { @@ -469,7 +469,7 @@ rg_create_gray_warship = { remove_country_flag = gray_army_active random_owned_leader = { limit = { - has_leader_flag = gray_admiral + has_leader_flag = gray_official } set_skill = owner.rg_gray_level } @@ -480,7 +480,7 @@ rg_create_gray_warship = { rg_create_gray_army = { if = { limit = { - has_leader_flag = gray_army_active + has_country_flag = gray_army_active } } else = { @@ -519,15 +519,15 @@ rg_create_gray_army = { } if = { limit = { - exists = event_target:gray_leader_general + exists = event_target:gray_official } - event_target:gray_leader_general = { + event_target:gray_official = { set_owner = event_target:gray_owner remove_leader_flag = rg_gray_leader_temp } } else = { - rg_gray_commander_init = yes + rg_gray_offical_init = yes } create_ship_design = { design = "NAME_RG_armed_transport_ship" @@ -553,7 +553,7 @@ rg_create_gray_army = { } } last_created_army = { - assign_leader = event_target:gray_leader_general + assign_leader = event_target:gray_official } every_owned_fleet = { limit = { @@ -583,7 +583,7 @@ rg_create_gray_army = { remove_ship_design = last_created_design random_owned_leader = { limit = { - has_leader_flag = gray_general + has_leader_flag = gray_official } set_skill = owner.rg_gray_level } @@ -633,15 +633,15 @@ rg_create_gray_const = { } if = { limit = { - exists = event_target:gray_leader_scientist + exists = event_target:gray_official } - event_target:gray_leader_scientist = { + event_target:gray_official = { set_owner = event_target:gray_owner remove_leader_flag = rg_gray_leader_temp } } else = { - rg_gray_scientist_init = yes + rg_gray_offical_init = yes } set_country_flag = gray_constship_active create_fleet = { @@ -671,7 +671,7 @@ rg_create_gray_const = { set_fleet_flag = gray_constship save_global_event_target_as = global_gray_constship set_cloaking_active = yes - assign_leader = event_target:gray_leader_scientist + assign_leader = event_target:gray_official } } every_owned_fleet = { @@ -703,7 +703,7 @@ rg_create_gray_const = { remove_country_flag = gray_official_active random_owned_leader = { limit = { - has_leader_flag = gray_scientist + has_leader_flag = gray_official } set_skill = owner.rg_gray_level } diff --git a/common/scripted_effects/RG_gray_leader_init_effects.txt b/common/scripted_effects/RG_gray_leader_init_effects.txt index 9ae66b6..5f0286e 100644 --- a/common/scripted_effects/RG_gray_leader_init_effects.txt +++ b/common/scripted_effects/RG_gray_leader_init_effects.txt @@ -1,37 +1,128 @@ -# 避免代码复用原则: -# 如果你需要在不同的地方重复调用同一套代码,你应当把他们封装在这样的函数里。 -# 避免需要修改代码时需要重复修改n次,或是发生修改了A处忘记修改B处导致bug发生的问题。 -# 当然,这种分块需要到什么程度,我也不知道 #灰风 -################################ -# 舰R 灰风领袖好感度设定块部分:采样时间戳:2023/6/1 8:17 -# 仅用于留档比对不进行改动 -# wg_affection_wg_gray_system_launch = { -# if = { -# limit = { has_leader_flag = gray_leader } -# set_leader_flag = has_wg_affection -# set_leader_flag = has_wg_affection_wg_gray -# set_leader_flag = wg_affection_auto_change_no -# add_trait_no_notify = leader_trait_wg_gray_affection -# set_variable = { which = affection value = owner.wg_gray_affection } -# set_variable = { which = wg_leader_affection_to_lv2 value = @wg_gray_affection_to_lv2 } -# set_variable = { which = wg_leader_affection_to_lv3 value = @wg_gray_affection_to_lv3 } -# set_variable = { which = wg_leader_affection_to_lv4 value = @wg_gray_affection_to_lv4 } -# set_variable = { which = wg_leader_affection_to_lv5 value = @wg_gray_affection_to_lv5 } -# set_variable = { which = wg_leader_affection_reduce value = @wg_gray_affection_reduce } -# set_variable = { which = wg_leader_affection_increase value = @wg_gray_affection_increase } -# } -# -# } -# wg_affection_wg_gray_system_check = { -# if = { -# limit = { -# has_leader_flag = has_wg_affection_wg_gray -# } -# set_variable = { which = affection value = owner.wg_gray_affection } -# } -# } -################################ +rg_gray_offical_init = { + event_target:rg_gray_country = { + create_leader = { + class = rg_nanite_leader + species = event_target:gray_species + name = "NAME_Gray" + gender = female + immortal = yes + event_leader = yes + skip_background_generation = yes + randomize_traits = no + custom_catch_phrase = gray_catch_phrase + custom_description = gray_backstory + background_ethic = ethic_gestalt_consciousness + hide_age = yes + skill = 10 + set_age = 18 + traits = { + 0 = RG_leader_trait_offical_gray + } + effect = { + save_global_event_target_as = gray_official + set_leader_flag = gray_governor + set_leader_flag = gray_official + set_leader_flag = legendary_leader + set_leader_flag = immune_to_negative_traits + set_leader_flag = rg_gray_leader + if = { + limit = { + owner = { + has_global_flag = has_wsg_mod + } + } + set_leader_flag = not_has_wg_affection_normal + } + if = { + limit = { + owner = { + OR = { + has_global_flag = has_wsg_mod + has_global_flag = kdc_event_mod_active + } + } + } + set_leader_flag = "gray_leader" + set_leader_flag = gray_leader + add_trait_no_notify = leader_trait_governor_gray + if = { + limit = { + owner = { + has_country_flag = origin_gray_weaken + has_country_flag = origin_gray_country + } + } + remove_trait = leader_trait_governor_gray + add_trait_no_notify = leader_trait_governor_gray_weak + } + } + add_trait_no_notify = RG_leader_trait_offical_gray + add_trait_no_notify = RG_leader_trait_ruler_gray + add_trait_no_notify = RG_leader_trait_admiral_nanorebuild_gray + add_trait_no_notify = subclass_official_governor + add_trait_no_notify = subclass_commander_councilor + add_trait_no_notify = subclass_scientist_explorer + add_trait_no_notify = trait_ruler_architectural_sense_3 + add_trait_no_notify = leader_trait_distribution_lines_2 + add_trait_no_notify = leader_trait_carrier_specialization + add_trait_no_notify = leader_trait_juryrigger_2 + add_trait_no_notify = leader_trait_reinforcer_2 + add_trait_no_notify = leader_trait_engineering_focus_2 + add_trait_no_notify = leader_trait_salvager_3 + } + } + last_created_leader = { + set_owner = event_target:gray_owner + } + } + last_created_leader = { + set_leader_flag = has_gained_level_trait + } + random_owned_leader = { + limit = { + has_leader_flag = gray_official + } + if = { + limit = { + owner = { + OR = { + has_global_flag = has_wsg_mod + has_global_flag = kdc_event_mod_active + } + } + } + if = { + limit = { + has_leader_flag = has_wg_affection_wg_gray + } + if = { + limit = { + owner = { has_country_flag = married_gray } + } + set_leader_flag = married + } + set_variable = { which = affection value = owner.wg_gray_affection } + } + # if = { + # limit = { + # owner = { + # has_country_flag = gray_encountered_the_loop + # } + # } + # add_trait_no_notify = leader_trait_governor_wg_the_loop + # } + set_gray_portrait = yes + # add_special_leader_affection_trait = { LEADER = gray LEADER_CLASS = governor MARRIED_FLAG = married_gray } + } + else = { + rg_set_gray_portrait = yes + } + } + RG_leader_trait_admiral_nanorebuild_gray_counter_init_effect = yes + RG_leader_trait_general_tempest_incoming_counter_init_effect = yes +} + rg_gray_govener_init = { event_target:rg_gray_country = { create_leader = { @@ -74,7 +165,7 @@ rg_gray_govener_init = { } } } - set_leader_flag = "gray_leader" #某个mod新旧flag混用,我不说是谁。嗯嘿嘿 + set_leader_flag = "gray_leader" set_leader_flag = gray_leader add_trait_no_notify = leader_trait_governor_gray add_trait_no_notify = RG_leader_trait_ruler_gray @@ -148,7 +239,6 @@ rg_gray_govener_init = { rg_set_gray_portrait = yes } } - } rg_gray_commander_init = { @@ -652,4 +742,4 @@ rg_gray_country_leader_init = { last_created_leader = { rg_set_gray_portrait = yes } -} +} \ No newline at end of file diff --git a/common/scripted_effects/rg_gray_warship_init_effects.txt b/common/scripted_effects/rg_gray_warship_init_effects.txt index 3a71e13..58d382a 100644 --- a/common/scripted_effects/rg_gray_warship_init_effects.txt +++ b/common/scripted_effects/rg_gray_warship_init_effects.txt @@ -31,7 +31,7 @@ rg_warship_init_mod1 = { } set_fleet_flag = gray_fleet save_global_event_target_as = gray_warship - assign_leader = event_target:gray_leader_admiral + assign_leader = event_target:gray_official if = { limit = { has_global_flag = kdc_event_mod_active @@ -75,7 +75,7 @@ rg_warship_init_mod2 = { } set_fleet_flag = gray_fleet save_global_event_target_as = gray_warship - assign_leader = event_target:gray_leader_admiral + assign_leader = event_target:gray_official if = { limit = { has_global_flag = kdc_event_mod_active @@ -163,7 +163,7 @@ rg_warship_init_mod0 = { } set_fleet_flag = gray_fleet save_global_event_target_as = gray_warship - assign_leader = event_target:gray_leader_admiral + assign_leader = event_target:gray_official if = { limit = { has_global_flag = kdc_event_mod_active diff --git a/common/scripted_triggers/rg_leader_scripted_triggers.txt b/common/scripted_triggers/rg_leader_scripted_triggers.txt index 7d42f70..36c4ad7 100644 --- a/common/scripted_triggers/rg_leader_scripted_triggers.txt +++ b/common/scripted_triggers/rg_leader_scripted_triggers.txt @@ -1,5 +1,5 @@ RG_gray_mod1_trigger = { - event_target:gray_leader_admiral = { + event_target:gray_official = { has_skill >= 10 } NOR = { @@ -34,7 +34,7 @@ RG_gray_mod1_allow_trigger = { } custom_tooltip = { fail_text = requires_rg_graylevel_higherthan_25 - event_target:gray_leader_admiral = { + event_target:gray_official = { has_skill >= 10 } } @@ -50,7 +50,7 @@ RG_gray_mod1_allow_trigger = { RG_gray_mod2_trigger = { AND = { - event_target:gray_leader_admiral = { + event_target:gray_official = { has_skill >= 10 } has_country_flag = rg_gray_level_2 @@ -91,7 +91,7 @@ RG_gray_mod2_allow_trigger = { } custom_tooltip = { fail_text = requires_rg_graylevel_higherthan_20 - event_target:gray_leader_admiral = { + event_target:gray_official = { has_skill >= 20 } } diff --git a/common/special_projects/!_RG_projects_distant_stars.txt b/common/special_projects/!_RG_projects_distant_stars.txt index 627bf16..f40fe4d 100644 --- a/common/special_projects/!_RG_projects_distant_stars.txt +++ b/common/special_projects/!_RG_projects_distant_stars.txt @@ -63,8 +63,8 @@ special_project = { event_scope = ship_event requirements = { shipclass_military = 1 - leader = commander - has_trait = RG_leader_trait_admiral_gray + leader = rg_nanite_leader + # has_trait = RG_leader_trait_admiral_gray } on_start = { owner = { @@ -102,8 +102,8 @@ special_project = { event_scope = ship_event requirements = { shipclass_military = 1 - leader = admiral - has_trait = RG_leader_trait_admiral_gray + leader = rg_nanite_leader + # has_trait = RG_leader_trait_admiral_gray } on_start = { owner = { @@ -139,8 +139,8 @@ special_project = { event_scope = ship_event requirements = { shipclass_military = 1 - leader = commander - has_trait = RG_leader_trait_admiral_gray + leader = rg_nanite_leader + # has_trait = RG_leader_trait_admiral_gray } on_start = { owner = { diff --git a/common/static_modifiers/RG_static_modifiers.txt b/common/static_modifiers/RG_static_modifiers.txt index 3897501..9f89a6a 100644 --- a/common/static_modifiers/RG_static_modifiers.txt +++ b/common/static_modifiers/RG_static_modifiers.txt @@ -47,3 +47,77 @@ gray_affection_warship_lv5 = { ship_ftl_jumpdrive_range_mult = 0.5 force_disparity_fire_rate_mult = 3 } + +skill_rg_nanite_leader_navy = { + ship_weapon_range_mult = 0.05 + ship_hull_mult = 0.05 + ship_fire_rate_mult = 0.1 +} + +skill_rg_nanite_leader_army = { + army_damage_mult = 0.1 + army_morale_damage_mult = 0.1 + army_health = 0.1 + army_morale = 0.1 +} + +skill_rg_nanite_leader = { + custom_tooltip = skill_official_delegate_tt + science_ship_survey_speed = 0.10 + ship_archaeological_site_clues_add = 1 + ship_astral_rift_clues_add = 1 +} + +skill_rg_nanite_leader_planet_governor = { + custom_tooltip = skill_official_planet_governor_tt + planet_jobs_energy_produces_mult = @planet_job_mult + planet_jobs_minerals_produces_mult = @planet_job_mult + planet_jobs_food_produces_mult = @planet_job_mult + planet_jobs_alloys_produces_mult = @planet_job_mult + planet_jobs_consumer_goods_produces_mult = @planet_job_mult + planet_jobs_exotic_gases_produces_mult = @planet_job_mult + planet_jobs_rare_crystals_produces_mult = @planet_job_mult + planet_jobs_volatile_motes_produces_mult = @planet_job_mult + + # planet_jobs_ruler_produces_mult = @negative_planet_job_mult + # planet_jobs_specialist_produces_mult = @negative_planet_job_mult + planet_jobs_worker_produces_mult = @planet_job_mult + planet_jobs_slave_produces_mult = @planet_job_mult + job_soldier_or_warrior_add = 1 + planet_crime_add = -1 + + planet_jobs_physics_research_produces_mult = @planet_job_mult + planet_jobs_society_research_produces_mult = @planet_job_mult + planet_jobs_engineering_research_produces_mult = @planet_job_mult + species_empire_size_mult = @planet_empire_size +} + +skill_rg_nanite_leader_sector_governor = { + custom_tooltip = skill_official_sector_governor_tt + planet_jobs_energy_produces_mult = @sector_job_mult + planet_jobs_minerals_produces_mult = @sector_job_mult + planet_jobs_food_produces_mult = @sector_job_mult + planet_jobs_alloys_produces_mult = @sector_job_mult + planet_jobs_consumer_goods_produces_mult = @sector_job_mult + planet_jobs_exotic_gases_produces_mult = @sector_job_mult + planet_jobs_rare_crystals_produces_mult = @sector_job_mult + planet_jobs_volatile_motes_produces_mult = @sector_job_mult + + # planet_jobs_ruler_produces_mult = @negative_sector_job_mult + # planet_jobs_specialist_produces_mult = @negative_sector_job_mult + planet_jobs_worker_produces_mult = @sector_job_mult + planet_jobs_slave_produces_mult = @sector_job_mult + job_soldier_or_warrior_add = 0.5 + planet_crime_add = -0.5 + + planet_jobs_physics_research_produces_mult = @sector_job_mult + planet_jobs_society_research_produces_mult = @sector_job_mult + planet_jobs_engineering_research_produces_mult = @sector_job_mult + species_empire_size_mult = @sector_empire_size +} + +skill_rg_nanite_leader_background_planet_governor = { + planet_amenities_add = 2 + planet_stability_add = 0.5 + planet_jobs_upkeep_mult = -0.01 +} \ No newline at end of file diff --git a/common/traits/!_RG_gray_goo_traits.txt b/common/traits/!_RG_gray_goo_traits.txt index 437d17d..0491701 100644 --- a/common/traits/!_RG_gray_goo_traits.txt +++ b/common/traits/!_RG_gray_goo_traits.txt @@ -33,65 +33,78 @@ # randomized = no # } -# RG_leader_trait_offical_gray = { -# #唯一特质 -# cost = 0 -# inline_script = { -# script = trait/icon_psionic -# CLASS = leader -# ICON = "GFX_leader_trait_psionic_chosen_one" -# RARITY = paragon -# COUNCIL = no -# TIER = none -# } -# immortal_leaders = yes -# triggered_self_modifier = { -# potential = { -# always = yes -# } -# leader_skill_levels = 1 -# mult = trigger:has_skill -# } -# self_modifier = { -# species_leader_exp_gain = 1 -# } -# councilor_modifier = { -# all_technology_research_speed = 0.5 -# } -# planet_modifier = { -# planet_buildings_cost_mult = -0.4 -# planet_building_build_speed_mult = 0.6 -# planet_jobs_alloys_produces_mult = 0.25 -# planet_jobs_engineering_research_produces_mult = 0.25 -# deposit_blockers_cost_mult = -0.4 -# planet_clear_blocker_time_mult = -0.6 -# } -# sector_modifier = { -# planet_buildings_cost_mult = -0.2 -# planet_building_build_speed_mult = 0.2 -# planet_jobs_alloys_produces_mult = 0.1 -# planet_jobs_engineering_research_produces_mult = 0.1 -# deposit_blockers_cost_mult = -0.2 -# planet_clear_blocker_time_mult = -0.2 -# starbase_shipyard_build_cost_mult = -0.25 -# starbase_shipyard_build_speed_mult = -0.3 -# } -# fleet_modifier = { -# ship_armor_mult = 3.5 -# ship_hull_mult = 3.5 -# ships_upkeep_mult = -0.4 -# ship_hull_regen_add_perc = 5 -# ship_armor_regen_add_perc = 5 -# } -# army_modifier = { -# army_collateral_damage_mult = 0.15 -# army_disengage_chance_mult = 0.5 -# army_health = 0.35 -# } -# leader_class = all -# initial = no -# randomized = no -# } +RG_leader_trait_offical_gray = { + #唯一特质 + cost = 0 + inline_script = { + script = trait/icon_psionic + CLASS = leader + ICON = "GFX_leader_trait_psionic_chosen_one" + RARITY = paragon + COUNCIL = no + TIER = none + } + immortal_leaders = yes + triggered_self_modifier = { + potential = { + always = yes + } + leader_skill_levels = 1 + mult = trigger:has_skill + } + self_modifier = { + species_leader_exp_gain = 1 + } + councilor_modifier = { + all_technology_research_speed = 0.5 + } + planet_modifier = { + planet_buildings_cost_mult = -0.4 + planet_building_build_speed_mult = 0.6 + planet_jobs_alloys_produces_mult = 0.25 + planet_jobs_engineering_research_produces_mult = 0.25 + deposit_blockers_cost_mult = -0.4 + planet_clear_blocker_time_mult = -0.6 + } + sector_modifier = { + planet_buildings_cost_mult = -0.2 + planet_building_build_speed_mult = 0.2 + planet_jobs_alloys_produces_mult = 0.1 + planet_jobs_engineering_research_produces_mult = 0.1 + deposit_blockers_cost_mult = -0.2 + planet_clear_blocker_time_mult = -0.2 + starbase_shipyard_build_cost_mult = -0.25 + starbase_shipyard_build_speed_mult = -0.3 + } + fleet_modifier = { + ship_armor_mult = 3.5 + ship_hull_mult = 3.5 + ships_upkeep_mult = -0.4 + ship_hull_regen_add_perc = 5 + ship_armor_regen_add_perc = 5 + } + army_modifier = { + army_collateral_damage_mult = 0.15 + army_disengage_chance_mult = 0.5 + army_health = 0.35 + } + modifier = { + ship_archaeological_site_excavation_speed_mult = 0.5 + science_ship_survey_speed = 1 + # ship_windup_mult = -1 + # ship_speed_mult = 0.5 + ship_anomaly_generation_chance_mult = -1 + } + triggered_modifier = { + potential = { + has_astral_planes_dlc = yes + } + country_astral_rift_speed_mult = 0.5 + } + leader_class = { rg_nanite_leader } + initial = no + randomized = no +} RG_leader_trait_governor_gray = { #总督特质 @@ -143,7 +156,7 @@ RG_leader_trait_ruler_gray = { cost = 0 inline_script = { script = trait/icon_psionic - CLASS = official + CLASS = leader ICON = "GFX_leader_trait_legendary_spiritualist_two" RARITY = paragon COUNCIL = yes @@ -257,7 +270,7 @@ RG_leader_trait_ruler_gray = { country_base_influence_produces_add = 1 mult = trigger:has_skill } - leader_class = { official } + leader_class = { official rg_nanite_leader } initial = no randomized = no } @@ -383,7 +396,7 @@ RG_leader_trait_admiral_nanorebuild_gray = { cost = 0 inline_script = { script = trait/icon_psionic - CLASS = commander + CLASS = leader ICON = "GFX_leader_trait_nanorebuild" RARITY = paragon COUNCIL = no @@ -405,7 +418,7 @@ RG_leader_trait_admiral_nanorebuild_gray = { army_health = 0.05 mult = owner.rg_general_skill_combat_daypassed_variable } - leader_class = { commander } + leader_class = { commander rg_nanite_leader } initial = no randomized = no } diff --git a/events/!_RG_gray_goo_events.txt b/events/!_RG_gray_goo_events.txt index 023fb27..fc890d4 100644 --- a/events/!_RG_gray_goo_events.txt +++ b/events/!_RG_gray_goo_events.txt @@ -394,7 +394,6 @@ country_event = { has_country_flag = gray_reforming has_country_flag = gray_diplomacy_engaged } - exists = event_target:gray_governor } immediate = { if = { @@ -626,7 +625,7 @@ event = { has_country_flag = gray_governor_active #旧版flag } NOT = { - exists = event_target:gray_governor + exists = event_target:gray_offical } } AND = { diff --git a/events/RG_gray_leader_dialog_event.txt b/events/RG_gray_leader_dialog_event.txt index dae0010..461854c 100644 --- a/events/RG_gray_leader_dialog_event.txt +++ b/events/RG_gray_leader_dialog_event.txt @@ -191,8 +191,8 @@ country_event = { desc = "graygoo.501.b.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_admiral - planet_background = event_target:gray_governor_planet + portrait = event_target:gray_official + planet_background = event_target:gray_official_planet room = root } is_triggered_only = yes @@ -229,8 +229,8 @@ country_event = { desc = "graygoo.501.c.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_general - planet_background = event_target:gray_governor_planet + portrait = event_target:gray_official + planet_background = event_target:gray_official_planet room = root } is_triggered_only = yes @@ -267,8 +267,8 @@ country_event = { desc = "rg_const.501.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_scientist - planet_background = event_target:gray_governor_planet + portrait = event_target:gray_official + planet_background = event_target:gray_official_planet room = root } is_triggered_only = yes @@ -305,7 +305,7 @@ country_event = { desc = "graygoo.502.a.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_governor + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -342,7 +342,7 @@ country_event = { desc = "graygoo.502.c.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_general + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -379,7 +379,7 @@ country_event = { desc = "RG_graygoo.502.d.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_admiral + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -416,7 +416,7 @@ country_event = { desc = "RG_graygoo.502.e.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_admiral + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -453,7 +453,7 @@ country_event = { desc = "rg_const.502.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_scientist + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -490,7 +490,7 @@ country_event = { desc = "graygoo.503.a.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_governor + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -527,7 +527,7 @@ country_event = { desc = "graygoo.503.b.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_admiral + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -564,7 +564,7 @@ country_event = { desc = "rg_const.503.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_scientist + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -601,7 +601,7 @@ country_event = { desc = "graygoo.505.a.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_governor + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -638,7 +638,7 @@ country_event = { desc = "graygoo.505.b.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_admiral + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -675,7 +675,7 @@ country_event = { desc = "graygoo.505.c.response" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_general + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes diff --git a/events/RG_gray_leader_event.txt b/events/RG_gray_leader_event.txt index 1af3daf..406ca73 100644 --- a/events/RG_gray_leader_event.txt +++ b/events/RG_gray_leader_event.txt @@ -69,7 +69,6 @@ country_event = { has_country_flag = gray_reforming has_country_flag = gray_diplomacy_engaged } - exists = event_target:gray_governor } country_event = { id = rg_grayleader.501 @@ -345,7 +344,7 @@ country_event = { diplomatic = yes event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_governor + portrait = event_target:gray_official planet_background = event_target:gray_governor_planet room = root } @@ -370,7 +369,6 @@ country_event = { has_country_flag = gray_reforming has_country_flag = gray_diplomacy_engaged } - exists = event_target:gray_governor } immediate = { set_country_flag = gray_diplomacy_engaged @@ -379,7 +377,7 @@ country_event = { any_owned_planet = { exists = sector.leader sector.leader = { - is_same_value = event_target:gray_governor + is_same_value = event_target:gray_official } } } @@ -387,7 +385,7 @@ country_event = { limit = { exists = sector.leader sector.leader = { - is_same_value = event_target:gray_governor + is_same_value = event_target:gray_official } } save_event_target_as = gray_governor_planet @@ -411,7 +409,10 @@ country_event = { response_text = graygoo.501.b.response allow = { hidden_trigger = { - exists = event_target:gray_governor + OR = { + has_country_flag = gray_official_active + has_country_flag = gray_governor_active #旧版flag + } } # To prevent exploit } hidden_effect = { @@ -427,7 +428,10 @@ country_event = { response_text = graygoo.501.c.response allow = { hidden_trigger = { - exists = event_target:gray_governor + OR = { + has_country_flag = gray_official_active + has_country_flag = gray_governor_active #旧版flag + } } } hidden_effect = { @@ -443,7 +447,10 @@ country_event = { response_text = rg_const.501.response allow = { hidden_trigger = { - exists = event_target:gray_governor + OR = { + has_country_flag = gray_official_active + has_country_flag = gray_governor_active #旧版flag + } } } hidden_effect = { @@ -489,7 +496,7 @@ country_event = { diplomatic = yes event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_admiral + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -813,7 +820,7 @@ country_event = { diplomatic = yes event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_general + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -1191,7 +1198,7 @@ country_event = { diplomatic = yes event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_leader_scientist + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -1385,7 +1392,7 @@ country_event = { desc = "rg_event.4.a.desc" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_governor + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -1534,7 +1541,7 @@ country_event = { desc = "rg_event.5.c.desc" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_governor + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes @@ -1588,7 +1595,7 @@ country_event = { desc = "rg_event.6.b.desc" event_window_type = leader_recruit picture_event_data = { - portrait = event_target:gray_governor + portrait = event_target:gray_official room = "ethic_spaceship_room" } is_triggered_only = yes diff --git a/events/RG_wsg_graygoo_event.txt b/events/RG_wsg_graygoo_event.txt index f3dfe85..c980eb9 100644 --- a/events/RG_wsg_graygoo_event.txt +++ b/events/RG_wsg_graygoo_event.txt @@ -249,7 +249,7 @@ country_event = { has_country_flag = gray_diplomacy_engaged has_country_flag = ban_commu_with_gray } - exists = event_target:gray_governor + exists = event_target:gray_official } immediate = { set_country_flag = gray_diplomacy_engaged @@ -258,7 +258,7 @@ country_event = { any_owned_planet = { exists = sector.leader sector.leader = { - is_same_value = event_target:gray_governor + is_same_value = event_target:gray_official } } } @@ -266,7 +266,7 @@ country_event = { limit = { exists = sector.leader sector.leader = { - is_same_value = event_target:gray_governor + is_same_value = event_target:gray_official } } save_event_target_as = gray_governor_planet @@ -290,7 +290,10 @@ country_event = { response_text = graygoo.501.b.response allow = { hidden_trigger = { - exists = event_target:gray_governor + OR = { + has_country_flag = gray_official_active + has_country_flag = gray_governor_active #旧版flag + } } custom_tooltip = { fail_text = gray_become_ruler @@ -312,7 +315,10 @@ country_event = { response_text = rg_const.501.response allow = { hidden_trigger = { - exists = event_target:gray_governor + OR = { + has_country_flag = gray_official_active + has_country_flag = gray_governor_active #旧版flag + } } custom_tooltip = { fail_text = gray_become_ruler @@ -333,7 +339,10 @@ country_event = { response_text = graygoo.501.c.response allow = { hidden_trigger = { - exists = event_target:gray_governor + OR = { + has_country_flag = gray_official_active + has_country_flag = gray_governor_active #旧版flag + } } custom_tooltip = { fail_text = gray_become_ruler diff --git a/localisation/simp_chinese/RG_l_simp_chinese.yml b/localisation/simp_chinese/RG_l_simp_chinese.yml index bb9bd48..c500032 100644 --- a/localisation/simp_chinese/RG_l_simp_chinese.yml +++ b/localisation/simp_chinese/RG_l_simp_chinese.yml @@ -28,9 +28,14 @@ RG_leader_trait_admiral_nanorebuild_gray_desc:0 "灰色风暴在L星团中席卷无数纪元。\n创造与解构,纳米机器席卷之处我们无所不能。" RG_leader_trait_admiral_nanorebuild_effect:0 "$FLEET_EFFECTS_TXT$:\n$t$每摧毁一艘敌军舰船:\n$tt$§Y重塑计数器层数§!: §G+1§!\n$t$这位领袖所在舰队损失舰船时:\n$tt$消耗§Y重塑计数器层数§!立即重建舰船。\n$t$当前§Y重塑计数器层数§!: §Y[owner.rg_nanorebuild_counter]§!\n$t$§Y$NAME_Gray$§!无法被该技能重建。\n\n$RG_leader_trait_tempest_incoming_effect$" - preset_rg_scion: "誓约计划国" + preset_rg_scion: "§Y誓约计划国§!" preset_rg_scion_desc: "出于某种不可告人的目的,远古堕落帝国将其视若己出。他们的远古宗主不会允许其誓约国受到任何外部干扰。" + rg_nanite_leader:0"§Y纳米机器个体§!" + rg_nanite_leader_plural:0"§Y纳米机器个体§!" + rg_nanite_leader_description:0"§Y本质上是由千千万万纳米机械所组成的个体。因为能做到,所以将无所不能。§!" + rg_nanite_leader_plural_with_icon:0"£offical£ $rg_nanite_leader_plural$" + concept_rg_scion: "$preset_rg_scion$" concept_rg_scion_desc: "$preset_rg_scion_desc$" From df1e219f51973e3a4a870f47fc1ab1f38309d33a Mon Sep 17 00:00:00 2001 From: "ProjectKoi-Kalo\\Kalo" Date: Sun, 14 Apr 2024 03:49:31 +0800 Subject: [PATCH 2/2] =?UTF-8?q?Revert=20"=E6=9A=82=E5=AD=98"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit c0f8d6f8da147a6040e80ee66fa250761bf0a3d5. --- .../RG_fallen_empire_effects.txt | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/common/scripted_effects/RG_fallen_empire_effects.txt b/common/scripted_effects/RG_fallen_empire_effects.txt index e646281..bca58cd 100644 --- a/common/scripted_effects/RG_fallen_empire_effects.txt +++ b/common/scripted_effects/RG_fallen_empire_effects.txt @@ -112,14 +112,17 @@ rg_create_fallen_empire_starting_navy = { limit = { host_has_dlc = "Apocalypse" } - create_fleet = { - effect = { - set_owner = prev.owner - rg_create_fallen_empire_colossus = yes - set_location = { - target = prev - distance = 30 - angle = random + random = { + chance = 10 + create_fleet = { + effect = { + set_owner = prev.owner + rg_create_fallen_empire_colossus = yes + set_location = { + target = prev + distance = 30 + angle = random + } } } }