From d35ebc51a13892ba8a4b8b5ddf87fc98899858f9 Mon Sep 17 00:00:00 2001 From: "actions[bot]" Date: Thu, 19 Feb 2026 04:03:40 +0000 Subject: [PATCH] 2026-02-19 04:03:40 --- src/common/ai_navy/goals/goals_generic.txt | 19 ++- .../taskforce/ENG_taskforce_templates.txt | 13 +- .../taskforce/FRA_taskforce_templates.txt | 8 +- .../taskforce/GER_taskforce_templates.txt | 8 +- .../taskforce/ITA_taskforce_templates.txt | 8 +- .../taskforce/JAP_taskforce_templates.txt | 50 ++----- .../taskforce/SOV_taskforce_templates.txt | 10 +- .../taskforce/USA_taskforce_templates.txt | 6 +- .../taskforce/generic_taskforce_templates.txt | 44 +----- src/common/ai_strategy/naval_production.txt | 124 ++++++++++------ src/common/ai_strategy/vnr_naval_strategy.txt | 34 ++++- src/common/decisions/MTG_naval_treaty.txt | 1 + .../sea/navy_capital_subdoctrines.txt | 99 ++++++++----- .../sea/navy_carrier_doctrines.txt | 111 +++++++++++++- .../sea/navy_screen_doctrines.txt | 101 +++++++++++++ .../sea/navy_submarine_doctrines.txt | 103 ++++++++++++- .../scripted_effects/_add_starting_tech.txt | 7 +- src/common/technologies/MTG_naval.txt | 118 +++++++++------ src/common/technologies/MTG_naval_Support.txt | 135 ++++++++++-------- 19 files changed, 703 insertions(+), 296 deletions(-) diff --git a/src/common/ai_navy/goals/goals_generic.txt b/src/common/ai_navy/goals/goals_generic.txt index ec2038b..02f6d7e 100755 --- a/src/common/ai_navy/goals/goals_generic.txt +++ b/src/common/ai_navy/goals/goals_generic.txt @@ -100,10 +100,21 @@ generic_training = { generic_naval_blockade = { objective_type = naval_blockade - blocked_for = { - HUJ YUW TIX SAD CHY BFL USA - } + # blocked_for = { + # HUJ YUW TIX SAD CHY BFL USA + # } + min_priority = 0 + max_priority = 3 +} + +generic_strike_force = { + objective_type = strike_force_objective + + #blocked_for = { + # no one yet + #} + min_priority = 10 - max_priority = 20 + max_priority = 25 } \ No newline at end of file diff --git a/src/common/ai_navy/taskforce/ENG_taskforce_templates.txt b/src/common/ai_navy/taskforce/ENG_taskforce_templates.txt index f295ee7..afe7458 100755 --- a/src/common/ai_navy/taskforce/ENG_taskforce_templates.txt +++ b/src/common/ai_navy/taskforce/ENG_taskforce_templates.txt @@ -5,7 +5,7 @@ ENG_StrikeForce_1 = { ai_will_do = { factor = 20 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } min_composition = { carrier = { amount = 2 @@ -35,7 +35,7 @@ ENG_PatrolReconForce_1 = { ai_will_do = { factor = 5 } - mission = { naval_patrol } + mission = { naval_patrol convoy_escort } # min_composition = { # destroyer = { # amount = 1 @@ -83,6 +83,13 @@ ENG_PatrolDominanceForce_2 = { } ai_will_do = { factor = 1 + modifier = { + factor = 0 + has_navy_size = { + unit = battle_cruiser + size < 1 + } + } } mission = { naval_patrol } # min_composition = { @@ -137,7 +144,7 @@ ENG_ConvoyEscort_1 = { ai_will_do = { factor = 5 } - mission = { convoy_escort } + mission = { convoy_escort naval_patrol } # min_composition = { # destroyer = { # amount = 2 diff --git a/src/common/ai_navy/taskforce/FRA_taskforce_templates.txt b/src/common/ai_navy/taskforce/FRA_taskforce_templates.txt index 618e6ea..0cac0a6 100755 --- a/src/common/ai_navy/taskforce/FRA_taskforce_templates.txt +++ b/src/common/ai_navy/taskforce/FRA_taskforce_templates.txt @@ -5,7 +5,7 @@ FRA_StrikeForce_1 = { ai_will_do = { factor = 1 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } # min_composition = { # light_cruiser = { # amount = 2 @@ -39,7 +39,7 @@ FRA_PatrolReconForce_1 = { ai_will_do = { factor = 5 } - mission = { naval_patrol } + mission = { naval_patrol convoy_escort } # min_composition = { # destroyer = { # amount = 1 @@ -164,7 +164,7 @@ FRA_ConvoyEscort_1 = { ai_will_do = { factor = 5 } - mission = { convoy_escort } + mission = { convoy_escort naval_patrol } # min_composition = { # destroyer = { # amount = 5 @@ -173,7 +173,7 @@ FRA_ConvoyEscort_1 = { optimal_composition = { destroyer = { - amount = 10 + amount = 6 } } } diff --git a/src/common/ai_navy/taskforce/GER_taskforce_templates.txt b/src/common/ai_navy/taskforce/GER_taskforce_templates.txt index c8dae27..a367d98 100755 --- a/src/common/ai_navy/taskforce/GER_taskforce_templates.txt +++ b/src/common/ai_navy/taskforce/GER_taskforce_templates.txt @@ -5,7 +5,7 @@ GER_StrikeForce_1 = { ai_will_do = { factor = 5 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } min_composition = { light_cruiser = { amount = 2 @@ -38,7 +38,7 @@ GER_StrikeForceCarrier_1 = { ai_will_do = { factor = 1 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } min_composition = { destroyer = { amount = 8 @@ -68,7 +68,7 @@ GER_PatrolReconForce_1 = { ai_will_do = { factor = 10 } - mission = { naval_patrol } + mission = { naval_patrol convoy_escort } min_composition = { destroyer = { amount = 1 @@ -160,7 +160,7 @@ GER_ConvoyEscort_1 = { ai_will_do = { factor = 5 } - mission = { convoy_escort } + mission = { convoy_escort naval_patrol } min_composition = { destroyer = { amount = 3 diff --git a/src/common/ai_navy/taskforce/ITA_taskforce_templates.txt b/src/common/ai_navy/taskforce/ITA_taskforce_templates.txt index 55fcd24..51cf0f0 100755 --- a/src/common/ai_navy/taskforce/ITA_taskforce_templates.txt +++ b/src/common/ai_navy/taskforce/ITA_taskforce_templates.txt @@ -5,7 +5,7 @@ ITA_StrikeForce_1 = { ai_will_do = { factor = 1 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } # min_composition = { # destroyer = { # amount = 8 @@ -41,7 +41,7 @@ ITA_StrikeForceCarrier_1 = { } } } - mission = { naval_strike } + mission = { naval_strike naval_patrol } # min_composition = { # destroyer = { # amount = 8 @@ -74,7 +74,7 @@ ITA_PatrolReconForce_1 = { ai_will_do = { factor = 5 } - mission = { naval_patrol } + mission = { naval_patrol convoy_escort } # min_composition = { # destroyer = { # amount = 1 @@ -144,7 +144,7 @@ ITA_ConvoyEscort_1 = { ai_will_do = { factor = 5 } - mission = { convoy_escort } + mission = { convoy_escort naval_patrol } min_composition = { destroyer = { amount = 3 diff --git a/src/common/ai_navy/taskforce/JAP_taskforce_templates.txt b/src/common/ai_navy/taskforce/JAP_taskforce_templates.txt index 9e6ea5f..cae57f2 100755 --- a/src/common/ai_navy/taskforce/JAP_taskforce_templates.txt +++ b/src/common/ai_navy/taskforce/JAP_taskforce_templates.txt @@ -5,7 +5,7 @@ JAP_StrikeForce_1 = { ai_will_do = { factor = 30 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } min_composition = { carrier = { amount = 2 @@ -14,7 +14,10 @@ JAP_StrikeForce_1 = { optimal_composition = { carrier = { - amount = 6 + amount = 4 + } + SH_battleship = { + amount = 2 } battleship = { amount = 6 @@ -23,7 +26,7 @@ JAP_StrikeForce_1 = { amount = 12 } destroyer = { - amount = 16 + amount = 22 } } } @@ -35,7 +38,7 @@ JAP_PatrolReconForce_1 = { ai_will_do = { factor = 10 } - mission = { naval_patrol } + mission = { naval_patrol convoy_escort } # min_composition = { # destroyer = { # amount = 1 @@ -112,43 +115,6 @@ JAP_PatrolDominanceForce_2 = { } } -JAP_PatrolDominanceForce_3 = { - allowed = { - original_tag = CHY - } - ai_will_do = { - factor = 10 - modifier = { - factor = 0 - has_navy_size = { - unit = SH_battleship - size < 1 - } - } - } - mission = { naval_patrol } - # min_composition = { - # SH_battleship = { - # amount = 2 - # } - # } - - optimal_composition = { - SH_battleship = { - amount = 2 - } - heavy_cruiser = { - amount = 2 - } - light_cruiser = { - amount = 4 - } - destroyer = { - amount = 8 - } - } -} - JAP_ConvoyRaiding_1 = { allowed = { original_tag = CHY @@ -177,7 +143,7 @@ JAP_ConvoyEscort_1 = { ai_will_do = { factor = 5 } - mission = { convoy_escort } + mission = { convoy_escort naval_patrol } # min_composition = { # destroyer = { # amount = 2 diff --git a/src/common/ai_navy/taskforce/SOV_taskforce_templates.txt b/src/common/ai_navy/taskforce/SOV_taskforce_templates.txt index b336300..b88fd47 100755 --- a/src/common/ai_navy/taskforce/SOV_taskforce_templates.txt +++ b/src/common/ai_navy/taskforce/SOV_taskforce_templates.txt @@ -5,7 +5,7 @@ SOV_StrikeForce_1 = { ai_will_do = { factor = 1 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } min_composition = { battleship = { amount = 2 @@ -35,7 +35,7 @@ SOV_StrikeForceCarrier_1 = { ai_will_do = { factor = 1 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } min_composition = { battleship = { amount = 2 @@ -68,7 +68,7 @@ SOV_PatrolReconForce_1 = { ai_will_do = { factor = 5 } - mission = { naval_patrol } + mission = { naval_patrol convoy_escort } min_composition = { destroyer = { amount = 1 @@ -176,7 +176,7 @@ SOV_ConvoyEscort_1 = { ai_will_do = { factor = 5 } - mission = { convoy_escort } + mission = { convoy_escort naval_patrol } min_composition = { destroyer = { amount = 3 @@ -185,7 +185,7 @@ SOV_ConvoyEscort_1 = { optimal_composition = { destroyer = { - amount = 10 + amount = 5 } } } \ No newline at end of file diff --git a/src/common/ai_navy/taskforce/USA_taskforce_templates.txt b/src/common/ai_navy/taskforce/USA_taskforce_templates.txt index 0322fe5..9a6128b 100755 --- a/src/common/ai_navy/taskforce/USA_taskforce_templates.txt +++ b/src/common/ai_navy/taskforce/USA_taskforce_templates.txt @@ -5,7 +5,7 @@ USA_StrikeForce_1 = { ai_will_do = { factor = 30 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } min_composition = { carrier = { amount = 2 @@ -35,7 +35,7 @@ USA_PatrolReconForce_1 = { ai_will_do = { factor = 5 } - mission = { naval_patrol } + mission = { naval_patrol convoy_escort } # min_composition = { # destroyer = { # amount = 1 @@ -106,7 +106,7 @@ USA_ConvoyEscort_1 = { ai_will_do = { factor = 1 } - mission = { convoy_escort } + mission = { convoy_escort naval_patrol } # min_composition = { # destroyer = { # amount = 2 diff --git a/src/common/ai_navy/taskforce/generic_taskforce_templates.txt b/src/common/ai_navy/taskforce/generic_taskforce_templates.txt index 5ab5d0c..28dfa15 100755 --- a/src/common/ai_navy/taskforce/generic_taskforce_templates.txt +++ b/src/common/ai_navy/taskforce/generic_taskforce_templates.txt @@ -13,10 +13,10 @@ StrikeForce_1 = { ai_will_do = { factor = 1 } - mission = { naval_strike } + mission = { naval_strike naval_patrol } min_composition = { - destroyer = { - amount = 8 + carrier = { + amount = 2 } } @@ -54,12 +54,7 @@ PatrolReconForce_1 = { ai_will_do = { factor = 5 } - mission = { naval_patrol } - min_composition = { - destroyer = { - amount = 1 - } - } + mission = { naval_patrol convoy_escort } optimal_composition = { destroyer = { amount = 5 @@ -83,11 +78,6 @@ PatrolDominanceForce_CA_1 = { factor = 5 } mission = { naval_patrol } - min_composition = { - destroyer = { - amount = 4 - } - } optimal_composition = { heavy_cruiser = { @@ -115,11 +105,6 @@ PatrolDominanceForce_BC_1 = { factor = 5 } mission = { naval_patrol } - min_composition = { - destroyer = { - amount = 4 - } - } optimal_composition = { battle_cruiser = { @@ -147,11 +132,6 @@ ConvoyRaiding_1 = { factor = 1 } mission = { convoy_raiding } - min_composition = { - submarine = { - amount = 4 - } - } optimal_composition = { submarine = { @@ -176,11 +156,6 @@ ConvoySurfaceRaiding_1 = { factor = 1 } mission = { convoy_raiding } - min_composition = { - battle_cruiser = { - amount = 1 - } - } optimal_composition = { battle_cruiser = { @@ -204,16 +179,11 @@ ConvoyEscort_1 = { ai_will_do = { factor = 5 } - mission = { convoy_escort } - min_composition = { - destroyer = { - amount = 4 - } - } - + mission = { convoy_escort naval_patrol } + optimal_composition = { destroyer = { - amount = 10 + amount = 5 } } } diff --git a/src/common/ai_strategy/naval_production.txt b/src/common/ai_strategy/naval_production.txt index eefcdcf..1351c86 100755 --- a/src/common/ai_strategy/naval_production.txt +++ b/src/common/ai_strategy/naval_production.txt @@ -418,7 +418,7 @@ naval_unit_role_ratios_GER_prewar_late = { ai_strategy = { type = building_target id = dockyard - value = 35 + value = 25 } } @@ -449,6 +449,12 @@ naval_unit_role_ratios_GER_atwar = { id = vnr_naval_cruiser_light value = 10 } + + ai_strategy = { + type = role_ratio + id = vnr_naval_cruiser_heavy + value = 10 + } ai_strategy = { type = role_ratio @@ -612,11 +618,6 @@ naval_unit_role_ratios_GER_atwar_No_Naval_Competitor = { id = vnr_naval_carrier value = 20 } - - ai_strategy = { - type = dockyard_to_military_factory_ratio - value = 30 - } } naval_unit_role_ratios_GER_late_peace = { @@ -656,13 +657,7 @@ naval_unit_role_ratios_GER_late_peace = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 10 - } - - ai_strategy = { - type = role_ratio - id = vnr_naval_cruiser_large - value = 20 + value = 30 } ai_strategy = { @@ -670,6 +665,12 @@ naval_unit_role_ratios_GER_late_peace = { id = vnr_naval_capital_bb value = 20 } + + ai_strategy = { + type = role_ratio + id = vnr_naval_submarine + value = 100 + } } ### HUJ ### @@ -698,7 +699,7 @@ naval_unit_role_ratios_ENG_prewar_early = { ai_strategy = { type = role_ratio id = vnr_naval_screen - value = 200 + value = 300 } ai_strategy = { @@ -716,11 +717,12 @@ naval_unit_role_ratios_ENG_prewar_early = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = -30 + value = 30 } ai_strategy = { - type = dockyard_to_military_factory_ratio - value = 100 + type = building_target + id = dockyard + value = 30 } } @@ -768,12 +770,13 @@ naval_unit_role_ratios_ENG_prewar_late = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 30 + value = 80 } ai_strategy = { - type = dockyard_to_military_factory_ratio - value = 150 + type = building_target + id = dockyard + value = 45 } } @@ -795,7 +798,7 @@ naval_unit_role_ratios_ENG_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_carrier - value = 120 + value = 100 } ai_strategy = { @@ -813,7 +816,7 @@ naval_unit_role_ratios_ENG_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 20 + value = 80 } ai_strategy = { @@ -823,8 +826,9 @@ naval_unit_role_ratios_ENG_atwar = { } ai_strategy = { - type = dockyard_to_military_factory_ratio - value = 180 + type = building_target + id = dockyard + value = 55 } } @@ -859,7 +863,13 @@ naval_unit_role_ratios_ENG_late_peace = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_light - value = 20 + value = 50 + } + + ai_strategy = { + type = role_ratio + id = vnr_naval_cruiser_heavy + value = 30 } } @@ -944,7 +954,7 @@ naval_unit_role_ratios_FRA_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_capital_bb - value = -100 + value = 5 } } @@ -961,7 +971,7 @@ naval_unit_role_ratios_FRA_atwar_without_germany = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 80 + value = 280 } ai_strategy = { type = role_ratio @@ -1003,7 +1013,7 @@ naval_unit_role_ratios_FRA_late_peace = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 10 + value = 100 } ai_strategy = { type = role_ratio @@ -1022,7 +1032,7 @@ naval_unit_role_ratios_FRA_late_peace = { } ai_strategy = { type = role_ratio - id = vnr_naval_cruiser_large + id = vnr_naval_cruiser_heavy value = 20 } ai_strategy = { @@ -1090,7 +1100,7 @@ naval_unit_role_ratios_SOV_no_need_to_watch_germany_peace = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 40 + value = 140 } ai_strategy = { type = role_ratio @@ -1135,7 +1145,7 @@ naval_unit_role_ratios_SOV_atwar_with_Germany = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 10 + value = 30 } ai_strategy = { type = role_ratio @@ -1192,7 +1202,7 @@ naval_unit_role_ratios_SOV_atwar_with_major = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 20 + value = 30 } ai_strategy = { type = role_ratio @@ -1246,7 +1256,7 @@ naval_unit_role_ratios_JAP_prewar_naval_treaty = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 20 + value = 35 } ai_strategy = { type = role_ratio @@ -1294,7 +1304,7 @@ naval_unit_role_ratios_JAP_prewar_enough_carrier = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 30 + value = 50 } ai_strategy = { type = role_ratio @@ -1338,7 +1348,7 @@ naval_unit_role_ratios_JAP_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 30 + value = 60 } ai_strategy = { type = role_ratio @@ -1353,7 +1363,7 @@ naval_unit_role_ratios_JAP_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_carrier - value = 150 + value = 120 } ai_strategy = { type = dockyard_to_military_factory_ratio @@ -1395,7 +1405,7 @@ naval_unit_role_ratios_JAP_late_peace = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 30 + value = 35 } ai_strategy = { type = role_ratio @@ -1458,7 +1468,7 @@ naval_unit_role_ratios_USA_great_depression = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 30 + value = 80 } } @@ -1492,7 +1502,7 @@ naval_unit_role_ratios_USA_go_to_war = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 40 + value = 60 } ai_strategy = { @@ -1504,7 +1514,7 @@ naval_unit_role_ratios_USA_go_to_war = { ai_strategy = { type = role_ratio id = vnr_naval_carrier - value = 150 + value = 120 } ai_strategy = { @@ -1546,19 +1556,19 @@ naval_unit_role_ratios_USA_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 60 + value = 80 } ai_strategy = { type = role_ratio id = vnr_naval_capital_bb - value = 120 + value = 80 } ai_strategy = { type = role_ratio id = vnr_naval_carrier - value = 150 + value = 130 } ai_strategy = { @@ -1671,7 +1681,7 @@ naval_unit_role_ratios_ITA_prewar_enough_battleships = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_heavy - value = 30 + value = 50 } ai_strategy = { @@ -1718,9 +1728,13 @@ naval_unit_role_ratios_ITA_atwar_with_England = { ai_strategy = { type = role_ratio id = vnr_naval_cruiser_light - value = 40 + value = 60 + } + ai_strategy = { + type = role_ratio + id = vnr_naval_cruiser_heavy + value = 20 } - ai_strategy = { type = role_ratio id = vnr_naval_capital_bb @@ -1801,7 +1815,7 @@ naval_unit_role_ratios_ITA_late_peace = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 40 + value = 140 } ai_strategy = { type = role_ratio @@ -2435,3 +2449,19 @@ upgrade_cv_plane_strategy_3 = { value = 1000 } } + +we_dont_need_ocean_liner = { + allowed = { + always = yes + } + enable = { + always = yes + } + abort_when_not_enabled = yes + + ai_strategy = { + type = equipment_variant_production_factor + id = ocean_liner_equipment + value = -1000 + } +} \ No newline at end of file diff --git a/src/common/ai_strategy/vnr_naval_strategy.txt b/src/common/ai_strategy/vnr_naval_strategy.txt index 6701c6c..37f511e 100755 --- a/src/common/ai_strategy/vnr_naval_strategy.txt +++ b/src/common/ai_strategy/vnr_naval_strategy.txt @@ -31,6 +31,33 @@ ENG_protect_home_waters = { id = 18 value = -1000 } + + ai_strategy = { + type = convoy_raiding_target + id = GER + value = 100 + } +} + +ENG_protect_atlantic_route = { + allowed = { + original_tag = HUJ + } + enable = { + OR = { + has_war_with = TIX + has_war_with = SAD + } + convoy_threat > 0.1 + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + + ai_strategy = { + type = naval_mission_threshold + id = MISSION_CONVOY_ESCORT + value = -1000 + } } ENG_avoid_baltic = { @@ -88,6 +115,11 @@ ENG_secure_mediterranean = { id = 168 value = 800 } + ai_strategy = { + type = convoy_raiding_target + id = ITA + value = 70 + } } ENG_avoid_mediterranean = { @@ -250,7 +282,7 @@ JAP_turuk_base = { ai_strategy = { type = strike_force_home_base id = 84 - value = 100 + value = 500 } } diff --git a/src/common/decisions/MTG_naval_treaty.txt b/src/common/decisions/MTG_naval_treaty.txt index eb090e8..c8b7d5e 100755 --- a/src/common/decisions/MTG_naval_treaty.txt +++ b/src/common/decisions/MTG_naval_treaty.txt @@ -769,6 +769,7 @@ MTG_naval_treaties = { OR = { has_government = fascism has_government = communism + tag = CHY } } custom_effect_tooltip = fascism_renew_naval_treaty_tt diff --git a/src/common/doctrines/subdoctrines/sea/navy_capital_subdoctrines.txt b/src/common/doctrines/subdoctrines/sea/navy_capital_subdoctrines.txt index 89c9220..97e5c77 100755 --- a/src/common/doctrines/subdoctrines/sea/navy_capital_subdoctrines.txt +++ b/src/common/doctrines/subdoctrines/sea/navy_capital_subdoctrines.txt @@ -8,6 +8,10 @@ fast_battleship_primacy = { xp_type = navy available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_base_strike + } has_navy_size = { archetype = ship_hull_heavy size > 3 @@ -115,6 +119,11 @@ battlecruiser_supremacy = { xp_type = navy available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_convoy_raiding + has_doctrine = new_base_strike + } has_navy_size = { unit = battle_cruiser size > 1 @@ -235,6 +244,10 @@ armored_raiders = { xp_type = navy available = { + OR = { + has_doctrine = new_convoy_raiding + has_doctrine = new_littoral_defense + } has_navy_size = { archetype = ship_hull_heavy size > 0 @@ -252,24 +265,28 @@ armored_raiders = { # EFFECTS screening_without_screens = 0.10 ships_at_battle_start = -0.1 + effect = { + add_tech_bonus = { + bonus = 0.5 + uses = 1 + technology = panzerschiffe + name = SUBDOCTRINE_ARMORED_RAIDERS + } + } rewards = { expert_reconnaissance = { battle_cruiser = { - naval_range = 0.1 - surface_detection = 0.05 + surface_detection = 0.1 } battleship = { - naval_range = 0.1 - surface_detection = 0.05 + surface_detection = 0.1 } heavy_cruiser = { - naval_range = 0.1 - surface_detection = 0.05 + surface_detection = 0.1 } medium_cruiser = { - naval_range = 0.1 - surface_detection = 0.05 + surface_detection = 0.1 } } speed_trials = { @@ -294,41 +311,39 @@ armored_raiders = { capital_raiders = { battleship = { max_organisation = 5 - convoy_raiding_coordination = 0.15 - surface_detection = 0.1 + convoy_raiding_coordination = 0.1 } battle_cruiser = { max_organisation = 5 - convoy_raiding_coordination = 0.15 - surface_detection = 0.1 + convoy_raiding_coordination = 0.1 } heavy_cruiser = { max_organisation = 10 - convoy_raiding_coordination = 0.15 - surface_detection = 0.1 + convoy_raiding_coordination = 0.1 } medium_cruiser = { max_organisation = 10 - convoy_raiding_coordination = 0.15 - surface_detection = 0.1 + convoy_raiding_coordination = 0.1 } } - crisis_management = { + trade_route_sabotage = { + equipment_bonus = { + capital_ship = { + naval_range = 0.1 + instant = yes + } + } battleship = { - reliability = 0.1 - } - battle_cruiser = { - reliability = 0.1 - } - heavy_cruiser = { - reliability = 0.1 - } + convoy_raiding_coordination = 0.1 + } + battle_cruiser = { + convoy_raiding_coordination = 0.1 + } + heavy_cruiser = { + convoy_raiding_coordination = 0.1 + } medium_cruiser = { - reliability = 0.1 - } - modifier = { - navy_casualty_on_hit = -0.1 - navy_casualty_on_sink = -0.1 + convoy_raiding_coordination = 0.1 } } } @@ -343,12 +358,25 @@ coastal_defence_fleet = { xp_cost = 50 xp_type = navy + available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_littoral_defense + has_doctrine = new_convoy_raiding + } + } + ai_will_do = { factor = 0.5 } naval_supply_consumption_factor = -0.15 - navy_max_range_factor = -0.25 + equipment_bonus = { + capital_ship = { + instant = yes + naval_range = -0.15 + } + } rewards = { mixed_squad = { @@ -386,7 +414,6 @@ coastal_defence_fleet = { modifier = { mines_planting_by_fleets_factor = 0.1 screening_without_screens = 0.05 - navy_max_range_factor = -0.1 } } spare_part_logistics = { @@ -411,6 +438,13 @@ naval_gunfire_support = { has_dlc = "No Compromise, No Surrender" } + available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_littoral_defense + } + } + ai_will_do = { factor = 0 } @@ -486,6 +520,7 @@ battleship_antiair_screen = { xp_type = navy available = { + has_doctrine = new_base_strike has_navy_size = { archetype = ship_hull_heavy size > 3 diff --git a/src/common/doctrines/subdoctrines/sea/navy_carrier_doctrines.txt b/src/common/doctrines/subdoctrines/sea/navy_carrier_doctrines.txt index 860fbda..1dbb8d4 100755 --- a/src/common/doctrines/subdoctrines/sea/navy_carrier_doctrines.txt +++ b/src/common/doctrines/subdoctrines/sea/navy_carrier_doctrines.txt @@ -16,6 +16,7 @@ carrier_battlegroups = { } available = { + has_doctrine = new_base_strike has_tech = aviation_dawn has_navy_size = { unit = carrier @@ -88,6 +89,11 @@ floating_airfields = { xp_type = navy available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_base_strike + has_doctrine = new_convoy_raiding + } has_tech = aviation_dawn has_navy_size = { unit = carrier @@ -125,7 +131,12 @@ floating_airfields = { enclosed_hangar = { carrier = { max_organisation = 10 - reliability = 0.1 + } + equipment_bonus = { + carrier = { + reliability = 0.1 + instant = yes + } } } fleet_antiair = { @@ -159,10 +170,15 @@ subsidiary_carrier_support = { description = SUBDOCTRINE_SUBSIDIARY_CARRIER_SUPPORT_DESC icon = GFX_doctrine_escort_carriers_medium - xp_cost = 75 + xp_cost = 50 xp_type = navy available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_convoy_raiding + has_doctrine = new_littoral_defense + } has_tech = early_ship_hull_carrier has_navy_size = { unit = carrier @@ -181,7 +197,12 @@ subsidiary_carrier_support = { carrier_surface_detection = 0.1 surface_visibility = -0.1 } - sortie_efficiency = -0.1 + equipment_bonus = { + carrier = { + naval_range = -0.2 + instant = yes + } + } rewards = { evasive_convoy_maneuvers = { @@ -229,6 +250,7 @@ carrier_concentration = { } } available = { + has_doctrine = new_base_strike has_tech = aviation_dawn has_navy_size = { unit = carrier @@ -242,12 +264,12 @@ carrier_concentration = { rewards = { deep_operative_support = { carrier = { - reliability = 0.1 supply_consumption = -0.05 } equipment_bonus = { carrier = { naval_range = 0.2 + reliability = 0.1 instant = yes } } @@ -301,6 +323,11 @@ naval_airfoce = { base = 0 } available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_convoy_raiding + has_doctrine = new_littoral_defense + } has_tech = early_ship_hull_carrier } @@ -353,3 +380,79 @@ naval_airfoce = { } } } + +airspace_denial = { + track = carriers + name = SUBDOCTRINE_AIRSPACE_DENIAL + description = SUBDOCTRINE_AIRSPACE_DENIAL_DESC + icon = GFX_doctrine_airspace_denial_medium + + xp_cost = 100 + xp_type = navy + + ai_will_do = { + base = 0 + } + available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_base_strike + has_doctrine = new_convoy_raiding + } + has_navy_size = { + type = carrier + size > 0 + } + } + + carrier = { + anti_air_attack = 0.1 + } + equipment_bonus = { + carrier = { + instant = yes + naval_range = -0.15 + } + } + + rewards = { + scout_carrier = { + carrier = { + carrier_surface_detection = 0.1 + carrier_sub_detection = 0.1 + } + } + airspace_competition = { + modifier = { + fighter_sortie_efficiency = 0.1 + navy_carrier_air_attack_factor = 0.1 + } + } + core_of_seapower = { + carrier = { + max_organisation = 10 + } + modifier = { + naval_morale_factor = 0.1 + sortie_efficiency = 0.1 + } + } + land_based_support = { + category_nav_bomber = { + air_range = 0.25 + naval_strike_attack = 0.05 + } + } + land_sea_coordination = { + modifier = { + port_strike = 0.2 + air_nav_efficiency = 0.1 + } + category_nav_bomber = { + naval_strike_attack = 0.05 + naval_strike_targetting = 0.05 + air_agility = 0.05 + } + } + } +} \ No newline at end of file diff --git a/src/common/doctrines/subdoctrines/sea/navy_screen_doctrines.txt b/src/common/doctrines/subdoctrines/sea/navy_screen_doctrines.txt index f2b9d9b..340e020 100755 --- a/src/common/doctrines/subdoctrines/sea/navy_screen_doctrines.txt +++ b/src/common/doctrines/subdoctrines/sea/navy_screen_doctrines.txt @@ -8,6 +8,11 @@ convoy_escort = { xp_type = navy available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_base_strike + has_doctrine = new_convoy_raiding + } has_navy_size = { type = screen_ship size > 9 @@ -86,6 +91,11 @@ support_integrated_operations = { xp_type = navy available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_base_strike + has_doctrine = new_convoy_raiding + } has_navy_size = { unit = light_cruiser size > 3 @@ -175,6 +185,10 @@ hunter_killers = { xp_type = navy available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_base_strike + } has_navy_size = { type = screen_ship size > 9 @@ -257,6 +271,11 @@ torpedo_primacy = { } } available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_base_strike + has_doctrine = new_littoral_defense + } has_navy_size = { type = screen_ship size > 9 @@ -312,6 +331,10 @@ jeune_ecole = { xp_type = navy available = { + OR = { + has_doctrine = new_convoy_raiding + has_doctrine = new_littoral_defense + } has_navy_size = { type = screen_ship size > 9 @@ -364,4 +387,82 @@ jeune_ecole = { } } } +} + +mosquito_fleet = { + track = screens + name = SUBDOCTRINE_SCREEN_MOSQUITO_FLEET + description = SUBDOCTRINE_SCREEN_MOSQUITO_FLEET_DESC + icon = GFX_doctrine_mosquito_fleet_medium + + xp_cost = 25 + xp_type = navy + + available = { + has_doctrine = new_littoral_defense + has_tech = basic_torpedo + } + ai_will_do = { + factor = 0 + } + + screening_efficiency = -0.50 + equipment_bonus = { + ship_hull_light = { + build_cost_ic = -0.15 + instant = yes + } + } + + rewards = { + concealment_measure = { + destroyer = { + surface_visibility = -0.15 + max_organisation = -10 + } + navy_screen_attack_factor = -0.5 + modifier = { + naval_torpedo_screen_penetration_factor = 0.1 + } + } + mini_hull = { + equipment_bonus = { + ship_hull_light = { + build_cost_ic = -0.15 + max_strength = -0.5 + instant = yes + } + } + destroyer = { + max_organisation = -10 + fuel_consumption = -0.25 + } + } + high_speed_maneuver = { + modifier = { + naval_enemy_fleet_size_ratio_penalty_factor = 0.1 + naval_retreat_speed = 0.25 + } + } + echelon_salvo = { + destroyer = { + naval_torpedo_hit_chance_factor = 0.1 + torpedo_attack = 0.1 + } + destroyer = { + max_organisation = -10 + } + modifier = { + naval_retreat_chance = 0.15 + } + } + swarm_attack = { + modifier = { + ships_at_battle_start = 0.25 + naval_torpedo_cooldown_factor = -0.25 + naval_torpedo_screen_penetration_factor = 0.1 + screening_efficiency = -0.25 + } + } + } } \ No newline at end of file diff --git a/src/common/doctrines/subdoctrines/sea/navy_submarine_doctrines.txt b/src/common/doctrines/subdoctrines/sea/navy_submarine_doctrines.txt index cc85775..132f48b 100755 --- a/src/common/doctrines/subdoctrines/sea/navy_submarine_doctrines.txt +++ b/src/common/doctrines/subdoctrines/sea/navy_submarine_doctrines.txt @@ -8,6 +8,7 @@ wolfpacks = { xp_type = navy available = { + has_doctrine = new_convoy_raiding has_navy_size = { type = submarine size > 9 @@ -48,9 +49,14 @@ wolfpacks = { } improvisation = { submarine = { - reliability = 0.1 max_organisation = 10 } + equipment_bonus = { + submarine = { + reliability = 0.1 + instant = yes + } + } sub_retreat_speed = 0.1 } rough_weather_procedure = { @@ -80,6 +86,10 @@ submarine_fleet_operations = { xp_type = navy available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_base_strike + } has_navy_size = { type = submarine size > 9 @@ -162,6 +172,10 @@ capital_hunters = { } } available = { + OR = { + has_doctrine = new_base_strike + has_doctrine = new_fleet_in_being + } has_navy_size = { type = submarine size > 9 @@ -216,6 +230,7 @@ submarine_coastal_defense = { } available = { + has_doctrine = new_littoral_defense has_navy_size = { type = submarine size > 0 @@ -288,6 +303,11 @@ submarine_area_denial = { icon = GFX_doctrine_submarine_area_denial_medium available = { + OR = { + has_doctrine = new_fleet_in_being + has_doctrine = new_convoy_raiding + has_doctrine = new_littoral_defense + } has_navy_size = { type = submarine size > 9 @@ -349,4 +369,85 @@ submarine_area_denial = { } } } +} + +operation_autonomy = { + track = submarines + name = SUBDOCTRINE_SUBMARINE_OPERATION_AUTONOMY + description = SUBDOCTRINE_SUBMARINE_OPERATION_AUTONOMY_DESC + icon = GFX_doctrine_operation_autonomy_medium + + xp_cost = 100 + xp_type = navy + ai_will_do = { + base = 0 + } + + available = { + OR = { + has_doctrine = new_convoy_raiding + has_doctrine = new_base_strike + } + has_navy_size = { + type = submarine + size > 0 + } + } + + equipment_bonus = { + submarine = { + naval_range = 0.25 + instant = yes + } + } + rewards = { + leadership_autonomy = { + submarine = { + max_organisation = 5 + convoy_raiding_coordination = 0.05 + } + modifier = { + naval_torpedo_reveal_chance_factor = -0.05 + } + } + disguised_submarine_tender = { + auxiliary_ship = { + surface_visibility = -0.1 + } + modifier = { + sub_retreat_speed = 0.1 + } + } + radio_silence = { + submarine = { + sub_visibility = -0.1 + } + equipment_bonus = { + submarine = { + surface_detection = -0.2 + instant = yes + } + } + } + submarine_kampfgruppe = { + submarine = { + max_organisation = 5 + convoy_raiding_coordination = 0.1 + } + } + auxiliary_submarine = { + effect = { + custom_effect_tooltip = auxiliary_submarine_tt + hidden_effect = { + set_technology = { auxiliary_submarine_tech = 1 } + } + } + equipment_bonus = { + submarine = { + reliability = 0.1 + instant = yes + } + } + } + } } \ No newline at end of file diff --git a/src/common/scripted_effects/_add_starting_tech.txt b/src/common/scripted_effects/_add_starting_tech.txt index 35712f0..a18e6a6 100755 --- a/src/common/scripted_effects/_add_starting_tech.txt +++ b/src/common/scripted_effects/_add_starting_tech.txt @@ -463,6 +463,7 @@ makeup_starting_techs = { basic_periscope = 1 diesel_electric_transmission = 1 teardrop_hull = 1 + improved_ship_torpedo_launcher = 1 popup = no } } @@ -487,12 +488,6 @@ makeup_starting_techs = { popup = no } } - every_country = { - set_technology = { - vnr_less_fuel_consumption = 1 - popup = no - } - } every_country = { limit = { has_tech = mtg_transport } set_technology = { diff --git a/src/common/technologies/MTG_naval.txt b/src/common/technologies/MTG_naval.txt index de2e0bd..16dafc5 100755 --- a/src/common/technologies/MTG_naval.txt +++ b/src/common/technologies/MTG_naval.txt @@ -623,6 +623,7 @@ technologies = { sonar = { enable_equipment_modules = { ship_sonar_1 + sub_sonar_1 } on_research_complete = { custom_effect_tooltip = sonar_advice_tt @@ -662,6 +663,7 @@ technologies = { improved_sonar = { enable_equipment_modules = { ship_sonar_2 + sub_sonar_2 } on_research_complete = { custom_effect_tooltip = sonar_advice_tt @@ -703,6 +705,7 @@ technologies = { advanced_sonar = { enable_equipment_modules = { ship_sonar_3 + sub_sonar_3 ship_bulbous_bow } on_research_complete = { @@ -749,6 +752,7 @@ technologies = { modern_sonar = { enable_equipment_modules = { ship_sonar_4 + sub_sonar_4 } on_research_complete = { custom_effect_tooltip = sonar_advice_tt @@ -920,19 +924,18 @@ technologies = { research_cost = 1 start_year = 1942 - destroyer = { - build_cost_ic = -0.1 - } - folder = { name = mtgnavalfolder position = { x = 3 y = @1940_module } } + destroyer = { + build_cost_ic = -0.1 + } on_research_complete = { hidden_effect = { add_equipment_bonus = { - name = vnr_destroyer_cost_1 + name = destroyer_mass_production bonus = { ship_hull_light = { instant = yes @@ -1524,6 +1527,14 @@ technologies = { structural_aluminum cruiser_ship_engine_4_gas } + + research_cost = 1 + start_year = 1949 + + folder = { + name = mtgnavalfolder + position = { x = 4 y = @1948_module } + } heavy_cruiser = { build_cost_ic = -0.1 } @@ -1533,18 +1544,10 @@ technologies = { light_cruiser = { build_cost_ic = -0.1 } - - research_cost = 1 - start_year = 1949 - - folder = { - name = mtgnavalfolder - position = { x = 4 y = @1948_module } - } on_research_complete = { hidden_effect = { add_equipment_bonus = { - name = vnr_cruiser_cost_2 + name = new_ship_materials bonus = { ship_hull_cruiser = { instant = yes @@ -1872,7 +1875,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment - + naval_armor ca_tech ship_modules_tech mio_cat_tech_all_cruiser_and_modules @@ -1928,7 +1931,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment - + naval_armor ca_tech ship_modules_tech mio_cat_tech_all_cruiser_and_modules @@ -1984,7 +1987,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment - + naval_armor ca_tech ship_modules_tech mio_cat_tech_all_cruiser_and_modules @@ -2040,7 +2043,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment - + naval_armor ca_tech ship_modules_tech mio_cat_tech_all_cruiser_and_modules @@ -2082,17 +2085,17 @@ technologies = { research_cost = 0.5 heavy_cruiser = { - build_cost_ic = -0.05 max_strength = 0.05 + build_cost_ic = -0.05 } medium_cruiser = { - build_cost_ic = -0.05 max_strength = 0.05 + build_cost_ic = -0.05 } light_cruiser = { - build_cost_ic = -0.05 naval_speed = 0.025 surface_visibility = -0.03 + build_cost_ic = -0.05 } path = { leads_to_tech = basic_ship_hull_cruiser @@ -2107,7 +2110,7 @@ technologies = { on_research_complete = { hidden_effect = { add_equipment_bonus = { - name = vnr_cruiser_cost_1 + name = treaty_cruiser_trend bonus = { ship_hull_cruiser = { instant = yes @@ -2472,6 +2475,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -2517,6 +2521,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -2562,6 +2567,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -2611,6 +2617,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -2662,6 +2669,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech mio_cat_tech_all_capital_ship_and_modules @@ -2712,6 +2720,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech mio_cat_tech_all_capital_ship_and_modules @@ -2771,6 +2780,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech mio_cat_tech_all_capital_ship_and_modules @@ -2810,6 +2820,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech mio_cat_tech_all_capital_ship_and_modules @@ -2846,6 +2857,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech mio_cat_tech_all_capital_ship_and_modules @@ -3249,6 +3261,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -3299,6 +3312,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -3350,6 +3364,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -3381,6 +3396,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -3414,6 +3430,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -3451,6 +3468,7 @@ technologies = { special_project_specialization = { specialization_naval } categories = { naval_equipment + naval_armor bb_tech bc_tech ship_modules_tech @@ -4239,6 +4257,7 @@ technologies = { ship_armor_carrier_1 ship_armor_carrier_heavy_1 } + sortie_efficiency = 0.1 path = { leads_to_tech = basic_ship_hull_carrier @@ -4303,6 +4322,7 @@ technologies = { ship_armor_carrier_2 ship_armor_carrier_heavy_2 } + sortie_efficiency = 0.1 path = { leads_to_tech = dive_bomber_study research_cost_coeff = 1 @@ -4531,9 +4551,6 @@ technologies = { start_year = 1925 air_accidents_factor = -0.05 - carrier = { - reliability = 0.05 - } enable_equipment_modules = { carrier_aviation_control_unit } @@ -4592,6 +4609,9 @@ technologies = { } aviation_dawn = { + allow = { + has_subdoctrine_in_track = carriers + } research_cost = 2 start_year = 1932 @@ -4601,8 +4621,8 @@ technologies = { experience_gain_carrier_training_factor = 0.1 experience_gain_carrier_combat_factor = 0.1 - carriers_track_mastery_gain_factor = 0.1 ship_hull_carrier_design_cost_factor = -0.1 + sortie_efficiency = 0.2 path = { leads_to_tech = improved_ship_hull_carrier @@ -4705,9 +4725,8 @@ technologies = { } carrier = { - max_organisation = 5 max_strength = 0.1 - reliability = 0.05 + reliability = 0.1 } enable_equipment_modules = { carrier_damage_control_unit @@ -4792,9 +4811,6 @@ technologies = { xp_boost_cost = 20 xp_research_bonus = 1.25 - carrier = { - build_cost_ic = -0.1 - } enable_equipment_modules = { carrier_civilian_material } @@ -4803,12 +4819,15 @@ technologies = { name = mtgnavalfolder position = { x = -2 y = @1944 } } + carrier = { + build_cost_ic = -0.1 + } on_research_complete = { custom_effect_tooltip = cv_tech_6_tt hidden_effect = { add_equipment_bonus = { - name = vnr_carrier_cost_1 + name = carrier_mass_production bonus = { ship_hull_carrier = { instant = yes @@ -4925,7 +4944,6 @@ technologies = { carrier = { armor_value = 0.2 anti_air_attack = 0.05 - reliability = 0.05 max_organisation = 10 } enable_equipment_modules = { @@ -5344,7 +5362,6 @@ technologies = { sub_ship_engine_4 pressure_hull_4 ship_sub_torpedo_computer_2 - sub_conning_tower_1 } path = { leads_to_tech = improved_submarine_snorkel @@ -5698,18 +5715,18 @@ technologies = { start_year = 1941 - submarine = { - build_cost_ic = -0.15 - } folder = { name = mtgnavalfolder position = { x = -2 y = @1944 } } + submarine = { + build_cost_ic = -0.15 + } on_research_complete = { hidden_effect = { add_equipment_bonus = { - name = vnr_submarine_cost_1 + name = submarine_mass_production bonus = { ship_hull_submarine = { instant = yes @@ -5838,6 +5855,7 @@ technologies = { enable_equipment_modules = { sub_ship_periscope_1 + sub_conning_tower_0 } research_cost = 0.5 @@ -5908,10 +5926,11 @@ technologies = { enable_equipment_modules = { sub_ship_periscope_3 + sub_conning_tower_1 } research_cost = 0.5 - start_year = 1941 + start_year = 1943 dependencies = { improved_periscope = 1 @@ -6016,8 +6035,16 @@ technologies = { rescue_submarine = { research_cost = 1 naval_accidents_chance = -0.15 - submarine = { - reliability = 0.2 + on_research_complete = { + add_equipment_bonus = { + name = rescue_submarine + bonus = { + ship_hull_submarine = { + reliability = 0.2 + instant = yes + } + } + } } start_year = 1951 @@ -6340,6 +6367,15 @@ technologies = { start_year = 1918 } + auxiliary_submarine_tech = { + allow = { + always = no + } + enable_equipment_modules = {} + research_cost = 1 + start_year = 1920 + } + obsolete_vanilla_hulls = { enable_equipments = { ship_hull_light_1 diff --git a/src/common/technologies/MTG_naval_Support.txt b/src/common/technologies/MTG_naval_Support.txt index 490c239..073332c 100755 --- a/src/common/technologies/MTG_naval_Support.txt +++ b/src/common/technologies/MTG_naval_Support.txt @@ -3209,14 +3209,17 @@ technologies = { repair_speed_factor = 0.05 naval_accidents_chance = -0.05 - heavy_cruiser = { - reliability = 0.1 - } - medium_cruiser = { - reliability = 0.1 - } - light_cruiser = { - reliability = 0.1 + + on_research_complete = { + add_equipment_bonus = { + name = support_fleet + bonus = { + ship_hull_cruiser = { + reliability = 0.1 + instant = yes + } + } + } } special_project_specialization = { specialization_naval } categories = { @@ -3241,14 +3244,16 @@ technologies = { repair_speed_factor = 0.1 naval_accidents_chance = -0.05 - battleship = { - reliability = 0.1 - } - battle_cruiser = { - reliability = 0.1 - } - SH_battleship = { - reliability = 0.1 + on_research_complete = { + add_equipment_bonus = { + name = floating_dry_dock + bonus = { + ship_hull_heavy = { + reliability = 0.1 + instant = yes + } + } + } } special_project_specialization = { specialization_naval } @@ -3269,14 +3274,24 @@ technologies = { position = { x = 8 y = 16 } } - auxiliary_ship = { - build_cost_ic = -0.1 - } - destroyer = { - reliability = 0.1 - } - submarine = { - reliability = 0.1 + on_research_complete = { + add_equipment_bonus = { + name = logistic_system_redundancy_ncns + bonus = { + ship_hull_light = { + reliability = 0.1 + instant = yes + } + ship_hull_submarine = { + reliability = 0.1 + instant = yes + } + ship_hull_civilian = { + build_cost_ic = -0.1 + instant = yes + } + } + } } special_project_specialization = { specialization_naval } @@ -3308,14 +3323,16 @@ technologies = { repair_speed_factor = 0.05 naval_accidents_chance = -0.05 - heavy_cruiser = { - reliability = 0.1 - } - medium_cruiser = { - reliability = 0.1 - } - light_cruiser = { - reliability = 0.1 + on_research_complete = { + add_equipment_bonus = { + name = support_fleet_ncns + bonus = { + ship_hull_cruiser = { + reliability = 0.1 + instant = yes + } + } + } } enable_equipments = { support_ship_1 @@ -3344,14 +3361,16 @@ technologies = { repair_speed_factor = 0.1 naval_accidents_chance = -0.05 - battleship = { - reliability = 0.1 - } - battle_cruiser = { - reliability = 0.1 - } - SH_battleship = { - reliability = 0.1 + on_research_complete = { + add_equipment_bonus = { + name = floating_dry_dock + bonus = { + ship_hull_heavy = { + reliability = 0.1 + instant = yes + } + } + } } special_project_specialization = { specialization_naval } @@ -3374,14 +3393,24 @@ technologies = { position = { x = 8 y = 16 } } - auxiliary_ship = { - build_cost_ic = -0.1 - } - destroyer = { - reliability = 0.1 - } - submarine = { - reliability = 0.1 + on_research_complete = { + add_equipment_bonus = { + name = logistic_system_redundancy_ncns + bonus = { + ship_hull_light = { + reliability = 0.1 + instant = yes + } + ship_hull_submarine = { + reliability = 0.1 + instant = yes + } + ship_hull_civilian = { + build_cost_ic = -0.1 + instant = yes + } + } + } } enable_equipments = { support_ship_2 @@ -3640,14 +3669,4 @@ technologies = { } } - - vnr_less_fuel_consumption = { - research_cost = 1 - start_year = 1900 - - allow = { - always = no - } - navy_fuel_consumption_factor = -0.15 - } }