The Glest Wiki
Engines_icons.png This article documents Glest, GAE, and MegaGlest

This is noted in the colored backgrounds, which denote lines as being engine specific. See the key below.[Editing help]

v  d  e


Commands are the actions that a unit can be given. Unlike skills, which are called by commands, commands are directly the result of user interaction. For example, an attack command can be called by the player to issue an attack on the foe. All commands require some types of skills, which they use to find information like speed or the model.

Stop[]

<command>
	<type value="stop" />
	<name value="stop" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<stop-skill value="stop_skill" />
</command>

The stop command does exactly as its name implies: it stops the unit and cancels their queue. If the unit isn't doing something, it automatically stops.

type[]

The type of the command, in this case, stop. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

stop-skill[]

The name of the stop skill to use.

Move[]

<command>
	<type value="move" />
	<name value="move" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<move-skill value="move_skill" />
</command>

The move command is used to allow the unit to move from place to place.

type[]

The type of the command, in this case, move. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.

Repair[]

<command>
	<type value="repair" />
	<name value="repair" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<move-skill value="move_skill" />
	<repair-skill value="repair_skill" />
	<repaired-units>
		<unit name="my_unit" />
	</repaired-units>
</command>

The repair command is generally used for healing units of any kind, buildings or otherwise.

type[]

The type of the command, in this case, repair. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.

repair-skill[]

The name of the repair skill to use.

repaired-units[]

A list of units that can be repaired with this command. If you have radically different units, such as buildings and regular units, you could make two repair skills, such as one that "heals" humanoids and one that "repairs" buildings.

Build[]

<command>
	<type value="build" />
	<name value="build" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<move-skill value="move_skill"/>
	<build-skill value="build_skill"/>
	<buildings>
		<building name="building_name" tip="tip_name" />
	</buildings>
	<start-sound enabled="true">
		<sound-file path="sounds/sound_file.wav"/>
	</start-sound>
	<built-sound enabled="false"/>
		<sound-file path="sounds/sound_file.wav"/>
	</built-sound>
</command>

Build is used to construct buildings, with a given submenu. If you want multiple sub menus, use multiple buildings.

type[]

The type of the command, in this case, build. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.

build-skill[]

The name of the build skill to use.

buildings[]

List of buildings that could be built with this command. These units should all have "be_built" skills. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

start-sound[]

A list of sound files from which one will be randomly played whenever the unit starts building.

built-sound[]

A list of sound files from which one will be randomly played once the building is complete.

Harvest[]

<command>
	<type value="harvest" />
	<name value="harvest" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<move-skill value="move_skill"/>
	<harvest-skill value="harvest_skill"/>
	<stop-loaded-skill value="stop_skill"/>
	<move-loaded-skill value="move_skill"/>
	<harvested-resources>
		<resource name="resource"/>
	</harvested-resources>
	<max-load value="25"/>
	<hits-per-unit value="1"/>
</command>

Harvest commands are used for gathering resources, such as mining gold or chopping down trees.

type[]

The type of the command, in this case, harvest. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.

harvest-skill[]

The name of the harvest skill to use.

stop-loaded-skill[]

The name of the stop skill to use when the unit stops after harvesting a full load. This is often different because they could be carrying the resource back.

move-loaded-skill[]

The name of the move skill to use when the unit moves after harvesting a full load. This is often different because they could be carrying the resource back.

harvested-resources[]

A list of the resources that the unit can harvest (only tech or tileset resources can be harvested).

max-load[]

Maximum number of the resource the unit can carry before it has to take it back to a building for storage.

hits-per-unit[]

The number of hits (skill cycles) that must be performed to get each unit of the resource.

Produce[]

<command>
	<type value="produce" />
	<name value="produce" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<produce-skill value="produce_skill" />
	<produced-unit name="my_unit" />
	<!-- Start GAE Only -->
	<produced-units>
		<produced-unit name="my_unit" number="1" tip="tip_name" />
	</produced-units>
	<!-- End GAE Only -->
</command>

The produce command is used to produce a new unit.

type[]

The type of the command, in this case, produce. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

produce-skill[]

The name of the produce skill to use.

produced-unit[]

The name of the unit to produce.

produced-units[]

An alternative method of supplying the unit to produce in GAE. The difference is that it makes a submenu like build would have. There should only be one of either produced-unit or produced-units. Another GAE only optional value shown here is number, which can appear in either <produced-unit> or <produced-units> style production commands, and allows multi-production, which produces the number specified when the production is complete. Note that only the resources of one of the produced units will be expended. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

