Index: binaries/data/mods/public/globalscripts/Templates.js
===================================================================
--- binaries/data/mods/public/globalscripts/Templates.js	(révision 18218)
+++ binaries/data/mods/public/globalscripts/Templates.js	(copie de travail)
@@ -245,10 +245,17 @@ function GetTemplateDataHelper(template,
 		};
 		if (template.UnitMotion.Run)
 			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 = {
 			"GainMultiplier": func("Trader/GainMultiplier", +template.Trader.GainMultiplier, player, template)
 		};
Index: binaries/data/mods/public/gui/session/selection_panels.js
===================================================================
--- binaries/data/mods/public/gui/session/selection_panels.js	(révision 18218)
+++ binaries/data/mods/public/gui/session/selection_panels.js	(copie de travail)
@@ -802,10 +802,15 @@ g_SelectionPanels.Research = {
 		data.entType = data.item.pair ? [data.item.top, data.item.bottom] : [data.item];
 		data.template = data.entType.map(GetTechnologyData);
 		// 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];
 		data.positionsToHide = data.item.pair ? [] : [data.i];
 
Index: binaries/data/mods/public/gui/structree/draw.js
===================================================================
--- binaries/data/mods/public/gui/structree/draw.js	(révision 18218)
+++ binaries/data/mods/public/gui/structree/draw.js	(copie de travail)
@@ -68,11 +68,14 @@ function draw()
 				}
 				if (stru.production.technology[prod_pha])
 				{
 					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++;
 					}
 				}
@@ -131,11 +134,14 @@ function draw()
 				{
 				case "units":
 					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;
 				}
 				if (!drawProdIcon(null, t, null, p, prod))
Index: binaries/data/mods/public/gui/structree/load.js
===================================================================
--- binaries/data/mods/public/gui/structree/load.js	(révision 18218)
+++ binaries/data/mods/public/gui/structree/load.js	(copie de travail)
@@ -143,10 +143,14 @@ function loadStructure(templateName)
 		// Note: Assume wall segments of all lengths have the same armor and auras
 		let struct = loadStructure(structure.wallSet.templates.long);
 		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)
 		{
 			let wPart = loadStructure(structure.wallSet.templates[wSegm]);
Index: binaries/data/mods/public/simulation/components/GuiInterface.js
===================================================================
--- binaries/data/mods/public/simulation/components/GuiInterface.js	(révision 18218)
+++ binaries/data/mods/public/simulation/components/GuiInterface.js	(copie de travail)
@@ -306,11 +306,12 @@ GuiInterface.prototype.GetEntityState =
 	let cmpProductionQueue = Engine.QueryInterface(ent, IID_ProductionQueue);
 	if (cmpProductionQueue)
 		ret.production = {
 			"entities": cmpProductionQueue.GetEntitiesList(),
 			"technologies": cmpProductionQueue.GetTechnologiesList(),
-			"queue": cmpProductionQueue.GetQueue(),
+			"techCostMultiplier": cmpProductionQueue.GetTechCostMultiplier(),
+			"queue": cmpProductionQueue.GetQueue()
 		};
 
 	let cmpTrader = Engine.QueryInterface(ent, IID_Trader);
 	if (cmpTrader)
 		ret.trader = {
Index: binaries/data/mods/public/simulation/components/ProductionQueue.js
===================================================================
--- binaries/data/mods/public/simulation/components/ProductionQueue.js	(révision 18218)
+++ binaries/data/mods/public/simulation/components/ProductionQueue.js	(copie de travail)
@@ -27,11 +27,20 @@ ProductionQueue.prototype.Schema =
 			"<attribute name='datatype'>" +
 				"<value>tokens</value>" +
 			"</attribute>" +
 			"<text/>" +
 		"</element>" +
-	"</optional>";
+	"</optional>" +
+	"<element name='TechCostMultiplier' a:help='Multiplier to modify ressources cost and research time of technologies searched in this building.'>" +
+		"<interleave>" +
+			"<element name='food'><ref name='nonNegativeDecimal'/></element>" +
+			"<element name='wood'><ref name='nonNegativeDecimal'/></element>" +
+			"<element name='stone'><ref name='nonNegativeDecimal'/></element>" +
+			"<element name='metal'><ref name='nonNegativeDecimal'/></element>" +
+			"<element name='time'><ref name='nonNegativeDecimal'/></element>" +
+		"</interleave>" +
+	"</element>";
 
 ProductionQueue.prototype.Init = function()
 {
 	this.nextID = 1;
 
@@ -214,10 +223,18 @@ ProductionQueue.prototype.GetTechnologie
 	}
 
 	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)
 		return false;
 	
@@ -319,16 +336,17 @@ ProductionQueue.prototype.AddBatch = fun
 			var cmpDataTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_DataTemplateManager);
 			var template = cmpDataTemplateManager.GetTechnologyTemplate(templateName);
 			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;
 			
 			// Tell the technology manager that we have started researching this so that people can't research the same 
