Skip to content
Mailaender edited this page Sep 27, 2014 · 102 revisions

This documentation is aimed at modders. It displays all traits with default values and developer commentary. Please do not edit it directly, but add new [Desc("String")] tags to the source code. This file has been automatically generated for version {DEV_VERSION} of OpenRA.

DeadBuildingState

Requires traits: Health, RenderSimple.

Property Default Value Type Description
LingerTime 20 Integer

TiberiumRefinery

Property Default Value Type Description
DockOffset 1,2 2D Cell Vector
ShowTicks True Boolean
TickLifetime 30 Integer
TickVelocity 2 Integer
TickRate 10 Integer
DockAngle 64 Integer

WithFire

Renders a flame sprite on top of the actor.

Requires trait: RenderSprites.

Property Default Value Type Description
StartSequence fire-start String
LoopSequence fire-loop String

PoisonedByTiberium

Property Default Value Type Description
Weapon Tiberium String
Resources Tiberium, BlueTiberium Multiple String

IonCannonPower

Property Default Value Type Description
CameraActor String Actor to spawn when the attack starts
CameraRemoveDelay 25 Integer Amount of time to keep the camera alive
Effect ionsfx String Effect sequence to display
EffectPalette effect String
Weapon IonCannon String Which weapon to fire
WeaponDelay 7 Integer Apply the weapon impact this many ticks into the effect
ChargeTime 0 Integer
Icon String
Description String
LongDesc String
AllowMultiple False Boolean
OneShot False Boolean
Prerequisites Multiple String
BeginChargeSound String
EndChargeSound String
SelectTargetSound String
InsufficientPowerSound String
LaunchSound String
IncomingSound String
DisplayTimer False Boolean
DisplayBeacon False Boolean Beacons are only supported on the Airstrike and Nuke powers
BeaconPalettePrefix player String
BeaconPoster String
BeaconPosterPalette chrome String
DisplayRadarPing False Boolean
RadarPingDuration 125 Integer
OrderName IonCannonPowerInfoOrder String

WithCargo

Renders the cargo loaded into the unit.

Requires trait: Cargo.

Property Default Value Type Description
LocalOffset Multiple 3D World Vector Cargo position relative to turret or body. (forward, right, up) triples
DisplayTypes Multiple String Passenger CargoType to display.

SpawnViceroid

Property Default Value Type Description
ViceroidActor vice String
Probability 10 Integer
Owner Creeps String
DeathType 6 String

ProductionAirdrop

Deliver the unit in production via skylift.

Property Default Value Type Description
ReadyAudio Reinforce String
ActorType c17 String Cargo aircraft used.
Produces Multiple String e.g. Infantry, Vehicles, Aircraft, Buildings

WithRoof

Provides an overlay for the Tiberian Dawn hover craft.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence roof String

PaletteFromScaledPalette

Create a palette by applying a scale and offset to the colors in another palette.

Property Default Value Type Description
Name String Internal palette name
BasePalette String The name of the palette to base off.
AllowModifiers True Boolean Allow palette modifiers to change the palette.
Scale 1 Real Number Amount to scale the base palette colors by.
Offset 0 Integer Amount to offset the base palette colors by.

D2kResourceLayer

Used to render spice with round borders.

ThrowsShrapnel

Throws particles when the actor is destroyed that do damage on impact.

Property Default Value Type Description
Weapons Multiple String
Pieces 3, 10 Multiple Integer
Range 2048, 5120 Multiple 1D World Range

DamagedWithoutFoundation

Reduces health points over time when the actor is placed on unsafe terrain.

Requires trait: Health.

Property Default Value Type Description
Weapon weathering String
SafeTerrain Concrete Multiple String
DamageThreshold 50 Integer

ChooseBuildTabOnSelect

Property Default Value Type Description
BuildPaletteWidgetName INGAME_BUILD_PALETTE String

DeathSounds

Sounds to play when killed.

Property Default Value Type Description
DeathSound Die String Death notification voice.
VolumeMultiplier 1 Real Number Multiply volume with this factor.
DeathTypes Multiple String DeathTypes that this should be used for. If empty, this will be used as the default sound.

Harvester

Property Default Value Type Description
DeliveryBuildings Multiple String
Capacity 28 Integer How much resources it can carry.
LoadTicksPerBale 4 Integer
UnloadTicksPerBale 4 Integer How fast it can dump it's carryage.
PipCount 7 Integer How many squares to show the fill level.
HarvestFacings 0 Integer
Resources Multiple String Which resources it can harvest.
FullyLoadedSpeed 85 Integer Percentage of maximum speed when fully loaded.
SearchFromProcRadius 24 Integer Initial search radius (in cells) from the refinery that created us.
SearchFromOrderRadius 12 Integer Search radius (in cells) from the last harvest order location to find more resources.

FreeActor

Player recives a unit for free once the building is placed. This also works for structures. If you want more than one unit to appear copy this section and assign IDs like FreeActor@2, ...

Property Default Value Type Description
Actor String Name of actor (use HARV if this trait is for refineries)
InitialActivity String What the unit should start doing. Warning: If this is not a harvester it will break if you use FindResources.
SpawnOffset 0,0 2D Cell Vector Offset relative to structure-center in 2D (e.g. 1, 2)
Facing 0 Integer Which direction the unit should face.

SupplyTruck

Donate money to building if it has the AcceptSupplies: trait.

Property Default Value Type Description
Payload 500 Integer The amount of cash the owner of the building recieves.

TargetableSubmarine

Requires trait: Cloak.

Property Default Value Type Description
CloakedTargetTypes Multiple String
TargetTypes Multiple String Target type. Used for filtering (in)valid targets.
RequiresForceFire False Boolean

Contrail

Draw a colored contrail behind this actor when they move.

Property Default Value Type Description
Offset 0,0,0 3D World Vector Position relative to body
TrailLength 25 Integer Measured in pixels.
Color 255,255,255,255 Color RGB color of the contrail.
UsePlayerColor True Boolean Use player remap color instead of a custom color?

DisabledOverlay

Use together with CanPowerDown/RequiresPower on buildings or Husk for vehicles.

FrozenUnderFog

This actor will remain visible (but not updated visually) under fog, once discovered.

Requires trait: Building.

Property Default Value Type Description
StartsRevealed False Boolean

HiddenUnderFog

The actor stays invisible under fog of war.

Passenger

This actor can enter Cargo actors.

Property Default Value Type Description
CargoType String
PipType Green PipType
Weight 1 Integer

ExternalCapturable

This actor can be captured by a unit with ExternalCaptures: trait.

Property Default Value Type Description
Type building String Type of actor (the ExternalCaptures: trait defines what Types it can capture).
AllowAllies False Boolean
AllowNeutral True Boolean
AllowEnemies True Boolean
CaptureCompleteTime 15 Integer Seconds it takes to change the owner. You might want to add a ExternalCapturableBar: trait, too.

Burns

This actor will play a fire animation over its body and take damage over time.

Requires trait: RenderSprites.

Property Default Value Type Description
Anim 1 String
Damage 1 Integer
Interval 8 Integer

Explodes

Property Default Value Type Description
Weapon UnitExplode String
EmptyWeapon UnitExplode String
Chance 100 Integer
DeathType Multiple String

MenuPaletteEffect

Fades the world from/to black at the start/end of the game, and can (optionally) desaturate the world

Property Default Value Type Description
FadeLength 10 Integer Time (in ticks) to fade between states
Effect None EffectType Effect style to fade to during gameplay. Accepts values of None or Desaturated.
MenuEffect None EffectType Effect style to fade to when opening the in-game menu. Accepts values of None, Black or Desaturated.

CashTrickler

Lets the actor generate cash in a set periodic time.

Property Default Value Type Description
Period 50 Integer Number of ticks to wait between giving money.
Amount 15 Integer Amount of money to give each time.
ShowTicks True Boolean Whether to show the cash tick indicators (+$15 rising from actor).
CaptureAmount 0 Integer Amount of money awarded for capturing the actor.

PortableChrono

Property Default Value Type Description
ChargeTime 20 Integer Cooldown in seconds until the unit can teleport.
HasDistanceLimit True Boolean Can the unit teleport only a certain distance?
MaxDistance 12 Integer The maximum distance in cells this unit can teleport (only used if HasDistanceLimit = true).
ChronoshiftSound chrotnk1.aud String Sound to play when teleporting.

GainsExperience

This actor's experience increases when it has killed a GivesExperience actor.

Requires trait: Valued.

Property Default Value Type Description
Upgrades Dictionary Upgrades to grant at each level Key is the XP requirements for each level as a percentage of our own value. Value is a list of the upgrade types to grant
ChevronPalette effect String Palette for the chevron glyph rendered in the selection box.
LevelUpPalette effect String Palette for the level up sprite.

OreRefinery

Property Default Value Type Description
DockOffset 1,2 2D Cell Vector
ShowTicks True Boolean
TickLifetime 30 Integer
TickVelocity 2 Integer
TickRate 10 Integer
DockAngle 64 Integer

Crushable

This actor is crushable.

Property Default Value Type Description
CrushSound String Sound to play when being crushed.
CrushClasses infantry Multiple String Which crush classes does this actor belong to.
WarnProbability 75 Integer Probability of mobile actors noticing and evading a crush attempt.
CrushedByFriendlies False Boolean Will friendly units just crush me instead of pathing around.

C4Demolition

Property Default Value Type Description
C4Delay 45 Integer Delay to demolish the target once the C4 is planted.Measured in game ticks. Default is 1.8 seconds.
Flashes 3 Integer Number of times to flash the target
FlashesDelay 4 Integer Delay before the flashing starts
FlashInterval 4 Integer Interval between each flash
FlashDuration 3 Integer Duration of each flash

Sellable

Actor can be sold

