From 351123fab02e341a92be6537b25d5a5365fd4fa6 Mon Sep 17 00:00:00 2001 From: "actions[bot]" Date: Thu, 3 Oct 2024 16:35:54 +0000 Subject: [PATCH] 2024-10-03 16:35:54 --- src/common/ai_strategy/naval_production.txt | 154 +++++-- src/common/ai_strategy/vnr_naval_strategy.txt | 434 ++++++++++++++++++ src/common/defines/VNR_naval_defines.lua | 6 +- .../game_rules/000_naval_rework_rules.txt | 18 + .../scripted_effects/_add_ai_variants.txt | 264 +++++++++++ .../scripted_effects/_add_naval_variants.txt | 9 +- .../_delete_starting_naval.txt | 10 + .../_vnr_scripted_triggers.txt | 5 + src/common/units/a_auxiliary.txt | 2 +- src/common/units/a_battlecarrier.txt | 4 +- src/common/units/a_medium_cruiser.txt | 2 +- src/common/units/a_super_heavy_battleship.txt | 2 +- src/common/units/battlecruiser.txt | 2 +- src/common/units/battleship.txt | 2 +- src/common/units/carrier.txt | 2 +- src/common/units/destroyer.txt | 2 +- .../modules/00_ship_modules_aviation.txt | 6 + .../modules/00_ship_modules_propulsion.txt | 6 +- .../modules/00_ship_modules_protection.txt | 2 - .../modules/00_ship_modules_role.txt | 2 +- .../units/equipment/ship_hull_carrier.txt | 2 +- .../units/equipment/ship_hull_cruiser.txt | 12 +- .../units/equipment/ship_hull_heavy.txt | 2 +- src/common/units/heavy_cruiser.txt | 2 +- src/descriptor.mod | 2 +- src/documentation/Guide.md | 38 ++ src/documentation/Modding_Tutorial.md | 8 +- src/events/00_navy_rework.txt | 3 + src/events/ai_ships.txt | 38 ++ .../graphic_db/00_generic_icons.txt | 319 ++++--------- .../graphic_db/00_ship_icons.txt | 37 ++ .../navalcombat/ships/battleship_0.dds | Bin 14840 -> 15188 bytes .../interface/navalcombat/ships/carrier.dds | Bin 12860 -> 18020 bytes .../England/ENG_battleship_Revenge.png | Bin 0 -> 17878 bytes .../Italy/ITA_heavy_cruiser_Garibaldi.png | Bin 0 -> 17335 bytes .../ARG_cruiser_coastal_defense_ship.png | Bin 0 -> 17295 bytes .../CHL_cruiser_coastal_defense_ship.png | Bin 0 -> 18720 bytes .../CHL_light_cruiser_Chacabuco.png | Bin 0 -> 14925 bytes src/gfx/interface/vnr_main_menu_bg.dds | Bin 14745596 -> 14745596 bytes src/history/units/ARG_1936_naval_mtg.txt | 1 - src/history/units/AST_1936_naval.txt | 1 - src/history/units/BEL_1936_naval_mtg.txt | 1 - src/history/units/BRA_1936_naval.txt | 1 - src/history/units/BUL_1936_naval_mtg.txt | 1 - src/history/units/CAN_1936_naval_mtg.txt | 1 - src/history/units/CHI_1936_naval_mtg.txt | 1 - src/history/units/CHL_1936_naval_mtg.txt | 1 - src/history/units/COL_1936_naval_mtg.txt | 1 - src/history/units/DEN_1936_naval_mtg.txt | 1 - src/history/units/DOM_1936_naval_mtg.txt | 0 src/history/units/EGY_1936_naval_mtg.txt | 1 - src/history/units/ENG_1936_Naval.txt | 1 - src/history/units/FIN_1936_naval_mtg.txt | 1 - src/history/units/FRA_1936_naval_mtg.txt | 1 - src/history/units/GER_1936_naval_mtg.txt | 1 - src/history/units/GRE_1936_naval_mtg.txt | 1 - src/history/units/HOL_1936_naval_mtg.txt | 1 - src/history/units/ITA_1936_naval_mtg.txt | 1 - src/history/units/JAP_1936_naval.txt | 1 - src/history/units/LAT_1936_naval_mtg.txt | 1 - src/history/units/LIT_1936_naval_mtg.txt | 1 - src/history/units/MEX_1936_naval_mtg.txt | 1 - src/history/units/NOR_1936_naval_mtg.txt | 1 - src/history/units/POL_1936_naval_mtg.txt | 1 - src/history/units/POR_1936_naval_mtg.txt | 1 - src/history/units/PRU_1936_naval_mtg.txt | 1 - src/history/units/ROM_1936_naval_mtg.txt | 1 - src/history/units/SIA_1936_naval_mtg.txt | 1 - src/history/units/SOV_1936_naval_mtg.txt | 1 - src/history/units/SPR_1936_naval_mtg.txt | 1 - src/history/units/SWE_1936_naval_mtg.txt | 1 - src/history/units/TUR_1936_naval_mtg.txt | 1 - src/history/units/URG_1936_naval_mtg.txt | 1 - src/history/units/USA_1936_naval_mtg.txt | 1 - src/history/units/VEN_1936_naval_mtg.txt | 1 - src/history/units/YUG_1936_naval_mtg.txt | 1 - src/interface/countryproductionlineview.gui | 2 +- src/interface/equipmentdesignerview.gui | 11 +- ...work.gfx => vnr_user_interface_assets.gfx} | 234 +++------- src/interface/z_navy_icons_hull.gfx | 8 + .../replace/navy_rework_welcome_l_english.yml | 2 +- .../english/replace/vnr_ai_l_english.yml | 7 +- .../replace/navy_rework_welcome_l_english.yml | 2 +- src/localisation/replace/vnr_ai_l_english.yml | 7 +- .../navy_rework_welcome_l_simp_chinese.yml | 2 +- .../replace/vnr_ai_l_simp_chinese.yml | 7 +- 86 files changed, 1196 insertions(+), 519 deletions(-) create mode 100755 src/common/ai_strategy/vnr_naval_strategy.txt create mode 100755 src/common/scripted_effects/_delete_starting_naval.txt create mode 100755 src/gfx/interface/technologies/England/ENG_battleship_Revenge.png create mode 100755 src/gfx/interface/technologies/Italy/ITA_heavy_cruiser_Garibaldi.png create mode 100755 src/gfx/interface/technologies/South_America/ARG_cruiser_coastal_defense_ship.png create mode 100755 src/gfx/interface/technologies/South_America/CHL_cruiser_coastal_defense_ship.png create mode 100755 src/gfx/interface/technologies/South_America/CHL_light_cruiser_Chacabuco.png delete mode 100755 src/history/units/ARG_1936_naval_mtg.txt delete mode 100755 src/history/units/AST_1936_naval.txt delete mode 100755 src/history/units/BEL_1936_naval_mtg.txt delete mode 100755 src/history/units/BRA_1936_naval.txt delete mode 100755 src/history/units/BUL_1936_naval_mtg.txt delete mode 100755 src/history/units/CAN_1936_naval_mtg.txt delete mode 100755 src/history/units/CHI_1936_naval_mtg.txt delete mode 100755 src/history/units/CHL_1936_naval_mtg.txt delete mode 100755 src/history/units/COL_1936_naval_mtg.txt delete mode 100755 src/history/units/DEN_1936_naval_mtg.txt delete mode 100755 src/history/units/DOM_1936_naval_mtg.txt delete mode 100755 src/history/units/EGY_1936_naval_mtg.txt delete mode 100755 src/history/units/ENG_1936_Naval.txt delete mode 100755 src/history/units/FIN_1936_naval_mtg.txt delete mode 100755 src/history/units/FRA_1936_naval_mtg.txt delete mode 100755 src/history/units/GER_1936_naval_mtg.txt delete mode 100755 src/history/units/GRE_1936_naval_mtg.txt delete mode 100755 src/history/units/HOL_1936_naval_mtg.txt delete mode 100755 src/history/units/ITA_1936_naval_mtg.txt delete mode 100755 src/history/units/JAP_1936_naval.txt delete mode 100755 src/history/units/LAT_1936_naval_mtg.txt delete mode 100755 src/history/units/LIT_1936_naval_mtg.txt delete mode 100755 src/history/units/MEX_1936_naval_mtg.txt delete mode 100755 src/history/units/NOR_1936_naval_mtg.txt delete mode 100755 src/history/units/POL_1936_naval_mtg.txt delete mode 100755 src/history/units/POR_1936_naval_mtg.txt delete mode 100755 src/history/units/PRU_1936_naval_mtg.txt delete mode 100755 src/history/units/ROM_1936_naval_mtg.txt delete mode 100755 src/history/units/SIA_1936_naval_mtg.txt delete mode 100755 src/history/units/SOV_1936_naval_mtg.txt delete mode 100755 src/history/units/SPR_1936_naval_mtg.txt delete mode 100755 src/history/units/SWE_1936_naval_mtg.txt delete mode 100755 src/history/units/TUR_1936_naval_mtg.txt delete mode 100755 src/history/units/URG_1936_naval_mtg.txt delete mode 100755 src/history/units/USA_1936_naval_mtg.txt delete mode 100755 src/history/units/VEN_1936_naval_mtg.txt delete mode 100755 src/history/units/YUG_1936_naval_mtg.txt rename src/interface/{z_naval_rework.gfx => vnr_user_interface_assets.gfx} (60%) diff --git a/src/common/ai_strategy/naval_production.txt b/src/common/ai_strategy/naval_production.txt index bf93f32..0db38ce 100755 --- a/src/common/ai_strategy/naval_production.txt +++ b/src/common/ai_strategy/naval_production.txt @@ -475,7 +475,7 @@ naval_unit_role_ratios_GER_atwar_many_shipyard = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 80 + value = 180 } ai_strategy = { @@ -525,7 +525,7 @@ naval_unit_role_ratios_GER_atwar_knock_USA = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 80 + value = 120 } ai_strategy = { @@ -766,7 +766,7 @@ naval_unit_role_ratios_ENG_prewar_late = { ai_strategy = { type = role_ratio id = vnr_naval_screen_leader - value = 20 + value = 10 } ai_strategy = { @@ -800,13 +800,13 @@ naval_unit_role_ratios_ENG_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_capital_bb - value = 20 + value = 30 } ai_strategy = { type = role_ratio id = vnr_naval_carrier - value = 25 + value = 35 } ai_strategy = { @@ -1334,12 +1334,10 @@ naval_unit_role_ratios_JAP_atwar = { tag = JAP } enable = { - OR = { - date > 1939.5.31 - any_enemy_country = { - is_literally_china = no - is_major = yes - } + date > 1939.5.31 + any_enemy_country = { + is_literally_china = no + is_major = yes } } abort_when_not_enabled = yes @@ -1347,7 +1345,7 @@ naval_unit_role_ratios_JAP_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 20 + value = 90 } ai_strategy = { type = role_ratio @@ -1376,7 +1374,7 @@ naval_unit_role_ratios_JAP_atwar = { } ai_strategy = { type = dockyard_to_military_factory_ratio - value = 70 + value = 60 } } @@ -1386,40 +1384,51 @@ naval_unit_role_ratios_JAP_late_peace = { tag = JAP } enable = { - date > 1942.1.1 - has_war_with_major = no + date > 1939.5.31 + OR = { + has_war_with_major = no + any_enemy_country = { + is_literally_china = yes + is_major = yes + } + } } abort_when_not_enabled = yes ai_strategy = { type = role_ratio - id = vnr_naval_screen - value = 200 + id = vnr_naval_submarine + value = 60 } ai_strategy = { type = role_ratio - id = vnr_naval_screen_cruiser - value = 10 + id = vnr_naval_screen + value = 250 } 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_large - value = 30 - } - ai_strategy = { - type = role_ratio - id = vnr_naval_capital_bb value = 10 } + ai_strategy = { + type = role_ratio + id = vnr_naval_capital_bb + value = 15 + } ai_strategy = { type = role_ratio id = vnr_naval_carrier - value = 20 + value = 25 } ai_strategy = { type = dockyard_to_military_factory_ratio @@ -1455,7 +1464,7 @@ naval_unit_role_ratios_USA_great_depression = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 25 + value = 45 } ai_strategy = { @@ -1497,7 +1506,7 @@ naval_unit_role_ratios_USA_go_to_war = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 40 + value = 55 } ai_strategy = { type = role_ratio @@ -1525,7 +1534,7 @@ naval_unit_role_ratios_USA_go_to_war = { ai_strategy = { type = role_ratio id = vnr_naval_capital_bb - value = 40 + value = 30 } ai_strategy = { @@ -1574,13 +1583,13 @@ naval_unit_role_ratios_USA_atwar = { ai_strategy = { type = role_ratio id = vnr_naval_capital_bb - value = 50 + value = 40 } ai_strategy = { type = role_ratio id = vnr_naval_carrier - value = 60 + value = 50 } ai_strategy = { @@ -1597,7 +1606,7 @@ naval_unit_role_ratios_ITA_prewar_build_battleships = { enable = { date < 1941.1.1 has_war_with_major = no - has_navy_size = { size < 6 type = capital_ship archetype = ship_hull_heavy } + has_navy_size = { size < 8 type = capital_ship archetype = ship_hull_heavy } } abort_when_not_enabled = yes @@ -1642,14 +1651,14 @@ naval_unit_role_ratios_ITA_prewar_enough_battleships = { enable = { date < 1941.1.1 has_war_with_major = no - has_navy_size = { size > 5 type = capital_ship archetype = ship_hull_heavy } + has_navy_size = { size > 7 type = capital_ship archetype = ship_hull_heavy } } abort_when_not_enabled = yes ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 40 + value = 140 } ai_strategy = { type = role_ratio @@ -1745,7 +1754,7 @@ naval_unit_role_ratios_ITA_atwar_with_major = { ai_strategy = { type = role_ratio id = vnr_naval_submarine - value = 40 + value = 70 } ai_strategy = { type = role_ratio @@ -1777,6 +1786,11 @@ naval_unit_role_ratios_ITA_atwar_with_major = { id = vnr_naval_capital_bb value = 15 } + ai_strategy = { + type = role_ratio + id = vnr_naval_carrier + value = 10 + } ai_strategy = { type = dockyard_to_military_factory_ratio value = 50 @@ -2250,6 +2264,30 @@ we_need_cv_planes_1 = { id = cv_cas value = 20 } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_fighter + value = 1 + } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_naval_bomber + value = 1 + } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_cas + value = 1 + } + + ai_strategy = { + type = equipment_variant_production_factor + id = cv_small_plane_airframe + value = 20 + } } we_need_cv_planes_2 = { @@ -2297,6 +2335,30 @@ we_need_cv_planes_2 = { id = cv_cas value = 40 } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_fighter + value = 2 + } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_naval_bomber + value = 2 + } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_cas + value = 2 + } + + ai_strategy = { + type = equipment_variant_production_factor + id = cv_small_plane_airframe + value = 40 + } } we_need_cv_planes_3 = { @@ -2343,6 +2405,30 @@ we_need_cv_planes_3 = { id = cv_cas value = 60 } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_fighter + value = 3 + } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_naval_bomber + value = 3 + } + + ai_strategy = { + type = equipment_production_min_factories + id = cv_cas + value = 3 + } + + ai_strategy = { + type = equipment_variant_production_factor + id = cv_small_plane_airframe + value = 50 + } } diff --git a/src/common/ai_strategy/vnr_naval_strategy.txt b/src/common/ai_strategy/vnr_naval_strategy.txt new file mode 100755 index 0000000..cc9f246 --- /dev/null +++ b/src/common/ai_strategy/vnr_naval_strategy.txt @@ -0,0 +1,434 @@ +### ENG ### +ENG_protect_home_waters = { + allowed = { + has_dlc = "Man the Guns" + original_tag = ENG + } + enable = { + has_war_with = GER + GER = { + has_navy_size = { size > 30 } + } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = strike_force_home_base + id = 18 + value = 800 + } + ai_strategy = { + type = strike_force_home_base + id = 16 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 18 + value = -300 + } +} + +ENG_secure_mediterranean = { + allowed = { + has_dlc = "Man the Guns" + original_tag = ENG + } + enable = { + has_war_with = ITA + ITA = { + has_navy_size = { size > 30 } + } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = strike_force_home_base + id = 29 + value = 100 + } + ai_strategy = { + type = strike_force_home_base + id = 68 + value = 20 + } + ai_strategy = { + type = strike_force_home_base + id = 69 + value = 200 + } +} + +ENG_avoid_pacific = { + allowed = { + has_dlc = "Man the Guns" + original_tag = ENG + } + enable = { + has_war_with = JAP + has_war_with = GER + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = naval_avoid_region + id = 75 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 72 + value = 20 + } + ai_strategy = { + type = naval_avoid_region + id = 73 + value = 200 + } +} + +### JAP ### +JAP_destroy_china_navy_quick = { + allowed = { + has_dlc = "Man the Guns" + original_tag = JAP + } + enable = { + has_war_with = CHI + NOT = { has_war_with = USA } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = strike_force_home_base + id = 75 + value = 10 + } + ai_strategy = { + type = strike_force_home_base + id = 76 + value = 200 + } + ai_strategy = { + type = strike_force_home_base + id = 77 + value = 200 + } +} + +JAP_pacific_war_naval_stage_one = { + allowed = { + has_dlc = "Man the Guns" + original_tag = JAP + } + enable = { + has_war_with = USA + naval_strength_ratio = { + tag = USA + ratio < 0.5 + } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = strike_force_home_base + id = 75 + value = 200 + } + ai_strategy = { + type = strike_force_home_base + id = 78 + value = 200 + } + ai_strategy = { + type = strike_force_home_base + id = 94 + value = 50 + } + ai_strategy = { + type = strike_force_home_base + id = 84 + value = 130 + } +} + +JAP_pacific_war_naval_stage_two = { + allowed = { + has_dlc = "Man the Guns" + original_tag = JAP + } + enable = { + has_war_with = USA + OR = { + naval_strength_ratio = { + tag = USA + ratio = 0.5 + } + naval_strength_ratio = { + tag = USA + ratio > 0.5 + } + } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = strike_force_home_base + id = 75 + value = 50 + } + ai_strategy = { + type = strike_force_home_base + id = 78 + value = 50 + } + ai_strategy = { + type = strike_force_home_base + id = 94 + value = 50 + } + ai_strategy = { + type = strike_force_home_base + id = 84 + value = 50 + } + ai_strategy = { + type = strike_force_home_base + id = 95 + value = 200 + } + ai_strategy = { + type = strike_force_home_base + id = 97 + value = 200 + } + ai_strategy = { + type = strike_force_home_base + id = 180 + value = 100 + } + ai_strategy = { + type = strike_force_home_base + id = 83 + value = 130 + } +} + +### USA ### +USA_pacific_war_naval_avoid_first = { + allowed = { + has_dlc = "Man the Guns" + original_tag = USA + } + enable = { + has_war_with = JAP + date < 1943.1.1 + naval_strength_ratio = { + tag = JAP + ratio < 5 + } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = naval_avoid_region + id = 75 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 76 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 77 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 79 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 90 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 177 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 94 + value = 100 + } +} + +USA_pacific_war_naval_counterattack = { + allowed = { + has_dlc = "Man the Guns" + original_tag = USA + } + enable = { + has_war_with = JAP + OR = { + date > 1942.12.31 + naval_strength_ratio = { + tag = JAP + ratio > 5 + } + } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = strike_force_home_base + id = 75 + value = 50 + } + ai_strategy = { + type = strike_force_home_base + id = 78 + value = 50 + } + ai_strategy = { + type = strike_force_home_base + id = 94 + value = 50 + } + ai_strategy = { + type = strike_force_home_base + id = 84 + value = 150 + } + ai_strategy = { + type = strike_force_home_base + id = 95 + value = 200 + } + ai_strategy = { + type = strike_force_home_base + id = 97 + value = 200 + } + ai_strategy = { + type = strike_force_home_base + id = 180 + value = 100 + } + ai_strategy = { + type = strike_force_home_base + id = 83 + value = 130 + } +} + +### ITA ### +ITA_avoid_mediterranean = { + allowed = { + has_dlc = "Man the Guns" + original_tag = ITA + } + enable = { + has_war_with = ENG + has_navy_size = { size < 100 } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = strike_force_home_base + id = 29 + value = -100 + } + ai_strategy = { + type = strike_force_home_base + id = 68 + value = -100 + } + ai_strategy = { + type = strike_force_home_base + id = 69 + value = -100 + } + ai_strategy = { + type = naval_avoid_region + id = 29 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 68 + value = 100 + } + ai_strategy = { + type = naval_avoid_region + id = 69 + value = 100 + } +} + +### GER ### +GER_forget_sealion = { + allowed = { + has_dlc = "Man the Guns" + original_tag = GER + } + enable = { + has_war_with = ENG + naval_strength_ratio = { + tag = ENG + ratio < 0.7 + } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = naval_avoid_region + id = 18 + value = 800 + } + ai_strategy = { + type = naval_avoid_region + id = 16 + value = 200 + } +} + +GER_unrestricted_submarine_warfare = { + allowed = { + has_dlc = "Man the Guns" + original_tag = GER + } + enable = { + has_war_with = ENG + naval_strength_ratio = { + tag = ENG + ratio < 0.7 + } + enable_vnr_naval_ai = yes + } + abort_when_not_enabled = yes + ai_strategy = { + type = naval_convoy_raid_region + id = 47 + value = 200 + } + ai_strategy = { + type = naval_convoy_raid_region + id = 49 + value = 500 + } + ai_strategy = { + type = naval_convoy_raid_region + id = 44 + value = 150 + } + ai_strategy = { + type = naval_convoy_raid_region + id = 50 + value = 30 + } +} \ No newline at end of file diff --git a/src/common/defines/VNR_naval_defines.lua b/src/common/defines/VNR_naval_defines.lua index e1d7237..8e6caff 100755 --- a/src/common/defines/VNR_naval_defines.lua +++ b/src/common/defines/VNR_naval_defines.lua @@ -19,7 +19,7 @@ NDefines.NNavy.NAVAL_INVASION_SPOTTING_SPEED_MULT = 30; NDefines.NNavy.SPOTTING_SPEED_EFFECT_FOR_INITIAL_UNIT_TRANSFER_SPOTTING = 0.5; NDefines.NNavy.SPOTTING_SPEED_EFFECT_FOR_INITIAL_NAVAL_INVASION_SPOTTING = 0.5; NDefines.NNavy.CONVOY_EFFICIENCY_MIN_VALUE = 0; -NDefines.NNavy.CONVOY_HIT_PROFILE = 100; +NDefines.NNavy.CONVOY_HIT_PROFILE = 120; NDefines.NNavy.NAVY_PIERCING_THRESHOLDS = { 2.0, 1.0, 0.85, 0.75, 0.6, 0.5, 0.3, 0.1, 0.0 } NDefines.NNavy.NAVY_PIERCING_THRESHOLD_CRITICAL_VALUES = { 3.0, 1.0, 0.65, 0.55, 0.4, 0.3, 0.15, 0.1, 0.0 } NDefines.NNavy.NAVY_PIERCING_THRESHOLD_DAMAGE_VALUES = { 1.0, 1.0, 0.7, 0.6, 0.45, 0.35, 0.2, 0.1, 0.01 } @@ -60,6 +60,10 @@ NDefines.NNavy.EXPERIENCE_FACTOR_NON_CARRIER_GAIN = 0.1 NDefines.NNavy.EXPERIENCE_FACTOR_CARRIER_GAIN = 0.2 NDefines.NNavy.TRAINING_DAILY_COUNTRY_EXP_FACTOR = 0.005 NDefines.NNavy.TRAINING_MAX_DAILY_COUNTRY_EXP = 7 +NDefines.NNavy.NAVAL_TRANSFER_BASE_SPEED = 2 +NDefines.NNavy.AMPHIBIOUS_INVADE_SPEED_BASE = 0.25 +NDefines.NNavy.SUPREMACY_PER_SHIP_PER_MANPOWER = 0.001 +NDefines.NNavy.SUPREMACY_PER_SHIP_PER_IC = 0.05 NDefines.NNavy.AGGRESSION_SETTINGS_VALUES = { 0, -- do not engage 1.0, -- low diff --git a/src/common/game_rules/000_naval_rework_rules.txt b/src/common/game_rules/000_naval_rework_rules.txt index 5d665da..0ca0b94 100755 --- a/src/common/game_rules/000_naval_rework_rules.txt +++ b/src/common/game_rules/000_naval_rework_rules.txt @@ -80,4 +80,22 @@ shipyard_output_boost = { desc = RULE_SHIPYARD_OUTPUT_BOOST_BLOCKED_DESC allow_achievements = yes } +} + +vnr_ai_naval_management = { + name = RULE_AI_NAVAL_MANAGEMENT + group = RULE_GROUP_NAVY_REWORK + + default = { + name = FREE + text = RULE_OPTION_FREE + desc = RULE_AI_NAVAL_MANAGEMENT_FREE_DESC + allow_achievements = yes + } + option = { + name = BLOCKED + text = RULE_OPTION_BLOCKED + desc = RULE_AI_NAVAL_MANAGEMENT_BLOCKED_DESC + allow_achievements = yes + } } \ No newline at end of file diff --git a/src/common/scripted_effects/_add_ai_variants.txt b/src/common/scripted_effects/_add_ai_variants.txt index c7c2629..36aa507 100755 --- a/src/common/scripted_effects/_add_ai_variants.txt +++ b/src/common/scripted_effects/_add_ai_variants.txt @@ -1096,4 +1096,268 @@ ITA_AI_variants_1943 = { rear_2_custom_slot = ship_light_battery_4_double } } +} +SOV_AI_variants_1940 = { + create_equipment_variant = { + name = "苏联级" # Sovetsky Soyuz Class + role_icon_index = 1 + type = vnr_ship_hull_super_heavy_1 + parent_version = 0 + name_group = SOV_STATES + modules = { + fixed_ship_battery_slot = ship_heavy_battery_3_triple + fixed_ship_anti_air_slot = ship_anti_air_3_h + fixed_ship_fire_control_system_slot = ship_fire_control_system_2 + fixed_ship_engine_slot = super_heavy_ship_engine_2 + fixed_ship_secondaries_slot = ship_secondaries_2 + fixed_ship_armor_slot = ship_armor_shbb + fixed_ship_armor_scheme_slot = ship_scheme_mixed + fixed_ship_torpedo_defense_system_slot = pugliese_system + fixed_ship_airplane_launcher_slot = ship_airplane_launcher + fixed_ship_extra_secondaries_slot = ship_high_velocity_shell + front_1_custom_slot = empty + front_2_custom_slot = ship_heavy_battery_3_triple + mid_1_custom_slot = dp_ship_secondaries_2 + mid_2_custom_slot = ship_secondaries_2 + mid_3_custom_slot = dp_ship_secondaries_2 + rear_1_custom_slot = ship_heavy_battery_3_triple + } + } + create_equipment_variant = { + name = "71工程级" # Object 71 Class + role_icon_index = 11 + type = vnr_ship_hull_carrier_conversion_ca + parent_version = 0 + name_group = SOV_CV_HISTORICAL + modules = { + fixed_ship_deck_slot_1 = ship_deck_space + fixed_ship_deck_slot_2 = ship_deck_space_small + fixed_ship_anti_air_slot = ship_anti_air_3 + fixed_ship_engine_slot = carrier_ship_engine_3 + fixed_ship_secondaries_slot = dp_ship_secondaries_2 + fixed_ship_armor_slot = ship_armor_cruiser_2 + } + } + create_equipment_variant = { + name = "喀琅施塔得级" # Kronshtadt Class + role_icon_index = 21 + type = vnr_ship_hull_heavy_3 + parent_version = 0 + name_group = SOV_BC_HISTORICAL + modules = { + fixed_ship_battery_slot = ship_heavy_battery_1_triple + fixed_ship_anti_air_slot = ship_anti_air_3 + fixed_ship_fire_control_system_slot = ship_fire_control_system_1 + fixed_ship_engine_slot = heavy_ship_engine_3 + fixed_ship_secondaries_slot = dp_ship_secondaries_2 + fixed_ship_armor_slot = ship_armor_bc_3 + front_1_custom_slot = empty + front_2_custom_slot = ship_heavy_battery_1_triple + mid_1_custom_slot = ship_secondaries_2 + mid_2_custom_slot = empty + mid_3_custom_slot = ship_anti_air_3 + rear_1_custom_slot = ship_heavy_battery_1_triple + } + } + create_equipment_variant = { + name = "恰巴耶夫级" # Chapayev Class + role_icon_index = 25 + type = vnr_ship_hull_cruiser_4 + parent_version = 0 + name_group = SOV_CL_HISTORICAL + modules = { + fixed_ship_battery_slot = ship_light_medium_battery_3 + fixed_ship_anti_air_slot = ship_anti_air_3 + fixed_ship_fire_control_system_slot = ship_fire_control_system_1 + fixed_ship_engine_slot = cruiser_ship_engine_4 + fixed_ship_armor_slot = ship_armor_cruiser_3 + fixed_ship_secondaries_slot = dp_ship_secondaries_2 + front_1_custom_slot = empty + front_2_custom_slot = ship_light_medium_battery_3 + mid_1_custom_slot = ship_anti_air_3 + mid_2_custom_slot = ship_torpedo_3 + mid_3_custom_slot = dp_ship_secondaries_2 + rear_1_custom_slot = ship_light_medium_battery_3 + rear_2_custom_slot = ship_light_medium_battery_3 + } + } + create_equipment_variant = { + name = "奥格涅沃伊级" # Ognevoy Class + role_icon_index = 31 + type = vnr_ship_hull_light_4 + parent_version = 0 + name_group = SOV_ADJECTIVES_NAVY + modules = { + fixed_ship_battery_slot = ship_light_battery_3_double + fixed_ship_anti_air_slot = ship_anti_air_3 + fixed_ship_fire_control_system_slot = ship_fire_control_system_1 + fixed_ship_engine_slot = light_ship_engine_4 + front_1_custom_slot = empty + front_2_custom_slot = ship_anti_air_3 + mid_1_custom_slot = ship_torpedo_2 + mid_2_custom_slot = ship_torpedo_2 + rear_1_custom_slot = ship_light_battery_3_double + rear_2_custom_slot = ship_depth_charge_2 + } + } + create_equipment_variant = { + name = "塔什干级" # Tashkent Class + role_icon_index = 33 + type = vnr_ship_hull_light_4 + parent_version = 0 + name_group = SOV_CITIES_NAVY + modules = { + fixed_ship_battery_slot = ship_light_battery_3_double + fixed_ship_anti_air_slot = ship_anti_air_3 + fixed_ship_fire_control_system_slot = ship_fire_control_system_1 + fixed_ship_engine_slot = light_ship_engine_6 + fixed_ship_torpedo_slot = ship_torpedo_3 + fixed_ship_role_slot = ship_hull_light_role_dl + front_1_custom_slot = ship_light_battery_3_double + front_2_custom_slot = empty + mid_1_custom_slot = ship_torpedo_3 + mid_2_custom_slot = ship_mine_layer_1 + rear_1_custom_slot = ship_light_battery_3_double + rear_2_custom_slot = ship_depth_charge_1 + } + } +} +SOV_AI_variants_1943 = { + create_equipment_variant = { + name = "24工程级" # Object 24 Class + role_icon_index = 1 + type = vnr_ship_hull_heavy_5 + parent_version = 0 + name_group = SOV_BB_HISTORICAL + modules = { + fixed_ship_battery_slot = ship_heavy_battery_4_triple + fixed_ship_anti_air_slot = ship_anti_air_4 + fixed_ship_fire_control_system_slot = ship_fire_control_system_3 + fixed_ship_radar_slot = ship_radar_4 + fixed_ship_engine_slot = heavy_ship_engine_5 + fixed_ship_secondaries_slot = dp_ship_secondaries_4 + fixed_ship_armor_slot = ship_armor_shbb_2 + fixed_ship_armor_scheme_slot = ship_scheme_all_or_nothing_armor_box + fixed_ship_torpedo_defense_system_slot = torpedo_belt_enhanced + fixed_ship_extra_secondaries_slot = ship_high_velocity_shell + front_1_custom_slot = ship_anti_air_4 + front_2_custom_slot = ship_heavy_battery_4_triple + mid_1_custom_slot = dp_ship_secondaries_4 + mid_2_custom_slot = ship_anti_air_4 + mid_3_custom_slot = dp_ship_secondaries_4 + rear_1_custom_slot = ship_heavy_battery_4_triple + rear_2_custom_slot = ship_airplane_launcher_2 + } + } + create_equipment_variant = { + name = "72工程级" # Object 72 Class + role_icon_index = 9 + type = vnr_ship_hull_carrier_3 + parent_version = 0 + name_group = SOV_CV_HISTORICAL + modules = { + fixed_ship_deck_slot_1 = ship_deck_space + fixed_ship_deck_slot_2 = ship_deck_space + fixed_ship_anti_air_slot = ship_anti_air_3 + fixed_ship_radar_slot = ship_radar_3 + fixed_ship_engine_slot = carrier_ship_engine_4 + fixed_ship_secondaries_slot = dp_ship_secondaries_3 + fixed_ship_carrier_miscellaneous_slot_1 = carrier_spared_squad + front_1_custom_slot = ship_anti_air_3 + mid_1_custom_slot = ship_deck_space + mid_2_custom_slot = dp_ship_secondaries_3 + rear_1_custom_slot = ship_anti_air_3 + } + } + create_equipment_variant = { + name = "斯大林格勒级" # Stalingrad Class + role_icon_index = 21 + type = vnr_ship_hull_cruiser_5 + parent_version = 0 + name_group = SOV_CITIES_NAVY + modules = { + fixed_ship_battery_slot = ship_medium_heavy_battery_2 + fixed_ship_anti_air_slot = ship_anti_air_4 + fixed_ship_fire_control_system_slot = ship_fire_control_system_3 + fixed_ship_radar_slot = ship_radar_4 + fixed_ship_engine_slot = cruiser_ship_engine_5 + fixed_ship_secondaries_slot = dp_ship_secondaries_4 + fixed_ship_armor_slot = ship_armor_cruiser_heavy_4 + fixed_ship_role_slot = ship_hull_cruiser_role_cb + fixed_ship_extra_secondaries_slot = ship_high_velocity_shell + front_1_custom_slot = ship_anti_air_4 + front_2_custom_slot = ship_medium_heavy_battery_2 + mid_1_custom_slot = dp_ship_secondaries_4 + mid_2_custom_slot = dp_ship_secondaries_4 + mid_3_custom_slot = ship_anti_air_4 + rear_1_custom_slot = ship_medium_heavy_battery_2 + } + } + create_equipment_variant = { + name = "莫斯科级" # Moskow Class + role_icon_index = 27 + type = vnr_ship_hull_cruiser_5 + parent_version = 0 + name_group = SOV_CITIES_NAVY + modules = { + fixed_ship_battery_slot = ship_medium_battery_4 + fixed_ship_anti_air_slot = ship_anti_air_4 + fixed_ship_fire_control_system_slot = ship_fire_control_system_3 + fixed_ship_radar_slot = ship_radar_4 + fixed_ship_engine_slot = cruiser_ship_engine_5 + fixed_ship_secondaries_slot = dp_ship_secondaries_4 + fixed_ship_armor_slot = ship_armor_cruiser_4 + fixed_ship_role_slot = ship_hull_cruiser_role_ca + fixed_ship_extra_secondaries_slot = ship_high_velocity_shell + front_1_custom_slot = ship_anti_air_4 + front_2_custom_slot = ship_medium_battery_4 + mid_1_custom_slot = dp_ship_secondaries_4 + mid_2_custom_slot = dp_ship_secondaries_4 + mid_3_custom_slot = ship_anti_air_4 + rear_1_custom_slot = ship_medium_battery_4 + } + } + create_equipment_variant = { + name = "斯维尔德洛夫级" # Sverdlov Class + role_icon_index = 25 + type = vnr_ship_hull_cruiser_5 + parent_version = 0 + name_group = SOV_CL_HISTORICAL + modules = { + fixed_ship_battery_slot = ship_light_medium_battery_4 + fixed_ship_anti_air_slot = ship_anti_air_3 + fixed_ship_fire_control_system_slot = ship_fire_control_system_3 + fixed_ship_engine_slot = cruiser_ship_engine_5 + fixed_ship_armor_slot = ship_armor_cruiser_4 + fixed_ship_secondaries_slot = dp_ship_secondaries_4 + front_1_custom_slot = empty + front_2_custom_slot = ship_light_medium_battery_4 + mid_1_custom_slot = ship_anti_air_3 + mid_2_custom_slot = ship_torpedo_3 + mid_3_custom_slot = dp_ship_secondaries_4 + rear_1_custom_slot = ship_light_medium_battery_4 + rear_2_custom_slot = ship_light_medium_battery_4 + } + } + create_equipment_variant = { + name = "41工程级/56工程级" # Object 41/56 Class + role_icon_index = 31 + type = vnr_ship_hull_light_5 + parent_version = 0 + name_group = SOV_ADJECTIVES_NAVY + modules = { + fixed_ship_battery_slot = dp_light_battery_4 + fixed_ship_anti_air_slot = ship_anti_air_4 + fixed_ship_fire_control_system_slot = ship_sonar_2 + fixed_ship_radar_slot = ship_radar_3 + fixed_ship_engine_slot = light_ship_engine_5 + fixed_ship_extra_secondaries_slot = ship_bulbous_bow + front_1_custom_slot = empty + front_2_custom_slot = empty + mid_1_custom_slot = ship_torpedo_4 + mid_2_custom_slot = ship_anti_air_4 + rear_1_custom_slot = ship_depth_charge_4 + rear_2_custom_slot = dp_light_battery_4 + } + } } \ No newline at end of file diff --git a/src/common/scripted_effects/_add_naval_variants.txt b/src/common/scripted_effects/_add_naval_variants.txt index 9b92d16..aa9e0d5 100755 --- a/src/common/scripted_effects/_add_naval_variants.txt +++ b/src/common/scripted_effects/_add_naval_variants.txt @@ -153,6 +153,7 @@ ENG_start_naval_variants = { name = "复仇级" # Revenge Class parent_version = 0 role_icon_index = 3 + icon = "gfx/interface/technologies/England/ENG_battleship_Revenge.png" type = vnr_ship_hull_heavy_1 name_group = ENG_BB_HISTORICAL modules = { @@ -768,7 +769,7 @@ GER_start_naval_variants = { name = "希佩尔海军上将级" # Admiral Hipper Class parent_version = 0 role_icon_index = 27 - icon = "gfx/interface/technologies/Germany/GER_heavy_cruiser2.png" + icon = "gfx/interface/technologies/Germany/GER_heavy_cruiser3.png" type = vnr_ship_hull_cruiser_3 name_group = GER_CA_HISTORICAL modules = { @@ -852,6 +853,7 @@ GER_start_naval_variants = { name = "Type 1936级" # Type 1936 Class parent_version = 0 role_icon_index = 31 + icon = "gfx/interface/technologies/Germany/GER_destroyer2.png" type = vnr_ship_hull_light_3 name_group = GER_DD_HISTORICAL modules = { @@ -872,6 +874,7 @@ GER_start_naval_variants = { name = "Type 1934A级" # Type 1934A Class parent_version = 0 role_icon_index = 31 + icon = "gfx/interface/technologies/Germany/GER_destroyer2.png" type = vnr_ship_hull_light_3 name_group = GER_DD_HISTORICAL modules = { @@ -892,6 +895,7 @@ GER_start_naval_variants = { name = "Type 1934级" # Type 1934 Class parent_version = 0 role_icon_index = 31 + icon = "gfx/interface/technologies/Germany/GER_destroyer2.png" type = vnr_ship_hull_light_3 name_group = GER_DD_HISTORICAL modules = { @@ -3385,6 +3389,7 @@ SOV_start_naval_variants = { name = "AG级" # AG Class parent_version = 0 role_icon_index = 37 + icon = "gfx/interface/technologies/Soviet/SOV_submarine_AG.png" type = vnr_ship_hull_submarine_1 name_group = SOV_SS_LENINETS modules = { @@ -4039,6 +4044,7 @@ ARG_start_naval_variants = { name = "朱赛佩·加里波第级" # Garibaldi Class parent_version = 0 role_icon_index = 17 + icon = "gfx/interface/technologies/Italy/ITA_heavy_cruiser_Garibaldi.png" type = vnr_ship_hull_cruiser_coastal_defense_ship name_group = ARG_CA_HISTORICAL modules = { @@ -4563,6 +4569,7 @@ CHL_start_naval_variants = { name = "查卡布科级" # Chacabuco Class parent_version = 0 role_icon_index = 23 + icon = "gfx/interface/technologies/South_America/CHL_light_cruiser_Chacabuco.png" type = vnr_ship_hull_cruiser_coastal_defense_ship name_group = CHL_CA_HISTORICAL modules = { diff --git a/src/common/scripted_effects/_delete_starting_naval.txt b/src/common/scripted_effects/_delete_starting_naval.txt new file mode 100755 index 0000000..ab116fb --- /dev/null +++ b/src/common/scripted_effects/_delete_starting_naval.txt @@ -0,0 +1,10 @@ +delete_starting_naval_oob = { + every_country = { + limit = { has_navy_size = { size > 0 } } + destroy_ships = { type = ship_hull_light count = all } + destroy_ships = { type = ship_hull_cruiser count = all } + destroy_ships = { type = ship_hull_heavy count = all } + destroy_ships = { type = ship_hull_carrier count = all } + destroy_ships = { type = ship_hull_submarine count = all } + } +} \ No newline at end of file diff --git a/src/common/scripted_triggers/_vnr_scripted_triggers.txt b/src/common/scripted_triggers/_vnr_scripted_triggers.txt index 0f0415f..3ac0b77 100755 --- a/src/common/scripted_triggers/_vnr_scripted_triggers.txt +++ b/src/common/scripted_triggers/_vnr_scripted_triggers.txt @@ -19,4 +19,9 @@ expert_ai_style = { tag = SOV tag = USA } +} + +enable_vnr_naval_ai = { + has_global_flag = vnr_enabled + has_game_rule = { rule = vnr_ai_naval_management option = FREE } } \ No newline at end of file diff --git a/src/common/units/a_auxiliary.txt b/src/common/units/a_auxiliary.txt index 1580608..47753fd 100755 --- a/src/common/units/a_auxiliary.txt +++ b/src/common/units/a_auxiliary.txt @@ -8,7 +8,7 @@ sub_units = { need_equipment = { ship_hull_civilian = 1 } max_organisation = 60 - supply_consumption = 0.01 + supply_consumption = 0.02 critical_parts = { rudder_jammed broken_propeller on_fire } critical_part_damage_chance_mult = 1 diff --git a/src/common/units/a_battlecarrier.txt b/src/common/units/a_battlecarrier.txt index 8f458a1..1a9aa8e 100755 --- a/src/common/units/a_battlecarrier.txt +++ b/src/common/units/a_battlecarrier.txt @@ -4,7 +4,7 @@ sub_units = { map_icon_category = ship priority = 9 active = yes - type = { capital_ship carrier } + type = { carrier } need_equipment = { ship_hull_heavy = 1 } need_equipment_modules = { any = { @@ -13,7 +13,7 @@ sub_units = { } max_organisation = 60 - supply_consumption = 0.3 + supply_consumption = 0.42 critical_parts = { rudder_jammed destroyed_ammo_storage broken_propeller on_fire } critical_part_damage_chance_mult = 1.3 diff --git a/src/common/units/a_medium_cruiser.txt b/src/common/units/a_medium_cruiser.txt index 268f2f5..4602732 100755 --- a/src/common/units/a_medium_cruiser.txt +++ b/src/common/units/a_medium_cruiser.txt @@ -25,7 +25,7 @@ sub_units = { max_organisation = 40 - supply_consumption = 0.13 + supply_consumption = 0.15 critical_parts = { rudder_jammed destroyed_ammo_storage broken_propeller on_fire } critical_part_damage_chance_mult = 1 diff --git a/src/common/units/a_super_heavy_battleship.txt b/src/common/units/a_super_heavy_battleship.txt index 0b49169..717fb00 100755 --- a/src/common/units/a_super_heavy_battleship.txt +++ b/src/common/units/a_super_heavy_battleship.txt @@ -14,7 +14,7 @@ sub_units = { } max_organisation = 40 - supply_consumption = 0.4 + supply_consumption = 0.5 critical_parts = { rudder_jammed destroyed_ammo_storage broken_propeller on_fire } critical_part_damage_chance_mult = 1 diff --git a/src/common/units/battlecruiser.txt b/src/common/units/battlecruiser.txt index 918a53b..d22b551 100755 --- a/src/common/units/battlecruiser.txt +++ b/src/common/units/battlecruiser.txt @@ -17,7 +17,7 @@ sub_units = { max_organisation = 50 - supply_consumption = 0.33 + supply_consumption = 0.4 critical_parts = { rudder_jammed destroyed_ammo_storage broken_propeller on_fire } critical_part_damage_chance_mult = 1.25 diff --git a/src/common/units/battleship.txt b/src/common/units/battleship.txt index 89e9d98..efc2a88 100755 --- a/src/common/units/battleship.txt +++ b/src/common/units/battleship.txt @@ -9,7 +9,7 @@ sub_units = { max_organisation = 50 - supply_consumption = 0.37 + supply_consumption = 0.45 critical_parts = { rudder_jammed destroyed_ammo_storage broken_propeller on_fire } critical_part_damage_chance_mult = 1 diff --git a/src/common/units/carrier.txt b/src/common/units/carrier.txt index 38b408a..496dd52 100755 --- a/src/common/units/carrier.txt +++ b/src/common/units/carrier.txt @@ -10,7 +10,7 @@ sub_units = { } need = { ship_hull_carrier = 1 } - supply_consumption = 0.3 + supply_consumption = 0.4 max_organisation = 40 diff --git a/src/common/units/destroyer.txt b/src/common/units/destroyer.txt index ed05dba..889d32b 100755 --- a/src/common/units/destroyer.txt +++ b/src/common/units/destroyer.txt @@ -9,7 +9,7 @@ sub_units = { max_organisation = 40 - supply_consumption = 0.025 + supply_consumption = 0.03 critical_parts = { destroyed_ammo_storage broken_propeller on_fire rudder_jammed} critical_part_damage_chance_mult = 1 diff --git a/src/common/units/equipment/modules/00_ship_modules_aviation.txt b/src/common/units/equipment/modules/00_ship_modules_aviation.txt index dc6a9b3..1ab9d21 100755 --- a/src/common/units/equipment/modules/00_ship_modules_aviation.txt +++ b/src/common/units/equipment/modules/00_ship_modules_aviation.txt @@ -19,6 +19,7 @@ equipment_modules = { reliability = -0.1 max_organisation = -0.1 surface_detection = 5 + supply_consumption = 0.02 } manpower = 300 #outside the add_stats section for code reasons multiply_stats = { @@ -42,6 +43,7 @@ equipment_modules = { build_cost_ic = 1300 reliability = 0.025 surface_detection = 4 + supply_consumption = 0.015 } manpower = 200 #outside the add_stats section for code reasons multiply_stats = { @@ -65,6 +67,7 @@ equipment_modules = { carrier_size = 2 build_cost_ic = 1000 surface_detection = 4 + supply_consumption = 0.015 } manpower = 200 #outside the add_stats section for code reasons multiply_stats = { @@ -86,6 +89,7 @@ equipment_modules = { carrier_size = 1 build_cost_ic = 500 surface_detection = 2 + supply_consumption = 0.01 } multiply_stats = { naval_speed = -0.025 @@ -104,6 +108,7 @@ equipment_modules = { build_cost_ic = 2000 max_organisation = -0.05 surface_detection = 5 + supply_consumption = 0.025 } manpower = 300 multiply_stats = { @@ -126,6 +131,7 @@ equipment_modules = { reliability = -0.1 max_organisation = -0.1 surface_detection = 2 + supply_consumption = 0.015 } manpower = 125 multiply_stats = { diff --git a/src/common/units/equipment/modules/00_ship_modules_propulsion.txt b/src/common/units/equipment/modules/00_ship_modules_propulsion.txt index d04e3dd..8c624a7 100755 --- a/src/common/units/equipment/modules/00_ship_modules_propulsion.txt +++ b/src/common/units/equipment/modules/00_ship_modules_propulsion.txt @@ -185,7 +185,7 @@ equipment_modules = { } multiply_stats = { - naval_speed = 0.20 + naval_speed = 0.17 naval_range = 0.3 } @@ -209,7 +209,7 @@ equipment_modules = { } multiply_stats = { - naval_speed = 0.25 + naval_speed = 0.22 naval_range = 0.4 } @@ -237,7 +237,7 @@ equipment_modules = { } multiply_stats = { - naval_speed = 0.3 + naval_speed = 0.27 naval_range = 0.5 } diff --git a/src/common/units/equipment/modules/00_ship_modules_protection.txt b/src/common/units/equipment/modules/00_ship_modules_protection.txt index 8e67425..78d4bd0 100755 --- a/src/common/units/equipment/modules/00_ship_modules_protection.txt +++ b/src/common/units/equipment/modules/00_ship_modules_protection.txt @@ -287,7 +287,6 @@ equipment_modules = { } add_stats = { armor_value = 45 - surface_visibility = 10 naval_torpedo_enemy_critical_chance_factor = -0.05 naval_torpedo_damage_reduction_factor = 0.1 reliability = 0.2 @@ -324,7 +323,6 @@ equipment_modules = { } add_stats = { armor_value = 50 - surface_visibility = 12 naval_torpedo_enemy_critical_chance_factor = -0.1 naval_torpedo_damage_reduction_factor = 0.15 reliability = 0.25 diff --git a/src/common/units/equipment/modules/00_ship_modules_role.txt b/src/common/units/equipment/modules/00_ship_modules_role.txt index 7df3616..ca9df11 100755 --- a/src/common/units/equipment/modules/00_ship_modules_role.txt +++ b/src/common/units/equipment/modules/00_ship_modules_role.txt @@ -192,7 +192,7 @@ equipment_modules = { } multiply_stats = { anti_air_attack = 0.1 - build_cost_ic = 0.1 + build_cost_ic = 0.05 } forbid_module_categories = { ship_medium_heavy_battery_triple diff --git a/src/common/units/equipment/ship_hull_carrier.txt b/src/common/units/equipment/ship_hull_carrier.txt index b78cefe..dd77d0f 100755 --- a/src/common/units/equipment/ship_hull_carrier.txt +++ b/src/common/units/equipment/ship_hull_carrier.txt @@ -199,7 +199,7 @@ equipments = { fixed_ship_radar_slot = inherit fixed_ship_engine_slot = { required = yes - allowed_module_categories = { super_heavy_ship_engine heavy_ship_engine carrier_ship_engine } + allowed_module_categories = { heavy_ship_engine carrier_ship_engine } } fixed_ship_secondaries_slot = { required = no diff --git a/src/common/units/equipment/ship_hull_cruiser.txt b/src/common/units/equipment/ship_hull_cruiser.txt index f5ed52c..f662c14 100755 --- a/src/common/units/equipment/ship_hull_cruiser.txt +++ b/src/common/units/equipment/ship_hull_cruiser.txt @@ -472,7 +472,17 @@ equipments = { seaplane_hangar } } - rear_2_custom_slot = rear_1_custom_slot + rear_2_custom_slot = { + required = no + allowed_module_categories = { + ship_anti_air + ship_airplane_launcher + ship_torpedo + ship_medium_heavy_battery_triple + ship_medium_heavy_battery_double + seaplane_hangar + } + } } default_modules = { diff --git a/src/common/units/equipment/ship_hull_heavy.txt b/src/common/units/equipment/ship_hull_heavy.txt index 2af22a6..18bc9ec 100755 --- a/src/common/units/equipment/ship_hull_heavy.txt +++ b/src/common/units/equipment/ship_hull_heavy.txt @@ -758,7 +758,7 @@ equipments = { max_strength = 350 fuel_consumption = 75 reliability = 0.9 - surface_visibility = 42 + surface_visibility = 46 build_cost_ic = 3800 resources = { steel = 4 diff --git a/src/common/units/heavy_cruiser.txt b/src/common/units/heavy_cruiser.txt index 03ebf32..3d08bb1 100755 --- a/src/common/units/heavy_cruiser.txt +++ b/src/common/units/heavy_cruiser.txt @@ -9,7 +9,7 @@ sub_units = { max_organisation = 40 - supply_consumption = 0.13 + supply_consumption = 0.15 critical_parts = { rudder_jammed destroyed_ammo_storage broken_propeller on_fire } critical_part_damage_chance_mult = 1 diff --git a/src/descriptor.mod b/src/descriptor.mod index bece05d..12cda05 100755 --- a/src/descriptor.mod +++ b/src/descriptor.mod @@ -1,4 +1,4 @@ -version="v1.12 - Overlord" +version="v1.13 - Red Cliff" tags={ "Military" "Translation" diff --git a/src/documentation/Guide.md b/src/documentation/Guide.md index 22c25e4..a957aa9 100755 --- a/src/documentation/Guide.md +++ b/src/documentation/Guide.md @@ -159,3 +159,41 @@ The branch of port facilities aims at accelerating building and repairing speed Auxiliary ship branch is centered around the debate over "range or speed". Speed branch is relatively better since it's one of the six dimensions of ship designs and it offers some exclusive modules like raider cruiser. As for fuel branch, its research cost is insignificant with little bonus, making it an irrelevant factor in your game. + +## Naval Battle ## + +### Overview ### + +Speaking of the mechanism of naval combat, it's mostly untouched in this mod, so your experience from vanilla still applies here. If you are not familiar with navy, I'd recommend you to read naval sections of HOI4 official wiki which owns a lot of details of basic concepts and advanced formulas of naval combat. [HOI4 wiki](https://hoi4.paradoxwikis.com/Naval_battle) + +VNR modifies some parts of naval game to make it more intense and realistic, and the following introduction will only include things changed from vanilla. I will assume you know the basic concepts about naval combat such as screen efficiency, positioning and combat duration, otherwise please refer to the link above first. + +### Fleet Composition ### + +The question of fleet composition is based on the concept of screen ratio. This part is identical in VNR and vanilla, which is 1:3. This means a capital ship (heavy ships and carriers) needs at least three screen ships (destroyers and light cruisers, basically anything in the first line of combat) to achieve max screen efficiency. Furthermore, carrier has its own version of screen efficiency that requires not only light ships but also heavy ships. This ratio is 1 to 1. + +For example, let's say you have 1 carrier, then you need at least 1 battleship and 6 destroyers or light cruisers (3 for carrier, 3 for battleship) to get 100% efficiency for every ship. However, this is only the lowest standard for a fleet, because you can't avoid losses of ships in the combat. As a result, this ratio has to be expanded to allow some redundancy, like 1:1.5:8. + +Besides, make sure your fleet has a min speed over 30kn, this is extremely important to strike forces. + +### Sea Supremacy ### + +One of the major roles that navy plays in the game is securing sea supremacy to create opportunity for a naval invasion. Compared to vanilla, supremacy factor of different missions are changed. Among them, the factor of convoy raiding is greatly nerfed, meaning even though you have twice the ships in convoy raiding, they will lose in securing sea supremacy against a smaller strike force. The best way to gain control of a piece of waters is by naval invasion support or strike force. + +Type of ship also affects efficiency in this area. Decent ships are required in the action, that means you can't secure the sea just with submarines. + +### Combat Duration ### + +To simulate carrier's capability to send over the horizon strikes, the duration of combat is made longer in the mod, but I still kept it under control so that other ships still hold a place in navy. Carrier can send air strikes every 2-3 hour (based on your sortie efficiency) in different squadron size (based on carrier traffic and some other factors). 20 hours after the battle begins, fleet will have a chance to retreat both automatically and manually. Only 22 hours into the battle, battleship got to fire its first salvo, while light ships still have to wait to the 30th hour to fire. + +### Positioning ### + +Positioning is typically used to measure how successful the fleet formation is in real life, which is a very important element in the era of ship of line. In the game, it is a factor applied to screen efficiency. Bad positioning may lead to degradation of screen efficiency. In that case, the preferred screen ratio is no longer 1:1:3, you will need more ships to achieve max screen efficiency. + +Positioning is affected by several factors including relative size of fleet, speed, detection, etc. To achieve good positioning, make sure to have fast ships with good detection, and avoid maneuvering a super massive fleet around. + +### Supply Consumption ### + +Ever since the supply system was added in NSB, navy will also be influenced by port facilities. In vanilla, you rarely feel the consequence of running out of supply in naval combat because ships' supply consumption is too low compared to how much a naval base can provide. To begin with, don't confuse supply consumption with fuel consumption, they are different but will cause similar penalties on your fleet. Fuel is only consumed when your fleet is in action, but supply is a static resource that you can't store. + +In the mod, supply consumption of ships are greatly increased, especially on capital ships. This has made strategic islands and frontline engineering corps far more important in simulating the Pacific War. Take US as an example, a large fleet making a sortie from the Midway will definitely suffer heavy attrition during maneuvering and combat. Instead, launching attacks from Hawaii or Australia is a wiser choice. \ No newline at end of file diff --git a/src/documentation/Modding_Tutorial.md b/src/documentation/Modding_Tutorial.md index 089e529..013997d 100755 --- a/src/documentation/Modding_Tutorial.md +++ b/src/documentation/Modding_Tutorial.md @@ -13,7 +13,7 @@ Hi there, this is MrPunk, in this file I will try to explain everything about VN ### Common ### -Common is where the fundamental materials of the game are stored, usually it includes technology, national focus, decisions and much more. +Common is where the fundamental materials of the game are stored, usually it includes technology, national focus, decisions and much more. The files in this folder will be loaded at game starts (in the loading screen), so if the game never made it to the menu, more likely it's caused by bugs in Common. @@ -134,9 +134,9 @@ The texts of events, technologies, etc. ## Post-Loading ## -The most interesting feature of VNR is the post-loading mechanism. For so long, there are many navy mods out there, but they all have to change the files within history/countries, for that's where tank/air/ship designs are defined. In instance of a large naval overhaul mod, you have to modify these files to make new modules and new hulls working. It's very common on mods such as NRM. +The most interesting feature of VNR is the post-loading mechanism. For so long, there are many navy mods out there, but they all have to change the files within history/countries, for that's where tank/air/ship designs are defined. In instance of a large naval overhaul mod, you have to modify these files to make new modules and new hulls work. It's very common on mods such as NRM. -Despite being the most sraightforward approach, it will bring harms to compatibility and robustness throughout basegame updates. The country history files store more than starting variants, it also has leaders, historical events, political status and national spirits. Overwriting such files is a complete disaster when it comes to compatibility. Even a minor fix on the country's starting stability will be incompatible, depending on the loading order, it may break its variants too. +Despite being the most sraightforward approach, it will bring harms to compatibility and robustness throughout basegame updates. The country history files store more than starting variants, they also have leaders, historical events, political status and national spirits. Overwriting such files is a complete disaster when it comes to compatibility. Even a minor fix on the country's starting stability will be incompatible, depending on the loading order, it may break its variants too. 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. @@ -165,7 +165,7 @@ Reference files: 2. **Ship role system** - The ship role system is what creates more variants. Before that, most naval mods simply add a lot of hulls to represent new type of ships, but they in fact are not so different from the base platform. For example, destroyer leader, destroyer and escort destroyer. Offering different bonus, the ship role also allow or disallow certain categories of modules. + The ship role system is what creates more variants. Before that, most naval mods simply add a lot of hulls to represent new type of ships, but they in fact are not so different from the base platform. For example, destroyer leader, destroyer and escort destroyer. Offering different bonus, the ship role also allows or disallows certain categories of modules. 3. **Dynamic title for ship designer** diff --git a/src/events/00_navy_rework.txt b/src/events/00_navy_rework.txt index 8c8d404..25b07b4 100755 --- a/src/events/00_navy_rework.txt +++ b/src/events/00_navy_rework.txt @@ -8,6 +8,9 @@ country_event = { hidden = yes is_triggered_only = yes immediate = { + # delete all ships first just in case + delete_starting_naval_oob = yes + add_starting_techs = yes makeup_starting_techs = yes # set shipyard output boost diff --git a/src/events/ai_ships.txt b/src/events/ai_ships.txt index 76acf22..cf6af89 100755 --- a/src/events/ai_ships.txt +++ b/src/events/ai_ships.txt @@ -242,6 +242,44 @@ country_event = { } } +# SOV AI template 1940 +country_event = { + id = ai_ships.12 + hidden = yes + fire_only_once = yes + mean_time_to_happen = { days = 1 } + trigger = { + tag = SOV + is_ai = yes + NOT = { has_country_flag = SOV_SHIPS_1940 } + date > 1940.2.1 + has_game_rule = { rule = allow_ai_tech_auto_unlock option = FREE } + } + immediate = { + SOV_AI_variants_1940 = yes + set_country_flag = SOV_SHIPS_1940 + } +} + +# SOV AI template 1943 +country_event = { + id = ai_ships.13 + hidden = yes + fire_only_once = yes + mean_time_to_happen = { days = 1 } + trigger = { + tag = SOV + is_ai = yes + NOT = { has_country_flag = SOV_SHIPS_1943 } + date > 1943.2.1 + has_game_rule = { rule = allow_ai_tech_auto_unlock option = FREE } + } + immediate = { + SOV_AI_variants_1943 = yes + set_country_flag = SOV_SHIPS_1943 + } +} + # unlock some naval techs for major powers in 1940 country_event = { id = ai_ships.101 diff --git a/src/gfx/interface/equipmentdesigner/graphic_db/00_generic_icons.txt b/src/gfx/interface/equipmentdesigner/graphic_db/00_generic_icons.txt index 76ed201..315053e 100755 --- a/src/gfx/interface/equipmentdesigner/graphic_db/00_generic_icons.txt +++ b/src/gfx/interface/equipmentdesigner/graphic_db/00_generic_icons.txt @@ -1,32 +1,12 @@ default = { vnr_ship_hull_light_1 = { pool = { - weight = 2 icons = { GFX_vnr_ship_hull_light_1_medium } } } vnr_ship_hull_light_2 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_light_2_medium - } - } - pool = { - icons = { - GFX_vnr_ship_hull_light_1_medium - } - } - } - vnr_ship_hull_light_3 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_light_3_medium - } - } pool = { icons = { GFX_vnr_ship_hull_light_2_medium @@ -34,13 +14,7 @@ default = { } } } - vnr_ship_hull_light_4 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_light_4_medium - } - } + vnr_ship_hull_light_3 = { pool = { icons = { GFX_vnr_ship_hull_light_3_medium @@ -49,13 +23,7 @@ default = { } } } - vnr_ship_hull_light_5 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_light_5_medium - } - } + vnr_ship_hull_light_4 = { pool = { icons = { GFX_vnr_ship_hull_light_4_medium @@ -65,13 +33,7 @@ default = { } } } - vnr_ship_hull_light_6 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_light_6_medium - } - } + vnr_ship_hull_light_5 = { pool = { icons = { GFX_vnr_ship_hull_light_5_medium @@ -82,137 +44,113 @@ default = { } } } + vnr_ship_hull_light_6 = { + pool = { + icons = { + GFX_vnr_ship_hull_light_6_medium + GFX_vnr_ship_hull_light_5_medium + GFX_vnr_ship_hull_light_4_medium + GFX_vnr_ship_hull_light_3_medium + GFX_vnr_ship_hull_light_2_medium + GFX_vnr_ship_hull_light_1_medium + } + } + } vnr_ship_hull_cruiser_1 = { pool = { - weight = 2 icons = { - GFX_vnr_ship_hull_cruiser_1_capital_medium GFX_vnr_ship_hull_cruiser_1_medium + GFX_vnr_ship_hull_cruiser_1_capital_medium } } } vnr_ship_hull_cruiser_2 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_cruiser_2_capital_medium - GFX_vnr_ship_hull_cruiser_2_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_cruiser_1_capital_medium + GFX_vnr_ship_hull_cruiser_2_medium + GFX_vnr_ship_hull_cruiser_2_capital_medium GFX_vnr_ship_hull_cruiser_1_medium + GFX_vnr_ship_hull_cruiser_1_capital_medium } } } vnr_ship_hull_cruiser_3 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_cruiser_3_capital_medium - GFX_vnr_ship_hull_cruiser_3_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_cruiser_2_capital_medium + GFX_vnr_ship_hull_cruiser_3_medium + GFX_vnr_ship_hull_cruiser_3_capital_medium GFX_vnr_ship_hull_cruiser_2_medium - GFX_vnr_ship_hull_cruiser_1_capital_medium + GFX_vnr_ship_hull_cruiser_2_capital_medium GFX_vnr_ship_hull_cruiser_1_medium + GFX_vnr_ship_hull_cruiser_1_capital_medium } } } vnr_ship_hull_cruiser_4 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_cruiser_4_capital_medium - GFX_vnr_ship_hull_cruiser_4_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_cruiser_3_capital_medium + GFX_vnr_ship_hull_cruiser_4_medium + GFX_vnr_ship_hull_cruiser_4_capital_medium GFX_vnr_ship_hull_cruiser_3_medium - GFX_vnr_ship_hull_cruiser_2_capital_medium + GFX_vnr_ship_hull_cruiser_3_capital_medium GFX_vnr_ship_hull_cruiser_2_medium - GFX_vnr_ship_hull_cruiser_1_capital_medium + GFX_vnr_ship_hull_cruiser_2_capital_medium GFX_vnr_ship_hull_cruiser_1_medium + GFX_vnr_ship_hull_cruiser_1_capital_medium } } } vnr_ship_hull_cruiser_5 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_cruiser_5_capital_medium - GFX_vnr_ship_hull_cruiser_5_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_cruiser_4_capital_medium + GFX_vnr_ship_hull_cruiser_5_medium + GFX_vnr_ship_hull_cruiser_5_capital_medium GFX_vnr_ship_hull_cruiser_4_medium - GFX_vnr_ship_hull_cruiser_3_capital_medium + GFX_vnr_ship_hull_cruiser_4_capital_medium GFX_vnr_ship_hull_cruiser_3_medium - GFX_vnr_ship_hull_cruiser_2_capital_medium + GFX_vnr_ship_hull_cruiser_3_capital_medium GFX_vnr_ship_hull_cruiser_2_medium - GFX_vnr_ship_hull_cruiser_1_capital_medium + GFX_vnr_ship_hull_cruiser_2_capital_medium GFX_vnr_ship_hull_cruiser_1_medium + GFX_vnr_ship_hull_cruiser_1_capital_medium } } } vnr_ship_hull_cruiser_6 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_cruiser_6_capital_medium - GFX_vnr_ship_hull_cruiser_6_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_cruiser_5_capital_medium + GFX_vnr_ship_hull_cruiser_6_medium + GFX_vnr_ship_hull_cruiser_6_capital_medium GFX_vnr_ship_hull_cruiser_5_medium - GFX_vnr_ship_hull_cruiser_4_capital_medium + GFX_vnr_ship_hull_cruiser_5_capital_medium GFX_vnr_ship_hull_cruiser_4_medium - GFX_vnr_ship_hull_cruiser_3_capital_medium + GFX_vnr_ship_hull_cruiser_4_capital_medium GFX_vnr_ship_hull_cruiser_3_medium - GFX_vnr_ship_hull_cruiser_2_capital_medium + GFX_vnr_ship_hull_cruiser_3_capital_medium GFX_vnr_ship_hull_cruiser_2_medium - GFX_vnr_ship_hull_cruiser_1_capital_medium + GFX_vnr_ship_hull_cruiser_2_capital_medium GFX_vnr_ship_hull_cruiser_1_medium + GFX_vnr_ship_hull_cruiser_1_capital_medium } } } vnr_ship_hull_cruiser_coastal_defense_ship = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_cruiser_coastal_defense_ship_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_cruiser_1_capital_medium + GFX_vnr_ship_hull_cruiser_coastal_defense_ship_medium GFX_vnr_ship_hull_cruiser_1_medium + GFX_vnr_ship_hull_cruiser_1_capital_medium } } } vnr_ship_hull_cruiser_panzerschiff = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_cruiser_panzerschiff_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_cruiser_2_capital_medium + GFX_vnr_ship_hull_cruiser_panzerschiff_medium GFX_vnr_ship_hull_cruiser_2_medium - GFX_vnr_ship_hull_cruiser_1_capital_medium + GFX_vnr_ship_hull_cruiser_2_capital_medium GFX_vnr_ship_hull_cruiser_1_medium + GFX_vnr_ship_hull_cruiser_1_capital_medium } } } @@ -238,96 +176,60 @@ default = { } } vnr_ship_hull_heavy_2 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_heavy_2_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_heavy_2_medium GFX_vnr_ship_hull_heavy_1_medium } } } vnr_ship_hull_heavy_3 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_heavy_3_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_heavy_3_medium + GFX_vnr_ship_hull_heavy_2_medium GFX_vnr_ship_hull_heavy_1_medium - GFX_vnr_ship_hull_heavy_2_medium } } } vnr_ship_hull_heavy_4 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_heavy_4_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_heavy_1_medium - GFX_vnr_ship_hull_heavy_2_medium + GFX_vnr_ship_hull_heavy_4_medium GFX_vnr_ship_hull_heavy_3_medium + GFX_vnr_ship_hull_heavy_2_medium + GFX_vnr_ship_hull_heavy_1_medium } } } vnr_ship_hull_heavy_5 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_heavy_5_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_heavy_1_medium - GFX_vnr_ship_hull_heavy_2_medium - GFX_vnr_ship_hull_heavy_3_medium + GFX_vnr_ship_hull_heavy_5_medium GFX_vnr_ship_hull_heavy_4_medium + GFX_vnr_ship_hull_heavy_3_medium + GFX_vnr_ship_hull_heavy_2_medium + GFX_vnr_ship_hull_heavy_1_medium } } } vnr_ship_hull_carrier_conversion_ca = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_carrier_conversion_ca_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_carrier_conversion_ca_medium GFX_vnr_ship_hull_carrier_conversion_bb_medium } } } vnr_ship_hull_carrier_conversion_bb = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_carrier_conversion_bb_medium - } - } pool = { icons = { GFX_vnr_ship_hull_carrier_conversion_ca_medium + GFX_vnr_ship_hull_carrier_conversion_bb_medium } } } vnr_ship_hull_carrier_1 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_carrier_1_medium - } - } pool = { icons = { GFX_vnr_ship_hull_carrier_1_medium @@ -337,63 +239,43 @@ default = { } } vnr_ship_hull_carrier_2 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_carrier_2_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_carrier_2_medium + GFX_vnr_ship_hull_carrier_1_medium GFX_vnr_ship_hull_carrier_conversion_ca_medium GFX_vnr_ship_hull_carrier_conversion_bb_medium - GFX_vnr_ship_hull_carrier_1_medium } } } vnr_ship_hull_carrier_3 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_carrier_3_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_carrier_3_medium + GFX_vnr_ship_hull_carrier_2_medium + GFX_vnr_ship_hull_carrier_1_medium GFX_vnr_ship_hull_carrier_conversion_ca_medium GFX_vnr_ship_hull_carrier_conversion_bb_medium - GFX_vnr_ship_hull_carrier_1_medium - GFX_vnr_ship_hull_carrier_2_medium } } } vnr_ship_hull_escort_carrier = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_escort_carrier_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_escort_carrier_medium GFX_vnr_ship_hull_carrier_conversion_ca_medium } } } vnr_ship_hull_super_carrier = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_super_carrier_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_super_carrier_medium + GFX_vnr_ship_hull_carrier_3_medium + GFX_vnr_ship_hull_carrier_2_medium + GFX_vnr_ship_hull_carrier_1_medium GFX_vnr_ship_hull_carrier_conversion_ca_medium GFX_vnr_ship_hull_carrier_conversion_bb_medium - GFX_vnr_ship_hull_carrier_1_medium - GFX_vnr_ship_hull_carrier_2_medium - GFX_vnr_ship_hull_carrier_3_medium } } } @@ -405,14 +287,9 @@ default = { } } vnr_ship_hull_cruiser_submarine = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_cruiser_submarine_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_cruiser_submarine_medium GFX_vnr_ship_hull_submarine_1_medium GFX_vnr_ship_hull_submarine_2_medium GFX_vnr_ship_hull_submarine_3_medium @@ -427,60 +304,40 @@ default = { } } vnr_ship_hull_submarine_2 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_submarine_2_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_submarine_2_medium GFX_vnr_ship_hull_submarine_1_medium } } } vnr_ship_hull_submarine_3 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_submarine_3_medium - } - } pool = { icons = { + GFX_vnr_ship_hull_submarine_3_medium + GFX_vnr_ship_hull_submarine_2_medium GFX_vnr_ship_hull_submarine_1_medium - GFX_vnr_ship_hull_submarine_2_medium } } } vnr_ship_hull_submarine_4 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_submarine_4_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_submarine_1_medium - GFX_vnr_ship_hull_submarine_2_medium + GFX_vnr_ship_hull_submarine_4_medium GFX_vnr_ship_hull_submarine_3_medium + GFX_vnr_ship_hull_submarine_2_medium + GFX_vnr_ship_hull_submarine_1_medium } } } vnr_ship_hull_submarine_5 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_submarine_5_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_submarine_1_medium - GFX_vnr_ship_hull_submarine_2_medium - GFX_vnr_ship_hull_submarine_3_medium + GFX_vnr_ship_hull_submarine_5_medium GFX_vnr_ship_hull_submarine_4_medium + GFX_vnr_ship_hull_submarine_3_medium + GFX_vnr_ship_hull_submarine_2_medium + GFX_vnr_ship_hull_submarine_1_medium } } } @@ -492,30 +349,20 @@ default = { } } vnr_ship_hull_civilian_2 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_civilian_2_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_civilian_1_medium + GFX_vnr_ship_hull_civilian_2_medium GFX_vnr_ship_hull_civilian_3_medium + GFX_vnr_ship_hull_civilian_1_medium } } } vnr_ship_hull_civilian_3 = { - pool = { - weight = 2 - icons = { - GFX_vnr_ship_hull_civilian_3_medium - } - } pool = { icons = { - GFX_vnr_ship_hull_civilian_1_medium + GFX_vnr_ship_hull_civilian_3_medium GFX_vnr_ship_hull_civilian_2_medium + GFX_vnr_ship_hull_civilian_1_medium } } } diff --git a/src/gfx/interface/equipmentdesigner/graphic_db/00_ship_icons.txt b/src/gfx/interface/equipmentdesigner/graphic_db/00_ship_icons.txt index 3bee8c4..288a491 100755 --- a/src/gfx/interface/equipmentdesigner/graphic_db/00_ship_icons.txt +++ b/src/gfx/interface/equipmentdesigner/graphic_db/00_ship_icons.txt @@ -51,6 +51,15 @@ ARG = { } } + } + + vnr_ship_hull_cruiser_coastal_defense_ship = { + pool = { + weight = 5 + icons = { + GFX_ARG_vnr_ship_hull_cruiser_coastal_defense_ship_medium + } + } } vnr_ship_hull_heavy_1 = { @@ -1559,6 +1568,28 @@ CHL = { } } + pool = { + icons = { + "gfx/interface/technologies/South_America/CHL_light_cruiser_Chacabuco.png" + } + } + + } + + vnr_ship_hull_cruiser_coastal_defense_ship = { + pool = { + weight = 5 + icons = { + GFX_CHL_vnr_ship_hull_cruiser_coastal_defense_ship_medium + } + } + + pool = { + icons = { + "gfx/interface/technologies/South_America/CHL_light_cruiser_Chacabuco.png" + } + } + } vnr_ship_hull_pre_dreadnought = { @@ -1880,6 +1911,7 @@ ENG = { pool = { icons = { "gfx/interface/technologies/England/ENG_battleship_Renown.png" + "gfx/interface/technologies/England/ENG_battleship_Revenge.png" } } @@ -1898,6 +1930,7 @@ ENG = { "gfx/interface/technologies/England/ENG_battleship_Admiral.png" GFX_ENG_vnr_ship_hull_heavy_1_medium "gfx/interface/technologies/England/ENG_battleship_Renown.png" + "gfx/interface/technologies/England/ENG_battleship_Revenge.png" } } @@ -1917,6 +1950,7 @@ ENG = { GFX_ENG_vnr_ship_hull_heavy_2_medium "gfx/interface/technologies/England/ENG_battleship_Admiral.png" "gfx/interface/technologies/England/ENG_battleship_Renown.png" + "gfx/interface/technologies/England/ENG_battleship_Revenge.png" } } @@ -1937,6 +1971,7 @@ ENG = { GFX_ENG_vnr_ship_hull_heavy_3_medium "gfx/interface/technologies/England/ENG_battleship_Admiral.png" "gfx/interface/technologies/England/ENG_battleship_Renown.png" + "gfx/interface/technologies/England/ENG_battleship_Revenge.png" } } @@ -1958,6 +1993,7 @@ ENG = { GFX_ENG_vnr_ship_hull_heavy_4_medium "gfx/interface/technologies/England/ENG_battleship_Admiral.png" "gfx/interface/technologies/England/ENG_battleship_Renown.png" + "gfx/interface/technologies/England/ENG_battleship_Revenge.png" } } @@ -4176,6 +4212,7 @@ ITA = { icons = { GFX_ITA_vnr_ship_hull_cruiser_1_medium GFX_ITA_vnr_ship_hull_cruiser_1_capital_medium + "gfx/interface/technologies/Italy/ITA_heavy_cruiser_Garibaldi.png" } } diff --git a/src/gfx/interface/navalcombat/ships/battleship_0.dds b/src/gfx/interface/navalcombat/ships/battleship_0.dds index 692cc95326d311e6f0746797cc8c17a710725753..3311905a62a6a63e31c96e8a17ee845b0a05c588 100755 GIT binary patch literal 15188 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 literal 14840 zcmeI32b5MtnuePwm@qKIkZhu4kQ}u^5DYW|O%M?TB&?vINLDx?@r-*=5W%o2VFd#$ z$|yJrq5>m=jyRw$3JL;B&Pn1v&z)O+e*bCD%DC>XNBj6%bt`<~{l2PuZ{43JO)`o- zkdl&;?~?2(ms3swEwiVjWTVUje#~Esc5SLVt{7-!g}-9a|IenR{QW<#&gQwKVbq%V zzq4o0rkp-~IumEkoJmPW=nw5)pE`9aOCT>>j9io#g3CdnAw!0|aK{~YJa0X2v(GWv zl&j1jKa@dlV(EC09h?U)0GA#)a^$Lp4I93C;J|^xT>suSa1n4!PT=@3FE{mIR}tzZ zVx&?Q1ebukz?46 z_js3cxkuhV@J?H{ABtm;8RREkC+ZJ2St2h&Vq4MCuv$pF4 z*9CyO11}LL!T(SO*^HBqz=<3NUgTE!#pPV?sh5n~GJWGZlAl#9)fMz4>kaLeq0bU| zKSw_4mun>O<{nUL<;s;!?z-!)fz+=AsX%{?t83N$!Z^DJ$Vv7rYz@5G?>Oh>2gbj2 zvu4f4Y}vA<8uc;<4<4-Z)?06N+P80?x|FLua;I(TQg``6g$kWb1Z|B$W#B${F~}YB zol&g4!<^eYv}xg1xPbGfHpF>ZI9bBvKTX`Aw* z{0V!N`jT@dTql-EcKy@&6l8M$PuaF@TgWGU)Xt0N&YgSXM<0FE`GXHW=sI!Y#2ynS zOn7j_h!HcNe)?&7?E2n&@7=a}^X8iwdlfLpjG_C2Tt?3i+8X?$O}~|Y9&5bhm@#8+ zdhNB>TC(=quUN67Q-=;6ULQYx{PPPIEExL9C!e(Y_~Vb$&$-tX3%nSDc_p+Pg z9O_T~-nf1vb?uRN*SuVdbDsCjH{YZP=BhW!CvDO;ZPZq6)^>f+7k$z3(zUJQ&?w04c5u?%tjpU5Xek3Rb7za2e#v^{NY zK|6ft#kf&mtIY6 z*OYnQSB;f+Wiy7xGOHLT$3Kj*bZ+RU9`ZmNg*Io}9p;7ciPxc?Aj5h3e;FtSYJ%qA zwi72#^n3NySEmddIB+W0?n$=a{KXevj0$mN&tE`W8Yl z#=@8w8~SPiISBid{uxW{Ow5BQcgz9(q0ehM5y?3d`kbHZ@ZrPqmDhR<+oL{8;}G&j zzszm@bS>$7Dv-~}NACB-yL9QYBlu}KZrr$~^bZDo!M(iOJQezT^ysmSw%*KZb@Jp% z*N?usj^$1M-A~*%jDuwjP#0Xoy(9g)>#qAVbK7$5+H3-<1Lp?5^hy8qL;L>#$^zfB z8iGdPYET8ZN9dni$eTRLwe!pu=czk!US+Pe*SO15SeKUS4(m;uv`rgt)@E(j2d=LH z%GI|-U-exMoU4u!awJ#Od&^zmQBG;Q7s&BoIS+l7#)Nsp>B|7d%9y1BV`wamslMy0 zHtS2`-Wc*hpYp~zW8HSSirOhJ8a{k@%~h*b$+Mg!!aQ?b$z>`i1zf{d0ev?na&ZH2 zPaVwtdRC)GjSeRIQma<2!|d-f=pP3ruvX@Vex4aWq-{L!(oeFEl#vGN17jxl>71i1 zT=PJ=a7Mv9XSi^-L74`cX;*~H+}l_#V_&q)mLBjq^~wG_CK~r9Z~z zN}w;s%(1D!vF;`En8=g&9eI&^<7+Gu=P6V9&NUXs#B1eggYs)@n>K2zHfy^+(AP2c zsU7tUebr~`=9(PHg`A|xkz7$9FL!}QIi+m^7$?_q9{MbeiLs&IbuG`v%-9)2V|f*j z4`ZAPjJbZ91Bp3tskvg#(5}CEfw`2)(emZXTamkRq~DeS6{%MR#z);vf%`yvpiSMt zonQcd&g$H`^Y#`kTI{V*p~82GzF2?bjW=Gw&pGV5^LdVp_F~(4r&%>)#*Fu-PMx}z z_mdadTU}q>c}5(=xQS0Z@x-!X#fqKbd0;)ynUm=o*|%@s57w_=KZmi8!0DP7UU(ss z*U_U#&u5JGX{&Zu2Kr2+b?8oiX*TIKm@~BLv$+;>NiHh#e%YVWb#Mb{ z4q5K2zHfy^+=!-t-n?CBRKI^+2$OZF#CY>ioawTVS7kHFYxs_wN4((Z$#>$u(J7Z`p zjj6FU#&N9s8+-J6PtX^0qB$@}n#4Jy|K^ZfnOl`WlLsGs@Fn)x@vOlISRbQ#&zz0y zCwb?6?%j9aMg5|;CQX{O?(Vzq-V6_0lWnX~qsC!4SyZA#iBrja;hObvsA|=!``CvM zjvYJpi`3NA)Ap4wU;ZdKR=RZQ6OQTCtJk)XBS(H&y?XWi)v8t7Td`urWA*FTKUBAF z-94pBl{)UaEmyAG$;y>09|*D;cZ3+7zUii$4zPxwVXeNhaN)wgu!jCbjNZnF*EnAs zg|B^izU&H59VlCKEk8E`Il2y*Z}s7{F=cV!y-F01+roX=vCeUBb7jRcyK>!EUFuY~ zHfW1BX`41`t2PJw^+libO&|4DpY>f1U#18+&uWTrelh4Rgd?F=z1AJ;)p~m)!pwk=GNoJ3T#p$36GlvvKg?!5g`+ zZ*SVP>E23}Djgj(XwaA3D?f*ay{%fc+SRgU%iYO#G;ZAZ0PiYW3KuS%d7hIzCh;0R zP8KOrB-&3B+ka{ueot_&GxyqSuicw0>*}ko-pPI9ua7_pZ)rM{q@%)dDiR%H|{lZC2HGdpJN>B9Oo)SS;|zlI@Fb{Uz@Z|8a|?T z>5q|PjEt2rOCE1*jj^#d=EmL}Fc-`TbHf}lSIil62W}bxbICou^{iR5-c6SKOTJD^ zOFNX+KFPXwtsihN5Uk?^aB?satm}jF$J(3=H}3E5SE7Y&_BkeTj&)@Px$00?GKbov zZOQGwd)=lw_nD$pw->Fbz8%G>)(Ej(04iDH*U+@wr%_R znl)>DCimU{8tb;%_Zv@t=gFKgcg!JkiG3>iK4+N>&a0x|i}2i#!r1J<^QyuRJn+Cw zO5Y7H1UZPRNj|8zbHtbXE-_Iz6+6Giua;Al%8LB{+d%+lt0v` zZ2NP@vI;6&9kh8Ko%uUFZHVFc96(zO#kPCis4v;IH~5(_C(QjGH^H~$an8qvU|Vi{ zD#-g^1>U!NQdXj`1iA_U{m<=uWvQQf9?lgCa?VhG-n@Bt@_WrzoN;-E`x%!_ zx%%pyWc&~}$>TU{RiE+5$G7WrzBhK6IdkU2lpXk8MW@d``)m+rGHLXi59XE}95a}Z}X zFY_&SIoF*yR~YDhgWoufWuE5_>UHcNfahAJh*M3@D~C|81Fis3zEhezm7ja=xuxK3 zzVrDWrJw3g?rUYAw#D`-Ls|Y_b%;8smjdckw>IR{CT-J3ZKbV~w(EnwaP4|`tUl^% zv?s(m#i)dBki4;~J5}%|HC`!?CQX{`lUTJn8+)E3eGqw_`7n13uR(R~_o|OjTRuxG4T! zM5(QL$#>U<`DdS;M7~oxx3sd9scdzqOP%W02F5hfCT-J3ZPjLN_gY`{iE*A`>!ZGE zo4!Z($%))>?HVZf>8GEzq|L<{)^8ToOQ3~_jCWrdCd!)k-x#Y;kV3N^Uy;Nt>-sxt9ZWHUZzZ$Q~ZYM zY5WKo718avyz4hVb@{0R?5n}p2B5ifm7y$UDq9`uQm4ALL0hy* z+q6+zwOQMRzUY&_>7%~tv%brLT*!&spx>C);>`SA&f34^Tz_-#-o1BH-^x94f6baT zk1Lb2x05_KeDB-t6<1v0+3pE#@VkNFT=oQKw5K@VJ#9bdYiB)UvroI8efHVU+O%nN zgzpQ7Irsa7-+C?O4Dcm>`#PO(1W)q3`w;fXTW#yM+2))nP?j>4tqygmQ{CF2 zE%pg*)K>cgPnPf1A`M2gc6KGv2^of}dv^G-z;?y||08 z9{V5p8pZ`b6J>?ApQDr;IU;{svt~E(&bR&g>#yJWe+Bh(&bNvE^>$(X|AS3(BS)j0=FsO}=RK+qd(|N1T>#E^oa3G6eB~%lxyo0M`qZm_?a&_X z5zX*r5Z`4+vk%OgJ$v?IzE^MZ8xr3WKj2+v&x@JqkWRfF?LF*woa3G6eB~%lxyo0M`qZm_?a-b#-+XhLzpLQir5&nM zr_N#ajw6&u_||mPI^~g2S{HoBI8?7*y~F%lk$t>#?BX|O+u(wt<2J8tx8HGLPNJMx z-cj{fSFifDLwn#WdPYEIS@!!o$bl++dnpC4b-9n$fam($16uMdTbT7w*FMKM);Vw< z*KtLb~X%L#U073*rN{}ibD6Gu?cjs=_$DLf-y*$@?EVrlaz0cnNy}$FFbH1BK zjoy8xZ$LmmP>H+&rBtpK?aCVvkVj>p=zjja`S<4k1>ZBG`c(Aq8Q1@F0s{W;KUz6~ zCI0H_b^b3WCnvxk^hQYI0DsbzD_8QIKYu?Lj(;gSXXP`o{Povg zi)rrHCQO*Hs&?(#KSP5C4a#iUvgPrfJ$uH=_S(wxKau0rt5?sQI(2I2vuDqiMAlb% zPYfPK8!X+J2IrQ~8h_dmmv+R;Uv~H_7yY5fUp`&CcCCQcwD7fS*UpNHidujC`0?@N zh^KzAWF2AAkID2JgD6RjXbL4i5f>dXpwiE(Hb#-qJeV zT|TrT-|0_HO^slUCYODc_r%~)w80Wg!8W&iCKkkm*bpOPMa=wRi$C(vA3FTui|Md@ z4h;>>c=5#-&!?xSPX$9KX}zmu?W0GJzM>dZGWkbY5?}Th%`jnhzYSFM*hraZ16`u z`l`dQ@U;|P^&l{sIdkUH1q&7|K5^p2IAQ$JPe1)ME-5K#>ZVPbrhunt@~&OGrhfnZ z_Y)=aDr+F*s||OP=ULPG+>pFwk8$(n&DIw#TzH1PwDut(>3H*24Rdzng8ojv0Pn38r8R#$XNRU{4H)1u-Eu#E4i~+qWI{)v`;KDwP8jE?n3} ztraaf%jo&2bn@iMn(lLY4S(gc=XnlW?L0{CYR}Mx zJu^AUnNj)rpX9Llnwxx;DpfAPPd>8`zni@2@udU{)={tlBd`K9umeLUriQcO&KPSp zF(Ed@h**IGu_K1W(ii)3lYQ76H96s%N0d**^>-0bkmw0v?w9wr*{mEW&fW_Q7B61> zwc*Fw0Cu)M6f9UU2ck_se6)ENLhx&C`AYYuBXpLD-o1NwGp(7eRldL)gEpJ(dw;@)Q4@dmT^tTD5AOhDMDVHJ#jNZ_d2|ee6X%VuBHZ}4P?@?B>w)|1!2NP_ zQAc6<#f}|2rt=O1H^Yn)%)m$859_;oMhdrcj;-LCVh{Ar+gwcre=v4L8H2eG!&c2gJj*5YYJUc)c>S49me-MQWh z9`Sc^QwTcHg-*$KVh&^-Ho9!V9!H;7`!!c>@wsrIq-|vVU81D1=dx#v?ik0hAJYEt3+CSP&s#U8d zE?v5G(l_6HGfB_nMoRf77T@qeR|S z4H`7q3MSxX7+Eem`xvwQcCI6=6TA!c{bJUfIdi6BllFC!nGYMa-hb##bl zuE|rHyx#q>5IT^BY+h``7N>30>38}-9T}&u)Ug{Zzyxf-2zf9AJ1_)a!<8~O?CEpn zIc;J`42dN%CAP$vSTmo+-&=m?n=tUhmbV%lIv3~vf7a{H%D_5?Z^W>9Hy3S*q53n0z9~Bf7 z@6Yc^f3kxyx57X>G0IenA0}w!#41wZnl|UmTT5F zJZal}PK?kGj}u3ed5|)%nj@Jv&vTsoAYS%NP|}9Fbm@}9{g(UP8z!82|3YE(F$RzEd+I>9%}eQ=+tV)3ai^TO zy6Lde8=pV=Z4O^ba*rG&7s*L-lN=>i$ysuj9443feo3yA|4%*j)a~bq=gP>Qd4Kr# zucU*#Gi=CBaBteQ=|S$bz!aR7!(&9{+%$$h#^8Y$8Dzo5^7>y1BY*hut7659m)!TV zu6(9WA7k*q`$yU751%bwl>X3nFCE_Uliamj<_W=O)NH`Cqk1^xJXOlPEP5<5I_O#J_Gg95tn#%zbr z6Fb`Iu`zh9ZThj<;zf+{hged#e&#Vhoq1q&N^-{X$1|tUXE}u~=EOE5+Q^c-4(cr;@XHlnr{P^*+h7B7wbLh~avmxsAL)2{y8R{nMY*TmlyGoN| zUk^>5Jb5N$Iw_4`c3{hGa`u~E^dW-|-4$^sXui1QoHF>uxRJhP%rWZIr_Wp?{jPZ~ z6doQP15sxTUUZlblwf3Y+uoUPI)*cK;qKZ)V;{VRtLZ@}x|zdsUYpx&GkYn`kNff2 z<~E!SKh2#RPIq8#GKMogSp3Wf!`bvwGUo1|?QB~vF^*2t@60nWq91Hb2X%atSO-Pc5G&8s?7zM}Ehbcfo6u?HcOr}QLr z8tESWZ;(^B^-(gn@nR3Uu-9aqyru&mAoG*&icZoU^SeeF85u2&tPft~nTI)TUh@My zh3o(O+Zp;8Gd@a_H;mD3^VqzU)<@~ImAd(1ewm-1zSCwNo7ZpyLr-2$9mY%PwBPE6 zfyv!(Y4J08>2HD`$Q#D$^O~D(tOLns`_ApHJa*#P9p4k}8E}>@d%PPEw;}e=iq-RL zHpaR3Fl!UmBk3r!6$rk^5$0ehTVhokN(H!_nap&EuoOUOHW*~WXY<`Lz&OT zC&UNu&Dhab1}YBHKLBZxZxvvi!?0zkFVQcd$U;Sk`IX-lyM3E!8)WCA;^3 zSJ1{aXRhP9Vd1S0+prN^u^HR(0blS5-@M6Mf9B!Ld*-V*%;ihKuKm02iE&CsN(Fu6 zYQKH^_7PemqE$|bjEp=uV8DQb^XARlsAsO-!NUj3&R;$+|JI#b3(QzJ{hpZX+i#`T zty`Z{4!@~)^y_cE_11;aqeoxTv)W;C?4mq2uHVkTqGz+Ad;GGEoB!TQY`_+5!ZvKg zR&2(0d~o|R0^jh_n=b1ID{olRe>(e=Yh2%c^N8|_^6fvgKVaa*{`bUq*pwlGvLjUY zu325Xc0DLM+OA!@v+QpjC8Tua7Z{^CBu^l^h%(8KBdaWNDumzj24I8l)o3R}q z@CBdn4IlB<P59}?hZ|v2!ZQE8;R9nB@uD@^p z-scmO6Y3>w-t^KYk?Jodr*EzUZB9+9yD@2F{rC;>P4%AZuJ4lbIh)vdm(tF#`Sa(` zk^jeq1K)nz>dy6zJ$rXIOioX(pCa0vwz*+aYEr|bl*EP`5;wSL)8>th6$J6oh}O>Hb6ny4MBZ=kbOAE0OcbG?to>35IsBunR}q>YVCAG(=? zxtNo=u>o7K3EQv{Tg`5#FZhO!_=?Z?4hDt?*nkmOsa`iJIjNSOh3AANnASLwb)>2= z4m^GO^k4O^8LhqGI{j86RnN_SeJebz-#wpc(W1o}{r>+9^)_wVoQ7JpYIT}^eM`)K z_St7I>Rffh&iZz5;4C@+>$gl--+udTmp-irXFmAg0~fvb-h0{7nJt~!&6+iH(L3+F zldbu)Km71Ra_Um&&YdrI>eT6i&Il)F%$TuJYxYD)d*g4lZ$GK;KNp45#ZN!|^ui~f zd~yz1beKMLGY50oyx4#b*o1A^=(O2c$2WY$SA0ee3=9vj0VDcVKdt#s3Bx_Ya!&P>G?{VwcUy?XU7>+F5qInN(icji~We*N~08#gXpIoledP9OF;`Tj_IZEi3G zOE3jnFxI=Z!ABo`w692!A~{g8V#QqNb^S)vbqB!to%-XCKkhoeQ?iD^N6A^9KH7HA z#j|F2U8a{lhRzjK01ANVgWXGUqT&TvkBc`3&yeEt}d?gMTFL%e#@3EflU8Lk)e8!9H>eZ`Vd@672U|iHszeVY$eq`0RD+|e%+4`N%4DCCkvW{gHlMl1ho=$t# zl9`V=-_yvW2Yu*8Kl3o3lW)nI#R2-=>K%I~?e_|tIdi7y$x|nbuUNODSj33XV%HmGP9YTB`OWy#q!Lo)qokgC9BM(SttpqMvz~k9nEjZAY>A#Q0)*Zx@xF zg)dyXkYD?z2(8&GqxwZ9cMI*dwOdHHtzi*iTS8Rt)akRmIxk$Yb%#>lXfO8a)oW*u zo;@+d$3Duagyv@o|c{#9=kR+M0Zvxx~DQqrVZ&Gl%l(wWZ81NuW#SJ zDc0`YyLXD-pQ+uucTdwd(sZpqX^hRDJ$vQ0UE69>(x#tr_~1tl{fwc{=A+Gg%xitJ zE7@$L4|}y2&41$LiGpFnyA|v@xKq%A#q)d5oHKK9%+h(4x(xm-Fmg<o1!^Vg=boLMEExCNq=bD zw(YTq?h(W&JuEzIi)`Dq@au*17A#yaKeBJ+jEsVhfFEYrY1AFJi%=+QD2N27PlsD%!skW2hyg$`+)Gz6puEuV`g_8GHUSWv*ykkK4j$J RQFG?c={R}%*Ag%xa literal 12860 zcmeI232@G59>@RhizLlBN@!;s4T)kg?b1py)Fw5K7VR#E*rA(lyN=0rN1fZUp;U`9 zt|jicj~G`QyUr$6jXEZ1QE@cX5hB%4P1A^XKi~hpk9qTYbCjrbc*ocC{Ga1@e1FgN zfBtFPwrlMXmSy=r8fXQPjsjLa{byML|4)kje{EWZyIU)7SuXR>eh7H<4@&d>TrQXO z5Dz(cI0hb$f#2E~&_d?6*+J?AeS9|bN>8!=e~XW?0)$c!n>5^)?w^< znErbEiZeSqyZnzo{#gH~pMGj}I3%@&l zcP#5cj( z#vJX@qet4XVZ#!rfA;5}f38WJwv8J%K015$?C49EE>$shkQ&(~CaWMn3M+TpQ6yg; z_8PnId+P0%hcB9YnuD#}F!S*jjRChjUw)R!&CPB2#v5({PWKTXJlkl{pOo*Y#TgemzXSXK8kvF+aP<2TNJH2}KYB|>X){1kB z7A>;!^75wg97W6rB_t#yAbiu;l!OR}^lq@<)w z;~Ws2o}O;cCvQjyA8 zw@t<$?epOv3M|{ad2{CC#fx)p-n^+aee&eVsl;a*bo5C{dqK+lqAWZ#y0 zui4D)8JzWAO-f4o^R;W&Iv+fEaEVN-RH;&4aBwikfb5>kukyZR-i<5||7{zOA3v@l zW3POWFTp^*$wxiQXZhY-T!<5KEViZmO2~gC&m+#D`7&mCp;ELut zoOWUlh^|(xT8{Mf?b|nn@$vNc-+x~gxxTo&V_C@0C-0L_K2eb=lMheGC;3LcACRx| zS-wvd7iunuBXK3p#GN=4m*SMRA;8EjO{vDXc(wPi)2B~wY}2NV%{zOr>#3)na#gHY z(dFmo=W;rowx2_X4$Wgern4R&!?%O1+bR3^?@#&Si!T!4<6p?C12mor^E2N&TeD`( zE`s!l6DQ7P{x>21&C#>2Ns}gN=;(wj%{STVOXeNR@`$xBx$>coe3EbSQNGG&`7RE` zg<>ym#F4lXXW~xf;!>O$td+$wNj4vQ~q?1Ig_O3e#=sI?%2Iy1RklAf9+7!*w!o z+(g|XVi(UCi6yT%Xbd>8!Tu@lF6*o|v|YpVV)c~_$wH>=8Vdddq|fLsDwPlNMLw;T zkMdPMqr6xUm*Nx~QpK^jM%ECw+@ka=hKi+Ps@N7b1~f*V95`^`=32FC6*_;5YkO&F z$64?icmL^}3*zumb6CEbaj$$s)v1lzmKM89!Vbk!F~vunAwB&z{+m>L_;Z{+6H7wx z{gSbD>(<@4+Z0hbyD%%bnI%IwQ_16~f z1-E=rUS+ED1m|&pFDP!whbH+C)D<~+)ijI!9xFZeZn?!T| zh9ZnRj6mJXSFc{(u2&o3op;_bF}HYcDz|0JmcK?tMeP|dV1SU!yX;%)#E=;v?SwrwQ3Co@KZG!Ev?n|GTo>6Q($MK;Mc**Ias z1nbP1Gk5K~Vkr51Q?`ej7$vr3gJH}NZd$BrGz*td;u%45)5i+SqD zySgodegWLuwPHNR;qyY```aXdkKk1Mz>6C8SAX{XUY?F=rMxi?xUjlvjBip>WDZ_kuZq=$)!x%>~ z9vDS_3g6JT%$hYT?fK`Q&-V_bdv?C7yCzMVbd`1qV4O$a7V6T%07?i zZ$w#R0@zO+TF(U5Z;LtWWbXbB8Lfy}DEn^(_9_3=)YN8_H=|!2+W39-)mIkt*zPA8 zlEs{LvMw0DeWt1(J$kf*Js<>~<5=@ry!YOF<$?dMUArvm%g>)b|HDO#7R_Q!S&7aN z_K{G=dMxY8VlV|8D!l*x`&LX$jKBIyhGenEhQPCZ{_=>s)?X*{u?~NC(u5c^WuIx! zSd5Q|h`7qxu!?nJ0c&d`L3x!888T#%X{SEwYvf2KWh+%LUD7Gt;)3Pw6fYT79OLY%_V2M`rI4znL2gq1kO1-`F5wZ z?r+3mCNg_-cN8^a#*BXxx7TSiNo|PN1o-QtzUT^NO^V|ACC1XL?2~=q@kQ*5qCS*y X6v5sQNqtZ3iQpdRW!k*VzR~4>)qh`N diff --git a/src/gfx/interface/technologies/England/ENG_battleship_Revenge.png b/src/gfx/interface/technologies/England/ENG_battleship_Revenge.png new file mode 100755 index 0000000000000000000000000000000000000000..ae4b797c2c578be266393d2f2fae5d7206a20458 GIT binary patch literal 17878 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 OHSpoHMhxVkt6@E5U* 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 DPe`Kk literal 0 HcmV?d00001 diff --git a/src/gfx/interface/technologies/South_America/CHL_cruiser_coastal_defense_ship.png b/src/gfx/interface/technologies/South_America/CHL_cruiser_coastal_defense_ship.png new file mode 100755 index 0000000000000000000000000000000000000000..5912c8044faf4a7ef3473e8a12183c5250067323 GIT binary patch literal 18720 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 literal 0 HcmV?d00001 diff --git a/src/gfx/interface/technologies/South_America/CHL_light_cruiser_Chacabuco.png b/src/gfx/interface/technologies/South_America/CHL_light_cruiser_Chacabuco.png new file mode 100755 index 0000000000000000000000000000000000000000..6a9c72c529091980abd999cb21ef3acf59f4ea2d GIT binary patch literal 14925 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 K$k*tD=>G?Mc|{)p delta 26314 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 diff --git a/src/history/units/ARG_1936_naval_mtg.txt b/src/history/units/ARG_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/ARG_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/AST_1936_naval.txt b/src/history/units/AST_1936_naval.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/AST_1936_naval.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/BEL_1936_naval_mtg.txt b/src/history/units/BEL_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/BEL_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/BRA_1936_naval.txt b/src/history/units/BRA_1936_naval.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/BRA_1936_naval.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/BUL_1936_naval_mtg.txt b/src/history/units/BUL_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/BUL_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/CAN_1936_naval_mtg.txt b/src/history/units/CAN_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/CAN_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/CHI_1936_naval_mtg.txt b/src/history/units/CHI_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/CHI_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/CHL_1936_naval_mtg.txt b/src/history/units/CHL_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/CHL_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/COL_1936_naval_mtg.txt b/src/history/units/COL_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/COL_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/DEN_1936_naval_mtg.txt b/src/history/units/DEN_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/DEN_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/DOM_1936_naval_mtg.txt b/src/history/units/DOM_1936_naval_mtg.txt deleted file mode 100755 index e69de29..0000000 diff --git a/src/history/units/EGY_1936_naval_mtg.txt b/src/history/units/EGY_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/EGY_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/ENG_1936_Naval.txt b/src/history/units/ENG_1936_Naval.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/ENG_1936_Naval.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/FIN_1936_naval_mtg.txt b/src/history/units/FIN_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/FIN_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/FRA_1936_naval_mtg.txt b/src/history/units/FRA_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/FRA_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/GER_1936_naval_mtg.txt b/src/history/units/GER_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/GER_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/GRE_1936_naval_mtg.txt b/src/history/units/GRE_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/GRE_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/HOL_1936_naval_mtg.txt b/src/history/units/HOL_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/HOL_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/ITA_1936_naval_mtg.txt b/src/history/units/ITA_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/ITA_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/JAP_1936_naval.txt b/src/history/units/JAP_1936_naval.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/JAP_1936_naval.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/LAT_1936_naval_mtg.txt b/src/history/units/LAT_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/LAT_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/LIT_1936_naval_mtg.txt b/src/history/units/LIT_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/LIT_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/MEX_1936_naval_mtg.txt b/src/history/units/MEX_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/MEX_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/NOR_1936_naval_mtg.txt b/src/history/units/NOR_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/NOR_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/POL_1936_naval_mtg.txt b/src/history/units/POL_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/POL_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/POR_1936_naval_mtg.txt b/src/history/units/POR_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/POR_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/PRU_1936_naval_mtg.txt b/src/history/units/PRU_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/PRU_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/ROM_1936_naval_mtg.txt b/src/history/units/ROM_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/ROM_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/SIA_1936_naval_mtg.txt b/src/history/units/SIA_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/SIA_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/SOV_1936_naval_mtg.txt b/src/history/units/SOV_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/SOV_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/SPR_1936_naval_mtg.txt b/src/history/units/SPR_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/SPR_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/SWE_1936_naval_mtg.txt b/src/history/units/SWE_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/SWE_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/TUR_1936_naval_mtg.txt b/src/history/units/TUR_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/TUR_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/URG_1936_naval_mtg.txt b/src/history/units/URG_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/URG_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/USA_1936_naval_mtg.txt b/src/history/units/USA_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/USA_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/VEN_1936_naval_mtg.txt b/src/history/units/VEN_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/VEN_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/history/units/YUG_1936_naval_mtg.txt b/src/history/units/YUG_1936_naval_mtg.txt deleted file mode 100755 index 5f28270..0000000 --- a/src/history/units/YUG_1936_naval_mtg.txt +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/interface/countryproductionlineview.gui b/src/interface/countryproductionlineview.gui index 9657d2b..c860bf6 100755 --- a/src/interface/countryproductionlineview.gui +++ b/src/interface/countryproductionlineview.gui @@ -3278,7 +3278,7 @@ guiTypes = { iconType = { name ="equipment_role" spriteType = "GFX_naval_equipment_role_icons" - position = { x = 238 y = 49 } + position = { x = 28 y = 49 } alwaystransparent = yes } diff --git a/src/interface/equipmentdesignerview.gui b/src/interface/equipmentdesignerview.gui index f2ffd45..27ae53c 100755 --- a/src/interface/equipmentdesignerview.gui +++ b/src/interface/equipmentdesignerview.gui @@ -279,14 +279,15 @@ guiTypes = { buttonType = { name = "upgrade_assigned_industrial_org" - position = { x = 70 y = 360 } + position = { x = 65 y = 360 } spriteType = "GFX_designer_button_upgrade_strip" } buttonType = { name = "design_team_button" spriteType = "GFX_idea_slot_naval_manufacturer" - position = { x = 10 y = 340 } + scale = 0.8 + position = { x = 14 y = 350 } } # right hand side, stats and terrain adjusters @@ -848,7 +849,7 @@ guiTypes = { name = "name" position = { x = 45 y = 5 } font = "hoi_18mbs" - size = { x=164 y=20 } + size = { x=230 y=20 } } #expandButton = { @@ -884,10 +885,10 @@ guiTypes = { instantTextboxType = { name = "position_version" - position = { x = 212 y = 56 } + position = { x = 280 y = 56 } font = "hoi_18mbs" text_color_code = g - maxWidth = 71 + maxWidth = 1 maxHeight = 18 alwaystransparent = yes multiline = no diff --git a/src/interface/z_naval_rework.gfx b/src/interface/vnr_user_interface_assets.gfx similarity index 60% rename from src/interface/z_naval_rework.gfx rename to src/interface/vnr_user_interface_assets.gfx index dfab6a4..1e5ba5b 100755 --- a/src/interface/z_naval_rework.gfx +++ b/src/interface/vnr_user_interface_assets.gfx @@ -1,25 +1,19 @@ -spriteTypes = { - spriteType = { # "SH battleship" - name = "GFX_navalcombat_ship_icon_SH_battleship" - texturefile = "gfx/interface/navalcombat/ships/sh_battleship.dds" - noOfFrames = 2 - } - spriteType = { - name = "GFX_navalcombat_ship_icon_behemoth" - texturefile = "gfx/interface/navalcombat/ships/behemoth.dds" - noOfFrames = 2 - } - spriteType = { - name = "GFX_navalcombat_ship_icon_battlecarrier" - texturefile = "gfx/interface/navalcombat/ships/battlecarrier.dds" - noOfFrames = 2 - } - spriteType = { - name = "GFX_navalcombat_ship_icon_auxiliary_ship" - texturefile = "gfx/interface/navalcombat/ships/auxiliary.dds" - noOfFrames = 2 - } +spriteTypes = { + ### ship silhouettes in naval combat + spriteType = { name = "GFX_navalcombat_ship_icon_SH_battleship" texturefile = "gfx/interface/navalcombat/ships/sh_battleship.dds" noOfFrames = 2 } + spriteType = { name = "GFX_navalcombat_ship_icon_behemoth" texturefile = "gfx/interface/navalcombat/ships/behemoth.dds" noOfFrames = 2 } + spriteType = { name = "GFX_navalcombat_ship_icon_battlecarrier" texturefile = "gfx/interface/navalcombat/ships/battlecarrier.dds" noOfFrames = 2 } + spriteType = { name = "GFX_navalcombat_ship_icon_auxiliary_ship" texturefile = "gfx/interface/navalcombat/ships/auxiliary.dds" noOfFrames = 2 } + spriteType = { name = "GFX_navalcombat_ship_icon_medium_cruiser" texturefile = "gfx/interface/navalcombat/ships/medium_cruiser.dds" noOfFrames = 2 } + + + ### ship silhouettes in production filter + spriteType = { name = "GFX_unit_battlecarrier_icon_medium" texturefile = "gfx/interface/navalcombat/ships/battlecarrier.dds" noOfFrames = 2 } + spriteType = { name = "GFX_unit_auxiliary_ship_icon_medium" texturefile = "gfx/interface/navalcombat/ships/auxiliary.dds" noOfFrames = 2 } + spriteType = { name = "GFX_unit_behemoth_icon_medium" texturefile = "gfx/interface/navalcombat/ships/behemoth.dds" noOfFrames = 2 } + + ### ship silhouettes for each ship, shown when you select a fleet, with level text spriteType = { name = "GFX_unit_battle_cruiser_2_icon_medium" texturefile = "gfx/interface/navalcombat/ships/battlecruiser_I.dds" noOfFrames = 2 } spriteType = { name = "GFX_unit_battle_cruiser_3_icon_medium" texturefile = "gfx/interface/navalcombat/ships/battlecruiser_II.dds" noOfFrames = 2 } spriteType = { name = "GFX_unit_battle_cruiser_4_icon_medium" texturefile = "gfx/interface/navalcombat/ships/battlecruiser_III.dds" noOfFrames = 2 } @@ -69,150 +63,43 @@ spriteTypes = { spriteType = { name = "GFX_unit_battlecarrier_6_icon_medium" texturefile = "gfx/interface/navalcombat/ships/battlecarrier.dds" noOfFrames = 2 } spriteType = { name = "GFX_unit_auxiliary_ship_1_icon_medium" texturefile = "gfx/interface/navalcombat/ships/auxiliary.dds" noOfFrames = 2 } spriteType = { name = "GFX_unit_submarine_5_icon_medium" texturefile = "gfx/interface/navalcombat/ships/submarine_V.dds" noOfFrames = 2 } + spriteType = { name = "GFX_unit_SH_battleship_6_icon_medium" texturefile = "gfx/interface/navalcombat/ships/battleship_V.dds" noOfFrames = 2 } + spriteType = { name = "GFX_unit_behemoth_1_icon_medium" texturefile = "gfx/interface/navalcombat/ships/behemoth.dds" noOfFrames = 2 } - spriteType = { - name = "GFX_unit_SH_battleship_icon_medium_white" - texturefile = "gfx/interface/counters/ships_small/onmap_SH_battleship.dds" - } - spriteType = { - name = "GFX_unit_SH_battleship_icon_medium_black" - texturefile = "gfx/interface/counters/ships_small/onmap_SH_battleship_inverted.dds" - } + ### small ship silhouettes used as counter for each type of ship, shown at top when you select a fleet, with black and white version + spriteType = { name = "GFX_unit_SH_battleship_icon_medium_white" texturefile = "gfx/interface/counters/ships_small/onmap_SH_battleship.dds" } + spriteType = { name = "GFX_unit_SH_battleship_icon_medium_black" texturefile = "gfx/interface/counters/ships_small/onmap_SH_battleship_inverted.dds" } + spriteType = { name = "GFX_unit_battlecarrier_icon_medium_white" texturefile = "gfx/interface/counters/ships_small/onmap_battlecarrier.dds" } + spriteType = { name = "GFX_unit_battlecarrier_icon_medium_black" texturefile = "gfx/interface/counters/ships_small/onmap_battlecarrier_inverted.dds" } + spriteType = { name = "GFX_unit_auxiliary_ship_icon_medium_white" texturefile = "gfx/interface/counters/ships_small/onmap_auxiliary_ship.dds" } + spriteType = { name = "GFX_unit_auxiliary_ship_icon_medium_black" texturefile = "gfx/interface/counters/ships_small/onmap_auxiliary_ship_inverted.dds" } + spriteType = { name = "GFX_unit_medium_cruiser_icon_medium_white" texturefile = "gfx/interface/counters/ships_small/onmap_medium_cruiser.dds" } + spriteType = { name = "GFX_unit_medium_cruiser_icon_medium_black" texturefile = "gfx/interface/counters/ships_small/onmap_medium_cruiser_inverted.dds" } + spriteType = { name = "GFX_unit_behemoth_icon_medium_white" texturefile = "gfx/interface/counters/ships_small/onmap_SH_battleship.dds" } + spriteType = { name = "GFX_unit_behemoth_icon_medium_black" texturefile = "gfx/interface/counters/ships_small/onmap_SH_battleship_inverted.dds" } - spriteType = { - name = "GFX_ship_SH_battleship_icon_small" - texturefile = "gfx/texticons/ship_SH_battleship_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "unit_SH_battleship_icon_small" - texturefile = "gfx/texticons/ship_SH_battleship_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "GFX_unit_SH_battleship_6_icon_medium" - texturefile = "gfx/interface/navalcombat/ships/battleship_V.dds" - noOfFrames = 2 - } - - spriteType = { - name = "GFX_unit_battlecarrier_icon_medium_white" - texturefile = "gfx/interface/counters/ships_small/onmap_battlecarrier.dds" - } - spriteType = { - name = "GFX_unit_battlecarrier_icon_medium_black" - texturefile = "gfx/interface/counters/ships_small/onmap_battlecarrier_inverted.dds" - } - - spriteType = { - name = "GFX_ship_battlecarrier_icon_small" - texturefile = "gfx/texticons/ship_battlecarrier_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "unit_battlecarrier_icon_small" - texturefile = "gfx/texticons/ship_battlecarrier_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "GFX_unit_battlecarrier_icon_medium" - texturefile = "gfx/interface/navalcombat/ships/battlecarrier.dds" - noOfFrames = 2 - } - - spriteType = { - name = "GFX_unit_auxiliary_ship_icon_medium_white" - texturefile = "gfx/interface/counters/ships_small/onmap_auxiliary_ship.dds" - } - spriteType = { - name = "GFX_unit_auxiliary_ship_icon_medium_black" - texturefile = "gfx/interface/counters/ships_small/onmap_auxiliary_ship_inverted.dds" - } - spriteType = { - name = "GFX_ship_auxiliary_ship_icon_small" - texturefile = "gfx/texticons/ship_auxiliary_ship_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "unit_auxiliary_ship_icon_small" - texturefile = "gfx/texticons/ship_auxiliary_ship_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "GFX_unit_auxiliary_ship_icon_medium" - texturefile = "gfx/interface/navalcombat/ships/auxiliary.dds" - noOfFrames = 2 - } - - spriteType = { - name = "GFX_unit_medium_cruiser_icon_medium_white" - texturefile = "gfx/interface/counters/ships_small/onmap_medium_cruiser.dds" - } - spriteType = { - name = "GFX_unit_medium_cruiser_icon_medium_black" - texturefile = "gfx/interface/counters/ships_small/onmap_medium_cruiser_inverted.dds" - } - spriteType = { - name = "GFX_navalcombat_ship_icon_medium_cruiser" - texturefile = "gfx/interface/navalcombat/ships/medium_cruiser.dds" - noOfFrames = 2 - } - spriteType = { - name = "GFX_unit_medium_cruiser_icon_small" - texturefile = "gfx/texticons/ship_medium_cruiser_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "unit_medium_cruiser_icon_small" - texturefile = "gfx/texticons/ship_medium_cruiser_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "GFX_unit_behemoth_icon_medium_white" - texturefile = "gfx/interface/counters/ships_small/onmap_SH_battleship.dds" - } - spriteType = { - name = "GFX_unit_behemoth_icon_medium_black" - texturefile = "gfx/interface/counters/ships_small/onmap_SH_battleship_inverted.dds" - } + ### green counter for each type of ship, shown when you hover on a fleet + spriteType = { name = "GFX_ship_SH_battleship_icon_small" texturefile = "gfx/texticons/ship_SH_battleship_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "unit_SH_battleship_icon_small" texturefile = "gfx/texticons/ship_SH_battleship_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "GFX_ship_battlecarrier_icon_small" texturefile = "gfx/texticons/ship_battlecarrier_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "unit_battlecarrier_icon_small" texturefile = "gfx/texticons/ship_battlecarrier_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "GFX_ship_auxiliary_ship_icon_small" texturefile = "gfx/texticons/ship_auxiliary_ship_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "unit_auxiliary_ship_icon_small" texturefile = "gfx/texticons/ship_auxiliary_ship_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "GFX_unit_medium_cruiser_icon_small" texturefile = "gfx/texticons/ship_medium_cruiser_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "unit_medium_cruiser_icon_small" texturefile = "gfx/texticons/ship_medium_cruiser_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "GFX_ship_behemoth_icon_small" texturefile = "gfx/texticons/ship_SH_battleship_icon_small.dds" legacy_lazy_load = no } + spriteType = { name = "unit_behemoth_icon_small" texturefile = "gfx/texticons/ship_SH_battleship_icon_small.dds" legacy_lazy_load = no } - spriteType = { - name = "GFX_ship_behemoth_icon_small" - texturefile = "gfx/texticons/ship_SH_battleship_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "unit_behemoth_icon_small" - texturefile = "gfx/texticons/ship_SH_battleship_icon_small.dds" - legacy_lazy_load = no - } - spriteType = { - name = "GFX_unit_behemoth_icon_medium" - texturefile = "gfx/interface/navalcombat/ships/behemoth.dds" - noOfFrames = 2 - } - spriteType = { - name = "GFX_unit_behemoth_1_icon_medium" - texturefile = "gfx/interface/navalcombat/ships/behemoth.dds" - noOfFrames = 2 - } - - spriteType = { - name = "GFX_unit_cv_fighter_icon_medium" - texturefile = "gfx/interface/category_fighter.dds" - } - spriteType = { - name = "GFX_unit_cv_cas_icon_medium" - texturefile = "gfx/interface/category_cas.dds" - } - spriteType = { - name = "GFX_unit_cv_nav_bomber_icon_medium" - texturefile = "gfx/interface/category_heavy_fighter.dds" - } + ### plane type icon, used in the effect panel of dive bomber study technology + spriteType = { name = "GFX_unit_cv_fighter_icon_medium" texturefile = "gfx/interface/category_fighter.dds" } + spriteType = { name = "GFX_unit_cv_cas_icon_medium" texturefile = "gfx/interface/category_cas.dds" } + spriteType = { name = "GFX_unit_cv_nav_bomber_icon_medium" texturefile = "gfx/interface/category_heavy_fighter.dds" } + + ### the blueprint icon at the bottom right corner of production of ship corneredTileSpriteType = { name = "rework_ship_icon_bg" #texturefile = "gfx/interface/tiles/tiled_paper_bg.dds" @@ -220,6 +107,8 @@ spriteTypes = { size= { x=32 y=32 } borderSize = { x=5 y=5 } } + + ### the red box in techtree corneredTileSpriteType = { name = "GFX_tiled_research_red_bg" size= {x=96 y=96 } @@ -228,6 +117,8 @@ spriteTypes = { alwaystransparent = yes } + + ### background of starting intro panel spriteType = { name = "GFX_navy_intro" textureFile = "gfx/introscreen/navy_intro.png" @@ -237,18 +128,21 @@ spriteTypes = { textureFile = "gfx/introscreen/navy_rework_splash.png" } + + ### ship role icons definition in ship designer, right next to ship icon spriteType = { name = "GFX_naval_equipment_role_icons" texturefile = "gfx/army_icons/naval_equipment_role_icons.dds" noOfFrames = 84 } - spriteType = { name = "GFX_naval_equipment_role_icons_selected" texturefile = "gfx/army_icons/naval_equipment_role_icons_selected.dds" noOfFrames = 84 } + + ### panels of technology, use assets from KR to make it wider and taller for more lines of tech description corneredTileSpriteType = { name = "GFX_tiled_window_thin_border_kr" size= { x=192 y=192 } @@ -257,13 +151,14 @@ spriteTypes = { tilingCenter = yes effectFile = "gfx/FX/buttonstate_nodowneffect.lua" } - SpriteType = { name = "GFX_tech_info_top_win_kr" textureFile = "gfx/interface/tech_info_top_win_kr2.png" effectFile = "gfx/FX/buttonstate_nodowneffect.lua" } + + ### background of main menu corneredTileSpriteType = { name = "GFX_frontend_bg" texturefile = "gfx/interface/vnr_main_menu_bg.dds" @@ -273,19 +168,14 @@ spriteTypes = { effectFile = "gfx/FX/buttonstate.shader" } - spriteType = { - name = "GFX_idea_vnr_mad" - textureFile = "gfx/interface/vnr_ai_difficulty.png" - } - spriteType = { - name = "GFX_idea_vnr_hard" - textureFile = "gfx/interface/vnr_ai_difficulty.png" - } - spriteType = { - name = "GFX_idea_vnr_normal" - textureFile = "gfx/interface/vnr_ai_difficulty.png" - } + + ### idea icon of VNR AI buff + spriteType = { name = "GFX_idea_vnr_mad" textureFile = "gfx/interface/vnr_ai_difficulty.png" } + spriteType = { name = "GFX_idea_vnr_hard" textureFile = "gfx/interface/vnr_ai_difficulty.png" } + spriteType = { name = "GFX_idea_vnr_normal" textureFile = "gfx/interface/vnr_ai_difficulty.png" } + + ### a workaround to fix icon becoming huge after an exclusive tech is selected spriteType = { name = "GFX_technology_mtgnavalsupportfolder_branch_item_bg" textureFile = "gfx/interface/techtree/tech_doctrine_branch_item_bg.dds" diff --git a/src/interface/z_navy_icons_hull.gfx b/src/interface/z_navy_icons_hull.gfx index 9a61285..2d848f1 100755 --- a/src/interface/z_navy_icons_hull.gfx +++ b/src/interface/z_navy_icons_hull.gfx @@ -2081,6 +2081,10 @@ spriteTypes = { name = "GFX_ARG_vnr_ship_hull_cruiser_2_capital_medium" texturefile = "gfx/interface/technologies/South_America/ARG_heavy_cruiser2.png" } + spriteType = { + name = "GFX_ARG_vnr_ship_hull_cruiser_coastal_defense_ship_medium" + texturefile = "gfx/interface/technologies/South_America/ARG_cruiser_coastal_defense_ship.png" + } # battleship spriteType = { @@ -2127,6 +2131,10 @@ spriteTypes = { name = "GFX_CHL_vnr_ship_hull_cruiser_1_capital_medium" texturefile = "gfx/interface/technologies/South_America/CHL_heavy_cruiser1.png" } + spriteType = { + name = "GFX_CHL_vnr_ship_hull_cruiser_coastal_defense_ship_medium" + texturefile = "gfx/interface/technologies/South_America/CHL_cruiser_coastal_defense_ship.png" + } # battleship spriteType = { diff --git a/src/localisation/english/replace/navy_rework_welcome_l_english.yml b/src/localisation/english/replace/navy_rework_welcome_l_english.yml index e489f89..b50faa9 100755 --- a/src/localisation/english/replace/navy_rework_welcome_l_english.yml +++ b/src/localisation/english/replace/navy_rework_welcome_l_english.yml @@ -4,7 +4,7 @@ navy_rework_welcome_splash_tab_3: "额外信息" navy_rework_welcome_splash_tab_4: "致谢" navy_rework_options_button_text: "继续" - navy_rework_welcome_splash_tab_1_content: "§Hv1.12 “霸王行动”§!\n\n§C重要新增:§!\n\n-新科技:抗波设计,电磁信号管制,雷达源定位,对称密钥加密,龙勃透镜,密接区域防空\n-新模块:雷达定位装置,滑跃起飞甲板\n-调整冷战科技布局\n\n§C更新:§!\n\n-允许战列舰改装战列舰安装超重型装甲\n-装甲舰不能再安装16英寸或更大的舰炮\n-全导弹布局现在有造价,冷战船体的可靠性降低\n-经济型核反应堆以百分比降低造价\n-降低诱饵发射装置和火箭炮的造价\n-超级航母科技移动到1948年\n-为德国巡洋舰添加柴油机\n-为扎拉级设置正确的图标\n-核动力引擎科技移动到冷战巡洋舰分支\n-增加加入友军数据链的决议\n-4级双联装主炮的速度影响略微提高\n-为轻巡亚特兰大添加一个立绘\n-为航母信浓添加一个立绘\n\n§C修复:§!\n\n-修复部分计划蓝图的防空炮没有重型的问题\n-修复全导弹布局必须要装副炮的问题\n-修复护航航母可以安装经济型核反应堆的问题\n-修复重型舰船俯视图中高平炮缺失的问题\n\n感谢你的游玩!" + navy_rework_welcome_splash_tab_1_content: "§Hv1.13 “赤壁鏖兵”§!\n\n§C重要新增:§!\n\n-为部分主要国家添加战时的舰队部署管理AI\n-调整海军生产AI\n\n§C更新:§!\n\n-制海权计算公式权重重做,现在IC的权重比人力更高\n-航空战列舰现在只会算作航母\n-增加所有舰船的补给消耗\n-为机库模块添加补给消耗的修正\n-在加载海军重置版本的海军前添加一个删除全世界海军的效果以防止原版和其他mod文件污染\n-为苏联添加赠送的AI舰船设计\n-降低轻型柴油引擎的速度\n-移除超重型装甲的可见度惩罚,超重型船体的可见度相应提高\n-不允许航母使用超重型引擎\n-降低防空巡洋舰角色的造价\n-为复仇级添加一个立绘\n-为南美的部分岸防舰添加立绘\n-微调设计器UI\n\n§C修复:§!\n\n-修复生产界面舰船改装格中角色图标出框的问题\n-修复一些错字\n-修复德国开局驱逐舰立绘使用虚构驱逐舰的问题\n\n感谢你的游玩!" navy_rework_welcome_splash_tab_2_content: "§H这里包含了你想知道的关于海军重置的一切。§!\n\n§C设计器-§!\n£white_dot 在设计§Y驱逐舰§!、§Y巡洋舰§!或§Y战列舰§!的时候,§Y主炮§!是和历史唯一的一一对应的装备。由于它们的火力和穿甲据此做了平衡,§R请确保它们的数量和现实中接近§!。诸如§Y副炮§!和§Y鱼雷§!等装备则与原版没有区别。\n£white_dot 一些在原版受限的装备在本模组中是开放的,比如你可以建造超重炮战列舰,轻炮重巡,无甲巡洋舰等等。\n£white_dot 舰船角色在驱逐舰和巡洋舰上是必须的,它们可以提供不同的增益并解锁特殊的部件。\n£white_dot 巡洋舰的主力屏卫之分不由主炮口径为标准。所有巡洋舰(除装甲舰外)都初始默认为屏卫舰,且需要特殊的角色才能让它们成为主力舰。\n£white_dot §Y导弹§!可以安装在晚期的重型或巡洋舰船体上,不过后者需要专门的导弹巡洋舰角色来安装。\n£white_dot 鱼雷可以对重型舰船造成巨量的伤害,不过重型装甲只能提供非常有限的鱼雷防护,你需要安装§Y鱼雷防御系统§!来避免这一点。\n£white_dot 主炮的穿甲经过一定的平衡。其基础穿深为同时期装甲的1.1倍,这也意味着基础的装甲钢和混合防护方案可以避免被击穿,而下一代主炮则可以击穿使用重点防护的该型战舰。\n£white_dot 海战中的甲弹对抗公式以如下规则计算,穿甲和装甲的比值与伤害权重之间的映射关系为:超过200%为100%伤害,100%到200%为100%伤害,85%到100%为70%伤害,75%到85%为60%伤害,60%到75%为45%伤害,50%到60%为35%伤害,30%到50%为20%伤害,10%到30%为10%伤害,低于10%为1%伤害。\n£white_dot §Y超重型主炮§!根据炮管数量和§Y重型主炮§!归类在一起,但是它们仍然在某些船体上受到安装限制。\n£white_dot 设计器中的舰船分类符号可以帮助你更好地管理舰队。其仅仅表示该国对舰船的分类和定义,没有实际效果。\n£white_dot 辅助船非常脆弱,但是航程极长。由于舰队最大航程是由平均数决定的,因此在舰队中加入一些辅助船可以增加航程。\n\n§C科技树-§!\n£white_dot 尽管科技树的外观变化巨大,但是它的本质仍然和原版类似,你不需要花费大量时间去理解。\n£white_dot 并不是所有科技都是有价值的,请根据你的战略和地缘情况理智选择。\n£white_dot 子科技需要船体科技研究完成才能解锁。其中有一些还需要非海军科技的进步来推动。例如,主动声呐需要被动声呐研究完成,而一些火控系统则需要工程科技的进步作为前提。\n\n§C海战-§!\n£white_dot 海战的最短时间§Y已经被提高到20小时,主力舰在第22小时开火,其他舰艇在第30小时开火§!,而§G航母则可以在刚加入战斗时就参与进攻§!。§Y航母堆叠限制§!被放宽到6。你使用舰载机的方式在本模组中更加重要。\n£white_dot 舰艇的防空和舰载战斗机的伤害与命中率都获得了提升。一支没有战斗机护航的航母舰队可能会在进攻中损失更多的舰载机。\n£white_dot 基础的阵位被削减为50%,但优势的水面探测数值可以带来最多50%的阵位奖励。\n£white_dot 水上飞机弹射器、航母和声呐在反潜战中的表现都更加有用和强力,而§Y潜艇§!基础的§Y可见度§!相较原版被§R增加§!了,在面对有良好反潜能力的舰队时,潜艇不再拥有优势。\n£white_dot AI的设计模板是刻意默认设置为§Y史实向§!的。尽管这些模板比原版要强一些,但是过去的最优设计仍然是有效的。\n\n§C其他-§!\n£white_dot 玩家和AI都享有§G-15%§!海军燃料消耗减免。\n£white_dot 单个船厂的产出已被提高到§G160%§!,一般在没有加成的情况下,建造一艘满配战列舰的时间在1-2年之间。\n£white_dot AI控制的主要国家会分别在1940年,1943年,1945年和冷战时期(如果没有投降的话)获得一批海军科技和独特的舰船设计。\n£white_dot AI会根据历史上的学说选择和战争情况选择不同的海军建造策略(包括舰载机)。例如,原版的§g德国§!会更加专注于潜艇,而§B美国§!则会重视航母。" navy_rework_welcome_splash_tab_3_content: "§H这里罗列关于海军重置的其他信息。§!\n\n§C兼容性-§!\n£white_dot 除非有§Y兼容包§!,本模组与修改科技树的模组不兼容,已有的兼容包链接都会在创意工坊界面列出。\n£white_dot §R所有生成舰船设计的国策/事件/决议都会失效,这是为了兼容性的考量和必要牺牲。§!\n\n§C二次创作-§!\n£white_dot 除了56之路外,不会再有其他的官方兼容包发布,希望社区可以更多地参与此事。目前日共重置与日本史实国策重做已完全兼容本模组。\n£white_dot 所有人都可以随意利用本模组的资源(代码/图标/文本),但在使用中请标明出处并通知我。感谢你的理解。" navy_rework_welcome_splash_tab_4_content: "大家好,海军重置已经走过了艰难的开发阶段,如今史实设计器、初始海军编制和设计、图标和科技树都已经基本完成,整个大框架完成后,剩余的工作便是进一步丰富和扩充,而这相比之前的开拓等等都要简单一些。借此机会我想和大家讲讲这个mod的过去和未来。\n\n我是2016年入的钢4坑,在加里波第的噩梦版本,也就是0.6时期接触到的KR,当时就被它详实有趣的世界观所吸引,之后几年KR一直是我玩的最多的mod之一。KR在0.8发布了海军重做,也是我最喜欢最兴奋的一个版本,由此我开始对海军感兴趣,也越发经常地想象KR世界观中的海军和军舰会是什么样子的。\n\n2021年春节前夕的一个周五下午,我在办公室摸鱼逛reddit,看到了一位外国网友写的对KR中加拿大和日本海军的战舰原型考证,这篇文章深深吸引了我,我用了一个下午翻译后发布到了贴吧上,收获了很多人的支持。尽管后来因为屏蔽的问题我转战知乎,但我始终将KR海军考据的系列坚持了下来,从海军大国到一些特色小国我都查阅了大量资料,也为这个mod打下了基础。\n\n在KR0.22更新之前,开发因为一些原因多次削减了海军的内容,我一直感到很遗憾,0.22的大改给了我这个动力去做之前我不敢想的事情。虽然写代码是我的老本行,但是美工、文案和汉译英等等我都是从头开始学,一次次试错,一个人陆陆续续弄了大半年,发布了KR和KX两版,才做到现在这个地步,我从中也学到了很多。如今,我们也终于迎来了原版海军重置的发布。\n\n我想借这个机会感谢所有在这个过程中帮助我的朋友和玩家,包括启发我的reddit网友Tragic-tragedy,贴吧上对我的史料斧正的朋友,在知乎上追更的朋友,还有许多订阅海军重置的玩家,没有你们的支持就没有这个mod,谢谢你们!\n\n最后,我还想借此机会感谢我的外公,他曾在中国人民解放军海军服役了几十年,在我的孩提时代启发了我对海军的认识。上世纪七八十年代,我的外公分别在几艘海军科考船上服役,担任过气象专家和部门政委等职务,他的大部分军旅生涯是在向阳红10号船上度过的,这也是当时中国自主设计建造的吨位最大的远洋科考船。1980年,向阳红10号作为新中国历史上最大规模远洋舰队的一员参加了中国第一次洲际弹道导弹发射试验,这就是大家熟知的580任务。我的外公当时负责气象部门,为回收导弹黑匣子的时间窗口提供预报支持。四年后,他随船参加了中国第一次南极科考任务,并在乔治王岛参与了长城站的建设。向阳红10号船之后被改装成了远望4号,在2007年遇到事故损坏,最后成了东方21D的靶子,每每说起来,他还是有些惋惜。我能看出来他对曾经的海军生涯有着复杂的情感,一方面为对国家做出贡献而感到骄傲光荣,而另一方面又为错过了孩子们的成长感到缺憾。不过尽管如此,他从小给我讲述的故事仍然点燃了我对海军的兴趣,为这个mod播下了一颗种子。\n\n随着我现在工作生活越来越忙,不知道海军重置还能维持多久,所以我在此也希望成立一个小团队,用半做半学的方式,把这个mod延续下去。\n\n有兴趣加我qq:1245385638,或海军重置群:162239327" \ No newline at end of file diff --git a/src/localisation/english/replace/vnr_ai_l_english.yml b/src/localisation/english/replace/vnr_ai_l_english.yml index 9c91ca6..6bb5a33 100755 --- a/src/localisation/english/replace/vnr_ai_l_english.yml +++ b/src/localisation/english/replace/vnr_ai_l_english.yml @@ -54,7 +54,7 @@ vnr_research_budget: "海军科研经费" RULE_ALLOW_AI_TECH_AUTO_UNLOCK: "允许AI自动解锁科技" RULE_ALLOW_AI_TECH_AUTO_UNLOCK_FREE_DESC: "AI会在游戏中自动解锁海军科技。" - RULE_ALLOW_AI_TECH_AUTO_UNLOCK_BLOCKED_DESC: "AI不会在游戏中自动解锁科技。\n§R这可能改变AI选择科技的倾向,并且影响其他方面的科研。§!" + RULE_ALLOW_AI_TECH_AUTO_UNLOCK_BLOCKED_DESC: "AI不会在游戏中自动解锁海军科技。\n§R这可能改变AI选择科技的倾向,并且影响其他方面的科研。§!" RULE_SHIPYARD_OUTPUT_BOOST: "允许船厂产能加成" RULE_OPTION_FREE_AI: "仅限AI" RULE_OPTION_FREE_PLAYER: "仅限玩家" @@ -64,4 +64,7 @@ RULE_SHIPYARD_OUTPUT_BOOST_BLOCKED_DESC: "船厂的产出为2.5点IC/日,与原版一致。" vnr_shipyard_output_boost: "海军重置船厂产出加成" join_tactical_data_link: "接入[ROOT.GetFactionName]海军战术数据链" - join_tactical_data_link_desc: "一套联合战术数据链系统已经由我们阵营当中的领先成员部署成功。虽然这是一个加强我军与盟友协同作战能力的好机会,但是我们仍然可以独立开发一套自己的数据链系统。\n§C如果我们选择接入友方数据链,我们将不能研发自己的版本,但会立刻解锁以下加成:§!\n§Y海军协同性:§!§G+10%§!\n§Y海军组织度:§!§G+7.5%§!\n§Y可见度:§!§G-7.5%§!" \ No newline at end of file + join_tactical_data_link_desc: "一套联合战术数据链系统已经由我们阵营当中的领先成员部署成功。虽然这是一个加强我军与盟友协同作战能力的好机会,但是我们仍然可以独立开发一套自己的数据链系统。\n§C如果我们选择接入友方数据链,我们将不能研发自己的版本,但会立刻解锁以下加成:§!\n§Y海军协同性:§!§G+10%§!\n§Y海军组织度:§!§G+7.5%§!\n§Y可见度:§!§G-7.5%§!" + RULE_AI_NAVAL_MANAGEMENT: "使用海军重置海军管理AI" + RULE_AI_NAVAL_MANAGEMENT_FREE_DESC: "在原版环境中§G启动§!海军舰队管理AI。" + RULE_AI_NAVAL_MANAGEMENT_BLOCKED_DESC: "在原版环境中§R关闭§!海军舰队管理AI。\n§Y使用原版或其他激活状态mod提供的海军AI。§!" \ No newline at end of file diff --git a/src/localisation/replace/navy_rework_welcome_l_english.yml b/src/localisation/replace/navy_rework_welcome_l_english.yml index e489f89..b50faa9 100755 --- a/src/localisation/replace/navy_rework_welcome_l_english.yml +++ b/src/localisation/replace/navy_rework_welcome_l_english.yml @@ -4,7 +4,7 @@ navy_rework_welcome_splash_tab_3: "额外信息" navy_rework_welcome_splash_tab_4: "致谢" navy_rework_options_button_text: "继续" - navy_rework_welcome_splash_tab_1_content: "§Hv1.12 “霸王行动”§!\n\n§C重要新增:§!\n\n-新科技:抗波设计,电磁信号管制,雷达源定位,对称密钥加密,龙勃透镜,密接区域防空\n-新模块:雷达定位装置,滑跃起飞甲板\n-调整冷战科技布局\n\n§C更新:§!\n\n-允许战列舰改装战列舰安装超重型装甲\n-装甲舰不能再安装16英寸或更大的舰炮\n-全导弹布局现在有造价,冷战船体的可靠性降低\n-经济型核反应堆以百分比降低造价\n-降低诱饵发射装置和火箭炮的造价\n-超级航母科技移动到1948年\n-为德国巡洋舰添加柴油机\n-为扎拉级设置正确的图标\n-核动力引擎科技移动到冷战巡洋舰分支\n-增加加入友军数据链的决议\n-4级双联装主炮的速度影响略微提高\n-为轻巡亚特兰大添加一个立绘\n-为航母信浓添加一个立绘\n\n§C修复:§!\n\n-修复部分计划蓝图的防空炮没有重型的问题\n-修复全导弹布局必须要装副炮的问题\n-修复护航航母可以安装经济型核反应堆的问题\n-修复重型舰船俯视图中高平炮缺失的问题\n\n感谢你的游玩!" + navy_rework_welcome_splash_tab_1_content: "§Hv1.13 “赤壁鏖兵”§!\n\n§C重要新增:§!\n\n-为部分主要国家添加战时的舰队部署管理AI\n-调整海军生产AI\n\n§C更新:§!\n\n-制海权计算公式权重重做,现在IC的权重比人力更高\n-航空战列舰现在只会算作航母\n-增加所有舰船的补给消耗\n-为机库模块添加补给消耗的修正\n-在加载海军重置版本的海军前添加一个删除全世界海军的效果以防止原版和其他mod文件污染\n-为苏联添加赠送的AI舰船设计\n-降低轻型柴油引擎的速度\n-移除超重型装甲的可见度惩罚,超重型船体的可见度相应提高\n-不允许航母使用超重型引擎\n-降低防空巡洋舰角色的造价\n-为复仇级添加一个立绘\n-为南美的部分岸防舰添加立绘\n-微调设计器UI\n\n§C修复:§!\n\n-修复生产界面舰船改装格中角色图标出框的问题\n-修复一些错字\n-修复德国开局驱逐舰立绘使用虚构驱逐舰的问题\n\n感谢你的游玩!" navy_rework_welcome_splash_tab_2_content: "§H这里包含了你想知道的关于海军重置的一切。§!\n\n§C设计器-§!\n£white_dot 在设计§Y驱逐舰§!、§Y巡洋舰§!或§Y战列舰§!的时候,§Y主炮§!是和历史唯一的一一对应的装备。由于它们的火力和穿甲据此做了平衡,§R请确保它们的数量和现实中接近§!。诸如§Y副炮§!和§Y鱼雷§!等装备则与原版没有区别。\n£white_dot 一些在原版受限的装备在本模组中是开放的,比如你可以建造超重炮战列舰,轻炮重巡,无甲巡洋舰等等。\n£white_dot 舰船角色在驱逐舰和巡洋舰上是必须的,它们可以提供不同的增益并解锁特殊的部件。\n£white_dot 巡洋舰的主力屏卫之分不由主炮口径为标准。所有巡洋舰(除装甲舰外)都初始默认为屏卫舰,且需要特殊的角色才能让它们成为主力舰。\n£white_dot §Y导弹§!可以安装在晚期的重型或巡洋舰船体上,不过后者需要专门的导弹巡洋舰角色来安装。\n£white_dot 鱼雷可以对重型舰船造成巨量的伤害,不过重型装甲只能提供非常有限的鱼雷防护,你需要安装§Y鱼雷防御系统§!来避免这一点。\n£white_dot 主炮的穿甲经过一定的平衡。其基础穿深为同时期装甲的1.1倍,这也意味着基础的装甲钢和混合防护方案可以避免被击穿,而下一代主炮则可以击穿使用重点防护的该型战舰。\n£white_dot 海战中的甲弹对抗公式以如下规则计算,穿甲和装甲的比值与伤害权重之间的映射关系为:超过200%为100%伤害,100%到200%为100%伤害,85%到100%为70%伤害,75%到85%为60%伤害,60%到75%为45%伤害,50%到60%为35%伤害,30%到50%为20%伤害,10%到30%为10%伤害,低于10%为1%伤害。\n£white_dot §Y超重型主炮§!根据炮管数量和§Y重型主炮§!归类在一起,但是它们仍然在某些船体上受到安装限制。\n£white_dot 设计器中的舰船分类符号可以帮助你更好地管理舰队。其仅仅表示该国对舰船的分类和定义,没有实际效果。\n£white_dot 辅助船非常脆弱,但是航程极长。由于舰队最大航程是由平均数决定的,因此在舰队中加入一些辅助船可以增加航程。\n\n§C科技树-§!\n£white_dot 尽管科技树的外观变化巨大,但是它的本质仍然和原版类似,你不需要花费大量时间去理解。\n£white_dot 并不是所有科技都是有价值的,请根据你的战略和地缘情况理智选择。\n£white_dot 子科技需要船体科技研究完成才能解锁。其中有一些还需要非海军科技的进步来推动。例如,主动声呐需要被动声呐研究完成,而一些火控系统则需要工程科技的进步作为前提。\n\n§C海战-§!\n£white_dot 海战的最短时间§Y已经被提高到20小时,主力舰在第22小时开火,其他舰艇在第30小时开火§!,而§G航母则可以在刚加入战斗时就参与进攻§!。§Y航母堆叠限制§!被放宽到6。你使用舰载机的方式在本模组中更加重要。\n£white_dot 舰艇的防空和舰载战斗机的伤害与命中率都获得了提升。一支没有战斗机护航的航母舰队可能会在进攻中损失更多的舰载机。\n£white_dot 基础的阵位被削减为50%,但优势的水面探测数值可以带来最多50%的阵位奖励。\n£white_dot 水上飞机弹射器、航母和声呐在反潜战中的表现都更加有用和强力,而§Y潜艇§!基础的§Y可见度§!相较原版被§R增加§!了,在面对有良好反潜能力的舰队时,潜艇不再拥有优势。\n£white_dot AI的设计模板是刻意默认设置为§Y史实向§!的。尽管这些模板比原版要强一些,但是过去的最优设计仍然是有效的。\n\n§C其他-§!\n£white_dot 玩家和AI都享有§G-15%§!海军燃料消耗减免。\n£white_dot 单个船厂的产出已被提高到§G160%§!,一般在没有加成的情况下,建造一艘满配战列舰的时间在1-2年之间。\n£white_dot AI控制的主要国家会分别在1940年,1943年,1945年和冷战时期(如果没有投降的话)获得一批海军科技和独特的舰船设计。\n£white_dot AI会根据历史上的学说选择和战争情况选择不同的海军建造策略(包括舰载机)。例如,原版的§g德国§!会更加专注于潜艇,而§B美国§!则会重视航母。" navy_rework_welcome_splash_tab_3_content: "§H这里罗列关于海军重置的其他信息。§!\n\n§C兼容性-§!\n£white_dot 除非有§Y兼容包§!,本模组与修改科技树的模组不兼容,已有的兼容包链接都会在创意工坊界面列出。\n£white_dot §R所有生成舰船设计的国策/事件/决议都会失效,这是为了兼容性的考量和必要牺牲。§!\n\n§C二次创作-§!\n£white_dot 除了56之路外,不会再有其他的官方兼容包发布,希望社区可以更多地参与此事。目前日共重置与日本史实国策重做已完全兼容本模组。\n£white_dot 所有人都可以随意利用本模组的资源(代码/图标/文本),但在使用中请标明出处并通知我。感谢你的理解。" navy_rework_welcome_splash_tab_4_content: "大家好,海军重置已经走过了艰难的开发阶段,如今史实设计器、初始海军编制和设计、图标和科技树都已经基本完成,整个大框架完成后,剩余的工作便是进一步丰富和扩充,而这相比之前的开拓等等都要简单一些。借此机会我想和大家讲讲这个mod的过去和未来。\n\n我是2016年入的钢4坑,在加里波第的噩梦版本,也就是0.6时期接触到的KR,当时就被它详实有趣的世界观所吸引,之后几年KR一直是我玩的最多的mod之一。KR在0.8发布了海军重做,也是我最喜欢最兴奋的一个版本,由此我开始对海军感兴趣,也越发经常地想象KR世界观中的海军和军舰会是什么样子的。\n\n2021年春节前夕的一个周五下午,我在办公室摸鱼逛reddit,看到了一位外国网友写的对KR中加拿大和日本海军的战舰原型考证,这篇文章深深吸引了我,我用了一个下午翻译后发布到了贴吧上,收获了很多人的支持。尽管后来因为屏蔽的问题我转战知乎,但我始终将KR海军考据的系列坚持了下来,从海军大国到一些特色小国我都查阅了大量资料,也为这个mod打下了基础。\n\n在KR0.22更新之前,开发因为一些原因多次削减了海军的内容,我一直感到很遗憾,0.22的大改给了我这个动力去做之前我不敢想的事情。虽然写代码是我的老本行,但是美工、文案和汉译英等等我都是从头开始学,一次次试错,一个人陆陆续续弄了大半年,发布了KR和KX两版,才做到现在这个地步,我从中也学到了很多。如今,我们也终于迎来了原版海军重置的发布。\n\n我想借这个机会感谢所有在这个过程中帮助我的朋友和玩家,包括启发我的reddit网友Tragic-tragedy,贴吧上对我的史料斧正的朋友,在知乎上追更的朋友,还有许多订阅海军重置的玩家,没有你们的支持就没有这个mod,谢谢你们!\n\n最后,我还想借此机会感谢我的外公,他曾在中国人民解放军海军服役了几十年,在我的孩提时代启发了我对海军的认识。上世纪七八十年代,我的外公分别在几艘海军科考船上服役,担任过气象专家和部门政委等职务,他的大部分军旅生涯是在向阳红10号船上度过的,这也是当时中国自主设计建造的吨位最大的远洋科考船。1980年,向阳红10号作为新中国历史上最大规模远洋舰队的一员参加了中国第一次洲际弹道导弹发射试验,这就是大家熟知的580任务。我的外公当时负责气象部门,为回收导弹黑匣子的时间窗口提供预报支持。四年后,他随船参加了中国第一次南极科考任务,并在乔治王岛参与了长城站的建设。向阳红10号船之后被改装成了远望4号,在2007年遇到事故损坏,最后成了东方21D的靶子,每每说起来,他还是有些惋惜。我能看出来他对曾经的海军生涯有着复杂的情感,一方面为对国家做出贡献而感到骄傲光荣,而另一方面又为错过了孩子们的成长感到缺憾。不过尽管如此,他从小给我讲述的故事仍然点燃了我对海军的兴趣,为这个mod播下了一颗种子。\n\n随着我现在工作生活越来越忙,不知道海军重置还能维持多久,所以我在此也希望成立一个小团队,用半做半学的方式,把这个mod延续下去。\n\n有兴趣加我qq:1245385638,或海军重置群:162239327" \ No newline at end of file diff --git a/src/localisation/replace/vnr_ai_l_english.yml b/src/localisation/replace/vnr_ai_l_english.yml index 9c91ca6..6bb5a33 100755 --- a/src/localisation/replace/vnr_ai_l_english.yml +++ b/src/localisation/replace/vnr_ai_l_english.yml @@ -54,7 +54,7 @@ vnr_research_budget: "海军科研经费" RULE_ALLOW_AI_TECH_AUTO_UNLOCK: "允许AI自动解锁科技" RULE_ALLOW_AI_TECH_AUTO_UNLOCK_FREE_DESC: "AI会在游戏中自动解锁海军科技。" - RULE_ALLOW_AI_TECH_AUTO_UNLOCK_BLOCKED_DESC: "AI不会在游戏中自动解锁科技。\n§R这可能改变AI选择科技的倾向,并且影响其他方面的科研。§!" + RULE_ALLOW_AI_TECH_AUTO_UNLOCK_BLOCKED_DESC: "AI不会在游戏中自动解锁海军科技。\n§R这可能改变AI选择科技的倾向,并且影响其他方面的科研。§!" RULE_SHIPYARD_OUTPUT_BOOST: "允许船厂产能加成" RULE_OPTION_FREE_AI: "仅限AI" RULE_OPTION_FREE_PLAYER: "仅限玩家" @@ -64,4 +64,7 @@ RULE_SHIPYARD_OUTPUT_BOOST_BLOCKED_DESC: "船厂的产出为2.5点IC/日,与原版一致。" vnr_shipyard_output_boost: "海军重置船厂产出加成" join_tactical_data_link: "接入[ROOT.GetFactionName]海军战术数据链" - join_tactical_data_link_desc: "一套联合战术数据链系统已经由我们阵营当中的领先成员部署成功。虽然这是一个加强我军与盟友协同作战能力的好机会,但是我们仍然可以独立开发一套自己的数据链系统。\n§C如果我们选择接入友方数据链,我们将不能研发自己的版本,但会立刻解锁以下加成:§!\n§Y海军协同性:§!§G+10%§!\n§Y海军组织度:§!§G+7.5%§!\n§Y可见度:§!§G-7.5%§!" \ No newline at end of file + join_tactical_data_link_desc: "一套联合战术数据链系统已经由我们阵营当中的领先成员部署成功。虽然这是一个加强我军与盟友协同作战能力的好机会,但是我们仍然可以独立开发一套自己的数据链系统。\n§C如果我们选择接入友方数据链,我们将不能研发自己的版本,但会立刻解锁以下加成:§!\n§Y海军协同性:§!§G+10%§!\n§Y海军组织度:§!§G+7.5%§!\n§Y可见度:§!§G-7.5%§!" + RULE_AI_NAVAL_MANAGEMENT: "使用海军重置海军管理AI" + RULE_AI_NAVAL_MANAGEMENT_FREE_DESC: "在原版环境中§G启动§!海军舰队管理AI。" + RULE_AI_NAVAL_MANAGEMENT_BLOCKED_DESC: "在原版环境中§R关闭§!海军舰队管理AI。\n§Y使用原版或其他激活状态mod提供的海军AI。§!" \ No newline at end of file diff --git a/src/localisation/simp_chinese/replace/navy_rework_welcome_l_simp_chinese.yml b/src/localisation/simp_chinese/replace/navy_rework_welcome_l_simp_chinese.yml index a6b707d..de91597 100755 --- a/src/localisation/simp_chinese/replace/navy_rework_welcome_l_simp_chinese.yml +++ b/src/localisation/simp_chinese/replace/navy_rework_welcome_l_simp_chinese.yml @@ -4,7 +4,7 @@ navy_rework_welcome_splash_tab_3: "额外信息" navy_rework_welcome_splash_tab_4: "致谢" navy_rework_options_button_text: "继续" - navy_rework_welcome_splash_tab_1_content: "§Hv1.12 “霸王行动”§!\n\n§C重要新增:§!\n\n-新科技:抗波设计,电磁信号管制,雷达源定位,对称密钥加密,龙勃透镜,密接区域防空\n-新模块:雷达定位装置,滑跃起飞甲板\n-调整冷战科技布局\n\n§C更新:§!\n\n-允许战列舰改装战列舰安装超重型装甲\n-装甲舰不能再安装16英寸或更大的舰炮\n-全导弹布局现在有造价,冷战船体的可靠性降低\n-经济型核反应堆以百分比降低造价\n-降低诱饵发射装置和火箭炮的造价\n-超级航母科技移动到1948年\n-为德国巡洋舰添加柴油机\n-为扎拉级设置正确的图标\n-核动力引擎科技移动到冷战巡洋舰分支\n-增加加入友军数据链的决议\n-4级双联装主炮的速度影响略微提高\n-为轻巡亚特兰大添加一个立绘\n-为航母信浓添加一个立绘\n\n§C修复:§!\n\n-修复部分计划蓝图的防空炮没有重型的问题\n-修复全导弹布局必须要装副炮的问题\n-修复护航航母可以安装经济型核反应堆的问题\n-修复重型舰船俯视图中高平炮缺失的问题\n\n感谢你的游玩!" + navy_rework_welcome_splash_tab_1_content: "§Hv1.13 “赤壁鏖兵”§!\n\n§C重要新增:§!\n\n-为部分主要国家添加战时的舰队部署管理AI\n-调整海军生产AI\n\n§C更新:§!\n\n-制海权计算公式权重重做,现在IC的权重比人力更高\n-航空战列舰现在只会算作航母\n-增加所有舰船的补给消耗\n-为机库模块添加补给消耗的修正\n-在加载海军重置版本的海军前添加一个删除全世界海军的效果以防止原版和其他mod文件污染\n-为苏联添加赠送的AI舰船设计\n-降低轻型柴油引擎的速度\n-移除超重型装甲的可见度惩罚,超重型船体的可见度相应提高\n-不允许航母使用超重型引擎\n-降低防空巡洋舰角色的造价\n-为复仇级添加一个立绘\n-为南美的部分岸防舰添加立绘\n-微调设计器UI\n\n§C修复:§!\n\n-修复生产界面舰船改装格中角色图标出框的问题\n-修复一些错字\n-修复德国开局驱逐舰立绘使用虚构驱逐舰的问题\n\n感谢你的游玩!" navy_rework_welcome_splash_tab_2_content: "§H这里包含了你想知道的关于海军重置的一切。§!\n\n§C设计器-§!\n£white_dot 在设计§Y驱逐舰§!、§Y巡洋舰§!或§Y战列舰§!的时候,§Y主炮§!是和历史唯一的一一对应的装备。由于它们的火力和穿甲据此做了平衡,§R请确保它们的数量和现实中接近§!。诸如§Y副炮§!和§Y鱼雷§!等装备则与原版没有区别。\n£white_dot 一些在原版受限的装备在本模组中是开放的,比如你可以建造超重炮战列舰,轻炮重巡,无甲巡洋舰等等。\n£white_dot 舰船角色在驱逐舰和巡洋舰上是必须的,它们可以提供不同的增益并解锁特殊的部件。\n£white_dot 巡洋舰的主力屏卫之分不由主炮口径为标准。所有巡洋舰(除装甲舰外)都初始默认为屏卫舰,且需要特殊的角色才能让它们成为主力舰。\n£white_dot §Y导弹§!可以安装在晚期的重型或巡洋舰船体上,不过后者需要专门的导弹巡洋舰角色来安装。\n£white_dot 鱼雷可以对重型舰船造成巨量的伤害,不过重型装甲只能提供非常有限的鱼雷防护,你需要安装§Y鱼雷防御系统§!来避免这一点。\n£white_dot 主炮的穿甲经过一定的平衡。其基础穿深为同时期装甲的1.1倍,这也意味着基础的装甲钢和混合防护方案可以避免被击穿,而下一代主炮则可以击穿使用重点防护的该型战舰。\n£white_dot 海战中的甲弹对抗公式以如下规则计算,穿甲和装甲的比值与伤害权重之间的映射关系为:超过200%为100%伤害,100%到200%为100%伤害,85%到100%为70%伤害,75%到85%为60%伤害,60%到75%为45%伤害,50%到60%为35%伤害,30%到50%为20%伤害,10%到30%为10%伤害,低于10%为1%伤害。\n£white_dot §Y超重型主炮§!根据炮管数量和§Y重型主炮§!归类在一起,但是它们仍然在某些船体上受到安装限制。\n£white_dot 设计器中的舰船分类符号可以帮助你更好地管理舰队。其仅仅表示该国对舰船的分类和定义,没有实际效果。\n£white_dot 辅助船非常脆弱,但是航程极长。由于舰队最大航程是由平均数决定的,因此在舰队中加入一些辅助船可以增加航程。\n\n§C科技树-§!\n£white_dot 尽管科技树的外观变化巨大,但是它的本质仍然和原版类似,你不需要花费大量时间去理解。\n£white_dot 并不是所有科技都是有价值的,请根据你的战略和地缘情况理智选择。\n£white_dot 子科技需要船体科技研究完成才能解锁。其中有一些还需要非海军科技的进步来推动。例如,主动声呐需要被动声呐研究完成,而一些火控系统则需要工程科技的进步作为前提。\n\n§C海战-§!\n£white_dot 海战的最短时间§Y已经被提高到20小时,主力舰在第22小时开火,其他舰艇在第30小时开火§!,而§G航母则可以在刚加入战斗时就参与进攻§!。§Y航母堆叠限制§!被放宽到6。你使用舰载机的方式在本模组中更加重要。\n£white_dot 舰艇的防空和舰载战斗机的伤害与命中率都获得了提升。一支没有战斗机护航的航母舰队可能会在进攻中损失更多的舰载机。\n£white_dot 基础的阵位被削减为50%,但优势的水面探测数值可以带来最多50%的阵位奖励。\n£white_dot 水上飞机弹射器、航母和声呐在反潜战中的表现都更加有用和强力,而§Y潜艇§!基础的§Y可见度§!相较原版被§R增加§!了,在面对有良好反潜能力的舰队时,潜艇不再拥有优势。\n£white_dot AI的设计模板是刻意默认设置为§Y史实向§!的。尽管这些模板比原版要强一些,但是过去的最优设计仍然是有效的。\n\n§C其他-§!\n£white_dot 玩家和AI都享有§G-15%§!海军燃料消耗减免。\n£white_dot 单个船厂的产出已被提高到§G160%§!,一般在没有加成的情况下,建造一艘满配战列舰的时间在1-2年之间。\n£white_dot AI控制的主要国家会分别在1940年,1943年,1945年和冷战时期(如果没有投降的话)获得一批海军科技和独特的舰船设计。\n£white_dot AI会根据历史上的学说选择和战争情况选择不同的海军建造策略(包括舰载机)。例如,原版的§g德国§!会更加专注于潜艇,而§B美国§!则会重视航母。" navy_rework_welcome_splash_tab_3_content: "§H这里罗列关于海军重置的其他信息。§!\n\n§C兼容性-§!\n£white_dot 除非有§Y兼容包§!,本模组与修改科技树的模组不兼容,已有的兼容包链接都会在创意工坊界面列出。\n£white_dot §R所有生成舰船设计的国策/事件/决议都会失效,这是为了兼容性的考量和必要牺牲。§!\n\n§C二次创作-§!\n£white_dot 除了56之路外,不会再有其他的官方兼容包发布,希望社区可以更多地参与此事。目前日共重置与日本史实国策重做已完全兼容本模组。\n£white_dot 所有人都可以随意利用本模组的资源(代码/图标/文本),但在使用中请标明出处并通知我。感谢你的理解。" navy_rework_welcome_splash_tab_4_content: "大家好,海军重置已经走过了艰难的开发阶段,如今史实设计器、初始海军编制和设计、图标和科技树都已经基本完成,整个大框架完成后,剩余的工作便是进一步丰富和扩充,而这相比之前的开拓等等都要简单一些。借此机会我想和大家讲讲这个mod的过去和未来。\n\n我是2016年入的钢4坑,在加里波第的噩梦版本,也就是0.6时期接触到的KR,当时就被它详实有趣的世界观所吸引,之后几年KR一直是我玩的最多的mod之一。KR在0.8发布了海军重做,也是我最喜欢最兴奋的一个版本,由此我开始对海军感兴趣,也越发经常地想象KR世界观中的海军和军舰会是什么样子的。\n\n2021年春节前夕的一个周五下午,我在办公室摸鱼逛reddit,看到了一位外国网友写的对KR中加拿大和日本海军的战舰原型考证,这篇文章深深吸引了我,我用了一个下午翻译后发布到了贴吧上,收获了很多人的支持。尽管后来因为屏蔽的问题我转战知乎,但我始终将KR海军考据的系列坚持了下来,从海军大国到一些特色小国我都查阅了大量资料,也为这个mod打下了基础。\n\n在KR0.22更新之前,开发因为一些原因多次削减了海军的内容,我一直感到很遗憾,0.22的大改给了我这个动力去做之前我不敢想的事情。虽然写代码是我的老本行,但是美工、文案和汉译英等等我都是从头开始学,一次次试错,一个人陆陆续续弄了大半年,发布了KR和KX两版,才做到现在这个地步,我从中也学到了很多。如今,我们也终于迎来了原版海军重置的发布。\n\n我想借这个机会感谢所有在这个过程中帮助我的朋友和玩家,包括启发我的reddit网友Tragic-tragedy,贴吧上对我的史料斧正的朋友,在知乎上追更的朋友,还有许多订阅海军重置的玩家,没有你们的支持就没有这个mod,谢谢你们!\n\n最后,我还想借此机会感谢我的外公,他曾在中国人民解放军海军服役了几十年,在我的孩提时代启发了我对海军的认识。上世纪七八十年代,我的外公分别在几艘海军科考船上服役,担任过气象专家和部门政委等职务,他的大部分军旅生涯是在向阳红10号船上度过的,这也是当时中国自主设计建造的吨位最大的远洋科考船。1980年,向阳红10号作为新中国历史上最大规模远洋舰队的一员参加了中国第一次洲际弹道导弹发射试验,这就是大家熟知的580任务。我的外公当时负责气象部门,为回收导弹黑匣子的时间窗口提供预报支持。四年后,他随船参加了中国第一次南极科考任务,并在乔治王岛参与了长城站的建设。向阳红10号船之后被改装成了远望4号,在2007年遇到事故损坏,最后成了东方21D的靶子,每每说起来,他还是有些惋惜。我能看出来他对曾经的海军生涯有着复杂的情感,一方面为对国家做出贡献而感到骄傲光荣,而另一方面又为错过了孩子们的成长感到缺憾。不过尽管如此,他从小给我讲述的故事仍然点燃了我对海军的兴趣,为这个mod播下了一颗种子。\n\n随着我现在工作生活越来越忙,不知道海军重置还能维持多久,所以我在此也希望成立一个小团队,用半做半学的方式,把这个mod延续下去。\n\n有兴趣加我qq:1245385638,或海军重置群:162239327" \ No newline at end of file diff --git a/src/localisation/simp_chinese/replace/vnr_ai_l_simp_chinese.yml b/src/localisation/simp_chinese/replace/vnr_ai_l_simp_chinese.yml index db81d7f..ea856e6 100755 --- a/src/localisation/simp_chinese/replace/vnr_ai_l_simp_chinese.yml +++ b/src/localisation/simp_chinese/replace/vnr_ai_l_simp_chinese.yml @@ -54,7 +54,7 @@ vnr_research_budget: "海军科研经费" RULE_ALLOW_AI_TECH_AUTO_UNLOCK: "允许AI自动解锁科技" RULE_ALLOW_AI_TECH_AUTO_UNLOCK_FREE_DESC: "AI会在游戏中自动解锁海军科技。" - RULE_ALLOW_AI_TECH_AUTO_UNLOCK_BLOCKED_DESC: "AI不会在游戏中自动解锁科技。\n§R这可能改变AI选择科技的倾向,并且影响其他方面的科研。§!" + RULE_ALLOW_AI_TECH_AUTO_UNLOCK_BLOCKED_DESC: "AI不会在游戏中自动解锁海军科技。\n§R这可能改变AI选择科技的倾向,并且影响其他方面的科研。§!" RULE_SHIPYARD_OUTPUT_BOOST: "允许船厂产能加成" RULE_OPTION_FREE_AI: "仅限AI" RULE_OPTION_FREE_PLAYER: "仅限玩家" @@ -64,4 +64,7 @@ RULE_SHIPYARD_OUTPUT_BOOST_BLOCKED_DESC: "船厂的产出为2.5点IC/日,与原版一致。" vnr_shipyard_output_boost: "海军重置船厂产出加成" join_tactical_data_link: "接入[ROOT.GetFactionName]海军战术数据链" - join_tactical_data_link_desc: "一套联合战术数据链系统已经由我们阵营当中的领先成员部署成功。虽然这是一个加强我军与盟友协同作战能力的好机会,但是我们仍然可以独立开发一套自己的数据链系统。\n§C如果我们选择接入友方数据链,我们将不能研发自己的版本,但会立刻解锁以下加成:§!\n§Y海军协同性:§!§G+10%§!\n§Y海军组织度:§!§G+7.5%§!\n§Y可见度:§!§G-7.5%§!" \ No newline at end of file + join_tactical_data_link_desc: "一套联合战术数据链系统已经由我们阵营当中的领先成员部署成功。虽然这是一个加强我军与盟友协同作战能力的好机会,但是我们仍然可以独立开发一套自己的数据链系统。\n§C如果我们选择接入友方数据链,我们将不能研发自己的版本,但会立刻解锁以下加成:§!\n§Y海军协同性:§!§G+10%§!\n§Y海军组织度:§!§G+7.5%§!\n§Y可见度:§!§G-7.5%§!" + RULE_AI_NAVAL_MANAGEMENT: "使用海军重置海军管理AI" + RULE_AI_NAVAL_MANAGEMENT_FREE_DESC: "在原版环境中§G启动§!海军舰队管理AI。" + RULE_AI_NAVAL_MANAGEMENT_BLOCKED_DESC: "在原版环境中§R关闭§!海军舰队管理AI。\n§Y使用原版或其他激活状态mod提供的海军AI。§!" \ No newline at end of file