Index: binaries/data/mods/public/simulation/data/auras/library.json
===================================================================
--- binaries/data/mods/public/simulation/data/auras/library.json	(nonexistent)
+++ binaries/data/mods/public/simulation/data/auras/library.json	(copie de travail)
@@ -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"
+}
Index: binaries/data/mods/public/simulation/data/auras/maur_hero_ashoka.json
===================================================================
--- binaries/data/mods/public/simulation/data/auras/maur_hero_ashoka.json	(nonexistent)
+++ binaries/data/mods/public/simulation/data/auras/maur_hero_ashoka.json	(copie de travail)
@@ -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"
+}
Index: binaries/data/mods/public/simulation/data/auras/maur_hero_chanakya.json
===================================================================
--- binaries/data/mods/public/simulation/data/auras/maur_hero_chanakya.json	(nonexistent)
+++ binaries/data/mods/public/simulation/data/auras/maur_hero_chanakya.json	(copie de travail)
@@ -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"
+}
Index: binaries/data/mods/public/simulation/templates/other/bench.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/bench.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/bench.xml	(copie de travail)
@@ -32,10 +32,11 @@
     <Color r="119" g="82" b="46"/>
   </Minimap>
   <Obstruction>
     <Static width="1.5" depth="4.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>6.0</HeightOffset>
   </StatusBars>
   <Vision>
     <Range>4</Range>
Index: binaries/data/mods/public/simulation/templates/other/bridge_hele.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/bridge_hele.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/bridge_hele.xml	(copie de travail)
@@ -22,10 +22,11 @@
   <Obstruction>
     <Obstructions>
       <Edge width="59" depth="4" x="0" z="5"/> 
     </Obstructions>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <Selectable>
     <EditorOnly/>
   </Selectable>
   <Vision>
     <Range>72</Range>
Index: binaries/data/mods/public/simulation/templates/other/bridge_wooden.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/bridge_wooden.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/bridge_wooden.xml	(copie de travail)
@@ -21,10 +21,11 @@
   <Obstruction>
     <Obstructions>
       <Edge width="59" depth="4" x="0" z="5"/> 
     </Obstructions>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <Minimap disable=""/>
   <Selectable>
     <EditorOnly/>
   </Selectable>
   <Vision>
Index: binaries/data/mods/public/simulation/templates/other/column_doric.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/column_doric.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/column_doric.xml	(copie de travail)
@@ -30,10 +30,11 @@
     <metal>0</metal>
   </Loot>
   <Obstruction>
     <Static width="2.0" depth="2.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>8.0</HeightOffset>
   </StatusBars>
   <Vision>
     <Range>4</Range>
Index: binaries/data/mods/public/simulation/templates/other/column_doric_fallen.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/column_doric_fallen.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/column_doric_fallen.xml	(copie de travail)
@@ -29,10 +29,11 @@
     <metal>0</metal>
   </Loot>
   <Obstruction>
     <Static width="2.0" depth="12.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>6.0</HeightOffset>
   </StatusBars>
   <Vision>
     <Range>4</Range>
Index: binaries/data/mods/public/simulation/templates/other/column_doric_fallen_b.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/column_doric_fallen_b.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/column_doric_fallen_b.xml	(copie de travail)
@@ -30,10 +30,11 @@
     <metal>0</metal>
   </Loot>
   <Obstruction>
     <Static width="2.0" depth="2.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>6.0</HeightOffset>
   </StatusBars>
   <Vision>
     <Range>4</Range>
