Reworked payloads, factions, map display, carrier. Re-added Tarawa support, many minor bug fixes. UI changes.

This commit is contained in:
Khopa 2020-05-27 21:45:58 +02:00
parent 3f2aafcd28
commit 6dec5ea8f8
93 changed files with 8799 additions and 474 deletions

View File

@ -15,11 +15,13 @@ from dcs.unitgroup import *
from game.factions.china_2000 import China_2000
from game.factions.france_1995 import France_1995
from game.factions.france_2005 import France_2005
from game.factions.germany_1990 import Germany_1990
from game.factions.insurgent import Insurgent
from game.factions.iran_2015 import Iran_2015
from game.factions.israel_2000 import Israel_2000
from game.factions.italy_1990 import Italy_1990
from game.factions.libya_2011 import Lybia_2011
from game.factions.netherlands_1990 import Netherlands_1990
from game.factions.north_korea_2000 import NorthKorea_2000
from game.factions.pakistan_2015 import Pakistan_2015
@ -187,6 +189,7 @@ PRICES = {
Armor.MBT_Challenger_II: 30,
Armor.IFV_Marder: 10,
Armor.IFV_MCV_80: 10,
Armor.IFV_LAV_25: 7,
Artillery.MLRS_M270: 55,
Artillery.SPH_M109_Paladin: 25,
@ -411,6 +414,8 @@ UNIT_BY_TASK = {
Armor.IFV_MCV_80,
Armor.IFV_MCV_80,
Armor.IFV_MCV_80,
Armor.IFV_LAV_25,
Armor.IFV_LAV_25,
Armor.IFV_Marder,
Armor.IFV_Marder,
Armor.IFV_Marder,
@ -542,29 +547,6 @@ CARRIER_TAKEOFF_BAN = [
Su_33, # Kuznecow is bugged in a way that only 2 aircraft could be spawned
]
"""
AirDefense units that will be spawned at control points not related to the current operation
"""
EXTRA_AA = {
"Russia": AirDefence.SAM_SA_9_Strela_1_9P31,
"USA": AirDefence.SAM_Linebacker_M6,
"France": AirDefence.SPAAA_Gepard,
"Germany": AirDefence.SPAAA_Gepard,
"China": AirDefence.SPAAA_ZSU_23_4_Shilka,
"UK": AirDefence.AAA_Vulcan_M163,
"Iran": AirDefence.SPAAA_ZSU_23_4_Shilka,
"North Korea": AirDefence.AAA_ZU_23_Closed,
"Italy": AirDefence.AAA_Vulcan_M163,
"Spain": AirDefence.AAA_Vulcan_M163,
"The Netherlands": AirDefence.AAA_Vulcan_M163,
"Turkey": AirDefence.AAA_Vulcan_M163,
"Israel": AirDefence.AAA_Vulcan_M163,
"India": AirDefence.SPAAA_ZSU_23_4_Shilka,
"United Arab Emirates": AirDefence.Stinger_MANPADS,
"Insurgents": AirDefence.AAA_ZU_23_Insurgent_on_Ural_375,
"Third Reich": AirDefence.AAA_Flak_Vierling_38,
}
"""
Units separated by country. Currently only Russia and USA are supported.
country : DCS Country name
@ -576,6 +558,7 @@ FACTIONS = {
"Russia 1990": Russia_1990,
"Russia 2010": Russia_2010,
"Iran 2015": Iran_2015,
"Lybia 2011": Lybia_2011,
"China 2000": China_2000,
"North Korea 2000": NorthKorea_2000,
"Insurgent": Insurgent,
@ -587,6 +570,7 @@ FACTIONS = {
"USA 1955 (Require WW2 Pack)": USA_1955,
"USA 1944 (Require WW2 Pack)": USA_1944,
"France 1995": France_1995,
"France 2005": France_2005,
"Germany 1990": Germany_1990,
"Netherlands 1990": Netherlands_1990,
"United Kingdown 1990": UnitedKingdom_1990,
@ -631,105 +615,77 @@ where:
Payload will be used for operation of following type, "*" category will be used always, no matter the operation.
"""
COMMON_OVERRIDE = {
CAP: "CAP",
Intercept: "CAP",
CAS: "CAS",
PinpointStrike: "STRIKE",
SEAD: "SEAD",
AntishipStrike: "ANTISHIP",
GroundAttack: "STRIKE"
}
PLANE_PAYLOAD_OVERRIDES = {
FA_18C_hornet: {
CAS: "AIM-9M*2,AGM-65D*2,Mk-82*4,FLIR Pod,Fuel",
CAP: "AIM-120*4,AIM-9*2,AIM-7*2,Fuel",
Escort: "AIM-120*4,AIM-9*2,AIM-7*2,Fuel",
PinpointStrike: "MK-82*8,AIM-9*2,AIM-7,FLIR Pod,Fuel",
AntishipStrike: "MK-82*8,AIM-9*2,AIM-7,FLIR Pod,Fuel",
SEAD: "AGM-88*2,AIM-9*2,AIM-7,FLIR Pod,Fuel*3"
CAP: "CAP HEAVY",
Intercept: "CAP HEAVY",
CAS: "CAS MAVERICK F",
PinpointStrike: "STRIKE",
SEAD: "SEAD",
AntishipStrike: "ANTISHIP",
GroundAttack: "STRIKE"
},
JF_17: {
CAS: "PL-5Ex2, 2*SD-10x2, 800L Tank",
CAP: "PL-5Ex2, 2*GBU-12x2, BRM1x2, WMD7",
SEAD: "PL-5Ex2, LD-10x2, 1100L Tankx2, WMD7"
},
F_14B: {
CAP: "AIM-54A-MK47*4, AIM-7M*2, AIM-9M*2, XT*2",
Escort: "AIM-54A-MK47*4, AIM-7M*2, AIM-9M*2, XT*2",
CAS: "AIM-54A-MK60*1, AIM-7M*1, AIM-9M*2, XT*2, Mk-82*2, LANTIRN",
GroundAttack: "AIM54, AIM-9M*2, XT*2, GBU-12*4, LANTIRN",
},
Su_25T: {
CAS: "APU-8 Vikhr-M*2,Kh-25ML,R-73*2,SPPU-22*2,Mercury LLTV Pod,MPS-410",
SEAD: "Kh58*2_Kh25MPU*2_Kh25ML*2_R73*2_L-081_MPS-410"
},
Su_33: {
CAP: "R-73*4,R-27R*2,R-27ER*6",
Escort: "R-73*4,R-27R*2,R-27ER*6",
},
AJS37: {
CAS: "CAS (75 GUN): RB-75*2, AKAN",
},
AV8BNA: {
CAS: "AS 2",
SEAD: "Stand Off 2"
},
A_10A: COMMON_OVERRIDE,
A_10C: COMMON_OVERRIDE,
AV8BNA: COMMON_OVERRIDE,
C_101CC: COMMON_OVERRIDE,
F_5E_3: COMMON_OVERRIDE,
F_14B: COMMON_OVERRIDE,
F_15C: COMMON_OVERRIDE,
F_16C_50: COMMON_OVERRIDE,
JF_17: COMMON_OVERRIDE,
M_2000C: COMMON_OVERRIDE,
MiG_15bis: COMMON_OVERRIDE,
MiG_19P: COMMON_OVERRIDE,
MiG_21Bis: COMMON_OVERRIDE,
AJS37: COMMON_OVERRIDE,
Su_25T:COMMON_OVERRIDE,
Su_25:COMMON_OVERRIDE,
Su_27:COMMON_OVERRIDE,
Su_33:COMMON_OVERRIDE,
MiG_29A:COMMON_OVERRIDE,
MiG_29G:COMMON_OVERRIDE,
MiG_29S:COMMON_OVERRIDE,
Su_24M:COMMON_OVERRIDE,
Su_30: COMMON_OVERRIDE,
Su_34: COMMON_OVERRIDE,
MiG_23MLD: COMMON_OVERRIDE,
MiG_27K: COMMON_OVERRIDE,
Tornado_GR4: COMMON_OVERRIDE,
Tornado_IDS: COMMON_OVERRIDE,
Mirage_2000_5: COMMON_OVERRIDE,
MiG_31:COMMON_OVERRIDE,
SA342M:COMMON_OVERRIDE,
SA342L:COMMON_OVERRIDE,
SA342Mistral:COMMON_OVERRIDE,
Mi_8MT:COMMON_OVERRIDE,
Ka_50:COMMON_OVERRIDE,
L_39ZA:COMMON_OVERRIDE,
L_39C:COMMON_OVERRIDE,
Su_17M4: COMMON_OVERRIDE,
F_4E: COMMON_OVERRIDE,
AH_64D:{
CAS: "AGM-114K*16"
},
A_10C: {
CAS: "AGM-65D*2,AGM-65H*2,GBU-12*2,GBU-38*2,AIM-9*2,TGP,ECM,MK151*7",
GroundAttack: "AGM-65K*2,GBU-12*8,AIM-9M*2.ECM,TGP",
},
Ka_50: {
CAS: "12x9A4172, 40xS-8",
GroundAttack: "12x9A4172, 40xS-8",
},
M_2000C: {
CAP: "Combat Air Patrol",
Escort: "Combat Air Patrol",
GroundAttack: "MK-82S Heavy Strike",
},
Mirage_2000_5: {
CAP: "R 550*2,MICA IR*2,MICA AR*2,Fuel*3",
},
MiG_21Bis: {
CAP: "Patrol, medium range",
},
Su_24M: {
CAS: "S-24*6",
SEAD: "Kh25MPU*2_Kh25ML*2_L-081"
},
Su_25TM: {
SEAD: "Kh-31P*2_Kh-25ML*4_R-73*2_L-081_MPS410",
},
Su_17M4: {
CAS: "Kh-25MR*4,R-60M*2,Fuel*2",
SEAD: "Kh25MPU*2_Kh25ML*2_,R60M*2_Fuel*2"
},
Su_30: {
SEAD: "Kh-31P*4,R-73*2,R-77*2,ECM",
},
Su_34: {
SEAD: "Kh-25MPU*6,R-73*2,R-77*2,ECM",
},
MiG_27K: {
SEAD: "Kh-25MPU*2,R-60M*2,Fuel"
},
F_4E: {
SEAD: "AGM-45*4,AIM-7*2,ECM"
}
}
"""
@ -787,10 +743,28 @@ CARRIER_CAPABLE = [
FA_18C_hornet,
F_14B,
AV8BNA,
Su_33,
UH_1H,
Mi_8MT,
Ka_50,
AH_1W,
OH_58D,
SA342L,
SA342M,
SA342Minigun,
SA342Mistral,
]
LHA_CAPABLE = [
AV8BNA,
UH_1H,
Mi_8MT,
Ka_50,
AH_1W,
OH_58D,
SA342L,
SA342M,

View File

@ -190,7 +190,7 @@ class Event:
# -- AA Site groups
for i, ground_object in enumerate(cp.ground_objects):
if ground_object.dcs_identifier in ["AA", "CARRIER"]:
if ground_object.dcs_identifier in ["AA", "CARRIER", "LHA"]:
for g in ground_object.groups:
for u in g.units:
if u.name == destroyed_ground_unit_name:

View File

@ -46,7 +46,7 @@ China_2000 = {
Tanker_Elnya_160
],
"shorad":[
AirDefence.AAA_ZU_23_Closed,
AirDefence.SPAAA_ZSU_23_4_Shilka,
AirDefence.Rapier_FSA_Launcher, # Standing as PL-9C Shorad
AirDefence.HQ_7_Self_Propelled_LN
], "aircraft_carrier": [
@ -56,5 +56,8 @@ China_2000 = {
Type_052C_Destroyer
], "cruiser": [
Type_054A_Frigate,
], "carrier_names": [
"001 Liaoning",
"002 Shandong",
]
}

View File

@ -6,7 +6,7 @@ from dcs.helicopters import *
France_1995 = {
"country": "France",
"side": "blue",
"units":[
"units": [
M_2000C,
Mirage_2000_5,
@ -19,21 +19,25 @@ France_1995 = {
SA342L,
Armor.MBT_Leclerc,
Armor.TPz_Fuchs, # Standing as VAB
Armor.TPz_Fuchs, # Standing as VAB
Armor.APC_Cobra, # Standing as VBL
Armor.ATGM_M1134_Stryker, # Standing as VAB Mephisto
Artillery.SPH_M109_Paladin, # Standing as AMX30 AuF1
Artillery.MLRS_M270,
Unarmed.Transport_M818,
Infantry.Infantry_M4,
Infantry.Infantry_M4,
Infantry.Soldier_M249,
AirDefence.SAM_Roland_ADS,
AirDefence.SAM_Hawk_PCP,
AirDefence.HQ_7_Self_Propelled_LN, # Standing as Crotale
AirDefence.HQ_7_Self_Propelled_LN, # Standing as Crotale
CVN_74_John_C__Stennis,
LHA_1_Tarawa,
Armed_speedboat,
], "shorad":[
], "shorad": [
AirDefence.HQ_7_Self_Propelled_LN,
AirDefence.SAM_Roland_ADS
]

View File

@ -0,0 +1,59 @@
from dcs.vehicles import *
from dcs.ships import *
from dcs.planes import *
from dcs.helicopters import *
France_2005 = {
"country": "France",
"side": "blue",
"units":[
M_2000C,
Mirage_2000_5,
FA_18C_hornet, # Standing as Rafale M
KC_135,
S_3B_Tanker,
C_130,
E_3A,
SA342M,
SA342L,
Armor.MBT_Leclerc,
Armor.TPz_Fuchs, # Standing as VAB
Armor.APC_Cobra, # Standing as VBL
Armor.ATGM_M1134_Stryker, # Standing as VAB Mephisto
Artillery.SPH_M109_Paladin, # Standing as AMX30 AuF1
Artillery.MLRS_M270,
Unarmed.Transport_M818,
Infantry.Infantry_M4,
Infantry.Soldier_M249,
AirDefence.SAM_Roland_ADS,
AirDefence.SAM_Hawk_PCP,
AirDefence.HQ_7_Self_Propelled_LN, # Standing as Crotale
CVN_74_John_C__Stennis,
LHA_1_Tarawa,
Armed_speedboat,
], "shorad":[
AirDefence.HQ_7_Self_Propelled_LN,
AirDefence.SAM_Roland_ADS
], "aircraft_carrier": [
CVN_74_John_C__Stennis, # Standing as CDG Aircraft Carrier
], "helicopter_carrier": [
LHA_1_Tarawa, # Standing as Mistral Class
], "destroyer": [
Oliver_Hazzard_Perry_class,
], "cruiser": [
Ticonderoga_class,
], "carrier_names": [
"R91 Charles de Gaulle",
], "lhanames": [
"L9013 Mistral",
"L9014 Tonerre",
"L9015 Dixmude"
]
}

View File

@ -27,6 +27,7 @@ Germany_1990 = {
Unarmed.Transport_M818,
Infantry.Infantry_M4,
Infantry.Soldier_M249,
AirDefence.SAM_Roland_ADS,
AirDefence.SAM_Hawk_PCP,

View File

@ -43,5 +43,11 @@ India_2010 = {
AirDefence.SAM_SA_13_Strela_10M3_9A35M3,
AirDefence.SAM_SA_8_Osa_9A33,
AirDefence.SAM_SA_19_Tunguska_2S6
], "aircraft_carrier": [
CV_1143_5_Admiral_Kuznetsov,
], "destroyer": [
FSG_1241_1MP_Molniya,
], "carrier_names": [
"INS Vikramaditya"
]
}

View File

@ -31,7 +31,16 @@ Italy_1990 = {
CVN_74_John_C__Stennis,
LHA_1_Tarawa,
Armed_speedboat,
], "shorad":[
], "shorad":[
AirDefence.SAM_Avenger_M1097,
], "helicopter_carrier": [
LHA_1_Tarawa,
], "destroyer": [
Oliver_Hazzard_Perry_class,
], "cruiser": [
Ticonderoga_class,
], "lha_names": [
"Giuseppe Garibaldi",
"Cavour",
]
}

View File

@ -0,0 +1,48 @@
from dcs.vehicles import *
from dcs.ships import *
from dcs.planes import *
from dcs.helicopters import *
Lybia_2011 = {
"country": "Libya",
"side": "red",
"units": [
MiG_21Bis,
MiG_23MLD,
Su_24M,
Su_17M4,
Mi_24V,
IL_76MD,
IL_78M,
An_26B,
An_30M,
Yak_40,
A_50,
AirDefence.SAM_SA_8_Osa_9A33,
AirDefence.SAM_SA_2_LN_SM_90,
AirDefence.SAM_SA_3_S_125_LN_5P73,
AirDefence.SAM_SA_6_Kub_LN_2P25,
AirDefence.HQ_7_Self_Propelled_LN,
Armor.IFV_BMP_1,
Armor.ARV_MTLB_U_BOMAN,
Armor.ARV_BRDM_2,
Armor.MBT_T_55,
Armor.MBT_T_72B,
Artillery.MLRS_BM_21_Grad,
Unarmed.Transport_Ural_375,
Unarmed.Transport_UAZ_469,
Infantry.Paratrooper_RPG_16,
Infantry.Infantry_Soldier_Insurgents
],
"shorad":[
AirDefence.HQ_7_Self_Propelled_LN,
AirDefence.SAM_SA_8_Osa_9A33,
]
}

View File

@ -17,10 +17,12 @@ Spain_1990 = {
E_3A,
Armor.MBT_M60A3_Patton,
Armor.MBT_Leopard_2,
Armor.APC_M113,
Unarmed.Transport_M818,
Infantry.Infantry_M4,
Infantry.Soldier_M249,
AirDefence.SAM_Hawk_PCP,
AirDefence.SAM_Avenger_M1097,
@ -30,5 +32,17 @@ Spain_1990 = {
Armed_speedboat,
], "shorad":[
AirDefence.SAM_Avenger_M1097,
], "aircraft_carrier": [
CVN_74_John_C__Stennis, # Standing as Principe de Asturias
], "helicopter_carrier": [
LHA_1_Tarawa, # Standing as Juan Carlos
], "destroyer": [
Oliver_Hazzard_Perry_class,
], "cruiser": [
Ticonderoga_class,
], "carrier_names": [
"Principe de Asturias",
], "lhanames": [
"Juan Carlos I",
]
}

View File

@ -21,9 +21,12 @@ UnitedKingdom_1990 = {
Armor.MBT_Challenger_II,
Armor.IFV_MCV_80,
Armor.APC_M1043_HMMWV_Armament,
Armor.ATGM_M1045_HMMWV_TOW,
Unarmed.Transport_M818,
Infantry.Infantry_M4,
Infantry.Soldier_M249,
AirDefence.Rapier_FSA_Launcher,
AirDefence.SAM_Avenger_M1097, # Standing as Starstreak
@ -31,5 +34,17 @@ UnitedKingdom_1990 = {
CVN_74_John_C__Stennis,
LHA_1_Tarawa,
Armed_speedboat,
], "shorad":[
AirDefence.SAM_Avenger_M1097,
], "helicopter_carrier": [
LHA_1_Tarawa,
], "destroyer": [
Oliver_Hazzard_Perry_class,
], "cruiser": [
Ticonderoga_class,
], "lha_names": [
"HMS Invincible",
"HMS Illustrious",
"HMS Ark Royal",
]
}

View File

@ -17,6 +17,8 @@ USA_1955 = {
Armor.MT_M4A4_Sherman_Firefly,
Armor.MT_M4_Sherman,
Armor.MBT_M60A3_Patton,
Armor.APC_M2A1,
Armor.M30_Cargo_Carrier,
Unarmed.Transport_M818,

View File

@ -48,5 +48,15 @@ USA_1990 = {
Oliver_Hazzard_Perry_class,
], "cruiser": [
Ticonderoga_class,
], "carrier_names": [
"CVN-72 Abraham Lincoln",
"CVN-73 Georges Washington",
"CVN-74 John C. Stennis",
], "lhanames": [
"LHA-1 Tarawa",
"LHA-2 Saipan",
"LHA-3 Belleau Wood",
"LHA-4 Nassau",
"LHA-5 Peleliu"
]
}

View File

@ -16,8 +16,6 @@ USA_2005 = {
A_10C,
AV8BNA,
B_1B,
KC_135,
S_3B_Tanker,
C_130,
@ -28,6 +26,7 @@ USA_2005 = {
Armor.MBT_M1A2_Abrams,
Armor.ATGM_M1134_Stryker,
Armor.APC_M1126_Stryker_ICV,
Armor.IFV_M2A2_Bradley,
Armor.IFV_LAV_25,
Armor.APC_M1043_HMMWV_Armament,
@ -56,5 +55,15 @@ USA_2005 = {
Oliver_Hazzard_Perry_class,
], "cruiser": [
Ticonderoga_class,
], "carrier_names": [
"CVN-72 Abraham Lincoln",
"CVN-73 Georges Washington",
"CVN-74 John C. Stennis",
], "lhanames": [
"LHA-1 Tarawa",
"LHA-2 Saipan",
"LHA-3 Belleau Wood",
"LHA-4 Nassau",
"LHA-5 Peleliu"
]
}

View File

@ -7,6 +7,7 @@ from dcs.task import *
from dcs.vehicles import *
from game.game_stats import GameStats
from game.infos.information import Information
from gen.conflictgen import Conflict
from gen.flights.ai_flight_planner import FlightPlanner
from gen.ground_forces.ai_ground_planner import GroundPlanner
@ -52,7 +53,7 @@ AWACS_BUDGET_COST = 4
PLAYER_BUDGET_INITIAL = 450
# Base post-turn bonus value
PLAYER_BUDGET_BASE = 10
PLAYER_BUDGET_BASE = 20
# Bonus multiplier logarithm base
PLAYER_BUDGET_IMPORTANCE_LOG = 2
@ -84,6 +85,7 @@ class Game:
self.game_stats.update(self)
self.planners = {}
self.ground_planners = {}
self.informations = []
def _roll(self, prob, mult):
if self.settings.version == "dev":
@ -208,13 +210,17 @@ class Game:
else:
event.skip()
for cp in self.theater.enemy_points():
self._commision_units(cp)
self._enemy_reinforcement()
self._budget_player()
if not no_action:
for cp in self.theater.player_points():
cp.base.affect_strength(+PLAYER_BASE_STRENGTH_RECOVERY)
else:
for cp in self.theater.player_points():
if not cp.is_carrier and not cp.is_lha:
cp.base.affect_strength(-PLAYER_BASE_STRENGTH_RECOVERY)
self.ignored_cps = []
if ignored_cps:
@ -242,6 +248,89 @@ class Game:
def _enemy_reinforcement(self):
MAX_ARMOR = 50 * self.settings.multiplier
MAX_AIRCRAFT = 50 * self.settings.multiplier
production = 0
for enemy_point in self.theater.enemy_points():
for g in enemy_point.ground_objects:
if g.category == "power":
production = production + 4
elif g.category == "warehouse":
production = production + 2
elif g.category == "fuel":
production = production + 2
elif g.category == "ammo":
production = production + 2
elif g.category == "farp":
production = production + 1
elif g.category == "fob":
production = production + 1
elif g.category == "factory":
production = production + 10
elif g.category == "comms":
production = production + 8
elif g.category == "oil":
production = production + 8
budget_for_armored_units = production / 2
budget_for_aircraft = production / 2
potential_cp_armor = []
for cp in self.theater.enemy_points():
for cpe in cp.connected_points:
if cpe.captured and cp.base.total_armor < MAX_ARMOR:
potential_cp_armor.append(cp)
if len(potential_cp_armor) == 0:
potential_cp_armor = self.theater.enemy_points()
i = 0
potential_units = [u for u in db.FACTIONS[self.enemy_name]["units"] if u in db.UNIT_BY_TASK[PinpointStrike]]
print("Enemy Recruiting")
print(potential_cp_armor)
print(budget_for_armored_units)
print(potential_units)
if len(potential_units) > 0 and len(potential_cp_armor) > 0:
while budget_for_armored_units > 0:
i = i + 1
if i > 50 or budget_for_armored_units <= 0:
break
target_cp = random.choice(potential_cp_armor)
if target_cp.base.total_armor >= MAX_ARMOR:
continue
unit = random.choice(potential_units)
price = db.PRICES[unit]*2
budget_for_armored_units -= price * 2
target_cp.base.armor[unit] = target_cp.base.armor.get(unit, 0) + 2
info = Information("Enemy Reinforcement", unit.id + " x 2 at " + target_cp.name, self.turn)
print(str(info))
self.informations.append(info)
if budget_for_armored_units > 0:
budget_for_aircraft += budget_for_armored_units
potential_units = [u for u in db.FACTIONS[self.enemy_name]["units"] if u in db.UNIT_BY_TASK[CAS] or u in db.UNIT_BY_TASK[CAP]]
if len(potential_units) > 0 and len(potential_cp_armor) > 0:
while budget_for_aircraft > 0:
i = i + 1
if i > 50 or budget_for_aircraft <= 0:
break
target_cp = random.choice(potential_cp_armor)
if target_cp.base.total_planes >= MAX_AIRCRAFT:
continue
unit = random.choice(potential_units)
price = db.PRICES[unit]*2
budget_for_aircraft -= price * 2
target_cp.base.aircraft[unit] = target_cp.base.aircraft.get(unit, 0) + 2
info = Information("Enemy Reinforcement", unit.id + " x 2 at " + target_cp.name, self.turn)
print(str(info))
self.informations.append(info)
@property
def current_turn_daytime(self):
return ["dawn", "day", "dusk", "night"][self.turn % 4]

11
game/infos/information.py Normal file
View File

@ -0,0 +1,11 @@
class Information():
def __init__(self, title="", text="", turn=0):
self.title = title
self.text = text
self.turn = turn
def __str__(self):
s = "[" + str(self.turn) + "] " + self.title + "\n" + self.text
return s

View File

@ -18,7 +18,6 @@ class Operation:
conflict = None # type: Conflict
armorgen = None # type: ArmorConflictGenerator
airgen = None # type: AircraftConflictGenerator
extra_aagen = None # type: ExtraAAConflictGenerator
shipgen = None # type: ShipGenerator
triggersgen = None # type: TriggersGenerator
airsupportgen = None # type: AirSupportConflictGenerator
@ -77,7 +76,6 @@ class Operation:
player_country = self.from_cp.captured and self.attacker_country or self.defender_country
enemy_country = self.from_cp.captured and self.defender_country or self.attacker_country
self.extra_aagen = ExtraAAConflictGenerator(mission, conflict, self.game, player_country, enemy_country)
def prepare(self, terrain: Terrain, is_quick: bool):
with open("resources/default_options.lua", "r") as f:
@ -195,12 +193,12 @@ class Operation:
# Inject Lua Scripts
load_mist = TriggerStart(comment="Load Mist Lua Framework")
with open(os.path.abspath("./resources/scripts/mist_4_3_74.lua")) as f:
with open("./resources/scripts/mist_4_3_74.lua") as f:
load_mist.add_action(DoScript(String(f.read())))
self.current_mission.triggerrules.triggers.append(load_mist)
load_dcs_libe = TriggerStart(comment="Load DCS Liberation Script")
with open(os.path.abspath("./resources/scripts/dcs_liberation.lua")) as f:
with open("./resources/scripts/dcs_liberation.lua") as f:
script = f.read()
json_location = "[["+os.path.abspath("resources\\scripts\\json.lua")+"]]"
state_location = "[[" + os.path.abspath("state.json") + "]]"

View File

@ -7,7 +7,7 @@ class Settings:
labels = "Full"
only_player_takeoff = True
night_disabled = False
supercarrier = False
multiplier = 1
sams = True
cold_start = False

View File

@ -42,18 +42,14 @@ TRANSPORT_LANDING_ALT = 2000
DEFENCE_ENGAGEMENT_MAX_DISTANCE = 60000
INTERCEPT_MAX_DISTANCE = 200000
GROUP_VERTICAL_OFFSET = 300
class AircraftConflictGenerator:
escort_targets = [] # type: typing.List[typing.Tuple[FlyingGroup, int]]
vertical_offset = None # type: int
def __init__(self, mission: Mission, conflict: Conflict, settings: Settings):
self.m = mission
self.settings = settings
self.conflict = conflict
self.vertical_offset = 0
self.escort_targets = []
def _start_type(self) -> StartType:
@ -91,6 +87,8 @@ class AircraftConflictGenerator:
did_load_loadout = False
unit_type = group.units[0].unit_type
print("SETUP GROUP : " + str(for_task) + " -- " + str(group.name))
if unit_type in db.PLANE_PAYLOAD_OVERRIDES:
override_loadout = db.PLANE_PAYLOAD_OVERRIDES[unit_type]
if type(override_loadout) == dict:
@ -163,12 +161,11 @@ class AircraftConflictGenerator:
assert count > 0
assert unit is not None
self.vertical_offset += GROUP_VERTICAL_OFFSET
if unit_type in helicopters.helicopter_map.values():
alt = WARM_START_HELI_ALT + self.vertical_offset
alt = WARM_START_HELI_ALT
speed = WARM_START_HELI_AIRSPEED
else:
alt = WARM_START_ALTITUDE + self.vertical_offset
alt = WARM_START_ALTITUDE
speed = WARM_START_AIRSPEED
pos = Point(at.x + random.randint(100, 1000), at.y + random.randint(100, 1000))
@ -334,12 +331,18 @@ class AircraftConflictGenerator:
group = self.generate_planned_flight(cp, country, flight)
if flight.flight_type == FlightType.INTERCEPTION:
self.setup_group_as_intercept_flight(group, flight)
elif flight.flight_type == FlightType.CAP:
elif flight.flight_type in [FlightType.CAP, FlightType.TARCAP, FlightType.BARCAP]:
self.setup_group_as_cap_flight(group, flight)
elif flight.flight_type == FlightType.CAS:
elif flight.flight_type in [FlightType.CAS, FlightType.BAI]:
self.setup_group_as_cas_flight(group, flight)
elif flight.flight_type == FlightType.SEAD or flight.flight_type == FlightType.DEAD:
elif flight.flight_type in [FlightType.STRIKE]:
self.setup_group_as_strike_flight(group, flight)
elif flight.flight_type in [FlightType.ANTISHIP]:
self.setup_group_as_antiship_flight(group, flight)
elif flight.flight_type in [FlightType.SEAD, FlightType.DEAD]:
self.setup_group_as_sead_flight(group, flight)
else:
self.setup_group_as_cap_flight(group, flight)
self._setup_custom_payload(flight, group)
def generate_planned_flight(self, cp, country, flight:Flight):
@ -413,17 +416,50 @@ class AircraftConflictGenerator:
group.points[0].tasks.append(CASTaskAction())
group.points[0].tasks.append(OptReactOnThreat(OptReactOnThreat.Values.EvadeFire))
group.points[0].tasks.append(OptROE(OptROE.Values.OpenFireWeaponFree))
group.points[0].tasks.append(OptRestrictJettison(True))
for point in flight.points:
group.add_waypoint(Point(point.x,point.y), point.alt)
def setup_group_as_sead_flight(self, group, flight):
group.task = SEAD.name
self._setup_group(group, SEAD, flight.client_count)
group.points[0].tasks.clear()
group.points[0].tasks.append(SEADTaskAction())
group.points[0].tasks.append(OptReactOnThreat(OptReactOnThreat.Values.EvadeFire))
group.points[0].tasks.append(OptROE(OptROE.Values.WeaponFree))
group.points[0].tasks.append(OptROE(OptROE.Values.OpenFireWeaponFree))
group.points[0].tasks.append(OptRestrictJettison(True))
i = 1
for point in flight.points:
group.add_waypoint(Point(point.x,point.y), point.alt)
group.points[i].tasks.clear()
group.points[i].tasks.append(SEADTaskAction())
i = i + 1
def setup_group_as_strike_flight(self, group, flight):
group.task = PinpointStrike.name
self._setup_group(group, GroundAttack, flight.client_count)
group.points[0].tasks.clear()
group.points[0].tasks.append(CASTaskAction())
group.points[0].tasks.append(OptReactOnThreat(OptReactOnThreat.Values.EvadeFire))
group.points[0].tasks.append(OptROE(OptROE.Values.OpenFireWeaponFree))
group.points[0].tasks.append(OptRestrictJettison(True))
for point in flight.points:
group.add_waypoint(Point(point.x,point.y), point.alt)
def setup_group_as_antiship_flight(self, group, flight):
group.task = AntishipStrike.name
self._setup_group(group, AntishipStrike, flight.client_count)
group.points[0].tasks.clear()
group.points[0].tasks.append(AntishipStrikeTaskAction())
group.points[0].tasks.append(OptReactOnThreat(OptReactOnThreat.Values.EvadeFire))
group.points[0].tasks.append(OptROE(OptROE.Values.OpenFireWeaponFree))
group.points[0].tasks.append(OptRestrictJettison(True))
for point in flight.points:
group.add_waypoint(Point(point.x,point.y), point.alt)

View File

@ -56,11 +56,20 @@ class EnviromentGenerator:
start_time = self.game.current_day
daytime = self.game.current_turn_daytime
if self.game.settings.night_disabled and daytime == "night":
daytime = "day"
logging.info("Mission time will be {}".format(daytime))
if self.game.settings.night_disabled:
logging.info("Skip Night mission due to user settings")
if daytime == "dawn":
time_range = (8, 9)
elif daytime == "noon":
time_range = (10, 12)
elif daytime == "dusk":
time_range = (12, 14)
elif daytime == "night":
time_range = (14, 17)
else:
time_range = self.game.theater.daytime_map[daytime]
time_range = self.game.theater.daytime_map[daytime]
start_time += timedelta(hours=random.randint(*time_range))
logging.info("time - {}, slot - {}, night skipped - {}".format(

View File

@ -13,7 +13,11 @@ class CarrierGroupGenerator(GroupGenerator):
# Add carrier
if "aircraft_carrier" in self.faction.keys():
carrier_type = random.choice(self.faction["aircraft_carrier"])
if "supercarrier" in self.faction.keys() and self.game.settings.supercarrier:
carrier_type = random.choice(self.faction["supercarrier"])
else:
carrier_type = random.choice(self.faction["aircraft_carrier"])
self.add_unit(carrier_type, "Carrier", self.position.x, self.position.y, self.heading)
else:
return
@ -24,4 +28,6 @@ class CarrierGroupGenerator(GroupGenerator):
self.add_unit(dd_type, "DD2", self.position.x + 250, self.position.y - 450, self.heading)
self.add_unit(dd_type, "DD3", self.position.x + 450, self.position.y + 850, self.heading)
self.add_unit(dd_type, "DD4", self.position.x + 450, self.position.y - 850, self.heading)
self.add_unit(dd_type, "DD4", self.position.x + 450, self.position.y - 850, self.heading)
self.get_generated_group().points[0].speed = 20

View File

@ -3,23 +3,22 @@ import random
from gen.sam.group_generator import GroupGenerator
class HelicopterCarrierGroupGenerator(GroupGenerator):
class LHAGroupGenerator(GroupGenerator):
def __init__(self, game, ground_object, faction):
super(HelicopterCarrierGroupGenerator, self).__init__(game, ground_object)
super(LHAGroupGenerator, self).__init__(game, ground_object)
self.faction = faction
def generate(self):
# Add carrier
if self.faction["aircraft_carrier"]:
if "helicopter_carrier" in self.faction.keys():
carrier_type = random.choice(self.faction["helicopter_carrier"])
self.add_unit(carrier_type, "Carrier", self.position.x, self.position.y, self.heading)
self.add_unit(carrier_type, "LHA", self.position.x, self.position.y, self.heading)
# Add destroyers escort
dd_type = random.choice(self.faction["destroyer"])
self.add_unit(dd_type, "DD1", self.position.x + 50, self.position.y + 150, self.heading)
self.add_unit(dd_type, "DD2", self.position.x + 50, self.position.y - 150, self.heading)
self.add_unit(dd_type, "DD3", self.position.x + 150, self.position.y + 250, self.heading)
self.add_unit(dd_type, "DD4", self.position.x + 150, self.position.y - 250, self.heading)
self.get_generated_group().points[0].speed = 20

View File

@ -1,15 +1,11 @@
import random
from dcs.vehicles import Armor
from game import db
from gen.defenses.armored_group_generator import ArmoredGroupGenerator
from gen.fleet.carrier_group import CarrierGroupGenerator
from gen.fleet.lha_group import LHAGroupGenerator
def generate_carrier_group(faction:str, game, ground_object):
"""
This generate a ship group
This generate a carrier group
:param parentCp: The parent control point
:param ground_object: The ground object which will own the ship group
:param country: Owner country
@ -18,3 +14,16 @@ def generate_carrier_group(faction:str, game, ground_object):
generator = CarrierGroupGenerator(game, ground_object, db.FACTIONS[faction])
generator.generate()
return generator.get_generated_group()
def generate_lha_group(faction:str, game, ground_object):
"""
This generate a lha carrier group
:param parentCp: The parent control point
:param ground_object: The ground object which will own the ship group
:param country: Owner country
:return: Nothing, but put the group reference inside the ground object
"""
generator = LHAGroupGenerator(game, ground_object, db.FACTIONS[faction])
generator.generate()
return generator.get_generated_group()

View File

@ -21,20 +21,6 @@ SEAD_EVERY_X_MINUTES = 40
class FlightPlanner:
from_cp = None
game = None
interceptor_flights = []
cap_flights = []
cas_flights = []
strike_flights = []
sead_flights = []
custom_flights = []
flights = []
potential_sead_targets = []
potential_strike_targets = []
def __init__(self, from_cp, game):
# TODO : have the flight planner depend on a 'stance' setting : [Defensive, Aggresive... etc] and faction doctrine
# TODO : the flight planner should plan package and operations
@ -52,6 +38,7 @@ class FlightPlanner:
self.cas_flights = []
self.strike_flights = []
self.sead_flights = []
self.custom_flights = []
self.flights = []
self.potential_sead_targets = []
self.potential_strike_targets = []

View File

@ -3,6 +3,7 @@ from enum import Enum
from dcs.vehicles import *
from gen import Conflict
from gen.ground_forces.combat_stance import CombatStance
from theater import ControlPoint
@ -156,6 +157,7 @@ class CombatGroup:
self.units = []
self.role = role
self.assigned_enemy_cp = None
self.start_position = None
def __str__(self):
s = ""

View File

@ -77,19 +77,16 @@ class GroundObjectsGenerator:
vehicle.position.y = u.position.y
vehicle.heading = u.heading
vg.add_unit(vehicle)
elif ground_object.dcs_identifier == "CARRIER":
elif ground_object.dcs_identifier in ["CARRIER", "LHA"]:
for g in ground_object.groups:
if len(g.units) > 0:
utype = unit_type_from_name(g.units[0].type)
sg = self.m.ship_group(side, g.name, utype, position=g.position, heading=g.units[0].heading)
sg.units[0].name = self.m.string(g.units[0].name)
for i, u in enumerate(g.units):
if i > 0:
print(u.type)
print(type(u.type))
ship = Ship(self.m.next_unit_id(), self.m.string(u.name), unit_type_from_name(u.type))
ship.position.x = u.position.x
ship.position.y = u.position.y

View File

@ -15,22 +15,13 @@ from userdata import persistency, logging as logging_module
if __name__ == "__main__":
assert len(sys.argv) >= 3, "__init__.py should be started with two mandatory arguments: %UserProfile% location and application version"
persistency.setup(installation.get_dcs_saved_games_directory())
persistency.setup(sys.argv[1])
source_path = os.path.join(os.path.dirname(os.path.realpath(__file__)), "..\\resources\\payloads")
compiled_path = os.path.join(os.path.dirname(os.path.realpath(__file__)), "..\\resources\\payloads")
the_path = None
if os.path.exists(source_path):
the_path = source_path
else:
the_path = compiled_path
custom_payloads = os.path.join(os.path.dirname(os.path.realpath(__file__)), "..\\resources\\customized_payloads")
if os.path.exists(custom_payloads):
dcs.planes.FlyingType.payload_dirs.append(custom_payloads)
dcs.planes.FlyingType.payload_dirs = [
the_path
]
VERSION_STRING = sys.argv[2]
VERSION_STRING = "2.0"
logging_module.setup_version_string(VERSION_STRING)
logging.info("Using {} as userdata folder".format(persistency.base_path()))
@ -47,7 +38,6 @@ if __name__ == "__main__":
uiconstants.load_aircraft_icons()
uiconstants.load_vehicle_icons()
persistency.setup(sys.argv[1])
css = ""
with open("./resources/stylesheets/style.css") as stylesheet:

View File

@ -1,67 +0,0 @@
import datetime
# from dcs import Mission
# from dcs.terrain import Caucasus
# from dcs.vehicles import AirDefence
#
# from game import Game
# from gen.sam.sam_avenger import AvengerGenerator
# from gen.sam.sam_chaparral import ChaparralGenerator
# from gen.sam.sam_gepard import GepardGenerator
# from gen.sam.sam_hawk import HawkGenerator
# from gen.sam.sam_linebacker import LinebackerGenerator
# from gen.sam.sam_patriot import PatriotGenerator
# from gen.sam.sam_rapier import RapierGenerator
# from gen.sam.sam_roland import RolandGenerator
# from gen.sam.sam_sa10 import SA10Generator
# from gen.sam.sam_sa11 import SA11Generator
# from gen.sam.sam_sa13 import SA13Generator
# from gen.sam.sam_sa15 import SA15Generator
# from gen.sam.sam_sa19 import SA19Generator
# from gen.sam.sam_sa2 import SA2Generator
# from gen.sam.sam_sa3 import SA3Generator
# from gen.sam.sam_sa6 import SA6Generator
# from gen.sam.sam_sa8 import SA8Generator
# from gen.sam.sam_sa9 import SA9Generator
# from gen.sam.sam_zsu23 import ZSU23Generator
# from gen.sam.sam_zu23 import ZU23Generator
# from gen.sam.sam_zu23_ural import ZU23UralGenerator
# from theater import TheaterGroundObject
# from theater.caucasus import WesternGeorgia
#
# ter = Caucasus()
# m = Mission()
#
#
#
# game = Game("USA 1990", "Iran 2015", WesternGeorgia(), datetime.datetime.now())
#
# generated_groups = []
#
# for i,c in enumerate([SA3Generator, SA2Generator, SA6Generator, RapierGenerator,
# HawkGenerator, SA10Generator, SA19Generator, ZU23Generator,
# SA8Generator, SA11Generator, SA9Generator, SA13Generator,
# ZSU23Generator, SA15Generator, GepardGenerator, RolandGenerator,
# PatriotGenerator, ZU23UralGenerator, ChaparralGenerator,
# AvengerGenerator, LinebackerGenerator]):
# t = TheaterGroundObject()
# t.position = ter.kutaisi().position
# t.position.x += i*250
# t.dcs_identifier = "AA"
# gen = c(game, t)
# gen.generate()
# vehicle_group = gen.get_generated_group()
# generated_groups.append(vehicle_group)
#
# for g in generated_groups:
# g.name = m.string(g.name)
# for unit in g.units:
# unit.name = m.string(unit.name)
# m.country("USA").add_vehicle_group(g)
#
# m.save("./test.miz")
from dcs.helicopters import SA342M
from game import db
print(db.unit_type_name(None))

View File

@ -20,8 +20,10 @@ LABELS_OPTIONS = ["Full", "Abbreviated", "Dot Only", "Off"]
SKILL_OPTIONS = ["Average", "Good", "High", "Excellent"]
COLORS: Dict[str, QColor] = {
"red": QColor(255, 125, 125),
"bright_red": QColor(200, 64, 64),
"dark_red": QColor(140, 20, 20),
"red": QColor(200, 80, 80),
"bright_red": QColor(150, 80, 80),
"super_red": QColor(200, 120, 120),
"blue": QColor(164, 164, 255),
"dark_blue": QColor(45, 62, 80),
"white": QColor(255, 255, 255),
@ -29,8 +31,8 @@ COLORS: Dict[str, QColor] = {
"bright_green": QColor(64, 200, 64),
"black": QColor(0, 0, 0),
"black_transparent": QColor(0, 0, 0, 64),
"blue_transparent": QColor(164, 164, 255, 64),
"red_transparent": QColor(255, 125, 125, 64)
"blue_transparent": QColor(164, 164, 255, 32),
"red_transparent": QColor(255, 125, 125, 32)
}
@ -59,7 +61,8 @@ def load_icons():
ICONS["Night"] = QPixmap("./resources/ui/daytime/night.png")
ICONS["Money"] = QPixmap("./resources/ui/misc/money_icon.png")
ICONS["PassTurn"] = QPixmap("./resources/ui/misc/pass_turn.png")
ICONS["PassTurn"] = QPixmap("./resources/ui/misc/hourglass.png")
ICONS["Proceed"] = QPixmap("./resources/ui/misc/proceed.png")
ICONS["Settings"] = QPixmap("./resources/ui/misc/settings.png")
ICONS["Statistics"] = QPixmap("./resources/ui/misc/statistics.png")
ICONS["Ordnance"] = QPixmap("./resources/ui/misc/ordnance_icon.png")

View File

@ -0,0 +1,31 @@
from PySide2.QtWidgets import QLabel, QGroupBox, QGridLayout
from game import Game
class QFactionsInfos(QGroupBox):
"""
UI Component to display current turn and time info
"""
def __init__(self, game):
super(QFactionsInfos, self).__init__("Factions")
self.player_name = QLabel("")
self.enemy_name = QLabel("")
self.setGame(game)
self.layout = QGridLayout()
self.layout.addWidget(QLabel("<b>Player : </b>"),0,0)
self.layout.addWidget(self.player_name,0,1)
self.layout.addWidget(QLabel("<b>Enemy : </b>"),1,0)
self.layout.addWidget(self.enemy_name,1,1)
self.setLayout(self.layout)
def setGame(self, game: Game):
if game is not None:
self.player_name.setText(game.player_name)
self.enemy_name.setText(game.enemy_name)
else:
self.player_name.setText("")
self.enemy_name.setText("")

View File

@ -2,6 +2,7 @@ from PySide2.QtWidgets import QFrame, QHBoxLayout, QPushButton, QVBoxLayout
from game import Game
from qt_ui.widgets.QBudgetBox import QBudgetBox
from qt_ui.widgets.QFactionsInfos import QFactionsInfos
from qt_ui.windows.stats.QStatsWindow import QStatsWindow
from qt_ui.widgets.QTurnCounter import QTurnCounter
@ -30,12 +31,17 @@ class QTopPanel(QFrame):
self.passTurnButton.clicked.connect(self.passTurn)
self.proceedButton = QPushButton("Proceed")
self.proceedButton.setIcon(CONST.ICONS["PassTurn"])
self.proceedButton.setIcon(CONST.ICONS["Proceed"])
self.proceedButton.setProperty("style", "btn-primary")
self.proceedButton.clicked.connect(self.proceed)
if self.game and self.game.turn == 0:
self.proceedButton.setEnabled(False)
elif not len(self.game.planners.keys()) == self.game.theater.controlpoints:
self.proceedButton.setEnabled(False)
else:
self.proceedButton.setEnabled(True)
self.factionsInfos = QFactionsInfos(self.game)
self.submenus = QVBoxLayout()
self.settings = QPushButton("Settings")
@ -52,10 +58,11 @@ class QTopPanel(QFrame):
self.submenus.addWidget(self.statistics)
self.layout = QHBoxLayout()
self.layout.addStretch(1)
self.layout.addLayout(self.submenus)
self.layout.addWidget(self.factionsInfos)
self.layout.addWidget(self.turnCounter)
self.layout.addWidget(self.budgetBox)
self.layout.addLayout(self.submenus)
self.layout.addStretch(1)
self.layout.addWidget(self.passTurnButton)
self.layout.addWidget(self.proceedButton)
self.setLayout(self.layout)
@ -65,6 +72,10 @@ class QTopPanel(QFrame):
if game is not None:
self.turnCounter.setCurrentTurn(self.game.turn, self.game.current_day)
self.budgetBox.setBudget(self.game.budget, self.game.budget_reward_amount)
self.factionsInfos.setGame(self.game)
if not len(self.game.planners.keys()) == self.game.theater.controlpoints:
self.proceedButton.setEnabled(False)
def openSettings(self):
self.subwindow = QSettingsWindow(self.game)
@ -75,7 +86,7 @@ class QTopPanel(QFrame):
self.subwindow.show()
def passTurn(self):
self.game.pass_turn()
self.game.pass_turn(no_action=True)
GameUpdateSignal.get_instance().updateGame(self.game)
self.proceedButton.setEnabled(True)

View File

@ -5,6 +5,7 @@ from PySide2.QtCore import Qt, QRect, QPointF
from PySide2.QtGui import QPixmap, QBrush, QColor, QWheelEvent, QPen, QFont
from PySide2.QtWidgets import QGraphicsView, QFrame, QGraphicsOpacityEffect
from dcs import Point
from dcs.mapping import point_from_heading
import qt_ui.uiconstants as CONST
from game import Game, db
@ -114,12 +115,17 @@ class QLiberationMap(QGraphicsView):
unit = db.unit_type_from_name(u.type)
if unit.threat_range > max_range:
max_range = unit.threat_range
if max_range >= 6000:
scene.addEllipse(go_pos[0] - max_range/300.0 + 8, go_pos[1] - max_range/300.0 + 8, max_range/150.0, max_range/150.0, pen, brush)
scene.addEllipse(go_pos[0] - max_range/300.0 + 8, go_pos[1] - max_range/300.0 + 8, max_range/150.0, max_range/150.0, pen, brush)
for cp in self.game.theater.enemy_points():
if self.get_display_rule("lines"):
self.scene_create_lines_for_cp(cp)
for cp in self.game.theater.player_points():
if self.get_display_rule("lines"):
self.scene_create_lines_for_cp(cp)
for cp in self.game.theater.controlpoints:
if self.get_display_rule("flight_paths"):
if cp.id in self.game.planners.keys():
planner = self.game.planners[cp.id]
@ -138,38 +144,33 @@ class QLiberationMap(QGraphicsView):
pos = self._transform_point(cp.position)
for connected_cp in cp.connected_points:
pos2 = self._transform_point(connected_cp.position)
if connected_cp.captured != cp.captured:
if not cp.captured:
color = CONST.COLORS["red"]
elif connected_cp.captured and cp.captured:
elif cp.captured:
color = CONST.COLORS["blue"]
else:
color = CONST.COLORS["black_transparent"]
color = CONST.COLORS["red"]
pen = QPen(brush=color)
pen.setColor(color)
pen.setWidth(4)
scene.addLine(pos[0], pos[1], pos2[0], pos2[1], pen=pen)
pen.setWidth(16)
if cp.captured and not connected_cp.captured and Conflict.has_frontline_between(cp, connected_cp):
frontline = self._frontline_vector(cp, connected_cp)
if not frontline:
continue
if not cp.captured:
scene.addLine(pos[0], pos[1], pos2[0], pos2[1], pen=pen)
else:
posx, h = Conflict.frontline_position(self.game.theater, cp, connected_cp)
pos2 = self._transform_point(posx)
scene.addLine(pos[0], pos[1], pos2[0], pos2[1], pen=pen)
frontline_pos, heading, distance = frontline
p1 = point_from_heading(pos2[0], pos2[1], h+180, 25)
p2 = point_from_heading(pos2[0], pos2[1], h, 25)
frontline_pen = QPen(brush=CONST.COLORS["bright_red"])
frontline_pen.setColor(CONST.COLORS["bright_red"])
frontline_pen.setWidth(18)
scene.addLine(p1[0], p1[1], p2[0], p2[1], pen=frontline_pen)
if distance < 10000:
frontline_pos = frontline_pos.point_from_heading(heading + 180, 5000)
distance = 10000
start_coords = self._transform_point(frontline_pos, treshold=10)
end_coords = self._transform_point(frontline_pos.point_from_heading(heading, distance),
treshold=60)
frontline_pen = QPen(brush=CONST.COLORS["bright_red"])
frontline_pen.setColor(CONST.COLORS["bright_red"])
frontline_pen.setWidth(4)
frontline_pen.setStyle(Qt.DashDotLine)
scene.addLine(start_coords[0], start_coords[1], end_coords[0], end_coords[1], pen=frontline_pen)
else:
scene.addLine(pos[0], pos[1], pos2[0], pos2[1], pen=pen)
def _frontline_vector(self, from_cp: ControlPoint, to_cp: ControlPoint):
# Cache mechanism to avoid performing frontline vector computation on every frame

View File

@ -37,24 +37,24 @@ class QMapControlPoint(QGraphicsRectItem):
painter.setPen(self.pen_color)
r = option.rect
painter.drawChord(r, -180*16, -180*16)
painter.drawEllipse(r.x(), r.y(), r.width(), r.height())
gauge = QRect(r.x(),
r.y()+CONST.CP_SIZE/2 + 2,
r.width(),
CONST.CP_SIZE / 4)
#gauge = QRect(r.x(),
# r.y()+CONST.CP_SIZE/2 + 2,
# r.width(),
# CONST.CP_SIZE / 4)
painter.setBrush(CONST.COLORS["bright_red"])
painter.setPen(CONST.COLORS["black"])
painter.drawRect(gauge)
#painter.setBrush(CONST.COLORS["bright_red"])
#painter.setPen(CONST.COLORS["black"])
#painter.drawRect(gauge)
gauge2 = QRect(r.x(),
r.y() + CONST.CP_SIZE / 2 + 2,
r.width()*self.model.base.strength,
CONST.CP_SIZE / 4)
#gauge2 = QRect(r.x(),
# r.y() + CONST.CP_SIZE / 2 + 2,
# r.width()*self.model.base.strength,
# CONST.CP_SIZE / 4)
painter.setBrush(CONST.COLORS["green"])
painter.drawRect(gauge2)
#painter.setBrush(CONST.COLORS["green"])
#painter.drawRect(gauge2)
else:
# TODO : not drawing sunk carriers. Can be improved to display sunk carrier.
pass
@ -64,6 +64,9 @@ class QMapControlPoint(QGraphicsRectItem):
self.update()
self.setCursor(Qt.PointingHandCursor)
def mouseMoveEvent(self, event:QGraphicsSceneMouseEvent):
self.update()
def hoverLeaveEvent(self, event: QGraphicsSceneHoverEvent):
self.update()
@ -87,9 +90,9 @@ class QMapControlPoint(QGraphicsRectItem):
@property
def brush_color(self)->QColor:
if self.parent.game.player_country in db.BLUEFOR_FACTIONS:
return self.model.captured and CONST.COLORS["blue"] or CONST.COLORS["red"]
return self.model.captured and CONST.COLORS["blue"] or CONST.COLORS["super_red"]
else:
return self.model.captured and CONST.COLORS["red"] or CONST.COLORS["blue"]
return self.model.captured and CONST.COLORS["super_red"] or CONST.COLORS["blue"]
@property
def pen_color(self) -> QColor:

View File

@ -1,6 +1,6 @@
from PySide2.QtCore import QPoint, QRect, QPointF
from PySide2.QtCore import QPoint, QRect, QPointF, Qt
from PySide2.QtGui import QPainter
from PySide2.QtWidgets import QGraphicsRectItem, QGraphicsItem
from PySide2.QtWidgets import QGraphicsRectItem, QGraphicsItem, QGraphicsSceneHoverEvent, QGraphicsSceneMouseEvent
import qt_ui.uiconstants as CONST
from game import db
@ -41,8 +41,20 @@ class QMapGroundObject(QGraphicsRectItem):
painter.save()
if not self.model.is_dead and not self.cp.captured:
painter.drawPixmap(option.rect, CONST.ICONS[self.model.category])
elif not self.model.is_dead and self.model.category == "aa":
elif not self.model.is_dead:
painter.drawPixmap(option.rect, CONST.ICONS[self.model.category + "_blue"])
else:
painter.drawPixmap(option.rect, CONST.ICONS["destroyed"])
painter.restore()
def hoverEnterEvent(self, event: QGraphicsSceneHoverEvent):
self.update()
self.setCursor(Qt.PointingHandCursor)
def mouseMoveEvent(self, event:QGraphicsSceneMouseEvent):
self.update()
self.setCursor(Qt.PointingHandCursor)
def hoverLeaveEvent(self, event: QGraphicsSceneHoverEvent):
self.update()

View File

@ -1,3 +1,4 @@
import sys
import webbrowser
from PySide2 import QtGui
@ -73,7 +74,7 @@ class QLiberationWindow(QMainWindow):
def initToolbar(self):
self.tool_bar = self.addToolBar("File")
self.tool_bar.addAction(self.newGameAction)
self.tool_bar.addAction(QIcon(CONST.ICONS["Open"]), "Open")
#self.tool_bar.addAction(QIcon(CONST.ICONS["Open"]), "Open")
self.tool_bar.addAction(self.saveGameAction)
def initMenuBar(self):
@ -81,15 +82,18 @@ class QLiberationWindow(QMainWindow):
file_menu = self.menu.addMenu("File")
file_menu.addAction(self.newGameAction)
file_menu.addAction(QIcon(CONST.ICONS["Open"]), "Open")
#file_menu.addAction(QIcon(CONST.ICONS["Open"]), "Open") # TODO : implement
file_menu.addAction(self.saveGameAction)
file_menu.addAction("Save As")
#file_menu.addAction("Save As") # TODO : implement
#file_menu.addAction("Close Current Game", lambda: self.closeGame()) # Not working
file_menu.addAction("Exit" , lambda: self.exit())
help_menu = self.menu.addMenu("Help")
help_menu.addAction("Online Manual", lambda: webbrowser.open_new_tab(URLS["Manual"]))
help_menu.addAction("Troubleshooting Guide", lambda: webbrowser.open_new_tab(URLS["Troubleshooting"]))
help_menu.addAction("Modding Guide", lambda: webbrowser.open_new_tab(URLS["Modding"]))
help_menu.addSeparator()
#help_menu.addAction("Online Manual", lambda: webbrowser.open_new_tab(URLS["Manual"]))
#help_menu.addAction("Troubleshooting Guide", lambda: webbrowser.open_new_tab(URLS["Troubleshooting"]))
#help_menu.addAction("Modding Guide", lambda: webbrowser.open_new_tab(URLS["Modding"]))
#help_menu.addSeparator() ----> Note from Khopa : I disable these links since it's not up to date for this branch
help_menu.addAction("Contribute", lambda: webbrowser.open_new_tab(URLS["Repository"]))
help_menu.addAction("Forum Thread", lambda: webbrowser.open_new_tab(URLS["ForumThread"]))
help_menu.addAction("Report an issue", lambda: webbrowser.open_new_tab(URLS["Issues"]))
@ -151,6 +155,13 @@ class QLiberationWindow(QMainWindow):
self.game = game
GameUpdateSignal.get_instance().updateGame(self.game)
def closeGame(self):
self.game = None
GameUpdateSignal.get_instance().updateGame(self.game)
def exit(self):
sys.exit(0)
def setGame(self, game: Game):
self.game = game
@ -158,10 +169,11 @@ class QLiberationWindow(QMainWindow):
text = "<h3>DCS Liberation</h3>" + \
"<h4>Repository</h4>" + \
"<b>Source code :</b> https://github.com/shdwp/dcs_liberation<br/>" + \
"<h4>Contributors</h4>" + \
"<b>Author :</b> sdwp<br/><br/>" + \
"<b>Contributors :</b> Khopa, Wrycu, calvinmorrow, JohanAberg<br/><br/>" + \
"<b>Special Thanks :</b> rp- (pydcs framework) "
"<h4>Authors/Contributors</h4><br/>" + \
"<b>shdwp</b>, <b>Khopa</b>, <b>Wrycu</b>, <b>calvinmorrow</b>, <b>JohanAberg</b><br/>" + \
"<h4>Special Thanks :</h4>" \
"<b>rp-</b> <i>for the pydcs framework</i><br/>"\
"<b>Grimes (mrSkortch)</b> & <b>Speed</b> <i>for the MIST framework</i><br/>"
about = QMessageBox()
about.setWindowTitle("About DCS Liberation")

View File

@ -35,8 +35,10 @@ class NewGameWizard(QtWidgets.QWizard):
isTerrainPg = self.field("isTerrainPg")
isTerrainNttr = self.field("isTerrainNttr")
isTerrainCaucasusSmall = self.field("isTerrainCaucasusSmall")
isTerrainCaucasusSmallInverted = self.field("isTerrainCaucasusSmallInverted")
isIranianCampaignTheater = self.field("isIranianCampaignTheater")
isTerrainNormandy = self.field("isTerrainNormandy")
isTerrainEmirates = self.field("isTerrainEmirates")
timePeriod = db.TIME_PERIODS[list(db.TIME_PERIODS.keys())[self.field("timePeriod")]]
sams = self.field("sams")
midGame = self.field("midGame")
@ -51,17 +53,17 @@ class NewGameWizard(QtWidgets.QWizard):
conflicttheater = nevada.NevadaTheater()
elif isTerrainCaucasusSmall:
conflicttheater = caucasus.WesternGeorgia()
elif isTerrainCaucasusSmallInverted:
conflicttheater = caucasus.WesternGeorgiaInverted()
elif isIranianCampaignTheater:
conflicttheater = persiangulf.IranianCampaign()
elif isTerrainEmirates:
conflicttheater = persiangulf.Emirates()
elif isTerrainNormandy:
conflicttheater = normandy.NormandyTheater()
else:
conflicttheater = caucasus.CaucasusTheater()
print("player_name, enemy_name, conflicttheater, sams, midGame, multiplier, timePeriod")
print(player_name, enemy_name, conflicttheater, sams, midGame, multiplier, timePeriod)
print(isIranianCampaignTheater, isTerrainPg)
self.generatedGame = self.start_new_game(player_name, enemy_name, conflicttheater, sams, midGame, multiplier,
timePeriod)
@ -204,18 +206,22 @@ class TheaterConfiguration(QtWidgets.QWizardPage):
# Terrain selection
terrainGroup = QtWidgets.QGroupBox("Terrain")
terrainCaucasus = QtWidgets.QRadioButton("Caucasus - Full map")
terrainCaucasus.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Caucasus"]))
terrainCaucasusSmall = QtWidgets.QRadioButton("Caucasus - Western Georgia [RECOMMENDED]")
terrainCaucasusSmall.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Caucasus"]))
terrainCaucasusSmallInverted = QtWidgets.QRadioButton("Caucasus - Western Georgia Inverted [RECOMMENDED]")
terrainCaucasusSmallInverted.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Caucasus"]))
terrainCaucasus = QtWidgets.QRadioButton("Caucasus - Full map")
terrainCaucasus.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Caucasus"]))
terrainPg = QtWidgets.QRadioButton("Persian Gulf - Full Map")
terrainPg.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Persian_Gulf"]))
terrainIran = QtWidgets.QRadioButton("Persian Gulf - Iranian Campaign [RECOMMENDED]")
terrainIran = QtWidgets.QRadioButton("Persian Gulf - Invasion of Iran [RECOMMENDED]")
terrainIran.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Persian_Gulf"]))
terrainEmirates = QtWidgets.QRadioButton("Persian Gulf - Emirates [RECOMMENDED]")
terrainEmirates.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Persian_Gulf"]))
terrainNttr = QtWidgets.QRadioButton("Nevada - Full")
terrainNttr.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Nevada"]))
terrainNormandy = QtWidgets.QRadioButton("Normandy")
terrainNormandy = QtWidgets.QRadioButton("Normandy [Alpha]")
terrainNormandy.setIcon(QtGui.QIcon(CONST.ICONS["Terrain_Normandy"]))
terrainCaucasusSmall.setChecked(True)
@ -231,8 +237,10 @@ class TheaterConfiguration(QtWidgets.QWizardPage):
# Register fields
self.registerField('isTerrainCaucasus', terrainCaucasus)
self.registerField('isTerrainCaucasusSmall', terrainCaucasusSmall)
self.registerField('isTerrainCaucasusSmallInverted', terrainCaucasusSmallInverted)
self.registerField('isTerrainPg', terrainPg)
self.registerField('isIranianCampaignTheater', terrainIran)
self.registerField('isTerrainEmirates', terrainEmirates)
self.registerField('isTerrainNttr', terrainNttr)
self.registerField('isTerrainNormandy', terrainNormandy)
self.registerField('timePeriod', timePeriodSelect)
@ -240,8 +248,10 @@ class TheaterConfiguration(QtWidgets.QWizardPage):
# Build layout
terrainGroupLayout = QtWidgets.QVBoxLayout()
terrainGroupLayout.addWidget(terrainCaucasusSmall)
terrainGroupLayout.addWidget(terrainCaucasusSmallInverted)
terrainGroupLayout.addWidget(terrainCaucasus)
terrainGroupLayout.addWidget(terrainIran)
terrainGroupLayout.addWidget(terrainEmirates)
terrainGroupLayout.addWidget(terrainPg)
terrainGroupLayout.addWidget(terrainNttr)
terrainGroupLayout.addWidget(terrainNormandy)

View File

@ -53,6 +53,8 @@ class QAircraftRecruitmentMenu(QGroupBox, QRecruitBehaviour):
for unit_type in units_column:
if self.cp.is_carrier and not unit_type in db.CARRIER_CAPABLE:
continue
if self.cp.is_lha and not unit_type in db.LHA_CAPABLE:
continue
row = self.add_purchase_row(unit_type, task_box_layout, row)
stretch = QVBoxLayout()
stretch.addStretch()

View File

@ -73,6 +73,9 @@ class QMissionPlanning(QDialog):
@Slot(str)
def on_departure_cp_changed(self, cp_name):
cps = [cp for cp in self.game.theater.controlpoints if cp.name == cp_name]
print(cps)
if len(cps) == 1:
self.selected_cp = cps[0]
self.planner = self.game.planners[cps[0].id]
@ -80,6 +83,8 @@ class QMissionPlanning(QDialog):
else:
self.planned_flight_view.set_flight_planner(None)
print(self.selected_cp.id)
def on_flight_selection_change(self):
index = self.planned_flight_view.selectionModel().currentIndex().row()
flight = self.planner.flights[index]

View File

@ -42,14 +42,16 @@ class QFlightCreator(QDialog):
self.select_type_aircraft.setCurrentIndex(0)
self.select_flight_type = QComboBox()
self.select_flight_type.addItem("CAP", userData=FlightType.CAP)
self.select_flight_type.addItem("BARCAP", userData=FlightType.BARCAP)
self.select_flight_type.addItem("TARCAP", userData=FlightType.TARCAP)
self.select_flight_type.addItem("INTERCEPT", userData=FlightType.INTERCEPTION)
self.select_flight_type.addItem("CAS", userData=FlightType.CAS)
self.select_flight_type.addItem("SEAD", userData=FlightType.SEAD)
self.select_flight_type.addItem("DEAD", userData=FlightType.DEAD)
self.select_flight_type.addItem("STRIKE", userData=FlightType.STRIKE)
self.select_flight_type.addItem("CAP [Combat Air Patrol]", userData=FlightType.CAP)
self.select_flight_type.addItem("BARCAP [Barrier Combat Air Patrol]", userData=FlightType.BARCAP)
self.select_flight_type.addItem("TARCAP [Target Combat Air Patrol]", userData=FlightType.TARCAP)
self.select_flight_type.addItem("INTERCEPT [Interception]", userData=FlightType.INTERCEPTION)
self.select_flight_type.addItem("CAS [Close Air Support]", userData=FlightType.CAS)
self.select_flight_type.addItem("BAI [Battlefield Interdiction]", userData=FlightType.CAS)
self.select_flight_type.addItem("SEAD [Suppression of Enemy Air Defenses]", userData=FlightType.SEAD)
self.select_flight_type.addItem("DEAD [Destruction of Enemy Air Defenses]", userData=FlightType.DEAD)
self.select_flight_type.addItem("STRIKE [Strike]", userData=FlightType.STRIKE)
self.select_flight_type.addItem("ANTISHIP [Antiship Attack]", userData=FlightType.ANTISHIP)
self.select_flight_type.setCurrentIndex(0)
self.select_count_of_aircraft = QSpinBox()
@ -71,13 +73,11 @@ class QFlightCreator(QDialog):
type_layout.addStretch()
type_layout.addWidget(self.select_type_aircraft, alignment=Qt.AlignRight)
count_layout = QHBoxLayout()
count_layout.addWidget(QLabel("Count : "))
count_layout.addStretch()
count_layout.addWidget(self.select_count_of_aircraft, alignment=Qt.AlignRight)
flight_type_layout = QHBoxLayout()
flight_type_layout.addWidget(QLabel("Task : "))
flight_type_layout.addStretch()

View File

@ -108,7 +108,7 @@ class QPredefinedWaypointSelectionWindow(QDialog):
for ecp in enemy_cp:
wpt = FlightWaypoint((select_cp.position.x + ecp.position.x)/2, (select_cp.position.y + ecp.position.y)/2, 800)
wpt.name = "Frontline with " + ecp.name + " [CAS]"
wpt.description = "Provide CAS"
wpt.description = "Frontline"
self.wpt_selection_box.addItem(wpt.name, userData=wpt)
if len(enemy_cp) == 0:
self.wpt_selection_box.addItem("None", userData=None)
@ -117,7 +117,10 @@ class QPredefinedWaypointSelectionWindow(QDialog):
if not ground_object.is_dead and not ground_object.dcs_identifier == "AA":
wpt = FlightWaypoint(ground_object.position.x,ground_object.position.y, 0)
wpt.name = ground_object.category + " #" + str(ground_object.object_id) + " @ site #" + str(ground_object.group_id)
wpt.description = "Ennemy Building"
if select_cp.captured:
wpt.description = "Friendly Building"
else:
wpt.description = "Enemy Building"
self.wpt_selection_box.addItem(wpt.name, userData=wpt)
elif selected_wpt_type == PREDEFINED_WAYPOINT_CATEGORIES[2]: # Known units position
for ground_object in select_cp.ground_objects:
@ -126,12 +129,18 @@ class QPredefinedWaypointSelectionWindow(QDialog):
for u in g.units:
wpt = FlightWaypoint(ground_object.position.x, ground_object.position.y, 0)
wpt.name = u.type + " @ site #" + str(ground_object.group_id)
wpt.description = "Ennemy unit to be destroyed"
if select_cp.captured:
wpt.description = "Friendly unit :" + u.type
else:
wpt.description = "Enemy unit :" + u.type
self.wpt_selection_box.addItem(wpt.name, userData=wpt)
elif selected_wpt_type == PREDEFINED_WAYPOINT_CATEGORIES[3]: # CAS
wpt = FlightWaypoint(select_cp.position.x, select_cp.position.y, 0)
wpt.name = select_cp.name
wpt.description = "Position of " + select_cp.name
if select_cp.captured:
wpt.description = "Position of " + select_cp.name + " [Friendly Airbase]"
else:
wpt.description = "Position of " + select_cp.name + " [Enemy Airbase]"
self.wpt_selection_box.addItem("Airbase", userData=wpt)
else:
self.wpt_selection_box.addItem("None", userData=None)

View File

@ -131,10 +131,21 @@ class QSettingsWindow(QDialog):
self.takeOffOnlyForPlayerGroup.setChecked(self.game.settings.only_player_takeoff)
self.takeOffOnlyForPlayerGroup.toggled.connect(self.applySettings)
self.generatorLayout.addWidget(QLabel("Aircraft cold start"), 0, 0)
self.generatorLayout.addWidget(self.coldStart, 0, 1)
self.generatorLayout.addWidget(QLabel("Takeoff only for player group"), 1, 0)
self.generatorLayout.addWidget(self.takeOffOnlyForPlayerGroup, 1, 1)
self.coldStart = QCheckBox()
self.coldStart.setChecked(self.game.settings.cold_start)
self.coldStart.toggled.connect(self.applySettings)
self.supercarrier = QCheckBox()
self.supercarrier.setChecked(self.game.settings.supercarrier)
self.supercarrier.toggled.connect(self.applySettings)
# Settings not used anymore
# self.generatorLayout.addWidget(QLabel("Aircraft cold start"), 0, 0)
# self.generatorLayout.addWidget(self.coldStart, 0, 1)
# self.generatorLayout.addWidget(QLabel("Takeoff only for player group"), 1, 0)
# self.generatorLayout.addWidget(self.takeOffOnlyForPlayerGroup, 1, 1)
self.generatorLayout.addWidget(QLabel("Use Supercarrier Module"), 0, 0)
self.generatorLayout.addWidget(self.supercarrier, 0, 1)
def initCheatLayout(self):
@ -177,6 +188,7 @@ class QSettingsWindow(QDialog):
self.game.settings.night_disabled = self.noNightMission.isChecked()
self.game.settings.only_player_takeoff = self.takeOffOnlyForPlayerGroup.isChecked()
self.game.settings.cold_start = self.coldStart.isChecked()
self.game.settings.supercarrier = self.supercarrier.isChecked()
GameUpdateSignal.get_instance().updateGame(self.game)

View File

@ -0,0 +1,154 @@
local unitPayloads = {
["name"] = "A-10A",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 11,
},
[2] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 1,
},
[3] = {
["CLSID"] = "Fuel_Tank_FT600",
["num"] = 6,
},
},
["tasks"] = {
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 11,
},
[2] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 1,
},
[3] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 9,
},
[4] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{174C6E6D-0C3D-42ff-BCB3-0853CB371F5C}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{174C6E6D-0C3D-42ff-BCB3-0853CB371F5C}",
["num"] = 8,
},
[7] = {
["CLSID"] = "{174C6E6D-0C3D-42ff-BCB3-0853CB371F5C}",
["num"] = 2,
},
[8] = {
["CLSID"] = "{174C6E6D-0C3D-42ff-BCB3-0853CB371F5C}",
["num"] = 10,
},
},
["tasks"] = {
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 11,
},
[2] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 1,
},
[3] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 9,
},
[4] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 3,
},
},
["tasks"] = {
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 11,
},
[2] = {
["CLSID"] = "{6D21ECEA-F85B-4E8D-9D51-31DC9B8AA4EF}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 9,
},
[4] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 8,
},
[6] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 4,
},
[7] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 6,
},
[8] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 5,
},
[9] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 7,
},
},
["tasks"] = {
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 11,
},
[2] = {
["CLSID"] = "LAU-105_2*AIM-9P5",
["num"] = 1,
},
[3] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 9,
},
[4] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 3,
},
},
["tasks"] = {
},
},
},
["unitType"] = "A-10A",
}
return unitPayloads