Property Default Value Type Description
RefundPercent 50 Integer
SellSounds Multiple String

TakeCover

Make the unit go prone when under attack, in an attempt to reduce damage.

Property Default Value Type Description
ProneTime 100 Integer How long (in ticks) the actor remains prone.
SpeedModifier 50 Integer Prone movement speed as a percentage of the normal speed.
ProneOffset 85,0,-171 3D World Vector
ProneSequencePrefix prone- String
Turret primary String
ROT 255 Integer Rate of Turning
InitialFacing 128 Integer
AlignWhenIdle False Boolean
Offset 0,0,0 3D World Vector Muzzle position relative to turret or body. (forward, right, up) triples

ProvidesRadar

This actor enables the radar minimap.

JamsRadar

When an actor with this trait is in range of an actor with ProvidesRadar, it will temporarily disable the radar minimap for the enemy player.

Property Default Value Type Description
Range 0 Integer Range for jamming.

BlocksBullets

This actor blocks bullets and missiles without 'High' property.

Cloak

This unit can cloak and uncloak in specific situations.

Property Default Value Type Description
InitialDelay 10 Integer Measured in game ticks.
CloakDelay 30 Integer Measured in game ticks.
UncloakOnAttack True Boolean
UncloakOnMove False Boolean
UncloakOnUnload True Boolean
RequiresUpgrade String Enable only if this upgrade is enabled.
CloakSound String
UncloakSound String
Palette cloak String
CloakTypes Cloak Multiple String

Bridge

Requires trait: Health.

Property Default Value Type Description
Long False Boolean
RepairPropagationDelay 20 Integer Delay (in ticks) between repairing adjacent spans in long bridges
Template 0 UInt16
DamagedTemplate 0 UInt16
DestroyedTemplate 0 UInt16
DestroyedPlusNorthTemplate 0 UInt16
DestroyedPlusSouthTemplate 0 UInt16
DestroyedPlusBothTemplate 0 UInt16
ShorePieces br1, br2 Multiple String
NorthOffset Multiple Integer
SouthOffset Multiple Integer
DemolishWeapon Demolish String The name of the weapon to use when demolishing the bridge

ScaredyCat

Makes the unit automatically run around when taking damage.

Property Default Value Type Description
PanicLength 250 Integer How long (in ticks) the actor should panic for.
PanicSpeedModifier 200 Integer Panic movement speed as a precentage of the normal speed.
AttackPanicChance 20 Integer Chance (out of 100) the unit has to enter panic mode when attacked.

DevCommands

Enables developer cheats via the chatbox. Attach this to the world actor.

HelpCommand

Shows a list of available commands in the chatbox. Attach this to the world actor.

ChatCommands

Enables commands triggered by typing them into the chatbox. Attach this to the world actor.

PlayerCommands

Allows the player to pause or surrender the game via the chatbox. Attach this to the world actor.

ChronoshiftPaletteEffect

Apply palette full screen rotations during chronoshifts. Add this to the world actor.

BuildableTerrainLayer

Attach this to the world actor. Required for LaysTerrain to work.

DomainIndex

Identify untraversable regions of the map for faster pathfinding, especially with AI. This trait is required. Every mod needs it attached to the world actor.

ResourceClaimLayer

Allows harvesters to coordinate their operations. Attach this to the world actor.

SmudgeLayer

Attach this to the world actor. Order of the layers defines the Z sorting.

Property Default Value Type Description
Type Scorch String
Sequence scorch String Sprite sequence name
SmokePercentage 25 Integer
SmokeType smoke_m String Sprite sequence name
Palette terrain String

RadarPings

Property Default Value Type Description
FromRadius 200 Integer
ToRadius 15 Integer
ShrinkSpeed 4 Integer
RotationSpeed 0.12 Real Number

ResourceLayer

Attach this to the world actor. Order of the layers defines the Z sorting.

Requires trait: ResourceType.

PathfinderDebugOverlay

Required for the A* PathDebug from DeveloperMode. Attach this to the world actor.

PlayMusicOnMapLoad

Property Default Value Type Description
Music String
Loop False Boolean

Invulnerable

This unit cannot be damaged.

ProductionBar

Visualizes the remaining build time of actor produced here.

Property Default Value Type Description
ProductionType String Production queue type, for actors with multiple queues.
Color 255,135,206,235 Color

ProductionQueueFromSelection

Property Default Value Type Description
ProductionTabsWidget String
ProductionPaletteWidget String

PaletteFromCurrentTileset

Loads the palette specified in the tileset definition

Property Default Value Type Description
Name String internal palette name
ShadowIndex Multiple Integer Map listed indices to shadow. Ignores previous color.
AllowModifiers True Boolean

Fake

Display a sprite tag "fake" when selected.

Guard

The player can give this unit the order to follow and protect friendly units with the Guardable trait.

Guardable

This unit can be guarded (followed and protected) by a Guard unit.

Property Default Value Type Description
Range 2 Integer

NukePaletteEffect

Apply palette full screen rotations during atom bomb explosions. Add this to the world actor.

RadarColorFromTerrain

Property Default Value Type Description
Terrain String

Mine

Property Default Value Type Description
CrushClasses Multiple String
AvoidFriendly True Boolean
DetonateClasses Multiple String

MineImmune

Tag trait for stuff that should not trigger mines.

CaptureNotification

Property Default Value Type Description
Notification BuildingCaptured String
NewOwnerVoice True Boolean

TransformOnCapture

Property Default Value Type Description
IntoActor String
ForceHealthPercentage 0 Integer
SkipMakeAnims True Boolean

AttackBomber

Property Default Value Type Description
Bombs primary String Armament name
Guns secondary String Armament name
FacingTolerance 2 Integer
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

StartGameNotification

Property Default Value Type Description
Notification StartGame String

ActorLostNotification

Property Default Value Type Description
Notification UnitLost String
NotifyAll False Boolean

BaseBuilding

Tag trait for construction yard and MCVs. Used by the cycle bases hotkey to identify actors.

ExternalCapturableBar

Visualize the remaining CaptureCompleteTime from ExternalCapturable: trait.

Requires trait: ExternalCapturable.

HarvesterHuskModifier

Requires trait: Harvester.

Property Default Value Type Description
FullHuskActor String
FullnessThreshold 50 Integer

ThrowsParticle

Requires trait: RenderSimple.

Property Default Value Type Description
Anim String
Offset 0,0,0 3D World Vector Initial position relative to body
MinThrowRange 256 1D World Range Minimum distance to throw the particle
MaxThrowRange 768 1D World Range Maximum distance to throw the particle
MinThrowAngle 85 1D World Angle Minimum angle to throw the particle
MaxThrowAngle 170 1D World Angle Maximum angle to throw the particle
Velocity 75 Integer Speed to throw the particle (horizontal WPos/tick)
ROT 15 Real Number Maximum rotation rate

Production

This unit has access to build queues.

Property Default Value Type Description
Produces Multiple String e.g. Infantry, Vehicles, Aircraft, Buildings

Exit

Where the unit should leave the building. Multiples are allowed if IDs are added: Exit@2, ...

Property Default Value Type Description
SpawnOffset 0,0,0 3D World Vector Offset at which that the exiting actor is spawned
ExitCell 0,0 2D Cell Vector Cell offset where the exiting actor enters the ActorMap
Facing -1 Integer
MoveIntoWorld True Boolean AttackMove to a RallyPoint or stay where you are spawned.

SupportPowerChargeBar

Display the time remaining until the super weapon attached to the actor is ready to the player and his allies.

Property Default Value Type Description
Color 255,255,0,255 Color

ChronoshiftPower

Property Default Value Type Description
Range 1 Integer Cells
Duration 30 Integer Seconds
KillCargo True Boolean
ChargeTime 0 Integer
Icon String
Description String
LongDesc String
AllowMultiple False Boolean
OneShot False Boolean
Prerequisites Multiple String
BeginChargeSound String
EndChargeSound String
SelectTargetSound String
InsufficientPowerSound String
LaunchSound String
IncomingSound String
DisplayTimer False Boolean
DisplayBeacon False Boolean Beacons are only supported on the Airstrike and Nuke powers
BeaconPalettePrefix player String
BeaconPoster String
BeaconPosterPalette chrome String
DisplayRadarPing False Boolean
RadarPingDuration 125 Integer
OrderName ChronoshiftPowerInfoOrder String

ParatroopersPower

Property Default Value Type Description
UnitType badr String
SquadSize 1 Integer
SquadOffset -1536,1536,0 3D World Vector
QuantizedFacings 32 Integer Number of facings that the delivery aircraft may approach from.
Cordon 5120 1D World Range Spawn and remove the plane this far outside the map.
DropItems Multiple String Troops to be delivered. They will be distributed between the planes if SquadSize > 1.
AllowImpassableCells False Boolean Risks stuck units when they don't have the Paratrooper trait.
CameraActor String Actor to spawn when the paradrop starts.
CameraRemoveDelay 85 Integer Amount of time (in ticks) to keep the camera alive while the passengers drop.
BeaconDistanceOffset 4096 1D World Range Weapon range offset to apply during the beacon clock calculation.
ChargeTime 0 Integer
Icon String
Description String
LongDesc String
AllowMultiple False Boolean
OneShot False Boolean
Prerequisites Multiple String
BeginChargeSound String
EndChargeSound String
SelectTargetSound String
InsufficientPowerSound String
LaunchSound String
IncomingSound String
DisplayTimer False Boolean
DisplayBeacon False Boolean Beacons are only supported on the Airstrike and Nuke powers
BeaconPalettePrefix player String
BeaconPoster String
BeaconPosterPalette chrome String
DisplayRadarPing False Boolean
RadarPingDuration 125 Integer
OrderName ParatroopersPowerInfoOrder String

IronCurtainPower

