diff --git a/changelog.md b/changelog.md index 677f79e6..3846540e 100644 --- a/changelog.md +++ b/changelog.md @@ -11,6 +11,7 @@ * **[Modding]** Updated support for Su-30 mod to V2.1.12 beta * **[Modding]** Updated support for Su-57 mod to build-04 * **[Modding]** Updated Community A-4E-C mod version support to 2.2.0 release. +* **[Modding]** Added F/A-18E/F Super Hornet AI Tanker mod support (Chiller Juice Studios SuperBug Tanker AI version 1.4) * **[Radios]** Added HF-FM band for AN/ARC-222 * **[Radios]** Ability to define preset channels for radios on squadron level (for human pilots only) * **[Mission Planning]** Avoid helicopters being assigned as escort to planes and vice-versa diff --git a/game/factions/faction.py b/game/factions/faction.py index 40389a86..f8e61b36 100644 --- a/game/factions/faction.py +++ b/game/factions/faction.py @@ -335,6 +335,8 @@ class Faction: if not mod_settings.uh_60l: self.remove_aircraft("UH-60L") self.remove_aircraft("KC130J") + if not mod_settings.fa18ef_tanker: + self.remove_aircraft("Superbug_AITanker") if not mod_settings.f4bc_phantom: self.remove_aircraft("VSN_F4B") self.remove_aircraft("VSN_F4C") diff --git a/game/theater/start_generator.py b/game/theater/start_generator.py index 98dbcb9b..e6f75aa4 100644 --- a/game/theater/start_generator.py +++ b/game/theater/start_generator.py @@ -62,6 +62,7 @@ class ModSettings: f_15_idf: bool = False f_16_idf: bool = False fa_18efg: bool = False + fa18ef_tanker: bool = False f22_raptor: bool = False f84g_thunderjet: bool = False f100_supersabre: bool = False diff --git a/pydcs_extensions/__init__.py b/pydcs_extensions/__init__.py index 5c0b1a18..c48e6dd0 100644 --- a/pydcs_extensions/__init__.py +++ b/pydcs_extensions/__init__.py @@ -12,6 +12,7 @@ from .f22a import * from .f4b import * from .f84g import * from .fa18efg import * +from .fa18ef_tanker import * from .frenchpack import * from .hercules import * from .highdigitsams import * diff --git a/pydcs_extensions/fa18ef_tanker/__init__.py b/pydcs_extensions/fa18ef_tanker/__init__.py new file mode 100644 index 00000000..a7f121cb --- /dev/null +++ b/pydcs_extensions/fa18ef_tanker/__init__.py @@ -0,0 +1 @@ +from .fa18ef_tanker import * diff --git a/pydcs_extensions/fa18ef_tanker/fa18ef_tanker.py b/pydcs_extensions/fa18ef_tanker/fa18ef_tanker.py new file mode 100644 index 00000000..46009993 --- /dev/null +++ b/pydcs_extensions/fa18ef_tanker/fa18ef_tanker.py @@ -0,0 +1,31 @@ +from enum import Enum + +from dcs import task +from dcs.planes import PlaneType + +from game.modsupport import planemod + + +@planemod +class Superbug_AITanker(PlaneType): + id = "Superbug_AITanker" + group_size_max = 1 + height = 4.66 + width = 13.62456 + length = 17.07 + fuel_max = 13154 + max_speed = 1950.12 + chaff = 120 + flare = 60 + charge_total = 240 + chaff_charge_size = 1 + flare_charge_size = 2 + tacan = True + radio_frequency = 305 + + livery_name = "SUPERBUG_AITANKER" # from type + + pylons = set() + + tasks = [task.Refueling] + task_default = task.Refueling diff --git a/qt_ui/main.py b/qt_ui/main.py index f048827b..f8d8c91d 100644 --- a/qt_ui/main.py +++ b/qt_ui/main.py @@ -335,6 +335,7 @@ def create_game( a6a_intruder=False, a7e_corsair2=False, fa_18efg=False, + fa18ef_tanker=False, f4bc_phantom=False, f22_raptor=False, f84g_thunderjet=False, diff --git a/qt_ui/windows/newgame/QNewGameWizard.py b/qt_ui/windows/newgame/QNewGameWizard.py index 1918ac8c..93f289d0 100644 --- a/qt_ui/windows/newgame/QNewGameWizard.py +++ b/qt_ui/windows/newgame/QNewGameWizard.py @@ -95,6 +95,7 @@ class NewGameWizard(QtWidgets.QWizard): f_15_idf=self.field("f_15_idf"), f_16_idf=self.field("f_16_idf"), fa_18efg=self.field("fa_18efg"), + fa18ef_tanker=self.field("fa18ef_tanker"), f22_raptor=self.field("f22_raptor"), f84g_thunderjet=self.field("f84g_thunderjet"), f100_supersabre=self.field("f100_supersabre"), diff --git a/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py b/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py index 820c9cc7..6e39ca21 100644 --- a/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py +++ b/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py @@ -108,6 +108,8 @@ class GeneratorOptions(QtWidgets.QWizardPage): self.registerField("f_16_idf", self.f_16_idf) self.fa_18efg = QtWidgets.QCheckBox() self.registerField("fa_18efg", self.fa_18efg) + self.fa18ef_tanker = QtWidgets.QCheckBox() + self.registerField("fa18ef_tanker", self.fa18ef_tanker) self.f22_raptor = QtWidgets.QCheckBox() self.registerField("f22_raptor", self.f22_raptor) self.f84g_thunderjet = QtWidgets.QCheckBox() @@ -160,6 +162,7 @@ class GeneratorOptions(QtWidgets.QWizardPage): ("F-15I Ra'am (v1.0 by IDF Mods Project)", self.f_15_idf), ("F-16I Sufa & F-16D (v3.6 by IDF Mods Project)", self.f_16_idf), ("F/A-18E/F/G Super Hornet (version 2.1)", self.fa_18efg), + ("F/A-18E/F Super Hornet AI Tanker (version 1.4)", self.fa18ef_tanker), ("F-22A Raptor", self.f22_raptor), ("F-84G Thunderjet (v2.5.7.01)", self.f84g_thunderjet), ("F-100 Super Sabre (v2.7.18.30765 patch 20.10.22)", self.f100_supersabre), diff --git a/resources/factions/usa_2005.json b/resources/factions/usa_2005.json index 4ea3cfd8..36d960da 100644 --- a/resources/factions/usa_2005.json +++ b/resources/factions/usa_2005.json @@ -49,7 +49,8 @@ "KC-130J", "KC-135 Stratotanker", "KC-135 Stratotanker MPRS", - "S-3B Tanker" + "S-3B Tanker", + "F/A-18E Tanker" ], "frontline_units": [ "LAV-25", diff --git a/resources/factions/usn_2005.json b/resources/factions/usn_2005.json index 8f053f87..e0bbf390 100644 --- a/resources/factions/usn_2005.json +++ b/resources/factions/usn_2005.json @@ -22,7 +22,8 @@ "E-2C Hawkeye" ], "tankers": [ - "S-3B Tanker" + "S-3B Tanker", + "F/A-18E Tanker" ], "frontline_units": [ "M113", diff --git a/resources/squadrons/super hornet/VFA-105F.yaml b/resources/squadrons/super hornet/VFA-105F.yaml new file mode 100644 index 00000000..d652bb5d --- /dev/null +++ b/resources/squadrons/super hornet/VFA-105F.yaml @@ -0,0 +1,10 @@ +--- +name: VFA-105 (Tanker) +nickname: Gunslingers +female_pilot_percentage: 12 +country: USA +role: Tanker +aircraft: F/A-18E Tanker +livery: Stock Tanker E +mission_types: + - Refueling diff --git a/resources/squadrons/super hornet/VFA-41F.yaml b/resources/squadrons/super hornet/VFA-41F.yaml new file mode 100644 index 00000000..c4b324bc --- /dev/null +++ b/resources/squadrons/super hornet/VFA-41F.yaml @@ -0,0 +1,10 @@ +--- +name: VFA-41 (Tanker) +nickname: Black Aces +female_pilot_percentage: 12 +country: USA +role: Tanker +aircraft: F/A-18F Tanker +livery: Stock Tanker F +mission_types: + - Refueling diff --git a/resources/ui/units/aircrafts/banners/Superbug_AITanker_24.jpg b/resources/ui/units/aircrafts/banners/Superbug_AITanker_24.jpg new file mode 100644 index 00000000..b97575ac Binary files /dev/null and b/resources/ui/units/aircrafts/banners/Superbug_AITanker_24.jpg differ diff --git a/resources/ui/units/aircrafts/icons/Superbug_AITanker_24.jpg b/resources/ui/units/aircrafts/icons/Superbug_AITanker_24.jpg new file mode 100644 index 00000000..eea83ca6 Binary files /dev/null and b/resources/ui/units/aircrafts/icons/Superbug_AITanker_24.jpg differ diff --git a/resources/units/aircraft/Superbug_AITanker.yaml b/resources/units/aircraft/Superbug_AITanker.yaml new file mode 100644 index 00000000..1b9fee94 --- /dev/null +++ b/resources/units/aircraft/Superbug_AITanker.yaml @@ -0,0 +1,21 @@ +carrier_capable: true +description: + The Boeing F/A-18E and F/A-18F Super Hornet are twin-engine, carrier-capable, + multirole fighter aircraft variants based on the McDonnell Douglas F/A-18 Hornet. + This version is an AI-only tanker aircraft, capable of in-flight refueling. +introduced: 2001 +manufacturer: Boeing +origin: USA +price: 20 +max_group_size: 1 +role: Carrier-based Tanker +max_range: 1000 +patrol: + # ~265 knots IAS. + speed: 320 + altitude: 12000 +variants: + F/A-18E Tanker: {} + F/A-18F Tanker: {} +tasks: + Refueling: 0 \ No newline at end of file