View File

@ -0,0 +1,174 @@
local unitPayloads = {
["name"] = "A-10C",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{DB434044-F5D0-4F1F-9BA9-B73027E18DD3}",
["num"] = 11,
},
[2] = {
["CLSID"] = "{DB434044-F5D0-4F1F-9BA9-B73027E18DD3}",
["num"] = 1,
},
[3] = {
["CLSID"] = "Fuel_Tank_FT600",
["num"] = 6,
},
},
["tasks"] = {
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "ALQ_184",
["num"] = 1,
},
[2] = {
["CLSID"] = "{DB434044-F5D0-4F1F-9BA9-B73027E18DD3}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 7,
},
[4] = {
["CLSID"] = "{174C6E6D-0C3D-42ff-BCB3-0853CB371F5C}",
["num"] = 8,
},
[5] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 10,
},
[6] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{174C6E6D-0C3D-42ff-BCB3-0853CB371F5C}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 9,
},
[9] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 31,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "ALQ_184",
["num"] = 1,
},
[2] = {
["CLSID"] = "{DB434044-F5D0-4F1F-9BA9-B73027E18DD3}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{GBU-38}",
["num"] = 7,
},
[4] = {
["CLSID"] = "{GBU-38}",
["num"] = 8,
},
[5] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 10,
},
[6] = {
["CLSID"] = "{GBU-38}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{GBU-38}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{GBU-38}",
["num"] = 9,
},
[9] = {
["CLSID"] = "{GBU-38}",
["num"] = 3,
},
[10] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 31,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "ALQ_184",
["num"] = 1,
},
[2] = {
["CLSID"] = "{DB434044-F5D0-4F1F-9BA9-B73027E18DD3}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 10,
},
[4] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 9,
},
[5] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 31,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "ALQ_184",
["num"] = 1,
},
[2] = {
["CLSID"] = "{DB434044-F5D0-4F1F-9BA9-B73027E18DD3}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 10,
},
[4] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 9,
},
[5] = {
["CLSID"] = "{DAC53A2F-79CA-42FF-A77A-F5649B601308}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 31,
},
},
},
["unitType"] = "A-10C",
}
return unitPayloads

