From 4412a0fa91a02bd3373515d31a4eaea3678c690f Mon Sep 17 00:00:00 2001 From: Drexyl Date: Tue, 8 Jul 2025 22:32:42 +1000 Subject: [PATCH] Add Tornado F3 ADV (1.0) mod support --- changelog.md | 1 + game/factions/faction.py | 3 + game/theater/start_generator.py | 1 + pydcs_extensions/__init__.py | 1 + pydcs_extensions/tornado_adv/__init__.py | 1 + pydcs_extensions/tornado_adv/tornado_adv.py | 143 ++++++++++++++++++ qt_ui/windows/newgame/QNewGameWizard.py | 1 + .../newgame/WizardPages/QGeneratorSettings.py | 4 + resources/customized_payloads/Tornado_ADV.lua | 107 +++++++++++++ .../units/aircrafts/banners/Tornado_ADV.jpg | Bin 0 -> 42930 bytes .../units/aircrafts/icons/Tornado_ADV_24.jpg | Bin 0 -> 1406 bytes resources/units/aircraft/Tornado_ADV.yaml | 40 +++++ 12 files changed, 302 insertions(+) create mode 100644 pydcs_extensions/tornado_adv/__init__.py create mode 100644 pydcs_extensions/tornado_adv/tornado_adv.py create mode 100644 resources/customized_payloads/Tornado_ADV.lua create mode 100644 resources/ui/units/aircrafts/banners/Tornado_ADV.jpg create mode 100644 resources/ui/units/aircrafts/icons/Tornado_ADV_24.jpg create mode 100644 resources/units/aircraft/Tornado_ADV.yaml diff --git a/changelog.md b/changelog.md index 92abf4df..5992abd5 100644 --- a/changelog.md +++ b/changelog.md @@ -7,6 +7,7 @@ * **[Modding]** Update Grinelli Designs F-22A Mod to 2.0.0 (May 2025) * **[Campaign Design]** Added support for Germany Cold War terrain by Ugra Media * **[Options]** New option to control EPLRS-task injection in mission generator +* **[Modding]** Add Tornado F3 ADV (v1.0, requires FC3 fix) ## Fixes * **[Flight Plans]** Fixed a bug when a package was created with only escort flights diff --git a/game/factions/faction.py b/game/factions/faction.py index 04a1870e..a86925a5 100644 --- a/game/factions/faction.py +++ b/game/factions/faction.py @@ -865,6 +865,9 @@ class Faction: # MiG-31BM if not mod_settings.mig31bm_foxhound: self.remove_aircraft("MiG-31BM") + # Tornado f.3 ADV (1.0) + if not mod_settings.tornado_adv: + self.remove_aircraft("Tornado_ADV") def remove_aircraft(self, name: str) -> None: for aircraft_set in [self.aircraft, self.awacs, self.tankers]: diff --git a/game/theater/start_generator.py b/game/theater/start_generator.py index f9e3bdb7..2894e0cb 100644 --- a/game/theater/start_generator.py +++ b/game/theater/start_generator.py @@ -95,6 +95,7 @@ class ModSettings: su15_flagon: bool = False su30_flanker_h: bool = False su57_felon: bool = False + tornado_adv: bool = False frenchpack: bool = False high_digit_sams: bool = False ov10a_bronco: bool = False diff --git a/pydcs_extensions/__init__.py b/pydcs_extensions/__init__.py index c8a47633..62dae4da 100644 --- a/pydcs_extensions/__init__.py +++ b/pydcs_extensions/__init__.py @@ -41,6 +41,7 @@ from .chinesemilitaryassetspack import * from .russianmilitaryassetspack import * from .usamilitaryassetspack import * from .ukrainemilitaryassetspack import * +from .tornado_adv import * def load_mods() -> None: diff --git a/pydcs_extensions/tornado_adv/__init__.py b/pydcs_extensions/tornado_adv/__init__.py new file mode 100644 index 00000000..263dc169 --- /dev/null +++ b/pydcs_extensions/tornado_adv/__init__.py @@ -0,0 +1 @@ +from .tornado_adv import * diff --git a/pydcs_extensions/tornado_adv/tornado_adv.py b/pydcs_extensions/tornado_adv/tornado_adv.py new file mode 100644 index 00000000..a851fb68 --- /dev/null +++ b/pydcs_extensions/tornado_adv/tornado_adv.py @@ -0,0 +1,143 @@ +from typing import Dict, List, Set, Any + +from dcs import task +from dcs.planes import PlaneType +from dcs.unitpropertydescription import UnitPropertyDescription +from dcs.weapons_data import Weapons +from dcs.unitpropertydescription import UnitPropertyDescription + + +from game.modsupport import planemod +from pydcs_extensions.weapon_injector import inject_weapons + + +class WeaponsTORNADO_ADV: + Skyflash__Semi_Active_Radar_AAM_ = { + "clsid": "{Skflash1}", + "name": "Skyflash (Semi-Active Radar AAM)", + "weight": 194, + } + + +inject_weapons(WeaponsTORNADO_ADV) + + +@planemod +class Tornado_ADV(PlaneType): + id = "Tornado_ADV" + flyable = True + height = 5.7 + width = 13.9 + length = 16.7 + fuel_max = 4660 + max_speed = 2649.996 + chaff = 90 + flare = 45 + charge_total = 180 + chaff_charge_size = 1 + flare_charge_size = 2 + category = "Interceptor" # {78EFB7A2-FD52-4b57-A6A6-3BF0E1D6555F} + radio_frequency = 127.5 + + livery_name = "TORNADO_ADV" # from type + + class Pylon1: + AIM_9P_Sidewinder_IR_AAM = (1, Weapons.AIM_9P_Sidewinder_IR_AAM) + AIM_9M_Sidewinder_IR_AAM = (1, Weapons.AIM_9M_Sidewinder_IR_AAM) + # ERRR {JAS39_ASRAAM} + AIM_9P5_Sidewinder_IR_AAM = (1, Weapons.AIM_9P5_Sidewinder_IR_AAM) + AIM_9L_Sidewinder_IR_AAM = (1, Weapons.AIM_9L_Sidewinder_IR_AAM) + + class Pylon2: + Fuel_Tank_800_L__21_ = (2, Weapons.Fuel_Tank_800_L__21_) + + class Pylon3: + AIM_9P_Sidewinder_IR_AAM = (3, Weapons.AIM_9P_Sidewinder_IR_AAM) + AIM_9M_Sidewinder_IR_AAM = (3, Weapons.AIM_9M_Sidewinder_IR_AAM) + # ERRR {JAS39_ASRAAM} + AIM_9P5_Sidewinder_IR_AAM = (3, Weapons.AIM_9P5_Sidewinder_IR_AAM) + AIM_9L_Sidewinder_IR_AAM = (3, Weapons.AIM_9L_Sidewinder_IR_AAM) + + class Pylon5: + AIM_120B_AMRAAM___Active_Radar_AAM = ( + 5, + Weapons.AIM_120B_AMRAAM___Active_Radar_AAM, + ) + AIM_120C_AMRAAM___Active_Radar_AAM = ( + 5, + Weapons.AIM_120C_AMRAAM___Active_Radar_AAM, + ) + Skyflash__Semi_Active_Radar_AAM_ = ( + 5, + WeaponsTORNADO_ADV.Skyflash__Semi_Active_Radar_AAM_, + ) + + class Pylon6: + AIM_120B_AMRAAM___Active_Radar_AAM = ( + 6, + Weapons.AIM_120B_AMRAAM___Active_Radar_AAM, + ) + AIM_120C_AMRAAM___Active_Radar_AAM = ( + 6, + Weapons.AIM_120C_AMRAAM___Active_Radar_AAM, + ) + Skyflash__Semi_Active_Radar_AAM_ = ( + 6, + WeaponsTORNADO_ADV.Skyflash__Semi_Active_Radar_AAM_, + ) + + class Pylon7: + AIM_120B_AMRAAM___Active_Radar_AAM = ( + 7, + Weapons.AIM_120B_AMRAAM___Active_Radar_AAM, + ) + AIM_120C_AMRAAM___Active_Radar_AAM = ( + 7, + Weapons.AIM_120C_AMRAAM___Active_Radar_AAM, + ) + Skyflash__Semi_Active_Radar_AAM_ = ( + 7, + WeaponsTORNADO_ADV.Skyflash__Semi_Active_Radar_AAM_, + ) + + class Pylon8: + AIM_120B_AMRAAM___Active_Radar_AAM = ( + 8, + Weapons.AIM_120B_AMRAAM___Active_Radar_AAM, + ) + AIM_120C_AMRAAM___Active_Radar_AAM = ( + 8, + Weapons.AIM_120C_AMRAAM___Active_Radar_AAM, + ) + Skyflash__Semi_Active_Radar_AAM_ = ( + 8, + WeaponsTORNADO_ADV.Skyflash__Semi_Active_Radar_AAM_, + ) + + class Pylon10: + AIM_9P_Sidewinder_IR_AAM = (10, Weapons.AIM_9P_Sidewinder_IR_AAM) + AIM_9M_Sidewinder_IR_AAM = (10, Weapons.AIM_9M_Sidewinder_IR_AAM) + # ERRR {JAS39_ASRAAM} + AIM_9P5_Sidewinder_IR_AAM = (10, Weapons.AIM_9P5_Sidewinder_IR_AAM) + AIM_9L_Sidewinder_IR_AAM = (10, Weapons.AIM_9L_Sidewinder_IR_AAM) + + class Pylon11: + Fuel_Tank_800_L__21_ = (11, Weapons.Fuel_Tank_800_L__21_) + + class Pylon12: + AIM_9P_Sidewinder_IR_AAM = (12, Weapons.AIM_9P_Sidewinder_IR_AAM) + AIM_9M_Sidewinder_IR_AAM = (12, Weapons.AIM_9M_Sidewinder_IR_AAM) + # ERRR {JAS39_ASRAAM} + AIM_9P5_Sidewinder_IR_AAM = (12, Weapons.AIM_9P5_Sidewinder_IR_AAM) + AIM_9L_Sidewinder_IR_AAM = (12, Weapons.AIM_9L_Sidewinder_IR_AAM) + + pylons: Set[int] = {1, 2, 3, 5, 6, 7, 8, 10, 11, 12} + + tasks = [ + task.CAP, + task.Escort, + task.FighterSweep, + task.Intercept, + task.Reconnaissance, + ] + task_default = task.CAP diff --git a/qt_ui/windows/newgame/QNewGameWizard.py b/qt_ui/windows/newgame/QNewGameWizard.py index 7f4f1575..2f9485f7 100644 --- a/qt_ui/windows/newgame/QNewGameWizard.py +++ b/qt_ui/windows/newgame/QNewGameWizard.py @@ -131,6 +131,7 @@ class NewGameWizard(QtWidgets.QWizard): usamilitaryassetspack=self.field("usamilitaryassetspack"), ukrainemilitaryassetspack=self.field("ukrainemilitaryassetspack"), mig31bm_foxhound=self.field("mig31bm_foxhound"), + tornado_adv=self.field("tornado_adv"), ) blue_faction = self.faction_selection_page.selected_blue_faction diff --git a/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py b/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py index 57502ada..a6f03b0c 100644 --- a/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py +++ b/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py @@ -174,6 +174,8 @@ class GeneratorOptions(QtWidgets.QWizardPage): self.registerField("ukrainemilitaryassetspack", self.ukrainemilitaryassetspack) self.mig31bm_foxhound = QtWidgets.QCheckBox() self.registerField("mig31bm_foxhound", self.mig31bm_foxhound) + self.tornado_adv = QtWidgets.QCheckBox() + self.registerField("tornado_adv", self.tornado_adv) modHelpText = QtWidgets.QLabel( "

