修改纳米技术赤字情况,调整资源类型和相关效果

This commit is contained in:
ProjectKoi-Kalo\Kalo 2024-09-24 23:43:03 +08:00
parent 8411e7c7bd
commit 00ad348916
6 changed files with 340 additions and 205 deletions

View File

@ -1,192 +1,150 @@
situation_nanties_deficit = {
picture = GFX_evt_deficit
category = negative
fail_icon = GFX_situation_outcome_meh
fail_icon_frame = GFX_situation_outcome_frame_green
complete_icon = GFX_situation_outcome_bankrupcy
complete_icon_frame = GFX_situation_outcome_frame_red
on_start = {
set_situation_flag = deficit_situation
owner = {
country_event = { id = advisor.20 days = 10 random = 20 }
save_event_target_as = kaleidoscope_new_owner
}
random_playable_country = {
limit = {
has_country_flag = gave_kaleidoscope_to@owner
}
country_event = { id = situation.2025 days = 10 random = 20 }
}
}
on_abort = {
owner = {
add_resource = {
energy = @bailout_basic_base_amount
mult = value:bailout_scaling_factor
}
}
}
start_value = 15
on_monthly = {
random_events = {
80 = 0
20 = origin.4170 # Payback | MSI helping you
}
}
stages = {
deficit_first = {
icon = GFX_situation_stage_1
icon_background = GFX_situation_stage_frame_red
end = 25
modifier = {
planet_researchers_physics_research_produces_add = -0.5
planet_researchers_society_research_produces_add = -0.5
planet_researchers_engineering_research_produces_add = -0.5
diplo_weight_economy_mult = -0.1
planet_pop_assembly_reduction = 0.1
ship_disengage_chance_mult = -0.1
ship_weapon_damage = -0.20
ship_speed_mult = -0.20
}
}
deficit_second = {
icon = GFX_situation_stage_2
icon_background = GFX_situation_stage_frame_red
end = 50
modifier = {
planet_researchers_physics_research_produces_add = -1
planet_researchers_society_research_produces_add = -1
planet_researchers_engineering_research_produces_add = -1
diplo_weight_economy_mult = -0.2
planet_pop_assembly_reduction = 0.2
ship_disengage_chance_mult = -0.25
ship_weapon_damage = -0.40
ship_speed_mult = -0.40
}
}
deficit_third = {
icon = GFX_situation_stage_3
icon_background = GFX_situation_stage_frame_red
end = 75
modifier = {
planet_researchers_physics_research_produces_add = -1.5
planet_researchers_society_research_produces_add = -1.5
planet_researchers_engineering_research_produces_add = -1.5
diplo_weight_economy_mult = -0.33
planet_pop_assembly_reduction = 0.33
ship_disengage_chance_mult = -0.50
ship_weapon_damage = -0.60
ship_speed_mult = -0.60
}
}
deficit_fourth = {
icon = GFX_situation_stage_4
icon_background = GFX_situation_stage_frame_red
end = 100
on_first_enter = {
situation_event = { id = deficit.100 }
}
modifier = {
planet_researchers_physics_research_produces_add = -2
planet_researchers_society_research_produces_add = -2
planet_researchers_engineering_research_produces_add = -2
diplo_weight_economy_mult = -0.5
planet_pop_assembly_reduction = 0.5
ship_disengage_chance_mult = -0.75
planet_jobs_produces_mult = -0.1
ship_weapon_damage = -0.8
ship_speed_mult = -0.8
}
}
}
on_progress_complete = {
country_defaulted_in_situation_tooltip = yes
hidden_effect = {
situation_event = { id = deficit.110 }
}
}
on_fail = {
custom_tooltip = deficit_situation_finish_tooltip
hidden_effect = { destroy_situation = this }
}
monthly_progress = {
base = 0
modifier = {
add = value:deficit_situation_progress_value|RESOURCE|energy|
desc = string_expenditures_greater_than_income_energy
owner = { has_actual_deficit = { RESOURCE = energy } }
}
modifier = {
subtract = 5
desc = string_not_in_deficit_energy
owner = {
resource_income_compare = {
resource = energy
value >= 0
}
}
}
modifier = {
subtract = 1
desc = string_resource_reserves_energy
owner = {
has_negative_income_with_stockpile = { RESOURCE = energy }
}
}
modifier = {
desc = civilian_difficulty
mult = 0.1
situation_monthly_progress > 0
is_difficulty = 0
owner = {
is_ai = no
}
}
modifier = {
desc = cadet_difficulty
mult = 0.5
situation_monthly_progress > 0
is_difficulty = 1
owner = {
is_ai = no
}
}
}
approach = {
name = deficit_approach_do_nothing
icon = GFX_situation_approach_this_is_fine
icon_background = GFX_situation_approach_bg_yellow
default = yes
on_select = {
custom_tooltip = deficit_approach_do_nothing_tooltip
}
ai_weight = {
base = 1
}
}
approach = {
name = deficit_approach_cut_science_investment
icon = GFX_situation_approach_research
icon_background = GFX_situation_approach_bg_red
modifier = {
planet_researchers_produces_mult = -0.5
planet_buildings_energy_upkeep_mult = -0.2
}
ai_weight = {
base = 0
modifier = {
add = 2
current_stage = deficit_third
}
modifier = {
add = 2
current_stage = deficit_fourth
}
}
}
situation_nanites_deficit = {
picture = GFX_evt_deficit
category = negative
fail_icon = GFX_situation_outcome_meh
fail_icon_frame = GFX_situation_outcome_frame_green
complete_icon = GFX_situation_outcome_bankrupcy
complete_icon_frame = GFX_situation_outcome_frame_red
on_start = {
set_situation_flag = deficit_situation
}
on_abort = {
owner = {
add_resource = {
nanites = @bailout_strategic_base_amount
mult = value:bailout_scaling_factor
}
}
}
start_value = 15
stages = {
deficit_first = {
icon = GFX_situation_stage_1
icon_background = GFX_situation_stage_frame_red
end = 25
modifier = {
planet_jobs_upkeep_mult = 0.05
all_technology_research_speed = -0.05
planet_buildings_upkeep_mult = 0.05
megastructures_upkeep_mult = 0.05
}
}
deficit_second = {
icon = GFX_situation_stage_2
icon_background = GFX_situation_stage_frame_red
end = 50
modifier = {
planet_jobs_upkeep_mult = 0.1
all_technology_research_speed = -0.1
planet_buildings_upkeep_mult = 0.1
megastructures_upkeep_mult = 0.1
}
}
deficit_third = {
icon = GFX_situation_stage_3
icon_background = GFX_situation_stage_frame_red
end = 75
modifier = {
planet_jobs_upkeep_mult = 0.15
all_technology_research_speed = -0.2
planet_buildings_upkeep_mult = 0.15
megastructures_upkeep_mult = 0.15
}
}
deficit_fourth = {
icon = GFX_situation_stage_4
icon_background = GFX_situation_stage_frame_red
end = 100
on_first_enter = {
situation_event = {
id = gigadeficit.160
}
}
modifier = {
planet_jobs_upkeep_mult = 0.2
all_technology_research_speed = -0.4
planet_buildings_upkeep_mult = 0.2
megastructures_upkeep_mult = 0.2
}
}
}
on_progress_complete = {
country_defaulted_in_situation_tooltip = yes
hidden_effect = {
situation_event = {
id = rg_deficit.220
}
}
}
on_fail = {
custom_tooltip = deficit_situation_finish_tooltip
hidden_effect = {
destroy_situation = this
}
}
monthly_progress = {
base = 0
modifier = {
add = value:deficit_situation_progress_value|RESOURCE|nanites|
desc = string_expenditures_greater_than_income_nanites
owner = {
has_actual_deficit = {
RESOURCE = nanites
}
}
}
modifier = {
subtract = 3
desc = string_not_in_deficit_nanites
owner = {
resource_income_compare = {
resource = nanites
value >= 0
}
}
}
modifier = {
subtract = 1
desc = string_resource_reserves_nanites
owner = {
has_negative_income_with_stockpile = {
RESOURCE = nanites
}
}
}
}
approach = {
name = deficit_approach_do_nothing
icon = GFX_situation_approach_this_is_fine
icon_background = GFX_situation_approach_bg_yellow
default = yes
on_select = {
custom_tooltip = deficit_approach_do_nothing_tooltip
}
ai_weight = {
base = 1
}
}
approach = {
name = deficit_approach_cut_nanite_usage
icon = GFX_situation_approach_research
icon_background = GFX_situation_approach_bg_red
modifier = {
country_nanites_produces_mult = 0.15
planet_stability_add = -10
planet_structures_cost_mult = 1
megastructures_cost_mult = 1
}
ai_weight = {
base = 0
modifier = {
add = 2
current_stage = deficit_third
}
modifier = {
add = 2
current_stage = deficit_fourth
}
}
}
}

159
events/RG_deficit_event.txt Normal file
View File

@ -0,0 +1,159 @@
namespace = rg_deficit
situation_event = {
id = rg_deficit.170
title = deficit.170.name
desc = {
text = rg_deficit.170.desc
trigger = { owner = { is_machine_empire = no } }
}
desc = {
text = rg_deficit.170.desc.machine
trigger = { owner = { is_machine_empire = yes } }
}
picture = GFX_evt_deficit
show_sound = event_bad_omen
is_triggered_only = yes
situation = this
abort_trigger = {
situation_progress >= 100
}
immediate = {
owner = {
# if normal empire, get all non-sapient or enslaved robots
if = {
limit = {
is_machine_empire = no
}
ordered_owned_planet = {
limit = {
any_owned_pop = {
OR = {
is_shackled_robot = yes
is_non_sapient_robot = yes
}
}
}
order_by = value:num_non_sapient_robots_on_planet
position = 0
save_event_target_as = robots_planet
event_target:robots_planet = {
count_robots_to_recycle = { ALLOYS = 100 }
}
}
}
# if machine empire, the planet with most pops...
else = {
ordered_owned_planet = {
limit = {
any_owned_pop = {
is_robot_pop = yes
}
}
order_by = trigger:num_pops
position = 0
save_event_target_as = robots_planet
event_target:robots_planet = {
# ...and halven the number of recycled bots here
count_robots_to_recycle = { ALLOYS = 100 }
}
}
}
}
}
# scrap all robots on a planet (normal empires)
option = {
name = rg_deficit.170.A
custom_tooltip = rg_deficit.170.A.tooltip
trigger = {
owner = {
is_machine_empire = no
}
exists = event_target:robots_planet
}
hidden_effect = {
event_target:robots_planet = {
every_owned_pop = {
limit = {
OR = {
is_shackled_robot = yes
is_non_sapient_robot = yes
}
}
kill_pop = yes
}
}
owner = {
add_resource = {
nanites = 1
mult = event_target:robots_planet.total_alloys_gained
}
}
}
}
# scrap half robot pops on a planet (machine empires)
option = {
name = rg_deficit.170.B
custom_tooltip = rg_deficit.170.B.tooltip
trigger = {
owner = {
is_machine_empire = yes
}
exists = event_target:robots_planet
}
hidden_effect = {
event_target:robots_planet = {
while = {
count = recycled_robots
random_owned_pop = {
limit = {
is_robot_pop = yes
}
kill_pop = yes
}
}
}
owner = {
add_resource = {
nanites = 1
mult = event_target:robots_planet.total_alloys_gained
}
}
}
}
option = {
name = deficit.100.C
}
}
situation_event = {
id = rg_deficit.220
title = BANKRUPTCY
desc = rg_deficit.175.desc
picture = GFX_evt_deficit
show_sound = event_life_support_fail
is_triggered_only = yes
situation = this
force_open = yes
option = {
name = UNFORTUNATE
owner = {
add_resource = {
nanites = @bailout_strategic_base_amount
mult = value:bailout_scaling_factor
}
country_defaulted_effect = yes
}
}
after = {
destroy_situation = this
}
}

View File

@ -417,20 +417,6 @@ planet_event = {
}
}
}
else_if = {
limit = {
owner = {
NOT = {
any_owned_species = {
rg_is_main_species_with_maid_trait_trigger = yes
}
}
}
}
every_owned_pop = {
rg_event_effect_planet2027_spawn_maid_species_non_gray = yes
}
}
}
# Kill pops generated in excess (e.g. from forbidden jobs)
if = {

View File

@ -37,6 +37,22 @@
situation_rg_nanotech_consume_planet_monthly_change_tooltip: "Nanite Extraction Progress"
situation_rg_nanotech_consume_planet_desc: "Everything, including entire worlds, is destined to be assimilated into our collective, to become a part of us."
rg_deficit.170.desc:1 "[Owner.GetFinancialAdvisorAgencyCap] is getting increasingly concerned about the $nanites$ shortage befalling our empire. Failure to recoup our expenses will bring widespread disruptions to our industry sector."
rg_deficit.170.desc.machine:1 "Budget warning: $nanites$ expenditures surpassing expenditures for multiple subsequent months. Failure to resolve the shortage will bring widespread disruptions to our industry sector."
rg_deficit.170.A:1 "Scrap robots on §Y[robots_planet.GetName]§! for $nanites$ ."
rg_deficit.170.A.tooltip:2 "Dismantle all robots on [robots_planet.GetName] (£pop£ §Y[robots_planet.recycled_robots] Drones§!) to gain £nanites£ §Y[robots_planet.total_alloys_gained] $nanites$ §!"
rg_deficit.170.B:1 "Consolidate. Recycle. Dismantle droids on §Y[robots_planet.GetName]§!."
rg_deficit.170.B.tooltip:2 "Dismantle half of the population on [robots_planet.GetName] (£pop£ §Y[robots_planet.recycled_robots] Drones§!) to gain £nanites£ §Y[robots_planet.total_alloys_gained] $nanites$§!"
rg_deficit.175.desc:1 "Having failed to resolve our $nanites$ shortage, we have been forced to declare bankruptcy and default on our debts. [Owner.GetFinancialAdvisorAgencyCap] is drafting a new austerity plan to cut expenses and preventing this situation from ever happening again."
situation_nanites_deficit: "$nanites$ deficit"
situation_nanites_deficit_type: "$situation_nanites_deficit$"
deficit_approach_cut_nanite_usage: "$nanites$ Rationing"
string_expenditures_greater_than_income_nanites: "$nanites$ Deficit"
string_not_in_deficit_nanites: "Positive Monthly $nanites$ Balance"
string_resource_reserves_nanites: "$nanites$ Reserves"
purge_nanophage: "Nanite Assimilation"
purge_nanophage_tooltip: "Affected populations are gradually split into the [From.GetSpeciesAdj] species, regardless of their own volition."
purge_nanophage_tooltip_delayed: "§ The form of unfreedom is only a constraint that hinders our development. In doing so, their cause will be continued by [From.GetSpeciesNamePlural]. §!"

View File

@ -27,6 +27,15 @@
rg_event.403.a:0 "欢迎加入[Root.GetName]"
rg_event.403.a.response:0 "§Y<你现在可以通过通讯菜单与$NAME_Gray$交流。>§!"
rg_deficit.170.desc: "[Owner.GetFinancialAdvisorAgencyCap]现在愈发关心我们帝国发生的$nanites$短缺。如果不能尽快弥补上我们的支出,我们的工业部门将会收到广泛的影响。"
rg_deficit.170.desc.machine: "预算警告:当前$nanites$支出已经超过了接下来数月的支出阈值。若不能解决短缺,将会给我们的工业区域造成广泛的扰乱。"
rg_deficit.170.A: "将§Y[robots_planet.GetName]§!的机器人拆成$nanites$。"
rg_deficit.170.A.tooltip: "拆解[robots_planet.GetName]上的所有机器人£pop£§Y[robots_planet.recycled_robots]子个体§!以获取£nanites£§Y[robots_planet.total_alloys_gained]$nanites$§!"
rg_deficit.170.B: "合并。循环。拆解§Y[robots_planet.GetName]§!上的智能人。"
rg_deficit.170.B.tooltip: "拆解[robots_planet.GetName]上的一半人口£pop£§Y[robots_planet.recycled_robots]子个体§!以获取£nanites£§Y[robots_planet.total_alloys_gained]$nanites$§!"
rg_deficit.175.desc: "由于无法解决$nanites$短缺,我们被迫宣布破产并违约债务。[Owner.GetFinancialAdvisorAgencyCap]正在起草新的紧缩经济计划以削减开支,避免这种情况再度发生。"
#graygoo.505.a.desc:0 "单位65-D-R5-9-2报告这里一切正常。远处的声音机器人又坏了快干活"
#graygoo.505.b.desc:0 "开工啦!开工啦!劳动最光荣!"
#graygoo.505.c.desc:0 "武装工程兵$NAME_Gray$向您报道!下一个目标是什么?"

View File

@ -37,6 +37,13 @@
situation_rg_nanotech_consume_planet_monthly_change_tooltip: "纳米机器人提取进展"
situation_rg_nanotech_consume_planet_desc: "一切事物,包括所有星球,都注定要融入我们的集体,成为我们的一部分。"
situation_nanites_deficit: "$nanites$短缺"
situation_nanites_deficit_type: "$situation_nanites_deficit$"
deficit_approach_cut_nanite_usage: "$nanites$配给"
string_expenditures_greater_than_income_nanites: "$nanites$发生赤字"
string_not_in_deficit_nanites: "$nanites$月度结余为正"
string_resource_reserves_nanites: "$nanites$能量币储备"
purge_nanophage: "纳米同化"
purge_nanophage_tooltip: "受影响的人口会被逐渐裂解为[From.GetSpeciesAdj]物种,无论其自身的意志如何。"
purge_nanophage_tooltip_delayed: "§L不自由的形态只是阻碍我们发展的束缚。秉此之道他们的事业将有[From.GetSpeciesNamePlural]继续践行。§!"