View File

@ -0,0 +1,165 @@
local unitPayloads = {
["name"] = "AJS37",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{ARAKM70BHE}",
["num"] = 3,
},
[2] = {
["CLSID"] = "{ARAKM70BHE}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{VIGGEN_X-TANK}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{ARAKM70BHE}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{ARAKM70BHE}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 31,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{Robot74}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{Robot74}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{AKAN}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{AKAN}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{VIGGEN_X-TANK}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{Robot24}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{Robot24}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 11,
},
},
[3] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{Rb15}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{Rb15}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{Robot74}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{Robot74}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{VIGGEN_X-TANK}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 30,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{M71BOMBD}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{M71BOMBD}",
["num"] = 5,
},
[3] = {
["CLSID"] = "{M71BOMBD}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{M71BOMBD}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{VIGGEN_X-TANK}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{Robot24J}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{Robot24J}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 32,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{BK90MJ1}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{BK90MJ1}",
["num"] = 6,
},
[3] = {
["CLSID"] = "{VIGGEN_X-TANK}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{Robot74}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{Robot74}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["tasks"] = {
},
["unitType"] = "AJS37",
}
return unitPayloads

View File

@ -0,0 +1,239 @@
local unitPayloads = {
["name"] = "AV8BNA",
["payloads"] = {
[1] = {
["name"] = "Anti Armor",
["pylons"] = {
[1] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 8,
},
[2] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 7,
},
[3] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 6,
},
[4] = {
["CLSID"] = "{GAU_12_Equalizer}",
["num"] = 4,
},
[5] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 3,
},
[6] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 2,
},
[7] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 1,
},
[8] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 33,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{AIM-9M-ON-ADAPTER}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{AIM-9M-ON-ADAPTER}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{ALQ_164_RF_Jammer}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{GAU_12_Equalizer}",
["num"] = 4,
},
},
["tasks"] = {
},
},
[3] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 8,
},
[2] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 7,
},
[3] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 6,
},
[4] = {
["CLSID"] = "{GAU_12_Equalizer}",
["num"] = 4,
},
[5] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 3,
},
[6] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 2,
},
[7] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 1,
},
[8] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 33,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 7,
},
[3] = {
["CLSID"] = "{BRU-42_2*Mk-83_RIGHT}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{ALQ_164_RF_Jammer}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{BRU-42_2*Mk-83_LEFT}",
["num"] = 3,
},
[6] = {
["CLSID"] = "{7A44FF09-527C-4B7E-B42B-3F111CFE50FB}",
["num"] = 2,
},
[7] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 1,
},
[8] = {
["CLSID"] = "{GAU_12_Equalizer}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 32,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 8,
},
[2] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 7,
},
[3] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 6,
},
[4] = {
["CLSID"] = "{GAU_12_Equalizer}",
["num"] = 4,
},
[5] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 3,
},
[6] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 2,
},
[7] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 1,
},
[8] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 33,
},
},
[6] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{AGM_122_SIDEARM}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{AGM_122_SIDEARM}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{LAU_7_AGM_122_SIDEARM}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{LAU_7_AGM_122_SIDEARM}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{GAU_12_Equalizer}",
["num"] = 4,
},
[7] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 3,
},
[8] = {
["CLSID"] = "LAU_117_AGM_65G",
["num"] = 6,
},
},
["tasks"] = {
},
},
},
["tasks"] = {
},
["unitType"] = "AV8BNA",
}
return unitPayloads

