Commit Graph

1430 Commits

Author SHA1 Message Date
MetalStormGhost
0e9bbfd4e3 Merge branch 'dev' into f16i-mod-support-v2.2 2022-10-29 12:50:03 +03:00
Raffson
93328d4443 (Mod)Support for VSN A-6A Intruder v2.7.5.01
Co-Authored-By: HellAngelic <108198242+HellAngelic@users.noreply.github.com>
2022-10-27 20:36:38 +02:00
Raffson
24e9936f28 Add F-16A to CAS/ANTI-SHIP/DEAD in ai_flight_planner_db.py 2022-10-25 19:59:21 +02:00
MetalStormGhost
07de598aec Enabled SEAD Escort missions to be tasked on Naval targets and OCA/Aircraft missions on FARPs. When SEAD Escorts are tasked on Naval groups, they will also target ships. 2022-10-25 19:16:21 +02:00
Raffson
a736bf9b09 "Optimize Imports" in game & qt-ui
Adjustments made by PyCharm
2022-10-24 18:54:41 +02:00
MetalStormGhost
223d70e15f Merge remote-tracking branch 'remotes/MetalStormGhost/dcs_liberation/f16i-mod-support-v2.2' into f16i-mod-support-v2.2
Added a pydcs extension for the IDF Mods Project F-16I mod version 2.2, utilizing the pylon_injector written for the CJS Superbug mod support. Includes banner by Schmokedpancake.

The mod alters the stock F-16C aircraft, which requires a different approach when injecting the mod information to pydcs. The extension changes the F-16C parameters by setattr(F_16C_50, "fuel_max", 2585.48), adds new weapons to the existing pylons and adds five new ones (for example, the mod allows internal ECM equipment in the dorsal spine, freeing the central hardpoint for a fuel tank).

The mod also adds additional Vipers: F-16D (both with and without the dorsal spine, GE and P&W engines) and the stock F-16C Block 50 under a different DCS unit ID.

Also added a separate mod_payloads directory under resources which can be used when aircraft added by mods use the same "unitType" in the loadout lua files. The loadouts are only loaded if the mod is enabled (uses the existing inject_custom_payloads function).