Upgrade[]

	<command>
		<type value="upgrade" />
		<name value="upgrade" tip="tip_name" />
		<image path="images/image.bmp" />
		<unit-requirements>
			<unit name="my_unit" />
		</unit-requirements>
		<upgrade-requirements>
			<upgrade name="my_upgrade" />
		</upgrade-requirements>
		<upgrade-skill value="upgrade_skill" />
		<produced-upgrade name="my_upgrade" />
		<!-- Start GAE Only -->
		<produced-upgrades>
			<upgrade name="my_upgrade" tip="tip_name" />
		</produced-upgrades>
		<!-- End GAE Only -->
	</command>

The upgrade command is used to initiate an upgrade.

type[]

The type of the command, in this case, upgrade. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

upgrade-skill[]

The name of the upgrade skill to use.

produced-upgrade[]

The name of the upgrade to initiate.

produced-upgrades[]

GAE only alternative which allows multiple upgrades in a single command, which are condensed into one sub menu, like buildings use. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

Morph[]

<command>
	<type value="morph" />
	<name value="morph" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<morph-skill value="morph_skill" />
	<morph-unit name="my_unit" />
	<!-- Start GAE Only -->
	<morph-units>
		<morph-unit name="my_unit" tip="tip_name" />
	</morph-units>
	<!-- End GAE Only -->
	<discount value="0" />
	<!-- Start GAE Only -->
	<cost-modifier value="0" />
	<finished-sound enabled="true">
		<sound-file path="sound/sound.wav" />
	</finished-sound>
	<!-- End GAE Only -->
	<!-- Start MG Only -->
	<ignore-resource-requirements value="false" />
	<!-- End MG Only -->
</command>

Similar to the produce command, but instead of making a new unit, the morph command converts the current unit into the new one. A unit can have a maximum of six morph commands.

type[]

The type of the command, in this case, morph. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

morph-skill[]

The name of the morph skill to use.

morph-unit[]

The name of the unit to morph into.

morph-units[]

An alternative way of morphing units in GAE. The difference is that multiple units can be morphed by presenting a submenu like the one build uses. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

discount[]

The amount of the resources used to return after morphing, as a percentage from 0-100. 0 would mean you pay the full cost, 100 would mean that you are reimbursed the entire cost after morphing. Note that this is returned after morphing, so the initial resources are still needed.

cost-modifier[]

Works the same way as discount, but instead of refunding the resource after the morph (and thus requiring the full resources to start), it reduces the amount required to perform the morph, thus, you can start a morph with just enough resources for the cost-reduced morph.

finished-sound[]

A list of sound files, from which one is randomly selected, to play when the morphing is complete.

ignore-resource-requirements[]

If this optional MegaGlest only value is true, the resource requirements of the morphed unit will be ignored (in other words, a free morph). Defaults to false.

Attack[]

<command>
	<type value="attack" />
	<name value="attack" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<move-skill value="move_skill" />
	<attack-skill value="attack_skill" />
	<!-- Start GAE Only -->
	<attack-skills>
		<attack-skill value="attack_skill">
			<flags>
				<whenever-possible />
			</flags>
		</attack-skill>
	</attack-skills>
	<!-- End GAE Only -->
</command>

The attack command is used to attack a foe. Most of the information is stored in its linked skill.

type[]

The type of the command, in this case, attack. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.

attack-skill[]

The name of the attack skill to use.

attack-skills[]

A GAE only alternative method of specifying the attack skill, this allows the attacks to be chosen based on the target. This uses a system of flags such as <whenever-possible /> or <at-max-range /> to specify circumstances in which to choose different skills. This is read from the top down (so the first one will be followed if the tag evaluates as true, even if the second one does too) and allows the AI to, for example, use a long ranged bow when the foe is far away, but otherwise use a short ranged sword.

Possible flags are: <whenever-possible />, <at-max-range />, <on-large />, <on-building />, and <when-damaged />. The attack-skill value is the attack skill to use when that flag is active. There can be multiple flags per attack-skill.

Attack stopped[]

<command>
	<type value="attack_stopped" />
	<name value="attack_stopped" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<stop-skill value="stop_skill" />
	<attack-skill value="attack_skill" />
	<!-- Start GAE Only -->
	<attack-skills>
		<attack-skill value="attack_skill">
			<flags>
				<whenever-possible />
			</flags>
		</attack-skill>
	</attack-skills>
	<!-- End GAE Only -->
</command>

This is like an attack command, but instead of moving towards a foe, it stands still and attacks the foe when they are in range. This makes it useful for buildings which don't have a move skill, and for units in the form of a hold position command.

type[]

The type of the command, in this case, attack_stopped. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

stop-skill[]

The name of the stop skill to use.

attack-skill[]

The name of the attack skill to use.

attack-skills[]