View File

@ -0,0 +1,153 @@
local unitPayloads = {
["name"] = "C-101CC",
["payloads"] = {
[1] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{1461CD18-429A-42A9-A21F-4C621ECD4573}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{1461CD18-429A-42A9-A21F-4C621ECD4573}",
["num"] = 2,
},
},
["tasks"] = {
[1] = 30,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{C-101-DEFA553}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 17,
},
},
[3] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{C-101-DEFA553}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 5,
},
[3] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{A021F29D-18AB-4d3e-985C-FC9C60E35E9E}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{A021F29D-18AB-4d3e-985C-FC9C60E35E9E}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 31,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{C-101-DEFA553}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 31,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{C-101-DEFA553}",
["num"] = 4,
},
[2] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 31,
},
},
},
["tasks"] = {
},
["unitType"] = "C-101CC",
}
return unitPayloads

View File

@ -0,0 +1,262 @@
local unitPayloads = {
["name"] = "F-14B",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{SHOULDER AIM-7MH}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{AIM_54C_Mk47}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{AIM_54C_Mk47}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{AIM_54C_Mk47}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{AIM_54C_Mk47}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{SHOULDER AIM-7MH}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 18,
[4] = 19,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{PHXBRU3242_2*LAU10 RS}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{BRU3242_LAU10}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{BRU-32 GBU-12}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{BRU-32 GBU-12}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{BRU3242_2*LAU10 R}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{PHXBRU3242_2*LAU10 LS}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 18,
[4] = 19,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 R}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{BRU-32 MK-83}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{BRU-32 MK-83}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{BRU-32 MK-83}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{BRU-32 MK-83}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 L}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 18,
[4] = 19,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 R}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{BRU-32 GBU-12}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{BRU-32 GBU-12}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 L}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 18,
[4] = 19,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 R}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{BRU-32 MK-83}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{BRU-32 MK-83}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 L}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 18,
[4] = 19,
},
},
},
["unitType"] = "F-14B",
}
return unitPayloads

View File

@ -0,0 +1,277 @@
local unitPayloads = {
["name"] = "F-15C",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 11,
},
},
["tasks"] = {
[1] = 18,
[2] = 19,
[3] = 11,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 11,
},
},
["tasks"] = {
[1] = 18,
[2] = 19,
[3] = 11,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 11,
},
},
["tasks"] = {
[1] = 18,
[2] = 19,
[3] = 11,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 11,
},
},
["tasks"] = {
[1] = 18,
[2] = 19,
[3] = 11,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{C8E06185-7CD6-4C90-959F-044679E90751}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{E1F29B21-F291-4589-9FD8-3272EEC69506}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 11,
},
},
["tasks"] = {
[1] = 18,
[2] = 19,
[3] = 11,
},
},
},
["unitType"] = "F-15C",
}
return unitPayloads

View File

