1
0
forked from 0ad/0ad

Make batch time factor tech modifiable and a template property.

Fix unit test map.

This was SVN commit r12877.
This commit is contained in:
leper 2012-11-25 02:52:13 +00:00
parent 27ae648d9c
commit 5f2d30c7f7
66 changed files with 161 additions and 118 deletions

View File

@ -269,15 +269,15 @@ function getEntityCostComponentsTooltipString(template, trainNum, entity)
trainNum = 1;
for (var r in template.cost)
totalCosts[r] = Math.floor(template.cost[r] * trainNum);
totalCosts.time = (entity)?Math.ceil(Engine.GuiInterfaceCall("GetBatchTime", {"entity": entity, "batchSize": trainNum})):template.cost.time;
totalCosts.time = entity ? Math.ceil(Engine.GuiInterfaceCall("GetBatchTime", {"entity": entity, "batchSize": trainNum})) : template.cost.time;
var costs = [];
if (template.cost.food) costs.push(getCostComponentDisplayName("food") + " " + totalCosts.food);
if (template.cost.wood) costs.push(getCostComponentDisplayName("wood") + " " + totalCosts.wood);
if (template.cost.metal) costs.push(getCostComponentDisplayName("metal") + " " + totalCosts.metal);
if (template.cost.stone) costs.push(getCostComponentDisplayName("stone") + " " + totalCosts.stone);
if (template.cost.population) costs.push(getCostComponentDisplayName("population") + " " + totalCosts.population);
if (template.cost.time) costs.push(getCostComponentDisplayName("time") + " " + totalCosts.time);
if (totalCosts.food) costs.push(getCostComponentDisplayName("food") + " " + totalCosts.food);
if (totalCosts.wood) costs.push(getCostComponentDisplayName("wood") + " " + totalCosts.wood);
if (totalCosts.metal) costs.push(getCostComponentDisplayName("metal") + " " + totalCosts.metal);
if (totalCosts.stone) costs.push(getCostComponentDisplayName("stone") + " " + totalCosts.stone);
if (totalCosts.population) costs.push(getCostComponentDisplayName("population") + " " + totalCosts.population);
if (totalCosts.time) costs.push(getCostComponentDisplayName("time") + " " + totalCosts.time);
return costs;
}

Binary file not shown.

View File

@ -6,10 +6,14 @@ function ProductionQueue() {}
ProductionQueue.prototype.Schema =
"<a:help>Allows the building to train new units and research technologies</a:help>" +
"<a:example>" +
"<BatchTimeFactor>0.7</BatchTimeFactor>" +
"<Entities datatype='tokens'>" +
"\n units/{civ}_support_female_citizen\n units/{civ}_support_trader\n units/celt_infantry_spearman_b\n " +
"</Entities>" +
"</a:example>" +
"<element name='BatchTimeFactor' a:help='Factor that influences the time benefit for batch training'>" +
"<ref name='nonNegativeDecimal'/>" +
"</element>" +
"<optional>" +
"<element name='Entities' a:help='Space-separated list of entity template names that this building can train. The special string \"{civ}\" will be automatically replaced by the building&apos;s four-character civ code'>" +
"<attribute name='datatype'>" +
@ -399,8 +403,14 @@ ProductionQueue.prototype.ResetQueue = function()
ProductionQueue.prototype.GetBatchTime = function(batchSize)
{
var cmpPlayer = QueryOwnerInterface(this.entity, IID_Player);
var batchTimeFactor = +this.template.BatchTimeFactor;
var cmpTechMan = QueryOwnerInterface(this.entity, IID_TechnologyManager);
if (cmpTechMan)
batchTimeFactor = cmpTechMan.ApplyModifications("ProductionQueue/BatchTimeFactor", batchTimeFactor, this.entity);
// TODO: work out what equation we should use here.
return Math.pow(batchSize, 0.7) * cmpPlayer.cheatTimeMultiplier;
return Math.pow(batchSize, batchTimeFactor) * cmpPlayer.cheatTimeMultiplier;
};
ProductionQueue.prototype.OnOwnershipChanged = function(msg)

View File

@ -28,7 +28,7 @@
<GenericName>Tavern</GenericName>
<SpecificName>Taberna</SpecificName>
<History>Taverns are where Celtic warriors go for a tall glass of mead after a hard-won battle. Some might even find rest in one of the back rooms for rent in this seedy establishment.</History>
<Tooltip>Add +10 to Population Cap. Recruit fanatics.</Tooltip>
<Tooltip>Add +10 to Population Cap. Recruit fanatics.</Tooltip>
</Identity>
<Obstruction>
<Static width="17.0" depth="17.0"/>
@ -40,6 +40,7 @@
<Weight>65536</Weight>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/celt_fanatic
</Entities>

