Skip to content

Identity

Examples

Example

<Identity>
  <Civ>
    athen
  </Civ>
  <GenericName>
    Athenian Hoplite
  </GenericName>
  <SpecificName>
    Hoplī́tēs Athēnaïkós
  </SpecificName>
  <Icon>
    units/athen_infantry_spearman.png
  </Icon>
</Identity>

XML Elements

The following elements can be used within this component:

Identity

Civ

Civilization that this unit is primarily associated with, typically a 4-letter code. Choices include: gaia (world objects), skirm (skirmish map placeholders), athen (Athenians), brit (Britons), cart (Carthaginians), gaul (Gauls), han (Han Chinese), iber (Iberians), kush (Kushites), mace (Macedonians), maur (Mauryas), pers (Persians), ptol (Ptolemies), rome (Romans), sele (Seleucids), spart (Spartans).

Type: text

Path: Identity/Civ

Lang

Unit language for voices.

Type: text

Path: Identity/Lang

Phenotype

Unit phenotype for voices and visual. If more than one is specified a random one will be chosen.

Type: text

Path: Identity/Phenotype

GenericName

Generic English-language name for this entity.

Path: Identity/GenericName

SpecificName

Specific native-language name for this entity.

Path: Identity/SpecificName

SelectionGroupName

Name used to group ranked entities.

Type: text

Path: Identity/SelectionGroupName

Tooltip

Path: Identity/Tooltip

History

Path: Identity/History

Rank

Path: Identity/Rank

Classes

Optional list of space-separated classes applying to this entity. Choices include: AfricanElephant, AmunGuard, Animal, ApedemakGuard, Ashoka, Barter, Bireme, CitizenSoldier, CivCentre, CivSpecific, ConquestCritical, Domestic, DropsiteFood, DropsiteMetal, DropsiteStone, DropsiteWood, FastMoving, Formation, Foundation, GarrisonFortress, Human, IndianElephant, Juggernaut, KushTrireme, MercenaryCamp, Organic, Player, PtolemyIV, Quinquereme, SeaCreature, Spy, Structure, Trireme, Unit, WallLong, WallMedium, WallShort, WallTower.

Type: text

Path: Identity/Classes

VisibleClasses

Optional list of space-separated classes applying to this entity. These classes will also be visible in various GUI elements. Choices include: Academy, Amphitheater, Archer, ArmyCamp, ArrowShip, Arsenal, ArtilleryTower, Auxiliary, Axeman, Barracks, BoltShooter, BoltTower, Bribable, Builder, Camel, Cataphract, Cavalry, Centurion, Champion, Chariot, Citizen, City, Civilian, Civic, CivilCentre, Colony, Corral, Council, Crossbowman, Defensive, Dock, Dog, Economic, Elephant, ElephantStable, Embassy, Farmstead, Field, Fireship, FishingBoat, Forge, Fortress, Gate, Gladiator, GreatTower, Gymnasium, Hall, Healer, Heavy, Hero, House, IceHouse, Ignited, Immortal, ImperialCourt, ImperialMinistry, Infantry, Javelineer, Kennel, LaoziGate, Legionary, Library, Lighthouse, Longsword, Maceman, Melee, Market, Mercenary, Military, Minister, Monument, Naval, NavalRam, NavalSiege, Outpost, Palace, Palisade, Pikeman, Pillar, Pirate, Pyramid, Ram, Range, Ranged, Relic, Resource, RotaryMill, ScoutShip, SentryTower, Ship, Shipyard, Shrine, Siege, SiegeTower, SiegeWall, Slave, Slinger, Soldier, Spearman, Stable, Stoa, StoneThrower, StoneTower, Storehouse, Support, Swordsman, Syssiton, Temple, TempleOfAmun, TempleOfApedemak, TempleOfIsis, TempleOfMars, TempleOfVesta, Tent, Theater, Tower, Town, Trade, Trader, TriumphalArch, Trumpeter, Village, Wall, Warship, Wonder, Worker.

Path: Identity/VisibleClasses

Icon

Type: text

Path: Identity/Icon

Requirements

The requirements that ought to be met before this entity can be produced.

Path: Identity/Requirements

All

Requires all of the conditions to be met.

Path: Identity/Requirements/All

Entities

Entities that need to be controlled.

Path: Identity/Requirements/All/Entities

{EntitiesType}

Class of entity that needs to be controlled.

Path: Identity/Requirements/All/Entities/{EntitiesType}

Count

Number of entities required.

Type: non-negative integer (e.g. 0 or 5)

Path: Identity/Requirements/All/Entities/{EntitiesType}/Count

Variants

Number of different entities of this class required.

Type: non-negative integer (e.g. 0 or 5)

Path: Identity/Requirements/All/Entities/{EntitiesType}/Variants

Techs

White-space separated list of technologies that need to be researched. ! negates a tech.

Type: text

Path: Identity/Requirements/All/Techs

Any

Requires at least one of the following conditions met.

Path: Identity/Requirements/Any

Entities

Entities that need to be controlled.

Path: Identity/Requirements/Any/Entities

{EntitiesType}

Class of entity that needs to be controlled.

Path: Identity/Requirements/Any/Entities/{EntitiesType}

Count

Number of entities required.

Type: non-negative integer (e.g. 0 or 5)

Path: Identity/Requirements/Any/Entities/{EntitiesType}/Count

Variants

Number of different entities of this class required.

Type: non-negative integer (e.g. 0 or 5)

