Super Étendard mod support v2.5.5 (#273)

* Implemented support for the VSN Super Étendard v2.5.5

* Updated changelog and renamed the banner.

---------

Co-authored-by: Raffson <Raffson@users.noreply.github.com>
This commit is contained in:
MetalStormGhost 2024-03-16 16:55:50 +02:00 committed by GitHub
parent 147136c41a
commit e9832b5d82
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
15 changed files with 329 additions and 0 deletions

View File

@ -15,6 +15,7 @@
* **[Modding]** Updated support for F-4B/C Phantom mod to 2.8.7.204
* **[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)
* **[Modding]** Added VSN Super Étendard mod support (v2.5.5)
* **[Modding]** Added F9F Panther mod support (version v2.8.7.101)
* **[Modding]** Updated Irondome support to IDF Assets Pack V1.1, adding support for the David's Sling
* **[Radios]** Added HF-FM band for AN/ARC-222

View File

@ -383,6 +383,8 @@ class Faction:
self.remove_aircraft("JAS39Gripen")
self.remove_aircraft("JAS39Gripen_BVR")
self.remove_aircraft("JAS39Gripen_AG")
if not mod_settings.super_etendard:
self.remove_aircraft("VSN_SEM")
if not mod_settings.su30_flanker_h:
self.remove_aircraft("Su-30MKA")
self.remove_aircraft("Su-30MKI")

View File

@ -73,6 +73,7 @@ class ModSettings:
irondome: bool = False
uh_60l: bool = False
jas39_gripen: bool = False
super_etendard: bool = False
su30_flanker_h: bool = False
su57_felon: bool = False
frenchpack: bool = False

View File

@ -21,6 +21,7 @@ from .irondome import *
from .jas39 import *
from .ov10a import *
from .spanishnavypack import *
from .super_etendard import *
from .su30 import *
from .su57 import *
from .swedishmilitaryassetspack import *

View File

@ -0,0 +1 @@
from .super_etendard import *

View File

@ -0,0 +1,144 @@
from dcs import task
from dcs.planes import PlaneType
from dcs.weapons_data import Weapons
from game.modsupport import planemod
from pydcs_extensions.weapon_injector import inject_weapons
class WeaponsSEM:
Fuel_Tank_1100_Liter = {
"clsid": "{SEM1100_PTB}",
"name": "Fuel Tank 1100 Liter",
"weight": 1150,
}
Fuel_Tank_625_Liter = {
"clsid": "{SEM625_PTB}",
"name": "Fuel Tank 625 Liter",
"weight": 1150,
}
inject_weapons(WeaponsSEM)
@planemod
class VSN_SEM(PlaneType):
id = "VSN_SEM"
flyable = True
height = 4
width = 13.05
length = 18
fuel_max = 6103
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 = "VSN_SEM" # from type
class Pylon1:
Smokewinder___red = (1, Weapons.Smokewinder___red)
Smokewinder___green = (1, Weapons.Smokewinder___green)
Smokewinder___blue = (1, Weapons.Smokewinder___blue)
Smokewinder___white = (1, Weapons.Smokewinder___white)
Smokewinder___yellow = (1, Weapons.Smokewinder___yellow)
AN_ASQ_T50_TCTS_Pod___ACMI_Pod = (1, Weapons.AN_ASQ_T50_TCTS_Pod___ACMI_Pod)
Mk_81___250lb_GP_Bomb_LD = (1, Weapons.Mk_81___250lb_GP_Bomb_LD)
Mk_82___500lb_GP_Bomb_LD = (1, Weapons.Mk_82___500lb_GP_Bomb_LD)
R550_Magic_2_IR_AAM = (1, Weapons.R550_Magic_2_IR_AAM)
LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
1,
Weapons.LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
)
ALQ_131___ECM_Pod = (1, Weapons.ALQ_131___ECM_Pod)
AIM_9M_Sidewinder_IR_AAM = (1, Weapons.AIM_9M_Sidewinder_IR_AAM)
AIM_9P_Sidewinder_IR_AAM = (1, Weapons.AIM_9P_Sidewinder_IR_AAM)
class Pylon2:
AGM_65K___Maverick_K__CCD_Imp_ASM_ = (
2,
Weapons.AGM_65K___Maverick_K__CCD_Imp_ASM_,
)
GBU_12___500lb_Laser_Guided_Bomb = (2, Weapons.GBU_12___500lb_Laser_Guided_Bomb)
LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
2,
Weapons.LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
)
Mk_81___250lb_GP_Bomb_LD = (2, Weapons.Mk_81___250lb_GP_Bomb_LD)
Mk_82___500lb_GP_Bomb_LD = (2, Weapons.Mk_82___500lb_GP_Bomb_LD)
Fuel_Tank_1100_Liter = (2, WeaponsSEM.Fuel_Tank_1100_Liter)
Fuel_Tank_625_Liter = (2, WeaponsSEM.Fuel_Tank_625_Liter)
# ERRR <CLEAN>
class Pylon5:
L_081_Fantasmagoria_ELINT_pod = (5, Weapons.L_081_Fantasmagoria_ELINT_pod)
class Pylon6:
MER2_with_2_x_Mk_82___500lb_GP_Bombs_LD = (
6,
Weapons.MER2_with_2_x_Mk_82___500lb_GP_Bombs_LD,
)
AGM_65K___Maverick_K__CCD_Imp_ASM_ = (
6,
Weapons.AGM_65K___Maverick_K__CCD_Imp_ASM_,
)
# ERRR <CLEAN>
class Pylon10:
AGM_65K___Maverick_K__CCD_Imp_ASM_ = (
10,
Weapons.AGM_65K___Maverick_K__CCD_Imp_ASM_,
)
GBU_12___500lb_Laser_Guided_Bomb = (
10,
Weapons.GBU_12___500lb_Laser_Guided_Bomb,
)
LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
10,
Weapons.LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
)
Mk_81___250lb_GP_Bomb_LD = (10, Weapons.Mk_81___250lb_GP_Bomb_LD)
Mk_82___500lb_GP_Bomb_LD = (10, Weapons.Mk_82___500lb_GP_Bomb_LD)
Fuel_Tank_1100_Liter = (10, WeaponsSEM.Fuel_Tank_1100_Liter)
Fuel_Tank_625_Liter = (10, WeaponsSEM.Fuel_Tank_625_Liter)
class Pylon11:
Smokewinder___red = (11, Weapons.Smokewinder___red)
Smokewinder___green = (11, Weapons.Smokewinder___green)
Smokewinder___blue = (11, Weapons.Smokewinder___blue)
Smokewinder___white = (11, Weapons.Smokewinder___white)
Smokewinder___yellow = (11, Weapons.Smokewinder___yellow)
AN_ASQ_T50_TCTS_Pod___ACMI_Pod = (11, Weapons.AN_ASQ_T50_TCTS_Pod___ACMI_Pod)
Mk_81___250lb_GP_Bomb_LD = (11, Weapons.Mk_81___250lb_GP_Bomb_LD)
Mk_82___500lb_GP_Bomb_LD = (11, Weapons.Mk_82___500lb_GP_Bomb_LD)
R550_Magic_2_IR_AAM = (11, Weapons.R550_Magic_2_IR_AAM)
LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE = (
11,
Weapons.LAU_61_pod___19_x_2_75_Hydra__UnGd_Rkts_M151__HE,
)
ALQ_131___ECM_Pod = (11, Weapons.ALQ_131___ECM_Pod)
AIM_9M_Sidewinder_IR_AAM = (11, Weapons.AIM_9M_Sidewinder_IR_AAM)
AIM_9P_Sidewinder_IR_AAM = (11, Weapons.AIM_9P_Sidewinder_IR_AAM)
pylons = {1, 2, 3, 5, 6, 9, 10, 11}
tasks = [
task.CAP,
task.Escort,
task.FighterSweep,
task.Intercept,
task.Reconnaissance,
task.GroundAttack,
task.CAS,
task.AFAC,
task.RunwayAttack,
]
task_default = task.FighterSweep