View File

@ -30,7 +30,7 @@
<GenericName>Stoa</GenericName>
<SpecificName>Hellenic Royal Stoa</SpecificName>
<History>A structure built for civic purposes. Stoas eventually became meeting places for philosophy and commerce. They were usually built within the Agora, or city center, of a Greek city.</History>
<Tooltip>Add +10 to Population Cap. Recruit special units.</Tooltip>
<Tooltip>Add +10 to Population Cap. Recruit special units.</Tooltip>
<Icon>gaia/special_stoa.png</Icon>
</Identity>
<Loot>
@ -49,9 +49,10 @@
<Weight>65536</Weight>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/mace_thureophoros
units/mace_thorakites
units/mace_thureophoros
units/mace_thorakites
units/thrace_black_cloak
</Entities>
</ProductionQueue>

View File

@ -22,6 +22,7 @@
<Radius>25</Radius>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/{civ}_support_female_citizen
</Entities>

View File

@ -22,6 +22,7 @@
<Radius>26</Radius>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/{civ}_support_female_citizen
</Entities>

View File

@ -11,15 +11,15 @@
<SpecificName>Agorā́</SpecificName>
<History>The most important place in Athens, the Agora served many purposes; it was a place for public speeches and was the stage for civic life and commercial interests.</History>
</Identity>
<Health>
<SpawnEntityOnDeath>rubble/rubble_hele_cc</SpawnEntityOnDeath>
<Health>
<SpawnEntityOnDeath>rubble/rubble_hele_cc</SpawnEntityOnDeath>
</Health>
<ProductionQueue>
<Entities datatype="tokens">
units/athen_infantry_spearman_b
units/athen_infantry_slinger_b
units/athen_cavalry_javelinist_b
</Entities>
</Entities>
</ProductionQueue>
<VisualActor>
<Actor>structures/athenians/civic_centre_new.xml</Actor>

View File

@ -25,7 +25,7 @@
units/athen_mechanical_siege_lithobolos
</Entities>
<Technologies datatype="tokens">
-pair_champ_02
-pair_champ_02
</Technologies>
</ProductionQueue>
<VisualActor>

View File

@ -35,6 +35,7 @@
</SoundGroups>
</Sound>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/athen_champion_infantry
units/athen_champion_ranged

View File

@ -35,6 +35,7 @@
</SoundGroups>
</Sound>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/athen_hero_themistocles
units/athen_hero_pericles

View File

@ -10,13 +10,11 @@
<Health>
<SpawnEntityOnDeath>rubble/rubble_celt_dock</SpawnEntityOnDeath>
</Health>
<Identity>
<Civ>brit</Civ>
<SpecificName>Crannog</SpecificName>
<History>A crannog (or crannoge) is the name given in Scotland and Ireland to an artificial island or natural island, used for a settlement. The name can also be used to refer to wooden platforms erected on shallow loch floors, although understandably few remains of this sort have been found. The choice of an island as a home is thought to have been for defence as well as the availability of food in the form of fish nearby.</History>
</Identity>
<Obstruction>
<Static width="10.0" depth="22.0"/>
</Obstruction>

View File

@ -53,6 +53,7 @@
<Weight>65536</Weight>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/brit_war_dog_b
</Entities>

View File

@ -5,8 +5,8 @@
<SpecificName>Merkāz</SpecificName>
<History>Carthiginian's History</History>
</Identity>
<Health>
<SpawnEntityOnDeath>rubble/rubble_kart_cc</SpawnEntityOnDeath>
<Health>
<SpawnEntityOnDeath>rubble/rubble_kart_cc</SpawnEntityOnDeath>
</Health>
<ProductionQueue>
<Entities datatype="tokens">

View File

@ -5,7 +5,7 @@
<Resources>
<wood>200</wood>
<stone>0</stone>
<metal>0</metal>
<metal>0</metal>
</Resources>
</Cost>
<Footprint>
@ -19,7 +19,7 @@
<Civ>cart</Civ>
<SpecificName>Celtic Embassy</SpecificName>
<History>The Celts supplied fierce warrior mercenaries for Carthaginian armies.</History>
<Tooltip>Hire Celtic mercenaries. Research improvements for these mercenaries.</Tooltip>
<Tooltip>Hire Celtic mercenaries. Research improvements for these mercenaries.</Tooltip>
<Icon>structures/celtic_embassy.png</Icon>
</Identity>
<Obstruction>