A GAE only alternative method of specifying the attack skill, this allows the attacks to be chosen based on the target. This uses a system of flags such as <whenever-possible /> or <at-max-range /> to specify circumstances in which to choose different skills. This is read from the top down (so the first one will be followed if the tag evaluates as true, even if the second one does too) and allows the AI to, for example, use a long ranged bow when the foe is far away, but otherwise use a short ranged sword.

Possible flags are: <whenever-possible />, <at-max-range />, <on-large />, <on-building />, and <when-damaged />. The attack-skill value is the attack skill to use when that flag is active. There can be multiple flags per attack-skill.

Guard[]

<!-- Start GAE Only -->
<command>
	<type value="guard" />
	<name value="guard" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<move-skill value="move_skill" />
	<attack-skill value="attack_skill" />
	<attack-skills>
		<attack-skill value="attack_skill">
			<flags>
				<whenever-possible />
			</flags>
		</attack-skill>
	</attack-skills>
	<max-distance value="2" />
</command>
<!-- End GAE Only -->

The guard command makes the unit follow an assigned unit, ready to attack.

type[]

The type of the command, in this case, guard. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.

attack-skill[]

The name of the attack skill to use.

max-distance[]

The maximum distance from the guarded unit the guard can be. If too large, they might be too far away to see an attacker, but if too close, they might get in the way of the guarded unit.

attack-skills[]

A GAE only alternative method of specifying the attack skill, this allows the attacks to be chosen based on the target. This uses a system of flags such as <whenever-possible /> or <at-max-range /> to specify circumstances in which to choose different skills. This is read from the top down (so the first one will be followed if the tag evaluates as true, even if the second one does too) and allows the AI to, for example, use a long ranged bow when the foe is far away, but otherwise use a short ranged sword.

Possible flags are: <whenever-possible />, <at-max-range />, <on-large />, <on-building />, and <when-damaged />. The attack-skill value is the attack skill to use when that flag is active. There can be multiple flags per attack-skill.

Patrol[]

<!-- Start GAE Only -->
<command>
	<type value="patrol" />
	<name value="patrol" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<move-skill value="move_skill" />
	<attack-skill value="attack_skill" />
	<attack-skills>
		<attack-skill value="attack_skill">
			<flags>
				<whenever-possible />
			</flags>
		</attack-skill>
	</attack-skills>
	<max-distance value="2" />
</command>
<!-- End GAE Only -->

With nearly the exact same syntax as the guard command, patrol has a unit move between its position and its target, ready to attack. If the target is a unit, it will continiously move to the unit's current location. If that unit dies, it will go to where it last was.

type[]

The type of the command, in this case, patrol. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.

attack-skill[]

The name of the attack skill to use.

max-distance[]

The maximum distance from the patrol location the unit can go. If it's too high, the unit might not patrol tightly enough, but too low and they can get blocked or in the way of others (if patrolling to another unit).

attack-skills[]

A GAE only alternative method of specifying the attack skill, this allows the attacks to be chosen based on the target. This uses a system of flags such as <whenever-possible /> or <at-max-range /> to specify circumstances in which to choose different skills. This is read from the top down (so the first one will be followed if the tag evaluates as true, even if the second one does too) and allows the AI to, for example, use a long ranged bow when the foe is far away, but otherwise use a short ranged sword.

Possible flags are: <whenever-possible />, <at-max-range />, <on-large />, <on-building />, and <when-damaged />. The attack-skill value is the attack skill to use when that flag is active. There can be multiple flags per attack-skill.

Generate[]

<!-- Start GAE Only -->
<command>
	<type value="generate" />
	<name value="generate" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<produce-skill value="produce_skill" />
	<finished-sound enabled="true">
		<sound-file path="sound/sound.wav" />
	</finished-sound>
	<produced>
		<name value="my_name" />
		<time value="60" />
		<image path="images/image.bmp"/>
		<image-cancel path="images/cancel.bmp"/>
		<unit-requirements>
			<unit name="my_unit" />
		</unit-requirements>
		<upgrade-requirements>
			<upgrade name="my_upgrade" />
		</upgrade-requirements>
		<resource-requirements>
			<resource name="gold" amount="100"/>
			<resource name="energy" amount="-10"/>
		</resource-requirements>
	</produced>
</command>
<!-- End GAE Only -->

Generate is a command for creating static or consumable resources without having to produce an actual unit.

type[]

The type of the command, in this case, generate. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

produce-skill[]

The name of the produce skill to use.

finished-sound[]

A list of sound files, from which one is randomly selected, to play when the skill is complete.

produced=[]

A special tag to sum up the production. Inside we declare the name of what we are producing, which can be any valid variable, we give the path to a bitmap image for the generated thing, as well as a cancel image to cancel the generation. Unit-requirements, upgrade-requirements, and resource-requirements are all the same as you'd see in a Unit XML.

Cast-spell[]

