diff --git a/Custom-Factions.md b/Custom-Factions.md index d546adc..ea56b70 100644 --- a/Custom-Factions.md +++ b/Custom-Factions.md @@ -28,20 +28,14 @@ This json file should contain a json object, with the following parameters : * **frontline_units** : List of units that will fight on the frontline * **artillery_units** : List of artillery that will fight on the frontline * **infantry_units** : List of infantry units that will fight on the frontline -* **logistics_units** : List of units used for logistics (unused for now) -* **air_defenses** : List of generators used for air defense groups (See the list of possible air defenses generators in annex) -* **ewrs** : List of ewr generators to be used for the IADS (See the list of possible ewr generators in annex) -* **missiles** : List of missiles generators used for missiles groups +* **logistics_units** : List of units used for logistics +* **air_defense_units** : List of anti air units and ewrs +* **missiles** : List of missile units (not used yet) * **requirements** : List of required mods for this faction to work -* **aircraft_carrier** : List of aircraft carriers available -* **helicopter_carrier** : List of helicopter carriers available +* **preset_groups** : List of preset ForceGroups which can be used to add multiple related units at once (will be used for complex groups like SAM Systems) +* **naval_units** : List of naval units like Carriers, Destroyers or Cruisers * **carrier_names** : List of possible name for carriers (will be picked randomly if there is more than one) * **helicopter_carrier_names** : List of possible name for helicopter carriers (will be picked randomly if there is more than one) -* **navy_generators** : List of generators used for navy groups (See the Sam Generator possible choice at the end of this guide) -* **destroyers** : List of destroyers available (Will be picked randomly and used as escort for carriers) -* **cruisers** : List of cruisers available (unused for now) -* **navy_group_count** : Number of navy group to generate per control point -* **missiles_group_count** : Number of missiles group to generate per control point * **has_jtac** : Whether this faction has access to jtac * **jtac_unit** : Type of unit to use as JTAC. * **doctrine** : Either "modern" for modern doctrine, "coldwar" for coldwar doctrine, or "ww2" for WW2 doctrine. Doctrine controls the altitude of flights and other flight planner AI parameters. @@ -58,15 +52,15 @@ When changing a livery, if an aircraft is a Core DCS aircraft or module such as It is recommended, that your faction has access to all unit types, e.g. at least one tank, one IFV, one APC and so on in order for the auto purchase option for the player and the AI to work. -## Aircraft and ground unit names +## Aircraft, ground unit und naval names **New in DCS Liberation 4.0** -Ground and air units are now named by the name of the unit in Liberation rather than the name in DCS. This was done so DCS updates no longer break custom factions. Previously, if ED improved the name of a unit in DCS it would require an update to custom factions. Instead the faction files now use the Liberation names so we can prevent breakages from occurring. +Ground, naval and air units are now named by the name of the unit in Liberation rather than the name in DCS. This was done so DCS updates no longer break custom factions. Previously, if ED improved the name of a unit in DCS it would require an update to custom factions. Instead the faction files now use the Liberation names so we can prevent breakages from occurring. The names used are taken from the `variants` section of the unit info files in the `resources/units` directory. For example, `units/aircraft/FA-18C_hornet.yaml` contains the following: -``` +```yaml variants: CF-188 Hornet: {} EF-18A+ Hornet: {} @@ -75,9 +69,28 @@ variants: In this example, there are three variants of the DCS F/A-18C Hornet unit. These "variants" are **name only**. The DCS unit type will be the F/A-18C module, but the name in the Liberation UI will be whichever variant is named in the faction file. This allows a Spain faction to pretend that an EF-18A+ is available in DCS. -Ground units use the same format, but are located in `resources/units/ground_units`. +Ground units use the same format, but are located in `resources/units/ground_units`. The same applies to naval units which are defined in `resources/units/ships` -Note that this currently does not apply to ships or any section that names a generator like navy groups, SAMs, EWRs, missiles, or coastal defenses. Ships will be migrated in a future release. +## Preset Groups + +**New in DCS Liberation 6.0** + +TODO Describe the new preset groups which are located in `resources/groups` and replace the previous Generators. They will be used by adding the name from the preset group in the list `preset_groups` + +```yaml +name: Patriot # This name will be placed in the faction json +tasks: + - LORAD +units: + - SAM Patriot STR + - SAM Patriot CR (AMG AN/MRC-137) + - SAM Patriot ECS + - SAM Patriot C2 ICC + - SAM Patriot EPP-III + - SAM Patriot LN +layouts: + - Patriot Battery +``` # Example file @@ -86,175 +99,103 @@ Below is an example of a factions file : ```json { - "country": "USAF Aggressors", - "name": "USAF Aggressors", - "authors": "Khopa", - "description": "