View File

@ -5,14 +5,14 @@
<Resources>
<wood>0</wood>
<stone>200</stone>
<metal>0</metal>
<metal>0</metal>
</Resources>
</Cost>
<Identity>
<Civ>cart</Civ>
<SpecificName>Iberian Embassy</SpecificName>
<History>The Iberians were known as fierce mercenaries, loyal to their paymasters.</History>
<Tooltip>Hire Iberian mercenaries. Research improvements for these mercenaries.</Tooltip>
<Tooltip>Hire Iberian mercenaries. Research improvements for these mercenaries.</Tooltip>
<Icon>structures/iberian_embassy.png</Icon>
</Identity>
<Obstruction>

View File

@ -5,7 +5,7 @@
<Resources>
<wood>0</wood>
<stone>0</stone>
<metal>200</metal>
<metal>200</metal>
</Resources>
</Cost>
<Footprint>
@ -19,7 +19,7 @@
<Civ>cart</Civ>
<SpecificName>Italiote Embassy</SpecificName>
<History>When Hannibal invaded Italy and defeated the Romans in a series of battles, many of the Italian peoples subject to Rome, including the Italian Greeks and powerful Samnites, revolted and joined the Carthaginian cause.</History>
<Tooltip>Hire Italian mercenaries. Research improvements for these mercenaries.</Tooltip>
<Tooltip>Hire Italian mercenaries. Research improvements for these mercenaries.</Tooltip>
<Icon>structures/italian_embassy.png</Icon>
</Identity>
<Obstruction>

View File

@ -6,7 +6,7 @@
</Footprint>
<Identity>
<Civ>cart</Civ>
<GenericName>Blockhouse Fort</GenericName>
<GenericName>Blockhouse Fort</GenericName>
<SpecificName>Ḥamet</SpecificName>
<History>The Carthaginians built a number of rather 'monolithic' blockhouse forts sited at critical locations in North Africa, sometimes also in conjunction with long lengths of wall intended to keep the wilder people of the desert to the south from freely ranging into the ?civilised? territories under their direct control.</History>
</Identity>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Entity parent="template_structure_special">
<BuildRestrictions>
<Territory>own ally neutral</Territory>
<Territory>own ally neutral</Territory>
<PlacementType>shore</PlacementType>
<Category>Dock</Category>
</BuildRestrictions>
@ -11,9 +11,9 @@
<SpecificName>Cothon</SpecificName>
<Classes datatype="tokens">-City Town</Classes>
<History>The structure is based upon the centre island of the inner harbour constructed to house the war fleet of the Carthaginian navy at Carthage.</History>
<Tooltip>Construct and repair mighty warships.</Tooltip>
<Tooltip>Construct and repair mighty warships.</Tooltip>
<Icon>structures/uber_dock.png</Icon>
<RequiredTechnology>phase_town</RequiredTechnology>
<RequiredTechnology>phase_town</RequiredTechnology>
</Identity>
<Cost>
<PopulationBonus>10</PopulationBonus>
@ -35,7 +35,7 @@
<Static width="42.0" depth="58.0"/>
</Obstruction>
<Position>
<Floating>true</Floating>
<Floating>true</Floating>
</Position>
<RallyPointRenderer>
<LinePassabilityClass>ship</LinePassabilityClass>
@ -50,6 +50,7 @@
<TerritoryDecay disable=""/>
<TerritoryInfluence disable=""/>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/cart_ship_bireme
units/cart_ship_trireme

View File

@ -9,8 +9,8 @@
<SpecificName>Caer</SpecificName>
<History>This was be the centre of the town, a great hall where the clan leader resided. All political matters were probably performed inside such a structure.</History>
</Identity>
<Health>
<SpawnEntityOnDeath>rubble/rubble_celt_cc</SpawnEntityOnDeath>
<Health>
<SpawnEntityOnDeath>rubble/rubble_celt_cc</SpawnEntityOnDeath>
</Health>
<Obstruction>
<Static width="25.0" depth="25.0"/>

View File

@ -7,7 +7,7 @@
<Square width="12.0" depth="24.0"/>
<Height>8.0</Height>
</Footprint>
<Health>
<Health>
<SpawnEntityOnDeath>rubble/rubble_celt_dock</SpawnEntityOnDeath>
</Health>
<Identity>

