Cold War assets mod v1.2 support (#482)

* Implemented support for the Cold War assets mod (ex Tu-16) v1.0 by tripod3

* Rename     resources/ui/units/aircrafts/banners/Tu-16.jpg (from resources/ui/units/aircrafts/banners/Tu_16.jpg)
Rename     resources/ui/units/aircrafts/banners/Tu-4K.jpg (from resources/ui/units/aircrafts/banners/Tu_4K.jpg)
Rename     resources/ui/units/aircrafts/icons/Tu-16_24.jpg (from resources/ui/units/aircrafts/icons/Tu_16_24.jpg)
Rename     resources/ui/units/aircrafts/icons/Tu-4K_24.jpg (from resources/ui/units/aircrafts/icons/Tu_4K_24.jpg)

Also added coldwarassets handling in ModSettings() call.

* Added a DEAD loadout for the Tu-22KD.

* Updated Cold War assets mod by tripod3 support to v1.2

* Modified   pydcs_extensions/coldwarassets/coldwarassets.py
Modified   resources/units/aircraft/B_47.yaml

* Modified   qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py

* Added      resources/units/aircraft/Yak_28.yaml

* Added banners, icons, loadouts and unit yamls by Biggus for new Cold War Assets added in mod version 1.2.

* Removed the Tu-128 Fiddler from soviet_union_1965.json because the Tu-128M variant is a 1979 modernization.

* Remove CAS & Armed Recon from Yak-28

* Fix typo

* Add BAI & DEAD to Tu-4K

---------

Co-authored-by: Raffson <Raffson@users.noreply.github.com>
This commit is contained in:
MetalStormGhost 2025-03-29 22:09:58 +02:00 committed by GitHub
parent 889b7299d3
commit b671d520c9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
29 changed files with 1156 additions and 10 deletions

View File

@ -10,7 +10,7 @@
* **[Modding]** Added VSN F-106 Delta Dart mod support (v2.9.4.101)
* **[Modding]** Added OH-6 Cayuse (v1.2) mod support, including the Vietnam Asset Pack v1.0
* **[Modding]** Added VSN EA-6B Prowler mod support (v2.9.4.102)
* **[Modding]** Added tripod3 Cold War assets mod support (v1.0)
* **[Modding]** Added tripod3 Cold War assets mod support (v1.2)
* **[Modding]** Added VSN Mirage III mod support (2.5.7.01)
* **[Campaign Setup]** Allow adjustments to naval TGOs (except carriers) on turn 0
* **[Campaign Design]** Ability to configure specific carrier names & types in campaign's yaml file

View File

@ -632,10 +632,15 @@ class Faction:
self.remove_preset("RBS-98")
if not mod_settings.coldwarassets:
self.remove_aircraft("B_47")
self.remove_aircraft("B_58")
self.remove_aircraft("Tu-4K")
self.remove_aircraft("Tu-16")
self.remove_aircraft("tu_22D")
self.remove_aircraft("tu_22KD")
self.remove_aircraft("Tu_95K")
self.remove_aircraft("Tu_126")
self.remove_aircraft("Tu_128M")
self.remove_aircraft("Yak_28")
# SWPack
if not mod_settings.SWPack:
self.remove_aircraft("AWINGA")

View File

@ -1,4 +1,4 @@
# Requires Cold War assets mod (ex Tu-16) v1.0 by tripod3:
# Requires Cold War assets mod (ex Tu-16) v1.2 by tripod3:
# https://forum.dcs.world/topic/350021-cold-war-assets-mod-ex-tu-16-v-10/
#
from typing import Any, Dict, Set
@ -82,6 +82,14 @@ class WeaponsColdWarAssets:
"name": "6 x M19 - 38 x AN-M69, 500lb CBU with incendiary submunitions",
"weight": 1183.87512,
}
B_43 = {"clsid": "{B_43_B_58}", "name": "B-43", "weight": 9400}
Mk_53 = {"clsid": "{Mk_53_1}", "name": "Mk.53", "weight": 5000}
W_53_H_Bomb_with_fuel_tank = {
"clsid": "{W_53_B_58}",
"name": "W-53 H-Bomb with fuel tank",
"weight": 4000,
}
Fuel_10940_kg = {"clsid": "{LeBaque_B_58}", "name": "Fuel 10940 kg", "weight": 37}
FAB_3000_M54 = {"clsid": "{FAB_3000_tu_22}", "name": "FAB-3000 M54", "weight": 9400}
FAB_9000_M54 = {"clsid": "{FAB_9000_tu_22}", "name": "FAB-9000 M54", "weight": 9400}
GAM_63_RASCAL = {
@ -89,6 +97,7 @@ class WeaponsColdWarAssets:
"name": "GAM-63 RASCAL",
"weight": 2400,
}
Kh_20 = {"clsid": "{Kh_20_Tu_95K}", "name": "Kh-20", "weight": 2400}
Kh_22MA = {"clsid": "{Tu_22_Kh22PSI}", "name": "Kh-22MA", "weight": 2400}
Kh_22P__Passive_seeker_ = {
"clsid": "{TU_22_KH22P}",
@ -101,6 +110,11 @@ class WeaponsColdWarAssets:
"weight": 1450,
}
KSR_2 = {"clsid": "{TU_16_KSR2}", "name": "KSR-2", "weight": 1160}
KSR_2D_decoy_missile = {
"clsid": "{TU_16_KSR2d}",
"name": "KSR-2D decoy missile",
"weight": 1160,
}
KSR_2_086__Passive_seeker_ = {
"clsid": "{TU_16_KSR2ARM}",
"name": "KSR-2.086 (Passive seeker)",
@ -109,6 +123,13 @@ class WeaponsColdWarAssets:
KSR_5 = {"clsid": "{TU_16_KSR5}", "name": "KSR-5", "weight": 1450}
KS_1 = {"clsid": "{Tu4_KS_1}", "name": "KS-1", "weight": 1160}
KS_1_late = {"clsid": "{Tu16_KS_1}", "name": "KS-1 late", "weight": 1160}
RDS_37 = {"clsid": "{RDS37_1}", "name": "RDS-37", "weight": 5500}
R_4RM = {"clsid": "{R-8M1R}", "name": "R-4RM", "weight": 385}
R_4TM = {"clsid": "{R-8M1T}", "name": "R-4TM", "weight": 265}
R_8M1R_Yak_28 = {"clsid": "{R-8M1R_Yak_28}", "name": "R-8M1R", "weight": 285}
R_8M1T_Yak_28 = {"clsid": "{R-8M1T_Yak_28}", "name": "R-8M1T", "weight": 265}
R_98MR_Yak_28 = {"clsid": "{R-98MR_Yak_28}", "name": "R-98MR", "weight": 292}
R_98MT_Yak_28 = {"clsid": "{R-98MT_Yak_28}", "name": "R-98MT", "weight": 272}
inject_weapons(WeaponsColdWarAssets)
@ -136,7 +157,15 @@ class B_47(PlaneType):
class Pylon1:
GAM_63_RASCAL = (1, WeaponsColdWarAssets.GAM_63_RASCAL)
pylons: Set[int] = {1}
class Pylon2:
Mk_53 = (2, WeaponsColdWarAssets.Mk_53)
# ERRR {72CAC282-AE18-490B-BD4D-35E7EE969E73}
# ERRR {B84DFE16-6AC7-4854-8F6D-34137892E166}
Mk_84_28 = (2, Weapons.Mk_84_28)
# ERRR {F092B80C-BB54-477E-9408-66DEEF740008}
# ERRR {574EDEDF-20DE-4942-B2A2-B2EDFD621562}
pylons: Set[int] = {1, 2}
tasks = [
task.AntishipStrike,
@ -145,10 +174,63 @@ class B_47(PlaneType):
task.RunwayAttack,
task.SEAD,
task.CAS,
task.Reconnaissance,
]
task_default = task.AntishipStrike
@planemod
class B_58(PlaneType):
id = "B_58"
height = 10.13
width = 23.17
length = 41.6
fuel_max = 22500
max_speed = 2121.84
chaff = 45
flare = -0
charge_total = 45
chaff_charge_size = 1
flare_charge_size = 1
livery_name = "B_58" # from type
class Pylon1:
B_43 = (1, WeaponsColdWarAssets.B_43)
Mk_84___2000lb_GP_Bomb_LD = (1, Weapons.Mk_84___2000lb_GP_Bomb_LD)
class Pylon2:
B_43 = (2, WeaponsColdWarAssets.B_43)
Mk_84___2000lb_GP_Bomb_LD = (2, Weapons.Mk_84___2000lb_GP_Bomb_LD)
class Pylon3:
B_43 = (3, WeaponsColdWarAssets.B_43)
Mk_84___2000lb_GP_Bomb_LD = (3, Weapons.Mk_84___2000lb_GP_Bomb_LD)
class Pylon4:
B_43 = (4, WeaponsColdWarAssets.B_43)
Mk_84___2000lb_GP_Bomb_LD = (4, Weapons.Mk_84___2000lb_GP_Bomb_LD)
class Pylon5:
W_53_H_Bomb_with_fuel_tank = (
5,
WeaponsColdWarAssets.W_53_H_Bomb_with_fuel_tank,
)
pylons: Set[int] = {1, 2, 3, 4, 5}
tasks = [
task.Reconnaissance,
task.GroundAttack,
task.CAS,
task.RunwayAttack,
task.AntishipStrike,
task.PinpointStrike,
]
task_default = task.GroundAttack
@planemod
class Tu_4K(PlaneType):
id = "Tu-4K"
@ -207,12 +289,14 @@ class Tu_16(PlaneType):
1,
WeaponsColdWarAssets.KSR_2_086__Passive_seeker_,
)
KSR_2D_decoy_missile = (1, WeaponsColdWarAssets.KSR_2D_decoy_missile)
KSR5P__Passive_seeker_ = (1, WeaponsColdWarAssets.KSR5P__Passive_seeker_)
KSR_5 = (1, WeaponsColdWarAssets.KSR_5)
class Pylon2:
FAB_3000_M54 = (2, WeaponsColdWarAssets.FAB_3000_M54)
FAB_9000_M54 = (2, WeaponsColdWarAssets.FAB_9000_M54)
RDS_37 = (2, WeaponsColdWarAssets.RDS_37)
# ERRR <CLEAN>
@ -231,6 +315,7 @@ class Tu_16(PlaneType):
4,
WeaponsColdWarAssets.KSR_2_086__Passive_seeker_,
)
KSR_2D_decoy_missile = (4, WeaponsColdWarAssets.KSR_2D_decoy_missile)
KSR5P__Passive_seeker_ = (4, WeaponsColdWarAssets.KSR5P__Passive_seeker_)
KSR_5 = (4, WeaponsColdWarAssets.KSR_5)
@ -247,6 +332,44 @@ class Tu_16(PlaneType):
task_default = task.AntishipStrike
@planemod
class Tu_95K(PlaneType):
id = "Tu_95K"
large_parking_slot = True
height = 13.3
width = 50.04
length = 49.13
fuel_max = 87000
max_speed = 919.8
chaff = 48
flare = 48
charge_total = 96
chaff_charge_size = 1
flare_charge_size = 1
eplrs = True
property_defaults: Dict[str, Any] = {}
livery_name = "TU_95K" # from type
class Pylon1:
Kh_20 = (1, WeaponsColdWarAssets.Kh_20)
pylons: Set[int] = {1}
tasks = [
task.Reconnaissance,
task.GroundAttack,
task.CAS,
task.AFAC,
task.RunwayAttack,
task.AntishipStrike,
task.PinpointStrike,
task.SEAD,
]
task_default = task.GroundAttack
@planemod
class tu_22D(PlaneType):
id = "tu_22D"
@ -286,6 +409,7 @@ class tu_22D(PlaneType):
1,
Weapons.RN_28___260_kg__nuclear_bomb__free_fall,
)
RDS_37 = (1, WeaponsColdWarAssets.RDS_37)
# ERRR <CLEAN>
@ -349,6 +473,7 @@ class tu_22KD(PlaneType):
2,
Weapons.MBD3_U6_68_with_6_x_FAB_500_M_62___500kg_GP_Bombs_LD,
)
RDS_37 = (1, WeaponsColdWarAssets.RDS_37)
# ERRR <CLEAN>
@ -372,3 +497,177 @@ class tu_22KD(PlaneType):
task.SEAD,
]
task_default = task.GroundAttack
@planemod
class Yak_28(PlaneType):
id = "Yak_28"
height = 5
width = 9.34
length = 18
fuel_max = 5600
max_speed = 2229.984
category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F}
radio_frequency = 127.5
livery_name = "YAK_28" # from type
class Pylon1:
APU_13U_2_with_R_3S__AA_2_Atoll_B____IR_AAM = (
1,
Weapons.APU_13U_2_with_R_3S__AA_2_Atoll_B____IR_AAM,
)
R_8M1R = (1, WeaponsColdWarAssets.R_8M1R_Yak_28)
R_8M1T = (1, WeaponsColdWarAssets.R_8M1T_Yak_28)
R_98MT = (1, WeaponsColdWarAssets.R_98MT_Yak_28)
R_98MR = (1, WeaponsColdWarAssets.R_98MR_Yak_28)
class Pylon2:
APU_13U_2_with_R_3S__AA_2_Atoll_B____IR_AAM = (
2,
Weapons.APU_13U_2_with_R_3S__AA_2_Atoll_B____IR_AAM,
)
R_8M1R = (2, WeaponsColdWarAssets.R_8M1R_Yak_28)
R_8M1T = (2, WeaponsColdWarAssets.R_8M1T_Yak_28)
R_98MT = (2, WeaponsColdWarAssets.R_98MT_Yak_28)
R_98MR = (2, WeaponsColdWarAssets.R_98MR_Yak_28)
ORO_57K___S_5M_x_8 = (2, Weapons.ORO_57K___S_5M_x_8)
class Pylon3:
RN_24___470kg__nuclear_bomb__free_fall = (
3,
Weapons.RN_24___470kg__nuclear_bomb__free_fall,
)
RN_28___260_kg__nuclear_bomb__free_fall = (
3,
Weapons.RN_28___260_kg__nuclear_bomb__free_fall,
)
FAB_1500_M_54___1500kg_GP_Bomb_LD = (
3,
Weapons.FAB_1500_M_54___1500kg_GP_Bomb_LD,
)
MBD3_U4T_with_4_x_FAB_250___250kg_GP_Bombs_LD = (
3,
Weapons.MBD3_U4T_with_4_x_FAB_250___250kg_GP_Bombs_LD,
)
MBD3_U6_68_with_3_x_FAB_250___250kg_GP_Bombs_LD = (
3,
Weapons.MBD3_U6_68_with_3_x_FAB_250___250kg_GP_Bombs_LD,
)
FAB_500_M54_TU___480_kg__bomb__parachute = (
3,
Weapons.FAB_500_M54_TU___480_kg__bomb__parachute,
)
MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD = (
3,
Weapons.MBD3_U6_68_with_6_x_FAB_250___250kg_GP_Bombs_LD,
)
MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD = (
3,
Weapons.MBD3_U6_68_with_6_x_FAB_100___100kg_GP_Bombs_LD,
)
class Pylon4:
APU_13U_2_with_R_3S__AA_2_Atoll_B____IR_AAM = (
4,
Weapons.APU_13U_2_with_R_3S__AA_2_Atoll_B____IR_AAM,
)
R_8M1R = (4, WeaponsColdWarAssets.R_8M1R_Yak_28)
R_8M1T = (4, WeaponsColdWarAssets.R_8M1T_Yak_28)
R_98MT = (4, WeaponsColdWarAssets.R_98MT_Yak_28)
R_98MR = (4, WeaponsColdWarAssets.R_98MR_Yak_28)
class Pylon5:
APU_13U_2_with_R_3S__AA_2_Atoll_B____IR_AAM = (
5,
Weapons.APU_13U_2_with_R_3S__AA_2_Atoll_B____IR_AAM,
)
R_8M1R = (5, WeaponsColdWarAssets.R_8M1R_Yak_28)
R_8M1T = (5, WeaponsColdWarAssets.R_8M1T_Yak_28)
R_98MT = (5, WeaponsColdWarAssets.R_98MT_Yak_28)
R_98MR = (5, WeaponsColdWarAssets.R_98MR_Yak_28)
ORO_57K___S_5M_x_8 = (5, Weapons.ORO_57K___S_5M_x_8)
pylons: Set[int] = {1, 2, 3, 4, 5}
tasks = [
task.CAP,
task.Escort,
task.FighterSweep,
task.Intercept,
task.GroundAttack,
]
task_default = task.Intercept
@planemod
class Tu_126(PlaneType):
id = "Tu_126"
large_parking_slot = True
height = 13.3
width = 50.04
length = 49.13
fuel_max = 72000
max_speed = 919.8
chaff = 48
flare = 48
charge_total = 96
chaff_charge_size = 1
flare_charge_size = 1
eplrs = True
property_defaults: Dict[str, Any] = {}
livery_name = "TU_126" # from type
pylons: Set[int] = set()
tasks = [task.Reconnaissance, task.AWACS]
task_default = task.AWACS
@planemod
class Tu_128M(PlaneType):
id = "Tu_128M"
height = 7.53
width = 17.5
length = 30.06
fuel_max = 15000
max_speed = 1908
chaff = 30
flare = 15
charge_total = 60
chaff_charge_size = 1
flare_charge_size = 2
category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F}
radio_frequency = 127.5
livery_name = "TU_128M" # from type
class Pylon1:
R_4RM = (1, WeaponsColdWarAssets.R_4RM)
R_4TM = (1, WeaponsColdWarAssets.R_4TM)
class Pylon2:
R_4RM = (2, WeaponsColdWarAssets.R_4RM)
R_4TM = (2, WeaponsColdWarAssets.R_4TM)
class Pylon3:
R_4RM = (3, WeaponsColdWarAssets.R_4RM)
R_4TM = (3, WeaponsColdWarAssets.R_4TM)
class Pylon4:
R_4RM = (4, WeaponsColdWarAssets.R_4RM)
R_4TM = (4, WeaponsColdWarAssets.R_4TM)
pylons: Set[int] = {1, 2, 3, 4}
tasks = [
task.GroundAttack,
task.CAS,
task.CAP,
task.Escort,
task.FighterSweep,
task.Intercept,
]
task_default = task.Intercept