<!-- Start GAE Only -->
<command>
	<type value="cast-spell" />
	<name value="cast-spell" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<cast-spell-skill value="cast_spell_skill" />
	<affect value="self" />
	<cycle value="false" />
</command>
<!-- End GAE Only -->

Cast spell is a command to allow a friendly spell to be casted on either yourself or a target.

type[]

The type of the command, in this case, cast-spell. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

cast-spell-skill[]

The name of the cast-spell skill to use.

affect[]

Who the command is used against. Either self for casting spells on yourself, such as a self-buffing spell, or target to cast spells on others, such as a healing spell.


cycle[]

Whether or not the command loops. If true, it will repeat the spell over and over, if false, it casts once per click. Note that since it considers the cycle done when the skill cycle is up, the speed and anim speed in the skill must be the same!

Teleport[]

<!-- Start GAE Only -->
<command>
	<type value="teleport" />
	<name value="teleport" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<move-skill value="move_skill" />
</command>
<!-- End GAE Only -->

Teleport is a method of moving instantly from one location to another, unblocked by anything in the way (though the destination must be clear).

type[]

The type of the command, in this case, teleport. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.

build-self[]

<!-- Start GAE Only -->
<command>
	<type value="build-self" />
	<name value="build_self" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<build-self-skill value="build_self_skill" />
	<display value="false" />
</command>
<!-- End GAE Only -->

Build self is a way of finishing a building by itself, without any other units repairing or building it. Note that the skill is "build_self" while the command is "build-self".

type[]

The type of the command, in this case, build-self. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

build-self-skill[]

The name of the build_self skill to use.

display[]

If true, a button is shown and must be clicked in order to perform the self building. If false, it's done automatically.

Load[]

<!-- Start GAE Only -->
<command>
	<type value="load" />
	<name value="load" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<load-skill value="load_skill"/>
	<move-skill value="move_skill"/>
	<units-carried>
		<unit value="unit_name"/>
	</units-carried>
	<load-capacity value="3" />
	<allow-projectiles value="true">
		<horizontal-offset value="2.0" />
		<vertical-offset value="1.5" />
	</allow-projectiles>
</command>
<!-- End GAE Only -->

Load is one of the skills needed, along with unload, to make a transport or garrisoning building. It allows a unit to be loaded or "carried".

type[]

The type of the command, in this case, load. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

load-skill[]

The name of the load skill to use.

move-skill[]

The name of the move skill to use.

units-carries[]

A list of the units that are able to be loaded.

load-capacity[]

The maximum number of units that the unit can hold.

allow-projectiles[]

If true, units can fire out of the loader. The horizontal and vertical offset is the offset to where the particles would start.

Unload[]

<!-- Start GAE Only -->
<command>
	<type value="unload" />
	<name value="unload" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<unload-skill value="move_skill" />
</command>
<!-- End GAE Only -->

The opposite of load, unload will remove the previously loaded units, one by one.

type[]

The type of the command, in this case, unload. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

move-skill[]

The name of the move skill to use.


Transform[]

<!-- Start GAE Only -->
<command>
	<type value="transform"/>
	<name value="transform" tip="tip_name" />
	<image path="images/image.bmp" />
	<unit-requirements>
		<unit name="my_unit" />
	</unit-requirements>
	<upgrade-requirements>
		<upgrade name="my_upgrade" />
	</upgrade-requirements>
	<morph-skill value="morph_skill"/>
	<move-skill value="move_skill"/>
	<position x="0" y="0"/>
	<rotation value="0" />
	<morph-units>
		<morph-unit name="farm" />
	</morph-units>
	<hp-policy value="maintain" />
</command>
<!-- End GAE Only -->

Transform works like morph, but instead of morphing into a similar mobile unit, it can be used for morphing into buildings.

type[]

The type of the command, in this case, build-self. The tip attribute is an optional GAE-only value that will reference the keyword used as a tooltip.

name[]

The name of the command, as seen ingame. GAE can translate these with separate language files as well.

image[]

Path to the image which will be used as an icon to initiate the command.

unit-requirements[]

A list of units that must exist before this command can be used. For example, you might have to construct a testing lab before you can start throwing grenades.

upgrade-requirements[]

A list of upgrades that must exist before this command can be used. For example, you might have to perform a training field upgrade before you could use a more advanced skill.

morph-skill[]

Name of the morph skill.

move-skill[]

Name of the move skill.

position[]

Allows the position of where the building will be placed relative to the unit to be tweaked.

rotation[]

Allows the rotation of building, in degrees, to be tweaked. 0 is facing north.

morph-units[]

A list of the units that can be morphed into.

hp-policy[]

Either set-to-one (the new building will have 1 HP), reset (use the default behaviour, the new building will have 5% of max HP), or maintain (keep the original unit's HP, clamped to the new unit's max HP).

See also[]