View File

@ -21,7 +21,7 @@
<SpecificName>Brythonic Broch</SpecificName>
<Tooltip>Train Brythonic heroes and champions. Construct siege rams.</Tooltip>
<History>The Broch is an Iron Age round tower fortification type unique to Scotland. The origin of brochs remains a mystery. Some archaeologists believed the brochs were built by an influx of broch builders who had been displaced and pushed northward during the Roman invasion of Britain. However, this theory has been largely disproven and current thought is that they were built by itinerant (travelling) craftsmen since so many were built to almost the same exact design. </History>
<RequiredTechnology>phase_city_britons</RequiredTechnology>
<RequiredTechnology>phase_city_britons</RequiredTechnology>
</Identity>
<Obstruction>
<Static width="29.0" depth="29.0"/>
@ -40,7 +40,7 @@
units/celt_hero_cynvelin
units/celt_champion_cavalry_brit
units/celt_champion_infantry_brit
units/celt_mechanical_siege_ram
units/celt_mechanical_siege_ram
</Entities>
</ProductionQueue>
<Vision>

View File

@ -8,7 +8,7 @@
<SpecificName>Gallic Dun</SpecificName>
<Tooltip>Train Gallic heroes and champions. Construct siege rams.</Tooltip>
<History>Dun comes from the Brythonic Din and Gaelic Dun, meaning fort, and is now used as a general term for small stone built strongholds. Duns appear to have arrived with the Brythonic Celts in about the 7th century BC, associated with their Iron age culture of warrior tribes and petty chieftains. Early Duns had near vertical ramparts constructed of stone laced with timber, and where this was set on fire (accidentally or on purpose) it forms the vitrified forts where stones have been partly melted, an effect that is still clearly visible. Use of Duns continued in some cases into the medieval period.</History>
<RequiredTechnology>phase_city_gauls</RequiredTechnology>
<RequiredTechnology>phase_city_gauls</RequiredTechnology>
</Identity>
<Sound>
<SoundGroups>
@ -24,7 +24,7 @@
units/celt_hero_vercingetorix
units/celt_champion_cavalry_gaul
units/celt_champion_infantry_gaul
units/celt_mechanical_siege_ram
units/celt_mechanical_siege_ram
</Entities>
</ProductionQueue>
<VisualActor>

View File

@ -33,7 +33,7 @@
<SpecificName>Kennel</SpecificName>
<Tooltip>Train Celtic war dogs.</Tooltip>
<Icon>structures/kennel.png</Icon>
<RequiredTechnology>phase_town</RequiredTechnology>
<RequiredTechnology>phase_town</RequiredTechnology>
</Identity>
<Obstruction>
<Static width="7.5" depth="6.75"/>
@ -53,6 +53,7 @@
<Weight>65536</Weight>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/celt_war_dog_b
</Entities>

View File

@ -9,8 +9,8 @@
<SpecificName>Caer</SpecificName>
<History>This was be the centre of the town, a great hall where the clan leader resided. All political matters were probably performed inside such a structure.</History>
</Identity>
<Health>
<SpawnEntityOnDeath>rubble/rubble_celt_cc</SpawnEntityOnDeath>
<Health>
<SpawnEntityOnDeath>rubble/rubble_celt_cc</SpawnEntityOnDeath>
</Health>
<Obstruction>
<Static width="25.0" depth="25.0"/>

View File

@ -7,7 +7,7 @@
<Square width="12.0" depth="24.0"/>
<Height>8.0</Height>
</Footprint>
<Health>
<Health>
<SpawnEntityOnDeath>rubble/rubble_celt_dock</SpawnEntityOnDeath>
</Health>
<Identity>

View File

@ -23,7 +23,7 @@
units/gaul_hero_vercingetorix
units/gaul_champion_cavalry
units/gaul_champion_infantry
units/gaul_mechanical_siege_ram
units/gaul_mechanical_siege_ram
</Entities>
</ProductionQueue>
<VisualActor>

View File