View File

@ -186,7 +186,7 @@ class GeneratorOptions(QtWidgets.QWizardPage):
("A-6A Intruder (v2.7.5.01)", self.a6a_intruder),
("A-7E Corsair II", self.a7e_corsair2),
("C-130J-30 Super Hercules (v6.8.2)", self.hercules),
("Cold War Assets mod (v1.0)", self.coldwarassets),
("Cold War Assets mod (v1.2)", self.coldwarassets),
(
"CurrentHill Chinese Military Assets pack (1.1.4)",
self.chinesemilitaryassetspack,

View File

@ -0,0 +1,374 @@
local unitPayloads = {
["name"] = "B_58",
["payloads"] = {
[1] = {
["displayName"] = "Retribution Strike",
["name"] = "Retribution Strike",
["pylons"] = {
[1] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 1,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[2] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 2,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[3] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 3,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[4] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 4,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[5] = {
["CLSID"] = "{W_53_B_58}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 32,
},
},
[2] = {
["displayName"] = "Retribution Anti-ship",
["name"] = "Retribution Anti-ship",
["pylons"] = {
[1] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 1,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[2] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 2,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[3] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 3,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[4] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 4,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[5] = {
["CLSID"] = "{W_53_B_58}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 32,
},
},
[3] = {
["displayName"] = "Retribution DEAD",
["name"] = "Retribution DEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 1,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[2] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 2,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[3] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 3,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[4] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 4,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[5] = {
["CLSID"] = "{W_53_B_58}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 32,
},
},
[4] = {
["displayName"] = "Retribution OCA/Runway",
["name"] = "Retribution OCA/Runway",
["pylons"] = {
[1] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 1,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[2] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 2,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[3] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 3,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[4] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 4,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[5] = {
["CLSID"] = "{W_53_B_58}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 32,
},
},
[5] = {
["displayName"] = "Retribution Armed Recon",
["name"] = "Retribution Armed Recon",
["pylons"] = {
[1] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 1,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[2] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 2,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[3] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 3,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[4] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 4,
["settings"] = {
["NFP_PRESID"] = "MDRN_B_A_GPLD",
["NFP_PRESVER"] = 1,
["NFP_VIS_DrawArgNo_57"] = 0,
["NFP_fuze_type_nose"] = "M904E4",
["NFP_fuze_type_tail"] = "M905",
["arm_delay_ctrl_M904E4"] = 4,
["arm_delay_ctrl_M905"] = 4,
["function_delay_ctrl_M904E4"] = 0,
["function_delay_ctrl_M905"] = 0,
},
},
[5] = {
["CLSID"] = "{W_53_B_58}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["tasks"] = {
},
["unitType"] = "B_58",
}
return unitPayloads

View File

@ -0,0 +1,134 @@
local unitPayloads = {
["name"] = "Tu_128M",
["payloads"] = {
[1] = {
["displayName"] = "Retribution BARCAP",
["name"] = "Retribution BARCAP",
["pylons"] = {
[1] = {
["CLSID"] = "{R-8M1T}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{R-8M1R}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{R-8M1T}",
["num"] = 1,
},
[4] = {
["CLSID"] = "{R-8M1R}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 10,
},
},
[2] = {
["displayName"] = "Retribution Escort",
["name"] = "Retribution Escort",
["pylons"] = {
[1] = {
["CLSID"] = "{R-8M1T}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{R-8M1R}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{R-8M1T}",
["num"] = 1,
},
[4] = {
["CLSID"] = "{R-8M1R}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 10,
},
},
[3] = {
["displayName"] = "Retribution Fighter sweep",
["name"] = "Retribution Fighter sweep",
["pylons"] = {
[1] = {
["CLSID"] = "{R-8M1T}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{R-8M1R}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{R-8M1T}",
["num"] = 1,
},
[4] = {
["CLSID"] = "{R-8M1R}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 10,
},
},
[4] = {
["displayName"] = "Retribution Intercept",
["name"] = "Retribution Intercept",
["pylons"] = {
[1] = {
["CLSID"] = "{R-8M1T}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{R-8M1R}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{R-8M1T}",
["num"] = 1,
},
[4] = {
["CLSID"] = "{R-8M1R}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 10,
},
},
[5] = {
["displayName"] = "Retribution TARCAP",
["name"] = "Retribution TARCAP",
["pylons"] = {
[1] = {
["CLSID"] = "{R-8M1T}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{R-8M1R}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{R-8M1T}",
["num"] = 1,
},
[4] = {
["CLSID"] = "{R-8M1R}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 10,
},
},
},
["tasks"] = {
},
["unitType"] = "Tu_128M",
}
return unitPayloads

View File

@ -0,0 +1,48 @@
local unitPayloads = {
["name"] = "Tu_95K",
["payloads"] = {
[1] = {
["displayName"] = "Retribution Strike",
["name"] = "Retribution Strike",
["pylons"] = {
[1] = {
["CLSID"] = "{Kh_20_Tu_95K}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 32,
},
},
[2] = {
["displayName"] = "Retribution Anti-ship",
["name"] = "Retribution Anti-ship",
["pylons"] = {
[1] = {
["CLSID"] = "{Kh_20_Tu_95K}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 32,
},
},
[3] = {
["displayName"] = "Retribution DEAD",
["name"] = "Retribution DEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{Kh_20_Tu_95K}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["tasks"] = {
},
["unitType"] = "Tu_95K",
}
return unitPayloads

View File

@ -0,0 +1,176 @@
local unitPayloads = {
["name"] = "Yak_28",
["payloads"] = {
[1] = {
["displayName"] = "Retribution BARCAP",
["name"] = "Retribution BARCAP",
["pylons"] = {
[1] = {
["CLSID"] = "{R-98MR_Yak_28}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{R-3S}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{R-98MT_Yak_28}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{R-3S}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 10,
},
},
[2] = {
["displayName"] = "Retribution Escort",
["name"] = "Retribution Escort",
["pylons"] = {
[1] = {
["CLSID"] = "{R-98MR_Yak_28}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{R-3S}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{R-98MT_Yak_28}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{R-3S}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 10,
},
},
[3] = {
["displayName"] = "Retribution Fighter sweep",
["name"] = "Retribution Fighter sweep",
["pylons"] = {
[1] = {
["CLSID"] = "{R-98MR_Yak_28}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{R-3S}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{R-98MT_Yak_28}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{R-3S}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 10,
},
},
[4] = {
["displayName"] = "Retribution Intercept",
["name"] = "Retribution Intercept",
["pylons"] = {
[1] = {
["CLSID"] = "{R-98MR_Yak_28}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{R-3S}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{R-98MT_Yak_28}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{R-3S}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 10,
},
},
[5] = {
["displayName"] = "Retribution TARCAP",
["name"] = "Retribution TARCAP",
["pylons"] = {
[1] = {
["CLSID"] = "{R-98MR_Yak_28}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{R-3S}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{R-98MT_Yak_28}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{R-3S}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 10,
},
},
[6] = {
["displayName"] = "Retribution CAS",
["name"] = "Retribution CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{MBD3_U6_3*FAB-250_fwd}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 10,
},
},
[7] = {
["displayName"] = "Retribution Armed Recon",
["name"] = "Retribution Armed Recon",
["pylons"] = {
[1] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{MBD3_U6_3*FAB-250_fwd}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 10,
},
},
},
["tasks"] = {
},
["unitType"] = "Yak_28",
}
return unitPayloads

View File

@ -22,6 +22,7 @@
"Su-24M Fencer-D",
"Su-25 Frogfoot",
"Su-27 Flanker-B",
"Tu-128M Fiddler",
"Tu-142 Bear-F",
"Tu-22M3 Backfire-C",
"Tu-95MS Bear-H"

View File

@ -1,7 +1,7 @@
{
"country": "USSR",
"name": "Soviet Union 1965",
"authors": "Ghosti",
"authors": "Ghosti & Biggus",
"description": "<p>Soviet armed forces in the 60s, unsing the Cold War Assets mod by tripod3.</p>",
"locales": [
"ru_RU"
@ -11,13 +11,16 @@
"MiG-15bis Fagot",
"MiG-19P Farmer-B",
"MiG-21bis Fishbed-N",
"Yak-28",
"Tu-4K Bull",
"Tu-16 Badger-B",
"Tu-22D Blinder",
"Tu-22KD Blinder",
"Tu-95K Bear-C",
"Tu-95MS Bear-H"
],
"awacs": [
"Tu-126",
"A-50"
],
"tankers": [

View File

@ -1,13 +1,15 @@
{
"country": "USA",
"name": "USA 1965",
"authors": "Khopa",
"description": "<p>US army in the late 60s, during Vietnam war.</p>",
"authors": "Khopa, with additional units by Ghosti and Biggus",
"description": "<p>US forces in the late 60s, during Vietnam war.</p>",
"locales": [
"en_US"
],
"aircrafts": [
"B-52H Stratofortress",
"B-47 Stratojet",
"B-58 Hustler",
"C-130",
"CH-47D",
"CH-47F Block I",

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -17,4 +17,4 @@ tasks:
OCA/Runway: 610
Strike: 610
SEAD: 90
SEAD Sweep: 90
SEAD Escort: 90

View File

@ -0,0 +1,17 @@
description:
"The Convair B-58 Hustler, designed and produced by American aircraft manufacturer Convair, was the first operational bomber capable of Mach 2 flight."
introduced: 1960
manufacturer: Convair
origin: USA
price: 35
role: Strategic Bomber
max_range: 1500
variants:
B-58 Hustler: {}
tasks:
CAS: 100
Anti-ship: 90
DEAD: 220
OCA/Runway: 670
Strike: 670
Armed Recon: 200

View File

@ -13,4 +13,6 @@ variants:
tasks:
OCA/Runway: 200
Strike: 200
Anti-ship: 200
Anti-ship: 200
BAI: 270
DEAD: 245

View File

@ -0,0 +1,14 @@
description: "The Tupolev Tu-126 (NATO reporting name: Moss) was an airborne early warning and control aircraft developed from the Tupolev Tu-114 airliner by the Tupolev design bureau. It was in service with the armed forces of the Soviet Union from 1965 to 1984."
introduced: 1962
max_group_size: 1
max_range: 2000
manufacturer: Tupolev
origin: USSR
price: 45
patrol:
altitude: 25000
variants:
Tu-126: null
Tu-126 Moss: null
tasks:
AEW&C: 11

View File

@ -0,0 +1,25 @@
description:
"The Tupolev Tu-128 (NATO reporting name Fiddler) is a long-range interceptor aircraft
introduced by the Soviet Union in the 1960s. The official designation was Tu-128, but
this designation was less commonly used in the West. It was the largest and heaviest
fighter ever in service. The Tu-128M variant is a 1979 modernization of almost all
existing aircraft for better interception at low altitude. Development originated in
1970. Engines and airframe were not altered. The full designation of the entire
weapons complex was Tu-128S-4M. It contained a new RP-SM Smerch-M radar, and new
missile set, a combination of R-4RM and R-4TM."
introduced: 1964
manufacturer: Tupolev
origin: USSR
price: 15
role: Interceptor
max_range: 400
gunfighter: false
variants:
Tu-128M Fiddler: {}
kneeboard_units: "metric"
tasks:
BARCAP: 380
Escort: 380
Fighter sweep: 380
Intercept: 380
TARCAP: 380

View File

@ -0,0 +1,22 @@
description:
"The Tupolev Tu-95 (Russian: \u0422\u0443\u043F\u043E\u043B\u0435\u0432\
\ \u0422\u0443-95; NATO reporting name: \"Bear\") is a large, four-engine turboprop-powered\
\ strategic bomber and missile platform. First flown in 1952, the Tu-95 entered\
\ service with the Long-Range Aviation of the Soviet Air Forces in 1956 and is expected\
\ to serve the Russian Aerospace Forces until at least 2040. A development of the\
\ bomber for maritime patrol is designated Tu-142, while a passenger airliner derivative\
\ was called Tu-114. The aircraft has four Kuznetsov NK-12 engines with contra-rotating\
\ propellers. It is the only propeller-powered strategic bomber still in operational\
\ use today. The Tu-95 is one of the loudest military aircraft, particularly because\
\ the tips of the propeller blades move faster than the speed of sound"
introduced: 1960
manufacturer: Tupolev
origin: USSR/Russia
price: 35
role: Strategic Bomber
variants:
Tu-95K Bear-C: {}
tasks:
Strike: 650
Anti-ship: 490
DEAD: 290

View File

@ -0,0 +1,24 @@
description:
"The Yakovlev Yak-28 (Russian: Яковлев Як-28) is a swept wing, turbojet-powered
combat aircraft used by the Soviet Union. Produced initially as a tactical medium
bomber, it was also manufactured in reconnaissance, electronic warfare, interceptor,
and trainer versions, known by the NATO reporting names Brewer, Brewer-E, Firebar,
and Maestro respectively. Based on the Yak-129 prototype first flown on 5 March 1958,
it began to enter service in 1964."
introduced: 1964
manufacturer: Yakovlev
origin: USSR
price: 15
role: Interceptor
max_range: 200
gunfighter: false
variants:
Yak-28: {}
Yak-28 Firebar: {}
kneeboard_units: "metric"
tasks:
BARCAP: 350
Escort: 350
Fighter sweep: 350
Intercept: 350
TARCAP: 350

View File

@ -22,4 +22,4 @@ tasks:
OCA/Runway: 600
Strike: 600
SEAD: 30
SEAD Sweep: 30
SEAD Escort: 30