5043 Commits

Author SHA1 Message Date
MetalStormGhost
09362cade4 Removed a non-functional option from the settings. 2024-02-06 10:59:22 +02:00
MetalStormGhost
85cec06098 Updated the Pretense script to version 1.3.8 - 3 Dec 2023 and MIST to version 4.5.122. 2024-02-06 10:59:21 +02:00
MetalStormGhost
4c201f25ba Will now correctly generate Pretense campaigns with CJTF factions. 2024-02-06 10:59:21 +02:00
MetalStormGhost
de0802a3c2 Implemented new options in settings:
- Pretense: Extra friendly zone connections - Add connections from each zone to this many closest friendly zones, which don't have an existing supply route defined in the campaign.
- Number of cargo planes per side
- Number of AI SEAD flights per control point / zone
- Number of AI CAS flights per control point / zone
- Number of AI BAI flights per control point / zone
- Number of AI Strike flights per control point / zone
- Number of AI BARCAP flights per control point / zone
- Number of AI aircraft per flight
- Number of player flights per aircraft type at each base
- Number of AI cargo planes per side

Implemented CAS helo mission handling for Pretense. Implemented separate pretense_air_groups container for storing/referencing Flight objects. Tweaked the supply costs of SAM sites and Command centers. Will no longer generate player air starts at roadbases either. Restored the missing DEAD flights to Pretense. Removed spawning of frontline units and moved the JTAC spawning to pretensemissiongenerator.py
2024-02-06 10:59:21 +02:00
MetalStormGhost
7908858433 Updated pretense_compiled.lua to version 1.3.6.
Implemented Pretense settings in pretense_compiled.lua
Added new function moveOffRoadToPointAndAssault() to enable assault groups to drive off-road and thus avoid some of the bridges where they might get stuck.
2024-02-06 10:59:20 +02:00
MetalStormGhost
595c468ab2 Restored Retribution scripts and triggers to Pretense campaigns. Pretense progress can now be translated back to Retribution. Moved the trigger clearing from pretenseluagenerator.py to pretensemissiongenerator.py
keepActive is now only enabled for airbases and carriers/LHAs, for performance reasons.
2024-02-06 10:59:20 +02:00
MetalStormGhost
87975b9aad Implemented a Pretense settings page. 2024-02-06 10:59:19 +02:00
MetalStormGhost
b508ef9aec Reduced the number of cargo planes to 2 per side. 2024-02-06 10:58:45 +02:00
MetalStormGhost
18a421f78e Fixed the bug of not generating opposing force ground unit groups at Pretense zones. Added the country name to ground vehicle group names to avoid duplicates. 2024-02-06 10:58:44 +02:00
MetalStormGhost
2b5c415159 Implemented generating runway zones at airports in Pretense. 2024-02-06 10:58:44 +02:00
MetalStormGhost
a3575995bd Restored compatibility of the Pretense generator after the timedelta -> datetime change and other changes caused by the Liberation merge/sync. 2024-02-06 10:58:44 +02:00
MetalStormGhost
04c32073aa In the event of too many channel users, fail gracefully by reusing a random channel instead of always the previous one. 2024-02-06 10:58:44 +02:00
MetalStormGhost
4f742b51f7 Moved SAM site presets from presets.defenses.sam to presets.defenses.red/blue 2024-02-06 10:58:43 +02:00
Raffson
e7b84e18d1 Fix errors due to LaserCodeRegistry move 2024-02-06 10:58:43 +02:00
MetalStormGhost
6c2e14c6d9 Implemented generating amphibious units for Pretense unit groups. Amphibious units are selected out of a pre-defined list. Units which the faction has access to are preferred, but certain default unit types are selected as a fall-back to ensure that all the generated units can swim. 2024-02-06 10:58:43 +02:00
MetalStormGhost
dc504005a1 Added new icons and a separate button which will point to the Pretense/Foothold Discord. 2024-02-06 10:58:42 +02:00
MetalStormGhost
359a579e65 Fixed a bug in SHORAD and SAM generation. 2024-02-06 10:58:42 +02:00
MetalStormGhost
473e70c44b Implemented SAM sites as products of a Command Center at a control point / zone, if the Retribution campaign has the corresponding SAM site there. The SAM site presets are still static, I might make them dynamic in the future. 2024-02-06 10:58:41 +02:00
MetalStormGhost
9be06d9601 Fixed a bug in generate_pretense_zone_connection(). 2024-02-06 10:58:41 +02:00
MetalStormGhost
9edb4ecc45 Implemented a list of units which will be removed from Pretense ground assault groups due to pathfinding problems. The units will just remain still instead of advancing. Also added one tank to each group and increased the maximum size of the groups to 5. Removed artillery units from the groups, similarly due to pathfinding problems. 2024-02-06 10:58:41 +02:00
MetalStormGhost
ffac036266 Implemented spawning of ship statics/units at naval control points instead of land structures or SHORAD sites. 2024-02-06 10:58:40 +02:00
MetalStormGhost
687ae88685 Implemented a static method for creating the Pretense zone connections and to avoid duplicate connections. 2024-02-06 10:58:40 +02:00
MetalStormGhost
4d8031ef96 Pretense SEAD missions will now also target AAA. Also incorporates the fix to fullBuild():
Dzsekeb — 03/09/2023 11:50
add the highlighted line to the fullbuild function
https://discord.com/channels/959044877470027848/1031459721313517578/1147815809075392604
2024-02-06 10:58:40 +02:00
MetalStormGhost
a60d1dce19 Pretense SEAD flights will use the SEAD Sweep loadout, when available. 2024-02-06 10:58:39 +02:00
MetalStormGhost
d1b8e20fde Replaced the air defence Command Center with a bunker for SHORADs. Will use the Command Center in the future for medium/long range SAMs. 2024-02-06 10:58:39 +02:00
MetalStormGhost
9d9740cdb3 Added missing generation of AI BAI flights. Player flight groups are now generated as single-ship groups to support the Pretense missions for all players. Moved repetitive code in PretenseFlightGroupSpawner to insert_into_pretense() method. Disabled spawning of air assault statics by PretenseFlightGroupConfigurator since they are unnecessary in Pretense. 2024-02-06 10:58:39 +02:00
MetalStormGhost
bd4e2d7189 Copied flightgroupconfigurator.py as a template/inheritance for generating Pretense campaigns from Retribution campaigns. 2024-02-06 10:58:38 +02:00
MetalStormGhost
8f883d51d7 Aircraft squadrons are now products of the Hangar, instead of the air defence Command Center. 2024-02-06 10:58:38 +02:00
MetalStormGhost
fbbc2536a1 Now generates one transport helicopter squadron for each control point which can operate one. Also implemented generating several Pretense cargo plane squadrons, defined by PRETENSE_AI_CARGO_PLANES_PER_SIDE. Cleaned up PretenseMissionGenerator.generate_air_units() a bit. 2024-02-06 10:58:38 +02:00
Raffson
6f4a12658d Formatting 2024-02-06 10:58:38 +02:00
MetalStormGhost
1bcecd5b3a Fixed not all generated flights getting inserted into Pretense data structures. 2024-02-06 10:58:37 +02:00
MetalStormGhost
7653866ddb Improved the typing of game.pretense_air 2024-02-06 10:58:37 +02:00
MetalStormGhost
ecaa68f32a Added naval units (supply/cargo/landing ships) to Pretense scripts. 2024-02-06 10:58:37 +02:00
MetalStormGhost
bd0deed16a Raise NoParkingSlotError instead of RuntimeError when running out of ground spawns. 2024-02-06 10:58:36 +02:00
MetalStormGhost
d890ef0808 Implemented generating player slots in the Pretense campaign. 2024-02-06 10:58:36 +02:00
MetalStormGhost
8520764308 Run aircraft_generator.generate_packages() only once per ATO, instead of multiple times. Fixed the duplicated flights issue. 2024-02-06 10:58:36 +02:00
MetalStormGhost
1e3f6baceb Changed tanker_tacan from "N/A" to 0.0 when the tanker is not compatible with TACAN, in order to avoid mission script errors. 2024-02-06 10:58:36 +02:00
MetalStormGhost
00bcd547d3 Implemented a separate generate_packages() method in PretenseAircraftGenerator to prevent generating the same ATO multiple times over. 2024-02-06 10:58:35 +02:00
Raffson
a30fb0f368 Blast through errors 2024-02-06 10:58:35 +02:00
Raffson
087a38d105 imports 2024-02-06 10:58:35 +02:00
MetalStormGhost
bc92a2ade3 Don't spawn flights for the other squadron in generate_pretense_aircraft(). 2024-02-06 10:58:34 +02:00
MetalStormGhost
bc27dc4621 Cleaned up some code. 2024-02-06 10:58:34 +02:00
MetalStormGhost
94c1455249 Now generates air units for both sides at airfields. 2024-02-06 10:58:34 +02:00
MetalStormGhost
4be122e11a Split the Pretense zone definition generation into separate methods: generate_pretense_zone_land() for land control points and generate_pretense_zone_sea() for carriers/LHAs. 2024-02-06 10:58:34 +02:00
MetalStormGhost
f7c6f14220 Fixed FlightType.AEWC and FlightType.REFUELING handling in generate_pretense_aircraft(). 2024-02-06 10:58:33 +02:00
MetalStormGhost
c7ec3283bd Added configuration constants for flights generated for Pretense. Fixed a bug which caused only one squadron per CP to be generated. Will now not generate Pretense cargo flights from Retribution off-map spawns, but instead will generate own air spawn points for them. Added a helper function initialize_pretense_data_structures(). 2024-02-06 10:58:33 +02:00
MetalStormGhost
1d6c8a2453 Now splits the generated Pretense group role properly in create_vehicle_group(). 2024-02-06 10:58:33 +02:00
MetalStormGhost
730b982247 Will now dynamically generate offmapZones for supply cargo aircraft. 2024-02-06 10:58:33 +02:00
MetalStormGhost
8aea905640 Cleaned up pretense/pretenseaircraftgenerator.py
Moved a lot of logic into proper methods and added comments for all of those methods.
2024-02-06 10:58:32 +02:00
MetalStormGhost
3809e28a6a Fixed conflicting types for cp in generate_mid_mission(). 2024-02-06 10:58:32 +02:00