@ -11,15 +11,15 @@
<SpecificName>Agorā́</SpecificName>
<History>The most important place in most Classical Greek poleis, the Agora served many purposes; it was a place for public speeches and was the stage for civic life and commercial interests.</History>
</Identity>
<Health>
<SpawnEntityOnDeath>rubble/rubble_hele_cc</SpawnEntityOnDeath>
<Health>
<SpawnEntityOnDeath>rubble/rubble_hele_cc</SpawnEntityOnDeath>
</Health>
<ProductionQueue>
<Entities datatype="tokens">
units/hele_infantry_spearman_b
units/hele_infantry_javelinist_b
units/hele_cavalry_javelinist_b
</Entities>
</Entities>
</ProductionQueue>
<VisualActor>
<Actor>structures/hellenes/civic_centre_new.xml</Actor>

View File

@ -35,6 +35,7 @@
</SoundGroups>
</Sound>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/hele_champion_cavalry_mace
units/hele_champion_infantry_mace

View File

@ -35,6 +35,7 @@
</SoundGroups>
</Sound>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/hele_hero_alexander
units/hele_hero_demetrius

View File

@ -5,7 +5,7 @@
<SpecificName>Oppidum</SpecificName>
<History>The Oppidum, plural Oppida (oh-PEE-dah), has a long history in the Iberian Peninsula. They were walled towns, dating back to even before the time period of the game and expanding greatly during it. They were usually built upon heights for better defensive purposes but sometimes right out on the plains, especially in the east where there may not have been heights at desirable locations near meandering rivers. This concept drawing is derived from an actual archeological site that has been excavated in the northeast of Spain having belonged to the Ilergete (ee-layer-HAY-tay) tribe as shown in the figure below and from the virtual reconstruction of the site at the museum located adjacent to it.</History>
</Identity>
<Health>
<Health>
<SpawnEntityOnDeath>rubble/rubble_iber_cc</SpawnEntityOnDeath>
</Health>
<ProductionQueue>

View File

@ -26,7 +26,7 @@
units/iber_hero_variato
units/iber_champion_infantry
units/iber_champion_cavalry
units/iber_mechanical_siege_ram
units/iber_mechanical_siege_ram
</Entities>
</ProductionQueue>
<VisualActor>

View File

@ -11,8 +11,8 @@
<SpecificName>Agorā́</SpecificName>
<History>The most important place in most Classical Greek poleis, the Agora served many purposes; it was a place for public speeches and was the stage for civic life and commercial interests.</History>
</Identity>
<Health>
<SpawnEntityOnDeath>rubble/rubble_hele_cc</SpawnEntityOnDeath>
<Health>
<SpawnEntityOnDeath>rubble/rubble_hele_cc</SpawnEntityOnDeath>
</Health>
<ProductionQueue>
<Entities datatype="tokens">
@ -22,7 +22,7 @@
units/mace_hero_philip
units/mace_hero_alexander
units/mace_hero_demetrius
</Entities>
</Entities>
</ProductionQueue>
<VisualActor>
<Actor>structures/macedonians/civic_centre.xml</Actor>

View File

@ -21,8 +21,8 @@
</Obstruction>
<ProductionQueue>
<Entities datatype="tokens">
units/mace_champion_infantry_a
units/mace_champion_cavalry
units/mace_champion_infantry_a
units/mace_champion_cavalry
units/mace_mechanical_siege_oxybeles
units/mace_mechanical_siege_lithobolos
units/mace_mechanical_siege_ram

View File

@ -19,6 +19,7 @@
<Static width="25.0" depth="30.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Technologies datatype="tokens">
hellenes/special_hellenistic_metropolis
</Technologies>

View File

@ -9,8 +9,8 @@
<Entities datatype="tokens">
units/maur_infantry_archer_b
units/maur_infantry_spearman_b
units/maur_infantry_swordsman_b
units/maur_cavalry_javelinist_b
units/maur_infantry_swordsman_b
units/maur_cavalry_javelinist_b
</Entities>
</ProductionQueue>
<VisualActor>

View File

@ -9,8 +9,7 @@
<SpecificName>Rajadhanika</SpecificName>
<History>Civ Centre</History>
</Identity>
<Health>
<Health>
<SpawnEntityOnDeath>rubble/rubble_maur_cc</SpawnEntityOnDeath>
</Health>
<Obstruction>
@ -21,7 +20,7 @@
units/maur_infantry_spearman_b
units/maur_infantry_archer_b
units/maur_cavalry_javelinist_b
units/maur_support_elephant
units/maur_support_elephant
</Entities>
</ProductionQueue>
<VisualActor>

View File

