diff --git a/binaries/data/mods/public/globalscripts/Templates.js b/binaries/data/mods/public/globalscripts/Templates.js
index 84669ed07d..e50cbe42ce 100644
--- a/binaries/data/mods/public/globalscripts/Templates.js
+++ b/binaries/data/mods/public/globalscripts/Templates.js
@@ -247,6 +247,13 @@ function GetTemplateDataHelper(template, player, auraTemplates)
ret.speed.run = func("UnitMotion/Run/Speed", +template.UnitMotion.Run.Speed, player, template);
}
+ if (template.ProductionQueue)
+ {
+ ret.techCostMultiplier = {};
+ for (let res in template.ProductionQueue.TechCostMultiplier)
+ ret.techCostMultiplier[res] = func("ProductionQueue/TechCostMultiplier/"+res, +template.ProductionQueue.TechCostMultiplier[res], player, template);
+ }
+
if (template.Trader)
{
ret.trader = {
diff --git a/binaries/data/mods/public/gui/session/selection_panels.js b/binaries/data/mods/public/gui/session/selection_panels.js
index 49333c2f14..9e30858a9d 100644
--- a/binaries/data/mods/public/gui/session/selection_panels.js
+++ b/binaries/data/mods/public/gui/session/selection_panels.js
@@ -804,6 +804,11 @@ g_SelectionPanels.Research = {
// abort if no template found for any of the techs
if (data.template.some(v => !v))
return false;
+
+ for (let template of data.template)
+ for (let res in template.cost)
+ template.cost[res] *= data.unitEntState.production.techCostMultiplier[res];
+
// index one row below
var shiftedIndex = data.i + data.rowLength;
data.positions = data.item.pair ? [data.i, shiftedIndex] : [shiftedIndex];
diff --git a/binaries/data/mods/public/gui/structree/draw.js b/binaries/data/mods/public/gui/structree/draw.js
index bdecb9ae4b..df48736a13 100644
--- a/binaries/data/mods/public/gui/structree/draw.js
+++ b/binaries/data/mods/public/gui/structree/draw.js
@@ -70,7 +70,10 @@ function draw()
{
for (let prod of stru.production.technology[prod_pha])
{
- prod = (depath(prod).slice(0,5) == "phase") ? g_ParsedData.phases[prod] : g_ParsedData.techs[prod];
+ prod = clone(depath(prod).slice(0,5) == "phase" ? g_ParsedData.phases[prod] : g_ParsedData.techs[prod]);
+ for (let res in stru.techCostMultiplier)
+ if (prod.cost[res])
+ prod.cost[res] *= stru.techCostMultiplier[res];
if (!drawProdIcon(i, s, r, p, prod))
break;
p++;
@@ -133,7 +136,10 @@ function draw()
prod = g_ParsedData.units[prod];
break;
case "techs":
- prod = g_ParsedData.techs[prod];
+ prod = clone(g_ParsedData.techs[prod]);
+ for (let res in trainer.techCostMultiplier)
+ if (prod.cost[res])
+ prod.cost[res] *= trainer.techCostMultiplier[res];
break;
default:
continue;
diff --git a/binaries/data/mods/public/gui/structree/load.js b/binaries/data/mods/public/gui/structree/load.js
index ba48642ce8..2864ed441a 100644
--- a/binaries/data/mods/public/gui/structree/load.js
+++ b/binaries/data/mods/public/gui/structree/load.js
@@ -145,6 +145,10 @@ function loadStructure(templateName)
structure.armour = struct.armour;
structure.auras = struct.auras;
+ // For technology cost multiplier, we need to use the tower
+ struct = loadStructure(structure.wallSet.templates.tower);
+ structure.techCostMultiplier = struct.techCostMultiplier;
+
let health;
for (let wSegm in structure.wallSet.templates)
diff --git a/binaries/data/mods/public/simulation/components/GuiInterface.js b/binaries/data/mods/public/simulation/components/GuiInterface.js
index 85a8cb1933..87e2a7ec60 100644
--- a/binaries/data/mods/public/simulation/components/GuiInterface.js
+++ b/binaries/data/mods/public/simulation/components/GuiInterface.js
@@ -308,7 +308,8 @@ GuiInterface.prototype.GetEntityState = function(player, ent)
ret.production = {
"entities": cmpProductionQueue.GetEntitiesList(),
"technologies": cmpProductionQueue.GetTechnologiesList(),
- "queue": cmpProductionQueue.GetQueue(),
+ "techCostMultiplier": cmpProductionQueue.GetTechCostMultiplier(),
+ "queue": cmpProductionQueue.GetQueue()
};
let cmpTrader = Engine.QueryInterface(ent, IID_Trader);
diff --git a/binaries/data/mods/public/simulation/components/ProductionQueue.js b/binaries/data/mods/public/simulation/components/ProductionQueue.js
index 82d0602738..5ab3d77a41 100644
--- a/binaries/data/mods/public/simulation/components/ProductionQueue.js
+++ b/binaries/data/mods/public/simulation/components/ProductionQueue.js
@@ -29,7 +29,16 @@ ProductionQueue.prototype.Schema =
"" +
"" +
"" +
- "";
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "";
ProductionQueue.prototype.Init = function()
{
@@ -216,6 +225,14 @@ ProductionQueue.prototype.GetTechnologiesList = function()
return ret;
};
+ProductionQueue.prototype.GetTechCostMultiplier = function()
+{
+ let techCostMultiplier = {}
+ for (let res in this.template.TechCostMultiplier)
+ techCostMultiplier[res] = ApplyValueModificationsToEntity("ProductionQueue/TechCostMultiplier/"+res, +this.template.TechCostMultiplier[res], this.entity);
+ return techCostMultiplier;
+};
+
ProductionQueue.prototype.IsTechnologyResearchedOrInProgress = function(tech)
{
if (!tech)
@@ -321,12 +338,13 @@ ProductionQueue.prototype.AddBatch = function(templateName, type, count, metadat
if (!template)
return;
var cmpPlayer = QueryOwnerInterface(this.entity);
- var time = template.researchTime * cmpPlayer.GetCheatTimeMultiplier();
+ let techCostMultiplier = this.GetTechCostMultiplier();
+ let time = techCostMultiplier.time * template.researchTime * cmpPlayer.GetCheatTimeMultiplier();
var cost = {};
- for each (var r in ["food", "wood", "stone", "metal"])
- cost[r] = Math.floor(template.cost[r]);
-
+ for (let res in template.cost)
+ cost[res] = Math.floor(techCostMultiplier[res] * template.cost[res]);
+
// TrySubtractResources should report error to player (they ran out of resources)
if (!cmpPlayer.TrySubtractResources(cost))
return;
diff --git a/binaries/data/mods/public/simulation/data/auras/library.json b/binaries/data/mods/public/simulation/data/auras/library.json
new file mode 100644
index 0000000000..0f832699d3
--- /dev/null
+++ b/binaries/data/mods/public/simulation/data/auras/library.json
@@ -0,0 +1,12 @@
+{
+ "type": "global",
+ "affects": ["Structure"],
+ "modifications": [
+ { "value": "ProductionQueue/TechCostMultiplier/wood", "multiply": 0.9 },
+ { "value": "ProductionQueue/TechCostMultiplier/food", "multiply": 0.9 },
+ { "value": "ProductionQueue/TechCostMultiplier/metal", "multiply": 0.9 },
+ { "value": "ProductionQueue/TechCostMultiplier/stone", "multiply": 0.9 }
+ ],
+ "auraDescription": "Reduces the cost of all remaining technologies by 10%.",
+ "auraName": "Library Aura"
+}
diff --git a/binaries/data/mods/public/simulation/data/auras/maur_hero_ashoka.json b/binaries/data/mods/public/simulation/data/auras/maur_hero_ashoka.json
new file mode 100644
index 0000000000..153ad08744
--- /dev/null
+++ b/binaries/data/mods/public/simulation/data/auras/maur_hero_ashoka.json
@@ -0,0 +1,15 @@
+{
+ "type": "global",
+ "affectedPlayers": ["MutualAlly"],
+ "affects": ["Temple"],
+ "modifications": [
+ { "value": "ProductionQueue/TechCostMultiplier/wood", "multiply": 0.5 },
+ { "value": "ProductionQueue/TechCostMultiplier/food", "multiply": 0.5 },
+ { "value": "ProductionQueue/TechCostMultiplier/metal", "multiply": 0.5 },
+ { "value": "ProductionQueue/TechCostMultiplier/stone", "multiply": 0.5 },
+ { "value": "ProductionQueue/TechCostMultiplier/time", "multiply": 0.5 }
+ ],
+ "auraDescription": "All player and allied Temple technologies -50% cost and -50% research time.",
+ "auraName": "Evangelism Aura",
+ "overlayIcon": "art/textures/ui/session/auras/build_bonus.png"
+}
diff --git a/binaries/data/mods/public/simulation/data/auras/maur_hero_chanakya.json b/binaries/data/mods/public/simulation/data/auras/maur_hero_chanakya.json
new file mode 100644
index 0000000000..f80851bf4a
--- /dev/null
+++ b/binaries/data/mods/public/simulation/data/auras/maur_hero_chanakya.json
@@ -0,0 +1,10 @@
+{
+ "type": "garrison",
+ "affects": ["Structure"],
+ "modifications": [
+ { "value": "ProductionQueue/TechCostMultiplier/time", "multiply": 0.5 }
+ ],
+ "auraDescription": "Empower a building with -50% research time.",
+ "auraName": "Teacher Aura",
+ "overlayIcon": "art/textures/ui/session/auras/build_bonus.png"
+}
diff --git a/binaries/data/mods/public/simulation/templates/other/bench.xml b/binaries/data/mods/public/simulation/templates/other/bench.xml
index 56115ffa70..3809ec8c76 100644
--- a/binaries/data/mods/public/simulation/templates/other/bench.xml
+++ b/binaries/data/mods/public/simulation/templates/other/bench.xml
@@ -34,6 +34,7 @@
+
6.0
diff --git a/binaries/data/mods/public/simulation/templates/other/bridge_hele.xml b/binaries/data/mods/public/simulation/templates/other/bridge_hele.xml
index 09bbc179a1..dbe722fcfe 100644
--- a/binaries/data/mods/public/simulation/templates/other/bridge_hele.xml
+++ b/binaries/data/mods/public/simulation/templates/other/bridge_hele.xml
@@ -24,6 +24,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/other/bridge_wooden.xml b/binaries/data/mods/public/simulation/templates/other/bridge_wooden.xml
index faa308d6f8..54b010855c 100644
--- a/binaries/data/mods/public/simulation/templates/other/bridge_wooden.xml
+++ b/binaries/data/mods/public/simulation/templates/other/bridge_wooden.xml
@@ -23,6 +23,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/other/column_doric.xml b/binaries/data/mods/public/simulation/templates/other/column_doric.xml
index 73bda102f4..d4f05b4f3b 100644
--- a/binaries/data/mods/public/simulation/templates/other/column_doric.xml
+++ b/binaries/data/mods/public/simulation/templates/other/column_doric.xml
@@ -32,6 +32,7 @@
+
8.0
diff --git a/binaries/data/mods/public/simulation/templates/other/column_doric_fallen.xml b/binaries/data/mods/public/simulation/templates/other/column_doric_fallen.xml
index d143fbecca..770bf50068 100644
--- a/binaries/data/mods/public/simulation/templates/other/column_doric_fallen.xml
+++ b/binaries/data/mods/public/simulation/templates/other/column_doric_fallen.xml
@@ -31,6 +31,7 @@
+
6.0
diff --git a/binaries/data/mods/public/simulation/templates/other/column_doric_fallen_b.xml b/binaries/data/mods/public/simulation/templates/other/column_doric_fallen_b.xml
index 2ea2413168..8d31b694af 100644
--- a/binaries/data/mods/public/simulation/templates/other/column_doric_fallen_b.xml
+++ b/binaries/data/mods/public/simulation/templates/other/column_doric_fallen_b.xml
@@ -32,6 +32,7 @@
+
6.0
diff --git a/binaries/data/mods/public/simulation/templates/other/fence_long.xml b/binaries/data/mods/public/simulation/templates/other/fence_long.xml
index 1c17970e72..25f1ae18f8 100644
--- a/binaries/data/mods/public/simulation/templates/other/fence_long.xml
+++ b/binaries/data/mods/public/simulation/templates/other/fence_long.xml
@@ -35,6 +35,7 @@
+
6.0
diff --git a/binaries/data/mods/public/simulation/templates/other/fence_short.xml b/binaries/data/mods/public/simulation/templates/other/fence_short.xml
index 5e1712b671..1aea6f295d 100644
--- a/binaries/data/mods/public/simulation/templates/other/fence_short.xml
+++ b/binaries/data/mods/public/simulation/templates/other/fence_short.xml
@@ -35,6 +35,7 @@
+
6.0
diff --git a/binaries/data/mods/public/simulation/templates/other/fence_stone.xml b/binaries/data/mods/public/simulation/templates/other/fence_stone.xml
index 42bea11243..1c998412a5 100644
--- a/binaries/data/mods/public/simulation/templates/other/fence_stone.xml
+++ b/binaries/data/mods/public/simulation/templates/other/fence_stone.xml
@@ -32,6 +32,7 @@
+
6.0
diff --git a/binaries/data/mods/public/simulation/templates/other/hellenic_propylaea.xml b/binaries/data/mods/public/simulation/templates/other/hellenic_propylaea.xml
index ff99066925..d61376ba93 100644
--- a/binaries/data/mods/public/simulation/templates/other/hellenic_propylaea.xml
+++ b/binaries/data/mods/public/simulation/templates/other/hellenic_propylaea.xml
@@ -38,6 +38,7 @@
+
false
40
diff --git a/binaries/data/mods/public/simulation/templates/other/hellenic_stoa.xml b/binaries/data/mods/public/simulation/templates/other/hellenic_stoa.xml
index d88e1341fb..ebbd55792d 100644
--- a/binaries/data/mods/public/simulation/templates/other/hellenic_stoa.xml
+++ b/binaries/data/mods/public/simulation/templates/other/hellenic_stoa.xml
@@ -38,6 +38,7 @@
+
false
diff --git a/binaries/data/mods/public/simulation/templates/other/obelisk.xml b/binaries/data/mods/public/simulation/templates/other/obelisk.xml
index 2b80a5ca92..f3e0a90707 100644
--- a/binaries/data/mods/public/simulation/templates/other/obelisk.xml
+++ b/binaries/data/mods/public/simulation/templates/other/obelisk.xml
@@ -33,6 +33,7 @@
+
12
diff --git a/binaries/data/mods/public/simulation/templates/other/sele_colonnade.xml b/binaries/data/mods/public/simulation/templates/other/sele_colonnade.xml
index ff903c4929..8544a6cf3f 100644
--- a/binaries/data/mods/public/simulation/templates/other/sele_colonnade.xml
+++ b/binaries/data/mods/public/simulation/templates/other/sele_colonnade.xml
@@ -32,6 +32,7 @@
+
8.0
diff --git a/binaries/data/mods/public/simulation/templates/other/table_rectangle.xml b/binaries/data/mods/public/simulation/templates/other/table_rectangle.xml
index c5a9339ccf..f895681697 100644
--- a/binaries/data/mods/public/simulation/templates/other/table_rectangle.xml
+++ b/binaries/data/mods/public/simulation/templates/other/table_rectangle.xml
@@ -34,6 +34,7 @@
+
6.0
diff --git a/binaries/data/mods/public/simulation/templates/other/table_square.xml b/binaries/data/mods/public/simulation/templates/other/table_square.xml
index d791d26c49..95ae427b0e 100644
--- a/binaries/data/mods/public/simulation/templates/other/table_square.xml
+++ b/binaries/data/mods/public/simulation/templates/other/table_square.xml
@@ -34,6 +34,7 @@
+
6.0
diff --git a/binaries/data/mods/public/simulation/templates/structures/athen_theatron.xml b/binaries/data/mods/public/simulation/templates/structures/athen_theatron.xml
index 7270cca01f..43c17ccd01 100644
--- a/binaries/data/mods/public/simulation/templates/structures/athen_theatron.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/athen_theatron.xml
@@ -31,6 +31,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/brit_rotarymill.xml b/binaries/data/mods/public/simulation/templates/structures/brit_rotarymill.xml
index c844661af8..8c9b80e6a1 100644
--- a/binaries/data/mods/public/simulation/templates/structures/brit_rotarymill.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/brit_rotarymill.xml
@@ -28,6 +28,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/gaul_rotarymill.xml b/binaries/data/mods/public/simulation/templates/structures/gaul_rotarymill.xml
index 3877746880..f4bcd7097c 100644
--- a/binaries/data/mods/public/simulation/templates/structures/gaul_rotarymill.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/gaul_rotarymill.xml
@@ -28,6 +28,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/iber_monument.xml b/binaries/data/mods/public/simulation/templates/structures/iber_monument.xml
index acc91c5267..98d6c6f31c 100644
--- a/binaries/data/mods/public/simulation/templates/structures/iber_monument.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/iber_monument.xml
@@ -35,6 +35,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/mace_library.xml b/binaries/data/mods/public/simulation/templates/structures/mace_library.xml
index ee90fbb469..44b7b8e51c 100644
--- a/binaries/data/mods/public/simulation/templates/structures/mace_library.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/mace_library.xml
@@ -1,5 +1,6 @@
+ library
Library
@@ -15,7 +16,7 @@
Library
Bibliothḗkē
-ConquestCritical
- Research special technologies and reduce the research time of all remaining technologies.
+ Research special technologies.
Alexander the Great founded libraries all over his new empire. These became centers of learning for an entirely new synthesized culture: the Hellenistic culture.
structures/library_scroll.png
diff --git a/binaries/data/mods/public/simulation/templates/structures/mace_theatron.xml b/binaries/data/mods/public/simulation/templates/structures/mace_theatron.xml
index f4adb3fb1b..1b15d7fc18 100644
--- a/binaries/data/mods/public/simulation/templates/structures/mace_theatron.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/mace_theatron.xml
@@ -31,6 +31,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/maur_pillar_ashoka.xml b/binaries/data/mods/public/simulation/templates/structures/maur_pillar_ashoka.xml
index a464d6f0fd..ad621dc069 100644
--- a/binaries/data/mods/public/simulation/templates/structures/maur_pillar_ashoka.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/maur_pillar_ashoka.xml
@@ -33,6 +33,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/pers_ishtar_gate.xml b/binaries/data/mods/public/simulation/templates/structures/pers_ishtar_gate.xml
index 1d1832be02..95d1e889b6 100644
--- a/binaries/data/mods/public/simulation/templates/structures/pers_ishtar_gate.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/pers_ishtar_gate.xml
@@ -35,6 +35,7 @@
+
true
diff --git a/binaries/data/mods/public/simulation/templates/structures/pers_palace.xml b/binaries/data/mods/public/simulation/templates/structures/pers_palace.xml
index 4b14d35fbf..9e7f6aa1bf 100644
--- a/binaries/data/mods/public/simulation/templates/structures/pers_palace.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/pers_palace.xml
@@ -30,6 +30,7 @@
+
true
48
diff --git a/binaries/data/mods/public/simulation/templates/structures/ptol_library.xml b/binaries/data/mods/public/simulation/templates/structures/ptol_library.xml
index b9bcaa8ef0..8ba2820405 100644
--- a/binaries/data/mods/public/simulation/templates/structures/ptol_library.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/ptol_library.xml
@@ -1,5 +1,6 @@
+ library
Library
@@ -15,7 +16,7 @@
Library
Bibliothḗkē
-ConquestCritical
- Research special technologies and reduce the research time of all remaining technologies.
+ Research special technologies.
Alexander the Great founded libraries all over his new empire. These became centers of learning for an entirely new synthesized culture: the Hellenistic culture.
structures/library_scroll.png
diff --git a/binaries/data/mods/public/simulation/templates/structures/ptol_lighthouse.xml b/binaries/data/mods/public/simulation/templates/structures/ptol_lighthouse.xml
index 0595a6d0dc..75b5fe494d 100644
--- a/binaries/data/mods/public/simulation/templates/structures/ptol_lighthouse.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/ptol_lighthouse.xml
@@ -28,6 +28,7 @@
true
+
@@ -47,4 +48,4 @@
structures/ptolemies/lighthouse.xml
structures/fndn_4x4_dock.xml
-
\ No newline at end of file
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/rome_arch.xml b/binaries/data/mods/public/simulation/templates/structures/rome_arch.xml
index fdaff9b5d1..69906214ab 100644
--- a/binaries/data/mods/public/simulation/templates/structures/rome_arch.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/rome_arch.xml
@@ -27,6 +27,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/sele_library.xml b/binaries/data/mods/public/simulation/templates/structures/sele_library.xml
index ae8175eadc..8048a6e004 100644
--- a/binaries/data/mods/public/simulation/templates/structures/sele_library.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/sele_library.xml
@@ -1,5 +1,6 @@
+ library
Library
@@ -15,7 +16,7 @@
Library
Bibliothikon
-ConquestCritical
- Research special technologies and reduce the research time of all remaining technologies.
+ Research special technologies.
Alexander the Great founded libraries all over his new empire. These became centers of learning for an entirely new synthesized culture: the Hellenistic culture.
structures/library_scroll.png
diff --git a/binaries/data/mods/public/simulation/templates/structures/spart_theatron.xml b/binaries/data/mods/public/simulation/templates/structures/spart_theatron.xml
index c2dd0220de..d44f0617d8 100644
--- a/binaries/data/mods/public/simulation/templates/structures/spart_theatron.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/spart_theatron.xml
@@ -31,6 +31,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/structures/theb_theatron.xml b/binaries/data/mods/public/simulation/templates/structures/theb_theatron.xml
index 83b21b1b14..d973f3e3e9 100644
--- a/binaries/data/mods/public/simulation/templates/structures/theb_theatron.xml
+++ b/binaries/data/mods/public/simulation/templates/structures/theb_theatron.xml
@@ -31,6 +31,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/template_structure.xml b/binaries/data/mods/public/simulation/templates/template_structure.xml
index 1c62a07f48..feeb293c71 100644
--- a/binaries/data/mods/public/simulation/templates/template_structure.xml
+++ b/binaries/data/mods/public/simulation/templates/template_structure.xml
@@ -71,6 +71,15 @@
false
+
+
+ 1.0
+ 1.0
+ 1.0
+ 1.0
+
+
+
special/rallypoint
diff --git a/binaries/data/mods/public/simulation/templates/template_structure_defense_wall.xml b/binaries/data/mods/public/simulation/templates/template_structure_defense_wall.xml
index e9dd8f66a5..d4b4daab27 100644
--- a/binaries/data/mods/public/simulation/templates/template_structure_defense_wall.xml
+++ b/binaries/data/mods/public/simulation/templates/template_structure_defense_wall.xml
@@ -39,6 +39,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/template_structure_defense_wall_gate.xml b/binaries/data/mods/public/simulation/templates/template_structure_defense_wall_gate.xml
index 317ffc91ef..b8550bfb91 100644
--- a/binaries/data/mods/public/simulation/templates/template_structure_defense_wall_gate.xml
+++ b/binaries/data/mods/public/simulation/templates/template_structure_defense_wall_gate.xml
@@ -45,6 +45,7 @@
+
diff --git a/binaries/data/mods/public/simulation/templates/template_structure_military_blacksmith.xml b/binaries/data/mods/public/simulation/templates/template_structure_military_blacksmith.xml
index 6104a2db9f..550084c1de 100644
--- a/binaries/data/mods/public/simulation/templates/template_structure_military_blacksmith.xml
+++ b/binaries/data/mods/public/simulation/templates/template_structure_military_blacksmith.xml
@@ -17,7 +17,7 @@
1
0.1
Unit
- Infantry
+ Infantry Healer
0
2
diff --git a/binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml b/binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml
index 74d0cffac2..b21b276ab0 100644
--- a/binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml
+++ b/binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml
@@ -45,6 +45,7 @@
false
false
+
false
diff --git a/binaries/data/mods/public/simulation/templates/units/athen_ship_trireme.xml b/binaries/data/mods/public/simulation/templates/units/athen_ship_trireme.xml
index 0ce9cf672a..f54d2283b9 100644
--- a/binaries/data/mods/public/simulation/templates/units/athen_ship_trireme.xml
+++ b/binaries/data/mods/public/simulation/templates/units/athen_ship_trireme.xml
@@ -13,6 +13,13 @@
units/athen_infantry_marine_archer_b
units/athen_champion_marine
+
+ 1.0
+ 1.0
+ 1.0
+ 1.0
+
+
structures/athenians/trireme.xml
diff --git a/binaries/data/mods/public/simulation/templates/units/maur_hero_ashoka.xml b/binaries/data/mods/public/simulation/templates/units/maur_hero_ashoka.xml
index 7eda975cc6..3cd608d8ec 100644
--- a/binaries/data/mods/public/simulation/templates/units/maur_hero_ashoka.xml
+++ b/binaries/data/mods/public/simulation/templates/units/maur_hero_ashoka.xml
@@ -1,5 +1,6 @@
+ maur_hero_ashoka
5.0
diff --git a/binaries/data/mods/public/simulation/templates/units/maur_hero_chanakya.xml b/binaries/data/mods/public/simulation/templates/units/maur_hero_chanakya.xml
index 0ccd1ffc0d..98b647838b 100644
--- a/binaries/data/mods/public/simulation/templates/units/maur_hero_chanakya.xml
+++ b/binaries/data/mods/public/simulation/templates/units/maur_hero_chanakya.xml
@@ -5,13 +5,7 @@
8.0
4.0
-
- 20
- 12
- 2000
-
- Human
-
+ maur_hero_chanakya
2
60
@@ -20,18 +14,24 @@
250
+
+ 20
+ 12
+ 2000
+
+ Human
+
600
maur
- Human Organic
+ Human Organic Support
Hero Healer
Acharya Chanakya
Acharya Chāṇakya
units/maur_hero_chanakya.png
Hero Special: "Healer" - Heal units at an accelerated rate.
-Hero Special: "Teacher" - Empower a building to research and train +50% faster.
Hero Special: "Philosopher" - Research 4 special technologies only available to Chanakya.
phase_city
diff --git a/binaries/data/mods/public/simulation/templates/units/maur_hero_maurya.xml b/binaries/data/mods/public/simulation/templates/units/maur_hero_maurya.xml
index b4d34bbeb0..7c088e631e 100644
--- a/binaries/data/mods/public/simulation/templates/units/maur_hero_maurya.xml
+++ b/binaries/data/mods/public/simulation/templates/units/maur_hero_maurya.xml
@@ -11,6 +11,13 @@
units/maur_champion_maiden_archer
+
+ 1.0
+ 1.0
+ 1.0
+ 1.0
+
+
units/mauryans/elephant_hero.xml
diff --git a/binaries/data/mods/public/simulation/templates/units/pers_hero_cyrus.xml b/binaries/data/mods/public/simulation/templates/units/pers_hero_cyrus.xml
index 255ce90356..1a3600defd 100644
--- a/binaries/data/mods/public/simulation/templates/units/pers_hero_cyrus.xml
+++ b/binaries/data/mods/public/simulation/templates/units/pers_hero_cyrus.xml
@@ -13,6 +13,13 @@
units/pers_champion_infantry
+
+ 1.0
+ 1.0
+ 1.0
+ 1.0
+
+
units/persians/hero_cyrus.xml
diff --git a/binaries/data/mods/public/simulation/templates/units/pers_ship_trireme.xml b/binaries/data/mods/public/simulation/templates/units/pers_ship_trireme.xml
index 1ee268e33f..e3d60fa208 100644
--- a/binaries/data/mods/public/simulation/templates/units/pers_ship_trireme.xml
+++ b/binaries/data/mods/public/simulation/templates/units/pers_ship_trireme.xml
@@ -17,6 +17,13 @@
units/pers_cavalry_swordsman_b_trireme
units/pers_cavalry_javelinist_b_trireme
+
+ 1.0
+ 1.0
+ 1.0
+ 1.0
+
+
structures/persians/trireme.xml