diff --git a/game/factions/faction.py b/game/factions/faction.py
index f544788a..7420a66b 100644
--- a/game/factions/faction.py
+++ b/game/factions/faction.py
@@ -653,6 +653,38 @@ class Faction:
self.remove_vehicle("TR_TT")
self.remove_vehicle("Gozanti")
self.remove_ship("Destroyer_carrier")
+ # Chinese Military Assets Pack
+ if not mod_settings.chinesemilitaryassetspack:
+ self.remove_vehicle("CH_PCL181_155")
+ self.remove_vehicle("CH_PCL181_GP155")
+ self.remove_vehicle("CH_PHL11_HE")
+ self.remove_vehicle("CH_PHL11_DPICM")
+ self.remove_vehicle("CH_PHL16_FD280")
+ self.remove_vehicle("CH_PLZ07")
+ self.remove_vehicle("HQ17A")
+ self.remove_vehicle("CH_HQ22_LN")
+ self.remove_vehicle("CH_HQ22_STR")
+ self.remove_vehicle("CH_HQ22_SR")
+ self.remove_vehicle("CH_LD3000")
+ self.remove_vehicle("CH_LD3000_stationary")
+ self.remove_vehicle("PGL_625")
+ self.remove_vehicle("CH_PGZ09")
+ self.remove_vehicle("CH_PGZ95")
+ self.remove_vehicle("CH_SX2190")
+ self.remove_vehicle("ZTZ_99A2")
+ self.remove_vehicle("CH_ZBD04A-AT")
+ self.remove_vehicle("CH_ZTQ_15")
+ self.remove_vehicle("CH_ZTL11")
+ self.remove_vehicle("CH_ZBL09")
+ self.remove_vehicle("CH_CJ10")
+ self.remove_vehicle("CH_YJ12B")
+ self.remove_vehicle("CH_DF21D")
+ self.remove_ship("CH_Type022")
+ self.remove_ship("Type052D")
+ self.remove_ship("Type055")
+ self.remove_ship("CH_Type056A")
+ self.remove_ship("CH_Type054B")
+ self.remove_preset("HQ-22")
def remove_aircraft(self, name: str) -> None:
for aircraft_set in [self.aircraft, self.awacs, self.tankers]:
diff --git a/game/theater/start_generator.py b/game/theater/start_generator.py
index 3debeb96..fd012104 100644
--- a/game/theater/start_generator.py
+++ b/game/theater/start_generator.py
@@ -100,6 +100,7 @@ class ModSettings:
swedishmilitaryassetspack: bool = False
coldwarassets: bool = False
SWPack: bool = False
+ chinesemilitaryassetspack: bool = False
class GameGenerator:
diff --git a/pydcs_extensions/__init__.py b/pydcs_extensions/__init__.py
index bd52ee0c..212615a0 100644
--- a/pydcs_extensions/__init__.py
+++ b/pydcs_extensions/__init__.py
@@ -34,6 +34,7 @@ from .su57 import *
from .swedishmilitaryassetspack import *
from .coldwarassets import *
from .uh60l import *
+from .chinesemilitaryassetspack import *
def load_mods() -> None:
diff --git a/pydcs_extensions/chinesemilitaryassetspack/__init__.py b/pydcs_extensions/chinesemilitaryassetspack/__init__.py
new file mode 100644
index 00000000..dc5c77b4
--- /dev/null
+++ b/pydcs_extensions/chinesemilitaryassetspack/__init__.py
@@ -0,0 +1 @@
+from .chinesemilitaryassetspack import *
diff --git a/pydcs_extensions/chinesemilitaryassetspack/chinesemilitaryassetspack.py b/pydcs_extensions/chinesemilitaryassetspack/chinesemilitaryassetspack.py
new file mode 100644
index 00000000..7ddcd216
--- /dev/null
+++ b/pydcs_extensions/chinesemilitaryassetspack/chinesemilitaryassetspack.py
@@ -0,0 +1,313 @@
+# Requires China Military Assets for DCS by Currenthill:
+# https://www.currenthill.com/china
+#
+
+from dcs import unittype
+
+from game.modsupport import vehiclemod, shipmod, helicoptermod
+
+
+# Artillery
+@vehiclemod
+class CH_PCL181_155(unittype.VehicleType):
+ id = "CH_PCL181_155"
+ name = "[CH] PCL-181 SPG 155 HE"
+ detection_range = 0
+ threat_range = 40000
+ air_weapon_dist = 40000
+ eplrs = True
+
+
+@vehiclemod
+class CH_PCL181_GP155(unittype.VehicleType):
+ id = "CH_PCL181_GP155"
+ name = "[CH] PCL-181 SPG GP155"
+ detection_range = 0
+ threat_range = 40000
+ air_weapon_dist = 40000
+ eplrs = True
+
+
+@vehiclemod
+class CH_PHL11_HE(unittype.VehicleType):
+ id = "CH_PHL11_HE"
+ name = "[CH] PHL-11 SPMRL (HE)"
+ detection_range = 0
+ threat_range = 30000
+ air_weapon_dist = 30000
+ eplrs = True
+
+
+@vehiclemod
+class CH_PHL11_DPICM(unittype.VehicleType):
+ id = "CH_PHL11_DPICM"
+ name = "[CH] PHL-11 SPMRL (DPICM)"
+ detection_range = 0
+ threat_range = 30000
+ air_weapon_dist = 30000
+ eplrs = True
+
+
+@vehiclemod
+class CH_PHL16_FD280(unittype.VehicleType):
+ id = "CH_PHL16_FD280"
+ name = "[CH] PHL-16 SPMRL (FD280)"
+ detection_range = 0
+ threat_range = 280000
+ air_weapon_dist = 280000
+ eplrs = True
+
+
+@vehiclemod
+class CH_PLZ07(unittype.VehicleType):
+ id = "CH_PLZ07"
+ name = "[CH] PLZ-07 SPG"
+ detection_range = 8000
+ threat_range = 22000
+ air_weapon_dist = 1800
+ eplrs = True
+
+
+# Air Defense
+@vehiclemod
+class HQ17A(unittype.VehicleType):
+ id = "HQ17A"
+ name = "[CH] HQ-17A SHORAD"
+ detection_range = 45000
+ threat_range = 15000
+ air_weapon_dist = 15000
+ eplrs = True
+
+
+@vehiclemod
+class CH_HQ22_LN(unittype.VehicleType):
+ id = "CH_HQ22_LN"
+ name = "[CH] HQ-22 LN"
+ detection_range = 0
+ threat_range = 170000
+ air_weapon_dist = 170000
+ eplrs = True
+
+
+@vehiclemod
+class CH_HQ22_STR(unittype.VehicleType):
+ id = "CH_HQ22_STR"
+ name = "[CH] HQ-22 H-200 STR"
+ detection_range = 200000
+ threat_range = 0
+ air_weapon_dist = 0
+ eplrs = True
+
+
+@vehiclemod
+class CH_HQ22_SR(unittype.VehicleType):
+ id = "CH_HQ22_SR"
+ name = "[CH] HQ-22 JSG-100 SR"
+ detection_range = 240000
+ threat_range = 0
+ air_weapon_dist = 0
+
+
+@vehiclemod
+class CH_LD3000(unittype.VehicleType):
+ id = "CH_LD3000"
+ name = "[CH] LD-3000 C-RAM Mobile"
+ detection_range = 15000
+ threat_range = 3000
+ air_weapon_dist = 3000
+ eplrs = True
+
+
+@vehiclemod
+class CH_LD3000_stationary(unittype.VehicleType):
+ id = "CH_LD3000_stationary"
+ name = "[CH] LD-3000 C-RAM Stationary"
+ detection_range = 15000
+ threat_range = 3000
+ air_weapon_dist = 3000
+ eplrs = True
+
+
+@vehiclemod
+class PGL_625(unittype.VehicleType):
+ id = "PGL_625"
+ name = "[CH] PGL-625 SPAAGM"
+ detection_range = 20000
+ threat_range = 10000
+ air_weapon_dist = 10000
+ eplrs = True
+
+
+@vehiclemod
+class CH_PGZ09(unittype.VehicleType):
+ id = "CH_PGZ09"
+ name = "[CH] PGZ-09 SPAAG"
+ detection_range = 20000
+ threat_range = 4000
+ air_weapon_dist = 4000
+ eplrs = True
+
+
+@vehiclemod
+class CH_PGZ95(unittype.VehicleType):
+ id = "CH_PGZ95"
+ name = "[CH] PGZ-95 SPAAG"
+ detection_range = 11000
+ threat_range = 2500
+ air_weapon_dist = 2500
+ eplrs = True
+
+
+# Unarmed
+@vehiclemod
+class CH_SX2190(unittype.VehicleType):
+ id = "CH_SX2190"
+ name = "[CH] SX2190 Truck"
+ detection_range = 0
+ threat_range = 0
+ air_weapon_dist = 0
+
+
+# Armor
+@vehiclemod
+class ZTZ_99A2(unittype.VehicleType):
+ id = "ZTZ_99A2"
+ name = "[CH] ZTZ-99A2 MBT"
+ detection_range = 8000
+ threat_range = 5000
+ air_weapon_dist = 5000
+ eplrs = True
+
+
+@vehiclemod
+class CH_ZBD04A_AT(unittype.VehicleType):
+ id = "CH_ZBD04A-AT"
+ name = "[CH] ZBD-04A AT SPATGM"
+ detection_range = 20000
+ threat_range = 10000
+ air_weapon_dist = 10000
+ eplrs = True
+
+
+@vehiclemod
+class CH_ZTQ_15(unittype.VehicleType):
+ id = "CH_ZTQ_15"
+ name = "[CH] ZTQ-15 LT"
+ detection_range = 7000
+ threat_range = 4000
+ air_weapon_dist = 4000
+ eplrs = True
+
+
+@vehiclemod
+class CH_ZTL11(unittype.VehicleType):
+ id = "CH_ZTL11"
+ name = "[CH] ZTL-11 AFV"
+ detection_range = 7000
+ threat_range = 4000
+ air_weapon_dist = 4000
+ eplrs = True
+
+
+@vehiclemod
+class CH_ZBL09(unittype.VehicleType):
+ id = "CH_ZBL09"
+ name = "[CH] ZBL-09 IFV"
+ detection_range = 10000
+ threat_range = 3000
+ air_weapon_dist = 3000
+ eplrs = True
+
+
+# Missiles
+@vehiclemod
+class CH_CJ10(unittype.VehicleType):
+ id = "CH_CJ10"
+ name = "[CH] CJ-10 GLCM"
+ detection_range = 2000000
+ threat_range = 2000000
+ air_weapon_dist = 2000000
+ eplrs = True
+
+
+@vehiclemod
+class CH_YJ12B(unittype.VehicleType):
+ id = "CH_YJ12B"
+ name = "[CH] YJ-12B LBASM"
+ detection_range = 0
+ threat_range = 300000
+ air_weapon_dist = 300000
+ eplrs = True
+
+
+@vehiclemod
+class CH_DF21D(unittype.VehicleType):
+ id = "CH_DF21D"
+ name = "[CH] DF-21D LBASBM"
+ detection_range = 0
+ threat_range = 1000000
+ air_weapon_dist = 1000000
+ eplrs = True
+
+
+## SHIPS
+
+
+@shipmod
+class CH_Type022(unittype.ShipType):
+ id = "CH_Type022"
+ name = "[CH] Type 022 FAC"
+ plane_num = 0
+ helicopter_num = 0
+ parking = 0
+ detection_range = 100000
+ threat_range = 4000
+ air_weapon_dist = 4000
+
+
+@shipmod
+class Type052D(unittype.ShipType):
+ id = "Type052D"
+ name = "[CH] Type 052D Destroyer"
+ plane_num = 0
+ helicopter_num = 1
+ parking = 1
+ detection_range = 400000
+ threat_range = 250000
+ air_weapon_dist = 250000
+
+
+@shipmod
+class Type055(unittype.ShipType):
+ id = "Type055"
+ name = "[CH] Type 055 Destroyer"
+ plane_num = 0
+ helicopter_num = 1
+ parking = 1
+ detection_range = 500000
+ threat_range = 250000
+ air_weapon_dist = 250000
+
+
+@shipmod
+class CH_Type056A(unittype.ShipType):
+ id = "CH_Type056A"
+ name = "[CH] Type 056A Corvette"
+ plane_num = 0
+ helicopter_num = 1
+ parking = 1
+ detection_range = 160000
+ threat_range = 8000
+ air_weapon_dist = 8000
+
+
+@shipmod
+class CH_Type054B(unittype.ShipType):
+ id = "CH_Type054B"
+ name = "[CH] Type 054B Frigate"
+ plane_num = 0
+ helicopter_num = 1
+ parking = 1
+ detection_range = 300000
+ threat_range = 160000
+ air_weapon_dist = 160000
diff --git a/qt_ui/windows/newgame/QNewGameWizard.py b/qt_ui/windows/newgame/QNewGameWizard.py
index 8ad07fd5..c23753a0 100644
--- a/qt_ui/windows/newgame/QNewGameWizard.py
+++ b/qt_ui/windows/newgame/QNewGameWizard.py
@@ -123,6 +123,7 @@ class NewGameWizard(QtWidgets.QWizard):
swedishmilitaryassetspack=self.field("swedishmilitaryassetspack"),
coldwarassets=self.field("coldwarassets"),
SWPack=self.field("SWPack"),
+ chinesemilitaryassetspack=self.field("chinesemilitaryassetspack"),
)
blue_faction = self.faction_selection_page.selected_blue_faction
diff --git a/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py b/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py
index 417a132d..350fb1c6 100644
--- a/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py
+++ b/qt_ui/windows/newgame/WizardPages/QGeneratorSettings.py
@@ -158,6 +158,8 @@ class GeneratorOptions(QtWidgets.QWizardPage):
self.registerField("spanishnavypack", self.spanishnavypack)
self.irondome = QtWidgets.QCheckBox()
self.registerField("irondome", self.irondome)
+ self.chinesemilitaryassetspack = QtWidgets.QCheckBox()
+ self.registerField("chinesemilitaryassetspack", self.chinesemilitaryassetspack)
modHelpText = QtWidgets.QLabel(
"
Select the mods you have installed. If your chosen factions support them, you'll be able to use these mods in your campaign.
"
@@ -172,6 +174,15 @@ class GeneratorOptions(QtWidgets.QWizardPage):
("A-6A Intruder (v2.7.5.01)", self.a6a_intruder),
("A-7E Corsair II", self.a7e_corsair2),
("C-130J-30 Super Hercules (v6.8.2)", self.hercules),
+ ("Cold War Assets mod (v1.0)", self.coldwarassets),
+ (
+ "CurrentHill Chinese Military Assets pack (1.1.4)",
+ self.chinesemilitaryassetspack,
+ ),
+ (
+ "CurrentHill Swedish Military Assets pack (1.10)",
+ self.swedishmilitaryassetspack,
+ ),
("EA-6B Prowler (v2.9.4.102)", self.ea6b_prowler),
("F-100 Super Sabre (v2.7.18.30765 patch 20.10.22)", self.f100_supersabre),
("F-104 Starfighter (v2.7.11.222.01)", self.f104_starfighter),
@@ -186,22 +197,20 @@ class GeneratorOptions(QtWidgets.QWizardPage):
("F9F Panther (v2.8.7.101)", self.f9f_panther),
("F/A-18E/F Super Hornet AI Tanker (version 1.4)", self.fa18ef_tanker),
("F/A-18E/F/G Super Hornet (version 2.3.2)", self.fa_18efg),
- ("Cold War Assets mod (v1.0)", self.coldwarassets),
("Frenchpack (v4.9.1)", self.frenchpack),
("High Digit SAMs", self.high_digit_sams),
("IDF Assets Pack (v1.1 by IDF Mods Project)", self.irondome),
("JAS 39 Gripen (v1.8.5-beta)", self.jas39_gripen),
+ ("OH-6 Cayuse (v1.2)", self.oh_6),
+ ("OH-6 Vietnam Asset Pack (v1.0)", self.oh_6_vietnamassetpack),
("OV-10A Bronco", self.ov10a_bronco),
+ ("Saab 105/SK-60B (v1.2.1)", self.sk_60),
("Spanish Naval Assets pack (desdemicabina 3.2.0)", self.spanishnavypack),
("Star Wars Modpack 2.54+", self.SWPack),
- ("Saab 105/SK-60B (v1.2.1)", self.sk_60),
("Su-15 Flagon (v1.0)", self.su15_flagon),
("Su-30 Flanker-H (V2.7.73b)", self.su30_flanker_h),
("Su-57 Felon (build-04)", self.su57_felon),
("Super Étendard (v2.5.5)", self.super_etendard),
- ("Swedish Military Assets pack (1.10)", self.swedishmilitaryassetspack),
- ("OH-6 Cayuse (v1.2)", self.oh_6),
- ("OH-6 Vietnam Asset Pack (v1.0)", self.oh_6_vietnamassetpack),
("UH-60L Black Hawk (v1.3.1)", self.uh_60l),
]
@@ -270,3 +279,6 @@ class GeneratorOptions(QtWidgets.QWizardPage):
self.swedishmilitaryassetspack.setChecked(
s.get("swedishmilitaryassetspack", False)
)
+ self.chinesemilitaryassetspack.setChecked(
+ s.get("chinesemilitaryassetspack", False)
+ )
diff --git a/resources/factions/china_2020.json b/resources/factions/china_2020.json
new file mode 100644
index 00000000..9774f5be
--- /dev/null
+++ b/resources/factions/china_2020.json
@@ -0,0 +1,108 @@
+{
+ "country": "China",
+ "name": "China 2020",
+ "authors": "Eclipse",
+ "description": "China in the late 2010s, early 2020s.
",
+ "locales": [
+ "zh_CN"
+ ],
+ "aircrafts": [
+ "FC-1 Fierce Dragon",
+ "IL-76MD",
+ "J-11A Flanker-L",
+ "J-15 Flanker X-2",
+ "J-7B",
+ "Mi-24P Hind-F",
+ "Mi-8MTV2 Hip",
+ "Su-30MKK Flanker-G",
+ "H-6J Badger"
+ ],
+ "awacs": [
+ "KJ-2000"
+ ],
+ "tankers": [
+ "IL-78M"
+ ],
+ "frontline_units": [
+ "[CH] ZBL-09 IFV",
+ "[CH] ZBD-04A AT SPATGM",
+ "MT Type 59",
+ "Type 04A (ZBD-04A)",
+ "Type 96B (ZTZ-96B)",
+ "[CH] ZTL-11 AFV",
+ "[CH] ZTZ-99A2 MBT"
+ ],
+ "artillery_units": [
+ "[CH] PCL-181 SPG GP155",
+ "[CH] PHL-11 SPMRL (DPICM)",
+ "[CH] PHL-11 SPMRL (HE)",
+ "[CH] PHL-16 SPMRL (FD280)",
+ "[CH] PLZ-07 SPG",
+ "PLZ-05"
+ ],
+ "logistics_units": [
+ "LUV UAZ-469 Jeep",
+ "Truck Ural-375",
+ "[CH] SX2190 Truck"
+ ],
+ "infantry_units": [
+ "Infantry AK-74 Rus",
+ "MANPADS SA-18 Igla-S \"Grouse\"",
+ "Paratrooper AKS",
+ "Paratrooper RPG-16"
+ ],
+ "missiles": [
+ "[CH] DF-21D LBASBM",
+ "[CH] CJ-10 GLCM",
+ "[CH] YJ-12B LBASM"
+ ],
+ "preset_groups": [
+ "HQ-2",
+ "SA-11",
+ "HQ-7",
+ "HQ-22",
+ "Silkworm",
+ "Chinese Navy"
+ ],
+ "naval_units": [
+ "Type 052B Destroyer",
+ "Type 052C Destroyer",
+ "Type 054A Frigate",
+ "CV 1143.5 Admiral Kuznetsov",
+ "Type 093 Attack Submarine",
+ "Type 071 Amphibious Transport Dock",
+ "[CH] Type 022 FAC",
+ "[CH] Type 054B Frigate",
+ "[CH] Type 056A Corvette",
+ "[CH] Type 052D Destroyer",
+ "[CH] Type 055 Destroyer"
+ ],
+ "air_defense_units": [
+ "EWR 1L13",
+ "EWR 55G6",
+ "AAA ZU-23 Closed Emplacement",
+ "[CH] LD-3000 C-RAM Mobile",
+ "[CH] LD-3000 C-RAM Stationary",
+ "[CH] PGZ-09 SPAAG",
+ "[CH] PGZ-95 SPAAG",
+ "[CH] HQ-17A SHORAD"
+ ],
+ "carrier_names": [
+ "001 Liaoning",
+ "002 Shandong"
+ ],
+ "helicopter_carrier_names": [
+ "Kunlun Shan",
+ "Jinggang Shan",
+ "Changbai Shan",
+ "Yimeng Shan",
+ "Longhu Shan",
+ "Wuzhi Shan",
+ "Wudang Shan"
+ ],
+ "requirements": {
+ "Chinese Military Assets for DCS by Currenthill": "https://www.currenthill.com/china"
+ },
+ "has_jtac": true,
+ "jtac_unit": "WingLoong-I"
+}
\ No newline at end of file
diff --git a/resources/groups/HQ-22.yaml b/resources/groups/HQ-22.yaml
new file mode 100644
index 00000000..cfd9d4d1
--- /dev/null
+++ b/resources/groups/HQ-22.yaml
@@ -0,0 +1,9 @@
+name: HQ-22
+tasks:
+ - LORAD
+units:
+ - "[CH] HQ-22 JSG-100 SR"
+ - "[CH] HQ-22 H-200 STR"
+ - "[CH] HQ-22 LN"
+layouts:
+ - HQ-22 Battery
\ No newline at end of file
diff --git a/resources/layouts/anti_air/HQ-22_Battery.yaml b/resources/layouts/anti_air/HQ-22_Battery.yaml
new file mode 100644
index 00000000..7b29c770
--- /dev/null
+++ b/resources/layouts/anti_air/HQ-22_Battery.yaml
@@ -0,0 +1,53 @@
+name: HQ-22 Battery
+tasks:
+ - LORAD
+groups:
+ - Patriot:
+ - name: Patriot Battery 0
+ unit_count:
+ - 2
+ unit_types:
+ - CH_HQ22_SR
+ - name: Patriot Battery 1
+ unit_count:
+ - 1
+ unit_types:
+ - CH_HQ22_LN
+ - name: Patriot Battery 2
+ unit_count:
+ - 1
+ unit_types:
+ - CH_HQ22_STR
+ - name: Patriot Battery 3
+ unit_count:
+ - 1
+ unit_types:
+ - CH_HQ22_LN
+ - name: Patriot Battery 4
+ unit_count:
+ - 1
+ unit_types:
+ - CH_HQ22_LN
+ - name: Patriot Battery 5
+ unit_count:
+ - 3
+ unit_types:
+ - CH_HQ22_LN
+ - PD:
+ - name: Patriot Battery 7
+ optional: true
+ sub_task: PointDefense
+ unit_count:
+ - 1
+ - 2
+ unit_classes:
+ - SHORAD
+ - name: Patriot Battery 6
+ sub_task: AAA
+ optional: true
+ unit_count:
+ - 1
+ - 2
+ unit_classes:
+ - AAA
+layout_file: resources/layouts/anti_air/Patriot_Battery.miz
\ No newline at end of file
diff --git a/resources/ui/templates/factiontemplate_EN.j2 b/resources/ui/templates/factiontemplate_EN.j2
index 1e40e777..48bea021 100644
--- a/resources/ui/templates/factiontemplate_EN.j2
+++ b/resources/ui/templates/factiontemplate_EN.j2
@@ -1,4 +1,12 @@
Description: {{ faction.description|safe }}
+Requirements:
+
+ {% for key, value in faction.requirements.items() %}
+ - {{ key }}: {{ value }}
+ {% endfor %}
+
+
+
Author(s): {{ faction.authors }}
diff --git a/resources/units/ground_units/CH_CJ10.yaml b/resources/units/ground_units/CH_CJ10.yaml
new file mode 100644
index 00000000..472f2cae
--- /dev/null
+++ b/resources/units/ground_units/CH_CJ10.yaml
@@ -0,0 +1,4 @@
+class: Missile
+price: 0
+variants:
+ "[CH] CJ-10 GLCM": null
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_DF21D.yaml b/resources/units/ground_units/CH_DF21D.yaml
new file mode 100644
index 00000000..17971ce6
--- /dev/null
+++ b/resources/units/ground_units/CH_DF21D.yaml
@@ -0,0 +1,4 @@
+class: Missile
+price: 0
+variants:
+ "[CH] DF-21D LBASBM": null
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_HQ22_LN.yaml b/resources/units/ground_units/CH_HQ22_LN.yaml
new file mode 100644
index 00000000..cdbf141c
--- /dev/null
+++ b/resources/units/ground_units/CH_HQ22_LN.yaml
@@ -0,0 +1,11 @@
+class: Launcher
+description: "The HQ-22 (simplified Chinese: \u7ea2\u65d7\u002d\u0032\u0032; traditional
+ Chinese: \u7d05\u65d7\u002d\u0032\u0032; pinyin: \u0048\u00f3\u006e\u0067\u0020\u0051\u00ed\u002d\u0032\u0032;
+ lit. 'Red Banner-22') is a medium- to long-range semi-active radar homing/radio-command
+ guidance air defence system developed and manufactured in China."
+introduced: 2019
+manufacturer: China Aerospace Science and Industry Corporation
+origin: China
+price: 20
+variants:
+ "[CH] HQ-22 LN": {}
diff --git a/resources/units/ground_units/CH_HQ22_SR.yaml b/resources/units/ground_units/CH_HQ22_SR.yaml
new file mode 100644
index 00000000..ded78a90
--- /dev/null
+++ b/resources/units/ground_units/CH_HQ22_SR.yaml
@@ -0,0 +1,18 @@
+class: SearchRadar
+description: "The HQ-22 (simplified Chinese: \u7ea2\u65d7\u002d\u0032\u0032; traditional
+ Chinese: \u7d05\u65d7\u002d\u0032\u0032; pinyin: \u0048\u00f3\u006e\u0067\u0020\u0051\u00ed\u002d\u0032\u0032;
+ lit. 'Red Banner-22') is a medium- to long-range semi-active radar homing/radio-command
+ guidance air defence system developed and manufactured in China."
+introduced: 2019
+manufacturer: China Aerospace Science and Industry Corporation
+origin: China
+price: 40
+variants:
+ "[CH] HQ-22 JSG-100 SR": {}
+skynet_properties: # Override skynet default properties
+ can_engage_harm: true
+ # can_engage_air_weapon: true # https://github.com/walder/Skynet-IADS/tree/develop#engage-air-weapons
+ go_live_range_in_percent: 100
+ harm_detection_chance: 90
+ engagement_zone: SkynetIADSAbstractRadarElement.GO_LIVE_WHEN_IN_KILL_ZONE # https://github.com/walder/Skynet-IADS/tree/develop#engagement-zone
+ autonomous_behaviour: SkynetIADSAbstractRadarElement.AUTONOMOUS_STATE_DCS_AI # https://github.com/walder/Skynet-IADS/tree/develop#autonomous-mode-behaviour
diff --git a/resources/units/ground_units/CH_HQ22_STR.yaml b/resources/units/ground_units/CH_HQ22_STR.yaml
new file mode 100644
index 00000000..d94ba4b6
--- /dev/null
+++ b/resources/units/ground_units/CH_HQ22_STR.yaml
@@ -0,0 +1,18 @@
+class: SearchTrackRadar
+description: "The HQ-22 (simplified Chinese: \u7ea2\u65d7\u002d\u0032\u0032; traditional
+ Chinese: \u7d05\u65d7\u002d\u0032\u0032; pinyin: \u0048\u00f3\u006e\u0067\u0020\u0051\u00ed\u002d\u0032\u0032;
+ lit. 'Red Banner-22') is a medium- to long-range semi-active radar homing/radio-command
+ guidance air defence system developed and manufactured in China."
+introduced: 2019
+manufacturer: China Aerospace Science and Industry Corporation
+origin: China
+price: 30
+variants:
+ "[CH] HQ-22 H-200 STR": {}
+skynet_properties: # Override skynet default properties
+ can_engage_harm: true
+ # can_engage_air_weapon: true # https://github.com/walder/Skynet-IADS/tree/develop#engage-air-weapons
+ go_live_range_in_percent: 100
+ harm_detection_chance: 90
+ engagement_zone: SkynetIADSAbstractRadarElement.GO_LIVE_WHEN_IN_KILL_ZONE # https://github.com/walder/Skynet-IADS/tree/develop#engagement-zone
+ autonomous_behaviour: SkynetIADSAbstractRadarElement.AUTONOMOUS_STATE_DCS_AI # https://github.com/walder/Skynet-IADS/tree/develop#autonomous-mode-behaviour
diff --git a/resources/units/ground_units/CH_LD3000.yaml b/resources/units/ground_units/CH_LD3000.yaml
new file mode 100644
index 00000000..02fb8d00
--- /dev/null
+++ b/resources/units/ground_units/CH_LD3000.yaml
@@ -0,0 +1,12 @@
+class: AAA
+description: The land-based variant of Type 1130 CIWS, the LD-3000 is a Chinese eleven-barrelled
+ 30 mm Gatling gun/rotary cannon CIWS. It is mounted in an enclosed automatic turret and
+ directed by radar. The maximum rate of fire is 5800 rd/m, and the effective range is up to
+ 3 km.
+introduced: 2022
+manufacturer: 713th Research Institute
+origin: China
+price: 15
+role: Self-Propelled Anti-Aircraft Gun
+variants:
+ "[CH] LD-3000 C-RAM Mobile": {}
diff --git a/resources/units/ground_units/CH_LD3000_stationary.yaml b/resources/units/ground_units/CH_LD3000_stationary.yaml
new file mode 100644
index 00000000..5477c874
--- /dev/null
+++ b/resources/units/ground_units/CH_LD3000_stationary.yaml
@@ -0,0 +1,12 @@
+class: AAA
+description: The land-based variant of Type 1130 CIWS, the LD-3000 is a Chinese eleven-barrelled
+ 30 mm Gatling gun/rotary cannon CIWS. It is mounted in an enclosed automatic turret and
+ directed by radar. The maximum rate of fire is 5800 rd/m, and the effective range is up to
+ 3 km.
+introduced: 2022
+manufacturer: 713th Research Institute
+origin: China
+price: 10
+role: Self-Propelled Anti-Aircraft Gun
+variants:
+ "[CH] LD-3000 C-RAM Stationary": {}
diff --git a/resources/units/ground_units/CH_PCL181_155.yaml b/resources/units/ground_units/CH_PCL181_155.yaml
new file mode 100644
index 00000000..44d9e56a
--- /dev/null
+++ b/resources/units/ground_units/CH_PCL181_155.yaml
@@ -0,0 +1,11 @@
+class: Artillery
+description: The PCL-181 is a Chinese truck-mounted, 155 mm self-propelled
+ howitzer used by the People's Liberation Army Ground Force (PLAGF). This
+ is the HE variant.
+introduced: 2019
+manufacturer: Norinco
+origin: China
+price: 25
+role: Self-Propelled Gun
+variants:
+ "[CH] PCL-181 SPG 155 HE": {}
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_PCL181_GP155.yaml b/resources/units/ground_units/CH_PCL181_GP155.yaml
new file mode 100644
index 00000000..a851a20a
--- /dev/null
+++ b/resources/units/ground_units/CH_PCL181_GP155.yaml
@@ -0,0 +1,11 @@
+class: Artillery
+description: The PCL-181 is a Chinese truck-mounted, 155 mm self-propelled
+ howitzer used by the People's Liberation Army Ground Force (PLAGF).
+ This variant fires GP155 GPS guided munitions.
+introduced: 2019
+manufacturer: Norinco
+origin: China
+price: 25
+role: Self-Propelled Gun
+variants:
+ "[CH] PCL-181 SPG GP155": {}
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_PGZ09.yaml b/resources/units/ground_units/CH_PGZ09.yaml
new file mode 100644
index 00000000..5399635d
--- /dev/null
+++ b/resources/units/ground_units/CH_PGZ09.yaml
@@ -0,0 +1,13 @@
+class: AAA
+description: "The Type 09 (PLA military designation: PGZ09 – Chinese: \u0030\u0039\u5f0f\u81ea\u884c\u9ad8\u5c04\u70ae;
+ pinyin: \u0030\u0039\u0020\u0073\u0068\u00ec\u0020\u007a\u00ec\u0020\u0078\u00ed\u006e\u0067\u0020\u0067\u0101\u006f\u0073\u0068\u00e8\u0070\u00e0\u006f,
+ 'Type 09 self-propelled anti-aircraft artillery') is a Chinese self-propelled anti-aircraft
+ vehicle manufactured by Norinco. It is armed with two 35 millimeter cannons.
+ It started to gradually replace the predecessor Type 95 in 2009."
+introduced: 2009
+manufacturer: Norinco
+origin: China
+price: 15
+role: Self-Propelled Anti-Aircraft Gun
+variants:
+ "[CH] PGZ-09 SPAAG": {}
diff --git a/resources/units/ground_units/CH_PGZ95.yaml b/resources/units/ground_units/CH_PGZ95.yaml
new file mode 100644
index 00000000..895b8bd6
--- /dev/null
+++ b/resources/units/ground_units/CH_PGZ95.yaml
@@ -0,0 +1,12 @@
+class: AAA
+description: "The Type 95 (PLA military designation: PGZ95 – Chinese: \u0039\u0035\u5f0f\u81ea\u884c\u9ad8\u5c04\u70ae;
+ pinyin: \u0039\u0035\u0020\u0073\u0068\u0069\u0020\u007a\u0069\u0078\u0069\u006e\u0067\u0020\u0067\u0061\u006f\u0073\u0068\u0065\u0070\u0061\u006f,
+ 'Type 95 self-propelled anti-aircraft artillery') is a Chinese self-propelled anti-aircraft
+ vehicle. It is armed with four 25 mm caliber cannons."
+introduced: 1999
+manufacturer: Norinco
+origin: China
+price: 10
+role: Self-Propelled Anti-Aircraft Gun
+variants:
+ "[CH] PGZ-95 SPAAG": {}
diff --git a/resources/units/ground_units/CH_PHL11_DPICM.yaml b/resources/units/ground_units/CH_PHL11_DPICM.yaml
new file mode 100644
index 00000000..39ac21e6
--- /dev/null
+++ b/resources/units/ground_units/CH_PHL11_DPICM.yaml
@@ -0,0 +1,12 @@
+class: Artillery
+description: The PHL-11 is a truck-mounted self-propelled 122 mm multiple rocket launcher
+ (SPMRL) produced by Norinco for the People's Liberation Army Ground Force. It is a
+ modernised replacement for the older PHL-81. This is the DPICM variant which fires cluster
+ munitions.
+introduced: 2013
+manufacturer: Norinco
+origin: China
+price: 55
+role: Multiple-Launch Rocket System
+variants:
+ "[CH] PHL-11 SPMRL (DPICM)": {}
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_PHL11_HE.yaml b/resources/units/ground_units/CH_PHL11_HE.yaml
new file mode 100644
index 00000000..cbeb4ac8
--- /dev/null
+++ b/resources/units/ground_units/CH_PHL11_HE.yaml
@@ -0,0 +1,11 @@
+class: Artillery
+description: The PHL-11 is a truck-mounted self-propelled 122 mm multiple rocket launcher
+ (SPMRL) produced by Norinco for the People's Liberation Army Ground Force. It is a
+ modernised replacement for the older PHL-81. This is the HE variant.
+introduced: 2013
+manufacturer: Norinco
+origin: China
+price: 55
+role: Multiple-Launch Rocket System
+variants:
+ "[CH] PHL-11 SPMRL (HE)": {}
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_PHL16_FD280.yaml b/resources/units/ground_units/CH_PHL16_FD280.yaml
new file mode 100644
index 00000000..817f4072
--- /dev/null
+++ b/resources/units/ground_units/CH_PHL16_FD280.yaml
@@ -0,0 +1,10 @@
+class: Artillery
+description: The PHL-16, also known as PCL-191, is a truck-mounted self-propelled multiple
+ rocket launcher (MRL) system developed by the People's Republic of China.
+introduced: 2019
+manufacturer: People's Republic of China
+origin: China
+price: 85
+role: Multiple-Launch Rocket System
+variants:
+ "[CH] PHL-16 SPMRL (FD280)": {}
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_PLZ07.yaml b/resources/units/ground_units/CH_PLZ07.yaml
new file mode 100644
index 00000000..4b0a7a94
--- /dev/null
+++ b/resources/units/ground_units/CH_PLZ07.yaml
@@ -0,0 +1,11 @@
+class: Artillery
+description: The PLZ-07 or Type 07 is a Chinese 122 mm self-propelled artillery made by
+ the China North Industries Group Corporation (NORINCO). The PLZ-07 was developed to replace
+ the older Type 89, Type 85 and Type 70/70-1 122 mm self-propelled artillery systems.
+introduced: 2009
+manufacturer: People's Republic of China
+origin: China
+price: 25
+role: Self-Propelled Gun
+variants:
+ "[CH] PLZ-07 SPG": {}
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_SX2190.yaml b/resources/units/ground_units/CH_SX2190.yaml
new file mode 100644
index 00000000..eeba40a6
--- /dev/null
+++ b/resources/units/ground_units/CH_SX2190.yaml
@@ -0,0 +1,4 @@
+class: Logistics
+price: 1
+variants:
+ "[CH] SX2190 Truck": null
diff --git a/resources/units/ground_units/CH_YJ12B.yaml b/resources/units/ground_units/CH_YJ12B.yaml
new file mode 100644
index 00000000..7f2c4a7c
--- /dev/null
+++ b/resources/units/ground_units/CH_YJ12B.yaml
@@ -0,0 +1,4 @@
+class: Missile
+price: 0
+variants:
+ "[CH] YJ-12B LBASM": null
\ No newline at end of file
diff --git a/resources/units/ground_units/CH_ZBD04A-AT.yaml b/resources/units/ground_units/CH_ZBD04A-AT.yaml
new file mode 100644
index 00000000..ad987e10
--- /dev/null
+++ b/resources/units/ground_units/CH_ZBD04A-AT.yaml
@@ -0,0 +1,14 @@
+class: ATGM
+description: ZBD-04A's chassis works as the mobile launching platform for AFT-10 (HJ-10)
+ anti-tank missiles. Noted the AFT-10 is a specific version of the HJ-10 missile that is
+ designed for firing from vehicle launching platforms such as ZBD-04A. The sensors include
+ a thermal camera, TV camera, and a laser range finder.[21] A millimeter-wave radar system
+ is mounted at the front-right corner of the vehicle to improve all-weather operation
+ capability.
+introduced: 2021
+manufacturer: Norinco
+origin: China
+price: 12
+role: Tank Destroyer
+variants:
+ "[CH] ZBD-04A AT SPATGM": {}
diff --git a/resources/units/ground_units/CH_ZBL09.yaml b/resources/units/ground_units/CH_ZBL09.yaml
new file mode 100644
index 00000000..344ae794
--- /dev/null
+++ b/resources/units/ground_units/CH_ZBL09.yaml
@@ -0,0 +1,8 @@
+class: IFV
+introduced: 2009
+manufacturer: Norinco
+origin: China
+price: 12
+role: Infantry Fighting Vehicle
+variants:
+ "[CH] ZBL-09 IFV": {}
diff --git a/resources/units/ground_units/CH_ZTL11.yaml b/resources/units/ground_units/CH_ZTL11.yaml
new file mode 100644
index 00000000..2cc01152
--- /dev/null
+++ b/resources/units/ground_units/CH_ZTL11.yaml
@@ -0,0 +1,18 @@
+class: IFV
+description: "The Type 08 (Chinese: \u0030\u0038\u5f0f\u8f6e\u5f0f\u88c5\u7532\u8f66\u65cf;
+ pinyin: \u004c\u00ed\u006e\u0067\u0020\u0062\u0101\u0020\u0053\u0068\u00ec\u0020\u006c\u00fa\u006e\u0073\u0068\u00ec\u0020\u007a\u0068\u0075\u0101\u006e\u0067\u006a\u0069\u01ce\u0063\u0068\u0113\u0020\u007a\u00fa;
+ lit. 'Type 08 wheeled armored vehicle family') is a Chinese family of modern eight-wheeled,
+ amphibious, modular armored vehicles developed by Norinco for infantry fire support,
+ battlefield logistics, and quick reaction operations. The ZTL-11 assault vehicle is fitted
+ with ZPL-98A[11] 105 mm rifled gun with capability of launching armor piercing fin stabilized
+ discarding sabot (APFSDS), high explosive (HE), and high-explosive anti-tank (HEAT)
+ ammunitions, as well as the indigenous GP105 105 mm gun-fired laser beam riding guided
+ anti-tank missile (ATGM). Secondary weapons include QJT-88 5.8 mm coaxial machine gun and
+ QJC-88 12.7 mm roof-mounted heavy machine gun."
+introduced: 2008
+manufacturer: Norinco
+origin: China
+price: 12
+role: Infantry Fighting Vehicle
+variants:
+ "[CH] ZTL-11 AFV": {}
diff --git a/resources/units/ground_units/CH_ZTQ_15.yaml b/resources/units/ground_units/CH_ZTQ_15.yaml
new file mode 100644
index 00000000..27e693a7
--- /dev/null
+++ b/resources/units/ground_units/CH_ZTQ_15.yaml
@@ -0,0 +1,17 @@
+class: Tank
+description: "The Type 15 (Chinese: \u0031\u0035\u5f0f\u8f7b\u578b\u5766\u514b;
+ pinyin: \u0079\u012b\u0077\u01d4\u0020\u0073\u0068\u00ec\u0020\u0071\u012b\u006e\u0067\u0078\u00ed\u006e\u0067\u0020\u0074\u01ce\u006e\u006b\u00e8,
+ also designated ZTQ-15), codenamed the Black Panther (Chinese: \u9ed1\u8c79;
+ pinyin: \u0068\u0113\u0069\u0020\u0062\u00e0\u006f), is a Chinese third generation light tank
+ operated by the People's Liberation Army Ground Force, People's Liberation Army Navy
+ Marine Corps, and People's Liberation Army Air Force Airborne Corps. The tank has also been
+ exported to the Bangladesh Army. It is the effective successor to the Type 62 light tank
+ that was retired from the Chinese army in 2013. The export version of the tank is known
+ as VT-5."
+introduced: 2018
+manufacturer: Norinco
+origin: China
+price: 25
+role: Main Battle Tank
+variants:
+ "[CH] ZTZ-99A2 MBT": {}
diff --git a/resources/units/ground_units/HQ17A.yaml b/resources/units/ground_units/HQ17A.yaml
new file mode 100644
index 00000000..84da7aa0
--- /dev/null
+++ b/resources/units/ground_units/HQ17A.yaml
@@ -0,0 +1,13 @@
+class: SHORAD
+description: "The HQ-17 (simplified Chinese: \u7ea2\u65d7\u002d\u0031\u0037;
+ traditional Chinese: \u7d05\u65d7\u002d\u0031\u0037;
+ pinyin: \u0048\u00f3\u006e\u0067\u0020\u0051\u00ed\u002d\u0031\u0037; lit. 'Red Banner-17';
+ NATO reporting name: CH-SA-15) is an all-weather, low to medium altitude, short-range
+ surface-to-air missile system derived from the Tor-M1."
+introduced: 2015
+manufacturer: China Precision Machinery Import-Export Corporation
+origin: China
+price: 40
+role: Self-Propelled Anti-Aircraft System
+variants:
+ "[CH] HQ-17A SHORAD": {}
\ No newline at end of file
diff --git a/resources/units/ground_units/PGL_625.yaml b/resources/units/ground_units/PGL_625.yaml
new file mode 100644
index 00000000..ede4caf6
--- /dev/null
+++ b/resources/units/ground_units/PGL_625.yaml
@@ -0,0 +1,14 @@
+class: SHORAD
+description: Unnamed prototype vehicle featuring a 6-barrel 25 mm gatling gun and four FN-6B
+ (FN-16) for short-range air defense. code-named "625", PGL-XX was revealed under testing in
+ 2021. It uses 25x287 mm ammunition technology with upgraded radar, computer system, and
+ data-link. The 625 anti-air system will be paired with HQ-17A wheeled short-range air-defense
+ system. The Gatling gun system was deemed by PLA to be better at counter rocket, artillery,
+ and mortar missions.
+introduced: 2021
+manufacturer: Norinco
+origin: China
+price: 50
+role: Self-Propelled Surface-to-Air Missile Launcher
+variants:
+ "[CH] LD-3000 C-RAM Stationary": {}
diff --git a/resources/units/ground_units/ZTZ_99A2.yaml b/resources/units/ground_units/ZTZ_99A2.yaml
new file mode 100644
index 00000000..95163241
--- /dev/null
+++ b/resources/units/ground_units/ZTZ_99A2.yaml
@@ -0,0 +1,16 @@
+class: Tank
+description: "The Type 99 (Chinese: \u0039\u0039\u5f0f\u4e3b\u6218\u5766\u514b;
+ pinyin: \u004a\u0069\u01d4\u006a\u0069\u01d4\u0073\u0068\u00ec\u0020\u005a\u0068\u01d4\u007a\u0068\u00e0\u006e\u0020\u0054\u01ce\u006e\u006b\u00e8
+ ) or ZTZ-99 is a Chinese third generation main battle tank (MBT). The vehicle was a
+ replacement for the aging Type 88 introduced in the late 1980s. The Type 99 MBT was
+ China's first mass-produced third-generation main battle tank. Combining modular composite
+ armour and tandem-charge defeating ERA, 125 mm smoothbore gun with ATGM-capability, high
+ mobility, digital systems and optics, the Type 99 represents a shift towards rapid
+ modernization by the PLA."
+introduced: 2011
+manufacturer: Norinco
+origin: China
+price: 40
+role: Main Battle Tank
+variants:
+ "[CH] ZTZ-99A2 MBT": {}
diff --git a/resources/units/ships/CH_Type022.yaml b/resources/units/ships/CH_Type022.yaml
new file mode 100644
index 00000000..1b8388b3
--- /dev/null
+++ b/resources/units/ships/CH_Type022.yaml
@@ -0,0 +1,4 @@
+class: Destroyer
+price: 0
+variants:
+ "[CH] Type 022 FAC": null
\ No newline at end of file
diff --git a/resources/units/ships/CH_Type054B.yaml b/resources/units/ships/CH_Type054B.yaml
new file mode 100644
index 00000000..11b95179
--- /dev/null
+++ b/resources/units/ships/CH_Type054B.yaml
@@ -0,0 +1,4 @@
+class: Frigate
+price: 0
+variants:
+ "[CH] Type 054B Frigate": null
\ No newline at end of file
diff --git a/resources/units/ships/CH_Type056A.yaml b/resources/units/ships/CH_Type056A.yaml
new file mode 100644
index 00000000..5259c1a9
--- /dev/null
+++ b/resources/units/ships/CH_Type056A.yaml
@@ -0,0 +1,4 @@
+class: Destroyer
+price: 0
+variants:
+ "[CH] Type 056A Corvette": null
\ No newline at end of file
diff --git a/resources/units/ships/Type052D.yaml b/resources/units/ships/Type052D.yaml
new file mode 100644
index 00000000..95196778
--- /dev/null
+++ b/resources/units/ships/Type052D.yaml
@@ -0,0 +1,4 @@
+class: Destroyer
+price: 0
+variants:
+ "[CH] Type 052D Destroyer": null
\ No newline at end of file
diff --git a/resources/units/ships/Type055.yaml b/resources/units/ships/Type055.yaml
new file mode 100644
index 00000000..4267fd2d
--- /dev/null
+++ b/resources/units/ships/Type055.yaml
@@ -0,0 +1,4 @@
+class: Destroyer
+price: 0
+variants:
+ "[CH] Type 055 Destroyer": null
\ No newline at end of file