Index: binaries/data/mods/public/simulation/templates/other/fence_long.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/fence_long.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/fence_long.xml	(copie de travail)
@@ -33,10 +33,11 @@
     <Color r="119" g="82" b="46"/>
   </Minimap>
   <Obstruction>
     <Static width="1.5" depth="13.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>6.0</HeightOffset>
   </StatusBars>
   <TerritoryDecay disable=""/>
   <Vision>
Index: binaries/data/mods/public/simulation/templates/other/fence_short.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/fence_short.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/fence_short.xml	(copie de travail)
@@ -33,10 +33,11 @@
     <Color r="119" g="82" b="46"/>
   </Minimap>
   <Obstruction>
     <Static width="1.5" depth="6.5"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>6.0</HeightOffset>
   </StatusBars>
   <TerritoryDecay disable=""/>
   <Visibility>
Index: binaries/data/mods/public/simulation/templates/other/fence_stone.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/fence_stone.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/fence_stone.xml	(copie de travail)
@@ -30,10 +30,11 @@
     <metal>0</metal>
   </Loot>
   <Obstruction>
     <Static width="1.5" depth="10.5"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>6.0</HeightOffset>
   </StatusBars>
   <TerritoryDecay disable=""/>
   <Vision>
Index: binaries/data/mods/public/simulation/templates/other/hellenic_propylaea.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/hellenic_propylaea.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/hellenic_propylaea.xml	(copie de travail)
@@ -36,10 +36,11 @@
     <metal>75</metal>
   </Loot>
   <Obstruction>
     <Static width="26.0" depth="30.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <TerritoryInfluence>
     <Root>false</Root>
     <Radius>40</Radius>
     <Weight>65535</Weight>
   </TerritoryInfluence>
Index: binaries/data/mods/public/simulation/templates/other/hellenic_stoa.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/hellenic_stoa.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/hellenic_stoa.xml	(copie de travail)
@@ -36,10 +36,11 @@
     <metal>50</metal>
   </Loot>
   <Obstruction>
     <Static width="26.0" depth="10.5"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <RallyPoint disable=""/>
   <TerritoryInfluence>
     <Root>false</Root>
     <Radius>36</Radius>
     <Weight>65535</Weight>
Index: binaries/data/mods/public/simulation/templates/other/obelisk.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/obelisk.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/obelisk.xml	(copie de travail)
@@ -31,10 +31,11 @@
     <metal>200</metal>
   </Loot>
   <Obstruction>
     <Static width="4.0" depth="4.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <TerritoryDecay disable=""/>
   <Vision>
     <Range>12</Range>
   </Vision>
   <VisualActor>
Index: binaries/data/mods/public/simulation/templates/other/table_rectangle.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/table_rectangle.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/table_rectangle.xml	(copie de travail)
@@ -32,10 +32,11 @@
     <Color r="119" g="82" b="46"/>
   </Minimap>
   <Obstruction>
     <Static width="3.5" depth="4.75"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>6.0</HeightOffset>
   </StatusBars>
   <TerritoryDecay disable=""/>
   <Vision>
Index: binaries/data/mods/public/simulation/templates/other/table_square.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/other/table_square.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/other/table_square.xml	(copie de travail)
@@ -32,10 +32,11 @@
     <Color r="119" g="82" b="46"/>
   </Minimap>
   <Obstruction>
     <Static width="4.0" depth="4.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <StatusBars>
     <HeightOffset>6.0</HeightOffset>
   </StatusBars>
   <TerritoryDecay disable=""/>
   <Vision>
Index: binaries/data/mods/public/simulation/templates/structures/athen_theatron.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/athen_theatron.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/athen_theatron.xml	(copie de travail)
@@ -29,10 +29,11 @@
     <Icon>structures/theatron.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="46.0" depth="46.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_greek_theater.xml</select>
       <constructed>interface/complete/building/complete_greek_theater.xml</constructed>
       <death>attack/destruction/building_collapse_large.xml</death>
Index: binaries/data/mods/public/simulation/templates/structures/brit_rotarymill.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/brit_rotarymill.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/brit_rotarymill.xml	(copie de travail)
@@ -26,10 +26,11 @@
     <Icon>structures/rotarymill.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="16.0" depth="16.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <RallyPoint disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_ffactri.xml</select>
       <constructed>interface/complete/building/complete_ffactri.xml</constructed>