@ -0,0 +1,226 @@
local unitPayloads = {
["name"] = "F-16C_50",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{8A0BE8AE-58D4-4572-9263-3144C0D06364}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 7,
},
[3] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 8,
},
[7] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[8] = {
["CLSID"] = "{F376DBEE-4CAE-41BA-ADD9-B2910AC95DEC}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{F376DBEE-4CAE-41BA-ADD9-B2910AC95DEC}",
["num"] = 6,
},
},
["tasks"] = {
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{8A0BE8AE-58D4-4572-9263-3144C0D06364}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{TER_9A_2R*MK-82}",
["num"] = 7,
},
[3] = {
["CLSID"] = "{TER_9A_2L*CBU-97}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 8,
},
[7] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[8] = {
["CLSID"] = "{TER_9A_2L*CBU-97}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{TER_9A_2R*CBU-97}",
["num"] = 6,
},
[10] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 11,
},
},
["tasks"] = {
},
},
[3] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "LAU3_HE5",
["num"] = 6,
},
[2] = {
["CLSID"] = "LAU3_HE5",
["num"] = 7,
},
[3] = {
["CLSID"] = "LAU3_HE5",
["num"] = 4,
},
[4] = {
["CLSID"] = "LAU3_HE5",
["num"] = 3,
},
[5] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 2,
},
[6] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 1,
},
[7] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[9] = {
["CLSID"] = "{8A0BE8AE-58D4-4572-9263-3144C0D06364}",
["num"] = 5,
},
},
["tasks"] = {
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{TER_9A_2L*MK-82}",
["num"] = 4,
},
[3] = {
["CLSID"] = "{TER_9A_2R*MK-82}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 2,
},
[6] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 8,
},
[7] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
[8] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 1,
},
[9] = {
["CLSID"] = "{8A0BE8AE-58D4-4572-9263-3144C0D06364}",
["num"] = 5,
},
},
["tasks"] = {
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{51F9AAE5-964F-4D21-83FB-502E3BFE5F8A}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{5335D97A-35A5-4643-9D9B-026C75961E52}",
["num"] = 7,
},
[3] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{5335D97A-35A5-4643-9D9B-026C75961E52}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{8A0BE8AE-58D4-4572-9263-3144C0D06364}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 2,
},
[7] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 1,
},
[8] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 9,
},
},
["tasks"] = {
},
},
},
["unitType"] = "F-16C_50",
}
return unitPayloads

View File

@ -0,0 +1,221 @@
local unitPayloads = {
["name"] = "F-4E",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{7B4B122D-C12C-4DB4-834E-4D8BB4D863A8}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{9DDF5297-94B9-42FC-A45E-6E316121CD85}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{9DDF5297-94B9-42FC-A45E-6E316121CD85}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{7B4B122D-C12C-4DB4-834E-4D8BB4D863A8}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 18,
[2] = 19,
[3] = 11,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{E6A6262A-CA08-4B3D-B030-E1A993B98453}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{E6A6262A-CA08-4B3D-B030-E1A993B98452}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 6,
},
[5] = {
["CLSID"] = "{F3EFE0AB-E91A-42D8-9CA2-B63C91ED570A}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{F3EFE0AB-E91A-42D8-9CA2-B63C91ED570A}",
["num"] = 9,
},
[7] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 3,
},
[8] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 11,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{3E6B632D-65EB-44D2-9501-1C2D04515405}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{3E6B632D-65EB-44D2-9501-1C2D04515405}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 6,
},
[5] = {
["CLSID"] = "{3E6B632D-65EB-44D2-9501-1C2D04515405}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{3E6B632D-65EB-44D2-9501-1C2D04515405}",
["num"] = 9,
},
[7] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 3,
},
[8] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 7,
},
[9] = {
["CLSID"] = "{8B9E3FD0-F034-4A07-B6CE-C269884CC71B}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 11,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{AB8B8299-F1CC-4359-89B5-2172E0CF4A5A}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 6,
},
[5] = {
["CLSID"] = "{1C97B4A0-AA3B-43A8-8EE7-D11071457185}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{1C97B4A0-AA3B-43A8-8EE7-D11071457185}",
["num"] = 9,
},
[7] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 3,
},
[8] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 7,
},
[9] = {
["CLSID"] = "{8B9E3FD0-F034-4A07-B6CE-C269884CC71B}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 11,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{E6A6262A-CA08-4B3D-B030-E1A993B98453}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{E6A6262A-CA08-4B3D-B030-E1A993B98452}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 6,
},
[5] = {
["CLSID"] = "{3E6B632D-65EB-44D2-9501-1C2D04515405}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{3E6B632D-65EB-44D2-9501-1C2D04515405}",
["num"] = 9,
},
[7] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 3,
},
[8] = {
["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}",
["num"] = 7,
},
[9] = {
["CLSID"] = "{8B9E3FD0-F034-4A07-B6CE-C269884CC71B}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 11,
},
},
},
["unitType"] = "F-4E",
}
return unitPayloads

View File

@ -0,0 +1,171 @@
local unitPayloads = {
["name"] = "F-5E-3",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{PTB-150GAL}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 11,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{PTB-150GAL}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{LAU68_FFAR_MK5HEAT}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{LAU68_FFAR_MK5HEAT}",
["num"] = 3,
},
[6] = {
["CLSID"] = "{LAU68_FFAR_MK5HEAT}",
["num"] = 2,
},
[7] = {
["CLSID"] = "{LAU68_FFAR_MK5HEAT}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{PTB-150GAL}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[6] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 2,
},
[7] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{0395076D-2F77-4420-9D33-087A4398130B}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[6] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 2,
},
[7] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{AIM-9P5}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{PTB-150GAL}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{LAU68_FFAR_MK5HEAT}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{LAU68_FFAR_MK5HEAT}",
["num"] = 3,
},
[6] = {
["CLSID"] = "{LAU68_FFAR_MK5HEAT}",
["num"] = 2,
},
[7] = {
["CLSID"] = "{LAU68_FFAR_MK5HEAT}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
},
},
},
["unitType"] = "F-5E-3",
}
return unitPayloads

View File

@ -0,0 +1,273 @@
local unitPayloads = {
["name"] = "FA-18C_hornet",
["payloads"] = {
[1] = {
["name"] = "CAS MAVERICK F",
["pylons"] = {
[1] = {
["CLSID"] = "LAU_117_AGM_65F",
["num"] = 7,
},
[2] = {
["CLSID"] = "LAU_117_AGM_65F",
["num"] = 8,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 5,
},
[6] = {
["CLSID"] = "LAU_117_AGM_65F",
["num"] = 3,
},
[7] = {
["CLSID"] = "LAU_117_AGM_65F",
["num"] = 2,
},
[8] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 1,
},
[9] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
},
},
[2] = {
["name"] = "CAS MAVERICK E",
["pylons"] = {
[1] = {
["CLSID"] = "{F16A4DE0-116C-4A71-97F0-2CF85B0313EC}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{F16A4DE0-116C-4A71-97F0-2CF85B0313EC}",
["num"] = 8,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{F16A4DE0-116C-4A71-97F0-2CF85B0313EC}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{F16A4DE0-116C-4A71-97F0-2CF85B0313EC}",
["num"] = 2,
},
[8] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 1,
},
[9] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
},
},
[3] = {
["name"] = "CAP HEAVY",
["pylons"] = {
[1] = {
["CLSID"] = "LAU-115_2*LAU-127_AIM-120C",
["num"] = 7,
},
[2] = {
["CLSID"] = "LAU-115_2*LAU-127_AIM-120C",
["num"] = 8,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FPU_8A_FUEL_TANK}",
["num"] = 5,
},
[6] = {
["CLSID"] = "LAU-115_2*LAU-127_AIM-120C",
["num"] = 3,
},
[7] = {
["CLSID"] = "LAU-115_2*LAU-127_AIM-120C",
["num"] = 2,
},
[8] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 1,
},
[9] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{BRU55_2*GBU-38}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{BRU33_2X_MK-83}",
["num"] = 8,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FPU_8A_FUEL_TANK}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{BRU55_2*GBU-38}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{BRU33_2X_MK-83}",
["num"] = 2,
},
[8] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 1,
},
[9] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{AGM_84D}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{AGM_84D}",
["num"] = 7,
},
[3] = {
["CLSID"] = "{A111396E-D3E8-4b9c-8AC9-2432489304D5}",
["num"] = 5,
},
[4] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 6,
},
[5] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 1,
},
[7] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 9,
},
[8] = {
["CLSID"] = "{AGM_84D}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{AGM_84D}",
["num"] = 2,
},
},
["tasks"] = {
[1] = 11,
},
},
[6] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 8,
},
[3] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{40EF17B7-F508-45de-8566-6FFECC0C1AB8}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FPU_8A_FUEL_TANK}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 2,
},
[8] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 1,
},
[9] = {
["CLSID"] = "{5CE2FF2A-645A-4197-B48D-8720AC69394F}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
},
},
},
["tasks"] = {
},
["unitType"] = "FA-18C_hornet",
}
return unitPayloads

View File

@ -0,0 +1,189 @@
local unitPayloads = {
["name"] = "JF-17",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "DIS_TANK800",
["num"] = 5,
},
[2] = {
["CLSID"] = "DIS_TANK800",
["num"] = 3,
},
[3] = {
["CLSID"] = "DIS_WMD7",
["num"] = 4,
},
[4] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 1,
},
[5] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 7,
},
[6] = {
["CLSID"] = "DIS_SD-10_DUAL_R",
["num"] = 6,
},
[7] = {
["CLSID"] = "DIS_SD-10_DUAL_L",
["num"] = 2,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 19,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "DIS_WMD7",
["num"] = 4,
},
[2] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 1,
},
[3] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 7,
},
[4] = {
["CLSID"] = "DIS_BRM1_90",
["num"] = 6,
},
[5] = {
["CLSID"] = "DIS_BRM1_90",
["num"] = 2,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 19,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "DIS_WMD7",
["num"] = 4,
},
[2] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 1,
},
[3] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 7,
},
[4] = {
["CLSID"] = "DIS_GBU_12_DUAL",
["num"] = 6,
},
[5] = {
["CLSID"] = "DIS_GBU_12_DUAL",
["num"] = 2,
},
[6] = {
["CLSID"] = "DIS_GBU_16",
["num"] = 3,
},
[7] = {
["CLSID"] = "DIS_GBU_16",
["num"] = 5,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 19,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "DIS_WMD7",
["num"] = 4,
},
[2] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 1,
},
[3] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 7,
},
[4] = {
["CLSID"] = "DIS_LD-10_DUAL_R",
["num"] = 6,
},
[5] = {
["CLSID"] = "DIS_LD-10_DUAL_L",
["num"] = 2,
},
[6] = {
["CLSID"] = "DIS_TANK800",
["num"] = 3,
},
[7] = {
["CLSID"] = "DIS_TANK800",
["num"] = 5,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 19,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "DIS_WMD7",
["num"] = 4,
},
[2] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 1,
},
[3] = {
["CLSID"] = "DIS_PL-5EII",
["num"] = 7,
},
[4] = {
["CLSID"] = "DIS_SD-10_DUAL_R",
["num"] = 6,
},
[5] = {
["CLSID"] = "DIS_SD-10_DUAL_L",
["num"] = 2,
},
[6] = {
["CLSID"] = "DIS_C-802AK",
["num"] = 3,
},
[7] = {
["CLSID"] = "DIS_C-802AK",
["num"] = 5,
},
},
["tasks"] = {
[1] = 10,
[2] = 11,
[3] = 19,
},
},
},
["unitType"] = "JF-17",
}
return unitPayloads

View File

@ -0,0 +1,137 @@
local unitPayloads = {
["name"] = "Ka-50",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{A6FD14D3-6D30-4C85-88A7-8D17BEE120E2}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{A6FD14D3-6D30-4C85-88A7-8D17BEE120E2}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 31,
[2] = 32,
[3] = 18,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{A6FD14D3-6D30-4C85-88A7-8D17BEE120E2}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{A6FD14D3-6D30-4C85-88A7-8D17BEE120E2}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 31,
[2] = 32,
[3] = 18,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 31,
[2] = 32,
[3] = 18,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 31,
[2] = 32,
[3] = 18,
},
},
[5] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{A6FD14D3-6D30-4C85-88A7-8D17BEE120E2}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{A6FD14D3-6D30-4C85-88A7-8D17BEE120E2}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 31,
[2] = 32,
[3] = 18,
},
},
},
["unitType"] = "Ka-50",
}
return unitPayloads

View File

@ -0,0 +1,101 @@
local unitPayloads = {
["name"] = "L-39C",
["payloads"] = {
[1] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 3,
},
[2] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 31,
[2] = 30,
[3] = 32,
[4] = 34,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 3,
},
[2] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 31,
[2] = 30,
[3] = 32,
[4] = 34,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 3,
},
[2] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 31,
[2] = 30,
[3] = 32,
[4] = 34,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 3,
},
[2] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 31,
[2] = 30,
[3] = 32,
[4] = 34,
},
},
[5] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{R-3S}",
["num"] = 3,
},
[2] = {
["CLSID"] = "{R-3S}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 31,
},
},
},
["tasks"] = {
},
["unitType"] = "L-39C",
}
return unitPayloads

View File

@ -0,0 +1,137 @@
local unitPayloads = {
["name"] = "L-39ZA",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{APU-60-1_R_60M}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{APU-60-1_R_60M}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{PK-3}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{PK-3}",
["num"] = 2,
},
},
["tasks"] = {
[1] = 31,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 2,
},
},
["tasks"] = {
[1] = 31,
[2] = 32,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 2,
},
},
["tasks"] = {
[1] = 30,
[2] = 31,
[3] = 32,
[4] = 34,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 2,
},
},
["tasks"] = {
[1] = 30,
[2] = 31,
[3] = 32,
[4] = 34,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 5,
},
[2] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{UB-16-57UMP}",
["num"] = 2,
},
},
["tasks"] = {
[1] = 30,
[2] = 31,
[3] = 32,
[4] = 34,
},
},
},
["unitType"] = "L-39ZA",
}
return unitPayloads

View File

@ -0,0 +1,197 @@
local unitPayloads = {
["name"] = "M-2000C",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{MMagicII}",
["num"] = 9,
},
[2] = {
["CLSID"] = "{MMagicII}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{Matra_S530D}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{Matra_S530D}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{M2KC_RPL_522}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 11,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{Matra155RocketPod}",
["num"] = 9,
},
[2] = {
["CLSID"] = "{Matra155RocketPod}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{Matra155RocketPod}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{Matra155RocketPod}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{M2KC_RPL_522}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 11,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{MMagicII}",
["num"] = 9,
},
[2] = {
["CLSID"] = "{MMagicII}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{M2KC_RAFAUT_MK82}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{M2KC_RAFAUT_MK82}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{M2KC_RPL_522}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[8] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 11,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{MMagicII}",
["num"] = 9,
},
[2] = {
["CLSID"] = "{MMagicII}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{M2KC_RAFAUT_MK82}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{M2KC_RAFAUT_MK82}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{M2KC_RPL_522}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[8] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 11,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{MMagicII}",
["num"] = 9,
},
[2] = {
["CLSID"] = "{MMagicII}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{M2KC_RAFAUT_MK82}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{M2KC_RAFAUT_MK82}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{M2KC_RPL_522}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 3,
},
[8] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 11,
},
},
},
["tasks"] = {
},
["unitType"] = "M-2000C",
}
return unitPayloads

View File

@ -0,0 +1,201 @@
local unitPayloads = {
["name"] = "Mi-8MT",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "PKT_7_62",
["num"] = 8,
},
[2] = {
["CLSID"] = "KORD_12_7",
["num"] = 7,
},
[3] = {
["CLSID"] = "{05544F1A-C39C-466b-BC37-5BD1D52E57BB}",
["num"] = 2,
},
[4] = {
["CLSID"] = "GUV_VOG",
["num"] = 6,
},
[5] = {
["CLSID"] = "{05544F1A-C39C-466b-BC37-5BD1D52E57BB}",
["num"] = 5,
},
[6] = {
["CLSID"] = "GUV_VOG",
["num"] = 1,
},
},
["tasks"] = {
[1] = 35,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "PKT_7_62",
["num"] = 8,
},
[2] = {
["CLSID"] = "KORD_12_7",
["num"] = 7,
},
[3] = {
["CLSID"] = "{05544F1A-C39C-466b-BC37-5BD1D52E57BB}",
["num"] = 2,
},
[4] = {
["CLSID"] = "GUV_VOG",
["num"] = 6,
},
[5] = {
["CLSID"] = "{05544F1A-C39C-466b-BC37-5BD1D52E57BB}",
["num"] = 5,
},
[6] = {
["CLSID"] = "GUV_VOG",
["num"] = 1,
},
[7] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 35,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "PKT_7_62",
["num"] = 8,
},
[2] = {
["CLSID"] = "KORD_12_7",
["num"] = 7,
},
[3] = {
["CLSID"] = "{05544F1A-C39C-466b-BC37-5BD1D52E57BB}",
["num"] = 2,
},
[4] = {
["CLSID"] = "GUV_VOG",
["num"] = 6,
},
[5] = {
["CLSID"] = "{05544F1A-C39C-466b-BC37-5BD1D52E57BB}",
["num"] = 5,
},
[6] = {
["CLSID"] = "GUV_VOG",
["num"] = 1,
},
[7] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 35,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "PKT_7_62",
["num"] = 8,
},
[2] = {
["CLSID"] = "KORD_12_7",
["num"] = 7,
},
[3] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 6,
},
[5] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 1,
},
[7] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 35,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "PKT_7_62",
["num"] = 8,
},
[2] = {
["CLSID"] = "KORD_12_7",
["num"] = 7,
},
[3] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 2,
},
[4] = {
["CLSID"] = "GUV_VOG",
["num"] = 6,
},
[5] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 5,
},
[6] = {
["CLSID"] = "GUV_VOG",
["num"] = 1,
},
[7] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{6A4B9E69-64FE-439a-9163-3A87FB6A4D81}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 35,
},
},
},
["tasks"] = {
},
["unitType"] = "Mi-8MT",
}
return unitPayloads

View File

@ -0,0 +1,84 @@
local unitPayloads = {
["name"] = "MiG-15bis",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "PTB300_MIG15",
["num"] = 2,
},
[2] = {
["CLSID"] = "PTB300_MIG15",
["num"] = 1,
},
},
["tasks"] = {
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "FAB_50",
["num"] = 2,
},
[2] = {
["CLSID"] = "FAB_50",
["num"] = 1,
},
},
["tasks"] = {
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "FAB_50",
["num"] = 2,
},
[2] = {
["CLSID"] = "FAB_50",
["num"] = 1,
},
},
["tasks"] = {
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "FAB_100M",
["num"] = 2,
},
[2] = {
["CLSID"] = "FAB_100M",
["num"] = 1,
},
},
["tasks"] = {
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "FAB_100M",
["num"] = 2,
},
[2] = {
["CLSID"] = "FAB_100M",
["num"] = 1,
},
},
["tasks"] = {
},
},
},
["tasks"] = {
},
["unitType"] = "MiG-15bis",
}
return unitPayloads

View File

@ -0,0 +1,161 @@
local unitPayloads = {
["name"] = "MiG-19P",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{K-13A}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{K-13A}",
["num"] = 1,
},
[3] = {
["CLSID"] = "PTB760_MIG19",
["num"] = 2,
},
[4] = {
["CLSID"] = "PTB760_MIG19",
["num"] = 5,
},
},
["tasks"] = {
[1] = 11,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{K-13A}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{K-13A}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 11,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{K-13A}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{K-13A}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 11,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{K-13A}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{K-13A}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 11,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{K-13A}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{K-13A}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{ORO57K_S5M_HEFRAG}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 11,
},
},
},
["tasks"] = {
},
["unitType"] = "MiG-19P",
}
return unitPayloads

View File

@ -0,0 +1,169 @@
local unitPayloads = {
["name"] = "MiG-21Bis",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{PTB_490C_MIG21}",
["num"] = 3,
},
[2] = {
["CLSID"] = "{R-3R}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{R-3R}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{R-60 2L}",
["num"] = 1,
},
[5] = {
["CLSID"] = "{R-60 2R}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{ASO-2}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{ASO-2}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{S-24B}",
["num"] = 5,
},
[3] = {
["CLSID"] = "{UB-32_S5M}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{UB-32_S5M}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{S-24B}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{PTB_490C_MIG21}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 11,
},
},
[3] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{ASO-2}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{S-24B}",
["num"] = 5,
},
[3] = {
["CLSID"] = "{Kh-66_Grom}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{Kh-66_Grom}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{S-24B}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{PTB_490C_MIG21}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 11,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{ASO-2}",
["num"] = 6,
},
[2] = {
["CLSID"] = "{S-24B}",
["num"] = 5,
},
[3] = {
["CLSID"] = "{Kh-66_Grom}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{Kh-66_Grom}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{S-24B}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{PTB_490C_MIG21}",
["num"] = 3,
},
},
["tasks"] = {
[1] = 11,
},
},
[5] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{PTB_800_MIG21}",
["num"] = 3,
},
[2] = {
["CLSID"] = "{35B698AC-9FEF-4EC4-AD29-484A0085F62B}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{35B698AC-9FEF-4EC4-AD29-484A0085F62B}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{ASO-2}",
["num"] = 6,
},
[5] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 1,
},
[6] = {
["CLSID"] = "{FB3CE165-BF07-4979-887C-92B87F13276B}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["tasks"] = {
},
["unitType"] = "MiG-21Bis",
}
return unitPayloads

View File

@ -0,0 +1,143 @@
local unitPayloads = {
["name"] = "MiG-23MLD",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{CCF898C9-5BC7-49A4-9D1E-C3ED3D5166A1}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{B0DBC591-0F52-4F7D-AD7B-51E67725FB81}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{275A2855-4A79-4B2D-B082-91EA2ADF4691}",
["num"] = 5,
},
[4] = {
["CLSID"] = "{CCF898C9-5BC7-49A4-9D1E-C3ED3D5166A1}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 10,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{F72F47E5-C83A-4B85-96ED-D3E46671EE9A}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{F72F47E5-C83A-4B85-96ED-D3E46671EE9A}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
},
},
[3] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["unitType"] = "MiG-23MLD",
}
return unitPayloads

