5076 Commits

Author SHA1 Message Date
MetalStormGhost
765c85b639 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-25 12:39:44 +02:00
Raffson
7b9ddb1ece Formatting 2024-02-25 12:39:44 +02:00
MetalStormGhost
5fa7757ae1 Fixed not all generated flights getting inserted into Pretense data structures. 2024-02-25 12:39:43 +02:00
MetalStormGhost
064d17aab0 Improved the typing of game.pretense_air 2024-02-25 12:39:43 +02:00
MetalStormGhost
47ee0e5340 Added naval units (supply/cargo/landing ships) to Pretense scripts. 2024-02-25 12:39:43 +02:00
MetalStormGhost
6fd60d150e Raise NoParkingSlotError instead of RuntimeError when running out of ground spawns. 2024-02-25 12:39:43 +02:00
MetalStormGhost
946d578ffb Implemented generating player slots in the Pretense campaign. 2024-02-25 12:39:42 +02:00
MetalStormGhost
95bac8ec17 Run aircraft_generator.generate_packages() only once per ATO, instead of multiple times. Fixed the duplicated flights issue. 2024-02-25 12:39:42 +02:00
MetalStormGhost
91cfff58d9 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-25 12:39:42 +02:00
MetalStormGhost
585b3e74a0 Implemented a separate generate_packages() method in PretenseAircraftGenerator to prevent generating the same ATO multiple times over. 2024-02-25 12:39:41 +02:00
Raffson
4ff31ea86d Blast through errors 2024-02-25 12:39:41 +02:00
Raffson
231a8609a1 imports 2024-02-25 12:39:41 +02:00
MetalStormGhost
a6104968e8 Don't spawn flights for the other squadron in generate_pretense_aircraft(). 2024-02-25 12:39:40 +02:00
MetalStormGhost
77060031da Cleaned up some code. 2024-02-25 12:39:40 +02:00
MetalStormGhost
51a4b6603d Now generates air units for both sides at airfields. 2024-02-25 12:39:40 +02:00
MetalStormGhost
4e4eeff9ec 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-25 12:39:39 +02:00
MetalStormGhost
4b092e0763 Fixed FlightType.AEWC and FlightType.REFUELING handling in generate_pretense_aircraft(). 2024-02-25 12:39:39 +02:00
MetalStormGhost
aa641e1ff6 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-25 12:39:39 +02:00
MetalStormGhost
d0ff363bb5 Now splits the generated Pretense group role properly in create_vehicle_group(). 2024-02-25 12:39:39 +02:00
MetalStormGhost
a97b3fee99 Will now dynamically generate offmapZones for supply cargo aircraft. 2024-02-25 12:39:38 +02:00
MetalStormGhost
51462673a2 Cleaned up pretense/pretenseaircraftgenerator.py
Moved a lot of logic into proper methods and added comments for all of those methods.
2024-02-25 12:39:38 +02:00
MetalStormGhost
3c139d8038 Fixed conflicting types for cp in generate_mid_mission(). 2024-02-25 12:39:38 +02:00
MetalStormGhost
b99a719d1c Converted closest_friendly_control_points_to from returning a tuple of the two closest control points to returning a list of all in sorted order. 2024-02-25 12:39:38 +02:00
MetalStormGhost
992beb5f45 Fixed a type assignment in pretensecargo.py 2024-02-25 12:39:37 +02:00
MetalStormGhost
ae13a422c3 Calling the constructor of MissionGenerator in PretenseMissionGenerator in unnecessary, so leaving it out. 2024-02-25 12:39:37 +02:00
MetalStormGhost
0b8fa9099c Disabled the base Retribution plugin in pretenseluagenerator.py and disabled adding zones for OffMapSpawns. 2024-02-25 12:39:37 +02:00
MetalStormGhost
13e7e976c3 Now connects more isolated zones in Pretense. 2024-02-25 12:39:36 +02:00
MetalStormGhost
529841bfe4 Add CJTF factions to the coalitions in Pretense, if they're not being used in the Retribution campaign. 2024-02-25 12:39:36 +02:00
MetalStormGhost
c0e26b3b7f Fixed Pretense ground unit group id/name handling. 2024-02-25 12:39:36 +02:00
MetalStormGhost
a869c2a758 Also connect carrier and LHA control points to adjacent friendly points in Pretense. Enlarged the carrier trigger zones. 2024-02-25 12:39:35 +02:00
MetalStormGhost
60fde46249 Split the init_body.lua script in two parts to facilitate dynamic JTAC spawning. 2024-02-25 12:39:35 +02:00
MetalStormGhost
27b1c92815 PretenseFlightGroupSpawner method for spawning mid-mission flights and setting the appropriate Pretense names to them. 2024-02-25 12:39:35 +02:00
MetalStormGhost
d965f90bb4 Implemented spawning of Pretense cargo aircraft. To support that, implemented a separate flight plan called PretenseCargoFlightPlan. Also, will now automatically generate transport squadrons for factions which don't have pre-defined squadrons for it, but have access to transport aircraft. 2024-02-25 12:39:34 +02:00
MetalStormGhost
4ad87aef3e Add CJTF factions to the coalitions in Pretense, if they're not being used in the campaign. 2024-02-25 12:39:34 +02:00
MetalStormGhost
daa3259e59 Implemented dynamic outputting of JTAC units to the Pretense init script. 2024-02-25 12:39:34 +02:00
MetalStormGhost
545210b35d Split the init_body.lua script in two parts. 2024-02-25 12:39:33 +02:00
MetalStormGhost
1dd9089477 First version of the generated Pretense campaign running in-game. 2024-02-25 12:39:33 +02:00
MetalStormGhost
0faa27dca5 Now clears Retribution triggers when generating a Pretense campaign. 2024-02-25 12:39:33 +02:00
MetalStormGhost
1db232417f Fixed missing return statement with isinstance(cp, OffMapSpawn). 2024-02-25 12:39:33 +02:00
MetalStormGhost
8253d41d37 Implemented adding ground unit groups to pretense data containers. 2024-02-25 12:39:32 +02:00
MetalStormGhost
d8b0283efe Deleted pretense/pretenseflightgroupconfigurator.py since it looks like it's not needed (at least for the time being). 2024-02-25 12:39:32 +02:00
MetalStormGhost
8dfb05b0d1 Tanker and AWACS frequency, TACAN and variant handling. 2024-02-25 12:39:32 +02:00
MetalStormGhost
aad48c0b78 Dynamically generate Pretense air groups (pretense/pretenseluagenerator.py) 2024-02-25 12:39:32 +02:00
MetalStormGhost
ecf659097a Copied flightgroupconfigurator.py as a template/inheritance for generating Pretense campaigns from Retribution campaigns. 2024-02-25 12:39:31 +02:00
MetalStormGhost
15fafc20df Removed the reference to (nonexistent) NewPretenseWizard. 2024-02-25 12:39:31 +02:00
MetalStormGhost
7d0234820c First version of PretenseLuaGenerator, inherited from LuaGenerator 2024-02-25 12:39:30 +02:00
MetalStormGhost
9f271cdb91 ntentionally don't spawn anything at OffMapSpawns in Pretense 2024-02-25 12:39:30 +02:00
MetalStormGhost
7b2424c746 Added newlines to Pretense init scripts. 2024-02-25 12:39:30 +02:00
MetalStormGhost
5c9a5a5e35 Split init.lua code into three pieces. 2024-02-25 12:39:29 +02:00
MetalStormGhost
b6f0ec4da0 Copied init.lua into init_header.lua, init_body.lua and init_footer.lua
The init.lua script will be generated by
 1. injecting the header, then
 2. generating the ZoneCommand zones, then
 3. generating ConnectionManager connections, then
 4. injecting init_body.lua, then
 5. generating sypply injection and finally by
 6. injecting init_footer.lua
2024-02-25 12:39:29 +02:00