USAF aggresors.

", + "country": "USA", + "name": "US Navy 2005", + "authors": "Fuzzle", + "description": "

A modern representation of the US Navy/Marine Corps.

", "locales": [ "en_US" ], "aircrafts": [ - "A-10A Thunderbolt II", - "A-10C Thunderbolt II (Suite 3)", - "AH-64D Apache Longbow", - "AV-8B Harrier II Night Attack", - "B-1B Lancer", - "B-52H Stratofortress", - "F-117A Nighthawk", "F-14B Tomcat", - "F-15C Eagle", - "F-15E Strike Eagle", - "F-16CM Fighting Falcon (Block 50)", "F/A-18C Hornet (Lot 20)", - "Ka-50 Hokum", + "AV-8B Harrier II Night Attack", + "AH-1W SuperCobra", + "S-3B Viking", "SH-60B Seahawk", - "Su-27 Flanker-B", "UH-1H Iroquois" ], "awacs": [ - "E-2C Hawkeye", - "E-3A" + "E-2C Hawkeye" ], "tankers": [ - "KC-130", - "KC-135 Stratotanker", - "KC-135 Stratotanker MPRS", "S-3B Tanker" ], "frontline_units": [ - "LAV-25", - "Leopard 2A4", + "M113", "M1043 HMMWV (M2 HMG)", - "M1097 Heavy HMMWV Avenger", - "M1134 Stryker ATGM (BGM-71 TOW)", + "M1045 HMMWV (BGM-71 TOW)", "M1A2 Abrams", - "M2A2 Bradley" + "LAV-25", + "M163 Vulcan Air Defense System" ], "artillery_units": [ - "M109A6 Paladin", "M270 Multiple Launch Rocket System" ], "logistics_units": [ "Truck M818 6x6" ], "infantry_units": [ + "Infantry M4", "Infantry M249", - "Infantry M4" + "MANPADS Stinger" ], - "air_defenses": [ - "AvengerGenerator", - "HawkGenerator", - "PatriotGenerator" + "preset_groups": [ + "Hawk", + "Patriot" ], - "ewrs": [ - "PatriotEwrGenerator" + "naval_units": [ + "FFG Oliver Hazard Perry", + "DDG Arleigh Burke IIa", + "CG Ticonderoga", + "LHA-1 Tarawa", + "CVN-74 John C. Stennis" + ], + "missiles": [], + "air_defense_units": [ + "SAM Hawk SR (AN/MPQ-50)", + "M163 Vulcan Air Defense System", + "M48 Chaparral" ], "requirements": {}, - "navy_generators": [ - "OliverHazardPerryGroupGenerator" + "carrier_names": [ + "CVN-71 Theodore Roosevelt", + "CVN-72 Abraham Lincoln", + "CVN-73 George Washington", + "CVN-74 John C. Stennis", + "CVN-75 Harry S. Truman" + ], + "helicopter_carrier_names": [ + "LHA-1 Tarawa", + "LHA-2 Saipan", + "LHA-3 Belleau Wood", + "LHA-4 Nassau", + "LHA-5 Peleliu" ], "has_jtac": true, "jtac_unit": "MQ-9 Reaper", + "doctrine": "modern", "liveries_overrides": { - "F/A-18C Hornet (Lot 20)": [ - "NAWDC black", - "NSAWC brown splinter", - "VFC-12" - ], - "F-15C Eagle": [ - "65th Aggressor SQN (WA) MiG", - "65th Aggressor SQN (WA) MiG", - "65th Aggressor SQN (WA) SUPER_Flanker" - ], - "F-16CM Fighting Falcon (Block 50)": [ - "64th_aggressor_squadron_ghost", - "usaf 64th aggressor sqn - shark", - "usaf 64th aggressor sqn-splinter" - ], "F-14B Tomcat": [ - "vf-74 adversary" + "VF-142 Ghostriders" + ], + "F/A-18C Hornet (Lot 20)": [ + "VMFA-251 high visibility" + ], + "AV-8B Harrier II Night Attack": [ + "VMAT-542" + ], + "AH-1W SuperCobra": [ + "Marines" + ], + "UH-1H Iroquois": [ + "US NAVY" ] } } ``` -## Annex 1 - Possible SAM/SHORAD generators - -* *HawkGenerator* -* *ZU23Generator* -* *ZU23UralGenerator* -* *ZU23UralInsurgentGenerator* -* *ZU23InsurgentGenerator* -* *ZSU23Generator* -* *VulcanGenerator* -* *LinebackerGenerator* -* *RapierGenerator* -* *AvengerGenerator* -* *GepardGenerator* -* *RolandGenerator* -* *PatriotGenerator* -* *ChaparralGenerator* -* *BoforsGenerator* -* *FlakGenerator* -* *SA2Generator* -* *SA3Generator* -* *SA5Generator* -* *SA6Generator* -* *SA8Generator* -* *SA9Generator* -* *SA10Generator* -* *SA11Generator* -* *SA13Generator* -* *SA15Generator* -* *SA19Generator* -* *HQ7Generator* -* *Flak18Generator* -* *ColdWarFlakGenerator* -* *EarlyColdWarFlakGenerator* -* *FreyaGenerator* -* *AllyWW2FlakGenerator* -* *ZSU57Generator* -* *KS19Generator* (Requires High Digit Sam Mode) -* *SA10BGenerator* (Requires High Digit Sam Mode) -* *SA12Generator* (Requires High Digit Sam Mode) -* *SA17Generator* (Requires High Digit Sam Mode) -* *SA20Generator* (Requires High Digit Sam Mode) -* *SA20BGenerator* (Requires High Digit Sam Mode) -* *SA23Generator* (Requires High Digit Sam Mode) -* *NasamBGenerator* -* *NasamCGenerator* - -## Annex 2 - Possible Navy group generators - -* *SchnellbootGroupGenerator* -* *WW2LSTGroupGenerator* -* *UBoatGroupGenerator* -* *OliverHazardPerryGroupGenerator* -* *ArleighBurkeGroupGenerator* -* *RussianNavyGroupGenerator* -* *ChineseNavyGroupGenerator* -* *GrishaGroupGenerator* -* *MolniyaGroupGenerator* -* *KiloSubGroupGenerator* -* *TangoSubGroupGenerator* -* *Type54GroupGenerator* -* *LaCombattanteIIGroupGenerator* - -## Annex 3 - Possible EWR generators - -* *BoxSpringGenerator* -* *TallRackGenerator* -* *DogEarGenerator* -* *RolandEwrGenerator* -* *FlatFaceGenerator* -* *PatriotEwrGenerator* -* *BigBirdGenerator* -* *SnowDriftGenerator* -* *StraightFlushGenerator* -* *HawkEwrGenerator* -* *TinShieldGenerator* - -## Annex 4 - Possible Aircraft +## Annex - Possible Aircraft * *A-4E Skyhawk* * *A-10A Thunderbolt II*