diff --git a/changelog.md b/changelog.md index bd9891a8..e247e6d4 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,19 @@ +# 2.1.0 + +## Features/Improvements : + +* **[Campaign Generator]** Added Syria map support +* **[Campaign Generator]** Added 4 campaigns for the Syria map +* **[Campaign Generator]** Added 2 smaller scale campaign for Persian Gulf map +* **[Units/Factions]** Added factions for Syria map : Syria 2011, Arab Armies 1973,1968,1948, Israel 1973, 1948 +* **[Base Menu]** Budget is visible in recruitment menu. (Thanks to Github contributor root0fall) +* **[Misc]** Added error message in mission when state file can not be written. + + +## Fixed issues : + +* **[Mission Generator]** Caucasus terrain improvement on exclusions zone (added forests between Vaziani and Beslan to exlusion zones) + # 2.0.11 ## Features/Improvements : @@ -42,7 +58,7 @@ * **[Mission Generator]** The briefing will now contain the carrier ATC frequency * **[Mission Generator]** The briefing contains a small situation update. * **[Mission Generator]** Previously destroyed units are visible in the mission. (And added a performance settings to disable this behaviour) -* **[Mission Generator]** Basic JTAC on Frontlines +* **[Mission Generator]*c* Basic JTAC on Frontlines * **[Campaign Generator]** Added Tarawa in caucasus campaigns * **[Campaign Generator]** Tuned the various existing campaign parameters * **[Campaign Generator]** Added small campaign : "Russia" on Caucasus Theater diff --git a/game/db.py b/game/db.py index f07193e7..4e6c2923 100644 --- a/game/db.py +++ b/game/db.py @@ -28,7 +28,7 @@ from game.factions.insurgent import Insurgent from game.factions.insurgent_modded import Insurgent_modded from game.factions.iran_2015 import Iran_2015 from game.factions.israel_1948 import Israel_1948 -from game.factions.israel_1973 import Israel_1973, Israel_1973_NO_WW2_UNITS +from game.factions.israel_1973 import Israel_1973, Israel_1973_NO_WW2_UNITS, Israel_1982 from game.factions.israel_2000 import Israel_2000 from game.factions.italy_1990 import Italy_1990 from game.factions.italy_1990_mb339 import Italy_1990_MB339 @@ -174,6 +174,7 @@ PRICES = { F_15C: 22, F_15E: 24, F_16C_50: 20, + F_16A: 14, F_14B: 24, Tornado_IDS: 20, Tornado_GR4: 20, @@ -404,6 +405,7 @@ UNIT_BY_TASK = { FA_18C_hornet, F_15C, F_14B, + F_16A, F_16C_50, M_2000C, Mirage_2000_5, @@ -770,6 +772,7 @@ FACTIONS = { "Italy 1990 (With MB339)": Italy_1990_MB339, "Israel 2000": Israel_2000, + "Israel 1982": Israel_1982, "Israel 1973 (WW2 Pack)": Israel_1973, "Israel 1973": Israel_1973_NO_WW2_UNITS, "Israel 1948": Israel_1948, @@ -939,6 +942,7 @@ PLANE_PAYLOAD_OVERRIDES = { Rafale_M: COMMON_OVERRIDE, Rafale_A_S: COMMON_OVERRIDE, OH_58D: COMMON_OVERRIDE, + F_16A: COMMON_OVERRIDE, AH_64D:{ CAS: "AGM-114K*16" @@ -996,7 +1000,11 @@ TIME_PERIODS = { "Modern - Summer [2010]": datetime(2010, 6, 1), "Modern - Fall [2010]": datetime(2010, 10, 1), "Georgian War [2008]": datetime(2008, 8, 7), - "Syrian War [2011]": datetime(2011, 8, 7), + "Syrian War [2011]": datetime(2011, 3, 15), + "6 days war [1967]": datetime(1967, 6, 5), + "Yom Kippour War [1973]": datetime(1973, 10, 6), + "Lebanon War [1982]": datetime(1982, 6, 6), + "Arab-Israeli War [1948]": datetime(1948, 5, 15), } REWARDS = { diff --git a/game/factions/israel_1973.py b/game/factions/israel_1973.py index 7becb868..00624ec9 100644 --- a/game/factions/israel_1973.py +++ b/game/factions/israel_1973.py @@ -22,6 +22,7 @@ Israel_1973 = { Armor.MT_M4A4_Sherman_Firefly, Armor.APC_M2A1, Armor.MBT_M60A3_Patton, + Armor.APC_M113, Unarmed.Transport_M818, Infantry.Infantry_M4, @@ -56,6 +57,44 @@ Israel_1973_NO_WW2_UNITS = { UH_1H, Armor.MBT_M60A3_Patton, + Armor.APC_M113, + + Unarmed.Transport_M818, + Infantry.Infantry_M4, + + AirDefence.SAM_Hawk_PCP, + AirDefence.SAM_Chaparral_M48, + + Armed_speedboat, + ], "requirements": { + "Community A-4E": "https://heclak.github.io/community-a4e-c/", + }, "shorad": [ + AirDefence.SAM_Chaparral_M48, + ], "boat": [ + ], "has_jtac": True +} + +Israel_1982 = { + "country": "Israel", + "side": "blue", + "units":[ + F_4E, + A_4E_C, + F_15C, + F_16A, + F_16C_50, + + KC_135, + KC130, + C_130, + E_3A, + + UH_1H, + AH_1W, + + Armor.APC_M113, + Armor.MBT_M60A3_Patton, + Armor.MBT_Merkava_Mk__4, Unarmed.Transport_M818, Infantry.Infantry_M4, diff --git a/gen/flights/ai_flight_planner_db.py b/gen/flights/ai_flight_planner_db.py index 70e70e3a..d02d7812 100644 --- a/gen/flights/ai_flight_planner_db.py +++ b/gen/flights/ai_flight_planner_db.py @@ -51,6 +51,7 @@ CAP_CAPABLE = [ F_14B, F_15C, F_15E, + F_16A, F_16C_50, FA_18C_hornet, @@ -100,6 +101,7 @@ CAS_CAPABLE = [ F_5E_3, F_14B, F_15E, + F_16A, F_16C_50, FA_18C_hornet, @@ -184,6 +186,7 @@ STRIKE_CAPABLE = [ F_5E_3, F_14B, F_15E, + F_16A, F_16C_50, FA_18C_hornet, @@ -216,6 +219,7 @@ ANTISHIP_CAPABLE = [ F_15E, AV8BNA, JF_17, + F_16A, F_16C_50, A_10C, A_10A, diff --git a/resources/customized_payloads/F-16A.lua b/resources/customized_payloads/F-16A.lua new file mode 100644 index 00000000..9879239f --- /dev/null +++ b/resources/customized_payloads/F-16A.lua @@ -0,0 +1,219 @@ +local unitPayloads = { + ["name"] = "F-16A", + ["payloads"] = { + [1] = { + ["name"] = "CAP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{6D21ECEA-F85B-4E8D-9D51-31DC9B8AA4EF}", + ["num"] = 6, + }, + [2] = { + ["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}", + ["num"] = 8, + }, + [3] = { + ["CLSID"] = "{8D399DDA-FF81-4F14-904D-099B34FE7918}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 9, + }, + [6] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 1, + }, + [7] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 10, + }, + }, + ["tasks"] = { + [1] = 11, + }, + }, + [2] = { + ["name"] = "CAS", + ["pylons"] = { + [1] = { + ["CLSID"] = "{6D21ECEA-F85B-4E8D-9D51-31DC9B8AA4EF}", + ["num"] = 6, + }, + [2] = { + ["CLSID"] = "{E6A6262A-CA08-4B3D-B030-E1A993B98453}", + ["num"] = 8, + }, + [3] = { + ["CLSID"] = "{E6A6262A-CA08-4B3D-B030-E1A993B98452}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 9, + }, + [6] = { + ["CLSID"] = "{AIS_ASQ_T50}", + ["num"] = 1, + }, + [7] = { + ["CLSID"] = "{AIS_ASQ_T50}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{444BA8AE-82A7-4345-842E-76154EFCCA46}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{444BA8AE-82A7-4345-842E-76154EFCCA46}", + ["num"] = 4, + }, + }, + ["tasks"] = { + [1] = 11, + }, + }, + [3] = { + ["name"] = "STRIKE", + ["pylons"] = { + [1] = { + ["CLSID"] = "{6D21ECEA-F85B-4E8D-9D51-31DC9B8AA4EF}", + ["num"] = 6, + }, + [2] = { + ["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}", + ["num"] = 8, + }, + [3] = { + ["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 9, + }, + [6] = { + ["CLSID"] = "{AIS_ASQ_T50}", + ["num"] = 1, + }, + [7] = { + ["CLSID"] = "{AIS_ASQ_T50}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{BCE4E030-38E9-423E-98ED-24BE3DA87C32}", + ["num"] = 4, + }, + }, + ["tasks"] = { + [1] = 11, + }, + }, + [4] = { + ["name"] = "ANTISHIP", + ["pylons"] = { + [1] = { + ["CLSID"] = "{6D21ECEA-F85B-4E8D-9D51-31DC9B8AA4EF}", + ["num"] = 6, + }, + [2] = { + ["CLSID"] = "{7B8DCEB4-820B-4015-9B48-1028A4195692}", + ["num"] = 8, + }, + [3] = { + ["CLSID"] = "{7B8DCEB4-820B-4015-9B48-1028A4195692}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 9, + }, + [6] = { + ["CLSID"] = "{AIS_ASQ_T50}", + ["num"] = 1, + }, + [7] = { + ["CLSID"] = "{AIS_ASQ_T50}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{444BA8AE-82A7-4345-842E-76154EFCCA46}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{444BA8AE-82A7-4345-842E-76154EFCCA46}", + ["num"] = 4, + }, + }, + ["tasks"] = { + [1] = 11, + }, + }, + [5] = { + ["name"] = "SEAD", + ["pylons"] = { + [1] = { + ["CLSID"] = "{6D21ECEA-F85B-4E8D-9D51-31DC9B8AA4EF}", + ["num"] = 6, + }, + [2] = { + ["CLSID"] = "{E6A6262A-CA08-4B3D-B030-E1A993B98453}", + ["num"] = 8, + }, + [3] = { + ["CLSID"] = "{444BA8AE-82A7-4345-842E-76154EFCCA46}", + ["num"] = 3, + }, + [4] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 2, + }, + [5] = { + ["CLSID"] = "{6CEB49FC-DED8-4DED-B053-E1F033FF72D3}", + ["num"] = 9, + }, + [6] = { + ["CLSID"] = "{AIS_ASQ_T50}", + ["num"] = 1, + }, + [7] = { + ["CLSID"] = "{AIS_ASQ_T50}", + ["num"] = 10, + }, + [8] = { + ["CLSID"] = "{444BA8AE-82A7-4345-842E-76154EFCCA46}", + ["num"] = 7, + }, + [9] = { + ["CLSID"] = "{444BA8AE-82A7-4345-842E-76154EFCCA46}", + ["num"] = 4, + }, + }, + ["tasks"] = { + [1] = 11, + }, + }, + }, + ["unitType"] = "F-16A", +} +return unitPayloads