View File

@ -0,0 +1,158 @@
local unitPayloads = {
["name"] = "MiG-27K",
["payloads"] = {
[1] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 5,
},
[4] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 8,
},
[6] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 33,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{E659C4BE-2CD8-4472-8C08-3F28ACB61A8A}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 4,
},
[4] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{E659C4BE-2CD8-4472-8C08-3F28ACB61A8A}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 32,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 5,
},
[4] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 29,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{D4A8D9B9-5C45-42e7-BBD2-0E54F8308432}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 5,
},
[4] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{D4A8D9B9-5C45-42e7-BBD2-0E54F8308432}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 29,
},
},
[5] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 3,
},
[3] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 8,
},
},
["tasks"] = {
},
},
},
["unitType"] = "MiG-27K",
}
return unitPayloads

View File

@ -0,0 +1,183 @@
local unitPayloads = {
["name"] = "MiG-29A",
["payloads"] = {
[1] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 32,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 10,
},
},
[3] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[6] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[7] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 30,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[6] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[7] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 30,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[6] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[7] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 30,
},
},
},
["unitType"] = "MiG-29A",
}
return unitPayloads

View File

@ -0,0 +1,171 @@
local unitPayloads = {
["name"] = "MiG-29G",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 10,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 10,
},
},
[3] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 10,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 10,
},
},
[5] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 10,
},
},
},
["unitType"] = "MiG-29G",
}
return unitPayloads

View File

@ -0,0 +1,187 @@
local unitPayloads = {
["name"] = "MiG-29S",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 32,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 10,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 32,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 32,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{2BEC576B-CDF5-4B7F-961F-B0FA4312B841}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 7,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["unitType"] = "MiG-29S",
}
return unitPayloads

View File

@ -0,0 +1,182 @@
local unitPayloads = {
["name"] = "MiG-31",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{F1243568-8EF0-49D4-9CB5-4DA90D92BC1D}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{4EDBA993-2E34-444C-95FB-549300BF7CAF}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
},
["unitType"] = "MiG-31",
}
return unitPayloads

View File

@ -0,0 +1,242 @@
local unitPayloads = {
["name"] = "Mirage 2000-5",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{414DA830-B61A-4F9E-B71B-C2F6832E1D7A}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{414DA830-B61A-4F9E-B71B-C2F6832E1D7A}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{414DA830-B61A-4F9E-B71B-C2F6832E1D7A}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{414DA830-B61A-4F9E-B71B-C2F6832E1D7A}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{414DA830-B61A-4F9E-B71B-C2F6832E1D7A}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{0DA03783-61E4-40B2-8FAE-6AEE0A5C5AAE}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{6D778860-7BB8-4ACB-9E95-BA772C6BBC2C}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FC23864E-3B80-48E3-9C03-4DA8B1D7497B}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 11,
[2] = 10,
[3] = 18,
[4] = 19,
},
},
},
["unitType"] = "Mirage 2000-5",
}
return unitPayloads

View File

@ -0,0 +1,109 @@
local unitPayloads = {
["name"] = "SA342L",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU_SNEB68G}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
[3] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 31,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU_SNEB68G}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
[3] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 31,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU_SNEB68G}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
[3] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 31,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU_SNEB68G}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
[3] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 31,
},
},
[5] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU_SNEB68G}",
["num"] = 2,
},
[2] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
[3] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 31,
},
},
},
["tasks"] = {
},
["unitType"] = "SA342L",
}
return unitPayloads

View File

@ -0,0 +1,169 @@
local unitPayloads = {
["name"] = "SA342M",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{HOT3D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{HOT3G}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{HOT3D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{HOT3G}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 31,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{HOT3D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{HOT3G}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{HOT3D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{HOT3G}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 31,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{HOT3D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{HOT3G}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{HOT3D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{HOT3G}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 31,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{HOT3D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{HOT3G}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{HOT3D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{HOT3G}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 31,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{HOT3D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{HOT3G}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{HOT3D}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{HOT3G}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 31,
},
},
},
["tasks"] = {
},
["unitType"] = "SA342M",
}
return unitPayloads

View File

@ -0,0 +1,169 @@
local unitPayloads = {
["name"] = "SA342Mistral",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 18,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 18,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 18,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 18,
},
},
[5] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{MBDA_MistralD}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{MBDA_MistralG}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{FAS}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{IR_Deflector}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 18,
},
},
},
["tasks"] = {
},
["unitType"] = "SA342Mistral",
}
return unitPayloads

View File

@ -0,0 +1,182 @@
local unitPayloads = {
["name"] = "Su-17M4",
["payloads"] = {
[1] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{E86C5AA5-6D49-4F00-AD2E-79A62D6DDE26}",
["num"] = 8,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[3] = {
["CLSID"] = "{FE382A68-8620-4AC0-BDF5-709BFE3977D7}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{FE382A68-8620-4AC0-BDF5-709BFE3977D7}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 2,
},
[6] = {
["CLSID"] = "{E86C5AA5-6D49-4F00-AD2E-79A62D6DDE26}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 30,
},
},
[2] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{FE382A68-8620-4AC0-BDF5-709BFE3977D7}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{FE382A68-8620-4AC0-BDF5-709BFE3977D7}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 29,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 32,
},
},
[4] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 5,
},
[4] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 4,
},
},
["tasks"] = {
},
},
[5] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{292960BB-6518-41AC-BADA-210D65D5073C}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{292960BB-6518-41AC-BADA-210D65D5073C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{A5BAEAB7-6FAF-4236-AF72-0FD900F493F9}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{292960BB-6518-41AC-BADA-210D65D5073C}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{292960BB-6518-41AC-BADA-210D65D5073C}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 31,
},
},
},
["unitType"] = "Su-17M4",
}
return unitPayloads

View File

@ -0,0 +1,160 @@
local unitPayloads = {
["name"] = "Su-24M",
["payloads"] = {
[1] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{D8F2C90B-887B-4B9E-9FE2-996BC9E9AF03}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{0519A264-0AB6-11d6-9193-00A0249B6F00}",
["num"] = 5,
},
[4] = {
["CLSID"] = "{D8F2C90B-887B-4B9E-9FE2-996BC9E9AF03}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 29,
[2] = 30,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{292960BB-6518-41AC-BADA-210D65D5073C}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{292960BB-6518-41AC-BADA-210D65D5073C}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{292960BB-6518-41AC-BADA-210D65D5073C}",
["num"] = 7,
},
[4] = {
["CLSID"] = "{292960BB-6518-41AC-BADA-210D65D5073C}",
["num"] = 8,
},
[5] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 31,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 31,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FE382A68-8620-4AC0-BDF5-709BFE3977D7}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{0519A264-0AB6-11d6-9193-00A0249B6F00}",
["num"] = 5,
},
[4] = {
["CLSID"] = "{FE382A68-8620-4AC0-BDF5-709BFE3977D7}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{6DADF342-D4BA-4D8A-B081-BA928C4AF86D}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 29,
},
},
[5] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{B0DBC591-0F52-4F7D-AD7B-51E67725FB81}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{275A2855-4A79-4B2D-B082-91EA2ADF4691}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["unitType"] = "Su-24M",
}
return unitPayloads

View File

@ -0,0 +1,222 @@
local unitPayloads = {
["name"] = "Su-25",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{E8D4652F-FD48-45B7-BA5B-2AE05BB5A9CF}",
["num"] = 6,
},
[4] = {
["CLSID"] = "{E8D4652F-FD48-45B7-BA5B-2AE05BB5A9CF}",
["num"] = 5,
},
},
["tasks"] = {
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{E8D4652F-FD48-45B7-BA5B-2AE05BB5A9CF}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{E8D4652F-FD48-45B7-BA5B-2AE05BB5A9CF}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 32,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{0180F983-C14A-11d8-9897-000476191836}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{0180F983-C14A-11d8-9897-000476191836}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 32,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{0180F983-C14A-11d8-9897-000476191836}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{79D73885-0801-45a9-917F-C90FE1CE3DFC}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{79D73885-0801-45a9-917F-C90FE1CE3DFC}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{D4A8D9B9-5C45-42e7-BBD2-0E54F8308432}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{D4A8D9B9-5C45-42e7-BBD2-0E54F8308432}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{79D73885-0801-45a9-917F-C90FE1CE3DFC}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{79D73885-0801-45a9-917F-C90FE1CE3DFC}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{0180F983-C14A-11d8-9897-000476191836}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 32,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{0180F983-C14A-11d8-9897-000476191836}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{79D73885-0801-45a9-917F-C90FE1CE3DFC}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{79D73885-0801-45a9-917F-C90FE1CE3DFC}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{D4A8D9B9-5C45-42e7-BBD2-0E54F8308432}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{D4A8D9B9-5C45-42e7-BBD2-0E54F8308432}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{79D73885-0801-45a9-917F-C90FE1CE3DFC}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{79D73885-0801-45a9-917F-C90FE1CE3DFC}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{0180F983-C14A-11d8-9897-000476191836}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["unitType"] = "Su-25",
}
return unitPayloads

View File

@ -0,0 +1,241 @@
local unitPayloads = {
["name"] = "Su-25T",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 11,
},
[2] = {
["CLSID"] = "{682A481F-0CB5-4693-A382-D00DD4A156D7}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{CBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{CBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 10,
},
[5] = {
["CLSID"] = "{E8D4652F-FD48-45B7-BA5B-2AE05BB5A9CF}",
["num"] = 7,
},
[6] = {
["CLSID"] = "{E8D4652F-FD48-45B7-BA5B-2AE05BB5A9CF}",
["num"] = 5,
},
},
["tasks"] = {
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82C}",
["num"] = 11,
},
[2] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82D}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{0180F983-C14A-11d8-9897-000476191836}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{0180F983-C14A-11d8-9897-000476191836}",
["num"] = 10,
},
[5] = {
["CLSID"] = "{F72F47E5-C83A-4B85-96ED-D3E46671EE9A}",
["num"] = 7,
},
[6] = {
["CLSID"] = "{F72F47E5-C83A-4B85-96ED-D3E46671EE9A}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{F789E86A-EE2E-4E6B-B81E-D5E5F903B6ED}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{F789E86A-EE2E-4E6B-B81E-D5E5F903B6ED}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{B1EF6B0E-3D91-4047-A7A5-A99E7D8B4A8B}",
["num"] = 6,
},
[10] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 9,
},
[11] = {
["CLSID"] = "{3858707D-F5D5-4bbb-BDD8-ABB0530EBC7C}",
["num"] = 3,
},
},
["tasks"] = {
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 9,
},
[9] = {
["CLSID"] = "{4203753F-8198-4E85-9924-6F8FF679F9FF}",
["num"] = 10,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82C}",
["num"] = 11,
},
},
["tasks"] = {
[1] = 31,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{CBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{B5CA9846-776E-4230-B4FD-8BCC9BFB1676}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{0519A264-0AB6-11d6-9193-00A0249B6F00}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{B5CA9846-776E-4230-B4FD-8BCC9BFB1676}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{CBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82C}",
["num"] = 11,
},
},
["tasks"] = {
[1] = 29,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82D}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{CBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{0519A264-0AB6-11d6-9193-00A0249B6F00}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{601C99F7-9AF3-4ed7-A565-F8B8EC0D7AAC}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{752AF1D2-EBCC-4bd7-A1E7-2357F5601C70}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{CBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82C}",
["num"] = 11,
},
},
["tasks"] = {
[1] = 29,
},
},
},
["unitType"] = "Su-25T",
}
return unitPayloads

View File

@ -0,0 +1,250 @@
local unitPayloads = {
["name"] = "Su-27",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{B79C379A-9E87-4E50-A1EE-7F7E29C2E87A}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{B79C379A-9E87-4E50-A1EE-7F7E29C2E87A}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 18,
[2] = 19,
[3] = 10,
[4] = 11,
},
},
[2] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 30,
},
},
[3] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{TWIN_S25}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{TWIN_S25}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 30,
},
},
[4] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{A0648264-4BC0-4EE8-A543-D119F6BA4257}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{A0648264-4BC0-4EE8-A543-D119F6BA4257}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 30,
},
},
[5] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[3] = {
["CLSID"] = "{TWIN_B13L_5OF}",
["num"] = 8,
},
[4] = {
["CLSID"] = "{F99BEC1A-869D-4AC7-9730-FBA0E3B1F5FC}",
["num"] = 7,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[7] = {
["CLSID"] = "{F99BEC1A-869D-4AC7-9730-FBA0E3B1F5FC}",
["num"] = 4,
},
[8] = {
["CLSID"] = "{TWIN_B13L_5OF}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 30,
},
},
},
["unitType"] = "Su-27",
}
return unitPayloads

View File

@ -0,0 +1,250 @@
local unitPayloads = {
["name"] = "Su-30",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 18,
[2] = 11,
[3] = 10,
[4] = 19,
},
},
[2] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{D8F2C90B-887B-4B9E-9FE2-996BC9E9AF03}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{D8F2C90B-887B-4B9E-9FE2-996BC9E9AF03}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{D8F2C90B-887B-4B9E-9FE2-996BC9E9AF03}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{D8F2C90B-887B-4B9E-9FE2-996BC9E9AF03}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 29,
},
},
[3] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{D8F2C90B-887B-4B9E-9FE2-996BC9E9AF03}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{2234F529-1D57-4496-8BB0-0150F9BDBBD2}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{2234F529-1D57-4496-8BB0-0150F9BDBBD2}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{D8F2C90B-887B-4B9E-9FE2-996BC9E9AF03}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 30,
},
},
[4] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{A0648264-4BC0-4EE8-A543-D119F6BA4257}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{A0648264-4BC0-4EE8-A543-D119F6BA4257}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 31,
},
},
[5] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 10,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["unitType"] = "Su-30",
}
return unitPayloads

View File

@ -0,0 +1,274 @@
local unitPayloads = {
["name"] = "Su-33",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[12] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 32,
},
},
[2] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{37DCC01E-9E02-432F-B61D-10C166CA2798}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[12] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 32,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{3C612111-C7AD-476E-8A8E-2485812F4E5C}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{FC56DF80-9B09-44C5-8976-DCFAFF219062}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[12] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 32,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 12,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{TWIN_S25}",
["num"] = 10,
},
[4] = {
["CLSID"] = "{A0648264-4BC0-4EE8-A543-D119F6BA4257}",
["num"] = 9,
},
[5] = {
["CLSID"] = "{A0648264-4BC0-4EE8-A543-D119F6BA4257}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{TWIN_S25}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[8] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 30,
},
},
[5] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{B79C379A-9E87-4E50-A1EE-7F7E29C2E87A}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{E8069896-8435-4B90-95C0-01A03AE6E400}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{B79C379A-9E87-4E50-A1EE-7F7E29C2E87A}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[12] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 19,
[2] = 18,
[3] = 11,
[4] = 10,
},
},
},
["unitType"] = "Su-33",
}
return unitPayloads

View File

@ -0,0 +1,271 @@
local unitPayloads = {
["name"] = "Su-34",
["payloads"] = {
[1] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{X-31A}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{X-31A}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{X-31A}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{X-31A}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{X-31A}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{X-31A}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[12] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 30,
},
},
[2] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{X-25MPU}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{X-25MPU}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{X-25MPU}",
["num"] = 9,
},
[8] = {
["CLSID"] = "{X-25MPU}",
["num"] = 10,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 29,
},
},
[3] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{X-25MR}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{X-25MR}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{X-25MR}",
["num"] = 9,
},
[8] = {
["CLSID"] = "{X-25MR}",
["num"] = 10,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 31,
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 8,
},
[9] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 9,
},
[10] = {
["CLSID"] = "{D5435F26-F120-4FA3-9867-34ACE562EF1B}",
["num"] = 10,
},
[11] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[12] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 31,
},
},
[5] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82F}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 5,
},
[6] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 8,
},
[7] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 9,
},
[8] = {
["CLSID"] = "{B4C01D60-A8A3-4237-BD72-CA7655BC0FE9}",
["num"] = 10,
},
[9] = {
["CLSID"] = "{FBC29BFE-3D24-4C64-B81D-941239D12249}",
["num"] = 11,
},
[10] = {
["CLSID"] = "{44EE8698-89F9-48EE-AF36-5FD31896A82A}",
["num"] = 12,
},
[11] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 7,
},
[12] = {
["CLSID"] = "{9B25D316-0434-4954-868F-D51DB1A38DF0}",
["num"] = 6,
},
},
["tasks"] = {
[1] = 33,
},
},
},
["unitType"] = "Su-34",
}
return unitPayloads

View File

@ -0,0 +1,247 @@
local unitPayloads = {
["name"] = "Tornado GR4",
["payloads"] = {
[1] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
[2] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[4] = {
["CLSID"] = "{1461CD18-429A-42A9-A21F-4C621ECD4573}",
["num"] = 9,
},
[5] = {
["CLSID"] = "{1461CD18-429A-42A9-A21F-4C621ECD4573}",
["num"] = 4,
},
[6] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 2,
},
[8] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 30,
},
},
[2] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
[2] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[4] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 8,
},
[5] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 7,
},
[6] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 5,
},
[8] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
[11] = {
["CLSID"] = "{0D33DDAE-524F-4A4E-B5B8-621754FE3ADE}",
["num"] = 4,
},
[12] = {
["CLSID"] = "{0D33DDAE-524F-4A4E-B5B8-621754FE3ADE}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 32,
},
},
[3] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
[2] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[4] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 8,
},
[5] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 7,
},
[6] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 5,
},
[8] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
[11] = {
["CLSID"] = "{0D33DDAE-524F-4A4E-B5B8-621754FE3ADE}",
["num"] = 4,
},
[12] = {
["CLSID"] = "{0D33DDAE-524F-4A4E-B5B8-621754FE3ADE}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 32,
},
},
[4] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
[2] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[4] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[5] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 2,
},
[6] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
},
["tasks"] = {
[1] = 17,
},
},
[5] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
[2] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 11,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[4] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 8,
},
[5] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 7,
},
[6] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 6,
},
[7] = {
["CLSID"] = "{DB769D48-67D7-42ED-A2BE-108D566C8B1E}",
["num"] = 5,
},
[8] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[9] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 2,
},
[10] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
[11] = {
["CLSID"] = "{0D33DDAE-524F-4A4E-B5B8-621754FE3ADE}",
["num"] = 4,
},
[12] = {
["CLSID"] = "{0D33DDAE-524F-4A4E-B5B8-621754FE3ADE}",
["num"] = 9,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["unitType"] = "Tornado GR4",
}
return unitPayloads

View File

@ -0,0 +1,206 @@
local unitPayloads = {
["name"] = "Tornado IDS",
["payloads"] = {
[1] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 9,
},
[6] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[7] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 11,
},
[8] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 29,
},
},
[2] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{7210496B-7B81-4B52-80D6-8529ECF847CD}",
["num"] = 4,
},
[5] = {
["CLSID"] = "{7210496B-7B81-4B52-80D6-8529ECF847CD}",
["num"] = 9,
},
[6] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[7] = {
["CLSID"] = "{B06DD79A-F21E-4EB9-BD9D-AB3844618C93}",
["num"] = 11,
},
[8] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 30,
},
},
[3] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
[2] = {
["CLSID"] = "{8C3F26A2-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
},
["tasks"] = {
},
},
[4] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[9] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 11,
},
[10] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 32,
},
},
[5] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 1,
},
[2] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 2,
},
[3] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 3,
},
[4] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 5,
},
[5] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 6,
},
[6] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 7,
},
[7] = {
["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}",
["num"] = 8,
},
[8] = {
["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}",
["num"] = 10,
},
[9] = {
["CLSID"] = "{EF124821-F9BB-4314-A153-E0E2FE1162C4}",
["num"] = 11,
},
[10] = {
["CLSID"] = "{8C3F26A1-FA0F-11d5-9190-00A0249B6F00}",
["num"] = 12,
},
},
["tasks"] = {
[1] = 32,
},
},
},
["unitType"] = "Tornado IDS",
}
return unitPayloads

View File