Index: binaries/data/mods/public/simulation/templates/structures/gaul_rotarymill.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/gaul_rotarymill.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/gaul_rotarymill.xml	(copie de travail)
@@ -26,10 +26,11 @@
     <Icon>structures/rotarymill.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="16.0" depth="16.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <RallyPoint disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_ffactri.xml</select>
       <constructed>interface/complete/building/complete_ffactri.xml</constructed>
Index: binaries/data/mods/public/simulation/templates/structures/iber_monument.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/iber_monument.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/iber_monument.xml	(copie de travail)
@@ -33,10 +33,11 @@
     <History>The Iberians were a religious people who built small monuments to their various gods. These monuments could also serve as family tombs.</History>
   </Identity>
   <Obstruction>
     <Static width="10.0" depth="10.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <RallyPoint disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_iber_monument.xml</select>
       <constructed>interface/complete/building/complete_iber_monument.xml</constructed>
Index: binaries/data/mods/public/simulation/templates/structures/mace_library.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/mace_library.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/mace_library.xml	(copie de travail)
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Entity parent="template_structure_special">
+  <Auras datatype="tokens">library</Auras>
   <BuildRestrictions>
     <Category>Library</Category>
   </BuildRestrictions>
   <Footprint>
     <Square width="29.0" depth="34.0"/>
@@ -13,11 +14,11 @@
   <Identity>
     <Civ>mace</Civ>
     <GenericName>Library</GenericName>
     <SpecificName>Bibliothḗkē</SpecificName>
     <Classes datatype="tokens">-ConquestCritical</Classes>
-    <Tooltip>Research special technologies and reduce the research time of all remaining technologies.</Tooltip>
+    <Tooltip>Research special technologies.</Tooltip>
     <History>Alexander the Great founded libraries all over his new empire. These became centers of learning for an entirely new synthesized culture: the Hellenistic culture.</History>
     <Icon>structures/library_scroll.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="25.0" depth="30.0"/>
Index: binaries/data/mods/public/simulation/templates/structures/mace_theatron.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/mace_theatron.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/mace_theatron.xml	(copie de travail)
@@ -29,10 +29,11 @@
     <Icon>structures/theatron.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="46.0" depth="46.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_greek_theater.xml</select>
       <constructed>interface/complete/building/complete_greek_theater.xml</constructed>
       <death>attack/destruction/building_collapse_large.xml</death>
Index: binaries/data/mods/public/simulation/templates/structures/pers_ishtar_gate.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/pers_ishtar_gate.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/pers_ishtar_gate.xml	(copie de travail)
@@ -33,10 +33,11 @@
       <Right width="11" depth="13" x="12.5" z="0"/>
       <Left width="11" depth="13" x="-12.5" z="0"/>
       <Door width="14" depth="13" x="0" z="0"/>
     </Obstructions>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <TerritoryInfluence>
     <Root>true</Root>
   </TerritoryInfluence>
   <VisualActor>
     <Actor>special/pers_ishtar_gate.xml</Actor>
Index: binaries/data/mods/public/simulation/templates/structures/pers_palace.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/pers_palace.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/pers_palace.xml	(copie de travail)
@@ -28,10 +28,11 @@
     <Icon>structures/palace.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="38.5" depth="22.5"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <TerritoryInfluence>
     <Root>true</Root>
     <Radius>48</Radius>
   </TerritoryInfluence>
   <VisualActor>
Index: binaries/data/mods/public/simulation/templates/structures/ptol_library.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/ptol_library.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/ptol_library.xml	(copie de travail)
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Entity parent="template_structure_special">
+  <Auras datatype="tokens">library</Auras>
   <BuildRestrictions>
     <Category>Library</Category>
   </BuildRestrictions>
   <Footprint>
     <Square width="29.0" depth="34.0"/>
@@ -13,11 +14,11 @@
   <Identity>
     <Civ>ptol</Civ>
     <GenericName>Library</GenericName>
     <SpecificName>Bibliothḗkē</SpecificName>
     <Classes datatype="tokens">-ConquestCritical</Classes>
