206 Commits

Author SHA1 Message Date
Eclipse/Druss99
31c80dfd02 refactor of previous commits
refactor to enum

typing and many other fixes

fix tests

attempt to fix some typescript

more typescript fixes

more typescript test fixes

revert all API changes

update to pydcs

mypy fixes

Use properties to check if player is blue/red/neutral

update requirements.txt

black -_-

bump pydcs and fix mypy

add opponent property

bump pydcs
2025-10-19 19:34:38 +02:00
Druss99
5d038e8247
Add support for Control Point Influence Zones (#540) 2025-08-02 18:47:55 +02:00
Drexyl
c15b4ac83f
Essex as AircraftCarrier hack (#541) 2025-07-19 18:21:33 +00:00
Raffson
052a04ca05
Properly support Essex carrier 2025-07-13 18:41:20 +02:00
Druss99
02de6d325a
Add invisible FOBs (#504)
Co-authored-by: Raffson <Raffson@users.noreply.github.com>
2025-05-18 17:50:47 +02:00
Druss99
4ef2f6c22a
Allow refueling & escort on friendly FOBs, Airfields & Carriers (#477) 2025-02-04 22:36:41 +01:00
Raffson
6965133a33
Filter "self" when ground units retreat from CP
Fixes an infinite loop in case a connection to the same CP is made in the template miz file of the campaign. It's basically wrong input, but suppose we'd have a use-case for it in the future, it would still make sense to have ground units retreat to a CP that's different from their origin...
2025-01-12 16:04:52 +01:00
Astro
4c9dba2fe5
Vietnam War Vessels Mod v0.9.0 integration (#435)
* vietnamwarvessels first batch

* Ship YAMLs

* aircraft yamls initial version, need more work

* initial helicopter yamls

* update aircraft yamls

* Added DDs Fletcher and Sullivans

* ship icons

* aircraft banners and icons

* no huts

* update py files to VWV v0.9.0

* update aircraft yamls, add vigilante

* added 2 ships for VWV v0.9.0

* mig-21mf yaml

* icons and banners additional units v0.9.0

* added VWV units to USA_1970 and Vietnam_1970 JSONs

* Revert "added VWV units to USA_1970 and Vietnam_1970 JSONs"

This reverts commit ed0b28dc36c0d9c1a45a10689a3c419bd23ff258.

* A-1H yaml update

* mig-17 yaml update

* update helicopter yamls

* extension init

* weapon injections

* icon filenames _24 added

* removed tasks 0 from yamls

* hh2d yaml fix

* added VWV v0.9.0 to factions USA and Vietnam

* added max_range to aircraft yamls

* housekeeping

* Flyable to False - not available in mod version

* minor edits

* ignore test campaign

* deleted tasks

* weapon luas blue air

* added task numbers from task.py

* weapon luas red air

* task id numbers in comment

* switched weapon lua from aim-9J to aim-9D

* removed test campaigns

* update payload luas with payload names from flighttype.py

* Changed AIM-9D to 9B, 9D does not work

* removed air assault task for HH-2D

* Cva_31 added to runway_is_operational()

* CVA-31 added to naval_units in faction jsons

* add strike and cas tasks to ra-5c

* correct typo

* Added Armed Recon as task and payload to most a/c

* ignore pre-commit-config.yaml

* pre-commit-config

* black reformat controlpoint.py

* Added tasks to Vigilante (next to Recon) containing attack subtasks, which allow it to be scheduled for missions

* added ships to UNITS_WITH_RADAR

* remove pre-commit-config from gitignore

* added red aircraft to nva_1970 faction

* fixed black's complaint (two empty lines, should be one)
2025-01-05 13:50:01 +01:00
Druss99
dd7e4c908e
Recovery tanker support (#429)
* fix conflict

* squash bugs and reuse patrol layout

* fix tanker tacan and formatting

* fix unlimited fuel option

* update pretense for tanker changes

* reuse refueling flight plan and bugfix for sunken carrier

changelog

* remove unitmap dependency

* formatting and more unit map removal

* more formatting

* typing and black

* keep tanker out of clouds

* fix if there are no clouds

* better cloud handling

* groundwork for recovery task

* remove changes to game/commander

* Finishing up recovery tankers

---------

Co-authored-by: Raffson <Raffson@users.noreply.github.com>
2024-12-23 04:39:10 +00:00
Raffson
5fdf38c663
Format with updated black 2024-10-12 17:33:01 +02:00
Raffson
3b360cfcf5
Pull up AEWC & Refueling mission types to NavalControlPoint 2024-07-27 22:58:43 +02:00
Raffson
1c9b4b2317
Remove STRIKE as mission type from FOBs 2024-07-21 22:42:32 +02:00
MetalStormGhost
07cc85f6fa
Large aircraft ground spawns (#237)
* Large aircraft ground spawns

Added the ability to add separate ground spawns for C-130 and other large aircraft to campaigns. Implemented on @holyorangejuice 's request.

Large aircraft ground spawns are added to the campaign by placing a C-130 on the ramp, just like an A-10 or AJS37 previously. Note: use the stock DCS C-130, so the campaign miz can be safely opened without the C-130 mod (or any other mod) installed. Not the C-130J player-flyable transport, not the KC-130J tanker included in the UH-60L mod etc.

Large planes (wingspan more than 40 meters, such as the C-130):
- First try spawning on large ground spawns
- Then try the regular airfield ramp spawns

Below 40 meter wingspan aircraft:
- First try spawning on regular or roadbase ground spawns
- Then try the regular airfield ramp spawns
- Then, if both of the above fail, use the large ground spawns

* Specify explicit black version 23.9.1 to fix lint error.

* Update lint.yml

---------

Co-authored-by: Raffson <Raffson@users.noreply.github.com>
2024-07-01 20:26:50 +00:00
Raffson
c22f7cbff3
Overhaul redeployment of units after base-capture(s) 2024-06-15 23:40:16 +02:00
Raffson
c09a5b68d5
Pydcs update for Phantom II
Save compat changes included
2024-05-24 21:30:48 +02:00
Raffson
d2fd7bbb4e
Configurable carriers 2024-04-07 00:12:08 +02:00
Raffson
bcf8ee9d42
Fine-tune release of parking slots 2024-03-03 12:51:27 +01:00
Raffson
2fdc9bbb2d
Free parking slots when passing turn 2024-03-03 00:01:27 +01:00
Raffson
0edcd31367
Fix desync wrt off-map flights 2024-01-28 19:20:34 +01:00
Raffson
bc26eb3f5e
Fix naval aircraft not always returning to carrier 2024-01-21 13:36:38 +01:00
Dan Albert
59673e7911
Convert TOTs to datetime.
https://github.com/dcs-liberation/dcs_liberation/issues/1680
2023-10-07 21:09:25 +02:00
Nosajthedevil
313d8f5065
Add support for ARA Veinticinco de Mayo.
Includes an Argentina 1982 faction for testing purposes, although it's
sparse because of a lack of assets in DCS.

Note that the carrier is mispelled as the Vienticinco in the game.

Includes prerequisite pydcs update.

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

yaml to json
2023-10-07 15:52:14 +02:00
Dan Albert
177f357492
Pre-allocate laser codes for FLOTs and flights. 2023-10-07 14:06:12 +02:00
Dan Albert
7303c8fa20
Add cheats for destroying and repairing runways. 2023-10-01 19:26:23 +02:00
Raffson
e8929467e0
Consolidate capture radius 2023-09-23 19:38:48 +02:00
Raffson
e341599a11
Account for parking-slot size during retreat
Fix #129
2023-09-09 13:20:56 +02:00
Raffson
e4cb0f7c28
Release parking slots when capture occurs 2023-09-02 22:37:29 +02:00
Raffson
789806637c
Improve escort logic for helicopters
Babysteps #88
2023-08-15 21:50:20 +02:00
Raffson
2ec187bc9c
Fixing OCA-bug against FOBs
OCA Aircraft should be properly allowed against FOBs given Ghosti's roadbases
2023-07-05 23:29:48 +02:00
MetalStormGhost
e273e93012
Roadbase and ground spawn support (#132)
* Roadbase and ground spawn support

Implemented support for roadbases and ground spawn slots at airfields and FOBs. The ground spawn slots can be inserted in campaigns by placing either an A-10A or an AJS37 at a runway or ramp. This will cause an invisible FARP, an ammo dump and a fuel dump to be placed (behind the slot in case of A-10A, to the side in case of AJS37) in the generated campaigns. The ground spawn slot can be used by human controlled aircraft in generated missions. Also allowed the use of the four-slot FARP and the single helipad in campaigns, in addition to the invisible FARP. The first waypoint of the placed aircraft will be the center of a Remove Statics trigger zone (which might or might not work in multiplayer due to a DCS limitation).

Also implemented three new options in settings:
 - AI fixed-wing aircraft can use roadbases / bases with only ground spawns
   - This setting will allow the AI to use the roadbases for flights and transfers. AI flights will air-start from these bases, since the AI in DCS is not currently able to take off from ground spawns.
 - Spawn trucks at ground spawns in airbases instead of FARP statics
 - Spawn trucks at ground spawns in roadbases instead of FARP statics
   - These settings will replace the FARP statics with refueler and ammo trucks at roadbases. Enabling them might have a negative performance impact.

* Modified calculate_parking_slots() so it now takes into account also helicopter slots on FARPs and also ground start slots (but only if the aircraft is flyable or the "AI fixed-wing aircraft can use roadbases / bases with only ground spawns" option is enabled in settings).

* Improved the way parking slots are communicated on the basemenu window.

* Refactored helipad and ground spawn appends to static methods _add_helipad and _add_ground_spawn in mizcampaignloader.py
Added missing changelog entries.
Fixed tgogenerator.py imports.
Cleaned up ParkingType() construction.

* Added test_control_point_parking for testing that the correct number of parking slots are returned for control point in test_controlpoint.py

* Added test_parking_type_from_squadron to test the correct ParkingType object is returned for a squadron of Viggens in test_controlpoint.py

* Added test_parking_type_from_aircraft to test the correct ParkingType object is returned for Viggen aircraft type in test_controlpoint.py

---------

Co-authored-by: Raffson <Raffson@users.noreply.github.com>
2023-06-19 00:02:08 +03:00
Raffson
45b8757593
Support for convoy "spawn-route" in campaign design
Resolves #91

'Assault On Damascus' was revamped using this new technique
2023-06-15 01:47:08 +02:00
Raffson
055519411b
Apparently stances use the connected CP's ID -_- 2023-06-05 21:09:38 +02:00
Raffson
7582040d41
Allow harriers to operate from FOBs/FARPs
Resolve #109
2023-05-28 21:05:17 +02:00
Raffson
a46e32cdf1
Add Spanish Naval Assets pack v3.2.0 by desdemicabina
Resolves #119
2023-05-20 20:17:54 +02:00
Dan Albert
8ed843a9cf
Move and split up weather.py.
This is getting out of hand, and I'm about to make it worse.
2023-05-18 13:31:26 +02:00
zhexu14
790d08fa13
enable AEWC missions on FOBs 2023-05-14 17:30:20 +02:00
Raffson
aaa06a5e88
Fix possible conficts in runway data
In case 2 carriers are present and have the same name, the kneeboard information gets screwed up...
2023-03-12 14:49:40 +01:00
Dan Albert
86672d882e
Don't generate runway data for heliports.
Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2710.
2023-02-06 20:39:23 +01:00
Raffson
531625ff08
Designated CTLD zones for ControlPoints (AB/FOB/FARP)
Resolves #46
2023-01-21 00:24:42 +01:00
Raffson
88f984b0a8
Configurable RF/TCN/ICLS/LINK4 with UI feedback
Resolves #70

Freq/Channel will turn orange when double booked.
Freq will turn red if GUARD freq was assigned.
2023-01-17 18:32:20 +01:00
MetalStormGhost
8c9f07643f
Add some South Atlantic naval assets (#23)
- Unit yamls for several ships and added some new ones to uk_1990.json
- 2 new layouts: Aircraft Carrier / LHA with Frigate escorts
- Add "HMS Invincible" as Control Point
2022-11-26 21:01:16 +01: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
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
da04abf53a
Fix zombie carrier
Fixed (zombie) carrier killed in state.json but always respawning in-game, issue #2405. GenericCarrierGenerator.generate() will now generate the ship group with an array that only contains alive ship units, just like GroundObjectGenerator.generate() has previously done.

Carrier groups will now also show up as destroyed/damaged on the map when the carrier is sunk.
2022-09-17 14:33:01 +02:00
MetalStormGhost
d08adc2842
Add new performance option: Maximum frontline unit supply per CP 2022-09-04 14:06:07 +02:00
Raffson
48938fc529
Dan's massive refactor
Squashing 8 commits by DanAlbert:

- Track theater in ControlPoint.
Simplifies finding the owning theater of a control point. Not used yet.

- Clean some cruft out of FlightPlanBuilder.
- Clean up silly some exception handling.
- Move FlightPlan instantiation into the builder.
I'm working on moving the builder to be owned by the Flight, which will simplify callers that need to create (or recreate) flight plans for a flight.

- Simplify IBuilder constructor.
We have access to the theater via the flight's departure airbase now.

- Move FlightPlan creation into Flight.
For now this is just a callsite cleanup. Later, this will make it easier
to separate unscheduled and scheduled flights into different classes without complicating the layout/scheduling.

- Remove superfluous constructors.
- Remove unused Package field.
2022-08-24 19:25:30 +02:00
Raffson
244415b721
PBO: IADS
Finishes/Fixes part of advanced IADS in back-end
2022-08-14 15:26:40 +02:00
Raffson
27dff95df5
Handle IADS updates properly.
This adds the missing events in the backend, and handles them properly in the front end.
2022-06-29 18:58:49 -07:00
Raffson
da90a40bc4
Push full front line information in the event stream.
https://github.com/dcs-liberation/dcs_liberation/issues/2263
2022-06-25 14:13:10 -07:00