The mod settings are now saved in the Liberation save inside the Faction, so loading the aircraft icons, banners, loadouts etc and the pydcs injection can be re-applied on game load.
2022-10-23 20:54:23 +03:00
MetalStormGhost
515d28313d Support F-84G Thunderjet mod v2.5.7.01 (#8)
* Implemented support for the VSN F-84G Thunderjet version 2.5.7.01
2022-10-23 19:00:11 +02:00
Raffson
7bbb07c927 Finish F-104C mod support v2.7.11.222.01 (#6)
Finished the F-104C mod support of version 2.7.11.222.01, which was included during a new export after the livery-scanner was introduced. Includes VSN_F104C banner by GLOBAL HAWK. Banner includes the official VSN logo by J.P. Ferré. Used with permission.

Co-Authored-By: MetalStormGhost <89945461+MetalStormGhost@users.noreply.github.com>
2022-10-18 21:12:31 +02:00
Dan Albert
db20ad3232 Stop using shapely's almost_equals.
The docs say it was deprecated in favor of equals_exact with an explicit
tolerance.
2022-10-16 15:00:06 +02:00
Dan Albert
6e126bd562 Send the new turn event from turn initialization.
We'll have to get smarter about this some day (since turn initialization
won't always exist), but for now we can avoid stale UI data by doing
what we've always done and refreshing the world on turn init.

Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2397.
2022-10-16 15:00:05 +02:00
Dan Albert
2ac9d6bd98 Add the git SHA to the build ID.
The build number is actually a pain to use. The git SHA is much more
useful.
2022-10-16 15:00:01 +02:00
Raffson
9ad92d26d4 Forgot check if advanced_iads is active 2022-10-16 14:49:13 +02:00
Raffson
ace3af8f50 Avoid targeting convoys if disabled 2022-10-16 12:51:21 +02:00
Dan Albert
9e5f1d08d2 Add a comment explaining a wtf in alt estimation. 2022-10-16 12:51:19 +02:00
Dan Albert
0135e40f1a Fix offshore targets for WW2 factions.
This makes the oil platform a required building so that all factions can
use it. Alternatively, we could pick a different offshore target for WW2
factions, or gracefully degrade to not generating these targets for WW2
factions. This approach seems to best match the designer's intent.

Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2322.
2022-10-16 12:51:18 +02:00
Dan Albert
9f3f9ad808 Don't allow helicopters at non-FARP FOBs.
Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2378.
2022-10-16 12:51:18 +02:00
MetalStormGhost
04a5497f3b F-4B Phantom II mod support (#4) 2022-10-15 23:07:06 +02:00
MetalStormGhost
139e42dbed Support for the F-105 Thunderchief mod
v2.7.12.23x
2022-10-15 12:57:43 +02:00
MetalStormGhost
8c905f95e3 Implemented support for the F-100 Super Sabre mod versions v2.7.18.01 & 2.7.18.30765 and patches 30.09.22 & 09.10.22. 2022-10-15 10:55:26 +02:00
Raffson
c4f20b67fe Support for C-47 2022-10-09 22:17:46 +02:00
Raffson
bcac6c4287 Skip & Log properties with 'None' as default value 2022-10-09 15:28:36 +02:00
Raffson
2be3257e3c Fix mypy error after update 2022-10-09 15:22:03 +02:00
Dan Albert
1606534862 Fix errors in log with 204 response endpoints.
FastAPI uses JsonResponse by default, which will convert the empty
response None to null. We need to forcibly use Response instead to
prevent that for No Content responses.

This didn't cause any observable issues but was polluting the log.
2022-10-09 12:46:06 +02:00
MetalStormGhost
fa2fa63cd3 Updated the IDF Mod Project F-16I mod pydcs extension to version 2.2, which now also includes the F-16D variants. Still needs aircraft .yamls, icon & banner and loadouts for F-16Ds. F-16I loadouts may also need to be updated. 2022-10-05 08:51:54 +03:00
Dan Albert
920c9b15ff Revert "Add support for the AI-only F-14A."
AI behavior with the Heatblur F-14 has been fixed, so not needed any
more.

Fixes https://github.com/dcs-liberation/dcs_liberation/issues/1927.

This reverts commit 7387c2ed8f.
2022-10-02 19:56:49 +02:00
Dan Albert
7e8f734309 Load map icons directly from DCS.
If the user's DCS directory is not configured correctly this will
degrade by not showing an icon. Otherwise (and typically) we get nicer
looking icons for each theater, and we don't have to make these for each
new map.
2022-10-02 19:56:49 +02:00
Dan Albert
868c38b782 Remove unused data.
We get TACAN, ILS, and ATC data from pydcs now. The rest of this
manually curated data is unused.
2022-10-02 19:56:48 +02:00
Dan Albert
7c7d9f7066 Get TACAN and ILS data from pydcs. 2022-10-02 19:56:48 +02:00
Dan Albert
e5074b57b8 Fix TACAN beacon type import.
The dataclass contructor will not automatically convert the int in the
JSON file to the enum type, so our enum equivalence check was not
actually working, and could result in us re-allocating a TACAN channel
that was used by the map.

Fixing this problem surfaces a latent bug, where we can't actually treat
duplicate map TACAN channels as a bug because some channels are used by
multiple airports in PG.
2022-10-02 19:56:48 +02:00
Dan Albert
ed855d26a7 Number beacon types explicitly.
auto() starts at 1 for IntEnum, so this has always been wrong.
2022-10-02 19:56:47 +02:00
Dan Albert
631ee96bbe Move beacons module.
This isn't related to the missiongenerator, and importing this file from
some places (such as runway data) will cause a circular reference when
importing the rest of the missiongenerator package.
2022-10-02 19:56:47 +02:00
Dan Albert
2c53f7952f Alter the beacon format to be keyed by ID.
ID based lookup will be used for finding ILS and TACAN beacons from the
pydcs data.
2022-10-02 19:56:47 +02:00
Dan Albert
c7705fd545 Update pydcs.
This update includes expanded runway data that lets us clean up some
code. It also include beacon IDs for runways and airfields that will let
us get ILS and TACAN info from pydcs, but that's a bigger change that
I'll land separately.
2022-10-02 19:56:46 +02:00
Raffson
d8509ef736 New performance option: front-line troops prefer roads
Co-Authored-By: MetalStormGhost <89945461+MetalStormGhost@users.noreply.github.com>
2022-10-02 19:56:45 +02:00
Raffson
a81b4ffd05 New performance option: disable convoys
Co-Authored-By: MetalStormGhost <89945461+MetalStormGhost@users.noreply.github.com>
2022-10-02 19:56:45 +02:00
Raffson
04bce081e9 Saved games folder for Retribution 2022-10-02 19:56:43 +02:00
Raffson
ee9cdd647a Improve check for 'valid white zones'
Instead of comparing to some deduced radius in case of a quad-point trigger,
use pydcs' Polygon.point_in_poly to determine if a position is located inside the zone.
2022-10-02 19:56:42 +02:00
MetalStormGhost
d14b964f1d Add fidelity for SIDC status of TGOs.
The new behavior is as follows for SAMs:

No damaged units: fully capable (green)
Damaged but still operational: present (no bar)
Not fully destroyed but inoperable: damaged (yellow)
Fully destroyed: destroyed (red)

And for all other TGOs:

Fully destroyed: destroyed (red)
Any missing units: damaged (yellow)
No missing units: present (no bar)

Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2438.
2022-09-25 14:53:42 +02:00
Dan Albert
d6bd5184b6 Speed up computation of front line positions.
Needs to be properly measured, but this has made a multi-second speedup
in turn times.
2022-09-25 14:53:41 +02:00
Dan Albert
ac49772584 Remove error handling for impossible case. 2022-09-25 14:53:41 +02:00
Dan Albert
459c8d02f9 Remove unused behavior from frontline positioning. 2022-09-25 14:53:41 +02:00
Dan Albert
197b9795f8 Make FrontLineBounds actually a bounds container. 2022-09-25 14:53:41 +02:00
Dan Albert
aeed7fd42a Clean up one frontline bounds user. 2022-09-25 14:53:29 +02:00
Raffson
9703e2452d Set version to 1.0.0 2022-09-18 15:52:42 +02:00
Dan Albert
9eb2b6e006 Remove junk from FrontLineConflictDescription. 2022-09-17 14:47:15 +02:00
Dan Albert
16fdb889a7 Split air and ground conflict descriptions. 2022-09-17 14:42:19 +02:00
Dan Albert
480dccb817 Re-disable sending landmap data for Falklands.
Still too slow.
2022-09-17 14:42:19 +02:00
Dan Albert
a9f6e3a0c3 Rename frontline vector to bounds, add a class.
This isn't actually the data that callers usually want. Most of the
callers just want the bounds. The heading and length are trivially
computed from that. Add a class to contain the result so it's easier to
refactor.
2022-09-17 14:42:19 +02:00
Dan Albert
46ddd884a2 Rename confusing front line methods/members. 2022-09-17 14:35:14 +02:00
Dan Albert
900948f7c2 Use simplified Falklands exclusion zones.
This is significantly faster on my machine. Checking it in (and
re-enabling the UI layer) to see how it affects slower machines.
2022-09-17 14:35:13 +02:00