Property Default Value Type Description
Duration 10 Integer Seconds
Range 1 Integer Cells
IronCurtainSound ironcur9.aud String
ChargeTime 0 Integer
Icon String
Description String
LongDesc String
AllowMultiple False Boolean
OneShot False Boolean
Prerequisites Multiple String
BeginChargeSound String
EndChargeSound String
SelectTargetSound String
InsufficientPowerSound String
LaunchSound String
IncomingSound String
DisplayTimer False Boolean
DisplayBeacon False Boolean Beacons are only supported on the Airstrike and Nuke powers
BeaconPalettePrefix player String
BeaconPoster String
BeaconPosterPalette chrome String
DisplayRadarPing False Boolean
RadarPingDuration 125 Integer
OrderName IronCurtainPowerInfoOrder String

GpsWatcher

Required for GpsPower. Attach this to the player actor.

GpsPower

Property Default Value Type Description
RevealDelay 0 Integer
ChargeTime 0 Integer
Icon String
Description String
LongDesc String
AllowMultiple False Boolean
OneShot False Boolean
Prerequisites Multiple String
BeginChargeSound String
EndChargeSound String
SelectTargetSound String
InsufficientPowerSound String
LaunchSound String
IncomingSound String
DisplayTimer False Boolean
DisplayBeacon False Boolean Beacons are only supported on the Airstrike and Nuke powers
BeaconPalettePrefix player String
BeaconPoster String
BeaconPosterPalette chrome String
DisplayRadarPing False Boolean
RadarPingDuration 125 Integer
OrderName GpsPowerInfoOrder String

SupportPowerManager

Attach this to the player actor.

Requires traits: DeveloperMode, TechTree.

SpawnActorPower

Spawns an actor that stays for a limited amount of time.

Property Default Value Type Description
Actor String Actor to spawn.
LifeTime 250 Integer Amount of time to keep the actor alive in ticks.
DeploySound String
EffectSequence String
EffectPalette String
ChargeTime 0 Integer
Icon String
Description String
LongDesc String
AllowMultiple False Boolean
OneShot False Boolean
Prerequisites Multiple String
BeginChargeSound String
EndChargeSound String
SelectTargetSound String
InsufficientPowerSound String
LaunchSound String
IncomingSound String
DisplayTimer False Boolean
DisplayBeacon False Boolean Beacons are only supported on the Airstrike and Nuke powers
BeaconPalettePrefix player String
BeaconPoster String
BeaconPosterPalette chrome String
DisplayRadarPing False Boolean
RadarPingDuration 125 Integer
OrderName SpawnActorPowerInfoOrder String

NukePower

Property Default Value Type Description
MissileWeapon String
SpawnOffset 0,0,0 3D World Vector
FlightDelay 400 Integer Travel time - split equally between ascent and descent
FlightVelocity 512 1D World Range Visual ascent velocity in WRange / tick
SkipAscent False Boolean Descend immediately on the target, with half the FlightDelay
BeaconRemoveAdvance 25 Integer Amount of time before detonation to remove the beacon
CameraActor String Actor to spawn before detonation
CameraSpawnAdvance 25 Integer Amount of time before detonation to spawn the camera
CameraRemoveDelay 25 Integer Amount of time after detonation to remove the camera
ChargeTime 0 Integer
Icon String
Description String
LongDesc String
AllowMultiple False Boolean
OneShot False Boolean
Prerequisites Multiple String
BeginChargeSound String
EndChargeSound String
SelectTargetSound String
InsufficientPowerSound String
LaunchSound String
IncomingSound String
DisplayTimer False Boolean
DisplayBeacon False Boolean Beacons are only supported on the Airstrike and Nuke powers
BeaconPalettePrefix player String
BeaconPoster String
BeaconPosterPalette chrome String
DisplayRadarPing False Boolean
RadarPingDuration 125 Integer
OrderName NukePowerInfoOrder String

AirstrikePower

Property Default Value Type Description
UnitType badr.bomber String
SquadSize 1 Integer
SquadOffset -1536,1536,0 3D World Vector
QuantizedFacings 32 Integer
Cordon 5120 1D World Range
CameraActor String Actor to spawn when the aircraft start attacking
CameraRemoveDelay 25 Integer Amount of time to keep the camera alive after the aircraft have finished attacking
BeaconDistanceOffset 6144 1D World Range Weapon range offset to apply during the beacon clock calculation
ChargeTime 0 Integer
Icon String
Description String
LongDesc String
AllowMultiple False Boolean
OneShot False Boolean
Prerequisites Multiple String
BeginChargeSound String
EndChargeSound String
SelectTargetSound String
InsufficientPowerSound String
LaunchSound String
IncomingSound String
DisplayTimer False Boolean
DisplayBeacon False Boolean Beacons are only supported on the Airstrike and Nuke powers
BeaconPalettePrefix player String
BeaconPoster String
BeaconPosterPalette chrome String
DisplayRadarPing False Boolean
RadarPingDuration 125 Integer
OrderName AirstrikePowerInfoOrder String

GiveCashCrateAction

Gives cash to the collector.

Property Default Value Type Description
Amount 2000 Integer Amount of cash to give.
UseCashTick False Boolean Should the collected amount be displayed as a cash tick?
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

HideMapCrateAction

Hides the entire map in shroud.

Property Default Value Type Description
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

RevealMapCrateAction

Reveals the entire map.

Property Default Value Type Description
IncludeAllies False Boolean Should the map also be revealed for the allies of the collector's owner.
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

LevelUpCrateAction

Gives experience levels to the collector.

Property Default Value Type Description
Levels 1 Integer Number of experience levels to give.
Range 3 1D World Range The range to search for extra collectors in. Extra collectors will also be granted the crate action.
MaxExtraCollectors 4 Integer The maximum number of extra collectors to grant the crate action to.
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

ExplodeCrateAction

Fires a weapon at the location when collected.

Property Default Value Type Description
Weapon String The weapon to fire upon collection.
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

RepairsBridges

RenderRangeCircle

Draw a circle indicating my weapon's range.

Requires trait: AttackBase.

Property Default Value Type Description
RangeCircleType String
FallbackRange 0 1D World Range Range to draw if no armaments are available

SpawnMapActors

ConquestVictoryConditions

Requires trait: MissionObjectives.

Property Default Value Type Description
NotificationDelay 1500 Integer Delay for the end game notification in milliseconds.

MustBeDestroyed

Tag trait for things that must be destroyed for a short game to end.

TransformOnPassenger

Property Default Value Type Description
PassengerTypes Multiple String
OnEnter String
OnExit String
SkipMakeAnims False Boolean
BecomeNeutral False Boolean

SelfHealing

Attach this to actors which should be able to regenerate their health points.

Requires trait: Health.

Property Default Value Type Description
Step 5 Integer
Ticks 5 Integer
HealIfBelow 0.5 Real Number
DamageCooldown 0 Integer
RequiresUpgrade String Enable only if this upgrade is enabled.

AcceptsSupplies

Tag trait for SupplyTruck: actors.

RemoveOnConditions

Destroys the actor after a specified number of ticks if all conditions are met.

Property Default Value Type Description
Prerequisites Multiple String Prerequisites required before removal
Delay 0 Integer Delay until it starts checking if you have the prerequisites 0 = Removal attempted on AddedToWorld
KillInstead False Boolean Should the trait kill instead of destroy?

PaletteFromRGBA

Creates a single color palette without any base palette file.

Property Default Value Type Description
Name String internal palette name
Tileset String If defined, load the palette only for this tileset.
R 0 Integer red color component
G 0 Integer green color component
B 0 Integer blue color component
A 255 Integer alpha channel (transparency)
AllowModifiers True Boolean

LoadWidgetAtGameStart

Property Default Value Type Description
Widget String
ClearRoot True Boolean

AutoHeal

Used together with AttackMedic: to make the healer do it's job automatically to nearby units.

Requires trait: AttackBase.

AnnounceOnBuild

ParaDrop

This unit can spawn and eject other actors while flying.

Requires trait: Cargo.

Property Default Value Type Description
DropRange 4096 1D World Range Distance around the drop-point to unload troops.
ChuteSound chute1.aud String Sound to play when dropping.

SeedsResource

Lets the actor spread resources around it in a circle.

Property Default Value Type Description
Interval 75 Integer
ResourceType Ore String
MaxRange 100 Integer

Reloads

Unit will reload its limited ammo itself.

Requires trait: LimitedAmmo.

Property Default Value Type Description
Count 0 Integer How much ammo is reloaded after a certain period.
Period 50 Integer How long it takes to do so.
ResetOnFire False Boolean Whether or not reload counter should be reset when ammo has been fired.

ShroudPalette

Adds the hard-coded shroud palette to the game

Property Default Value Type Description
Name shroud String Internal palette name
Fog False Boolean Palette type

TargetableBuilding

Requires trait: Building.

Property Default Value Type Description
TargetTypes Multiple String
RequiresForceFire False Boolean

DemoTruck

Requires trait: Explodes.

Tooltip

Shown in the build palette widget.

Property Default Value Type Description
Description String
Name String
Icon icon String Sequence of the actor that contains the cameo.

AttackFrontal

Unit got to face the target

Property Default Value Type Description
FacingTolerance 1 Integer
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackGarrisoned

Cargo can fire their weapons out of fire ports.

Requires trait: Cargo.

Property Default Value Type Description
PortOffsets Multiple 3D World Vector Fire port offsets in local coordinates.
PortYaws Multiple 1D World Angle Fire port yaw angles.
PortCones Multiple 1D World Angle Fire port yaw cone angle.
MuzzlePalette effect String
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackLeap

Dogs use this attack model.

Property Default Value Type Description
Speed 426 1D World Range Leap speed (in units/tick).
Angle 56 1D World Angle
FacingTolerance 1 Integer
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackMedic

Give the unit a "heal-weapon" that attacks friendly targets if they are damaged. It conflicts with any other weapon or Attack*: trait because it will hurt friendlies during the heal process then. It also won't work with buildings (use RepairsUnits: for them)

Property Default Value Type Description
FacingTolerance 1 Integer
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackFollow

Actor will follow units until in range to attack them.

Property Default Value Type Description
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackPopupTurreted

Actor's turret rises from the ground before attacking.

Requires traits: Building, RenderBuilding, Turreted.

Property Default Value Type Description
CloseDelay 125 Integer How many game ticks should pass before closing the actor's turret.
DefaultFacing 0 Integer
ClosedDamageMultiplier 50 Integer The percentage of damage that is received while this actor is closed.
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackTurreted

Actor has a visual turret used to attack.

Requires trait: Turreted.

Property Default Value Type Description
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackCharge

Charges up before being able to attack.

Property Default Value Type Description
MaxCharges 1 Integer How many charges this actor has to attack with, once charged.
ReloadTime 120 Integer Reload time for all charges (in ticks).
InitialChargeDelay 22 Integer Delay for initial charge attack (in ticks).
ChargeDelay 3 Integer Delay between charge attacks (in ticks).
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackLoyalty

Property Default Value Type Description
FacingTolerance 1 Integer
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackOmni

Property Default Value Type Description
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

AttackWander

Will AttackMove to a random location within MoveRadius when idle. This conflicts with player orders and should only be added to animal creeps.

Property Default Value Type Description
MoveRadius 4 Integer

CombatDebugOverlay

LimitedAmmo

Actor has a limited amount of ammo, after using it all the actor must reload in some way.

Property Default Value Type Description
Ammo 0 Integer
PipCount 0 Integer Defaults to value in Ammo.
PipType Green PipType
PipTypeEmpty Transparent PipType
ReloadTicks 50 Integer Time to reload measured in ticks.

CreateMPPlayers

Attach this to the world actor.

StrategicPoint

StrategicVictoryConditions

Requires trait: MissionObjectives.

Property Default Value Type Description
TicksToHold 7500 Integer Amount of time (in game ticks) that the player has to hold all the strategic points.
ResetOnHoldLost True Boolean Should the timer reset when the player loses hold of a strategic point.
RatioRequired 0.5 Real Number Percentage of strategic points the player has to hold to win.
NotificationDelay 1500 Integer Delay for the end game notification in milliseconds.

AutoTarget

The actor will automatically engage the enemy when it is in range.

Requires trait: AttackBase.

Property Default Value Type Description
AllowMovement True Boolean It will try to hunt down the enemy if it is not set to defend.
ScanRadius -1 Integer Set to a value >1 to override weapons maximum range for this.
InitialStance AttackAnything UnitStance Possible values are HoldFire, ReturnFire, Defend and AttackAnything.
EnableStances True Boolean Allow the player to change the unit stance.
MinimumScanTimeInterval 3 Integer Ticks to wait until next AutoTarget: attempt.
MaximumScanTimeInterval 8 Integer Ticks to wait until next AutoTarget: attempt.
TargetWhenIdle True Boolean
TargetWhenDamaged True Boolean

AutoTargetIgnore

Will not get automatically targeted by enemy (like walls)

ExternalCaptures

This actor can capture other actors which have the ExternalCapturable: trait.

Property Default Value Type Description
CaptureTypes building Multiple String Types of actors that it can capture, as long as the type also exists in the ExternalCapturable Type: trait.
ConsumeActor False Boolean Destroy the unit after capturing.

ProximityCapturable

Actor can be captured by units in a specified proximity.

Property Default Value Type Description
Permanent False Boolean
Range 5 Integer
MustBeClear False Boolean
CaptorTypes Vehicle, Tank, Infantry Multiple String

PrimaryBuilding

Used together with ClassicProductionQueue.

CrateAction

Property Default Value Type Description
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

LightPaletteRotator

Palette effect used for blinking "animations" on actors.

Property Default Value Type Description
ExcludePalettes Multiple String

ProximityCaptor

Actor can capture ProximityCapturable actors.

Property Default Value Type Description
Types Multiple String

BelowUnits

GainsStatUpgrades

This actor has properties that upgrade when a specific criteria is met.

Property Default Value Type Description
FirepowerUpgrade firepower String
FirepowerModifier 110, 115, 120, 130 Multiple Integer
DamageUpgrade damage String
DamageModifier 91, 87, 83, 65 Multiple Integer
SpeedUpgrade speed String
SpeedModifier 110, 115, 120, 150 Multiple Integer
ReloadUpgrade reload String
ReloadModifier 95, 90, 85, 75 Multiple Integer
InaccuracyUpgrade inaccuracy String
InaccuracyModifier 90, 80, 70, 50 Multiple Integer

DetectCloaked

Actor can reveal Cloak actors in a specified range.

Property Default Value Type Description
CloakTypes Cloak Multiple String Specific cloak classifications I can reveal.
Range 5 Integer Measured in cells.

TargetableUnit

Actor can be targeted.

Property Default Value Type Description
TargetTypes Multiple String Target type. Used for filtering (in)valid targets.
RequiresForceFire False Boolean

Demolishable

Handle demolitions from C4 explosives.

ClonesProducedUnits

Creates a free duplicate of produced units.

Requires traits: Exit, Production.

Property Default Value Type Description
CloneableTypes Multiple String Uses the "Cloneable" trait to determine whether or not we should clone a produced unit.

SmokeTrailWhenDamaged

Property Default Value Type Description
Offset 0,0,0 3D World Vector Position relative to body
Interval 3 Integer
Sprite smokey String
MinDamage Heavy DamageState

JamsMissiles

Property Default Value Type Description
Range 0 Integer
AlliedMissiles True Boolean
Chance 100 Integer

RenderJammerCircle

MPStartUnits

Used by SpawnMPUnits. Attach these to the world actor. You can have multiple variants by adding @suffixes.

Property Default Value Type Description
Class none String Internal class ID.
ClassName Unlabeled String Exposed via the UI to the player.
Races Multiple String Only available when selecting this faction. Leave empty for no restrictions.
BaseActor String The mobile construction vehicle.
SupportActors Multiple String A group of units ready to defend or scout.
InnerSupportRadius 2 Integer Inner radius for spawning support actors
OuterSupportRadius 4 Integer Outer radius for spawning support actors

Cloneable

Actors with the "ClonesProducedUnits" trait will produce a free duplicate of me.

Property Default Value Type Description
Types Multiple String This unit's cloneable type is:

RepairsUnits

Property Default Value Type Description
ValuePercentage 20 Integer
HpPerStep 10 Integer
Interval 24 Integer

Cargo

This actor can transport Passenger actors.

Property Default Value Type Description
MaxWeight 0 Integer
PipCount 0 Integer
Types Multiple String
InitialUnits Multiple String
EjectOnSell True Boolean

BridgeLayer

Property Default Value Type Description
Bridges bridge1, bridge2 Multiple String

PaletteFromFile

Property Default Value Type Description
Name String internal palette name
Tileset String If defined, load the palette only for this tileset.
Filename String filename to load
ShadowIndex Multiple Integer Map listed indices to shadow. Ignores previous color.
AllowModifiers True Boolean

SpawnMPUnits

Spawn base actor at the spawnpoint and support units in an annulus around the base actor. Both are defined at MPStartUnits. Attach this to the world actor.

Requires traits: MPStartLocations, MPStartUnits.

Transforms

Actor becomes a specified actor type when this trait is triggered.

Property Default Value Type Description
IntoActor String
Offset 0,0 2D Cell Vector
Facing 96 Integer
TransformSounds Multiple String
NoTransformSounds Multiple String

Husk

Property Default Value Type Description
AllowedTerrain Multiple String

AppearsOnRadar

Property Default Value Type Description
UseLocation False Boolean

Buildable

Property Default Value Type Description
Prerequisites Multiple String The prerequisite names that must be available before this can be built. This can be prefixed with ! to invert the prerequisite (disabling production if the prerequisite is available) and/or ~ to hide the actor from the production palette if the prerequisite is not available. Prerequisites are granted by actors with the Building trait (with a prerequisite string given by the lower case actor name) and by the ProvidesCustomPrerequisite trait.
Owner Multiple String Restrict production to a specific race(s). **Deprecated**: Use race-specific prerequisites instead.
Queue Multiple String Production queue(s) that can produce this.
BuildAtProductionType String Override the production structure type (from the Production Produces list) that this unit should be built at.
BuildLimit 0 Integer Disable production when there are more than this many of this actor on the battlefield. Set to 0 to disable.
BuildPaletteOrder 9999 Integer

Turreted

Property Default Value Type Description
Turret primary String
ROT 255 Integer Rate of Turning
InitialFacing 128 Integer
AlignWhenIdle False Boolean
Offset 0,0,0 3D World Vector Muzzle position relative to turret or body. (forward, right, up) triples

Armament

Allows you to attach weapons to the unit (use @IdentifierSuffix for > 1)

Requires trait: AttackBase.

Property Default Value Type Description
Name primary String
Weapon String Has to be defined here and in weapons.yaml.
Turret primary String
FireDelay 0 Integer Time (in frames) until the weapon can fire again.
LocalOffset Multiple 3D World Vector Muzzle position relative to turret or body. (forward, right, up) triples
LocalYaw Multiple 1D World Angle Muzzle yaw relative to turret or body.
Recoil 0 1D World Range Move the turret backwards when firing.
RecoilRecovery 9 1D World Range Recoil recovery per-frame
MuzzleSequence String Muzzle flash sequence to render
MuzzlePalette effect String Palette to render Muzzle flash sequence in
MuzzleSplitFacings 0 Integer Use multiple muzzle images if non-zero

ShroudRenderer

