diff --git a/binaries/data/mods/public/simulation/templates/structures/athen_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/athen_fortress.xml
index b3dcc9fa76..d1177d1e77 100644
--- a/binaries/data/mods/public/simulation/templates/structures/athen_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/athen_fortress.xml
@@ -14,10 +14,6 @@
-
- units/athen_mechanical_siege_oxybeles_packed
- units/athen_mechanical_siege_lithobolos_packed
-
siege_attack
siege_armor
diff --git a/binaries/data/mods/public/simulation/templates/structures/athen_gymnasion.xml b/binaries/data/mods/public/simulation/templates/structures/athen_gymnasion.xml
index 7253873cfe..398b0c9a90 100644
--- a/binaries/data/mods/public/simulation/templates/structures/athen_gymnasion.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/athen_gymnasion.xml
@@ -36,8 +36,8 @@
0.7
- units/athen_champion_infantry
- units/athen_champion_ranged
+ units/{civ}_champion_infantry
+ units/{civ}_champion_ranged
diff --git a/binaries/data/mods/public/simulation/templates/structures/athen_prytaneion.xml b/binaries/data/mods/public/simulation/templates/structures/athen_prytaneion.xml
index d2523021ca..c393330cce 100644
--- a/binaries/data/mods/public/simulation/templates/structures/athen_prytaneion.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/athen_prytaneion.xml
@@ -40,9 +40,9 @@
0.7
- units/athen_hero_themistocles
- units/athen_hero_pericles
- units/athen_hero_iphicrates
+ units/{civ}_hero_themistocles
+ units/{civ}_hero_pericles
+ units/{civ}_hero_iphicrates
hellenes/special_long_walls
@@ -52,4 +52,4 @@
structures/athenians/prytaneion.xml
-
\ No newline at end of file
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/brit_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/brit_fortress.xml
index 2bb12b56b5..12b0f25dc8 100644
--- a/binaries/data/mods/public/simulation/templates/structures/brit_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/brit_fortress.xml
@@ -34,12 +34,11 @@
- units/brit_hero_boudicca
- units/brit_hero_caratacos
- units/brit_hero_cunobelin
- units/brit_champion_cavalry
- units/brit_champion_infantry
- units/brit_mechanical_siege_ram
+ units/{civ}_hero_boudicca
+ units/{civ}_hero_caratacos
+ units/{civ}_hero_cunobelin
+ units/{civ}_champion_cavalry
+ units/{civ}_champion_infantry
siege_attack
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_embassy.xml b/binaries/data/mods/public/simulation/templates/structures/cart_embassy.xml
index beac7b7c0f..5a61d41dc2 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart_embassy.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart_embassy.xml
@@ -27,13 +27,13 @@
- units/cart_infantry_swordsman_gaul_b
- units/cart_cavalry_swordsman_gaul_b
- units/cart_infantry_javelinist_iber_b
- units/cart_infantry_slinger_iber_b
- units/cart_cavalry_swordsman_iber_b
- units/cart_infantry_swordsman_ital_b
- units/cart_cavalry_spearman_ital_b
+ units/{civ}_infantry_swordsman_gaul_b
+ units/{civ}_cavalry_swordsman_gaul_b
+ units/{civ}_infantry_javelinist_iber_b
+ units/{civ}_infantry_slinger_iber_b
+ units/{civ}_cavalry_swordsman_iber_b
+ units/{civ}_infantry_swordsman_ital_b
+ units/{civ}_cavalry_spearman_ital_b
carthaginians/pair_celt_mercs_1
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_celtic.xml b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_celtic.xml
index f5690dec9a..a1442654f8 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_celtic.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_celtic.xml
@@ -27,8 +27,8 @@
- units/cart_infantry_swordsman_gaul_b
- units/cart_cavalry_swordsman_gaul_b
+ units/{civ}_infantry_swordsman_gaul_b
+ units/{civ}_cavalry_swordsman_gaul_b
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_iberian.xml b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_iberian.xml
index f1ce2906d1..cd2738fdfd 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_iberian.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_iberian.xml
@@ -20,9 +20,9 @@
- units/cart_infantry_javelinist_iber_b
- units/cart_infantry_slinger_iber_b
- units/cart_cavalry_swordsman_iber_b
+ units/{civ}_infantry_javelinist_iber_b
+ units/{civ}_infantry_slinger_iber_b
+ units/{civ}_cavalry_swordsman_iber_b
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_italiote.xml b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_italiote.xml
index 2e9799ebd8..41baa239ba 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart_embassy_italiote.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart_embassy_italiote.xml
@@ -27,8 +27,8 @@
- units/cart_infantry_swordsman_ital_b
- units/cart_cavalry_spearman_ital_b
+ units/{civ}_infantry_swordsman_ital_b
+ units/{civ}_cavalry_spearman_ital_b
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/cart_fortress.xml
index ece06a96bf..931f05638c 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart_fortress.xml
@@ -15,12 +15,10 @@
- units/cart_hero_hamilcar
- units/cart_hero_hannibal
- units/cart_hero_maharbal
- units/cart_champion_elephant
- units/cart_mechanical_siege_ballista_packed
- units/cart_mechanical_siege_oxybeles_packed
+ units/{civ}_hero_hamilcar
+ units/{civ}_hero_hannibal
+ units/{civ}_hero_maharbal
+ units/{civ}_champion_elephant
siege_attack
diff --git a/binaries/data/mods/public/simulation/templates/structures/cart_temple.xml b/binaries/data/mods/public/simulation/templates/structures/cart_temple.xml
index 9d34256049..c9add05496 100644
--- a/binaries/data/mods/public/simulation/templates/structures/cart_temple.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/cart_temple.xml
@@ -20,8 +20,8 @@
- units/cart_champion_infantry
- units/cart_champion_cavalry
+ units/{civ}_champion_infantry
+ units/{civ}_champion_cavalry
diff --git a/binaries/data/mods/public/simulation/templates/structures/gaul_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/gaul_fortress.xml
index ae0a0d5348..3c932babb7 100644
--- a/binaries/data/mods/public/simulation/templates/structures/gaul_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/gaul_fortress.xml
@@ -18,12 +18,11 @@
- units/gaul_hero_brennus
- units/gaul_hero_britomartus
- units/gaul_hero_vercingetorix
- units/gaul_champion_cavalry
- units/gaul_champion_infantry
- units/gaul_mechanical_siege_ram
+ units/{civ}_hero_brennus
+ units/{civ}_hero_britomartus
+ units/{civ}_hero_vercingetorix
+ units/{civ}_champion_cavalry
+ units/{civ}_champion_infantry
siege_attack
diff --git a/binaries/data/mods/public/simulation/templates/structures/gaul_tavern.xml b/binaries/data/mods/public/simulation/templates/structures/gaul_tavern.xml
index c9ef5cb5e5..ca25c7198e 100644
--- a/binaries/data/mods/public/simulation/templates/structures/gaul_tavern.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/gaul_tavern.xml
@@ -38,7 +38,7 @@
0.7
- units/gaul_champion_fanatic
+ units/{civ}_champion_fanatic
diff --git a/binaries/data/mods/public/simulation/templates/structures/iber_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/iber_fortress.xml
index 2fe6ec1ab0..f2db00e8e3 100644
--- a/binaries/data/mods/public/simulation/templates/structures/iber_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/iber_fortress.xml
@@ -21,12 +21,11 @@
- units/iber_hero_caros
- units/iber_hero_indibil
- units/iber_hero_viriato
- units/iber_champion_infantry
- units/iber_champion_cavalry
- units/iber_mechanical_siege_ram
+ units/{civ}_hero_caros
+ units/{civ}_hero_indibil
+ units/{civ}_hero_viriato
+ units/{civ}_champion_infantry
+ units/{civ}_champion_cavalry
siege_attack
diff --git a/binaries/data/mods/public/simulation/templates/structures/mace_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/mace_fortress.xml
index da7dd66898..4af6d894bb 100644
--- a/binaries/data/mods/public/simulation/templates/structures/mace_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/mace_fortress.xml
@@ -21,11 +21,17 @@
- units/mace_hero_philip
- units/mace_hero_alexander
- units/mace_hero_demetrius
- units/mace_champion_infantry_a
- units/mace_champion_cavalry
+ units/{civ}_hero_philip
+ units/{civ}_hero_alexander
+ units/{civ}_hero_demetrius
+ units/{civ}_champion_infantry_a
+ units/{civ}_champion_cavalry
+ -units/{civ}_mechanical_siege_ballista_packed
+ -units/{civ}_mechanical_siege_scorpio_packed
+ -units/{civ}_mechanical_siege_oxybeles_packed
+ -units/{civ}_mechanical_siege_lithobolos_packed
+ -units/{civ}_mechanical_siege_ram
+ -units/{civ}_mechanical_siege_tower
successors/upgrade_mace_silvershields
diff --git a/binaries/data/mods/public/simulation/templates/structures/mace_siege_workshop.xml b/binaries/data/mods/public/simulation/templates/structures/mace_siege_workshop.xml
index f5877d50ec..639a19e88c 100644
--- a/binaries/data/mods/public/simulation/templates/structures/mace_siege_workshop.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/mace_siege_workshop.xml
@@ -24,10 +24,12 @@
0.8
- units/mace_mechanical_siege_oxybeles_packed
- units/mace_mechanical_siege_lithobolos_packed
- units/mace_mechanical_siege_ram
- units/mace_mechanical_siege_tower
+ units/{civ}_mechanical_siege_ballista_packed
+ units/{civ}_mechanical_siege_scorpio_packed
+ units/{civ}_mechanical_siege_oxybeles_packed
+ units/{civ}_mechanical_siege_lithobolos_packed
+ units/{civ}_mechanical_siege_ram
+ units/{civ}_mechanical_siege_tower
siege_attack
diff --git a/binaries/data/mods/public/simulation/templates/structures/maur_elephant_stables.xml b/binaries/data/mods/public/simulation/templates/structures/maur_elephant_stables.xml
index d165956032..b65996b7cb 100644
--- a/binaries/data/mods/public/simulation/templates/structures/maur_elephant_stables.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/maur_elephant_stables.xml
@@ -35,9 +35,9 @@
0.7
- units/maur_support_elephant
- units/maur_elephant_archer_b
- units/maur_champion_elephant
+ units/{civ}_support_elephant
+ units/{civ}_elephant_archer_b
+ units/{civ}_champion_elephant
diff --git a/binaries/data/mods/public/simulation/templates/structures/maur_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/maur_fortress.xml
index 0dfd746d91..2c251e5f94 100644
--- a/binaries/data/mods/public/simulation/templates/structures/maur_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/maur_fortress.xml
@@ -8,12 +8,18 @@
- units/maur_hero_chanakya
- units/maur_hero_maurya
- units/maur_hero_ashoka
- units/maur_champion_infantry
- units/maur_champion_maiden
- units/maur_champion_chariot
+ units/{civ}_hero_chanakya
+ units/{civ}_hero_maurya
+ units/{civ}_hero_ashoka
+ units/{civ}_champion_infantry
+ units/{civ}_champion_maiden
+ units/{civ}_champion_chariot
+ -units/{civ}_mechanical_siege_ballista_packed
+ -units/{civ}_mechanical_siege_scorpio_packed
+ -units/{civ}_mechanical_siege_oxybeles_packed
+ -units/{civ}_mechanical_siege_lithobolos_packed
+ -units/{civ}_mechanical_siege_ram
+ -units/{civ}_mechanical_siege_tower
attack_soldiers_will
diff --git a/binaries/data/mods/public/simulation/templates/structures/pers_apadana.xml b/binaries/data/mods/public/simulation/templates/structures/pers_apadana.xml
index 1e9cda88d8..ab6f47d7b1 100644
--- a/binaries/data/mods/public/simulation/templates/structures/pers_apadana.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/pers_apadana.xml
@@ -43,10 +43,10 @@
0.8
- units/pers_hero_cyrus
- units/pers_hero_darius
- units/pers_hero_xerxes
- units/pers_champion_infantry
+ units/{civ}_hero_cyrus
+ units/{civ}_hero_darius
+ units/{civ}_hero_xerxes
+ units/{civ}_champion_infantry
persians/immortals
diff --git a/binaries/data/mods/public/simulation/templates/structures/pers_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/pers_fortress.xml
index 2d3bde4ff7..8d1a60eb52 100644
--- a/binaries/data/mods/public/simulation/templates/structures/pers_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/pers_fortress.xml
@@ -8,8 +8,7 @@
- units/pers_champion_cavalry
- units/pers_mechanical_siege_ram
+ units/{civ}_champion_cavalry
siege_attack
diff --git a/binaries/data/mods/public/simulation/templates/structures/pers_sb2.xml b/binaries/data/mods/public/simulation/templates/structures/pers_sb2.xml
index 9c4bd6acfb..cfe00a88de 100644
--- a/binaries/data/mods/public/simulation/templates/structures/pers_sb2.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/pers_sb2.xml
@@ -44,9 +44,9 @@ Train War Elephants and Kardakes mercenaries.
0.7
- units/pers_kardakes_hoplite
- units/pers_kardakes_skirmisher
- units/pers_champion_elephant
+ units/{civ}_kardakes_hoplite
+ units/{civ}_kardakes_skirmisher
+ units/{civ}_champion_elephant
diff --git a/binaries/data/mods/public/simulation/templates/structures/ptol_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/ptol_fortress.xml
index 7b3d274476..8e97775500 100644
--- a/binaries/data/mods/public/simulation/templates/structures/ptol_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/ptol_fortress.xml
@@ -14,14 +14,11 @@
- units/ptol_hero_ptolemy_I
- units/ptol_hero_ptolemy_IV
- units/ptol_hero_cleopatra
- units/ptol_champion_cavalry
- units/ptol_champion_elephant
- units/ptol_mechanical_siege_polybolos_packed
- units/ptol_mechanical_siege_lithobolos_packed
- units/ptol_mechanical_siege_tower
+ units/{civ}_hero_ptolemy_I
+ units/{civ}_hero_ptolemy_IV
+ units/{civ}_hero_cleopatra
+ units/{civ}_champion_cavalry
+ units/{civ}_champion_elephant
siege_attack
diff --git a/binaries/data/mods/public/simulation/templates/structures/rome_army_camp.xml b/binaries/data/mods/public/simulation/templates/structures/rome_army_camp.xml
index aa6fd03eda..ac90cde455 100644
--- a/binaries/data/mods/public/simulation/templates/structures/rome_army_camp.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/rome_army_camp.xml
@@ -82,13 +82,16 @@
0.7
- units/rome_infantry_swordsman_b
- units/rome_infantry_spearman_a
- units/rome_infantry_javelinist_b
- units/rome_cavalry_spearman_b
- units/rome_mechanical_siege_ballista_packed
- units/rome_mechanical_siege_scorpio_packed
- units/rome_mechanical_siege_ram
+ units/{civ}_infantry_swordsman_b
+ units/{civ}_infantry_spearman_a
+ units/{civ}_infantry_javelinist_b
+ units/{civ}_cavalry_spearman_b
+ units/{civ}_mechanical_siege_ballista_packed
+ units/{civ}_mechanical_siege_scorpio_packed
+ units/{civ}_mechanical_siege_oxybeles_packed
+ units/{civ}_mechanical_siege_lithobolos_packed
+ units/{civ}_mechanical_siege_ram
+ units/{civ}_mechanical_siege_tower
diff --git a/binaries/data/mods/public/simulation/templates/structures/rome_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/rome_fortress.xml
index b3df26af45..7f887b1ddd 100644
--- a/binaries/data/mods/public/simulation/templates/structures/rome_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/rome_fortress.xml
@@ -7,14 +7,11 @@
- units/rome_hero_marcellus
- units/rome_hero_maximus
- units/rome_hero_scipio
- units/rome_champion_infantry
- units/rome_champion_cavalry
- units/rome_mechanical_siege_ballista_packed
- units/rome_mechanical_siege_scorpio_packed
- units/rome_mechanical_siege_ram
+ units/{civ}_hero_marcellus
+ units/{civ}_hero_maximus
+ units/{civ}_hero_scipio
+ units/{civ}_champion_infantry
+ units/{civ}_champion_cavalry
siege_attack
diff --git a/binaries/data/mods/public/simulation/templates/structures/sele_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/sele_fortress.xml
index cda2ad9e00..f24353e36e 100644
--- a/binaries/data/mods/public/simulation/templates/structures/sele_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/sele_fortress.xml
@@ -15,13 +15,11 @@
- units/sele_champion_infantry_pikeman
- units/sele_champion_chariot
- units/sele_champion_infantry_swordsman
- units/sele_champion_cavalry
- units/sele_champion_elephant
- units/sele_mechanical_siege_lithobolos_packed
- units/sele_mechanical_siege_tower
+ units/{civ}_champion_infantry_pikeman
+ units/{civ}_champion_chariot
+ units/{civ}_champion_infantry_swordsman
+ units/{civ}_champion_cavalry
+ units/{civ}_champion_elephant
successors/pair_unlock_champions
diff --git a/binaries/data/mods/public/simulation/templates/structures/spart_fortress.xml b/binaries/data/mods/public/simulation/templates/structures/spart_fortress.xml
index 2b9dc8b924..d3293b7a63 100644
--- a/binaries/data/mods/public/simulation/templates/structures/spart_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/spart_fortress.xml
@@ -14,10 +14,6 @@
-
- units/spart_mechanical_siege_ram
- units/spart_mechanical_siege_oxybeles_packed
-
siege_attack
siege_armor
diff --git a/binaries/data/mods/public/simulation/templates/structures/spart_gerousia.xml b/binaries/data/mods/public/simulation/templates/structures/spart_gerousia.xml
index 23b1672d79..1b8f437427 100644
--- a/binaries/data/mods/public/simulation/templates/structures/spart_gerousia.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/spart_gerousia.xml
@@ -37,7 +37,7 @@
0.7
- units/spart_hero_leonidas
+ units/{civ}_hero_leonidas
diff --git a/binaries/data/mods/public/simulation/templates/structures/spart_syssiton.xml b/binaries/data/mods/public/simulation/templates/structures/spart_syssiton.xml
index bef3c900bb..3f56000f1e 100644
--- a/binaries/data/mods/public/simulation/templates/structures/spart_syssiton.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/spart_syssiton.xml
@@ -40,10 +40,10 @@
0.7
- units/spart_hero_leonidas
- units/spart_hero_brasidas
- units/spart_hero_agis
- units/spart_champion_infantry_spear
+ units/{civ}_hero_leonidas
+ units/{civ}_hero_brasidas
+ units/{civ}_hero_agis
+ units/{civ}_champion_infantry_spear
hellenes/spartans_agoge
diff --git a/binaries/data/mods/public/simulation/templates/template_structure_military_fortress.xml b/binaries/data/mods/public/simulation/templates/template_structure_military_fortress.xml
index bd9525e60d..080293410e 100644
--- a/binaries/data/mods/public/simulation/templates/template_structure_military_fortress.xml
+++ b/binaries/data/mods/public/simulation/templates/template_structure_military_fortress.xml
@@ -74,6 +74,14 @@
0.8
+
+ units/{civ}_mechanical_siege_ballista_packed
+ units/{civ}_mechanical_siege_scorpio_packed
+ units/{civ}_mechanical_siege_oxybeles_packed
+ units/{civ}_mechanical_siege_lithobolos_packed
+ units/{civ}_mechanical_siege_ram
+ units/{civ}_mechanical_siege_tower
+
attack_soldiers_will