Select the mods you have installed. If your chosen factions support them, you'll be able to use these mods in your campaign.

" @@ -240,6 +242,7 @@ class GeneratorOptions(QtWidgets.QWizardPage): ("Su-30 Flanker-H (V2.7.73b)", self.su30_flanker_h), ("Su-57 Felon (build-04)", self.su57_felon), ("Super Étendard (v2.5.5)", self.super_etendard), + ("Tornado F3 ADV (1.0)", self.tornado_adv), ("UH-60L Black Hawk (v1.3.1)", self.uh_60l), ("Vietnam War Vessels (v0.9.0 by TeTeT)", self.vietnamwarvessels), ] @@ -323,3 +326,4 @@ class GeneratorOptions(QtWidgets.QWizardPage): self.ukrainemilitaryassetspack.setChecked( s.get("ukrainemilitaryassetspack", False) ) + self.tornado_adv.setChecked(s.get("tornado_adv", False)) diff --git a/resources/customized_payloads/Tornado_ADV.lua b/resources/customized_payloads/Tornado_ADV.lua new file mode 100644 index 00000000..74b52354 --- /dev/null +++ b/resources/customized_payloads/Tornado_ADV.lua @@ -0,0 +1,107 @@ +local unitPayloads = { + ["name"] = "Tornado_ADV", + ["payloads"] = { + [1] = { + ["name"] = "Retribution Escort", + ["pylons"] = { + [1] = { + ["CLSID"] = "{AIM-9P5}", + ["num"] = 1, + }, + [2] = { + ["CLSID"] = "{PTB_800_MIG21}", + ["num"] = 2, + }, + [3] = { + ["CLSID"] = "{AIM-9P5}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}", + ["num"] = 5, + }, + [5] = { + ["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}", + ["num"] = 6, + }, + [6] = { + ["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}", + ["num"] = 7, + }, + [7] = { + ["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}", + ["num"] = 8, + }, + [8] = { + ["CLSID"] = "{AIM-9P5}", + ["num"] = 10, + }, + [9] = { + ["CLSID"] = "{PTB_800_MIG21}", + ["num"] = 11, + }, + [10] = { + ["CLSID"] = "{AIM-9P5}", + ["num"] = 12, + }, + }, + ["tasks"] = { + [1] = 18, + [2] = 11, + [3] = 10, + }, + }, + [2] = { + ["name"] = "Retribution BARCAP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{AIM-9P5}", + ["num"] = 1, + }, + [2] = { + ["CLSID"] = "{PTB_800_MIG21}", + ["num"] = 2, + }, + [3] = { + ["CLSID"] = "{AIM-9P5}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}", + ["num"] = 5, + }, + [5] = { + ["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}", + ["num"] = 6, + }, + [6] = { + ["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}", + ["num"] = 7, + }, + [7] = { + ["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}", + ["num"] = 8, + }, + [8] = { + ["CLSID"] = "{AIM-9P5}", + ["num"] = 10, + }, + [9] = { + ["CLSID"] = "{PTB_800_MIG21}", + ["num"] = 11, + }, + [10] = { + ["CLSID"] = "{AIM-9P5}", + ["num"] = 12, + }, + }, + ["tasks"] = { + [1] = 18, + [2] = 11, + [3] = 10, + }, + }, + }, + ["unitType"] = "Tornado_ADV", +} +return unitPayloads diff --git a/resources/ui/units/aircrafts/banners/Tornado_ADV.jpg b/resources/ui/units/aircrafts/banners/Tornado_ADV.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b05448805c82386b924ca878960e264e6fb9ccc5 GIT binary patch literal 42930 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