-    <Tooltip>Research special technologies and reduce the research time of all remaining technologies.</Tooltip>
+    <Tooltip>Research special technologies.</Tooltip>
     <History>Alexander the Great founded libraries all over his new empire. These became centers of learning for an entirely new synthesized culture: the Hellenistic culture.</History>
     <Icon>structures/library_scroll.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="25.0" depth="30.0"/>
Index: binaries/data/mods/public/simulation/templates/structures/ptol_lighthouse.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/ptol_lighthouse.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/ptol_lighthouse.xml	(copie de travail)
@@ -26,10 +26,11 @@
     <Static width="20.0" depth="25.0"/>
   </Obstruction>
   <Position>
     <Floating>true</Floating>
   </Position>
+  <ProductionQueue disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_temple.xml</select>
       <constructed>interface/complete/building/complete_temple.xml</constructed>
       <death>attack/destruction/building_collapse_large.xml</death>
@@ -45,6 +46,6 @@
   </Vision>
   <VisualActor>
     <Actor>structures/ptolemies/lighthouse.xml</Actor>
     <FoundationActor>structures/fndn_4x4_dock.xml</FoundationActor>
   </VisualActor>
-</Entity>
\ Pas de fin de ligne à la fin du fichier
+</Entity>
Index: binaries/data/mods/public/simulation/templates/structures/rome_arch.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/rome_arch.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/rome_arch.xml	(copie de travail)
@@ -25,10 +25,11 @@
     <Icon>structures/arch.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="18.0" depth="9.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <RallyPoint disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_theater.xml</select>
       <constructed>interface/complete/building/complete_theatre.xml</constructed>
Index: binaries/data/mods/public/simulation/templates/structures/sele_library.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/sele_library.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/sele_library.xml	(copie de travail)
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Entity parent="template_structure_special">
+  <Auras datatype="tokens">library</Auras>
   <BuildRestrictions>
     <Category>Library</Category>
   </BuildRestrictions>
   <Footprint>
     <Square width="29.0" depth="34.0"/>
@@ -13,11 +14,11 @@
   <Identity>
     <Civ>sele</Civ>
     <GenericName>Library</GenericName>
     <SpecificName>Bibliothikon</SpecificName>
     <Classes datatype="tokens">-ConquestCritical</Classes>
-    <Tooltip>Research special technologies and reduce the research time of all remaining technologies.</Tooltip>
+    <Tooltip>Research special technologies.</Tooltip>
     <History>Alexander the Great founded libraries all over his new empire. These became centers of learning for an entirely new synthesized culture: the Hellenistic culture.</History>
     <Icon>structures/library_scroll.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="25.0" depth="30.0"/>
Index: binaries/data/mods/public/simulation/templates/structures/spart_theatron.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/spart_theatron.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/spart_theatron.xml	(copie de travail)
@@ -29,10 +29,11 @@
     <Icon>structures/theatron.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="46.0" depth="46.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_greek_theater.xml</select>
       <constructed>interface/complete/building/complete_greek_theater.xml</constructed>
       <death>attack/destruction/building_collapse_large.xml</death>
Index: binaries/data/mods/public/simulation/templates/structures/theb_theatron.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/structures/theb_theatron.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/structures/theb_theatron.xml	(copie de travail)
@@ -29,10 +29,11 @@
     <Icon>structures/theatron.png</Icon>
   </Identity>
   <Obstruction>
     <Static width="46.0" depth="46.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_theater.xml</select>
       <constructed>interface/complete/building/complete_theatre.xml</constructed>
       <death>attack/destruction/building_collapse_large.xml</death>
Index: binaries/data/mods/public/simulation/templates/template_structure.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/template_structure.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/template_structure.xml	(copie de travail)
@@ -69,10 +69,19 @@
     <BlockConstruction>true</BlockConstruction>
     <DisableBlockMovement>false</DisableBlockMovement>
     <DisableBlockPathfinding>false</DisableBlockPathfinding>
   </Obstruction>
   <OverlayRenderer/>