@ -20,7 +20,7 @@
<Civ>maur</Civ>
<GenericName>Elephant Stables</GenericName>
<SpecificName>Vāraṇaśālā</SpecificName>
<History>Elephant Stables.</History>
<History>Elephant Stables.</History>
<Icon>structures/palace.png</Icon>
<Tooltip>Train elephant units.</Tooltip>
</Identity>
@ -28,8 +28,9 @@
<Static width="25.0" depth="25.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/maur_support_elephant
units/maur_support_elephant
units/maur_cavalry_archer_b
units/maur_champion_elephant
</Entities>

View File

@ -3,7 +3,7 @@
<Identity>
<Civ>maur</Civ>
<SpecificName>Durg</SpecificName>
<History>Fortress.</History>
<History>Fortress.</History>
<Tooltip>Train heroes and champion units.</Tooltip>
</Identity>
<ProductionQueue>
@ -11,9 +11,9 @@
units/maur_hero_chanakya
units/maur_hero_maurya
units/maur_hero_ashoka
units/maur_champion_chariot
units/maur_champion_maiden
units/maur_champion_infantry
units/maur_champion_chariot
units/maur_champion_maiden
units/maur_champion_infantry
</Entities>
</ProductionQueue>
<VisualActor>

View File

@ -34,6 +34,7 @@
<Radius>38</Radius>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/pers_hero_cyrus
units/pers_hero_darius

View File

@ -4,19 +4,19 @@
<Civ>pers</Civ>
<SpecificName>Padgan</SpecificName>
<History>The Persian barracks was often the armory where the weapons of the national regiment of that region was stored. </History>
<Tooltip>Levy citizen-infantry units.</Tooltip>
<Tooltip>Levy citizen-infantry units.</Tooltip>
<Icon>structures/pers_barracks.png</Icon>
</Identity>
<ProductionQueue>
<Entities datatype="tokens">
units/pers_infantry_spearman_b
units/pers_infantry_javelinist_b
units/pers_infantry_archer_b
units/pers_infantry_archer_b
</Entities>
<Technologies datatype="tokens">
pair_inf_01
pair_inf_02
-pair_cav_01
pair_inf_01
pair_inf_02
-pair_cav_01
</Technologies>
</ProductionQueue>
<VisualActor>

View File

@ -2,11 +2,11 @@
<Entity parent="template_structure_civic_civil_centre">
<Identity>
<Civ>pers</Civ>
<GenericName>Provincial Governor</GenericName>
<GenericName>Provincial Governor</GenericName>
<SpecificName>Xsacapava</SpecificName>
<History>Possibly of Median origin, the word 'satrapy' means province. Soon after coming to the throne, Darius the Great carried out a vast administrative reform, dividing the huge empire into 20 satrapies governed by satraps.</History>
</Identity>
<Health>
<Health>
<SpawnEntityOnDeath>rubble/rubble_pers_cc</SpawnEntityOnDeath>
</Health>
<ProductionQueue>

View File

@ -4,7 +4,7 @@
<Square width="23.5" depth="16.0"/>
<Height>8.0</Height>
</Footprint>
<Health>
<Health>
<SpawnEntityOnDeath>rubble/rubble_pers_dock</SpawnEntityOnDeath>
</Health>
<Identity>

View File

@ -4,12 +4,12 @@
<Civ>pers</Civ>
<SpecificName>Dezh</SpecificName>
<History>The Susa Chateau was a fortress in the administrative capital of Susa, which was reconstructed by a French archaeologist in 1890 with the use of original building material.</History>
<Tooltip>Train Champion Units and Construct Siege Rams.</Tooltip>
<Tooltip>Train Champion Units and Construct Siege Rams.</Tooltip>
</Identity>
<ProductionQueue>
<Entities datatype="tokens">
units/pers_champion_cavalry
units/pers_mechanical_siege_ram
units/pers_mechanical_siege_ram
</Entities>
</ProductionQueue>
<VisualActor>

View File

@ -42,6 +42,7 @@ Train War Elephants and Kardakes mercenaries.</Tooltip>
<Radius>38</Radius>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/pers_kardakes_hoplite
units/pers_kardakes_skirmisher

View File

@ -76,6 +76,7 @@
</TerritoryDecay>
<TerritoryInfluence disable=""/>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/rome_infantry_swordsman_b
units/rome_infantry_spearman_a

View File

@ -12,9 +12,9 @@
units/rome_hero_scipio
units/rome_champion_infantry
units/rome_champion_cavalry
units/rome_mechanical_siege_ballista
units/rome_mechanical_siege_scorpio
units/rome_mechanical_siege_ram
units/rome_mechanical_siege_ballista
units/rome_mechanical_siege_scorpio
units/rome_mechanical_siege_ram
</Entities>
</ProductionQueue>
<VisualActor>

