2026-01-02 04:02:40

This commit is contained in:
actions[bot]
2026-01-02 04:02:40 +00:00
parent e3840eea8c
commit 5a825e19ea
116 changed files with 1689 additions and 866 deletions

View File

@@ -0,0 +1,119 @@
unique_id = vnr_achievements
00_vnr_bathtub_war = {
possible = {
has_game_rule = { rule = allow_never_built option = FREE }
}
happened = {
custom_override_tooltip = {
tooltip = 00_vnr_bathtub_war_tt
has_tech = wunderwaffe_modules
}
}
}
00_vnr_outbuild_the_yankees = {
possible = {
difficulty > 1
game_rules_allow_achievements = yes
}
happened = {
custom_override_tooltip = {
tooltip = 00_vnr_outbuild_the_yankees_tt
has_navy_size = { archetype = ship_hull_carrier size > 100 }
has_navy_size = { archetype = ship_hull_heavy size > 20 }
has_navy_size = { archetype = ship_hull_cruiser size > 70 }
}
}
}
00_vnr_the_yamato = {
possible = {
tag = JAP
difficulty > 1
game_rules_allow_achievements = yes
}
happened = {
has_navy_size = { unit = SH_battleship size > 0 }
}
}
00_vnr_topgun = {
possible = {
tag = USA
difficulty > 1
game_rules_allow_achievements = yes
}
happened = {
custom_override_tooltip = {
tooltip = 00_vnr_topgun_tt
has_tech = super_carriers
}
}
}
00_vnr_seapower_theory = {
possible = {
difficulty > 1
game_rules_allow_achievements = yes
}
happened = {
has_completed_track = capital_ships
has_completed_track = carriers
has_completed_track = screens
has_completed_track = submarines
}
}
00_vnr_john_fisher_adherent = {
possible = {
difficulty > 1
game_rules_allow_achievements = yes
}
happened = {
has_navy_size = {
unit = battle_cruiser
size > 99
}
}
}
00_vnr_carrier_liaoning = {
possible = {
custom_override_tooltip = {
tooltip = 00_vnr_carrier_liaoning_tt
has_global_flag = vnr_enabled
}
difficulty > 1
game_rules_allow_achievements = yes
tag = PRC
}
happened = {
has_navy_size = { type = carrier size > 0 }
}
}
00_vnr_i_love_destroyers = {
possible = {
difficulty > 1
game_rules_allow_achievements = yes
}
happened = {
has_navy_size = { unit = destroyer size > 499 }
}
}
00_vnr_nelson_reborn = {
possible = {
difficulty > 1
game_rules_allow_achievements = yes
}
happened = {
custom_override_tooltip = {
tooltip = 00_vnr_nelson_reborn_tt
any_navy_leader = {
skill > 6
}
}
}
}

View File