Property Default Value Type Description
Sequence shroud String
ShroudVariants shroud Multiple String
FogVariants fog Multiple String
ShroudPalette shroud String
FogPalette fog String
Index 12, 9, 8, 3, 1, 6, 4, 2, 13, 11, 7, 14 Multiple Integer Bitfield of shroud directions for each frame. Lower four bits are corners clockwise from TL; upper four are edges clockwise from top
UseExtendedIndex False Boolean Use the upper four bits when calculating frame
OverrideFullShroud String Override for source art that doesn't define a fully shrouded tile
OverrideShroudIndex 15 Integer
OverrideFullFog String Override for source art that doesn't define a fully fogged tile
OverrideFogIndex 15 Integer
ShroudBlend Alpha BlendMode

WaterPaletteRotation

Palette effect used for sprinkle "animations" on terrain tiles.

Property Default Value Type Description
ExcludePalettes Multiple String

Repairable

This actor can be sent to a structure for repairs.

Requires trait: Health.

Property Default Value Type Description
RepairBuildings fix Multiple String

EmitInfantryOnSell

Spawn new actors when sold.

Property Default Value Type Description
ValuePercent 40 Real Number
MinHpPercent 30 Real Number
ActorTypes e1 Multiple String Be sure to use lowercase. Default value is "e1".

VoxelNormalsPalette

Property Default Value Type Description
Name normals String
Type TiberianSun NormalType Can be TiberianSun or RedAlert2

CrateSpawner

Property Default Value Type Description
Minimum 1 Integer Minimum number of crates
Maximum 255 Integer Maximum number of crates
SpawnInterval 180 Integer Average time (seconds) between crate spawn
ValidGround Clear, Rough, Road, Ore, Beach Multiple String Which terrain types can we drop on?
ValidWater Water Multiple String Which terrain types count as water?
WaterChance 0.2 Real Number Chance of generating a water crate instead of a land crate
CrateActors crate Multiple String Crate actors to drop
CrateActorShares 10 Multiple Integer Chance of each crate actor spawning
DeliveryAircraft String If a DeliveryAircraft: is specified, then this actor will deliver crates
QuantizedFacings 32 Integer Number of facings that the delivery aircraft may approach from.
Cordon 5120 1D World Range Spawn and remove the plane this far outside the map.

MPStartLocations

Property Default Value Type Description
InitialExploreRange 5120 1D World Range

AttackMove

Captures

This actor can capture other actors which have the Capturable: trait.

Property Default Value Type Description
CaptureTypes building Multiple String Types of actors that it can capture, as long as the type also exists in the Capturable Type: trait.
Sabotage True Boolean Unit will do damage to the actor instead of capturing it. Unit is destroyed when sabotaging.
SabotageHPRemoval 0.5 Real Number Only used if Sabotage=true. Sabotage damage expressed as a percentage of enemy health removed.

GivesBounty

You get money for playing this actor.

Property Default Value Type Description
Percentage 10 Integer Calculated by Cost or CustomSellValue so they have to be set to avoid crashes.
LevelMod 125 Integer Higher ranked units give higher bounties.
Stances Neutral, Enemy Multiple Stance Destroying creeps and enemies is rewarded.

Minelayer

Property Default Value Type Description
Mine minv String
RearmBuildings fix Multiple String
MinefieldDepth 1.5 Real Number

Chronoshiftable

Property Default Value Type Description
ExplodeInstead False Boolean
ChronoshiftSound chrono2.aud String

StoresResources

Used for silos.

Property Default Value Type Description
PipCount 0 Integer Number of little squares used to display how filled unit is.
PipColor Yellow PipType
Capacity 0 Integer

PlayerPaletteFromCurrentTileset

Property Default Value Type Description
Name String internal palette name
ShadowIndex Multiple Integer Map listed indices to shadow.
AllowModifiers True Boolean Apply palette rotatotors or not.

GivesExperience

This actor gives experience to a GainsExperience actor when they are killed.

Property Default Value Type Description
Experience -1 Integer If -1, use the value of the unit cost.
FriendlyFire False Boolean Grant experience for team-kills.

Immobile

Property Default Value Type Description
OccupiesSpace True Boolean

Parachutable

Can be paradropped by a ParaDrop actor.

Property Default Value Type Description
KilledOnImpassableTerrain True Boolean If we land on invalid terrain for my actor type should we be killed?
GroundImpactSound String
GroundCorpseSequence corpse String
GroundCorpsePalette effect String
WaterImpactSound String
WaterCorpseSequence small_splash String
WaterCorpsePalette effect String
ParachuteSequence String Requires the sub-sequences "open" and "idle".
ParachutePalette String Optional, otherwise defaults to the palette the actor is using.
ParachuteShadowPalette shadow String Used to clone the actor with this palette and render it with a visual offset below.
ParachuteOffset 0,0,0 3D World Vector
FallRate 13 Integer
ShadowSequence String Alternative to ParachuteShadowPalette which disables it and allows to set a custom sprite sequence instead.
ShadowPalette String Optional, otherwise defaults to the palette the actor is using.

LeavesHusk

Property Default Value Type Description
HuskActor String

RallyPoint

Used to waypoint units after production or repair is finished.

Property Default Value Type Description
RallyPoint 1,3 2D Cell Vector
IndicatorPalettePrefix player String

GlobalUpgradable

Property Default Value Type Description
Upgrades Multiple String
Prerequisites Multiple String

RenderShroudCircle

DisguiseToolTip

Overrides the default ToolTip when this actor is disguised (aids in deceiving enemy players).

Requires trait: Disguise.

Property Default Value Type Description
Description String
Name String
Icon icon String Sequence of the actor that contains the cameo.

Disguise

IgnoresDisguise

Valued

How much the unit is worth.

Property Default Value Type Description
Cost 0 Integer Used in production, but also for bounties so remember to set it > 0 even for NPCs.

RenderDetectionCircle

ScriptInvulnerable

Allows map scripts to make this actor invulnerable via actor.Invulnerable = true.

IronCurtainable

Capturable

This actor can be captured by a unit with Captures: trait.

Property Default Value Type Description
Type building String Type of actor (the Captures: trait defines what Types it can capture).
AllowAllies False Boolean
AllowNeutral True Boolean
AllowEnemies True Boolean
CaptureThreshold 0.5 Real Number Health percentage the target must be at (or below) before it can be captured.
CancelActivity False Boolean

CloakPaletteEffect

AnnounceOnKill

BridgeHut

EngineerRepair

EngineerRepairable

MadTank

Requires traits: Explodes, RenderUnit.

Property Default Value Type Description
ThumpSequence piston String
ThumpInterval 8 Integer
ThumpDamageWeapon MADTankThump String
ThumpShakeIntensity 3 Integer
ThumpShakeMultiplier 1,0 2D Real Number
ThumpShakeTime 10 Integer
ChargeDelay 96 Integer
ChargeSound madchrg2.aud String
DetonationDelay 42 Integer
DetonationSound madexplo.aud String
DetonationWeapon MADTankDetonate String
DriverActor e1 String

RepairableNear

Requires trait: Health.

Property Default Value Type Description
Buildings spen, syrd Multiple String
CloseEnough 4 Integer

ActorGroupProxy

Part of the unfinished group-movement system. Attach this to the player actor.

PlaceBeacon

Property Default Value Type Description
Duration 750 Integer
NotificationType Sounds String
Notification Beacon String
PalettePrefix player String

AllyRepair

Attach this to the player actor to allow building repair by team mates.

ProvidesTechPrerequisite

Property Default Value Type Description
Name String
Prerequisites Multiple String

MissionObjectives

Property Default Value Type Description
Cooperative False Boolean Set this to true if multiple cooperative players have a distinct set of objectives that each of them has to complete to win the game. This is mainly useful for multiplayer coop missions. Do not use this for skirmish team games.
EarlyGameOver False Boolean If set to true, this setting causes the game to end immediately once the first player (or team of cooperative players) fails or completes his objectives. If set to false, players that fail their objectives will stick around and become observers.
GameOverDelay 1500 Integer Delay between the game over condition being met, and the game actually ending, in milliseconds.

ObjectivesPanel

Provides game mode progress information for players. Goes on WorldActor - observers don't have a player it can live on. Current options for PanelName are 'SKIRMISH_STATS' and 'MISSION_OBJECTIVES'.

Property Default Value Type Description
PanelName String

PlayerStatistics

Attach this to the player actor to collect observer stats.

UpdatesPlayerStatistics

Attach this to a unit to update observer stats.

ClassicProductionQueue

Attach this to the world actor (not a building!) to define a new shared build queue. Will only work together with the Production: trait on the actor that actually does the production. You will also want to add PrimaryBuildings: to let the user choose where new units should exit.

Requires traits: PlayerResources, PowerManager, TechTree.

Property Default Value Type Description
SpeedUp False Boolean If you build more actors of the same type, the same queue will get its build time lowered for every actor produced there.
BuildTimeSpeedReduction 100, 85, 75, 65, 60, 55, 50 Multiple Integer Every time another production building of the same queue is contructed, the build times of all actors in the queue decreased by a percentage of the original time.
Type String What kind of production will be added (e.g. Building, Infantry, Vehicle, ...)
Group String Group queues from separate buildings together into the same tab.
RequireOwner True Boolean Filter buildable items based on their Owner.
Race Multiple String Only enable this queue for certain factions
Sticky True Boolean Should the prerequisite remain enabled if the owner changes?
BuildSpeed 0.4 Real Number This value is used to translate the unit cost into build time.
LowPowerSlowdown 3 Integer The build time is multiplied with this value on low power.
ReadyAudio UnitReady String Notification played when production is complete. The filename of the audio is defined per faction in notifications.yaml.
BlockedAudio NoBuild String Notification played when you can't train another unit when the build limit exceeded or the exit is jammed. The filename of the audio is defined per faction in notifications.yaml.
QueuedAudio Training String Notification played when user clicks on the build palette icon. The filename of the audio is defined per faction in notifications.yaml.
OnHoldAudio OnHold String Notification played when player right-clicks on the build palette icon. The filename of the audio is defined per faction in notifications.yaml.
CancelledAudio Cancelled String Notification played when player right-clicks on a build palette icon that is already on hold. The filename of the audio is defined per faction in notifications.yaml.