@ -0,0 +1,142 @@
local unitPayloads = {
["name"] = "UH-1H",
["payloads"] = {
[1] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "M134_L",
["num"] = 1,
},
[2] = {
["CLSID"] = "XM158_MK5",
["num"] = 2,
},
[3] = {
["CLSID"] = "XM158_MK5",
["num"] = 5,
},
[4] = {
["CLSID"] = "M134_R",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
[2] = 31,
[3] = 35,
[4] = 16,
},
},
[2] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "M134_L",
["num"] = 1,
},
[2] = {
["CLSID"] = "M134_R",
["num"] = 6,
},
[3] = {
["CLSID"] = "M60_SIDE_R",
["num"] = 4,
},
[4] = {
["CLSID"] = "M60_SIDE_L",
["num"] = 3,
},
},
["tasks"] = {
[1] = 32,
[2] = 31,
[3] = 35,
[4] = 16,
},
},
[3] = {
["name"] = "SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "M134_L",
["num"] = 1,
},
[2] = {
["CLSID"] = "XM158_MK5",
["num"] = 2,
},
[3] = {
["CLSID"] = "XM158_MK5",
["num"] = 5,
},
[4] = {
["CLSID"] = "M134_R",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
[2] = 31,
[3] = 35,
[4] = 16,
},
},
[4] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "M134_L",
["num"] = 1,
},
[2] = {
["CLSID"] = "XM158_MK5",
["num"] = 2,
},
[3] = {
["CLSID"] = "XM158_MK5",
["num"] = 5,
},
[4] = {
["CLSID"] = "M134_R",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
[2] = 31,
[3] = 35,
[4] = 16,
},
},
[5] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "M134_L",
["num"] = 1,
},
[2] = {
["CLSID"] = "XM158_MK5",
["num"] = 2,
},
[3] = {
["CLSID"] = "XM158_MK5",
["num"] = 5,
},
[4] = {
["CLSID"] = "M134_R",
["num"] = 6,
},
},
["tasks"] = {
[1] = 32,
[2] = 31,
[3] = 35,
[4] = 16,
},
},
},
["unitType"] = "UH-1H",
}
return unitPayloads

View File