View File

@ -106,6 +106,7 @@ class NewGameWizard(QtWidgets.QWizard):
irondome=self.field("irondome"),
uh_60l=self.field("uh_60l"),
jas39_gripen=self.field("jas39_gripen"),
super_etendard=self.field("super_etendard"),
su30_flanker_h=self.field("su30_flanker_h"),
su57_felon=self.field("su57_felon"),
ov10a_bronco=self.field("ov10a_bronco"),

View File

@ -124,6 +124,8 @@ class GeneratorOptions(QtWidgets.QWizardPage):
self.registerField("f105_thunderchief", self.f105_thunderchief)
self.jas39_gripen = QtWidgets.QCheckBox()
self.registerField("jas39_gripen", self.jas39_gripen)
self.super_etendard = QtWidgets.QCheckBox()
self.registerField("super_etendard", self.super_etendard)
self.su30_flanker_h = QtWidgets.QCheckBox()
self.registerField("su30_flanker_h", self.su30_flanker_h)
self.su57_felon = QtWidgets.QCheckBox()
@ -173,6 +175,7 @@ class GeneratorOptions(QtWidgets.QWizardPage):
("Swedish Military Assets pack (1.10)", self.swedishmilitaryassetspack),
("JAS 39 Gripen (v1.8.5-beta)", self.jas39_gripen),
("OV-10A Bronco", self.ov10a_bronco),
("Super Étendard (v2.5.5)", self.super_etendard),
("Su-30 Flanker-H (V2.7.3 beta)", self.su30_flanker_h),
("Su-57 Felon (build-04)", self.su57_felon),
("UH-60L Black Hawk (v1.3.1)", self.uh_60l),
@ -232,6 +235,7 @@ class GeneratorOptions(QtWidgets.QWizardPage):
self.f104_starfighter.setChecked(s.get("f104_starfighter", False))
self.f105_thunderchief.setChecked(s.get("f105_thunderchief", False))
self.jas39_gripen.setChecked(s.get("jas39_gripen", False))
self.super_etendard.setChecked(s.get("super_etendard", False))
self.su30_flanker_h.setChecked(s.get("su30_flanker_h", False))
self.su57_felon.setChecked(s.get("su57_felon", False))
self.ov10a_bronco.setChecked(s.get("ov10a_bronco", False))