ProductionQueue

Attach this to an actor (usually a building) to let it produce units or construct buildings. If one builds another actor of this type, he will get a separate queue to create two actors at the same time. Will only work together with the Production: trait.

Property Default Value Type Description
Type String What kind of production will be added (e.g. Building, Infantry, Vehicle, ...)
Group String Group queues from separate buildings together into the same tab.
RequireOwner True Boolean Filter buildable items based on their Owner.
Race Multiple String Only enable this queue for certain factions
Sticky True Boolean Should the prerequisite remain enabled if the owner changes?
BuildSpeed 0.4 Real Number This value is used to translate the unit cost into build time.
LowPowerSlowdown 3 Integer The build time is multiplied with this value on low power.
ReadyAudio UnitReady String Notification played when production is complete. The filename of the audio is defined per faction in notifications.yaml.
BlockedAudio NoBuild String Notification played when you can't train another unit when the build limit exceeded or the exit is jammed. The filename of the audio is defined per faction in notifications.yaml.
QueuedAudio Training String Notification played when user clicks on the build palette icon. The filename of the audio is defined per faction in notifications.yaml.
OnHoldAudio OnHold String Notification played when player right-clicks on the build palette icon. The filename of the audio is defined per faction in notifications.yaml.
CancelledAudio Cancelled String Notification played when player right-clicks on a build palette icon that is already on hold. The filename of the audio is defined per faction in notifications.yaml.

ProvidesCustomPrerequisite

Property Default Value Type Description
Prerequisite String The prerequisite type that this provides
RequiresPrerequisites Multiple String Only grant this prerequisite when you have these prerequisites
Race Multiple String Only grant this prerequisite for certain factions
ResetOnOwnerChange False Boolean Should it recheck everything when it is captured?

BaseAttackNotifier

Property Default Value Type Description
NotifyInterval 30 Integer
RadarPingColor 255,255,0,0 Color
RadarPingDuration 250 Integer

TechTree

PlaceBuilding

GlobalUpgradeManager

Attach this to the player actor.

Requires trait: TechTree.

HarvesterAttackNotifier

Property Default Value Type Description
NotifyInterval 30 Integer
RadarPingColor 255,255,0,0 Color
RadarPingDuration 250 Integer

EjectOnDeath

Eject a ground soldier or a paratrooper while in the air.

Property Default Value Type Description
PilotActor E1 String
SuccessRate 50 Integer
ChuteSound chute1.aud String
EjectInAir False Boolean
EjectOnGround False Boolean
AllowUnsuitableCell False Boolean Risks stuck units when they don't have the Paratrooper trait.

Crate

Requires trait: RenderSprites.

Property Default Value Type Description
Lifetime 5 Integer Seconds
TerrainTypes Multiple String Allowed to land on.
CrushClass crate String Define actors that can collect crates by setting this into the Crushes field from the Mobile trait.

Reservable

PaletteFromR8

Property Default Value Type Description
Name String Internal palette name
Filename String Filename to load
Offset 0 Int64 Palette byte offset
AllowModifiers True Boolean
InvertColor False Boolean

FogPaletteFromR8

Property Default Value Type Description
Name String Internal palette name
Filename String Filename to load
Offset 0 Int64 Palette byte offset
AllowModifiers True Boolean
InvertColor False Boolean

Huntable

HackyAI