View File

@ -24,7 +24,7 @@
units/spart_mechanical_siege_ram
</Entities>
<Technologies datatype="tokens">
-pair_champ_02
-pair_champ_02
</Technologies>
</ProductionQueue>
<VisualActor>

View File

@ -35,6 +35,7 @@
</SoundGroups>
</Sound>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/hele_hero_leonidas
</Entities>

View File

@ -35,6 +35,7 @@
</SoundGroups>
</Sound>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/spart_hero_leonidas
units/spart_hero_agis

View File

@ -82,6 +82,7 @@
<Static width="30.0" depth="30.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/{civ}_support_female_citizen
</Entities>

View File

@ -74,6 +74,7 @@
<Weight>65536</Weight>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/{civ}_support_healer_b
</Entities>

View File

@ -70,6 +70,7 @@
<Static width="7.0" depth="7.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Technologies datatype="tokens">
pair_tower_01
</Technologies>

View File

@ -69,6 +69,7 @@
<Static width="6.5" depth="6.5"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Technologies datatype="tokens">
decay_outpost
</Technologies>

View File

@ -44,6 +44,7 @@
<Static width="12.0" depth="12.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Technologies datatype="tokens">
gather_farming_plough
</Technologies>

View File

@ -57,6 +57,7 @@
<Weight>65536</Weight>
</TerritoryInfluence>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Technologies datatype="tokens">
armor_trade_convoys
</Technologies>

View File

@ -44,11 +44,12 @@
<Static width="13.0" depth="13.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Technologies datatype="tokens">
pair_gather_01
pair_gather_02
pair_gather_03
pair_gather_wood_01
pair_gather_wood_01
</Technologies>
</ProductionQueue>
<RallyPoint disable=""/>

View File

@ -52,6 +52,7 @@
<Static width="17.0" depth="17.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Technologies datatype="tokens">
pair_inf_01
pair_inf_02

View File

@ -47,7 +47,7 @@
<Static width="18.0" depth="18.0"/>
</Obstruction>
<Position>
<Floating>true</Floating>
<Floating>true</Floating>
</Position>
<RallyPointRenderer>
<LinePassabilityClass>ship</LinePassabilityClass>
@ -64,6 +64,7 @@
</Sound>
<TerritoryDecay disable=""/>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/{civ}_ship_fishing
units/{civ}_ship_merchant

View File

@ -32,6 +32,9 @@
<Obstruction>
<Static width="16.0" depth="16.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
</ProductionQueue>
<TerritoryInfluence>
<Radius>25</Radius>
</TerritoryInfluence>

View File

@ -71,6 +71,7 @@
<Static width="25.0" depth="25.0"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Technologies datatype="tokens">
pair_champ_02
siege_attack

View File

@ -48,6 +48,7 @@
<Static width="9.5" depth="19.75"/>
</Obstruction>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
gaia/fauna_sheep
</Entities>

View File

@ -6,19 +6,20 @@
<Identity>
<Civ>athen</Civ>
<SpecificName>Triḗrēs Athēnaïkós</SpecificName>
<GenericName>Athenian Trireme</GenericName>
<GenericName>Athenian Trireme</GenericName>
<Tooltip>Medium Warship.
Ramming Secondary Attack.</Tooltip>
<History>The first Triremes were built circa 650BC, and by 500BC the Trireme was the most widely used heavy warship of the Greek city-states. In the Trireme the outriggers were now an integral part of the ship's hull. The Trireme also had a partial or full fighting deck above the rowers. The length of the Trireme remained approximately 35-38 meters, and the beam was approximately 3.5 metres. A Trireme carried 170 oarsmen, plus twenty sailors and fourteen marines in Greek navies. The top speed of a Trireme was approximately 11.5 knots. Some Triremes may have been able to reach higher speeds in short bursts. A Trireme travelling from Athens to Mitylene in 427BC made the 350 kilometre trip in only 24 hours, averaging eight knots (14.6 km/h). The Trireme could accelerate much faster than a Bireme or Penteconter, and was much more manoeuvrable. This gave the Trireme an advantage in combat, where higher speed and manoeuvrability meant a better chance of victory.</History>
<Icon>units/hele_ship_trireme.png</Icon>
</Identity>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/athen_champion_marine
units/athen_infantry_archer_b
units/athen_infantry_archer_b
</Entities>
<Technologies datatype="tokens">
hellenes/special_iphicratean_reforms
hellenes/special_iphicratean_reforms
</Technologies>
</ProductionQueue>
<VisualActor>