+  <ProductionQueue>
+	<TechCostMultiplier>
+      <food>1.0</food>
+      <wood>1.0</wood>
+      <stone>1.0</stone>
+      <metal>1.0</metal>
+      <time>1.0</time>
+    </TechCostMultiplier>
+  </ProductionQueue>
   <RallyPoint/>
   <RallyPointRenderer>
     <MarkerTemplate>special/rallypoint</MarkerTemplate>
     <LineTexture>art/textures/misc/rallypoint_line.png</LineTexture>
     <LineTextureMask>art/textures/misc/rallypoint_line_mask.png</LineTextureMask>
Index: binaries/data/mods/public/simulation/templates/template_structure_defense_wall.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/template_structure_defense_wall.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/template_structure_defense_wall.xml	(copie de travail)
@@ -37,10 +37,11 @@
     <metal>0</metal>
   </Loot>
   <Obstruction>
     <Static width="6.0" depth="6.0"/>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <RallyPoint disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_wall.xml</select>
       <constructed>interface/complete/building/complete_wall.xml</constructed>
Index: binaries/data/mods/public/simulation/templates/template_structure_defense_wall_gate.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/template_structure_defense_wall_gate.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/template_structure_defense_wall_gate.xml	(copie de travail)
@@ -43,10 +43,11 @@
       <Right width="5" depth="5" x="10" z="0"/>
       <Left width="5" depth="5" x="-10" z="0"/>
       <Door width="20.0" depth="6.5" x="0" z="0"/>
     </Obstructions>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <RallyPoint disable=""/>
   <Sound>
     <SoundGroups>
       <select>interface/select/building/sel_gate.xml</select>
       <constructed>interface/complete/building/complete_gate.xml</constructed>
Index: binaries/data/mods/public/simulation/templates/template_structure_military_blacksmith.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/template_structure_military_blacksmith.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/template_structure_military_blacksmith.xml	(copie de travail)
@@ -15,11 +15,11 @@
   </Footprint>
   <GarrisonHolder>
     <Max>1</Max>
     <EjectHealth>0.1</EjectHealth>
     <EjectClassesOnDestroy datatype="tokens">Unit</EjectClassesOnDestroy>
-    <List datatype="tokens">Infantry</List>
+    <List datatype="tokens">Infantry Healer</List>
     <BuffHeal>0</BuffHeal>
     <LoadingRange>2</LoadingRange>
   </GarrisonHolder>
   <Health>
     <Max>2000</Max>
Index: binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml	(copie de travail)
@@ -43,10 +43,11 @@
   <Obstruction>
     <Static width="22.0" depth="22.0"/>
     <BlockMovement>false</BlockMovement>
     <BlockPathfinding>false</BlockPathfinding>
   </Obstruction>
+  <ProductionQueue disable=""/>
   <RallyPoint disable=""/>
   <ResourceSupply>
     <KillBeforeGather>false</KillBeforeGather>
     <Amount>Infinity</Amount>
     <Type>food.grain</Type>
Index: binaries/data/mods/public/simulation/templates/units/athen_ship_trireme.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/units/athen_ship_trireme.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/units/athen_ship_trireme.xml	(copie de travail)
@@ -11,10 +11,17 @@
     <BatchTimeModifier>0.7</BatchTimeModifier>
     <Entities datatype="tokens">
       units/athen_infantry_marine_archer_b
       units/athen_champion_marine
     </Entities>
+    <TechCostMultiplier>
+      <food>1.0</food>
+      <wood>1.0</wood>
+      <stone>1.0</stone>
+      <metal>1.0</metal>
+      <time>1.0</time>
+    </TechCostMultiplier>
   </ProductionQueue>
   <VisualActor>
     <Actor>structures/athenians/trireme.xml</Actor>
   </VisualActor>
 </Entity>
Index: binaries/data/mods/public/simulation/templates/units/maur_hero_ashoka.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/units/maur_hero_ashoka.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/units/maur_hero_ashoka.xml	(copie de travail)
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Entity parent="template_unit_hero_cavalry_archer">
+  <Auras datatype="tokens">maur_hero_ashoka</Auras>
   <Footprint replace="">
     <Square width="6.0" depth="12.0"/>
     <Height>5.0</Height>
   </Footprint>
   <Identity>
Index: binaries/data/mods/public/simulation/templates/units/maur_hero_chanakya.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/units/maur_hero_chanakya.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/units/maur_hero_chanakya.xml	(copie de travail)
@@ -3,37 +3,37 @@
   <Armour>
     <Hack>4.0</Hack>
     <Pierce>8.0</Pierce>
     <Crush>4.0</Crush>
   </Armour>