@ -92,6 +92,18 @@ QLabel[style="BARCAP"]{
color:white;
}
QLabel[style="TARCAP"]{
border: 1px solid black;
background-color: #445299;
color:white;
}
QLabel[style="CAP"]{
border: 1px solid black;
background-color: #445299;
color:white;
}
QLabel[style="INTERCEPTION"]{
border: 1px solid black;
background-color: #7752bc;
@ -104,6 +116,24 @@ QLabel[style="CAS"]{
color:white;
}
QLabel[style="BAI"]{
border: 1px solid black;
background-color: #ab2244;
color:white;
}
QLabel[style="ANTISHIP"]{
border: 1px solid black;
background-color: #ab2244;
color:white;
}
QLabel[style="STRIKE"]{
border: 1px solid black;
background-color: #ab2244;
color:white;
}
QLabel[style="DEAD"]{
border: 1px solid black;
background-color: #cc8844;

Binary file not shown.

After

Width:  |  Height:  |  Size: 541 B

View File

Before

Width:  |  Height:  |  Size: 334 B

After

Width:  |  Height:  |  Size: 334 B

View File

@ -22,31 +22,29 @@ class CaucasusTheater(ConflictTheater):
"night": (0, 5),
}
soganlug = ControlPoint.from_airport(caucasus.Soganlug, LAND, SIZE_SMALL, IMPORTANCE_LOW)
kutaisi = ControlPoint.from_airport(caucasus.Kutaisi, LAND, SIZE_SMALL, IMPORTANCE_LOW)
senaki = ControlPoint.from_airport(caucasus.Senaki_Kolkhi, LAND, SIZE_REGULAR, IMPORTANCE_LOW)
kobuleti = ControlPoint.from_airport(caucasus.Kobuleti, COAST_A_E, SIZE_SMALL, 1.1)
batumi = ControlPoint.from_airport(caucasus.Batumi, COAST_DL_E, SIZE_SMALL, 1.3)
sukhumi = ControlPoint.from_airport(caucasus.Sukhumi_Babushara, COAST_DR_E, SIZE_REGULAR, 1.2)
gudauta = ControlPoint.from_airport(caucasus.Gudauta, COAST_DR_E, SIZE_REGULAR, 1.2)
sochi = ControlPoint.from_airport(caucasus.Sochi_Adler, COAST_DR_E, SIZE_BIG, IMPORTANCE_HIGH)
gelendzhik = ControlPoint.from_airport(caucasus.Gelendzhik, COAST_DR_E, SIZE_BIG, 1.1)
maykop = ControlPoint.from_airport(caucasus.Maykop_Khanskaya, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
krasnodar = ControlPoint.from_airport(caucasus.Krasnodar_Center, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
krymsk = ControlPoint.from_airport(caucasus.Krymsk, LAND, SIZE_LARGE, 1.2)
anapa = ControlPoint.from_airport(caucasus.Anapa_Vityazevo, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
beslan = ControlPoint.from_airport(caucasus.Beslan, LAND, SIZE_REGULAR, IMPORTANCE_LOW)
nalchik = ControlPoint.from_airport(caucasus.Nalchik, LAND, SIZE_REGULAR, 1.1)
mineralnye = ControlPoint.from_airport(caucasus.Mineralnye_Vody, LAND, SIZE_BIG, 1.3)
mozdok = ControlPoint.from_airport(caucasus.Mozdok, LAND, SIZE_BIG, 1.1)
carrier_1 = ControlPoint.carrier("Carrier", mapping.Point(-305810.6875, 406399.1875))
def __init__(self, load_ground_objects=True):
super(CaucasusTheater, self).__init__()
self.soganlug = ControlPoint.from_airport(caucasus.Soganlug, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.kutaisi = ControlPoint.from_airport(caucasus.Kutaisi, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.senaki = ControlPoint.from_airport(caucasus.Senaki_Kolkhi, LAND, SIZE_REGULAR, IMPORTANCE_LOW)
self.kobuleti = ControlPoint.from_airport(caucasus.Kobuleti, COAST_A_E, SIZE_SMALL, 1.1)
self.batumi = ControlPoint.from_airport(caucasus.Batumi, COAST_DL_E, SIZE_SMALL, 1.3)
self.sukhumi = ControlPoint.from_airport(caucasus.Sukhumi_Babushara, COAST_DR_E, SIZE_REGULAR, 1.2)
self.gudauta = ControlPoint.from_airport(caucasus.Gudauta, COAST_DR_E, SIZE_REGULAR, 1.2)
self.sochi = ControlPoint.from_airport(caucasus.Sochi_Adler, COAST_DR_E, SIZE_BIG, IMPORTANCE_HIGH)
self.gelendzhik = ControlPoint.from_airport(caucasus.Gelendzhik, COAST_DR_E, SIZE_BIG, 1.1)
self.maykop = ControlPoint.from_airport(caucasus.Maykop_Khanskaya, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
self.krasnodar = ControlPoint.from_airport(caucasus.Krasnodar_Center, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
self.krymsk = ControlPoint.from_airport(caucasus.Krymsk, LAND, SIZE_LARGE, 1.2)
self.anapa = ControlPoint.from_airport(caucasus.Anapa_Vityazevo, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
self.beslan = ControlPoint.from_airport(caucasus.Beslan, LAND, SIZE_REGULAR, IMPORTANCE_LOW)
self.nalchik = ControlPoint.from_airport(caucasus.Nalchik, LAND, SIZE_REGULAR, 1.1)
self.mineralnye = ControlPoint.from_airport(caucasus.Mineralnye_Vody, LAND, SIZE_BIG, 1.3)
self.mozdok = ControlPoint.from_airport(caucasus.Mozdok, LAND, SIZE_BIG, 1.1)
self.soganlug.frontline_offset = 0.5
self.soganlug.base.strength = 1
@ -99,17 +97,18 @@ class WesternGeorgia(ConflictTheater):
"night": (0, 5),
}
kutaisi = ControlPoint.from_airport(caucasus.Kutaisi, LAND, SIZE_SMALL, IMPORTANCE_LOW)
senaki = ControlPoint.from_airport(caucasus.Senaki_Kolkhi, LAND, SIZE_REGULAR, IMPORTANCE_LOW)
kobuleti = ControlPoint.from_airport(caucasus.Kobuleti, COAST_A_E, SIZE_SMALL, 1.1)
sukhumi = ControlPoint.from_airport(caucasus.Sukhumi_Babushara, COAST_DR_E, SIZE_REGULAR, 1.2)
gudauta = ControlPoint.from_airport(caucasus.Gudauta, COAST_DR_E, SIZE_REGULAR, 1.2)
sochi = ControlPoint.from_airport(caucasus.Sochi_Adler, COAST_DR_E, SIZE_BIG, IMPORTANCE_HIGH)
carrier_1 = ControlPoint.carrier("Carrier", mapping.Point(-285810.6875, 496399.1875))
def __init__(self, load_ground_objects=True):
super(WesternGeorgia, self).__init__()
self.kobuleti = ControlPoint.from_airport(caucasus.Kobuleti, COAST_A_E, SIZE_SMALL, 1.1)
self.senaki = ControlPoint.from_airport(caucasus.Senaki_Kolkhi, LAND, SIZE_REGULAR, IMPORTANCE_LOW)
self.kutaisi = ControlPoint.from_airport(caucasus.Kutaisi, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.sukhumi = ControlPoint.from_airport(caucasus.Sukhumi_Babushara, COAST_DR_E, SIZE_REGULAR, 1.2)
self.gudauta = ControlPoint.from_airport(caucasus.Gudauta, COAST_DR_E, SIZE_REGULAR, 1.2)
self.sochi = ControlPoint.from_airport(caucasus.Sochi_Adler, COAST_DR_E, SIZE_BIG, IMPORTANCE_HIGH)
self.carrier_1 = ControlPoint.carrier("Carrier", mapping.Point(-285810.6875, 496399.1875))
self.add_controlpoint(self.kutaisi, connected_to=[self.senaki])
self.add_controlpoint(self.senaki, connected_to=[self.kobuleti, self.sukhumi, self.kutaisi])
self.add_controlpoint(self.kobuleti, connected_to=[self.senaki])
@ -120,3 +119,45 @@ class WesternGeorgia(ConflictTheater):
self.carrier_1.captured = True
self.kobuleti.captured = True
"""
Georgian Theather [inverted starting position]
Ideal for smaller scale campaign
"""
class WesternGeorgiaInverted(ConflictTheater):
terrain = caucasus.Caucasus()
overview_image = "caumap.gif"
reference_points = {(-317948.32727306, 635639.37385346): (278.5 * 4, 319 * 4),
(-355692.3067714, 617269.96285781): (263 * 4, 352 * 4), }
landmap = load_landmap("resources\\caulandmap.p")
daytime_map = {
"dawn": (6, 9),
"day": (9, 18),
"dusk": (18, 20),
"night": (0, 5),
}
def __init__(self, load_ground_objects=True):
super(WesternGeorgiaInverted, self).__init__()
self.kutaisi = ControlPoint.from_airport(caucasus.Kutaisi, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.senaki = ControlPoint.from_airport(caucasus.Senaki_Kolkhi, LAND, SIZE_REGULAR, IMPORTANCE_LOW)
self.kobuleti = ControlPoint.from_airport(caucasus.Kobuleti, COAST_A_E, SIZE_SMALL, 1.1)
self.sukhumi = ControlPoint.from_airport(caucasus.Sukhumi_Babushara, COAST_DR_E, SIZE_REGULAR, 1.2)
self.gudauta = ControlPoint.from_airport(caucasus.Gudauta, COAST_DR_E, SIZE_REGULAR, 1.2)
self.sochi = ControlPoint.from_airport(caucasus.Sochi_Adler, COAST_DR_E, SIZE_BIG, IMPORTANCE_HIGH)
self.carrier_1 = ControlPoint.carrier("Carrier", mapping.Point(-285810.6875, 496399.1875))
self.add_controlpoint(self.kutaisi, connected_to=[self.senaki])
self.add_controlpoint(self.senaki, connected_to=[self.kobuleti, self.sukhumi, self.kutaisi])
self.add_controlpoint(self.kobuleti, connected_to=[self.senaki])
self.add_controlpoint(self.sukhumi, connected_to=[self.gudauta, self.senaki])
self.add_controlpoint(self.gudauta, connected_to=[self.sochi, self.sukhumi])
self.add_controlpoint(self.sochi, connected_to=[self.gudauta])
self.add_controlpoint(self.carrier_1)
self.carrier_1.captured = True
self.sochi.captured = True

View File

@ -64,11 +64,17 @@ class ControlPoint:
return cls(airport.id, airport.name, airport.position, airport, radials, size, importance, has_frontline, cptype=ControlPointType.AIRBASE)
@classmethod
def carrier(cls, name: str, at: Point):
def carrier(cls, name: str, at: Point, id: int = 1001):
import theater.conflicttheater
return cls(0, name, at, at, theater.conflicttheater.LAND, theater.conflicttheater.SIZE_SMALL, 1,
return cls(id, name, at, at, theater.conflicttheater.LAND, theater.conflicttheater.SIZE_SMALL, 1,
has_frontline=False, cptype=ControlPointType.AIRCRAFT_CARRIER_GROUP)
@classmethod
def lha(cls, name: str, at: Point, id: int = 1002):
import theater.conflicttheater
return cls(id, name, at, at, theater.conflicttheater.LAND, theater.conflicttheater.SIZE_SMALL, 1,
has_frontline=False, cptype=ControlPointType.LHA_GROUP)
def __str__(self):
return self.name
@ -80,6 +86,14 @@ class ControlPoint:
def is_carrier(self):
return self.cptype in [ControlPointType.AIRCRAFT_CARRIER_GROUP, ControlPointType.LHA_GROUP]
@property
def is_fleet(self):
return self.cptype in [ControlPointType.AIRCRAFT_CARRIER_GROUP, ControlPointType.LHA_GROUP]
@property
def is_lha(self):
return self.cptype in [ControlPointType.LHA_GROUP]
@property
def sea_radials(self) -> typing.Collection[int]:
# TODO: fix imports
@ -101,7 +115,7 @@ class ControlPoint:
"""
if self.cptype in [ControlPointType.AIRCRAFT_CARRIER_GROUP, ControlPointType.LHA_GROUP] :
for g in self.ground_objects:
if g.dcs_identifier == "CARRIER":
if g.dcs_identifier in ["CARRIER", "LHA"]:
for group in g.groups:
for u in group.units:
if db.unit_type_from_name(u.type) in [CVN_74_John_C__Stennis, LHA_1_Tarawa, CV_1143_5_Admiral_Kuznetsov]:
@ -122,7 +136,12 @@ class ControlPoint:
if g.dcs_identifier == "CARRIER":
for group in g.groups:
for u in group.units:
if db.unit_type_from_name(u.type) in [CVN_74_John_C__Stennis, LHA_1_Tarawa, CV_1143_5_Admiral_Kuznetsov]:
if db.unit_type_from_name(u.type) in [CVN_74_John_C__Stennis, CV_1143_5_Admiral_Kuznetsov]:
return group.name
elif g.dcs_identifier == "LHA":
for group in g.groups:
for u in group.units:
if db.unit_type_from_name(u.type) in [LHA_1_Tarawa]:
return group.name
return None

View File

@ -19,23 +19,21 @@ class NevadaTheater(ConflictTheater):
"night": (0, 5),
}
tonopah = ControlPoint.from_airport(nevada.Tonopah_Airport, LAND, SIZE_SMALL, IMPORTANCE_LOW)
tonopah_test_range = ControlPoint.from_airport(nevada.Tonopah_Test_Range_Airfield, LAND, SIZE_SMALL, IMPORTANCE_LOW)
lincoln_conty = ControlPoint.from_airport(nevada.Lincoln_County, LAND, SIZE_SMALL, 1.2)
pahute_mesa = ControlPoint.from_airport(nevada.Pahute_Mesa_Airstrip, LAND, SIZE_SMALL, 1.1)
groom_lake = ControlPoint.from_airport(nevada.Groom_Lake_AFB, LAND, SIZE_REGULAR, IMPORTANCE_HIGH)
mesquite = ControlPoint.from_airport(nevada.Mesquite, LAND, SIZE_REGULAR, 1.3)
beatty = ControlPoint.from_airport(nevada.Beatty_Airport, LAND, SIZE_REGULAR, 1.1)
creech = ControlPoint.from_airport(nevada.Creech_AFB, LAND, SIZE_BIG, IMPORTANCE_HIGH)
las_vegas = ControlPoint.from_airport(nevada.North_Las_Vegas, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
jean = ControlPoint.from_airport(nevada.Jean_Airport, LAND, SIZE_REGULAR, 1.2)
laughlin = ControlPoint.from_airport(nevada.Laughlin_Airport, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
def __init__(self):
super(NevadaTheater, self).__init__()
self.tonopah = ControlPoint.from_airport(nevada.Tonopah_Airport, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.tonopah_test_range = ControlPoint.from_airport(nevada.Tonopah_Test_Range_Airfield, LAND, SIZE_SMALL,IMPORTANCE_LOW)
self.lincoln_conty = ControlPoint.from_airport(nevada.Lincoln_County, LAND, SIZE_SMALL, 1.2)
self.pahute_mesa = ControlPoint.from_airport(nevada.Pahute_Mesa_Airstrip, LAND, SIZE_SMALL, 1.1)
self.groom_lake = ControlPoint.from_airport(nevada.Groom_Lake_AFB, LAND, SIZE_REGULAR, IMPORTANCE_HIGH)
self.mesquite = ControlPoint.from_airport(nevada.Mesquite, LAND, SIZE_REGULAR, 1.3)
self.beatty = ControlPoint.from_airport(nevada.Beatty_Airport, LAND, SIZE_REGULAR, 1.1)
self.creech = ControlPoint.from_airport(nevada.Creech_AFB, LAND, SIZE_BIG, IMPORTANCE_HIGH)
self.las_vegas = ControlPoint.from_airport(nevada.North_Las_Vegas, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
self.jean = ControlPoint.from_airport(nevada.Jean_Airport, LAND, SIZE_REGULAR, 1.2)
self.laughlin = ControlPoint.from_airport(nevada.Laughlin_Airport, LAND, SIZE_LARGE, IMPORTANCE_HIGH)
self.add_controlpoint(self.tonopah, connected_to=[self.tonopah_test_range, self.lincoln_conty])
self.add_controlpoint(self.tonopah_test_range, connected_to=[self.tonopah, self.lincoln_conty, self.pahute_mesa])
self.add_controlpoint(self.lincoln_conty, connected_to=[self.tonopah_test_range, self.tonopah, self.mesquite])

View File

@ -17,16 +17,16 @@ class NormandyTheater(ConflictTheater):
"night": (0, 5),
}
st_pierre = ControlPoint.from_airport(normandy.Saint_Pierre_du_Mont, LAND, SIZE_REGULAR, IMPORTANCE_MEDIUM)
maupertus = ControlPoint.from_airport(normandy.Maupertus, LAND, SIZE_SMALL, IMPORTANCE_LOW)
azeville = ControlPoint.from_airport(normandy.Azeville, LAND, SIZE_SMALL, IMPORTANCE_LOW)
lessay = ControlPoint.from_airport(normandy.Lessay, LAND, SIZE_SMALL, IMPORTANCE_LOW)
meautis = ControlPoint.from_airport(normandy.Meautis, LAND, SIZE_SMALL, IMPORTANCE_LOW)
chippelle = ControlPoint.from_airport(normandy.Chippelle, LAND, SIZE_SMALL, IMPORTANCE_LOW)
def __init__(self):
super(NormandyTheater, self).__init__()
self.st_pierre = ControlPoint.from_airport(normandy.Saint_Pierre_du_Mont, LAND, SIZE_REGULAR, IMPORTANCE_MEDIUM)
self.maupertus = ControlPoint.from_airport(normandy.Maupertus, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.azeville = ControlPoint.from_airport(normandy.Azeville, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.lessay = ControlPoint.from_airport(normandy.Lessay, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.meautis = ControlPoint.from_airport(normandy.Meautis, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.chippelle = ControlPoint.from_airport(normandy.Chippelle, LAND, SIZE_SMALL, IMPORTANCE_LOW)
self.add_controlpoint(self.st_pierre, connected_to=[self.chippelle])
self.add_controlpoint(self.maupertus, connected_to=[self.azeville])
self.add_controlpoint(self.azeville, connected_to=[self.meautis, self.maupertus])

View File

@ -20,43 +20,37 @@ class PersianGulfTheater(ConflictTheater):
"night": (0, 5),
}
al_dhafra = ControlPoint.from_airport(persiangulf.Al_Dhafra_AB, LAND, SIZE_BIG, IMPORTANCE_LOW)
al_maktoum = ControlPoint.from_airport(persiangulf.Al_Maktoum_Intl, LAND, SIZE_BIG, IMPORTANCE_LOW)
al_minhad = ControlPoint.from_airport(persiangulf.Al_Minhad_AB, LAND, SIZE_REGULAR, 1.1)
sir_abu_nuayr = ControlPoint.from_airport(persiangulf.Sir_Abu_Nuayr, [0, 330], SIZE_SMALL, 1.1, has_frontline=False)
dubai = ControlPoint.from_airport(persiangulf.Dubai_Intl, COAST_DL_E, SIZE_LARGE, IMPORTANCE_MEDIUM)
sharjah = ControlPoint.from_airport(persiangulf.Sharjah_Intl, LAND, SIZE_BIG, 1.0)
fujairah = ControlPoint.from_airport(persiangulf.Fujairah_Intl, COAST_V_W, SIZE_REGULAR, 1.0)
khasab = ControlPoint.from_airport(persiangulf.Khasab, LAND, SIZE_SMALL, IMPORTANCE_MEDIUM)
sirri = ControlPoint.from_airport(persiangulf.Sirri_Island, COAST_DL_W, SIZE_REGULAR, IMPORTANCE_LOW, has_frontline=False)
abu_musa = ControlPoint.from_airport(persiangulf.Abu_Musa_Island_Airport, LAND, SIZE_SMALL, IMPORTANCE_MEDIUM, has_frontline=False)
tunb_island = ControlPoint.from_airport(persiangulf.Tunb_Island_AFB, [0, 270, 330], SIZE_SMALL, IMPORTANCE_MEDIUM, has_frontline=False)
tunb_kochak = ControlPoint.from_airport(persiangulf.Tunb_Kochak, [135, 180], SIZE_SMALL, 1.1, has_frontline=False)
bandar_lengeh = ControlPoint.from_airport(persiangulf.Bandar_Lengeh, [270, 315, 0, 45], SIZE_SMALL, IMPORTANCE_HIGH)
qeshm = ControlPoint.from_airport(persiangulf.Qeshm_Island, [270, 315, 0, 45, 90, 135, 180], SIZE_SMALL, 1.1, has_frontline=False)
havadarya = ControlPoint.from_airport(persiangulf.Havadarya, COAST_DL_W, SIZE_REGULAR, IMPORTANCE_HIGH)
bandar_abbas = ControlPoint.from_airport(persiangulf.Bandar_Abbas_Intl, LAND, SIZE_BIG, IMPORTANCE_HIGH)
lar = ControlPoint.from_airport(persiangulf.Lar_Airbase, LAND, SIZE_REGULAR, IMPORTANCE_HIGH)
shiraz = ControlPoint.from_airport(persiangulf.Shiraz_International_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
kerman = ControlPoint.from_airport(persiangulf.Kerman_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
ras_al_khaimah = ControlPoint.from_airport(persiangulf.Ras_Al_Khaimah, LAND, SIZE_REGULAR, IMPORTANCE_MEDIUM)
al_ain = ControlPoint.from_airport(persiangulf.Al_Ain_International_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
liwa = ControlPoint.from_airport(persiangulf.Liwa_Airbase, LAND, SIZE_BIG, IMPORTANCE_HIGH)
jiroft = ControlPoint.from_airport(persiangulf.Jiroft_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
bandar_e_jask = ControlPoint.from_airport(persiangulf.Bandar_e_Jask_airfield, LAND, SIZE_TINY, IMPORTANCE_LOW)
west_carrier = ControlPoint.carrier("West carrier", Point(-69043.813952358, -159916.65947136))
east_carrier = ControlPoint.carrier("East carrier", Point(59514.324335475, 28165.517980635))
def __init__(self):
super(PersianGulfTheater, self).__init__()
self.al_dhafra = ControlPoint.from_airport(persiangulf.Al_Dhafra_AB, LAND, SIZE_BIG, IMPORTANCE_LOW)
self.al_maktoum = ControlPoint.from_airport(persiangulf.Al_Maktoum_Intl, LAND, SIZE_BIG, IMPORTANCE_LOW)
self.al_minhad = ControlPoint.from_airport(persiangulf.Al_Minhad_AB, LAND, SIZE_REGULAR, 1.1)
self.sir_abu_nuayr = ControlPoint.from_airport(persiangulf.Sir_Abu_Nuayr, [0, 330], SIZE_SMALL, 1.1,has_frontline=False)
self.dubai = ControlPoint.from_airport(persiangulf.Dubai_Intl, COAST_DL_E, SIZE_LARGE, IMPORTANCE_MEDIUM)
self.sharjah = ControlPoint.from_airport(persiangulf.Sharjah_Intl, LAND, SIZE_BIG, 1.0)
self.fujairah = ControlPoint.from_airport(persiangulf.Fujairah_Intl, COAST_V_W, SIZE_REGULAR, 1.0)
self.khasab = ControlPoint.from_airport(persiangulf.Khasab, LAND, SIZE_SMALL, IMPORTANCE_MEDIUM)
self.sirri = ControlPoint.from_airport(persiangulf.Sirri_Island, COAST_DL_W, SIZE_REGULAR, IMPORTANCE_LOW,has_frontline=False)
self.abu_musa = ControlPoint.from_airport(persiangulf.Abu_Musa_Island_Airport, LAND, SIZE_SMALL,IMPORTANCE_MEDIUM, has_frontline=False)
self.tunb_island = ControlPoint.from_airport(persiangulf.Tunb_Island_AFB, [0, 270, 330], SIZE_SMALL,IMPORTANCE_MEDIUM, has_frontline=False)
self.tunb_kochak = ControlPoint.from_airport(persiangulf.Tunb_Kochak, [135, 180], SIZE_SMALL, 1.1,has_frontline=False)
self.bandar_lengeh = ControlPoint.from_airport(persiangulf.Bandar_Lengeh, [270, 315, 0, 45], SIZE_SMALL,IMPORTANCE_HIGH)
self.qeshm = ControlPoint.from_airport(persiangulf.Qeshm_Island, [270, 315, 0, 45, 90, 135, 180], SIZE_SMALL,1.1, has_frontline=False)
self.havadarya = ControlPoint.from_airport(persiangulf.Havadarya, COAST_DL_W, SIZE_REGULAR, IMPORTANCE_HIGH)
self.bandar_abbas = ControlPoint.from_airport(persiangulf.Bandar_Abbas_Intl, LAND, SIZE_BIG, IMPORTANCE_HIGH)
self.lar = ControlPoint.from_airport(persiangulf.Lar_Airbase, LAND, SIZE_REGULAR, IMPORTANCE_HIGH)
self.shiraz = ControlPoint.from_airport(persiangulf.Shiraz_International_Airport, LAND, SIZE_BIG,IMPORTANCE_HIGH)
self.kerman = ControlPoint.from_airport(persiangulf.Kerman_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
self.ras_al_khaimah = ControlPoint.from_airport(persiangulf.Ras_Al_Khaimah, LAND, SIZE_REGULAR,IMPORTANCE_MEDIUM)
self.al_ain = ControlPoint.from_airport(persiangulf.Al_Ain_International_Airport, LAND, SIZE_BIG,IMPORTANCE_HIGH)
self.liwa = ControlPoint.from_airport(persiangulf.Liwa_Airbase, LAND, SIZE_BIG, IMPORTANCE_HIGH)
self.jiroft = ControlPoint.from_airport(persiangulf.Jiroft_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
self.bandar_e_jask = ControlPoint.from_airport(persiangulf.Bandar_e_Jask_airfield, LAND, SIZE_TINY,IMPORTANCE_LOW)
self.west_carrier = ControlPoint.carrier("West carrier", Point(-69043.813952358, -159916.65947136))
self.east_carrier = ControlPoint.carrier("East carrier", Point(59514.324335475, 28165.517980635))
self.add_controlpoint(self.liwa, connected_to=[self.al_dhafra])
self.add_controlpoint(self.al_dhafra, connected_to=[self.liwa, self.sir_abu_nuayr, self.al_maktoum, self.al_ain])
self.add_controlpoint(self.al_ain, connected_to=[self.al_dhafra, self.al_maktoum])
@ -105,38 +99,31 @@ class IranianCampaign(ConflictTheater):
"night": (0, 5),
}
al_dhafra = ControlPoint.from_airport(persiangulf.Al_Dhafra_AB, LAND, SIZE_BIG, IMPORTANCE_LOW)
al_maktoum = ControlPoint.from_airport(persiangulf.Al_Maktoum_Intl, LAND, SIZE_BIG, IMPORTANCE_LOW)
al_minhad = ControlPoint.from_airport(persiangulf.Al_Minhad_AB, LAND, SIZE_REGULAR, 1.1)
sir_abu_nuayr = ControlPoint.from_airport(persiangulf.Sir_Abu_Nuayr, [0, 330], SIZE_SMALL, 1.1, has_frontline=False)
dubai = ControlPoint.from_airport(persiangulf.Dubai_Intl, COAST_DL_E, SIZE_LARGE, IMPORTANCE_MEDIUM)
sharjah = ControlPoint.from_airport(persiangulf.Sharjah_Intl, LAND, SIZE_BIG, 1.0)
fujairah = ControlPoint.from_airport(persiangulf.Fujairah_Intl, COAST_V_W, SIZE_REGULAR, 1.0)
khasab = ControlPoint.from_airport(persiangulf.Khasab, LAND, SIZE_SMALL, IMPORTANCE_MEDIUM)
sirri = ControlPoint.from_airport(persiangulf.Sirri_Island, COAST_DL_W, SIZE_REGULAR, IMPORTANCE_LOW, has_frontline=False)
abu_musa = ControlPoint.from_airport(persiangulf.Abu_Musa_Island_Airport, LAND, SIZE_SMALL, IMPORTANCE_MEDIUM, has_frontline=False)
tunb_island = ControlPoint.from_airport(persiangulf.Tunb_Island_AFB, [0, 270, 330], SIZE_SMALL, IMPORTANCE_MEDIUM, has_frontline=False)
tunb_kochak = ControlPoint.from_airport(persiangulf.Tunb_Kochak, [135, 180], SIZE_SMALL, 1.1, has_frontline=False)
bandar_lengeh = ControlPoint.from_airport(persiangulf.Bandar_Lengeh, [270, 315, 0, 45], SIZE_SMALL, IMPORTANCE_HIGH)
qeshm = ControlPoint.from_airport(persiangulf.Qeshm_Island, [270, 315, 0, 45, 90, 135, 180], SIZE_SMALL, 1.1, has_frontline=False)
havadarya = ControlPoint.from_airport(persiangulf.Havadarya, COAST_DL_W, SIZE_REGULAR, IMPORTANCE_HIGH)
bandar_abbas = ControlPoint.from_airport(persiangulf.Bandar_Abbas_Intl, LAND, SIZE_BIG, IMPORTANCE_HIGH)
lar = ControlPoint.from_airport(persiangulf.Lar_Airbase, LAND, SIZE_REGULAR, IMPORTANCE_HIGH)
shiraz = ControlPoint.from_airport(persiangulf.Shiraz_International_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
kerman = ControlPoint.from_airport(persiangulf.Kerman_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
jiroft = ControlPoint.from_airport(persiangulf.Jiroft_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
bandar_e_jask = ControlPoint.from_airport(persiangulf.Bandar_e_Jask_airfield, LAND, SIZE_TINY, IMPORTANCE_LOW)
ras_al_khaimah = ControlPoint.from_airport(persiangulf.Ras_Al_Khaimah, LAND, SIZE_REGULAR, IMPORTANCE_MEDIUM)
east_carrier = ControlPoint.carrier("East carrier", Point(59514.324335475, 28165.517980635))
def __init__(self):
super(IranianCampaign, self).__init__()
self.al_dhafra = ControlPoint.from_airport(persiangulf.Al_Dhafra_AB, LAND, SIZE_BIG, IMPORTANCE_LOW)
self.al_maktoum = ControlPoint.from_airport(persiangulf.Al_Maktoum_Intl, LAND, SIZE_BIG, IMPORTANCE_LOW)
self.al_minhad = ControlPoint.from_airport(persiangulf.Al_Minhad_AB, LAND, SIZE_REGULAR, 1.1)
self.sir_abu_nuayr = ControlPoint.from_airport(persiangulf.Sir_Abu_Nuayr, [0, 330], SIZE_SMALL, 1.1,has_frontline=False)
self.dubai = ControlPoint.from_airport(persiangulf.Dubai_Intl, COAST_DL_E, SIZE_LARGE, IMPORTANCE_MEDIUM)
self.sharjah = ControlPoint.from_airport(persiangulf.Sharjah_Intl, LAND, SIZE_BIG, 1.0)
self.fujairah = ControlPoint.from_airport(persiangulf.Fujairah_Intl, COAST_V_W, SIZE_REGULAR, 1.0)
self.khasab = ControlPoint.from_airport(persiangulf.Khasab, LAND, SIZE_SMALL, IMPORTANCE_MEDIUM)
self.sirri = ControlPoint.from_airport(persiangulf.Sirri_Island, COAST_DL_W, SIZE_REGULAR, IMPORTANCE_LOW,has_frontline=False)
self.abu_musa = ControlPoint.from_airport(persiangulf.Abu_Musa_Island_Airport, LAND, SIZE_SMALL,IMPORTANCE_MEDIUM, has_frontline=False)
self.tunb_island = ControlPoint.from_airport(persiangulf.Tunb_Island_AFB, [0, 270, 330], SIZE_SMALL,IMPORTANCE_MEDIUM, has_frontline=False)
self.tunb_kochak = ControlPoint.from_airport(persiangulf.Tunb_Kochak, [135, 180], SIZE_SMALL, 1.1,has_frontline=False)
self.bandar_lengeh = ControlPoint.from_airport(persiangulf.Bandar_Lengeh, [270, 315, 0, 45], SIZE_SMALL,IMPORTANCE_HIGH)
self.qeshm = ControlPoint.from_airport(persiangulf.Qeshm_Island, [270, 315, 0, 45, 90, 135, 180], SIZE_SMALL,1.1, has_frontline=False)
self.havadarya = ControlPoint.from_airport(persiangulf.Havadarya, COAST_DL_W, SIZE_REGULAR, IMPORTANCE_HIGH)
self.bandar_abbas = ControlPoint.from_airport(persiangulf.Bandar_Abbas_Intl, LAND, SIZE_BIG, IMPORTANCE_HIGH)
self.lar = ControlPoint.from_airport(persiangulf.Lar_Airbase, LAND, SIZE_REGULAR, IMPORTANCE_HIGH)
self.shiraz = ControlPoint.from_airport(persiangulf.Shiraz_International_Airport, LAND, SIZE_BIG,IMPORTANCE_HIGH)
self.kerman = ControlPoint.from_airport(persiangulf.Kerman_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
self.jiroft = ControlPoint.from_airport(persiangulf.Jiroft_Airport, LAND, SIZE_BIG, IMPORTANCE_HIGH)
self.bandar_e_jask = ControlPoint.from_airport(persiangulf.Bandar_e_Jask_airfield, LAND, SIZE_TINY,IMPORTANCE_LOW)
self.ras_al_khaimah = ControlPoint.from_airport(persiangulf.Ras_Al_Khaimah, LAND, SIZE_REGULAR,IMPORTANCE_MEDIUM)
self.east_carrier = ControlPoint.carrier("East carrier", Point(59514.324335475, 28165.517980635))
self.add_controlpoint(self.ras_al_khaimah, connected_to=[self.khasab])
self.add_controlpoint(self.khasab, connected_to=[self.ras_al_khaimah])
@ -159,3 +146,53 @@ class IranianCampaign(ConflictTheater):
self.qeshm.captured = True
self.havadarya.captured = True
self.bandar_abbas.captured = True
class Emirates(ConflictTheater):
terrain = dcs.terrain.PersianGulf()
overview_image = "persiangulf.gif"
reference_points = {
(persiangulf.Sir_Abu_Nuayr.position.x, persiangulf.Sir_Abu_Nuayr.position.y): (423 * 4, 150 * 4),
(persiangulf.Sirri_Island.position.x, persiangulf.Sirri_Island.position.y): (447 * 4, 82 * 4), }
landmap = load_landmap("resources\\gulflandmap.p")
daytime_map = {
"dawn": (6, 8),
"day": (8, 16),
"dusk": (16, 18),
"night": (0, 5),
}
def __init__(self):
super(Emirates, self).__init__()
self.al_dhafra = ControlPoint.from_airport(persiangulf.Al_Dhafra_AB, LAND, SIZE_BIG, IMPORTANCE_LOW)
self.al_maktoum = ControlPoint.from_airport(persiangulf.Al_Maktoum_Intl, LAND, SIZE_BIG, IMPORTANCE_LOW)
self.al_minhad = ControlPoint.from_airport(persiangulf.Al_Minhad_AB, LAND, SIZE_REGULAR, 1.1)
self.sir_abu_nuayr = ControlPoint.from_airport(persiangulf.Sir_Abu_Nuayr, [0, 330], SIZE_SMALL, 1.1, has_frontline=False)
self.dubai = ControlPoint.from_airport(persiangulf.Dubai_Intl, COAST_DL_E, SIZE_LARGE, IMPORTANCE_MEDIUM)
self.sharjah = ControlPoint.from_airport(persiangulf.Sharjah_Intl, LAND, SIZE_BIG, 1.0)
self.fujairah = ControlPoint.from_airport(persiangulf.Fujairah_Intl, COAST_V_W, SIZE_REGULAR, 1.0)
self.ras_al_khaimah = ControlPoint.from_airport(persiangulf.Ras_Al_Khaimah, LAND, SIZE_REGULAR,IMPORTANCE_MEDIUM)
self.al_ain = ControlPoint.from_airport(persiangulf.Al_Ain_International_Airport, LAND, SIZE_BIG,
IMPORTANCE_HIGH)
self.east_carrier = ControlPoint.carrier("Carrier", Point(-61770, 69039), 1001)
self.tarawa_carrier = ControlPoint.lha("LHA Carrier", Point(-79770, 49430), 1002)
self.add_controlpoint(self.al_dhafra, connected_to=[self.al_ain, self.al_maktoum])
self.add_controlpoint(self.al_ain, connected_to=[self.fujairah, self.al_maktoum, self.al_dhafra])
self.add_controlpoint(self.al_maktoum, connected_to=[self.al_dhafra, self.al_minhad, self.al_ain])
self.add_controlpoint(self.al_minhad, connected_to=[self.al_maktoum, self.dubai])
self.add_controlpoint(self.dubai, connected_to=[self.al_minhad, self.sharjah])
self.add_controlpoint(self.sharjah, connected_to=[self.dubai, self.ras_al_khaimah, self.fujairah])
self.add_controlpoint(self.ras_al_khaimah, connected_to=[self.sharjah])
self.add_controlpoint(self.fujairah, connected_to=[self.sharjah, self.al_ain])
self.add_controlpoint(self.sir_abu_nuayr, connected_to=[])
self.add_controlpoint(self.tarawa_carrier)
self.add_controlpoint(self.east_carrier)
self.tarawa_carrier.captured = True
self.east_carrier.captured = True
self.fujairah.captured = True

View File

@ -5,7 +5,7 @@ import typing
import logging
from gen.defenses.armor_group_generator import generate_armor_group
from gen.fleet.ship_group_generator import generate_carrier_group
from gen.fleet.ship_group_generator import generate_carrier_group, generate_lha_group
from gen.sam.sam_group_generator import generate_anti_air_group, generate_shorad_group
from theater import ControlPointType
from theater.base import *
@ -72,9 +72,7 @@ def generate_groundobjects(theater: ConflictTheater, game):
if cp.cptype == ControlPointType.AIRCRAFT_CARRIER_GROUP:
# Create ground object group
group_id = group_id + 1
g = TheaterGroundObject()
g.group_id = group_id
g.object_id = 0
@ -88,7 +86,28 @@ def generate_groundobjects(theater: ConflictTheater, game):
if group is not None:
g.groups.append(group)
cp.ground_objects.append(g)
# Set new name :
if "carrier_names" in db.FACTIONS[faction]:
cp.name = random.choice(db.FACTIONS[faction]["carrier_names"])
elif cp.cptype == ControlPointType.LHA_GROUP:
# Create ground object group
group_id = group_id + 1
g = TheaterGroundObject()
g.group_id = group_id
g.object_id = 0
g.cp_id = cp.id
g.airbase_group = True
g.dcs_identifier = "LHA"
g.heading = 0
g.position = Point(cp.position.x, cp.position.y)
group = generate_lha_group(faction, game, g)
g.groups = []
if group is not None:
g.groups.append(group)
cp.ground_objects.append(g)
# Set new name :
if "lhanames" in db.FACTIONS[faction]:
cp.name = random.choice(db.FACTIONS[faction]["lhanames"])
else:
for i in range(random.randint(2,6)):
point = find_location(True, cp.position, theater, 1000, 2800, [])

View File

@ -31,6 +31,7 @@ ABBREV_NAME = {
CATEGORY_MAP = {
"CARRIER": ["CARRIER"],
"LHA": ["LHA"],
"aa": ["AA"],
"power": ["Workshop A", "Electric power box", "Garage small A"],
"warehouse": ["Warehouse", "Hangar A"],

View File

@ -6,23 +6,23 @@ import sys
from dcs import installation
_user_folder = None # type: str
_dcs_saved_game_folder = None # type: str
def setup(user_folder: str):
global _user_folder
_user_folder = user_folder
global _dcs_saved_game_folder
_dcs_saved_game_folder = user_folder
def base_path() -> str:
global _user_folder
assert _user_folder
global _dcs_saved_game_folder
assert _dcs_saved_game_folder
openbeta_path = os.path.join(_user_folder, "DCS.openbeta")
if "--force-stable-DCS" not in sys.argv and os.path.exists(openbeta_path):
return openbeta_path
openbeta_path = _dcs_saved_game_folder + ".openbeta"
if os.path.exists(openbeta_path):
return openbeta_path # For standalone openbeta users
else:
return os.path.join(_user_folder, "DCS")
return _dcs_saved_game_folder # For standalone stable users & steam users (any branch)
def _save_file() -> str: