-
Notifications
You must be signed in to change notification settings - Fork 15
Development guide
Code is written pretty badly and poorly documented, so, sorry for that in advance.
- Clone the repository
- Fetch submodules
- Verify directory links:
-
./dcsshould point to./submodules/dcs -
./resources/tools/dcsshould point to./submodules/dcs - Copy DCS loadout files from release bundle
./resources/payloads(originally they were scattered around DCS folder)
And, finally, to actually run application from source files, you would need to execute __init__.py and provide two arguments: User profile directory location (usually %UserProfile%) and application version (for the logs and save compatibility check) and --stdout (so that debug output would go into console).
-
--stdout- console output, no exception handler -
--force-stable-DCS- force usingDCSinstead ofDCS.openbeta -
--ignore-save- don't load saved game on startup
-
generate_goundobjectsmap.py- will generate enemy ground assets map fromcau|gulf_groundobjects.mizand save them to../cau|gulf_groundobjects.p. Those static groups and AA units are used to populate the territory with enemy infrastructure and as a targets in strike type of missions. Only a handful of statics are supported. -
generate_landmap.py- will generate landmap polygons fromcau|gulf_terrain.mizand save them to `../cau|gulflandmap.p". Polygons are constructed from USA units in the mission files, first being a overall landmap, and others are exclusion zones (like lakes and whatnot). Used to determine units placement (so ground vehicles won't end up in a sea or lake) -
generate_loadout_check.py- will generateloadout_check.mizmission, which would contain all supported planes in all possible configurations. Used to verify that each plane have correct ordinance -
miz_diff.py- debugging tool to compare two luamissionfiles (from.mizfiles). -
mkrelease.py- zip up everything into release bundle. Contrary to other tools must be run from the root directory
-
default_options.lua- defaultoptionsfile for missions
Strike targets (both ground assets and AA) are placed in resources/tools/cau|gulf_groundobjects.miz. They are combined into groups of the same type.
Any AA unit that will be placed on red side will work as AA placement location. Type doesn't matter, since it would be replaced with appropriate type on mission generation.
Ground assets are placed as static objects, preserving position and heading. Units of the same category will group into single strike objective, if they're no more than 2000 meters apart.