Bump pydcs to support DCS 2.9.21. Add support for F-14A-135-GR Early. (#3531)

This commit is contained in:
zhexu14 2025-10-25 22:32:09 +11:00 committed by GitHub
parent 2591a2b9a8
commit 7006d370e4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
17 changed files with 426 additions and 4 deletions

View File

@ -4,7 +4,9 @@ Saves from 13.x are not compatible with 14.0.0.
## Features/Improvements ## Features/Improvements
* **[Engine]** Support for DCS 2.9.20 including MiG-29 Fulcrum (full fidelity version). * **[Engine]** Support for DCS 2.9.21.
* **[Engine]** Support for MiG-29 Fulcrum (full fidelity version).
* **[Engine]** Support for F-14A-135-GR Early.
* **[Mods]** A4EC mod version updated to 2.3. * **[Mods]** A4EC mod version updated to 2.3.
* **[UI]** Allow saving after fast forwarding manually with sim speed controls (--show-sim-speed-controls option). * **[UI]** Allow saving after fast forwarding manually with sim speed controls (--show-sim-speed-controls option).
* **[UI]** Add new option to fast forward until player is at the IP. * **[UI]** Add new option to fast forward until player is at the IP.

View File

@ -4,7 +4,7 @@ from datetime import datetime
from typing import Any, Iterable, Union from typing import Any, Iterable, Union
from dcs import Mission from dcs import Mission
from dcs.planes import AJS37, F_14B, JF_17 from dcs.planes import AJS37, F_14A_135_GR, F_14A_135_GR_Early, F_14B, JF_17
from dcs.point import MovingPoint, PointAction from dcs.point import MovingPoint, PointAction
from dcs.unitgroup import FlyingGroup from dcs.unitgroup import FlyingGroup
@ -127,5 +127,9 @@ class PydcsWaypointBuilder:
for i, t in enumerate(targets): for i, t in enumerate(targets):
if self.group.units[0].unit_type == JF_17 and i < 4: if self.group.units[0].unit_type == JF_17 and i < 4:
self.group.add_nav_target_point(t.position, "PP" + str(i + 1)) self.group.add_nav_target_point(t.position, "PP" + str(i + 1))
if self.group.units[0].unit_type == F_14B and i == 0: if (
self.group.units[0].unit_type
in [F_14A_135_GR, F_14A_135_GR_Early, F_14B]
and i == 0
):
self.group.add_nav_target_point(t.position, "ST") self.group.add_nav_target_point(t.position, "ST")

View File

@ -36,7 +36,7 @@ pre-commit==3.5.0
pydantic==2.5.2 pydantic==2.5.2
pydantic-settings==2.1.0 pydantic-settings==2.1.0
pydantic_core==2.14.5 pydantic_core==2.14.5
pydcs @ git+https://github.com/dcs-liberation/dcs@c1515358d8d1e8a5546bb2c9770e623df67a5144 pydcs @ git+https://github.com/dcs-liberation/dcs@046ed928de5d4aae1652251b87e46517ab334f6e
pyinstaller==6.0.0 pyinstaller==6.0.0
pyinstaller-hooks-contrib==2023.6 pyinstaller-hooks-contrib==2023.6
pyproj==3.6.1 pyproj==3.6.1

View File

@ -0,0 +1,344 @@
local unitPayloads = {
["name"] = "F-14A",
["payloads"] = {
[1] = {
["name"] = "CAP",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 L}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 R}",
["num"] = 9,
},
[5] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[6] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{AIM_54C_Mk47}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{AIM_54C_Mk47}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{AIM_54C_Mk47}",
["num"] = 6,
},
[10] = {
["CLSID"] = "{AIM_54C_Mk47}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 10,
},
},
[2] = {
["name"] = "CAS",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{F14-LANTIRN-TP}",
["num"] = 9,
},
[4] = {
["CLSID"] = "{PHXBRU3242_2*LAU10 LS}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[6] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{BRU-32 MK-82}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{BRU-32 MK-82}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{BRU-32 MK-82}",
["num"] = 6,
},
[10] = {
["CLSID"] = "{BRU-32 MK-82}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 10,
},
},
[3] = {
["name"] = "STRIKE",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{F14-LANTIRN-TP}",
["num"] = 9,
},
[4] = {
["CLSID"] = "{SHOULDER AIM-7MH}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[6] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{BRU-32 GBU-16}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{BRU-32 GBU-16}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{BRU-32 GBU-16}",
["num"] = 6,
},
[10] = {
["CLSID"] = "{BRU-32 GBU-16}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 10,
},
},
[4] = {
["name"] = "BAI",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{F14-LANTIRN-TP}",
["num"] = 9,
},
[4] = {
["CLSID"] = "{PHXBRU3242_2*LAU10 LS}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[6] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{BRU-32 MK-82}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{BRU-32 MK-82}",
["num"] = 4,
},
[9] = {
["CLSID"] = "{BRU-32 MK-20}",
["num"] = 6,
},
[10] = {
["CLSID"] = "{BRU-32 MK-20}",
["num"] = 5,
},
},
["tasks"] = {
[1] = 10,
},
},
[5] = {
["name"] = "ANTISHIP",
["pylons"] = {
[1] = {
["CLSID"] = "{F14-LANTIRN-TP}",
["num"] = 9,
},
[2] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[3] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
[4] = {
["CLSID"] = "{PHXBRU3242_2*LAU10 LS}",
["num"] = 2,
},
[5] = {
["CLSID"] = "{BRU-32 GBU-16}",
["num"] = 7,
},
[6] = {
["CLSID"] = "{BRU-32 GBU-16}",
["num"] = 4,
},
[7] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 6,
},
[8] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 5,
},
[9] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[10] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
},
["tasks"] = {
[1] = 10,
},
},
[6] = {
["name"] = "Liberation DEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 L}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 R}",
["num"] = 9,
},
[5] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[6] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{MAK79_MK82 4}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{MAK79_MK82 3R}",
["num"] = 6,
},
[9] = {
["CLSID"] = "{MAK79_MK82 3L}",
["num"] = 5,
},
[10] = {
["CLSID"] = "{MAK79_MK82 4}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 31,
},
},
[7] = {
["displayName"] = "Liberation SEAD",
["name"] = "Liberation SEAD",
["pylons"] = {
[1] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 10,
},
[2] = {
["CLSID"] = "{LAU-138 wtip - AIM-9M}",
["num"] = 1,
},
[3] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 L}",
["num"] = 2,
},
[4] = {
["CLSID"] = "{SHOULDER AIM_54C_Mk47 R}",
["num"] = 9,
},
[5] = {
["CLSID"] = "{F14-300gal}",
["num"] = 8,
},
[6] = {
["CLSID"] = "{F14-300gal}",
["num"] = 3,
},
[7] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 7,
},
[8] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 6,
},
[9] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 5,
},
[10] = {
["CLSID"] = "{BRU3242_ADM141}",
["num"] = 4,
},
},
["tasks"] = {
[1] = 31,
},
},
},
["unitType"] = "F-14A-135-GR-Early",
}
return unitPayloads