Property Default Value Type Description
Name Unnamed Bot String Ingame name this bot uses.
SquadSize 8 Integer Minimum number of units AI must have before attacking.
BuildingQueues Building Multiple String Production queues AI uses for buildings.
DefenseQueues Defense Multiple String Production queues AI uses for defenses.
AssignRolesInterval 20 Integer Delay (in ticks) between giving out orders to units.
RushInterval 600 Integer Delay (in ticks) between attempting rush attacks.
AttackForceInterval 30 Integer Delay (in ticks) between updating squads.
StructureProductionInactiveDelay 125 Integer How long to wait (in ticks) between structure production checks when there is no active production.
StructureProductionActiveDelay 10 Integer How long to wait (in ticks) between structure production checks ticks when actively building things.
MinimumDefenseRadius 5 Integer Minimum range at which to build defensive structures near a combat hotspot.
MaximumDefenseRadius 20 Integer Maximum range at which to build defensive structures near a combat hotspot.
NewProductionCashThreshold 5000 Integer Try to build another production building if there is too much cash.
IdleBaseUnitsMaximum 12 Integer Only produce units as long as there are less than this amount of units idling inside the base.
RushAttackScanRadius 15 Integer Radius in cells around enemy BaseBuilder (Construction Yard) where AI scans for targets to rush.
ProtectUnitScanRadius 15 Integer Radius in cells around the base that should be scanned for units to be protected.
RallyPointScanRadius 8 Integer Radius in cells around a factory scanned for rally points by the AI.
MaxBaseRadius 20 Integer Radius in cells around the center of the base to expand.
UnitQueues Vehicle, Infantry, Plane, Ship, Aircraft Multiple String Production queues AI uses for producing units.
ShouldRepairBuildings True Boolean Should the AI repair its buildings if damaged?
UnitsToBuild Dictionary What units to the AI should build. What % of the total army must be this type of unit.
BuildingFractions Dictionary What buildings to the AI should build. What % of the total base must be this type of building.
UnitsCommonNames Dictionary Tells the AI what unit types fall under the same common name.
BuildingCommonNames Dictionary Tells the AI what building types fall under the same common name.
BuildingLimits Dictionary What buildings should the AI have max limits n. What is the limit of the building.
PowerDecisions (Collection) List`1 Tells the AI how to use its support powers.

AttackPlane

Property Default Value Type Description
FacingTolerance 1 Integer
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

Helicopter

Property Default Value Type Description
LandWhenIdle True Boolean Allow the helicopter land after it has no more commands.
TurnToLand False Boolean Allow the helicopter turn before landing.
LandAltitude 0 1D World Range
AltitudeVelocity 43 1D World Range How fast the helicopter ascends or descends.
CruiseAltitude 1280 1D World Range
IdealSeparation 1706 1D World Range
Repulsable True Boolean Whether the aircraft can be repulsed.
RepulsionSpeed -1 Integer The speed at which the aircraft is repulsed from other aircraft. Specify -1 for normal movement speed.
RepairBuildings fix Multiple String
RearmBuildings hpad, afld Multiple String
InitialFacing 128 Integer
ROT 255 Integer
Speed 1 Integer
LandableTerrainTypes Multiple String
MoveIntoShroud True Boolean Can the actor be ordered to move in to shroud?

ReturnOnIdle

Return to a player owned RearmBuildings. If none available, head back to base and circle over it.

AttackHeli

Property Default Value Type Description
FacingTolerance 1 Integer
Armaments primary, secondary Multiple String Armament names
Cursor attack String
OutsideRangeCursor attackoutsiderange String

Plane

Property Default Value Type Description
MaximumPitch 28 1D World Angle
CruiseAltitude 1280 1D World Range
IdealSeparation 1706 1D World Range
Repulsable True Boolean Whether the aircraft can be repulsed.
RepulsionSpeed -1 Integer The speed at which the aircraft is repulsed from other aircraft. Specify -1 for normal movement speed.
RepairBuildings fix Multiple String
RearmBuildings hpad, afld Multiple String
InitialFacing 128 Integer
ROT 255 Integer
Speed 1 Integer
LandableTerrainTypes Multiple String
MoveIntoShroud True Boolean Can the actor be ordered to move in to shroud?

Aircraft

Property Default Value Type Description
CruiseAltitude 1280 1D World Range
IdealSeparation 1706 1D World Range
Repulsable True Boolean Whether the aircraft can be repulsed.
RepulsionSpeed -1 Integer The speed at which the aircraft is repulsed from other aircraft. Specify -1 for normal movement speed.
RepairBuildings fix Multiple String
RearmBuildings hpad, afld Multiple String
InitialFacing 128 Integer
ROT 255 Integer
Speed 1 Integer
LandableTerrainTypes Multiple String
MoveIntoShroud True Boolean Can the actor be ordered to move in to shroud?

FlyAwayOnIdle

Leave the map when idle.

TargetableAircraft

Property Default Value Type Description
GroundedTargetTypes Multiple String
TargetTypes Multiple String Target type. Used for filtering (in)valid targets.
RequiresForceFire False Boolean

FallsToEarth

Property Default Value Type Description
Explosion UnitExplode String
Spins True Boolean
Moves False Boolean
Velocity 43 1D World Range

BaseProvider

Property Default Value Type Description
Range 10 Integer
Cooldown 0 Integer
InitialDelay 0 Integer

ShakeOnDeath

Property Default Value Type Description
Intensity 10 Integer

CustomBuildTimeValue

Overrides the build time calculated by actor value.

Property Default Value Type Description
Value 0 Integer

SoundOnDamageTransition

Property Default Value Type Description
DamagedSound String
DestroyedSound String

Bib

Requires traits: Building, RenderSprites.

Property Default Value Type Description
Sequence bib String
Palette terrain String
HasMinibib False Boolean

LaysTerrain

Requires trait: Building.

Property Default Value Type Description
Template 0 UInt16 The terrain template to place. If the template is PickAny, thenthe actor footprint will be filled with this tile.
TerrainTypes Multiple String The terrain types that this template will be placed on
Offset 0,0 2D Cell Vector Offset relative to the actor TopLeft. Not used if the template is PickAny

LineBuildNode

LineBuild actors attach to LineBuildNodes.

Property Default Value Type Description
Types wall Multiple String This actor is of LineBuild 'NodeType'...

BuildingInfluence

A dictionary of buildings placed on the map. Attach this to the world actor.

GivesBuildableArea

Remove this trait to limit base-walking by cheap or defensive buildings.

Building

Property Default Value Type Description
TerrainTypes Multiple String Where you are allowed to place the building (Water, Clear, ...)
Adjacent 2 Integer The range to the next building it can be constructed. Set it higher for walls.
Footprint x String x means space it blocks, _ is a part that is passable by actors.
Dimensions 1,1 2D Cell Vector
RequiresBaseProvider False Boolean
AllowInvalidPlacement False Boolean
BuildSounds placbldg.aud, build5.aud Multiple String
UndeploySounds cashturn.aud Multiple String

LineBuild

Place the second actor in line to build more of the same at once (used for walls).

Property Default Value Type Description
Range 5 Integer The maximum allowed length of the line.
NodeTypes wall Multiple String LineBuildNode 'Types' to attach to.

CustomSellValue

Allow a non-standard sell/repair value to avoid buy-sell exploits.

Property Default Value Type Description
Value 0 Integer

RepairableBuilding

Building can be repaired by the repair button.

Requires trait: Health.

Property Default Value Type Description
RepairPercent 20 Integer
RepairInterval 24 Integer
RepairStep 7 Integer
RepairBonuses 100, 150, 175, 200, 220, 240, 260, 280, 300 Multiple Integer
IndicatorPalettePrefix player String

SupportPowerCrateAction

Gives a supportpower to the collector.

Property Default Value Type Description
Proxy String Which proxy actor, which grants the support power, to spawn.
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

GiveUnitCrateAction

Spawns units when collected.

Property Default Value Type Description
Units Multiple String The list of units to spawn.
ValidRaces Multiple String Races that are allowed to trigger this action
Owner String Override the owner of the newly spawned unit: e.g. Creeps or Neutral
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

UnitUpgradeCrateAction

Grants an upgrade to the collector.

Property Default Value Type Description
Upgrades Multiple String The upgrade to grant.
Range 3 1D World Range The range to search for extra collectors in. Extra collectors will also be granted the crate action.
MaxExtraCollectors 4 Integer The maximum number of extra collectors to grant the crate action to. -1 = no limit
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

DuplicateUnitCrateAction

Creates duplicates of the actor that collects the crate.

Property Default Value Type Description
MaxAmount 2 Integer The maximum number of duplicates to make.
MinAmount 1 Integer The minimum number of duplicates to make. Overrules MaxDuplicatesWorth.
MaxDuplicateValue -1 Integer The maximum total value allowed for the duplicates. Duplication stops if the total worth will exceed this number. -1 = no limit
MaxRadius 4 Integer The maximum radius (in cells) that duplicates can be spawned.
ValidTargets Ground, Water Multiple String The list of unit target types we are allowed to duplicate.
ValidRaces Multiple String Which races this crate action can occur for.
Owner String Is the new duplicates given to a specific owner, regardless of whom collected it?
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

GiveMcvCrateAction

Spawns units when collected. Adjust selection shares when player has no base.

Property Default Value Type Description
NoBaseSelectionShares 1000 Integer The selection shares to use if the collector has no base.
Units Multiple String The list of units to spawn.
ValidRaces Multiple String Races that are allowed to trigger this action
Owner String Override the owner of the newly spawned unit: e.g. Creeps or Neutral
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

HealUnitsCrateAction

Heals all actors that belong to the owner of the collector.

Property Default Value Type Description
SelectionShares 10 Integer Chance of getting this crate, assuming the collector is compatible.
Effect String An animation defined in sequence yaml(s) to draw.
Palette effect String Palette to draw the animation in.
Notification String Audio clip to play when the crate is collected.
TimeDelay 0 Integer The earliest time (in ticks) that this crate action can occur on.
Prerequisites Multiple String Only allow this crate action when the collector has these prerequisites
ExcludedActorTypes Multiple String Actor types that this crate action will not occur for.

GpsDot

Property Default Value Type Description
String Infantry String
IndicatorPalettePrefix player String

InfiltrateForPowerOutage

Property Default Value Type Description
Duration 750 Integer

InfiltrateForSupportPower

Property Default Value Type Description
Proxy String

InfiltrateForCash

This structure can be infiltrated causing funds to be stolen.

Property Default Value Type Description
Percentage 50 Integer
Minimum 500 Integer
SoundToVictim credit1.aud String

InfiltrateForExploration

Infiltrates

Property Default Value Type Description
Types Multiple String

PathFinder

Mobile

Unit is able to move.

Property Default Value Type Description
TerrainSpeeds Dictionary Set Water: 0 for ground units and lower the value on rough terrain.
Crushes Multiple String e.g. crate, wall, infantry
WaitAverage 5 Integer
WaitSpread 2 Integer
InitialFacing 128 Integer
ROT 255 Integer Rate of Turning
Speed 1 Integer
OnRails False Boolean
SharesCell False Boolean Allow multiple (infantry) units in one cell.
MoveIntoShroud True Boolean Can the actor be ordered to move in to shroud?
TilesetTerrainInfo Cached
TilesetMovementClass Cached

AffectedByPowerOutage

CanPowerDown

The player can disable the power individually on this actor.

Requires trait: Power.

ScalePowerWithHealth

Scale power amount with the current health.

Requires traits: Health, Power.

Power

Property Default Value Type Description
Amount 0 Integer If negative, it will drain power. If positive, it will provide power.

RequiresPower

PowerManager

Requires trait: DeveloperMode.

Property Default Value Type Description
AdviceInterval 250 Integer

WithBarrel

Renders barrels for units with the Turreted trait.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence barrel String Sequence name to use
Armament primary String Armament to use for recoil
Barrel first String Turreted 'Barrel' key to display
LocalOffset 0,0,0 3D World Vector Visual offset

WithResources

Displays the fill status of PlayerResources with an extra sprite overlay on the actor.

Requires trait: RenderSimple.

Property Default Value Type Description
Sequence resources String Sequence name to use

RenderSprites

Property Default Value Type Description
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithTurret

Renders turrets for units with the Turreted trait.

Requires traits: RenderSprites, Turreted.

Property Default Value Type Description
Sequence turret String Sequence name to use
AimSequence String Sequence name to use when prepared to fire
Turret primary String Turreted 'Turret' key to display
Recoils True Boolean Render recoil

WithRepairAnimation

Replaces the building animation when it repairs a unit.

Requires trait: RenderBuilding.

Property Default Value Type Description
Sequence active String Sequence name to use
PauseOnLowPower False Boolean

WithShadow

Clones the aircraft sprite with another palette below it.

Property Default Value Type Description
Palette shadow String

WithBuildingPlacedAnimation

Changes the animation when the actor constructed a building.

Requires trait: RenderSimple.

Property Default Value Type Description
Sequence build String Sequence name to use

RenderUnitReload

Requires traits: Armament, AttackBase.

Property Default Value Type Description
Armament primary String Armament name
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

RenderBuildingCharge

Used for tesla coil and obelisk.

Requires trait: Building.

Property Default Value Type Description
ChargeAudio String Sound to play when building charges.
ChargeSequence active String Sequence to use for building charge animation.
PauseOnLowPower False Boolean
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

RenderBuildingWarFactory

Requires trait: Building.

Property Default Value Type Description
PauseOnLowPower False Boolean
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithIdleOverlay

Renders a decorative animation on units and buildings.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence idle-overlay String Sequence name to use
Offset 0,0,0 3D World Vector Position relative to body
Palette String Custom palette name
IsPlayerPalette False Boolean Custom palette is a player palette BaseName
PauseOnLowPower False Boolean

RenderUnit

Property Default Value Type Description
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

RenderBuildingSilo

Requires trait: Building.

Property Default Value Type Description
PauseOnLowPower False Boolean
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

RenderBuildingWall

Requires trait: Building.

Property Default Value Type Description
Type wall String
Sequence idle String
PauseOnLowPower False Boolean
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithMakeAnimation

Requires traits: Building, RenderBuilding.

Property Default Value Type Description
Sequence make String Sequence name to use

WithRepairOverlay

Displays an overlay when the building is being repaired by the player.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence active String Sequence name to use
Offset 0,0,0 3D World Vector Position relative to body
Palette String Custom palette name
IsPlayerPalette False Boolean Custom palette is a player palette BaseName
PauseOnLowPower False Boolean

RenderHarvester

Requires trait: Harvester.

Property Default Value Type Description
ImagesByFullness harv Multiple String
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithMuzzleFlash

Renders the MuzzleSequence from the Armament trait.

Requires traits: Armament, AttackBase, RenderSprites.

Property Default Value Type Description
IgnoreOffset False Boolean Ignore the weapon position, and always draw relative to the center of the actor

RenderNameTag

Displays the player name above the unit

Property Default Value Type Description
MaxLength 10 Integer
Font TinyBold String

WithCrateBody

Renders crates with both water and land variants.

Requires trait: RenderSprites.

Property Default Value Type Description
Images crate Multiple String
XmasImages Multiple String Easteregg sequences to use in december.

WithHarvestAnimation

Displays an overlay whenever resources are harvested by the actor.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence harvest String Sequence name to use
Offset 0,0,0 3D World Vector Position relative to body

RenderLandingCraft

Property Default Value Type Description
OpenTerrainTypes Clear Multiple String
OpenAnim open String
UnloadAnim unload String
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

RenderSimple

Property Default Value Type Description
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

RenderDisguise

Requires trait: Disguise.

Property Default Value Type Description
MinIdleWaitTicks 30 Integer
MaxIdleWaitTicks 110 Integer
MoveAnimation run String
AttackAnimation shoot String
IdleAnimations Multiple String
StandAnimations stand Multiple String
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithVoxelTurret

Requires traits: RenderVoxels, Turreted.

Property Default Value Type Description
Sequence turret String Voxel sequence name to use
Turret primary String Turreted 'Turret' key to display

WithActiveAnimation

Replaces the idle animation of a building.

Requires trait: RenderBuilding.

Property Default Value Type Description
Sequence active String Sequence name to use
Interval 750 Integer
PauseOnLowPower False Boolean

WithBuildingExplosion

Display explosions over the building footprint when it is destroyed.

Requires trait: Building.

Property Default Value Type Description
Sequence building String Explosion sequence name to use
Palette effect String Custom palette name

RenderFlare

Property Default Value Type Description
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

RenderEditorOnly

Property Default Value Type Description
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithDeathAnimation

This actor has a death animation.

Requires trait: RenderSimple.

Property Default Value Type Description
DeathSequence die String Sequence to play when this actor is killed by a warhead.
DeathSequencePalette player String
DeathPaletteIsPlayerPalette True Boolean Custom death animation palette is a player palette BaseName
UseDeathTypeSuffix True Boolean Should DeathType-specific sequences be used (sequence name = DeathSequence + DeathType).
CrushedSequence die-crushed String Sequence to play when this actor is crushed.
CrushedSequencePalette effect String
CrushedPaletteIsPlayerPalette False Boolean Custom crushed animation palette is a player palette BaseName

RenderBuilding

Requires trait: Building.

Property Default Value Type Description
PauseOnLowPower False Boolean
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithVoxelBody

Also returns a default selection size that is calculated automatically from the voxel dimensions.

Requires trait: RenderVoxels.

Property Default Value Type Description
Sequence idle String

WithVoxelBarrel

Requires trait: RenderVoxels.

Property Default Value Type Description
Sequence barrel String Voxel sequence name to use
Armament primary String Armament to use for recoil
LocalOffset 0,0,0 3D World Vector Visual offset

WithRotor

Displays a helicopter rotor overlay.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence rotor String Sequence name to use when flying
GroundSequence slow-rotor String Sequence name to use when landed
Offset 0,0,0 3D World Vector Position relative to body
Id rotor String Change this when using this trait multiple times on the same actor.

RenderInfantry

Property Default Value Type Description
MinIdleWaitTicks 30 Integer
MaxIdleWaitTicks 110 Integer
MoveAnimation run String
AttackAnimation shoot String
IdleAnimations Multiple String
StandAnimations stand Multiple String
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

RenderBuildingTurreted

Requires traits: Building, Turreted.

Property Default Value Type Description
PauseOnLowPower False Boolean
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithSmoke

Renders an overlay when the actor is taking heavy damage.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence smoke_m String Needs to define "idle", "loop" and "end" sub-sequences.

RenderVoxels

Property Default Value Type Description
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
NormalsPalette normals String
Scale 10 Real Number Change the image size.
LightPitch 142 1D World Angle
LightYaw 682 1D World Angle
LightAmbientColor 0,6, 0,6, 0,6 Multiple Real Number
LightDiffuseColor 0,4, 0,4, 0,4 Multiple Real Number

WithDeliveryAnimation

Building animation to play when ProductionAirdrop is used to deliver units.

Requires trait: RenderBuilding.

Property Default Value Type Description
ActiveSequence active String
IdleSequence idle String

RenderGunboat

Property Default Value Type Description
Turret primary String Turreted 'Turret' key to display
LeftSequence left String
RightSequence right String
WakeLeftSequence wake-left String
WakeRightSequence wake-right String
Image String Defaults to the actor name.
Palette String Custom palette name
PlayerPalette player String Custom PlayerColorPalette: BaseName
Scale 1 Real Number Change the sprite image size.

WithDeliveryOverlay

Rendered when ProductionAirdrop is in progress.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence active String Sequence name to use
Offset 0,0,0 3D World Vector Position relative to body
Palette String Custom palette name
IsPlayerPalette False Boolean Custom palette is a player palette BaseName

WithProductionOverlay

Renders an animation when the Production trait of the actor is activated. Works both with per player ClassicProductionQueue and per building ProductionQueue, but needs any of these.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence production-overlay String Sequence name to use
Offset 0,0,0 3D World Vector Position relative to body
Palette String Custom palette name
IsPlayerPalette False Boolean Custom palette is a player palette BaseName

WithCrumbleOverlay

Rendered together with the "make" animation.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence crumble-overlay String Sequence name to use
Palette String Custom palette name
IsPlayerPalette False Boolean Custom palette is a player palette BaseName

WithDockingOverlay

Rendered when a harvester is docked.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence docking-overlay String Sequence name to use
Offset 0,0,0 3D World Vector Position relative to body
Palette String Custom palette name
IsPlayerPalette False Boolean Custom palette is a player palette BaseName

WithBuildingPlacedOverlay

Rendered when the actor constructed a building.

Requires trait: RenderSprites.

Property Default Value Type Description
Sequence crane-overlay String Sequence name to use
Offset 0,0,0 3D World Vector Position relative to body
Palette String Custom palette name
IsPlayerPalette False Boolean Custom palette is a player palette BaseName

LuaScriptInterface

Part of the legacy Lua API.

Requires trait: SpawnMapActors.

Property Default Value Type Description
LuaScripts Multiple String

LuaScriptEvents

Part of the legacy Lua API.

LuaScript

Part of the new Lua API.

Requires trait: SpawnMapActors.

Property Default Value Type Description
Scripts Multiple String

ScriptTriggers

Allows map scripts to attach triggers to this actor via the Triggers global.

EditorAppearance

Property Default Value Type Description
RelativeToTopLeft False Boolean
UseTerrainPalette False Boolean

Selectable

Property Default Value Type Description
Selectable True Boolean
Priority 10 Integer
Bounds Multiple Integer
Voice String

ResourceType

Property Default Value Type Description
EditorSprite String
Variants Multiple String
Palette terrain String
Sequence resources String
ResourceType 1 Integer
ValuePerUnit 0 Integer
MaxDensity 10 Integer
Name String
TerrainType Ore String
AllowedTerrainTypes Multiple String
AllowUnderActors False Boolean
AllowUnderBuildings False Boolean
PipColor Yellow PipType

ScreenShaker

Property Default Value Type Description
MinMultiplier -3,-3 2D Real Number
MaxMultiplier 3,3 2D Real Number

ActorMap

Property Default Value Type Description
BinSize 10 Integer Size of partition bins (cells)

Country

Property Default Value Type Description
Name String This is the name exposed to the players.
Race String This is the internal name for owner checks.
Selectable True Boolean

ScreenMap

Property Default Value Type Description
BinSize 250 Integer Size of partition bins (world pixels)

Shroud

Required for shroud and fog visibility checks. Add this to the player actor.

CreatesShroud

Property Default Value Type Description
Range 0 1D World Range

DebugPauseState

Checks for pause related desyncs. Attach this to the world actor.

DrawLineToTarget

Property Default Value Type Description
Ticks 60 Integer

RejectsOrders

Can be used to make a unit partly uncontrollable by the player.

Property Default Value Type Description
Except Multiple String Possible values include Attack, AttackMove, Guard, Move.

EditorTilesetFilter

Property Default Value Type Description
RequireTilesets Multiple String
ExcludeTilesets Multiple String

RevealsShroud

Property Default Value Type Description
Range 0 1D World Range

Health

Property Default Value Type Description
HP 0 Integer
Radius 426 1D World Range Physical size of the unit used for damage calculations. Impacts within this radius apply full damage

Armor

Property Default Value Type Description
Type String

SelectionDecorations

Property Default Value Type Description
Palette chrome String

BodyOrientation

Property Default Value Type Description
QuantizedFacings -1 Integer Number of facings for gameplay calculations. -1 indicates auto-detection from another trait
CameraPitch 113 1D World Angle Camera pitch for rotation calculations

PlayerResources

Property Default Value Type Description
SelectableCash 2500, 5000, 10000, 20000 Multiple Integer
DefaultCash 5000 Integer
AdviceInterval 250 Integer

PlayerColorPalette

Add this to the Player actor definition.

Property Default Value Type Description
BasePalette String The name of the palette to base off.
BaseName player String The prefix for the resulting player palettes
RemapIndex Multiple Integer Remap these indices to player colors.
Ramp 0.05 Real Number Luminosity range to span.
AllowModifiers True Boolean Allow palette modifiers to change the palette.

PlayerHighlightPalette

Add this to the Player actor definition.

Property Default Value Type Description
BaseName highlight String The prefix for the resulting player palettes

FrozenActorLayer

Required for FrozenUnderFog to work. Attach this to the player actor.

FixedColorPalette

Add this to the World actor definition.

Property Default Value Type Description
Base terrain String The name of the palette to base off.
Name resources String The name of the resulting palette
RemapIndex Multiple Integer Remap these indices to pre-defined colors.
Color 0,0,0 HSLColor The fixed color to remap.
Ramp 0.05 Real Number Luminosity range to span.
AllowModifiers True Boolean Allow palette modifiers to change the palette.

DeveloperMode

Attach this to the player actor.

Property Default Value Type Description
Cash 20000 Integer
ResourceGrowth 100 Integer
FastBuild False Boolean
FastCharge False Boolean
DisableShroud False Boolean
PathDebug False Boolean
UnlimitedPower False Boolean
BuildAnywhere False Boolean
ShowCombatGeometry False Boolean
ShowDebugGeometry False Boolean

ValidateOrder

Used to detect exploits. Attach this to the world actor.

Players ๐ŸŽฒ

Modders โœ๏ธ

Developers ๐Ÿ”ง

Clone this wiki locally