@@ -12,6 +12,13 @@ areas = {
69
}
}
vnr_eng_atlantic_route = {
strategic_regions = {
47
48
49
}
}
vnr_ger_baltic = {
strategic_regions = {
173
@@ -47,31 +54,40 @@ areas = {
77
}
}
vnr_pacific_1 = { # Hawaii, Midway
vnr_pacific_hawaii = { # Hawaii
strategic_regions = {
95
97
105
180
}
}
vnr_pacific_2 = { # Solomon Islands
vnr_pacific_midway = { # Midway
strategic_regions = {
95
97
}
}
vnr_pacific_solomons = { # Solomon Islands
strategic_regions = {
83
84
}
}
vnr_pacific_3 = { # Iow Jima, Gulf Leyte
vnr_pacific_iwo_jima = { # Iow Jima, Gulf Leyte
strategic_regions = {
94
78
}
}
vnr_pacific_4 = { # the Philippines
vnr_pacific_philippines = {
strategic_regions = {
75
80
}
}
vnr_pacific_okinawa = {
strategic_regions = {
76
90
}
}
}

View File

@@ -209,7 +209,7 @@ naval_capital_battleship = {
priority = {
base = 0
modifier = { add = 50 tag = JAP }
modifier = { factor = 0 has_navy_size = { unit = SH_battleship size > 2 } }
modifier = { factor = 0 has_navy_size = { unit = SH_battleship size > 1 } }
modifier = { factor = 0 expert_ai_style = yes }
}

View File

@@ -2,7 +2,7 @@ naval_light_carrier = {
category = naval
#blocked_for = {}
roles = { vnr_naval_carrier_light }
priority = { base = 10 }
priority = { base = 0 }
light_carrier_1936 = {
name = vnr_cvl_1936

View File

@@ -105,6 +105,7 @@ vnr_cv_naval_bomber = {
modules = {
engine_type_slot = engine_2_1x
fixed_main_weapon_slot = torpedo_mounting
fixed_auxiliary_weapon_slot_1 = light_mg_4x
special_type_slot_1 = self_sealing_fuel_tanks_small
special_type_slot_2 = armor_plate_small
}
@@ -130,6 +131,8 @@ vnr_cv_naval_bomber = {
modules = {
engine_type_slot = engine_3_1x
fixed_main_weapon_slot = torpedo_mounting_2
fixed_auxiliary_weapon_slot_1 = light_mg_4x
fixed_auxiliary_weapon_slot_2 = heavy_mg_4x
special_type_slot_1 = self_sealing_fuel_tanks_small
special_type_slot_2 = armor_plate_small
}
@@ -151,6 +154,8 @@ vnr_cv_naval_bomber = {
modules = {
engine_type_slot = engine_4_1x
fixed_main_weapon_slot = torpedo_mounting_3
fixed_auxiliary_weapon_slot_1 = light_mg_4x
fixed_auxiliary_weapon_slot_2 = heavy_mg_4x
special_type_slot_1 = self_sealing_fuel_tanks_small
special_type_slot_2 = armor_plate_small
}

View File

@@ -48,7 +48,7 @@ naval_cruiser_heavy = {
role_icon_index = 27
priority = {
base = 0
base = 1
modifier = { factor = 0.1 has_tech = interwar_ship_hull_cruiser }
}
@@ -90,7 +90,7 @@ naval_cruiser_heavy = {
role_icon_index = 27
priority = {
base = 0
base = 10
modifier = { factor = 0.1 has_tech = improved_ship_hull_cruiser }
}
@@ -133,7 +133,7 @@ naval_cruiser_heavy = {
role_icon_index = 27
priority = {
base = 0
base = 20
modifier = { factor = 0.1 has_tech = advanced_ship_hull_cruiser }
}
@@ -175,7 +175,7 @@ naval_cruiser_heavy = {
role_icon_index = 27
priority = {
base = 0
base = 30
modifier = { factor = 0.1 has_tech = modern_ship_hull_cruiser }
}
@@ -211,5 +211,46 @@ naval_cruiser_heavy = {
ship_anti_air
}
}
capital_cruiser_1949 = {
name = vnr_cam_1949
role_icon_index = 55
priority = {
base = 50
}
history = yes
target_variant = {
match_value = 9000.0
type = vnr_ship_hull_cruiser_6
modules = {
fixed_ship_battery_slot = dp_light_battery
fixed_ship_anti_air_slot = ship_missile_aa
fixed_ship_fire_control_system_slot = ship_fire_control_system
fixed_ship_engine_slot = { any_of = { cruiser_ship_engine cruiser_ship_engine_nuclear } }
fixed_ship_radar_slot = { any_of = { ship_radar } }
fixed_ship_armor_slot = { upgrade = current any_of = { ship_armor_cruiser_4 ship_armor_cruiser_3 ship_armor_cruiser_2 ship_armor_cruiser_1 } }
fixed_ship_role_slot = ship_hull_cruiser_role_cg
fixed_ship_secondaries_slot = ship_dp_secondaries
fixed_ship_extra_missile_slot = full_missile_upgrade
front_1_custom_slot = dp_light_battery
front_2_custom_slot = { upgrade = current any_of = { ship_missile_2 ship_missile_1 } }
mid_1_custom_slot = ship_missile_aa
mid_2_custom_slot = ship_dp_secondaries
mid_3_custom_slot = { upgrade = current any_of = { ship_missile_2 ship_missile_1 } }
rear_1_custom_slot = { upgrade = current any_of = { ship_missile_2 ship_missile_1 } }
rear_2_custom_slot = ship_missile_aa
}
}
allowed_modules = {
ship_mast
ship_fire_control_system
ship_radar
ship_anti_air
}
}
}

View File

@@ -3,14 +3,14 @@ naval_cruiser_medium = {
#available_for = {}
#blocked_for = {}
roles = { vnr_naval_cruiser_medium }
priority = { base = 75 }
priority = { base = 0 }
medium_cruiser_1924 = {
name = vnr_cam_1924
role_icon_index = 27
priority = {
base = 10
base = 0
modifier = { factor = 0.1 has_tech = interwar_ship_hull_cruiser }
}
@@ -52,7 +52,7 @@ naval_cruiser_medium = {
role_icon_index = 27
priority = {
base = 20
base = 0
modifier = { factor = 0.1 has_tech = improved_ship_hull_cruiser }
}
@@ -95,7 +95,7 @@ naval_cruiser_medium = {
role_icon_index = 27
priority = {
base = 50
base = 0
modifier = { factor = 0.1 has_tech = advanced_ship_hull_cruiser }
}
@@ -137,7 +137,7 @@ naval_cruiser_medium = {
role_icon_index = 27
priority = {
base = 70
base = 0
modifier = { factor = 0.1 has_tech = modern_ship_hull_cruiser }
}
@@ -180,7 +180,6 @@ naval_cruiser_medium = {
priority = {
base = 0
modifier = { add = 100 has_tech = modern_ship_hull_cruiser }
modifier = { factor = 0 expert_ai_style = yes }
}
@@ -227,9 +226,6 @@ naval_cruiser_medium = {
priority = {
base = 0
modifier = { add = 80 has_tech = cruiser_missile_upgrade }
modifier = { factor = 0.1 has_tech = modern_ship_hull_cruiser }
modifier = { factor = 0 expert_ai_style = no }
}
@@ -266,8 +262,6 @@ naval_cruiser_medium = {
priority = {
base = 0
modifier = { add = 100 has_tech = modern_ship_hull_cruiser }
modifier = { factor = 0 expert_ai_style = no }
}

View File

@@ -2,13 +2,20 @@ ENG_dominance_fleet_1 = {
required_taskforces = {
ENG_StrikeForce_1 = 1
ENG_PatrolDominanceForce_1 = 1
ENG_PatrolReconForce_1 = 3
ENG_PatrolReconForce_1 = 2
}
optional_taskforces = {
ENG_StrikeForce_1 = 1
ENG_PatrolReconForce_1 = 1
}
}
ENG_dominance_fleet_2 = {
required_taskforces = {
ENG_PatrolDominanceForce_2 = 1
ENG_PatrolDominanceForce_3 = 1
}
optional_taskforces = {
ENG_PatrolReconForce_1 = 1
}
}
@@ -23,9 +30,9 @@ ENG_raiding_fleet_2 = {
ENG_escort_fleet_3 = {
required_taskforces = {
ENG_ConvoyEscort_1 = 2
ENG_ConvoyEscort_1 = 1
}
optional_taskforces = {
ENG_ConvoyEscort_1 = 2
ENG_ConvoyEscort_1 = 1
}
}

View File

@@ -15,7 +15,8 @@ FRA_raiding_fleet_2 = {
FRA_ConvoyRaiding_1 = 2
}
optional_taskforces = {
FRA_ConvoyRaiding_1 = 2
FRA_ConvoyRaiding_1 = 1
FRA_ConvoySurfaceRaiding_1 = 1
}
}
@@ -24,7 +25,6 @@ FRA_escort_fleet_3 = {
FRA_ConvoyEscort_1 = 2
}
optional_taskforces = {
FRA_ConvoyEscort_1 = 2
FRA_ConvoySurfaceRaiding_1 = 1
FRA_ConvoyEscort_1 = 1
}
}

View File

@@ -2,12 +2,21 @@ GER_dominance_fleet_1 = {
required_taskforces = {
GER_StrikeForce_1 = 1
GER_PatrolDominanceForce_1 = 1
GER_PatrolReconForce_1 = 3
GER_PatrolReconForce_1 = 2
}
optional_taskforces = {
GER_StrikeForceCarrier_1 = 1
GER_PatrolReconForce_1 = 1
}
}
GER_dominance_fleet_2 = {
required_taskforces = {
GER_StrikeForceCarrier_1 = 1
GER_PatrolDominanceForce_1 = 1
GER_PatrolReconForce_1 = 1
}
optional_taskforces = {
GER_PatrolReconForce_1 = 1
}
}

View File

@@ -2,12 +2,21 @@ ITA_dominance_fleet_1 = {
required_taskforces = {
ITA_StrikeForce_1 = 1
ITA_PatrolDominanceForce_1 = 1
ITA_PatrolReconForce_1 = 3
ITA_PatrolReconForce_1 = 2
}
optional_taskforces = {
ITA_StrikeForceCarrier_1 = 1
ITA_PatrolReconForce_1 = 1
}
}
ITA_dominance_fleet_2 = {
required_taskforces = {
ITA_StrikeForceCarrier_1 = 1
ITA_PatrolDominanceForce_1 = 1
ITA_PatrolReconForce_1 = 2
}
optional_taskforces = {
ITA_PatrolReconForce_1 = 1
}
}

View File

@@ -2,14 +2,22 @@ JAP_dominance_fleet_1 = {
required_taskforces = {
JAP_StrikeForce_1 = 1
JAP_PatrolDominanceForce_1 = 1
JAP_PatrolReconForce_1 = 3
JAP_PatrolReconForce_1 = 2
}
optional_taskforces = {
JAP_StrikeForce_1 = 1
JAP_PatrolReconForce_1 = 1
}
}
JAP_dominance_fleet_2 = {
required_taskforces = {
JAP_PatrolDominanceForce_2 = 1
JAP_PatrolReconForce_1 = 1
}
optional_taskforces = {
JAP_PatrolDominanceForce_3 = 1
JAP_PatrolDominanceForce_4 = 1
JAP_PatrolReconForce_1 = 1
}
}
@@ -24,9 +32,9 @@ JAP_raiding_fleet_2 = {
JAP_escort_fleet_3 = {
required_taskforces = {
JAP_ConvoyEscort_1 = 2
JAP_ConvoyEscort_1 = 1
}
optional_taskforces = {
JAP_ConvoyEscort_1 = 2
JAP_ConvoyEscort_1 = 1
}
}

View File

@@ -2,10 +2,20 @@ SOV_dominance_fleet_1 = {
required_taskforces = {
SOV_StrikeForce_1 = 1
SOV_PatrolDominanceForce_1 = 1
SOV_PatrolReconForce_1 = 3
SOV_PatrolReconForce_1 = 1
}
optional_taskforces = {
SOV_PatrolDominanceForce_2 = 1
SOV_PatrolReconForce_1 = 1
}
}
SOV_dominance_fleet_2 = {
required_taskforces = {
SOV_StrikeForceCarrier_1 = 1
SOV_PatrolReconForce_1 = 2
}
optional_taskforces = {
SOV_PatrolDominanceForce_2 = 1
SOV_PatrolReconForce_1 = 1
}

View File

@@ -1,30 +1,29 @@
USA_dominance_fleet_1 = {
required_taskforces = {
USA_StrikeForce_1 = 1
USA_StrikeForce_1 = 2
USA_PatrolDominanceForce_1 = 1
USA_PatrolReconForce_1 = 3
USA_PatrolReconForce_1 = 2
}
optional_taskforces = {
USA_StrikeForce_1 = 1
USA_PatrolDominanceForce_2 = 2
USA_PatrolReconForce_1 = 1
}
}
USA_raiding_fleet_1 = {
required_taskforces = {
USA_ConvoyRaiding_1 = 2
USA_ConvoyRaiding_1 = 1
}
optional_taskforces = {
USA_ConvoyRaiding_1 = 2
USA_ConvoyRaiding_1 = 1
}
}
USA_escort_fleet_1 = {
required_taskforces = {
USA_ConvoyEscort_1 = 2
USA_ConvoyEscort_1 = 1
}
optional_taskforces = {
USA_ConvoyEscort_1 = 2
USA_ConvoyEscort_1 = 1
}
}

View File

@@ -1,12 +1,10 @@
generic_dominance_fleet_1 = {
required_taskforces = {
StrikeForce_1 = 1
PatrolDominanceForce_CA_1 = 2
PatrolDominanceForce_BC_1 = 1
PatrolDominanceForce_CA_1 = 1
PatrolReconForce_1 = 2
}
optional_taskforces = {
StrikeForce_1 = 1
PatrolReconForce_1 = 1
PatrolDominanceForce_CA_1 = 1
}
@@ -23,7 +21,7 @@ generic_raiding_fleet_2 = {
generic_escort_fleet_3 = {
required_taskforces = {
ConvoyEscort_1 = 2
ConvoyEscort_1 = 1
}
optional_taskforces = {
ConvoyEscort_1 = 1

View File

@@ -38,7 +38,7 @@ ENG_coast_defense = {
ENG
}
min_priority = 10
min_priority = 5
max_priority = 16
}
@@ -49,8 +49,8 @@ ENG_convoy_protection = {
ENG
}
min_priority = 7
max_priority = 10
min_priority = 5
max_priority = 12
}
ENG_convoy_raiding = {
@@ -61,7 +61,7 @@ ENG_convoy_raiding = {
}
min_priority = 3
max_priority = 10
max_priority = 12
}
ENG_naval_dominance = {
@@ -71,7 +71,7 @@ ENG_naval_dominance = {
ENG
}
min_priority = 12
min_priority = 7
max_priority = 20
}

View File

@@ -72,7 +72,7 @@ JAP_naval_dominance = {
}
min_priority = 12
max_priority = 20
max_priority = 18
}
JAP_mine_laying = {

View File

@@ -5,8 +5,8 @@ USA_naval_invasion_support = {
USA
}
min_priority = 10
max_priority = 20
min_priority = 8
max_priority = 14
}
USA_mine_sweeping = {
@@ -28,7 +28,7 @@ USA_invasion_defense = {
}
min_priority = 10
max_priority = 18
max_priority = 14
}
USA_coast_defense = {
@@ -49,7 +49,7 @@ USA_convoy_protection = {
USA
}
min_priority = 7
min_priority = 3
max_priority = 10
}
@@ -71,7 +71,7 @@ USA_naval_dominance = {
USA
}
min_priority = 15
min_priority = 10
max_priority = 20
}

View File

@@ -7,11 +7,8 @@ ENG_StrikeForce_1 = {
}
mission = { naval_strike }
min_composition = {
battleship = {
amount = 4
}
destroyer = {
amount = 12
carrier = {
amount = 2
}
}
@@ -39,11 +36,11 @@ ENG_PatrolReconForce_1 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
destroyer = {
amount = 1
}
}
# min_composition = {
# destroyer = {
# amount = 1
# }
# }
optimal_composition = {
destroyer = {
amount = 5
@@ -59,26 +56,23 @@ ENG_PatrolDominanceForce_1 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 6
}
}
# min_composition = {
# light_cruiser = {
# amount = 2
# }
# destroyer = {
# amount = 6
# }
# }
optimal_composition = {
battleship = {
heavy_cruiser = {
amount = 4
}
medium_cruiser = {
amount = 2
}
light_cruiser = {
amount = 4
}
destroyer = {
amount = 10
amount = 8
}
}
}
@@ -88,58 +82,26 @@ ENG_PatrolDominanceForce_2 = {
original_tag = ENG
}
ai_will_do = {
factor = 3
factor = 1
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 5
}
}
# min_composition = {
# battle_cruiser = {
# amount = 3
# }
# destroyer = {
# amount = 5
# }
# }
optimal_composition = {
battle_cruiser = {
amount = 3
}
medium_cruiser = {
amount = 2
}
light_cruiser = {
amount = 2
}
destroyer = {
amount = 8
}
}
}
ENG_PatrolDominanceForce_3 = {
allowed = {
original_tag = ENG
}
ai_will_do = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 5
}
}
optimal_composition = {
heavy_cruiser = {
amount = 4
}
medium_cruiser = {
amount = 2
}
light_cruiser = {
amount = 3
amount = 2
}
destroyer = {
amount = 8
@@ -155,11 +117,11 @@ ENG_ConvoyRaiding_1 = {
factor = 5
}
mission = { convoy_raiding }
min_composition = {
submarine = {
amount = 4
}
}
# min_composition = {
# submarine = {
# amount = 4
# }
# }
optimal_composition = {
submarine = {
@@ -176,15 +138,15 @@ ENG_ConvoyEscort_1 = {
factor = 5
}
mission = { convoy_escort }
min_composition = {
# min_composition = {
# destroyer = {
# amount = 2
# }
# }
optimal_composition = {
destroyer = {
amount = 5
}
}
optimal_composition = {
destroyer = {
amount = 8
}
}
}

View File

@@ -6,14 +6,14 @@ FRA_StrikeForce_1 = {
factor = 1
}
mission = { naval_strike }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 8
}
}
# min_composition = {
# light_cruiser = {
# amount = 2
# }
# destroyer = {
# amount = 8
# }
# }
optimal_composition = {
carrier = {
@@ -40,11 +40,11 @@ FRA_PatrolReconForce_1 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
destroyer = {
amount = 1
}
}
# min_composition = {
# destroyer = {
# amount = 1
# }
# }
optimal_composition = {
destroyer = {
amount = 5
@@ -60,20 +60,20 @@ FRA_PatrolDominanceForce_1 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 4
}
}
# min_composition = {
# light_cruiser = {
# amount = 2
# }
# destroyer = {
# amount = 4
# }
# }
optimal_composition = {
battleship = {
amount = 2
}
medium_cruiser = {
heavy_cruiser = {
amount = 2
}
light_cruiser = {
@@ -93,22 +93,19 @@ FRA_PatrolDominanceForce_2 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 4
}
}
# min_composition = {
# light_cruiser = {
# amount = 2
# }
# destroyer = {
# amount = 4
# }
# }
optimal_composition = {
heavy_cruiser = {
amount = 4
}
medium_cruiser = {
amount = 4
}
light_cruiser = {
amount = 4
}
@@ -126,11 +123,11 @@ FRA_ConvoyRaiding_1 = {
factor = 1
}
mission = { convoy_raiding }
min_composition = {
submarine = {
amount = 4
}
}
# min_composition = {
# submarine = {
# amount = 4
# }
# }
optimal_composition = {
submarine = {
@@ -147,11 +144,11 @@ FRA_ConvoySurfaceRaiding_1 = {
factor = 1
}
mission = { convoy_raiding}
min_composition = {
battle_cruiser = {
amount = 1
}
}
# min_composition = {
# battle_cruiser = {
# amount = 1
# }
# }
optimal_composition = {
battle_cruiser = {
@@ -168,11 +165,11 @@ FRA_ConvoyEscort_1 = {
factor = 5
}
mission = { convoy_escort }
min_composition = {
destroyer = {
amount = 5
}
}
# min_composition = {
# destroyer = {
# amount = 5
# }
# }
optimal_composition = {
destroyer = {

View File

@@ -127,7 +127,7 @@ GER_ConvoyRaiding_1 = {
optimal_composition = {
submarine = {
amount = 12
amount = 8
}
}
}

View File

@@ -6,11 +6,11 @@ ITA_StrikeForce_1 = {
factor = 1
}
mission = { naval_strike }
min_composition = {
destroyer = {
amount = 8
}
}
# min_composition = {
# destroyer = {
# amount = 8
# }
# }
optimal_composition = {
battleship = {
@@ -32,14 +32,21 @@ ITA_StrikeForceCarrier_1 = {
original_tag = ITA
}
ai_will_do = {
factor = 1
factor = 10
modifier = {
factor = 0
has_navy_size = {
type = carrier
size < 1
}
}
}
mission = { naval_strike }
min_composition = {
destroyer = {
amount = 8
}
}
# min_composition = {
# destroyer = {
# amount = 8
# }
# }
optimal_composition = {
carrier = {
@@ -48,6 +55,9 @@ ITA_StrikeForceCarrier_1 = {
battleship = {
amount = 4
}
heavy_cruiser = {
amount = 2
}
light_cruiser = {
amount = 10
}
@@ -65,11 +75,11 @@ ITA_PatrolReconForce_1 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
destroyer = {
amount = 1
}
}
# min_composition = {
# destroyer = {
# amount = 1
# }
# }
optimal_composition = {
destroyer = {
amount = 5
@@ -85,22 +95,19 @@ ITA_PatrolDominanceForce_1 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 4
}
}
# min_composition = {
# light_cruiser = {
# amount = 2
# }
# destroyer = {
# amount = 4
# }
# }
optimal_composition = {
heavy_cruiser = {
amount = 3
}
medium_cruiser = {
amount = 2
}
light_cruiser = {
amount = 4
}
@@ -118,11 +125,11 @@ ITA_ConvoyRaiding_1 = {
factor = 1
}
mission = { convoy_raiding }
min_composition = {
submarine = {
amount = 4
}
}
# min_composition = {
# submarine = {
# amount = 4
# }
# }
optimal_composition = {
submarine = {
amount = 12
@@ -130,27 +137,6 @@ ITA_ConvoyRaiding_1 = {
}
}
ITA_ConvoySurfaceRaiding_1 = {
allowed = {
original_tag = ITA
}
ai_will_do = {
factor = 1
}
mission = { convoy_raiding }
min_composition = {
battle_cruiser = {
amount = 1
}
}
optimal_composition = {
battle_cruiser = {
amount = 2
}
}
}
ITA_ConvoyEscort_1 = {
allowed = {
original_tag = ITA
@@ -167,7 +153,7 @@ ITA_ConvoyEscort_1 = {
optimal_composition = {
destroyer = {
amount = 6
amount = 5
}
}
}

View File

@@ -3,27 +3,24 @@ JAP_StrikeForce_1 = {
original_tag = JAP
}
ai_will_do = {
factor = 15
factor = 30
}
mission = { naval_strike }
min_composition = {
battleship = {
amount = 4
}
destroyer = {
amount = 12
carrier = {
amount = 2
}
}
optimal_composition = {
carrier = {
amount = 4
amount = 6
}
battleship = {
amount = 6
}
light_cruiser = {
amount = 10
amount = 12
}
destroyer = {
amount = 16
@@ -39,11 +36,11 @@ JAP_PatrolReconForce_1 = {
factor = 10
}
mission = { naval_patrol }
min_composition = {
destroyer = {
amount = 1
}
}
# min_composition = {
# destroyer = {
# amount = 1
# }
# }
optimal_composition = {
destroyer = {
amount = 5
@@ -59,27 +56,24 @@ JAP_PatrolDominanceForce_1 = {
factor = 10
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 6
}
}
# min_composition = {
# light_cruiser = {
# amount = 2
# }
# destroyer = {
# amount = 6
# }
# }
optimal_composition = {
battleship = {
heavy_cruiser = {
amount = 4
}
medium_cruiser = {
amount = 2
}
light_cruiser = {
amount = 4
}
destroyer = {
amount = 10
amount = 8
}
}
}
@@ -90,24 +84,25 @@ JAP_PatrolDominanceForce_2 = {
}
ai_will_do = {
factor = 10
modifier = {
factor = 0
has_navy_size = {
unit = battle_cruiser
size < 1
}
}
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 6
}
}
# min_composition = {
# battle_cruiser = {
# amount = 2
# }
# }
optimal_composition = {
battle_cruiser = {
amount = 2
}
medium_cruiser = {
amount = 2
}
light_cruiser = {
amount = 2
}
@@ -122,23 +117,27 @@ JAP_PatrolDominanceForce_3 = {
original_tag = JAP
}
ai_will_do = {
factor = 5
factor = 10
modifier = {
factor = 0
has_navy_size = {
unit = SH_battleship
size < 1
}
}
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 6
}
}
# min_composition = {
# SH_battleship = {
# amount = 2
# }
# }
optimal_composition = {
heavy_cruiser = {
amount = 4
SH_battleship = {
amount = 2
}
medium_cruiser = {
heavy_cruiser = {
amount = 2
}
light_cruiser = {
@@ -150,46 +149,6 @@ JAP_PatrolDominanceForce_3 = {
}
}
JAP_PatrolDominanceForce_4 = {
allowed = {
original_tag = JAP
}
ai_will_do = {
factor = 0
modifier = {
add = 3
has_navy_size = {
unit = SH_battleship
size > 0
}
}
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 6
}
}
optimal_composition = {
SH_battleship = {
amount = 2
}
medium_cruiser = {
amount = 2
}
light_cruiser = {
amount = 4
}
destroyer = {
amount = 10
}
}
}
JAP_ConvoyRaiding_1 = {
allowed = {
original_tag = JAP
@@ -198,11 +157,11 @@ JAP_ConvoyRaiding_1 = {
factor = 1
}
mission = { convoy_raiding }
min_composition = {
submarine = {
amount = 4
}
}
# min_composition = {
# submarine = {
# amount = 4
# }
# }
optimal_composition = {
submarine = {
@@ -219,15 +178,14 @@ JAP_ConvoyEscort_1 = {
factor = 5
}
mission = { convoy_escort }
min_composition = {
destroyer = {
amount = 4
}
}
# min_composition = {
# destroyer = {
# amount = 2
# }
# }
optimal_composition = {
destroyer = {
amount = 8
amount = 5
}
}
}

View File

@@ -139,9 +139,6 @@ SOV_PatrolDominanceForce_2 = {
heavy_cruiser = {
amount = 4
}
medium_cruiser = {
amount = 2
}
light_cruiser = {
amount = 3
}

View File

@@ -7,11 +7,8 @@ USA_StrikeForce_1 = {
}
mission = { naval_strike }
min_composition = {
battleship = {
amount = 4
}
destroyer = {
amount = 12
carrier = {
amount = 2
}
}
@@ -23,7 +20,7 @@ USA_StrikeForce_1 = {
amount = 6
}
light_cruiser = {
amount = 10
amount = 14
}
destroyer = {
amount = 18
@@ -39,11 +36,11 @@ USA_PatrolReconForce_1 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
destroyer = {
amount = 1
}
}
# min_composition = {
# destroyer = {
# amount = 1
# }
# }
optimal_composition = {
destroyer = {
amount = 5
@@ -59,55 +56,19 @@ USA_PatrolDominanceForce_1 = {
factor = 5
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 8
}
}
optimal_composition = {
battleship = {
amount = 4
}
medium_cruiser = {
amount = 4
}
light_cruiser = {
amount = 4
}
destroyer = {
amount = 10
}
}
}
USA_PatrolDominanceForce_2 = {
allowed = {
original_tag = USA
}
ai_will_do = {
factor = 3
}
mission = { naval_patrol }
min_composition = {
light_cruiser = {
amount = 2
}
destroyer = {
amount = 8
}
}
# min_composition = {
# light_cruiser = {
# amount = 2
# }
# destroyer = {
# amount = 4
# }
# }
optimal_composition = {
heavy_cruiser = {
amount = 4
}
medium_cruiser = {
amount = 4
}
light_cruiser = {
amount = 4
}
@@ -125,11 +86,11 @@ USA_ConvoyRaiding_1 = {
factor = 5
}
mission = { convoy_raiding }
min_composition = {
submarine = {
amount = 4
}
}
# min_composition = {
# submarine = {
# amount = 4
# }
# }
optimal_composition = {
submarine = {
@@ -146,15 +107,15 @@ USA_ConvoyEscort_1 = {
factor = 1
}
mission = { convoy_escort }
min_composition = {
destroyer = {
amount = 4
}
}
# min_composition = {
# destroyer = {
# amount = 2
# }
# }
optimal_composition = {
destroyer = {
amount = 8
amount = 5
}
}
}

View File

@@ -210,7 +210,7 @@ naval_unit_role_ratios_minors_defensive = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 20
}
@@ -253,7 +253,7 @@ naval_unit_role_ratios_minors_offensive = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 20
}
@@ -302,7 +302,7 @@ naval_unit_role_ratios_minors_global = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 20
}
@@ -351,7 +351,7 @@ naval_unit_role_ratios_GER_prewar_early = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 20
}
@@ -399,7 +399,7 @@ naval_unit_role_ratios_GER_prewar_late = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 20
}
@@ -493,7 +493,7 @@ naval_unit_role_ratios_GER_atwar_many_shipyard = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 30
}
@@ -542,7 +542,7 @@ naval_unit_role_ratios_GER_atwar_knock_USA = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 30
}
@@ -597,7 +597,7 @@ naval_unit_role_ratios_GER_atwar_No_Naval_Competitor = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 30
}
@@ -655,7 +655,7 @@ naval_unit_role_ratios_GER_late_peace = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 10
}
@@ -715,7 +715,7 @@ naval_unit_role_ratios_ENG_prewar_early = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = -30
}
ai_strategy = {
@@ -767,8 +767,8 @@ naval_unit_role_ratios_ENG_prewar_late = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
value = 50
id = vnr_naval_cruiser_heavy
value = 30
}
ai_strategy = {
@@ -812,7 +812,7 @@ naval_unit_role_ratios_ENG_atwar = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 20
}
@@ -897,7 +897,7 @@ naval_unit_role_ratios_FRA_prewar = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 15
}
ai_strategy = {
@@ -938,7 +938,7 @@ naval_unit_role_ratios_FRA_atwar = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 15
}
ai_strategy = {
@@ -1068,7 +1068,7 @@ naval_unit_role_ratios_SOV_need_to_watch_germany_peace = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 10
}
}
@@ -1104,7 +1104,7 @@ naval_unit_role_ratios_SOV_no_need_to_watch_germany_peace = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 20
}
ai_strategy = {
@@ -1149,7 +1149,7 @@ naval_unit_role_ratios_SOV_atwar_with_Germany = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = -100
}
ai_strategy = {
@@ -1191,7 +1191,7 @@ naval_unit_role_ratios_SOV_atwar_with_major = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 20
}
ai_strategy = {
@@ -1284,7 +1284,7 @@ naval_unit_role_ratios_JAP_prewar_enough_carrier = {
ai_strategy = {
type = role_ratio
id = vnr_naval_screen
value = 300
value = 350
}
ai_strategy = {
type = role_ratio
@@ -1293,7 +1293,7 @@ naval_unit_role_ratios_JAP_prewar_enough_carrier = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 30
}
ai_strategy = {
@@ -1304,7 +1304,7 @@ naval_unit_role_ratios_JAP_prewar_enough_carrier = {
ai_strategy = {
type = role_ratio
id = vnr_naval_carrier
value = 150
value = 90
}
ai_strategy = {
type = dockyard_to_military_factory_ratio
@@ -1333,11 +1333,11 @@ naval_unit_role_ratios_JAP_atwar = {
ai_strategy = {
type = role_ratio
id = vnr_naval_screen
value = 350
value = 400
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 30
}
ai_strategy = {
@@ -1385,22 +1385,17 @@ naval_unit_role_ratios_JAP_late_peace = {
ai_strategy = {
type = role_ratio
id = vnr_naval_screen
value = 250
value = 300
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_light
value = 65
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
value = 30
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_heavy
value = 10
value = 30
}
ai_strategy = {
type = role_ratio
@@ -1462,7 +1457,7 @@ naval_unit_role_ratios_USA_great_depression = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 30
}
}
@@ -1485,18 +1480,18 @@ naval_unit_role_ratios_USA_go_to_war = {
ai_strategy = {
type = role_ratio
id = vnr_naval_screen
value = 300
value = 450
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_light
value = 250
value = 200
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 40
}
@@ -1550,8 +1545,8 @@ naval_unit_role_ratios_USA_atwar = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
value = 35
id = vnr_naval_cruiser_heavy
value = 60
}
ai_strategy = {
@@ -1631,7 +1626,7 @@ naval_unit_role_ratios_ITA_prewar_build_battleships = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 25
}
@@ -1675,7 +1670,7 @@ naval_unit_role_ratios_ITA_prewar_enough_battleships = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 30
}
@@ -1774,7 +1769,7 @@ naval_unit_role_ratios_ITA_atwar_with_major = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 30
}
ai_strategy = {
@@ -1825,7 +1820,7 @@ naval_unit_role_ratios_ITA_late_peace = {
}
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 25
}
@@ -2192,21 +2187,36 @@ we_need_screen_1 = {
allowed = {
OR = {
tag = ENG
tag = FRA
tag = JAP
tag = GER
tag = USA
tag = ITA
tag = SOV
}
}
enable = { has_navy_size = { size < 50 type = screen_ship archetype = ship_hull_light } }
enable = { has_navy_size = { size < 100 archetype = ship_hull_light } }
abort_when_not_enabled = yes
ai_strategy = {
type = role_ratio
id = vnr_naval_screen
value = 300
value = 500
}
}
we_need_screen_2 = {
allowed = {
OR = {
tag = FRA
tag = GER
tag = ITA
tag = SOV
}
}
enable = { has_navy_size = { size < 50 archetype = ship_hull_light } }
abort_when_not_enabled = yes
ai_strategy = {
type = role_ratio
id = vnr_naval_screen
value = 200
}
}
@@ -2220,42 +2230,6 @@ we_need_cv_planes_1 = {
}
abort_when_not_enabled = yes
ai_strategy = {
type = unit_ratio
id = cv_fighter
value = 25
}
ai_strategy = {
type = unit_ratio
id = cv_naval_bomber
value = 20
}
ai_strategy = {
type = unit_ratio
id = cv_cas
value = 15
}
ai_strategy = {
type = equipment_production_factor
id = cv_fighter
value = 30
}
ai_strategy = {
type = equipment_production_factor
id = cv_naval_bomber
value = 50
}
ai_strategy = {
type = equipment_production_factor
id = cv_cas
value = 30
}
ai_strategy = {
type = equipment_production_min_factories
id = cv_fighter
@@ -2273,12 +2247,6 @@ we_need_cv_planes_1 = {
id = cv_cas
value = 3
}
ai_strategy = {
type = equipment_variant_production_factor
id = cv_small_plane_airframe
value = 20
}
}
we_need_cv_planes_2 = {
@@ -2291,64 +2259,22 @@ we_need_cv_planes_2 = {
}
abort_when_not_enabled = yes
ai_strategy = {
type = unit_ratio
id = cv_fighter
value = 30
}
ai_strategy = {
type = unit_ratio
id = cv_naval_bomber
value = 45
}
ai_strategy = {
type = unit_ratio
id = cv_cas
value = 30
}
ai_strategy = {
type = equipment_production_factor
id = cv_fighter
value = 35
}
ai_strategy = {
type = equipment_production_factor
id = cv_naval_bomber
value = 50
}
ai_strategy = {
type = equipment_production_factor
id = cv_cas
value = 35
}
ai_strategy = {
type = equipment_production_min_factories
id = cv_fighter
value = 4
value = 5
}
ai_strategy = {
type = equipment_production_min_factories
id = cv_naval_bomber
value = 4
value = 5
}
ai_strategy = {
type = equipment_production_min_factories
id = cv_cas
value = 4
}
ai_strategy = {
type = equipment_variant_production_factor
id = cv_small_plane_airframe
value = 40
value = 5
}
}
@@ -2361,64 +2287,22 @@ we_need_cv_planes_3 = {
}
abort_when_not_enabled = yes
ai_strategy = {
type = unit_ratio
id = cv_fighter
value = 45
}
ai_strategy = {
type = unit_ratio
id = cv_naval_bomber
value = 60
}
ai_strategy = {
type = unit_ratio
id = cv_cas
value = 45
}
ai_strategy = {
type = equipment_production_factor
id = cv_fighter
value = 60
}
ai_strategy = {
type = equipment_production_factor
id = cv_naval_bomber
value = 100
}
ai_strategy = {
type = equipment_production_factor
id = cv_cas
value = 50
}
ai_strategy = {
type = equipment_production_min_factories
id = cv_fighter
value = 5
value = 7
}
ai_strategy = {
type = equipment_production_min_factories
id = cv_naval_bomber
value = 5
value = 8
}
ai_strategy = {
type = equipment_production_min_factories
id = cv_cas
value = 5
}
ai_strategy = {
type = equipment_variant_production_factor
id = cv_small_plane_airframe
value = 50
value = 8
}
}
@@ -2434,7 +2318,7 @@ build_more_missile_cruisers = {
ai_strategy = {
type = role_ratio
id = vnr_naval_cruiser_medium
id = vnr_naval_cruiser_heavy
value = 120
}

View File

@@ -59,7 +59,7 @@ ENG_avoid_baltic = {
ai_strategy = {
type = naval_dominance
id = vnr_ger_baltic
value = 0
value = -100
}
}
@@ -220,6 +220,9 @@ JAP_destroy_china_navy_quick = {
enable = {
has_war_with = CHI
NOT = { has_war_with = USA }
CHI = {
has_navy_size = { size > 9 }
}
enable_vnr_naval_ai = yes
}
abort_when_not_enabled = yes
@@ -235,33 +238,72 @@ JAP_destroy_china_navy_quick = {
}
}
JAP_turuk_base = {
allowed = {
original_tag = JAP
}
enable = {
684 = { is_controlled_by_ROOT_or_ally = yes }
}
abort_when_not_enabled = yes
ai_strategy = {
type = strike_force_home_base
id = 84
value = 100
}
}
JAP_pacific_war_naval_stage_zero = {
allowed = {
original_tag = JAP
}
enable = {
NOT = { has_war_with = USA }
threat > 0.65
}
abort_when_not_enabled = yes
ai_strategy = {
type = naval_dominance
id = vnr_pacific_okinawa
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_iwo_jima
value = 100
}
}
JAP_pacific_war_naval_stage_one = {
allowed = {
original_tag = JAP
}
enable = {
has_war_with = USA
naval_strength_ratio = {
tag = USA
ratio < 0.5
}
has_war_with = PHI
has_war_with = MAL
has_war_with = AST
PHI = { has_capitulated = no }
MAL = { has_capitulated = no }
enable_vnr_naval_ai = yes
}
abort_when_not_enabled = yes
ai_strategy = {
type = naval_dominance
id = vnr_pacific_3
value = 80
id = vnr_pacific_philippines
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_4
id = vnr_pacific_solomons
value = 100
}
ai_strategy = {
type = invade
id = AST
value = 100
type = naval_dominance
id = vnr_pacific_iwo_jima
value = 70
}
ai_strategy = {
type = invade
@@ -273,6 +315,22 @@ JAP_pacific_war_naval_stage_one = {
id = MAL
value = 1000
}
ai_strategy = {
type = invade
id = USA
value = 500
}
ai_strategy = {
type = invade
id = AST
value = 100
}
ai_strategy = {
type = front_control
area = pacific
ordertype = invasion
execute_order = yes
}
}
JAP_pacific_war_naval_stage_two = {
@@ -281,28 +339,28 @@ JAP_pacific_war_naval_stage_two = {
}
enable = {
has_war_with = USA
OR = {
naval_strength_ratio = {
tag = USA
ratio > 0.5
}
AND = {
PHI = { has_capitulated = yes }
MAL = { has_capitulated = yes }
}
}
has_war_with = PHI
has_war_with = MAL
has_war_with = AST
PHI = { has_capitulated = yes }
MAL = { has_capitulated = yes }
enable_vnr_naval_ai = yes
}
abort_when_not_enabled = yes
ai_strategy = {
type = naval_dominance
id = vnr_pacific_2
id = vnr_pacific_midway
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_1
value = 85
id = vnr_pacific_hawaii
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_solomons
value = 75
}
ai_strategy = {
type = invade
@@ -317,7 +375,7 @@ JAP_pacific_war_naval_stage_two = {
ai_strategy = {
type = invade
id = INS
value = 500
value = 800
}
ai_strategy = {
type = front_control
@@ -328,6 +386,28 @@ JAP_pacific_war_naval_stage_two = {
}
### USA ###
USA_pacific_fleet_command = {
allowed = {
original_tag = USA
}
enable = {
629 = { is_controlled_by_ROOT_or_ally = yes }
}
abort_when_not_enabled = yes
ai_strategy = {
type = strike_force_home_base
id = 105
value = 1000
}
ai_strategy = {
type = strike_force_home_base
id = 89
value = -100
}
}
USA_pacific_war_naval_avoid_first = {
allowed = {
original_tag = USA
@@ -385,11 +465,6 @@ USA_pacific_war_naval_avoid_first = {
id = 80
value = 1000
}
ai_strategy = {
type = naval_avoid_region
id = 84
value = 50
}
ai_strategy = {
type = naval_avoid_region
id = 90
@@ -408,18 +483,28 @@ USA_pacific_war_naval_avoid_first = {
ai_strategy = {
type = naval_dominance
id = vnr_pacific_1
id = vnr_pacific_hawaii
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_3
value = 0
id = vnr_pacific_midway
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_4
value = 0
id = vnr_pacific_philippines
value = -100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_iwo_jima
value = -100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_okinawa
value = -100
}
}
@@ -487,9 +572,9 @@ USA_pacific_war_naval_counterattack_1 = {
ratio > 5
}
}
NOT = {
controls_state = 633
controls_state = 684
OR = {
633 = { is_controlled_by_ROOT_or_ally = no }
684 = { is_controlled_by_ROOT_or_ally = no }
}
enable_vnr_naval_ai = yes
}
@@ -552,24 +637,30 @@ USA_pacific_war_naval_counterattack_1 = {
ai_strategy = {
type = naval_dominance
id = vnr_pacific_2
id = vnr_pacific_solomons
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_1
value = 80
id = vnr_pacific_midway
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_3
value = 0
id = vnr_pacific_iwo_jima
value = -100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_4
value = 0
id = vnr_pacific_philippines
value = -100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_okinawa
value = -100
}
ai_strategy = {
type = invade
id = JAP
@@ -602,6 +693,10 @@ USA_pacific_war_naval_counterattack_1 = {
ordertype = invasion
execute_order = yes
}
ai_strategy = {
type = naval_invasion_dominance_weight
value = 60
}
}
USA_pacific_war_naval_counterattack_2 = {
@@ -617,11 +712,9 @@ USA_pacific_war_naval_counterattack_2 = {
ratio > 5
}
}
controls_state = 633
controls_state = 684
NOT = {
controls_state = 645
}
633 = { is_controlled_by_ROOT_or_ally = yes }
684 = { is_controlled_by_ROOT_or_ally = yes }
645 = { is_controlled_by_ROOT_or_ally = no }
enable_vnr_naval_ai = yes
}
abort_when_not_enabled = yes
@@ -663,18 +756,18 @@ USA_pacific_war_naval_counterattack_2 = {
ai_strategy = {
type = naval_dominance
id = vnr_pacific_3
id = vnr_pacific_philippines
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_2
value = 40
id = vnr_pacific_iwo_jima
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_1
value = 10
id = vnr_pacific_midway
value = 70
}
ai_strategy = {
type = invade
@@ -711,6 +804,10 @@ USA_pacific_war_naval_counterattack_2 = {
ordertype = invasion
execute_order = yes
}
ai_strategy = {
type = naval_invasion_dominance_weight
value = 60
}
}
USA_pacific_war_naval_counterattack_3 = {
@@ -726,9 +823,9 @@ USA_pacific_war_naval_counterattack_3 = {
ratio > 5
}
}
controls_state = 633
controls_state = 684
controls_state = 645
633 = { is_controlled_by_ROOT_or_ally = yes }
684 = { is_controlled_by_ROOT_or_ally = yes }
645 = { is_controlled_by_ROOT_or_ally = yes }
enable_vnr_naval_ai = yes
}
abort_when_not_enabled = yes
@@ -745,22 +842,22 @@ USA_pacific_war_naval_counterattack_3 = {
ai_strategy = {
type = naval_dominance
id = vnr_pacific_4
id = vnr_pacific_okinawa
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_3
id = vnr_pacific_iwo_jima
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_philippines
value = 75
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_2
value = 10
}
ai_strategy = {
type = naval_dominance
id = vnr_pacific_1
id = vnr_pacific_hawaii
value = 0
}
ai_strategy = {
@@ -798,6 +895,36 @@ USA_pacific_war_naval_counterattack_3 = {
ordertype = invasion
execute_order = yes
}
ai_strategy = {
type = naval_invasion_dominance_weight
value = 100
}
}
USA_atlantic_war = {
allowed = {
original_tag = USA
}
enable = {
is_ally_with = ENG
has_war_with = GER
has_navy_size = {
type = carrier
size > 19
}
}
abort_when_not_enabled = yes
ai_strategy = {
type = strike_force_home_base
id = 43
value = 100
}
ai_strategy = {
type = naval_dominance
id = vnr_eng_atlantic_route
value = 90
}
}
### ITA ###
@@ -868,10 +995,6 @@ GER_unrestricted_submarine_warfare = {
}
enable = {
has_war_with = ENG
naval_strength_ratio = {
tag = ENG
ratio < 0.7
}
enable_vnr_naval_ai = yes
}
abort_when_not_enabled = yes
@@ -911,12 +1034,12 @@ GER_avoid_mediterranean = {
ai_strategy = {
type = naval_dominance
id = vnr_eng_med_zones
value = 0
value = -100
}
ai_strategy = {
type = naval_dominance
id = vnr_ita_med_zones
value = 0
value = -100
}
}

View File

@@ -1,5 +1,6 @@
navy_rework_category = {
picture = GFX_decision_cat_navy_rework
scripted_gui = vnr_manual_handbook_gui
allowed = { has_dlc = "Man the Guns" }
priority = 12
}

View File

@@ -2,37 +2,37 @@ navy_rework_category = {
eng_naval_history = {
icon = GFX_vnr_eng_flag
allowed = { tag = ENG }
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
usa_naval_history = {
icon = GFX_vnr_usa_flag
allowed = { tag = USA }
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
jap_naval_history = {
icon = GFX_vnr_jap_flag
allowed = { tag = JAP }
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
fra_naval_history = {
icon = GFX_vnr_fra_flag
allowed = { tag = FRA }
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
ita_naval_history = {
icon = GFX_vnr_ita_flag
allowed = { tag = ITA }
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
ger_naval_history = {
icon = GFX_vnr_ger_flag
allowed = { tag = GER }
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
sov_naval_history = {
icon = GFX_vnr_sov_flag
allowed = { tag = SOV }
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
chi_naval_history = {
icon = GFX_vnr_chi_flag
@@ -42,20 +42,20 @@ navy_rework_category = {
tag = PRC
}
}
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
ast_naval_history = {
icon = GFX_vnr_ast_flag
allowed = { tag = AST }
complete_effect = { set_global_flag = naval_lore_gui_show }
complete_effect = { set_country_flag = naval_lore_gui_show }
}
show_intro_panel = {
visible = {
NOT = { has_global_flag = navy_rework_splash_show }
NOT = { has_country_flag = navy_rework_splash_show }
}
complete_effect = {
set_global_flag = navy_rework_splash_show
set_country_flag = navy_rework_splash_show
set_variable = { navy_rework_welcome_splash_variable = 1 }
}
}

View File

@@ -8,7 +8,7 @@ NDefines.NNavy.COMBAT_BASE_HIT_CHANCE = 0.08 -- base chance for hit (was 0.1)
NDefines.NNavy.COMBAT_BASE_CRITICAL_CHANCE = 0.2 -- Base chance for receiving a critical chance. It get's scaled down with ship reliability. (was 0.05)
NDefines.NNavy.CHANCE_TO_DAMAGE_PART_ON_CRITICAL_HIT = 0.9 -- the game will roll between 0-1 and will damage a random part if below this val on naval critical hits (was 0.1, critical hit will definitely destroy critical parts)
NDefines.NNavy.COMBAT_CRITICAL_DAMAGE_MULT = 8 -- Multiplier for the critical damage. Scaled down with the ship reliability. (was 5, punish low reliability designs)
NDefines.NNavy.CONVOY_ATTACK_BASE_FACTOR = 0.2 -- base % of convoys that get intercepted (was 0.15)
NDefines.NNavy.CONVOY_ATTACK_BASE_FACTOR = 0.1 -- base % of convoys that get intercepted (was 0.15)
NDefines.NNavy.CONVOY_HIT_PROFILE = 90 -- convoys has this contant hit profile (was 85)
NDefines.NNavy.COMBAT_TORPEDO_CRITICAL_CHANCE = 0.4 -- chance for critical hit from torpedo. (was 0.1, torpedo needs more love)
NDefines.NNavy.NAVY_PIERCING_THRESHOLDS = { 2.0, 1.0, 0.85, 0.75, 0.7, 0.65, 0.6, 0.55, 0.5, 0.3, 0.0 } -- Our piercing / their armor must be this value to deal damage fraction equal to the index in the array below [higher number = higher penetration]. If armor is 0, 1.00 will be returned.
@@ -37,7 +37,8 @@ NDefines.NNavy.POSITIONING_PENALTY_FOR_SHIPS_JOINED_COMBAT_AFTER_IT_STARTS = 0.0
NDefines.NNavy.MAX_POSITIONING_PENALTY_FOR_NEWLY_JOINED_SHIPS = 0.2 -- the accumulated penalty from new ships will be clamped to this value (was 0.25)
NDefines.NNavy.HIGHER_SHIP_RATIO_POSITIONING_PENALTY_FACTOR = 0.5 -- if one side has more ships than the other, that side will get this penalty for each +100% ship ratio it has (was 0.25)
NDefines.NNavy.MAX_POSITIONING_PENALTY_FROM_HIGHER_SHIP_RATIO = 3 -- maximum penalty to get from larger fleets (was 0.75, aggressively punish deathstacking)
NDefines.NNavy.MAX_CARRIER_RATIO_POSITIONING_PENALTY_FACTOR = 0.2 -- max penalty from stronger carrier air force
NDefines.NNavy.HIGHER_CARRIER_RATIO_POSITIONING_PENALTY_FACTOR = 0.05 -- penalty if other side has stronger carrier air force (was 0.2)
NDefines.NNavy.MAX_CARRIER_RATIO_POSITIONING_PENALTY_FACTOR = 0.15 -- max penalty from stronger carrier air force (was 0.2)
NDefines.NNavy.DAMAGE_PENALTY_ON_MINIMUM_POSITIONING = 0.9 -- damage penalty at 0% positioning (was 0.5)
NDefines.NNavy.SCREENING_EFFICIENCY_PENALTY_ON_MINIMUM_POSITIONING = 1.25 -- screening efficiency (screen to capital ratio) at 0% positioning (was 0.5)
NDefines.NNavy.AA_EFFICIENCY_PENALTY_ON_MINIMUM_POSITIONING = 0.75 -- AA penalty at 0% positioning (was 0.7)
@@ -61,7 +62,7 @@ NDefines.NNavy.MISSION_SPREADS = { -- mission spreads in the case a ship join c
NDefines.NNavy.NAVAL_DOMINANCE_STRIKE_FORCE_MULTIREGION_DECAY = 0.1 -- Percentage that the strike force mission's naval dominance multiplier decreases with for each additional assigned region (was 0.05)
NDefines.NNavy.NAVAL_DOMINANCE_MINES_PLANTING_BONUS = 0.1 -- Naval planting bonus when having naval dominance in the region (was 0.2)
NDefines.NNavy.NAVAL_DOMINANCE_MINES_SWEEPING_BONUS = 0.1 -- Naval sweeping bonus when having naval dominance in the region (was 0.2)
NDefines.NNavy.NAVAL_DOMINANCE_SHIP_RECOVERY_CHANCE = 0.05 -- Sunk ship recovery chance (does this require repair ship or not?) (was 0.1)
NDefines.NNavy.NAVAL_DOMINANCE_SHIP_RECOVERY_CHANCE = 0.0 -- Sunk ship recovery chance (does this require repair ship or not?) (was 0.1)
NDefines.NNavy.MISSION_DOMINANCE_RATIOS = {
0.0, -- HOLD
1.0, -- PATROL
@@ -104,6 +105,7 @@ NDefines.NNavy.ANTI_AIR_MULT_ON_INCOMING_AIR_DAMAGE = 0.15 -- received air dam
NDefines.NNavy.ANTI_AIR_TARGETTING_TO_CHANCE = 0.25 -- Balancing value to determine the chance of ground AA hitting an attacking airplane, affecting both the effective average damage done by AA to airplanes, and the reduction of damage done by airplanes due to AA support (was 0.07)
NDefines.NNavy.BASE_CARRIER_SORTIE_EFFICIENCY = 0.4 -- factor of planes that can sortie by default from a carrier (was 0.5)
NDefines.NNavy.CARRIER_OFFENSIVE_STANCE_SORTIE_RATIO = {0.25, 0.37, 0.50, 0.62, 0.75} -- The defensive stance sortie is 1.0 - value in index so their sum equals 1
NDefines.NNavy.CARRIER_OFFENSIVE_STANCE_DEFAULT_INDEX = 4 -- The default offensive sortie index in CARRIER_OFFENSIVE_STANCE_SORTIE_RATIO (was 2)
NDefines.NNavy.NAVAL_COMBAT_PLANE_MIN_STACKING_PENALTY = 180 -- How many planes flying in a naval combat before penalties are introduced (was 80)
NDefines.NNavy.NAVAL_COMBAT_PLANE_STACKING_PENALTY_EFFECT = 0.01 -- Each plane above the optimal amount decreases the amount of airplanes being able to takeoff by such %. Subject to diminishing returns (was 0.005)
NDefines.NNavy.SHIP_SILHOUETTE_VALUE_PLANES_CARRIER = 500 --For dynamic plane efficacy, silhouette value (nominally in planes, but very abstract) (was 16)
@@ -145,6 +147,18 @@ NDefines.NNavy.UNIT_EXPERIENCE_PER_COMBAT_HOUR = 5 -- Unit xp gain per combat
NDefines.NNavy.UNIT_EXPERIENCE_SCALE = 0.8 -- total unit xp factor (was 1)
--Aggression
NDefines.NNavy.AGGRESSION_ARMOR_EFFICIENCY_MULTIPLIER = 1.0 -- armor to enemy piercing ratio is multiplied by this value, which will increase the strength of ships while considering them for aggression
NDefines.NNavy.AGGRESSION_MIN_ARMOR_EFFICIENCY = 1.0 -- armor multiplier has a min and max caps while being factored in aggression (was 0.5)
NDefines.NNavy.AGGRESSION_MAX_ARMOR_EFFICIENCY = 1.5 -- armor multiplier has a min and max caps while being factored in aggression
NDefines.NNavy.AGGRESSION_LIGHT_GUN_EFFICIENCY_ON_LIGHT_SHIPS = 1.0 -- ratio for scoring for different gun types against light ships
NDefines.NNavy.AGGRESSION_HEAVY_GUN_EFFICIENCY_ON_LIGHT_SHIPS = 0.75 -- ratio for scoring for different gun types against light ships (was 0.25)
NDefines.NNavy.AGGRESSION_TORPEDO_EFFICIENCY_ON_LIGHT_SHIPS = 0.5 -- ratio for scoring for different gun types against light ships (was 0.1)
NDefines.NNavy.AGGRESSION_LIGHT_GUN_EFFICIENCY_ON_HEAVY_SHIPS = 0.1 -- ratio for scoring for different gun types against heavy ships
NDefines.NNavy.AGGRESSION_HEAVY_GUN_EFFICIENCY_ON_HEAVY_SHIPS = 1.0 -- ratio for scoring for different gun types against heavy ships
NDefines.NNavy.AGGRESSION_TORPEDO_EFFICIENCY_ON_HEAVY_SHIPS = 1.1 -- ratio for scoring for different gun types against heavy ships
--Naval Misc
NDefines.NNavy.CONVOY_EFFICIENCY_MIN_VALUE = 0 -- To avoid complete 0% efficiency, set the lower limit. (was 0.05)
NDefines.NNavy.PRIDE_OF_THE_FLEET_UNASSIGN_COST = 25 -- cost to unassign/replace pride of the fleet (was 100)
@@ -161,6 +175,7 @@ NDefines.NNavy.AGGRESSION_SETTINGS_VALUES = {
10000, -- I am death incarnate!
}
NDefines.NNavy.MIN_TRACTED_ASSIST_DAMAGE_RATIO = 0.5 -- How much damage counts as assist damage (was 0.05)
NDefines.NNavy.NAVAL_HOMEBASE_CALCULATION_DISTANCE_CUTOFF = 3000 -- Tuning parameter for homebase calculation. Distance to normalize against. Everything above said value will be treated as score = 0. (was 1000)
@@ -203,6 +218,7 @@ NDefines.NAI.VARIANT_CREATION_XP_RESERVE_AIR = 30 -- If the AI lacks air XP to
--AI Mission
NDefines.NAI.NAVAL_MISSION_DISTANCE_BASE = 4200 -- Base value when AI is evaluating distance score to places (was 3500)
NDefines.NAI.NAVAL_MISSION_ESCORT_NEAR_OWNED = 0 -- Extra escort mission score near owned provinces (was 300)
NDefines.NAI.NAVAL_MISSION_ESCORT_NEAR_CONTROLLED = 0 -- Extra escort mission score near controlled provinces (was 200)
NDefines.NAI.AI_MIN_DOMINANCE_MARGIN = 100 -- When trying to get control of a region, AI will try to exceed the required dominance by at least this amount (was 200)
@@ -243,9 +259,10 @@ NDefines.NAI.MAX_MISSION_PER_TASKFORCE = {
6, -- NAVAL INVASION SUPPORT
}
NDefines.NAI.CONVOY_ESCORT_SCORE_FROM_CONVOYS = 25 -- score for each convoy you have in area (was 15)
NDefines.NAI.MAX_ALLOWED_NAVAL_DANGER = 500 -- AI will ignore naval paths that has danger value of above this threshold while assigning units (was 80)
NDefines.NAI.MAX_ALLOWED_NAVAL_DANGER = 200 -- AI will ignore naval paths that has danger value of above this threshold while assigning units (was 80)
NDefines.NAI.REGION_THREAT_PER_SUNK_CONVOY = 5 -- Threat value per convoy sunk in a region. Decays over time. (was 25)
NDefines.NAI.REGION_CONVOY_DANGER_DAILY_DECAY = 1.5 -- When convoys are sunk it generates threat in the region which the AI uses to prio naval missions (was 1)
NDefines.NAI.DANGEROUS_ENEMY_ARMY_SIZE = 10000 -- If the size of the enemy's army of the attacking country is more than this value, the AI will add naval invasion defense importance (was 100)
--AI Misc

View File

@@ -75,6 +75,7 @@ new_fleet_in_being = {
#Carriers
carrier = {
carrier_surface_detection = 0.1
carrier_sub_detection = 0.05
}
fighter_sortie_efficiency = 0.1
effect = {
@@ -146,9 +147,9 @@ new_convoy_raiding = {
submarine = {
max_organisation = 10
surface_detection = 0.10
surface_detection = 0.05
}
convoy_raiding_efficiency_factor = 0.05
convoy_raiding_efficiency_factor = 0.1
milestones = {
{
@@ -193,7 +194,7 @@ new_convoy_raiding = {
{
#Carriers
carrier = {
carrier_surface_detection = 0.05
carrier_surface_detection = 0.1
carrier_sub_detection = 0.1
}
effect = {
@@ -307,6 +308,10 @@ new_base_strike = {
#Carriers
carrier_capacity_penalty_reduction = -0.1
sortie_efficiency = 0.1
carrier = {
carrier_surface_detection = 0.05
carrier_sub_detection = 0.05
}
effect = {
if = {
limit = {
@@ -324,15 +329,7 @@ new_base_strike = {
{
#Capital Ships
navy_anti_air_attack_factor = 0.1
battleship = {
surface_detection = 0.05
}
battle_cruiser = {
surface_detection = 0.05
}
SH_battleship = {
surface_detection = 0.05
}
positioning = 0.1
effect = {
if = {
limit = {

View File

@@ -8,7 +8,10 @@ fast_battleship_primacy = {
xp_type = navy
available = {
always = yes
has_navy_size = {
archetype = ship_hull_heavy
size > 3
}
}
ai_will_do = {
@@ -112,7 +115,14 @@ battlecruiser_supremacy = {
xp_type = navy
available = {
always = yes
has_navy_size = {
unit = battle_cruiser
size > 1
}
has_navy_size = {
unit = battleship
size > 1
}
}
ai_will_do = {
@@ -225,7 +235,10 @@ armored_raiders = {
xp_type = navy
available = {
always = yes
has_navy_size = {
archetype = ship_hull_heavy
size > 0
}
}
ai_will_do = {
@@ -394,9 +407,6 @@ naval_gunfire_support = {
xp_cost = 75
xp_type = navy
available = {
always = yes
}
visible = {
has_dlc = "No Compromise, No Surrender"
}
@@ -417,8 +427,11 @@ naval_gunfire_support = {
}
inshore_aa_screen = {
modifier = {
navy_anti_air_attack_factor = 0.1
heavy_cruiser = {
anti_air_attack = 0.1
}
medium_cruiser = {
anti_air_attack = 0.1
}
}
@@ -473,7 +486,11 @@ battleship_antiair_screen = {
xp_type = navy
available = {
always = yes
has_navy_size = {
archetype = ship_hull_heavy
size > 3
}
has_tech = aviation_dawn
}
ai_will_do = {

View File

@@ -19,11 +19,7 @@ carrier_battlegroups = {
has_tech = aviation_dawn
has_navy_size = {
unit = carrier
size > 4
}
NOT = {
has_doctrine = coastal_defence_fleet
has_doctrine = naval_gunfire_support
size > 3
}
}
@@ -52,7 +48,6 @@ carrier_battlegroups = {
carrier_sub_detection = 0.05
}
modifier = {
navy_carrier_air_agility_factor = 0.1
naval_strike_agility_factor = 0.1
}
}
@@ -64,19 +59,18 @@ carrier_battlegroups = {
sortie_efficiency = 0.1
}
}
fleet_antiair = {
early_warning_system = {
carrier = {
max_organisation = 15
anti_air_attack = 0.15
}
modifier = {
sortie_efficiency = 0.1
fighter_sortie_efficiency = 0.1
}
}
alpha_strike = {
modifier = {
sortie_efficiency = 0.1
sortie_efficiency = 0.2
naval_strike_targetting_factor = 0.15
carrier_capacity_penalty_reduction = -0.1
}
@@ -97,11 +91,7 @@ floating_airfields = {
has_tech = aviation_dawn
has_navy_size = {
unit = carrier
size > 4
}
NOT = {
has_doctrine = coastal_defence_fleet
has_doctrine = naval_gunfire_support
size > 3
}
}
@@ -129,7 +119,7 @@ floating_airfields = {
carrier_surface_detection = 0.05
carrier_sub_detection = 0.05
}
navy_anti_air_attack_factor = 0.10
navy_carrier_air_attack_factor = 0.10
rewards = {
enclosed_hangar = {
@@ -149,10 +139,8 @@ floating_airfields = {
}
dogfight_training = {
navy_carrier_air_agility_factor = 0.1
navy_carrier_air_attack_factor = 0.05
sortie_efficiency = 0.05
carrier = {
anti_air_attack = 0.05
}
}
all_weather_combat = {
sortie_efficiency = 0.1
@@ -246,10 +234,6 @@ carrier_concentration = {
unit = carrier
size > 5
}
NOT = {
has_doctrine = coastal_defence_fleet
has_doctrine = naval_gunfire_support
}
}
sortie_efficiency = 0.1
@@ -321,7 +305,9 @@ naval_airfoce = {
}
naval_retreat_speed_after_initial_combat = 0.1
naval_strike_attack_factor = 0.05
category_nav_bomber = {
naval_strike_attack = 0.1
}
rewards = {
direct_fire_avoidance = {
@@ -332,14 +318,16 @@ naval_airfoce = {
land_based_support = {
category_nav_bomber = {
air_range = 0.25
naval_strike_attack = 0.05
}
}
air_raiders = {
category_nav_bomber = {
air_defence = 0.1
naval_strike_targetting = 0.1
}
modifier = {
naval_strike_targetting_factor = 0.1
air_weather_penalty = -0.1
}
}
evasive_engagements_focus = {
@@ -349,8 +337,11 @@ naval_airfoce = {
naval_enemy_fleet_size_ratio_penalty_factor = 0.1
}
airpower = {
naval_strike_attack_factor = 0.1
naval_strike_agility_factor = 0.1
category_nav_bomber = {
naval_strike_attack = 0.1
naval_strike_targetting = 0.1
air_agility = 0.1
}
}
}
mastery = {

View File

@@ -8,7 +8,10 @@ convoy_escort = {
xp_type = navy
available = {
always = yes
has_navy_size = {
type = screen_ship
size > 9
}
}
ai_will_do = {
@@ -83,7 +86,14 @@ support_integrated_operations = {
xp_type = navy
available = {
always = yes
has_navy_size = {
unit = light_cruiser
size > 3
}
has_navy_size = {
unit = destroyer
size > 9
}
}
ai_will_do = {
@@ -165,7 +175,11 @@ hunter_killers = {
xp_type = navy
available = {
has_navy_size = {
type = screen_ship
size > 9
}
has_tech = sonar
}
ai_will_do = {
@@ -243,7 +257,11 @@ torpedo_primacy = {
}
}
available = {
always = yes
has_navy_size = {
type = screen_ship
size > 9
}
has_tech = basic_torpedo
}
naval_torpedo_hit_chance_factor = 0.1
naval_torpedo_cooldown_factor = -0.125
@@ -294,8 +312,11 @@ jeune_ecole = {
xp_type = navy
available = {
#TODO: special project
always = yes
has_navy_size = {
type = screen_ship
size > 9
}
has_tech = basic_torpedo
}
ai_will_do = {
factor = 1

View File

@@ -8,7 +8,11 @@ wolfpacks = {
xp_type = navy
available = {
always = yes
has_navy_size = {
type = submarine
size > 9
}
has_tech = basic_ship_hull_submarine
}
ai_will_do = {
@@ -76,7 +80,10 @@ submarine_fleet_operations = {
xp_type = navy
available = {
always = yes
has_navy_size = {
type = submarine
size > 9
}
}
ai_will_do = {
@@ -155,7 +162,10 @@ capital_hunters = {
}
}
available = {
always = yes
has_navy_size = {
type = submarine
size > 9
}
}
naval_torpedo_reveal_chance_factor = -0.1
@@ -206,6 +216,10 @@ submarine_coastal_defense = {
}
available = {
has_navy_size = {
type = submarine
size > 0
}
has_tech = midget_submarines
}
@@ -273,6 +287,13 @@ submarine_area_denial = {
description = SUBDOCTRINE_SUBMARINE_AREA_DENIAL_DESC
icon = GFX_doctrine_submarine_area_denial_medium
available = {
has_navy_size = {
type = submarine
size > 9
}
}
xp_cost = 100
xp_type = navy
ai_will_do = {

View File

@@ -3,6 +3,7 @@ ideas = {
vnr_mad = {
cancel = {
is_ai = no
is_debug = no
}
modifier = {
convoy_raiding_efficiency_factor = 0.3
@@ -38,6 +39,7 @@ ideas = {
vnr_hard = {
cancel = {
is_ai = no
is_debug = no
}
modifier = {
convoy_raiding_efficiency_factor = 0.2
@@ -73,6 +75,7 @@ ideas = {
vnr_normal = {
cancel = {
is_ai = no
is_debug = no
}
modifier = {
convoy_raiding_efficiency_factor = 0.1
@@ -109,6 +112,7 @@ ideas = {
vnr_mad_production = {
cancel = {
is_ai = no
is_debug = no
}
picture = generic_navy_bonus
modifier = {
@@ -125,6 +129,7 @@ ideas = {
vnr_hard_production = {
cancel = {
is_ai = no
is_debug = no
}
picture = generic_navy_bonus
modifier = {
@@ -141,6 +146,7 @@ ideas = {
vnr_normal_production = {
cancel = {
is_ai = no
is_debug = no
}
picture = generic_navy_bonus
modifier = {
@@ -184,6 +190,7 @@ ideas = {
vnr_cv_plane_output_boost = {
cancel = {
is_ai = no
is_debug = no
}
equipment_bonus = {
cv_small_plane_airframe = {
@@ -200,24 +207,26 @@ ideas = {
vnr_ai_dd_output_boost_1 = {
cancel = {
is_ai = no
is_debug = no
}
# for historical mode
equipment_bonus = {
ship_hull_light = {
instant = yes
build_cost_ic = -0.25
build_cost_ic = -0.35
}
}
}
vnr_ai_dd_output_boost_2 = {
cancel = {
is_ai = no
is_debug = no
}
# for expert mode
equipment_bonus = {
ship_hull_light = {
instant = yes
build_cost_ic = -0.5
build_cost_ic = -0.65
}
}
}

View File

@@ -1,48 +0,0 @@
ideas = {
hidden_ideas = {
vnr_cruiser_cost_1 = {
equipment_bonus = {
ship_hull_cruiser = {
instant = yes
build_cost_ic = -0.05
}
}
}
vnr_cruiser_cost_2 = {
equipment_bonus = {
ship_hull_cruiser = {
instant = yes
build_cost_ic = -0.1
}
}
}
vnr_destroyer_cost_1 = {
equipment_bonus = {
ship_hull_light = {
instant = yes
build_cost_ic = -0.1
}
}
}
vnr_carrier_cost_1 = {
equipment_bonus = {
ship_hull_carrier = {
instant = yes
build_cost_ic = -0.1
}
}
}
vnr_submarine_cost_1 = {
equipment_bonus = {
ship_hull_submarine = {
instant = yes
build_cost_ic = -0.15
}
}
}
}
}

View File

@@ -3,12 +3,15 @@ on_actions = {
effect = {
# VNR enable flag, so that other mods will load oob designed for VNR
set_global_flag = vnr_enabled
# show welcome splash
set_global_flag = navy_rework_splash_show
# VNR language
# set_global_flag = navy_rework_english
set_global_flag = navy_rework_chinese
# show the first panel of intro splash
every_country = {
limit = { is_ai = no }
# show welcome splash
set_country_flag = navy_rework_splash_show
set_variable = { navy_rework_welcome_splash_variable = 1 }
}

View File

@@ -4411,6 +4411,7 @@ AST_start_naval_variants = {
fixed_ship_engine_slot = cruiser_ship_engine_2
fixed_ship_armor_slot = ship_armor_cruiser_1
fixed_ship_secondaries_slot = ship_secondaries_1_light
fixed_ship_role_slot = ship_hull_cruiser_role_ca
front_1_custom_slot = ship_medium_battery_2_double
mid_2_custom_slot = ship_anti_air_1
mid_3_custom_slot = ship_torpedo_2
@@ -5317,7 +5318,7 @@ HOL_start_naval_variants = {
obsolete = yes
}
create_equipment_variant = {
name = "特普级" # Tromp Class
name = "特普级" # Tromp Class
parent_version = 0
show_position = no
role_icon_index = 33

View File

@@ -65,6 +65,7 @@ add_starting_techs = {
sonar = 1
basic_super_heavy_battery = 1
bb_conversion_carrier = 1
popup = no
}
}
@@ -103,6 +104,7 @@ add_starting_techs = {
basic_super_heavy_battery = 1
usa_8in_mk9 = 1
bb_conversion_carrier = 1
popup = no
}
}
@@ -142,6 +144,7 @@ add_starting_techs = {
basic_super_heavy_battery = 1
eng_14in_mk7 = 1
bb_conversion_carrier = 1
popup = no
}
}
@@ -229,6 +232,7 @@ add_starting_techs = {
cruiser_submarines = 1
midget_submarines = 1
fra_13in_1931 = 1
bb_conversion_carrier = 1
popup = no
}
@@ -258,6 +262,7 @@ add_starting_techs = {
cruiser_submarines = 1
improved_ship_torpedo_launcher = 1
ita_extra_armor = 1
bb_conversion_carrier = 1
popup = no
}

View File

@@ -36,7 +36,12 @@ special_project_workaround = {
ai_doctrine_workaround = {
ENG = {
if = {
limit = { is_ai = yes }
limit = {
OR = {
is_ai = yes
is_debug = yes
}
}
set_sub_doctrine = fast_battleship_primacy
set_sub_doctrine = floating_airfields
set_sub_doctrine = hunter_killers
@@ -45,7 +50,12 @@ ai_doctrine_workaround = {
}
USA = {
if = {
limit = { is_ai = yes }
limit = {
OR = {
is_ai = yes
is_debug = yes
}
}
set_sub_doctrine = battleship_antiair_screen
set_sub_doctrine = carrier_battlegroups
set_sub_doctrine = support_integrated_operations
@@ -54,7 +64,12 @@ ai_doctrine_workaround = {
}
JAP = {
if = {
limit = { is_ai = yes }
limit = {
OR = {
is_ai = yes
is_debug = yes
}
}
set_sub_doctrine = fast_battleship_primacy
set_sub_doctrine = carrier_concentration
set_sub_doctrine = torpedo_primacy
@@ -63,7 +78,12 @@ ai_doctrine_workaround = {
}
GER = {
if = {
limit = { is_ai = yes }
limit = {
OR = {
is_ai = yes
is_debug = yes
}
}
set_sub_doctrine = armored_raiders
set_sub_doctrine = jeune_ecole
set_sub_doctrine = wolfpacks
@@ -71,7 +91,12 @@ ai_doctrine_workaround = {
}
FRA = {
if = {
limit = { is_ai = yes }
limit = {
OR = {
is_ai = yes
is_debug = yes
}
}
set_sub_doctrine = battlecruiser_primacy
set_sub_doctrine = subsidiary_carrier_support
set_sub_doctrine = jeune_ecole
@@ -80,7 +105,12 @@ ai_doctrine_workaround = {
}
ITA = {
if = {
limit = { is_ai = yes }
limit = {
OR = {
is_ai = yes
is_debug = yes
}
}
set_sub_doctrine = fast_battleship_primacy
set_sub_doctrine = convoy_escort
set_sub_doctrine = capital_hunters
@@ -88,7 +118,12 @@ ai_doctrine_workaround = {
}
SOV = {
if = {
limit = { is_ai = yes }
limit = {
OR = {
is_ai = yes
is_debug = yes
}
}
set_sub_doctrine = armored_raiders
set_sub_doctrine = jeune_ecole
set_sub_doctrine = submarine_coastal_defense

View File

@@ -5,11 +5,11 @@ scripted_gui = {
ai_enabled = { always = no }
visible = { has_global_flag = naval_lore_gui_show }
visible = { has_country_flag = naval_lore_gui_show }
effects = {
naval_lore_gui_option_button_click = {
clr_global_flag = naval_lore_gui_show
clr_country_flag = naval_lore_gui_show
}
}
}
@@ -21,7 +21,7 @@ scripted_gui = {
ai_enabled = { always = no }
visible = { has_global_flag = naval_lore_gui_show }
visible = { has_country_flag = naval_lore_gui_show }
properties = {
naval_lore_intro_icon = {

View File

@@ -7,7 +7,7 @@ scripted_gui = {
ai_enabled = { always = no }
visible = {
has_global_flag = navy_rework_splash_show
has_country_flag = navy_rework_splash_show
}
properties = {
@@ -31,7 +31,7 @@ scripted_gui = {
tab_4_click = { set_variable = { navy_rework_welcome_splash_variable = 4 } }
navy_rework_options_button_click = {
clr_global_flag = navy_rework_splash_show
clr_country_flag = navy_rework_splash_show
clear_variable = navy_rework_welcome_splash_variable
if = {
limit = { NOT = { has_global_flag = vnr_oob_loaded } }
@@ -89,5 +89,19 @@ scripted_gui = {
check_variable = { navy_rework_welcome_splash_variable = 4 }
}
}
vnr_manual_handbook_gui = {
context_type = decision_category
window_name = vnr_manual_handbook_gui_window
triggers = {
navy_rework_manual_button_english_visible = {
has_global_flag = navy_rework_english
}
navy_rework_manual_button_chinese_visible = {
has_global_flag = navy_rework_chinese
}
}
}
}

View File

@@ -55,7 +55,10 @@ is_ai_naval_major = {
tag = SOV
tag = USA
}
is_ai = yes
OR = {
is_ai = yes
is_debug = yes
}
}
allow_to_use_expert_navy = {
@@ -73,6 +76,9 @@ allow_to_use_expert_navy = {
has_game_rule = { rule = usa_start_expert_navy option = FREE }
}
}
is_ai = yes
OR = {
is_ai = yes
is_debug = yes
}
has_game_rule = { rule = ai_ship_design_style option = EXPERT }
}

View File

@@ -274,6 +274,49 @@ sp_naval_proximity_fuze = {
ship_vt_shell
}
}
unique_prototype_rewards = {
sp_naval_proximity_fuze_unique_reward_a = {
fire_only_once = yes
threshold = {
min = 50
max = 90
}
weight = { base = 100 }
option = {
token = sp_naval_proximity_fuze_preference_a
iteration_output = {
sub_unit_bonus = {
light_cruiser = {
anti_air_attack = 0.05
}
destroyer = {
anti_air_attack = 0.05
}
}
}
}
option = {
token = sp_naval_proximity_fuze_preference_b
iteration_output = {
sub_unit_bonus = {
light_cruiser = {
anti_air_attack = 0.1
}
destroyer = {
anti_air_attack = 0.1
}
}
equipment_bonus = {
screen_ship = {
build_cost_ic = 0.1
instant = yes
}
}
}
}
}
}
generic_prototype_rewards = {
sp_naval_generic_reward_scientist_xp_1
@@ -312,14 +355,14 @@ sp_super_heavy_guns = {
}
}
breakthrough_cost = {
specialization_naval = 1
specialization_naval = 2
}
resource_cost = {
resources = { steel=6 tungsten=3 }
}
prototype_time = sp_time.prototype.medium
complexity = sp_complexity.medium
complexity = sp_complexity.large
project_output = {
country_effects = {
@@ -410,7 +453,7 @@ sp_naval_underway_replenishment = {
}
breakthrough_cost = {
specialization_naval = 2
specialization_naval = 1
}
complexity = sp_complexity.medium
@@ -594,7 +637,7 @@ sp_naval_nuclear_missile_submarine = {
}
}
complexity = sp_complexity.large
prototype_time = sp_time.prototype.long
prototype_time = sp_time.prototype.short
allowed = {
has_dlc = "Gotterdammerung"
}
@@ -939,6 +982,59 @@ sp_submarine_snorkel = {
}
}
generic_prototype_rewards = {
sp_naval_generic_reward_scientist_xp_1
sp_naval_generic_reward_scientist_xp_2
sp_naval_generic_reward_scientist_xp_3
sp_naval_generic_reward_navy_xp_1
sp_naval_generic_reward_navy_xp_2
sp_naval_generic_reward_navy_xp_3
sp_naval_generic_reward_major_progress_1
sp_naval_generic_reward_major_progress_2
sp_naval_generic_reward_major_progress_3
sp_naval_generic_reward_test_failure_1
sp_naval_generic_reward_test_failure_2
sp_naval_generic_reward_test_failure_3
}
}
sp_shipping_container = {
specialization = specialization_naval
project_tags = { sp_tag_surface_ship }
allowed = {
has_dlc = "Man the Guns"
}
available = {
FROM = {
has_tech = mtg_tank_landing_craft
}
}
resource_cost = {
resources = {
steel = 4
chromium = 2
}
}
breakthrough_cost = {
specialization_naval = 1
}
prototype_time = sp_time.prototype.medium
complexity = sp_complexity.small
project_output = {
enable_equipment_modules = {
shipping_container
}
equipment_bonus = {
convoy_1 = {
instant = yes
build_cost_ic = -0.3
}
}
}
generic_prototype_rewards = {
sp_naval_generic_reward_scientist_xp_1
sp_naval_generic_reward_scientist_xp_2

View File

@@ -930,7 +930,17 @@ technologies = {
}
on_research_complete = {
hidden_effect = { add_ideas = vnr_destroyer_cost_1 }
hidden_effect = {
add_equipment_bonus = {
name = vnr_destroyer_cost_1
bonus = {
ship_hull_light = {
instant = yes
build_cost_ic = -0.1
}
}
}
}
}
ai_will_do = {
@@ -1532,10 +1542,20 @@ technologies = {
position = { x = 4 y = @1948_module }
}
on_research_complete = {
hidden_effect = { add_ideas = vnr_cruiser_cost_2 }
hidden_effect = {
add_equipment_bonus = {
name = vnr_cruiser_cost_2
bonus = {
ship_hull_cruiser = {
instant = yes
build_cost_ic = -0.1
}
}
}
}
}
ai_will_do = {
factor = 0
factor = 0.5
}
special_project_specialization = { specialization_naval }
@@ -2085,7 +2105,17 @@ technologies = {
}
on_research_complete = {
hidden_effect = { add_ideas = vnr_cruiser_cost_1 }
hidden_effect = {
add_equipment_bonus = {
name = vnr_cruiser_cost_1
bonus = {
ship_hull_cruiser = {
instant = yes
build_cost_ic = -0.05
}
}
}
}
}
ai_will_do = {
@@ -4157,8 +4187,6 @@ technologies = {
ship_deck_space_more
carrier_spared_squad
carrier_wooden_deck
carrier_bb_conversion
carrier_bc_conversion
ship_hull_civilian_role_av
ship_hull_carrier_role_cv
ship_hull_carrier_role_cvl
@@ -4199,7 +4227,6 @@ technologies = {
}
enable_equipments = {
vnr_ship_hull_carrier_conversion_bb
vnr_ship_hull_carrier_conversion_ca
}
@@ -4293,7 +4320,7 @@ technologies = {
arresting_gear = 1
}
research_cost = 1.5
research_cost = 2
start_year = 1932
@@ -4778,7 +4805,18 @@ technologies = {
}
on_research_complete = {
hidden_effect = { add_ideas = vnr_carrier_cost_1 }
custom_effect_tooltip = cv_tech_6_tt
hidden_effect = {
add_equipment_bonus = {
name = vnr_carrier_cost_1
bonus = {
ship_hull_carrier = {
instant = yes
build_cost_ic = -0.1
}
}
}
}
}
ai_will_do = {
@@ -5669,7 +5707,17 @@ technologies = {
}
on_research_complete = {
hidden_effect = { add_ideas = vnr_submarine_cost_1 }
hidden_effect = {
add_equipment_bonus = {
name = vnr_submarine_cost_1
bonus = {
ship_hull_submarine = {
instant = yes
build_cost_ic = -0.15
}
}
}
}
}
ai_will_do = {
@@ -6137,10 +6185,15 @@ technologies = {
}
}
converted_super_heavy_carrier = {
enable_equipments = {
vnr_ship_hull_carrier_conversion_bb
}
enable_equipment_modules = {
carrier_shbb_conversion
ship_deck_space_converted
ship_armor_carrier_shbb
carrier_bb_conversion
carrier_bc_conversion
}
research_cost = 1
@@ -6210,10 +6263,6 @@ technologies = {
}
research_cost = 0.4
start_year = 1940
ai_will_do = {
factor = 1
}
}
super_carriers = {
on_research_complete = {
@@ -6276,6 +6325,21 @@ technologies = {
}
}
bb_conversion_carrier = {
allow = {
always = no
}
enable_equipments = {
vnr_ship_hull_carrier_conversion_bb
}
enable_equipment_modules = {
carrier_bb_conversion
carrier_bc_conversion
}
research_cost = 1
start_year = 1918
}
obsolete_vanilla_hulls = {
enable_equipments = {
ship_hull_light_1

View File

@@ -1596,7 +1596,9 @@ technologies = {
}
electric_torpedo = {
allow = {
NOT = { has_tech = oxygen_torpedo }
}
xp_research_type = navy
xp_boost_cost = 20
xp_research_bonus = 1.50
@@ -1641,7 +1643,9 @@ technologies = {
}
oxygen_torpedo = {
allow = {
NOT = { has_tech = electric_torpedo }
}
xp_research_type = navy
xp_boost_cost = 20
xp_research_bonus = 1.50

View File

@@ -208,6 +208,6 @@ critical_parts = {
}
chance = 0.05
org_damage_multiplier = 50
str_damage = 150
str_damage = 200
}
}

View File

@@ -978,6 +978,16 @@ equipment_modules = {
reliability = 0.05
}
}
shipping_container = {
category = ship_auxiliary
add_stats = {
naval_range = 1000
build_cost_ic = 10
}
multiply_stats = {
reliability = 0.05
}
}
supply_hub = {
category = ship_auxiliary
multiply_stats = {

View File

@@ -31,7 +31,7 @@ HOL_CL_HISTORICAL = {
fallback_name = "Kruiser %d"
unique = {
"爪哇" "苏门答腊" "德·鲁伊特" "特普" "雅各布·范黑姆斯克尔克" "七省" "团结" "海尔德兰" "泽兰" "弗里斯兰" "海尔德兰" "北布拉班特"
"爪哇" "苏门答腊" "德·鲁伊特" "特普" "雅各布·范黑姆斯克尔克" "七省" "团结" "海尔德兰" "泽兰" "弗里斯兰" "海尔德兰" "北布拉班特"
"乌德勒支" "德伦特" "布拉班特" "林堡"
}
}

View File

@@ -1,4 +1,4 @@
version="v2.7 - Mariana Storm"
version="v2.8 - Leyte Gulf"
tags={
"Military"
"Translation"

View File

@@ -214,7 +214,7 @@ If you are patient enough, *Air-Sea Operation* will give you ample rewards bette
**Carrier Taskforce**
This is the authentic USN carrier tactics, with every features designed to showcase its success in history, such as leading sortie rate, deck management, and aerial attack capabilities. Just like *air-sea operation* strategy itself, *carrier taskforce* also has a humble start, but becomes horrible at the end. It provides the best sortie efficiency, reconnaissance, and carrier overfilling in all doctrines.
This is the authentic USN carrier tactics, with every feature designed to showcase its success in history, such as leading sortie rate, deck management, and aerial attack capabilities. Just like *air-sea operation* strategy itself, *carrier taskforce* also has a humble start, but becomes horrible at the end. It provides the best sortie efficiency, reconnaissance, and carrier overfilling in all doctrines.
**Carrier Concentration**
@@ -278,7 +278,7 @@ This is an authentic USN strategy adopted during WWII, which makes screen ships
**The New School**
*The New School*, or *Jeune Ecole* in French, was a doctrine developed with the advent of torpedo in reality. In the mod, it also emphasizes the importance of torpedo attacks but inferior to Japanese pratice. Instead, it is the only doctrine enabling screen ship convoy raiding with dedicated bonuses, mixed with other rewards on coastal defense and mine warfare.
*The New School*, or *Jeune Ecole* in French, was a doctrine developed with the advent of torpedo in reality. In the mod, it also emphasizes the importance of torpedo attacks but inferior to Japanese practice. Instead, it is the only doctrine enabling screen ship convoy raiding with dedicated bonuses, mixed with other rewards on coastal defense and mine warfare.
### Sub Doctrine - Submarine ###

View File

@@ -19,22 +19,38 @@ The files in this folder will be loaded once you boot up HOI4 (in the loading sc
**Structure**
- achievements
Customized achievements
- ai_areas
Pre-defined areas, usually contain a collection of several strategic areas. These areas are only visible to AI, and can be used to merge similar AI strategies on different regions into one.
- ai_equipment
AI's ship design templates are stored here. Each file within indicates a type of ship, with specific templates of each level that gradually evolve. AI will replace the template with newer ones if it has enough navy XP, weighted by factors in the file to simulate its desire. The variable "role" is the keyword telling AI what to produce in its strategy.
- ai_navy
Introduced with NCNS DLC, ai_navy is a new goal-based AI system to direct its behaviors in assigning naval missions and creating fleets. The folder is split into 3 parts, with fleet composition, taskforce template, and priority of different naval missions, on a country base.
- ai_strategy
AI strategies are stored here. Production AI uses roles defined in ai_equipment, it directly tells AI what to produce, and assigning a value to it determines how willing AI is to produce such templates. Theoretically, any value over 0 will make AI execute the strategy, unless the number of AI's dockyards is too low to make that happen. Naval Management AI will decide where and how to concentrate its fleet in different scenarios of war.
- decisions
A place where decisions are stored. Everything about decision categories of naval rework, naval development, and naval treaty are put here.
A place where decisions are stored. Everything about decision categories of naval rework, naval development, and naval treaty is put here.
- defines
Here you modify some static constants in the game mechanism. Since formulas are hard-coded in bottom-level and can not be modded, editing these values is the only way to scale their effects.
- doctrines
Doctrine tree definitions, introduced by NCNS DLC.
- dynamic_modifiers
The dynamic modifiers are customized spirits with constantly changing effects, and it can be applied to not only countries but also states.
@@ -49,11 +65,11 @@ The files in this folder will be loaded once you boot up HOI4 (in the loading sc
- modifiers
Static modifiers applied by weather, time, and unit experience.
Static modifiers applied by weather, time, unit experience, etc.
- on_actions
It declares some starting, global and triggering variables, including intro panel display and definition of major naval powers.
It declares some starting, global, or triggering variables that are used by the mod.
- scripted_effects
@@ -61,11 +77,11 @@ The files in this folder will be loaded once you boot up HOI4 (in the loading sc
- scripted_gui
Just the starting intro panel.
Definitions of non-default UIs. It now includes intro panel, lore panel, and other stuff.
- scripted_localisation
Defines alternative text for behemoth events. (used by different countries)
It defines alternative text of events (or country-specific GFX used by scripted GUI), changing based on the country triggering the event.
- scripted_triggers
@@ -91,7 +107,9 @@ The files in this folder will be loaded once you boot up HOI4 (in the loading sc
Defining units, equipments and modules.
Unit is the smallest element of combat in the game, such as carrier, destroyer, and battleship. Equipment is more specifically the ship hull you see in the game, with other definitions including allowed modules on each slot, and base stats such as speed, armor, and fuel consumption. To summarize their relations, equipment is the variant you can produce in the production menu, and it becomes a unit once deployed. Modules are the parts you put in every slot in ship designers. Plus, ship names are stored in names_ships, sorted by country tag.
Unit is the smallest element of combat in the game, such as carrier, destroyer, and battleship. Equipment is more specifically the ship hull you see in the game, with other definitions including allowed modules on each slot, and base stats such as speed, armor, and fuel consumption. To summarize their relations, equipment is the variant you can produce in the production menu, and it becomes a unit once deployed. Modules are the parts you put in every slot in ship designers.
Plus, ship names are stored in names_ships, sorted by country tag.
### Events ###
@@ -109,13 +127,13 @@ All the pictures, icons and 3D assets are put here.
The ship insignia and their tooltips.
-entities
- entities
3D assets definitions (they are not models).
- event_pictures
Pictures used by in-game events.
Pictures used by in-game events/decisions.
- interface
@@ -159,17 +177,21 @@ This folder is in close relation to GFX, which it defines the name of GFX files,
**Structure**
- doctrines
Icon definitions of sub-doctrines.
- equipmentdesigner
The topviews in ship designers are defined here. Each hull and module has its texture defined in these files, or it won't show up in designer.
The topviews in ship designers are defined here. Each hull and module has its texture defined in these files, or it won't show up in designer.
- .gfx files
Any files end with .gfx is the definitions of picture/icon texture. It directly points to the location where these icons are stored.
Any files end with .gfx is the definitions of picture/icon texture. It directly points to the location where these icons are stored.
- .gui files
Any files end with .gui is the UI definition, including size and position of these elements.
Any files end with .gui is the UI definition, including size and position of these elements.
### Localisation ###
@@ -184,8 +206,9 @@ Despite the most sraightforward approach, it will bring harms to compatibility a
To counter it, the post-loading mechanism is created. It is not some fancy skill, but I want it recorded, so the late comers know how to do that.
The basis of post-loading is achieved in following steps:
1. Put all vanilla ship hulls to a hidden and disallowed tech. This blocks any variants using these hulls from appearing and won't cause any crash/error, because variants using blocked tech will be unlocked after the tech is researched. But in this case, it will never be researched. Then simply replacing them with hulls of different IDs, and these hulls become totally independent from literally everything from basegame or other mods.
The post-loading is achieved by following steps:
1. Put all vanilla ship hulls to a hidden and disallowed tech. This blocks any variants using these hulls from appearing and won't cause any crash/error, because variants using blocked tech will be unlocked after the tech is researched. But in this case, it will never be researched. Then simply replacing them with hulls of different IDs, and these hulls become totally independent from literally everything in basegame or other mods.
2. Overwrite all vanilla OOBs with empty files. OOB, or Order of Battle, is the definition of starting military forces in history/units. Unlike country history files, unit files are less sensitive since they only take effect when loaded in your script. Combining step 1 and step 2 will give you a clean state on game start, no country has naval variant or fleet. Then you got to paint your stuff on a blank sheet.

View File

@@ -360,6 +360,7 @@ country_event = { #notification about 2nd London Naval Conference
OR = {
has_government = fascism
has_government = communism
tag = JAP
}
}
custom_effect_tooltip = fascism_renew_naval_treaty_tt

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 317 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1007 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 KiB

View File

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 7.0 KiB

View File

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

View File

Before

Width:  |  Height:  |  Size: 6.5 KiB

After

Width:  |  Height:  |  Size: 6.5 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -81,9 +81,9 @@ instant_effect = {
equipment = {
type = vnr_ship_hull_cruiser_3
creator = "HOL"
version_name = "特普级"
version_name = "特普级"
}
name = "HrMs 特普"
name = "HrMs 特普"
requested_factories = 1
progress = 0.05
amount = 2

View File

@@ -1511,6 +1511,297 @@ guiTypes = {
format = "UP"
}
}
containerWindowType = {
name = "naval_folder"
position = { x=0 y=47 }
size = { width = 100%% height = 100%% }
margin = { top = 13 left = 13 bottom = 24 right = 25}
drag_scroll = { left middle }
verticalScrollbar = "right_vertical_slider"
horizontalScrollbar = "bottom_horizontal_slider"
scroll_wheel_factor = 40
background = {
name = "Background"
quadTextureSprite ="GFX_tiled_window_2b_border"
}
# containerWindowType = {
# name = "size_filler"
# position = { x=0 y=0 }
# size = { width = 1700 height = 1200 }
#
# }
iconType = {
name ="naval_techtree_bg"
spriteType = "GFX_naval_techtree_bg"
position = { x=0 y=0 }
}
instantTextBoxType = {
name = "naval_year1"
position = { x = 224 y = 20 }
textureFile = ""
font = "hoi_36header"
borderSize = {x = 0 y = 4}
text = "1922"
maxWidth = 170
maxHeight = 32
format = left
Orientation = "UPPER_LEFT"
}
instantTextBoxType = {
name = "naval_year2"
position = { x = 644 y = 20 }
textureFile = ""
font = "hoi_36header"
borderSize = {x = 0 y = 4}
text = "1936"
maxWidth = 170
maxHeight = 32
format = left
Orientation = "UPPER_LEFT"
}
instantTextBoxType = {
name = "naval_year3"
position = { x = 1064 y = 20 }
textureFile = ""
font = "hoi_36header"
borderSize = {x = 0 y = 4}
text = "1940"
maxWidth = 170
maxHeight = 32
format = left
Orientation = "UPPER_LEFT"
}
instantTextBoxType = {
name = "naval_year4"
position = { x = 1484 y = 20 }
textureFile = ""
font = "hoi_36header"
borderSize = {x = 0 y = 4}
text = "1944"
maxWidth = 170
maxHeight = 32
format = left
Orientation = "UPPER_LEFT"
}
instantTextBoxType = {
name = "naval_subtitle_destroyer"
position = { x = 30 y = 55 }
textureFile = ""
font = "hoi_33"
borderSize = {x = 0 y = 4}
text = "NAVAL_TITLE_DESTROYERS"
maxWidth = 600
maxHeight = 62
format = left
Orientation = "UPPER_LEFT"
pdx_tooltip = "destroyer_desc"
}
instantTextBoxType = {
name = "naval_subtitle_cruiser"
position = { x = 30 y = 185 }
textureFile = ""
font = "hoi_33"
borderSize = {x = 0 y = 4}
text = "NAVAL_TITLE_CRUISERS"
maxWidth = 600
maxHeight = 62
format = left
Orientation = "UPPER_LEFT"
pdx_tooltip = "both_cruisers_desc"
}
instantTextBoxType = {
name = "naval_subtitle_battlecruiser"
position = { x = 30 y = 465 }
textureFile = ""
font = "hoi_33"
borderSize = {x = 0 y = 4}
text = "NAVAL_TITLE_BATTLECRUISERS"
maxWidth = 600
maxHeight = 62
format = left
Orientation = "UPPER_LEFT"
pdx_tooltip = "battle_cruiser_desc"
}
instantTextBoxType = {
name = "naval_subtitle_battleship"
position = { x = 30 y = 605 }
textureFile = ""
font = "hoi_33"
borderSize = {x = 0 y = 4}
text = "NAVAL_TITLE_BATTLESHIPS"
maxWidth = 600
maxHeight = 62
format = left
Orientation = "UPPER_LEFT"
pdx_tooltip = "battleship_desc"
}
instantTextBoxType = {
name = "naval_subtitle_carrier"
position = { x = 30 y = 893 }
textureFile = ""
font = "hoi_33"
borderSize = {x = 0 y = 4}
text = "NAVAL_TITLE_CARRIERS"
maxWidth = 600
maxHeight = 62
format = left
Orientation = "UPPER_LEFT"
pdx_tooltip = "carrier_desc"
}
instantTextBoxType = {
name = "naval_subtitle_sub"
position = { x = 30 y = 1032 }
textureFile = ""
font = "hoi_33"
borderSize = {x = 0 y = 4}
text = "NAVAL_TITLE_SUBMARINES"
maxWidth = 600
maxHeight = 62
format = left
Orientation = "UPPER_LEFT"
pdx_tooltip = "submarine_desc"
}
instantTextBoxType = {
name = "naval_subtitle_transport"
position = { x = 30 y = 1177 }
textureFile = ""
font = "hoi_33"
borderSize = {x = 0 y = 4}
text = "NAVAL_TITLE_TRANSPORTS"
maxWidth = 600
maxHeight = 62
format = left
Orientation = "UPPER_LEFT"
}
containerWindowType = {
name = "tiled_window_transparent_transparent"
position = { x= 0 y= 0 }
size = {
width=1700 height=1300
min = { width=100%% height=100%% }
}
clipping = no
background = {
name = "Background"
quadTextureSprite ="GFX_tiled_window_transparent_transparent"
}
}
gridboxtype = {
name = "early_destroyer_tree"
position = { x = 150 y = 60}
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
gridboxtype = {
name = "early_ship_hull_light_tree"
position = { x = 150 y = 60}
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
gridboxtype = {
name = "early_heavy_cruiser_tree"
position = { x = 150 y = 260 }
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
gridboxtype = {
name = "early_light_cruiser_tree"
position = { x = 150 y = 260 }
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
gridboxtype = {
name = "transport_tree"
position = { x = 150 y = 1180 }
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
#gridboxtype = {
#name = "sp_multi_product_supply_ships_tree"
#position = { x = 150 y = 1250 }
#size = { width = 100 height = 140 }
#slotsize = { width = 70 height = 70 }
#format = "LEFT"
#}
#gridboxtype = {
#name = "sp_shock_hardening_techniques_tree"
#position = { x = 180 y = 465 }
#size = { width = 100 height = 140 }
#slotsize = { width = 70 height = 70 }
#format = "LEFT"
#}
gridboxtype = {
name = "early_battleship_tree"
position = { x = 150 y = 540 }
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
gridboxtype = {
name = "early_battlecruiser_tree"
position = { x = 150 y = 540 }
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
gridboxType = {
name = "heavy_battleship2_tree"
position = { x = 150 y = 760 }
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
gridboxtype = {
name = "early_carrier_tree"
position = { x = 150 y = 900 }
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
gridboxtype = {
name = "early_submarine_tree"
position = { x = 150 y = 1040 }
size = { width = 100 height = 140 }
slotsize = { width = 70 height = 70 }
format = "LEFT"
}
}
containerWindowType = {
name = "mtgnavalfolder"

View File

@@ -1,22 +1,39 @@
spriteTypes = {
spriteType = {
name = "GFX_doctrine_fast_battleship_primacy_medium"
textureFile = "gfx/interface/technologies/doctrine_tree/fast_battleship_primacy.png"
textureFile = "gfx/interface/doctrines/icons/fast_battleship_primacy.png"
alwaystransparent = yes
}
spriteType = {
name = "GFX_doctrine_torpedo_groups_medium"
textureFile = "gfx/interface/technologies/doctrine_tree/torpedo_groups.png"
textureFile = "gfx/interface/doctrines/icons/torpedo_groups.png"
alwaystransparent = yes
}
spriteType = {
name = "GFX_doctrine_naval_airforce_medium"
textureFile = "gfx/interface/technologies/doctrine_tree/naval_airforce.png"
textureFile = "gfx/interface/doctrines/icons/naval_airforce.png"
alwaystransparent = yes
}
spriteType = {
name = "GFX_doctrine_submarine_area_denial_medium"
textureFile = "gfx/interface/technologies/doctrine_tree/submarine_area_denial.png"
textureFile = "gfx/interface/doctrines/icons/submarine_area_denial.png"
alwaystransparent = yes
}
spriteType = {
name = "GFX_fleet_in_being_bg"
textureFile = "gfx/interface/doctrines/background/battleship.png"
}
spriteType = {
name = "GFX_base_strike_bg"
textureFile = "gfx/interface/doctrines/background/carrier.png"
}
spriteType = {
name = "GFX_screens_bg"
textureFile = "gfx/interface/doctrines/background/screen.png"
}
spriteType = {
name = "GFX_trade_interdiction_bg"
textureFile = "gfx/interface/doctrines/background/submarine.png"
}
}

View File

@@ -280,5 +280,36 @@ guiTypes = {
}
}
}
containerWindowType = {
name = vnr_manual_handbook_gui_window
position = { x = 0 y = 0 }
size = { width = 100% height= 50 }
buttonType = {
name = "navy_rework_manual_button_english"
position = { x = 15 y = 10 }
quadTextureSprite = "GFX_strategic_air_sort"
buttonText = "navy_rework_manual_button_text"
buttonFont = "hoi_18mbs"
clicksound = click_default
oversound = ui_menu_over
pdx_tooltip = navy_rework_manual_button_tt
web_link = "https://docs.google.com/document/u/0/d/16inMWQ2u25Rc79-vdva-XhHRw6VqSzbpkVAO5ZfN_4k"
}
buttonType = {
name = "navy_rework_manual_button_chinese"
position = { x = 15 y = 10 }
quadTextureSprite = "GFX_strategic_air_sort"
buttonText = "navy_rework_manual_button_text"
buttonFont = "hoi_18mbs"
clicksound = click_default
oversound = ui_menu_over
pdx_tooltip = navy_rework_manual_button_tt
web_link = "https://docs.qq.com/doc/DZkRRSHJyWHNKWXRY"
}
}
}

View File

@@ -755,4 +755,8 @@ spriteTypes = {
name = "GFX_sp_submarine_snorkel"
textureFile = "gfx/interface/special_project/project_icons/sp_naval_anechoic_tiles.dds"
}
spriteType = {
name = "GFX_sp_shipping_container"
textureFile = "gfx/interface/special_project/project_icons/sp_shipping_container.png"
}
}

View File

@@ -1646,4 +1646,8 @@ spriteTypes = {
name = "GFX_SMI_ship_sub_snorkel_2"
textureFile = "gfx/interface/equipmentdesigner/naval/modules/icons/ship_sub_snorkel_2.png"
}
spriteType = {
name = "GFX_SMI_shipping_container"
textureFile = "gfx/interface/equipmentdesigner/naval/modules/icons/shipping_container.png"
}
}

View File

@@ -0,0 +1,25 @@
l_english:
vnr_achievements: "海军重置系列"
00_vnr_bathtub_war_NAME: "澡盆海战"
00_vnr_bathtub_war_DESC: "我们打赢了这场浴缸里的大海战。"
00_vnr_outbuild_the_yankees_NAME: "比扬基佬强!"
00_vnr_outbuild_the_yankees_DESC: "小富兰克林,你看,这也没什么难的。"
00_vnr_the_yamato_NAME: "大和"
00_vnr_the_yamato_DESC: "再听到你们谈论飞机我就扎聋自己的耳朵!"
00_vnr_topgun_NAME: "壮志凌云"
00_vnr_topgun_DESC: "Take my breath away~"
00_vnr_seapower_theory_NAME: "海权理论"
00_vnr_seapower_theory_DESC: "统治海洋者统治世界。"
00_vnr_john_fisher_adherent_NAME: "约翰·费舍尔的门徒"
00_vnr_john_fisher_adherent_DESC: "速度就是一切,一切为了速度。"
00_vnr_carrier_liaoning_NAME: "辽宁舰"
00_vnr_carrier_liaoning_DESC: "中国人民有志气,有能力,一定要在不远的将来,赶上和超越世界先进水平。"
00_vnr_i_love_destroyers_NAME: "我爱驱逐舰"
00_vnr_i_love_destroyers_DESC: "而驱逐舰,她们棒极了。"
00_vnr_nelson_reborn_NAME: "纳尔逊再世"
00_vnr_nelson_reborn_DESC: "英格兰希望每个人都能履行自己的职责"
00_vnr_bathtub_war_tt: "使用作弊并获得§H一艘战争巨兽§!。"
00_vnr_outbuild_the_yankees_tt: "已拥有一支舰队:\n£white_dot > 100艘航母\n£white_dot > 20艘战列舰\n£white_dot > 70艘巡洋舰"
00_vnr_carrier_liaoning_tt: "已启用§H原版海军重置§!"
00_vnr_nelson_reborn_tt: "已拥有一位§H等级高于6级§!的海军上将"
00_vnr_topgun_tt: "已研发§H超级航母§!"

View File

@@ -53,7 +53,6 @@
carrier_battlegroups_long_distance_logistics: "远洋后勤"
carrier_battlegroups_bomber_scouting: "全载荷侦察"
carrier_battlegroups_professional_deck_management: "专业甲板管制"
carrier_battlegroups_fleet_antiair: "舰队保护伞"
carrier_battlegroups_alpha_strike: "全甲板攻击"
SUBDOCTRINE_CARRIER_AIRFIELDS: "海上机场"
SUBDOCTRINE_CARRIER_AIRFIELDS_DESC: "航母甲板是地球上最昂贵的“地产”,必须不遗余力地从任何种类的航空攻击中保存它的完整性。"
@@ -152,4 +151,5 @@
submarine_area_denial_low_echo_hull: "低回声设计"
submarine_area_denial_slow_electric_torpedo: "慢速电动鱼雷"
submarine_area_denial_simplified_launching_protocal: "简化发射流程"
floating_airfields_all_weather_combat: "全天候作战"
floating_airfields_all_weather_combat: "全天候作战"
carrier_battlegroups_early_warning_system: "早期预警体系"

Some files were not shown because too many files have changed in this diff Show More