View File

@ -14,6 +14,7 @@ aircrafts:
- C-130 - C-130
- C-130J-30 Super Hercules - C-130J-30 Super Hercules
- F-117A Nighthawk - F-117A Nighthawk
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-14B Tomcat - F-14B Tomcat
- F-15C Eagle - F-15C Eagle

View File

@ -15,6 +15,7 @@ aircrafts:
- C-130 - C-130
- C-130J-30 Super Hercules - C-130J-30 Super Hercules
- F-117A Nighthawk - F-117A Nighthawk
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-14B Tomcat - F-14B Tomcat
- F-15C Eagle - F-15C Eagle

View File

@ -10,6 +10,7 @@ aircrafts:
- B-52H Stratofortress - B-52H Stratofortress
- C-130 - C-130
- C-130J-30 Super Hercules - C-130J-30 Super Hercules
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-14B Tomcat - F-14B Tomcat
- F-4E-45MC Phantom II - F-4E-45MC Phantom II

View File

@ -17,6 +17,7 @@ aircrafts:
- C-47 Dakota - C-47 Dakota
- CH-47D - CH-47D
- CH-53E - CH-53E
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-14B Tomcat - F-14B Tomcat
- F-15C Eagle - F-15C Eagle

View File

@ -7,6 +7,7 @@ locales:
- fa_IR - fa_IR
aircrafts: aircrafts:
- AH-1J SeaCobra - AH-1J SeaCobra
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-4E-45MC Phantom II - F-4E-45MC Phantom II
- F-5E Tiger II - F-5E Tiger II