View File

@ -0,0 +1,146 @@
local unitPayloads = {
["name"] = "VSN_SEM",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 11,
},
[4] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 10,
},
[5] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
[2] = 31,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{SEM1100_PTB}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 11,
},
[4] = {
["CLSID"] = "{SEM1100_PTB}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 11,
},
},
[3] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 11,
},
[4] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 10,
},
[5] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 30,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{SEM1100_PTB}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 11,
},
[4] = {
["CLSID"] = "{SEM1100_PTB}",
["num"] = 10,
},
[5] = {
["CLSID"] = "{D5D51E24-348C-4702-96AF-97A714E72697}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
},
},
[5] = {
["name"] = "DEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{6D21ECEA-F85B-4E8D-9D51-31DC9B8AA4EF}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6D21ECEA-F85B-4E8D-9D51-31DC9B8AA4EF}",
["num"] = 11,
},
[4] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 10,
},
[5] = {
["CLSID"] = "{69DC8AE7-8F77-427B-B8AA-B19D3F478B65}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["tasks"] = {
},
["unitType"] = "VSN_SEM",
}
return unitPayloads

View File

@ -13,6 +13,7 @@
"Mirage-F1B",
"Mirage-F1CE",
"Mirage-F1C-200",
"Super Étendard",
"SA 342L Gazelle",
"SA 342M Gazelle",
"SA 342M Gazelle Mistral"

View File

@ -14,6 +14,7 @@
"Mirage-F1CE",
"Mirage-F1C-200",
"Mirage-F1CT",
"Super Étendard",
"SA 342L Gazelle",
"SA 342M Gazelle",
"SA 342M Gazelle Mistral"

View File

@ -14,6 +14,7 @@
"Mirage-F1CE",
"Mirage-F1C-200",
"Mirage-F1CT",
"Super Étendard",
"SA 342L Gazelle",
"SA 342M Gazelle",
"SA 342M Gazelle Mistral"

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

View File

@ -0,0 +1,25 @@
description:
The Dassault-Breguet Super Étendard is a French carrier-borne strike fighter aircraft
designed for service with the French Navy aircraft carriers.
The aircraft is an advanced development of the Étendard IVM, which it replaced.
Super Étendards have seen combat in Kosovo, Afghanistan, Libya, Falklands and
in the Iraq-Iran war.
introduced: 1978
manufacturer: Dassault-Breguet
origin: France
price: 10
role: Carrier-based Strike Fighter
carrier_capable: true
gunfighter: true
max_range: 200
variants:
Super Étendard: {}
tasks:
Anti-ship: 150
BAI: 250
CAS: 250
DEAD: 250
OCA/Aircraft: 250
OCA/Runway: 230
Strike: 230