-  <Heal>
-    <Range>20</Range>
-    <HP>12</HP>
-    <Rate>2000</Rate>
-    <UnhealableClasses datatype="tokens"/>
-    <HealableClasses datatype="tokens">Human</HealableClasses>
-  </Heal>
+  <Auras datatype="tokens">maur_hero_chanakya</Auras>
   <Cost>
     <Population>2</Population>
     <BuildTime>60</BuildTime>
     <Resources>
       <food>100</food>
       <metal>250</metal>
     </Resources>
   </Cost>
+  <Heal>
+    <Range>20</Range>
+    <HP>12</HP>
+    <Rate>2000</Rate>
+    <UnhealableClasses datatype="tokens"/>
+    <HealableClasses datatype="tokens">Human</HealableClasses>
+  </Heal>
   <Health>
     <Max>600</Max>
   </Health>
   <Identity>
     <Civ>maur</Civ>
-    <Classes datatype="tokens">Human Organic</Classes>
+    <Classes datatype="tokens">Human Organic Support</Classes>
     <VisibleClasses datatype="tokens">Hero Healer</VisibleClasses>
     <GenericName>Acharya Chanakya</GenericName>
     <SpecificName>Acharya Chāṇakya</SpecificName>
     <Icon>units/maur_hero_chanakya.png</Icon>
     <Tooltip>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.</Tooltip>
     <RequiredTechnology>phase_city</RequiredTechnology>
   </Identity>
   <Minimap>
     <Type>hero</Type>
Index: binaries/data/mods/public/simulation/templates/units/maur_hero_maurya.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/units/maur_hero_maurya.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/units/maur_hero_maurya.xml	(copie de travail)
@@ -9,10 +9,17 @@
   <ProductionQueue>
     <BatchTimeModifier>0.7</BatchTimeModifier>
     <Entities datatype="tokens">
       units/maur_champion_maiden_archer
     </Entities>
+    <TechCostMultiplier>
+      <food>1.0</food>
+      <wood>1.0</wood>
+      <stone>1.0</stone>
+      <metal>1.0</metal>
+      <time>1.0</time>
+    </TechCostMultiplier>
   </ProductionQueue>
   <VisualActor>
     <Actor>units/mauryans/elephant_hero.xml</Actor>
   </VisualActor>
 </Entity>
Index: binaries/data/mods/public/simulation/templates/units/pers_hero_cyrus.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/units/pers_hero_cyrus.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/units/pers_hero_cyrus.xml	(copie de travail)
@@ -11,10 +11,17 @@
   <ProductionQueue>
     <BatchTimeModifier>0.7</BatchTimeModifier>
     <Entities datatype="tokens">
       units/pers_champion_infantry
     </Entities>
+    <TechCostMultiplier>
+      <food>1.0</food>
+      <wood>1.0</wood>
+      <stone>1.0</stone>
+      <metal>1.0</metal>
+      <time>1.0</time>
+    </TechCostMultiplier>
   </ProductionQueue>
   <VisualActor>
     <Actor>units/persians/hero_cyrus.xml</Actor>
   </VisualActor>
 </Entity>
Index: binaries/data/mods/public/simulation/templates/units/pers_ship_trireme.xml
===================================================================
--- binaries/data/mods/public/simulation/templates/units/pers_ship_trireme.xml	(révision 18218)
+++ binaries/data/mods/public/simulation/templates/units/pers_ship_trireme.xml	(copie de travail)
@@ -15,10 +15,17 @@
     <BatchTimeModifier>0.8</BatchTimeModifier>
     <Entities datatype="tokens">
       units/pers_cavalry_swordsman_b_trireme
       units/pers_cavalry_javelinist_b_trireme
     </Entities>
+    <TechCostMultiplier>
+      <food>1.0</food>
+      <wood>1.0</wood>
+      <stone>1.0</stone>
+      <metal>1.0</metal>
+      <time>1.0</time>
+    </TechCostMultiplier>
   </ProductionQueue>
   <VisualActor>
     <Actor>structures/persians/trireme.xml</Actor>
   </VisualActor>
 </Entity>