View File

@ -6,6 +6,7 @@ description: <p>Iranian 2010s faction</p>
locales: locales:
- fa_IR - fa_IR
aircrafts: aircrafts:
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-4E-45MC Phantom II - F-4E-45MC Phantom II
- F-5E Tiger II - F-5E Tiger II

View File

@ -6,6 +6,7 @@ description: <p>US military during the Vietnam War from 1965 to 1975</p>
locales: locales:
- en_US - en_US
aircrafts: aircrafts:
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-4C Phantom II - F-4C Phantom II
- F-4B Phantom II - F-4B Phantom II

View File

@ -10,6 +10,7 @@ aircrafts:
- C-130 - C-130
- CH-47D - CH-47D
- CH-53E - CH-53E
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-4E-45MC Phantom II - F-4E-45MC Phantom II
- F-4B Phantom II - F-4B Phantom II

View File

@ -16,6 +16,7 @@ aircrafts:
- CH-47D - CH-47D
- CH-53E - CH-53E
- F-117A Nighthawk - F-117A Nighthawk
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-14B Tomcat - F-14B Tomcat
- F-15C Eagle - F-15C Eagle

View File

@ -8,6 +8,7 @@ locales:
aircrafts: aircrafts:
- AH-1W SuperCobra - AH-1W SuperCobra
- A-4E Skyhawk - A-4E Skyhawk
- F-14A Tomcat (Block 135-GR Early)
- F-14A Tomcat (Block 135-GR Late) - F-14A Tomcat (Block 135-GR Late)
- F-14B Tomcat - F-14B Tomcat
- F-4B Phantom II - F-4B Phantom II

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,62 @@
carrier_capable: true
description:
"The Grumman F-14 Tomcat is a two-crew, variable wing-geometry, maritime\
\ air superiority fighter that served with the US Navy for 32 years and continues\
\ to serve with the IRIAF in Iran. The F-14 was the US Navy's frontline fighter\
\ from the 1970s to the mid-2000s. Over the course of its long service it also became\
\ one of the US Navy\u2019s premier precision ground-attack platform and its lone\
\ airborne reconnaissance asset.\n\nNoteworthy features of the Tomcat are its swing-wing\
\ configuration, two-man crew, and the powerful AN/AWG-9 Weapons Control System\
\ (WCS) and radar. The AWG-9 allows employment of the long-range AIM-54 Phoenix\
\ air-to-air missile, and the LANTIRN targeting pod allows precision ground strikes\
\ using laser-guided bombs. The F-14 Tomcat was present in several historic events\
\ that include the two Gulf of Sidra incidents, Operations Desert Storm Iraqi Freedom,\
\ the Yugoslavian conflict, and Operation Enduring Freedom over Afghanistan. It\
\ was also immortalized in the iconic motion picture, Top Gun, and starred in several\
\ other feature films including The Final Countdown, Executive Decision, and others.\n\
\nThe Tomcat was also played a vital role in the Iran-Iraq war of the 1980s, where\
\ is flew for the Islamic Republic of Iran Air Force."
introduced: 1984
manufacturer: Grumman
origin: USA
price: 22
role: Carrier-based Air-Superiority Fighter/Fighter Bomber
max_range: 350
variants:
F-14A Tomcat (Block 135-GR Early): {}
radios:
intra_flight: AN/ARC-182
inter_flight: AN/ARC-159
channels:
type: common
namer: tomcat
intra_flight_radio_index: 2
inter_flight_radio_index: 1
default_overrides:
INSAlignmentStored: true
# ALE39Loadout: 0
# IlsChannel: 1
# KY28Key: 1
# LGB1: 8
# LGB10: 8
# LGB100: 6
# LGB1000: 1
# M61BURST: 0
# TacanBand: 0
# TacanChannel: 0
# UseLAU138: true
tasks:
BAI: 630
BARCAP: 520
CAS: 630
DEAD: 240
Escort: 520
Fighter sweep: 520
Intercept: 520
OCA/Aircraft: 630
OCA/Runway: 550
SEAD: 90
SEAD Escort: 90
Strike: 550
TARCAP: 520
hit_points: 20