View File

@ -8,14 +8,15 @@
</Builder>
<Identity>
<Civ>maur</Civ>
<GenericName>Ashoka the Great</GenericName>
<GenericName>Ashoka the Great</GenericName>
<SpecificName>Aśoka Devānāmpriya</SpecificName>
<Icon>units/pers_hero_cyrus.png</Icon>
<Tooltip>Hero Cavalry Lancer.
<Tooltip>Hero Cavalry Lancer.
Hero Aura: "TBD."</Tooltip>
<History>TBD.</History>
</Identity>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/maur_champion_maiden
units/maur_champion_maiden_archer

View File

@ -9,38 +9,38 @@
<Melee>
<Hack>25.0</Hack>
<Crush>25.0</Crush>
<Bonuses>
<BonusStructures>
<Classes>Structure</Classes>
<Multiplier>1.5</Multiplier>
</BonusStructures>
<BonusCav>
<Classes>Cavalry</Classes>
<Multiplier>1.5</Multiplier>
</BonusCav>
<BonusGates>
<Classes>Gates</Classes>
<Multiplier>1.5</Multiplier>
</BonusGates>
</Bonuses>
<Bonuses>
<BonusStructures>
<Classes>Structure</Classes>
<Multiplier>1.5</Multiplier>
</BonusStructures>
<BonusCav>
<Classes>Cavalry</Classes>
<Multiplier>1.5</Multiplier>
</BonusCav>
<BonusGates>
<Classes>Gates</Classes>
<Multiplier>1.5</Multiplier>
</BonusGates>
</Bonuses>
</Melee>
<Charge>
<Hack>75.0</Hack>
<Crush>75.0</Crush>
<Bonuses>
<BonusStructures>
<Classes>Structure</Classes>
<Multiplier>1.5</Multiplier>
</BonusStructures>
<BonusCav>
<Classes>Cavalry</Classes>
<Multiplier>1.5</Multiplier>
</BonusCav>
<BonusGates>
<Classes>Gates</Classes>
<Multiplier>1.5</Multiplier>
</BonusGates>
</Bonuses>
<Bonuses>
<BonusStructures>
<Classes>Structure</Classes>
<Multiplier>1.5</Multiplier>
</BonusStructures>
<BonusCav>
<Classes>Cavalry</Classes>
<Multiplier>1.5</Multiplier>
</BonusCav>
<BonusGates>
<Classes>Gates</Classes>
<Multiplier>1.5</Multiplier>
</BonusGates>
</Bonuses>
</Charge>
</Attack>
<Cost>
@ -62,11 +62,12 @@
<Classes datatype="tokens">Elephant -Cavalry</Classes>
<GenericName>Chandragupta Maurya</GenericName>
<SpecificName>Chandragupta Maurya</SpecificName>
<Tooltip>Hero Aura: "TBD"</Tooltip>
<Tooltip>Hero Aura: "TBD"</Tooltip>
<History>TBD.</History>
<Icon>units/cart_hero_hannibal.png</Icon>
</Identity>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/maur_champion_maiden
units/maur_champion_maiden_archer

View File

@ -2,14 +2,15 @@
<Entity parent="template_unit_hero_cavalry_spearman">
<Identity>
<Civ>pers</Civ>
<GenericName>Cyrus II The Great</GenericName>
<GenericName>Cyrus II The Great</GenericName>
<SpecificName>Kurush II</SpecificName>
<Icon>units/pers_hero_cyrus.png</Icon>
<Tooltip>Hero Cavalry Lancer.
<Tooltip>Hero Cavalry Lancer.
Hero Aura: "Lead from the Front." Boosts attack of nearby cavalry units.</Tooltip>
<History>(559 BC - 530 BC) The son of a Median princess and the ruler of Anshan; justly called the 'Father of the Empire', Cyrus the Great conquered Media, Lydia, Babylonia and Bactria, thereby establishing the Persian Empire. He was also renown as a benevolent conqueror. Technically the second ruler of the Persians by that name, and so appears as Kurush II on his documents and coins. Kurush I was his grandfather.</History>
</Identity>
<ProductionQueue>
<BatchTimeFactor>0.7</BatchTimeFactor>
<Entities datatype="tokens">
units/pers_champion_infantry
</Entities>