Path: Identity/Requirements/Any/Entities/{EntitiesType}/Variants

Techs

White-space separated list of technologies that need to be researched. ! negates a tech.

Type: text

Path: Identity/Requirements/Any/Techs

Entities

Entities that need to be controlled.

Path: Identity/Requirements/Entities

{EntitiesType}

Class of entity that needs to be controlled.

Path: Identity/Requirements/Entities/{EntitiesType}

Count

Number of entities required.

Type: non-negative integer (e.g. 0 or 5)

Path: Identity/Requirements/Entities/{EntitiesType}/Count

Variants

Number of different entities of this class required.

Type: non-negative integer (e.g. 0 or 5)

Path: Identity/Requirements/Entities/{EntitiesType}/Variants

Techs

White-space separated list of technologies that need to be researched. ! negates a tech.

Type: text

Path: Identity/Requirements/Techs

Tooltip

A tooltip explaining the requirements.

Type: text

Path: Identity/Requirements/Tooltip

Controllable

Whether players can control this entity. Defaults to true.

Type: boolean (true or false)

Path: Identity/Controllable

Undeletable

Prevent players from deleting this entity.

Type: boolean (true or false)

Path: Identity/Undeletable

RELAX NG Grammar

<define name="component.Identity">
  <element name="Identity">
    <interleave>
      <element name="Civ"/>
      <optional>
        <element name="Lang"/>
      </optional>
      <optional>
        <element name="Phenotype">
          <attribute name="datatype">
            <value>
            </value>
          </attribute>
          <text/>
        </element>
      </optional>
      <element name="GenericName">
        <optional>
          <attribute name="context"/>
        </optional>
        <optional>
          <attribute name="comment"/>
        </optional>
        <text/>
      </element>
      <optional>
        <element name="SpecificName">
          <optional>
            <attribute name="context"/>
          </optional>
          <optional>
            <attribute name="comment"/>
          </optional>
          <text/>
        </element>
      </optional>
      <optional>
        <element name="SelectionGroupName"/>
      </optional>
      <optional>
        <element name="Tooltip">
          <optional>
            <attribute name="context"/>
          </optional>
          <optional>
            <attribute name="comment"/>
          </optional>
          <text/>
        </element>
      </optional>
      <optional>
        <element name="History">
          <optional>
            <attribute name="context"/>
          </optional>
          <optional>
            <attribute name="comment"/>
          </optional>
          <text/>
        </element>
      </optional>
      <optional>
        <element name="Rank">
          <optional>
            <attribute name="context"/>
          </optional>
          <optional>
            <attribute name="comment"/>
          </optional>
          <choice>
            <value>
            </value>
            <value>
            </value>
            <value>
            </value>
          </choice>
        </element>
      </optional>
      <optional>
        <element name="Classes">
          <attribute name="datatype">
            <value>
            </value>
          </attribute>
          <text/>
        </element>
      </optional>
      <optional>
        <element name="VisibleClasses">
          <optional>
            <attribute name="context"/>
          </optional>
          <optional>
            <attribute name="comment"/>
          </optional>
          <attribute name="datatype">
            <value>
            </value>
          </attribute>
          <text/>
        </element>
      </optional>
      <element name="Icon"/>
      <optional>
        <element name="Requirements">
          <optional>
            <choice>
              <element name="All">
                <oneOrMore>
                  <choice>
                    <element name="Entities">
                      <oneOrMore>
                        <element>
                          <anyName/>
                          <oneOrMore>
                            <choice>
                              <element name="Count">
                                <data type="nonNegativeInteger"/>
                              </element>
                              <element name="Variants">
                                <data type="nonNegativeInteger"/>
                              </element>
                            </choice>
                          </oneOrMore>
                        </element>
                      </oneOrMore>
                    </element>
                    <element name="Techs">
                      <attribute name="datatype">
                        <value>
                        </value>
                      </attribute>
                      <text/>
                    </element>
                  </choice>
                </oneOrMore>
              </element>
              <element name="Any">
                <oneOrMore>
                  <choice>
                    <element name="Entities">
                      <oneOrMore>
                        <element>
                          <anyName/>
                          <oneOrMore>
                            <choice>
                              <element name="Count">
                                <data type="nonNegativeInteger"/>
                              </element>
                              <element name="Variants">
                                <data type="nonNegativeInteger"/>
                              </element>
                            </choice>
                          </oneOrMore>
                        </element>
                      </oneOrMore>
                    </element>
                    <element name="Techs">
                      <attribute name="datatype">
                        <value>
                        </value>
                      </attribute>
                      <text/>
                    </element>
                  </choice>
                </oneOrMore>
              </element>
              <element name="Entities">
                <oneOrMore>
                  <element>
                    <anyName/>
                    <oneOrMore>
                      <choice>
                        <element name="Count">
                          <data type="nonNegativeInteger"/>
                        </element>
                        <element name="Variants">
                          <data type="nonNegativeInteger"/>
                        </element>
                      </choice>
                    </oneOrMore>
                  </element>
                </oneOrMore>
              </element>
              <element name="Techs">
                <attribute name="datatype">
                  <value>
                  </value>
                </attribute>
                <text/>
              </element>
            </choice>
          </optional>
          <optional>
            <element name="Tooltip"/>
          </optional>
        </element>
      </optional>
      <optional>
        <element name="Controllable">
          <data type="boolean"/>
        </element>
      </optional>
      <element name="Undeletable">
        <data type="boolean"/>
      </element>
    </interleave>
  </element>
</define>