Prototype Types
ActivateEquipmentCapsuleAction
ActivateImpactTriggerEffectItem
ActivatePasteTipTrigger
ActiveTriggerID — The name of an ActiveTriggerPrototype.
ActivityBarStyleSpecification
ActivityMatchingModifiers
AdvancedMapGenSettings
AdvancedVolumeControl
AggregationSpecification
AgriculturalCraneProperties
AgriculturalCraneSpeed
AgriculturalCraneSpeedArm
AgriculturalCraneSpeedGrappler
AirbornePollutantID — The name of an AirbornePollutantPrototype.
Alignment — A string that specifies where a GUI element should be.
AlternativeBuildTipTrigger
AmbientSoundType — Lets the game know in what instances the audio file is played.
AmmoCategoryID — The name of an AmmoCategory.
AmmoDamageModifier
AmmoSourceType — Used to allow specifying different ammo effects depending on which kind of entity the ammo is used in.
AmmoType — Definition of actual parameters used in attack.
AndTipTrigger
AnimatedVector
Animation — Specifies an animation that can be used in the game.
Animation4Way — If this is loaded as a single Animation, it applies to all directions. Any direction that is not defined defaults to the north animation.
AnimationElement
AnimationFrameSequence — This is a list of 1-based frame indices into the spritesheet. The actual length of the animation will then be the length of the frame_sequence (times repeat_count, plus the length minus two if run_mode is "forward-then-backward"). There is a limit for (actual) animation length of 255 frames.
AnimationParameters
AnimationRunMode
AnimationSheet
AnimationVariations
AnyBasic — Any basic type (string, number, boolean) or table.
AnyPrototype — A union of all prototypes. A specific prototype is loaded based on the value of the type key.
ApplyStarterPackTipTrigger
AreaTriggerItem
ArtilleryRangeModifier
ArtilleryRemoteCapsuleAction
ArtilleryTriggerDelivery
AsteroidChunkID — The name of an AsteroidChunkPrototype.
AsteroidCollectorGraphicsSet
AsteroidGraphicsSet
AsteroidSettings
AsteroidSpawnPoint
AsteroidVariation
AttackParameters — Loaded as one of the BaseAttackParameters extensions, based on the value of the type key.
AttackReactionItem
Attenuation
AttenuationType
AutoplaceControlID — The name of an AutoplaceControl.
AutoplaceSettings
AutoplaceSpecification — Autoplace specification is used to determine which entities are placed when generating map. Currently it is used for enemy bases, tiles, resources and other entities (trees, fishes, etc.).
BaseAttackParameters — The abstract base of all AttackParameters.
BaseEnergySource — The abstract base of all EnergySources. Specifies the way an entity gets its energy.
BaseModifier — The abstract base of all Modifiers.
BaseStyleSpecification — The abstract base of all StyleSpecifications.
BeaconDistributionModifier
BeaconGraphicsSet
BeaconModuleVisualization
BeaconModuleVisualizations
BeaconVisualizationTints
BeamAnimationSet
BeamAttackParameters
BeamGraphicsSet
BeamTriggerDelivery
BeltReaderLayer
BeltStackSizeBonusModifier
BeltTraverseTipTrigger
BlendMode — Determines how sprites/animations should blend with the background. The possible values are listed below.
BoilerPictures
BoilerPictureSet
BonusGuiOrdering
boolean — A variable type which can have one of two values: true or false. Wikipedia has a comprehensive article on Booleans.
BoolModifier
BorderImageSet
BoundingBox — BoundingBoxes are typically centered around the position of an entity.
BoxSpecification — A cursor box, for use in UtilitySprites.
BuildEntityByRobotTipTrigger
BuildEntityTechnologyTrigger
BuildEntityTipTrigger
BuildMode
BulkInserterCapacityBonusModifier
BurnerEnergySource
BurnerUsageID — The name of a BurnerUsagePrototype.
ButtonStyleSpecification
CameraEffectTriggerEffectItem
CameraStyleSpecification
CapsuleAction — Loaded as one of the capsule actions, based on the value of the type key.
CaptureSpawnerTechnologyTrigger
CargoBayConnectableGraphicsSet
CargoBayConnections — Walls should have an even number of variations because they are interleaved.
CargoHatchDefinition
CargoLandingPadLimitModifier
CargoStationParameters — A cargo station is any entity that has the capacity to send cargo units. In Space Age those are RocketSiloPrototype, SpacePlatformHubPrototype and CargoLandingPadPrototype. Cargo bays may provide additional cargo hatches to cargo stations which are cargo bay connectable.
ChainTriggerDelivery
ChangeRecipeProductivityModifier
ChangeSurfaceTipTrigger
CharacterArmorAnimation — The data for one variation of character animations.
CharacterBuildDistanceModifier
CharacterCraftingSpeedModifier
CharacterHealthBonusModifier
CharacterInventorySlotsBonusModifier
CharacterItemDropDistanceModifier
CharacterItemPickupDistanceModifier
CharacterLogisticRequestsModifier
CharacterLogisticTrashSlotsModifier
CharacterLootPickupDistanceModifier
CharacterMiningSpeedModifier
CharacterReachDistanceModifier
CharacterResourceReachDistanceModifier
CharacterRunningSpeedModifier
ChargableGraphics
ChartUtilityConstants
CheckBoxStyleSpecification
CircuitConditionConnector
CircuitConnectorDefinition — Definition of a circuit connector.
CircuitConnectorLayer
CircuitConnectorSecondaryDrawOrder
CircuitConnectorSprites
CircuitNetworkModifier
CircularParticleCreationSpecification
CircularProjectileCreationSpecification
ClearCursorTipTrigger
CliffDeconstructionEnabledModifier
CliffPlacementSettings
CloudEffectStyle — Additional mask which dictates where in the world certain ProcessionLayers are drawn. Origin determined by EffectRelativeTo.
CloudsEffectProperties
CloudsTextureCoordinateTransformation
ClusterTriggerItem
CollisionLayerID — The name of a CollisionLayerPrototype.
CollisionMaskConnector — The base game provides common collision mask functions in a Lua file in the core lualib.
Color — Table of red, green, blue, and alpha float values between 0 and 1. Alternatively, values can be from 0-255, they are interpreted as such if at least one value is > 1.
ColorFilterData
ColorHintSpecification
ColorLookupTable — A lookup table (LUT) for the color which maps the original color to a position in the sprite where the replacement color is found. The file pointed to by the filename must be a sprite of size 256×16.
ColumnAlignment
ColumnWidth
ColumnWidthItem
ComparatorString — A string that specifies how the inputs should be compared.
ConnectableEntityGraphics — Graphics for the heat pipe.
ConsumingType — Defines which other inputs a CustomInputPrototype consumes.
ControlPoint
CountBasedTipTrigger
CoverGraphicEffectData — Clips the CoverGraphicProcessionLayer.
CoverGraphicProcessionLayer — Draws a layer of cloud texture covering the screen. It can fade in an out based on opacity and using the picture mask as gradient of areas which fade in soon or later.
CoverGraphicProcessionLayerBezierControlPoint — One frame in time for a Bezier interpolation.
CraftFluidTechnologyTrigger
CraftingMachineGraphicsSet
CraftItemTechnologyTrigger
CraftItemTipTrigger
CranePart
CranePartDyingEffect
CraterPlacementDefinition
CraterSegment
CreateAsteroidChunkEffectItem
CreateDecorativesTriggerEffectItem
CreateEntityTriggerEffectItem
CreateExplosionTriggerEffectItem
CreateFireTriggerEffectItem
CreateGhostOnEntityDeathModifier
CreateParticleTriggerEffectItem
CreateSmokeTriggerEffectItem
CreateSpacePlatformTechnologyTrigger
CreateStickerTriggerEffectItem
CreateTrivialSmokeEffectItem
CursorBoxSpecification
CursorBoxType — One of the following values:
CustomTooltipField — Allows to add extra description items to the tooltip.
CyclicSound — Used by BaseAttackParameters to play a sound during the attack.
DamageEntityTriggerEffectItem
DamageParameters — Used to specify what type of damage and how much damage something deals.
DamageTileTriggerEffectItem
DamageTypeFilters
DamageTypeID — The name of a DamageType.
Data — The data table is read by the game to load all prototypes.
DataExtendMethod — The data.extend method. It's the primary way to add prototypes to the data table.
DaytimeColorLookupTable — The first member of the tuple states at which time of the day the LUT should be used. If the current game time is between two values defined in the color lookup that have different LUTs, the color is interpolated to create a smooth transition. (Sharp transition can be achieved by having the two values differing only by a small fraction.)
DeconstructionTimeToLiveModifier
DecorativeID — The name of a DecorativePrototype.
DelayedTriggerDelivery
DependenciesMetTipTrigger — This trigger is considered fulfilled when the TipsAndTricksItem::dependencies are fulfilled.
DestroyCliffsCapsuleAction
DestroyCliffsTriggerEffectItem
DestroyDecorativesTriggerEffectItem
DifficultySettings
DirectionShift
DirectionString — One of the 16 directions, specified with a string.
DirectTriggerItem
double — Format uses a dot as its decimal delimiter. Doubles are stored in the double precision floating point format.
DoubleSliderStyleSpecification
DropDownStyleSpecification
DropItemTipTrigger
Effect — When applied to modules, the resulting effect is a sum of all module effects, multiplied through calculations: (1 + sum module effects), or (0 + sum) for productivity. Quality calculations follow their own separate logic.
EffectReceiver
EffectRelativeTo — Identifies what CloudEffectStyle refers to.
EffectTexture
EffectTypeLimitation — A list of module effects, or just a single effect. Modules with other effects cannot be used on the machine. This means that both effects from modules and from surrounding beacons are restricted to the listed effects. If allowed_effects is an empty array, the machine cannot be affected by modules or beacons.
EffectValue — Precision is ignored beyond two decimals - 0.567 results in 0.56 and means 56% etc. Values can range from -327.68 to 327.67. Numbers outside of this range will wrap around.
EffectVariation
ElectricEnergySource
ElectricUsagePriority — Used to specify priority of energy usage in the electric system.
ElementImageSet — If this is loaded as a single ElementImageSetLayer, it gets used as base.
ElementImageSetLayer — If this is loaded as a Sprite, it gets used as center.
EmptyWidgetStyleSpecification
EnemyEvolutionSettings
EnemyExpansionSettings
EnemySpawnerAbsorption
EnemySpawnerGraphicsSet
Energy — Specifies an amount of electric energy in joules, or electric energy per time in watts.
EnergySource — Loaded as one of the BaseEnergySource extensions, based on the value of the type key.
EnterVehicleTipTrigger
EntityBuildAnimationPiece — A single tiles worth of animations used when building entities.
EntityBuildAnimations — A set of animations used when building entities on space platforms. All EntityBuildAnimationPieces must have the same animation speed.
EntityID — The name of an EntityPrototype.
EntityIDFilter
EntityPrototypeFlags — An array containing the following values.
EntityRendererSearchBoxLimits — How far (in tiles) entities should be rendered outside the visible area of the screen.
EntityStatus
EntityTransferTipTrigger
EquipmentCategoryID — The name of an EquipmentCategory.
EquipmentGridID — The name of an EquipmentGridPrototype.
EquipmentID — The name of an EquipmentPrototype.
EquipmentShape — The shape and dimensions of an equipment module.
ExplosionDefinition
Fade
Fades
FastBeltBendTipTrigger
FastReplaceTipTrigger
FeatureFlags — A dictionary of feature flags and their status. It can be used to adjust prototypes based on whether the feature flags are enabled. It is accessible through the global object named feature_flags.
FileName — A slash "/" is always used as the directory delimiter. A path always begins with the specification of a root, which can be one of three formats:
FlipEntityTipTrigger
float — Format uses a dot as its decimal delimiter. Floats are stored in the single precision floating point format.
FlowStyleSpecification
FluidAmount — A fluid amount. The amount is stored as a fixed-size signed 64 bit integer, with 24 bits reserved for decimal precision, meaning the smallest value step is 1/2^24.
FluidBox — Used to set the fluid amount an entity can hold, as well as the connection points for pipes leading into and out of the entity.
FluidBoxLinkedConnectionID
FluidBoxSecondaryDrawOrders
FluidEnergySource
FluidFlowDirection
FluidID — The name of a FluidPrototype.
FluidIngredientPrototype — A fluid ingredient definition.
FluidProductPrototype — A fluid product definition.
FluidWagonConnectorGraphics
FogEffectProperties
FogMaskShapeDefinition
FollowerRobotLifetimeModifier
FootprintParticle
FootstepTriggerEffectItem
FootstepTriggerEffectList
ForceCondition
FrameStyleSpecification
FrequencySizeRichness
FuelCategoryID — The name of a FuelCategory.
FusionGeneratorDirectionGraphicsSet
FusionGeneratorFluidInputGraphics
FusionGeneratorGraphicsSet
FusionReactorConnectionGraphics
FusionReactorGraphicsSet
GameControllerVibrationData
GameViewSettings
GateOverRailBuildTipTrigger
GeneratingPowerTipTrigger
GhostShimmerConfig
GhostShimmerDistortionData
GhostShimmerOverlayData
GhostTintSet
GigaCargoHatchDefinition
GiveItemModifier — Note that when any technology prototype changes (regardless of which mod it belongs to), the game re-applies all researched technology effects, including "give-item" modifiers. This means that players will receive the item again, even if they already received it previously. This can be undesirable.
GlobalRecipeTints
GlobalTintEffectProperties
GlowStyleSpecification
GraphStyleSpecification
GroupAttackTipTrigger
GunShift4Way
GunSpeedModifier
HeatBuffer — Used to specify heat capacity properties without a heat energy source.
HeatConnection — Defines the connections for HeatEnergySource and HeatBuffer.
HeatEnergySource
HorizontalAlign
HorizontalFlowStyleSpecification
HorizontalScrollBarStyleSpecification
IconData — One layer of an icon. Icon layering follows the following rules:
IconDrawSpecification — Specification of where and how the alt-mode icons of entities should be drawn.
IconSequencePositioning — Specification of where and how should be the icons of individual inventories be drawn.
ImageStyleSpecification
IngredientPrototype — Item or fluid ingredient.
InserterStackSizeBonusModifier
InsertItemTriggerEffectItem
InstantTriggerDelivery
int16 — 16 bit signed integer. Ranges from -32 768 to 32 767, or [-2^15, 2^15-1].
int32 — 32 bit signed integer. Ranges from -2 147 483 648 to 2 147 483 647, or [-2^31, 2^31-1].
int8 — 8 bit signed integer. Ranges from -128 to 127, or [-2^7, 2^7-1].
InterruptibleSound
InventoryWithCustomStackSizeSpecification
InvokeTileEffectTriggerEffectItem
ItemCountType
ItemGroupID — The name of an ItemGroup.
ItemHealthColorData
ItemID — The name of an ItemPrototype.
ItemIDFilter
ItemIngredientPrototype — An item ingredient definition.
ItemProductPrototype — An item product definition.
ItemPrototypeFlags — An array containing the following values.
ItemStackIndex
ItemSubGroupID — The name of an ItemSubGroup.
ItemToPlace — Item that when placed creates this entity/tile.
KillTipTrigger
LabelStyleSpecification
LaboratoryProductivityModifier
LaboratorySpeedModifier
LayeredSound
LayeredSprite
LayeredSpriteVariations
LightDefinition — Specifies a light source. This is loaded either as a single light source or as an array of light sources.
LightFlickeringDefinition — Specifies the light flicker. Note that this defaults to "showing a white light" instead of the usually expected "showing nothing".
LightningGraphicsSet
LightningPriorityRule
LightningProperties
LightningRuleBase
LightningShaderConfiguration
LightProperties
LimitChestTipTrigger
LineStyleSpecification
LineTriggerItem
LinkedBeltStructure
LinkedGameControl — The internal name of a game control (key binding).
ListBoxStyleSpecification
LoaderStructure
LocalisedString — Localised strings are a way to support translation of in-game text. They offer a language-independent code representation of the text that should be shown to players.
LogisticFilterIndex
LootItem — The items generated when an EntityWithHealthPrototype is killed.
LowPowerTipTrigger
MainSound
ManualTransferTipTrigger
ManualWireDragTipTrigger
MapEditorConstants
MapGenPreset
MapGenPresetAsteroidSettings
MapGenPresetDifficultySettings
MapGenPresetEnemyEvolutionSettings
MapGenPresetEnemyExpansionSettings
MapGenPresetPollutionSettings — The pollution settings, the values are for 60 ticks (1 second).
MapGenSettings
MapGenSize — A floating point number specifying an amount.
MapLocation
MapPosition — Coordinates of a tile in a map. Positive x goes towards east, positive y goes towards south, and x is the first dimension in the array format.
MapTick — math.huge represents the maximum possible tick.
MaterialAmountType
MaterialTextureParameters — Used by TilePrototype.
MathExpression — A string that represents a math expression. The expression parser recognizes four basic token types (with their regex):
MaxFailedAttemptsPerTickPerConstructionQueueModifier
MaximumFollowingRobotsCountModifier
MaxSuccessfulAttemptsPerTickPerConstructionQueueModifier
MinableProperties — The mining properties of objects. For formulas for the mining time, see mining.
MineEntityTechnologyTrigger
MineItemByRobotTipTrigger
MinimapStyleSpecification
MiningDrillGraphicsSet — Used by MiningDrillPrototype.
MiningDrillProductivityBonusModifier
MiningWithFluidModifier
Mirroring
Modifier — The effect that is applied when a TechnologyPrototype is researched.
Mods — A dictionary of mod names to mod versions of all active mods. It can be used to adjust mod functionality based on the presence of other mods.
ModSetting — The user-set value of a startup mod setting.
ModuleCategoryID — The name of a ModuleCategory.
ModuleTint
ModuleTransferTipTrigger
MouseCursorID — The name of a MouseCursor.
NeighbourConnectable — Defines how this entity connects to its neighbours
NeighbourConnectableConnectionCategory
NeighbourConnectableConnectionDefinition — In order for 2 NeighbourConnectable to connect they need to share a connection point at the same position with opposite direction and both accept neighbor's category.
NestedTriggerEffectItem
NoiseExpression — A boolean or double as simple values or a string that represents a math expression. The expression parser recognizes five basic token types (with their regex):
NoiseFunction — The advantage of noise functions over noise expressions is that they have parameters.
NothingModifier — Modifier that does nothing. Can be used to show custom scripted effects in the technology GUI.
number — Any kind of integer or floating point number.
OffshorePumpGraphicsSet
Order — The order property is a simple string. When the game needs to sort prototypes (of the same type), it looks at their order properties and sorts those alphabetically. A prototype with an order string of "a" will be listed before other prototypes with order string "b" or "c". The "-" or "[]" structures that can be found in vanilla order strings do *not* have any special meaning.
OrientedCliffPrototype
OrientedCliffPrototypeSet
OrTipTrigger
OtherColors
ParticleID — The name of a ParticlePrototype.
PasteEntitySettingsTipTrigger
PathFinderSettings
PerceivedPerformance — Not all prototypes that use this type are affected by all properties.
PersistentWorldAmbientSoundDefinition
PersistentWorldAmbientSoundsDefinition
PersistentWorldAmbientSoundsDefinitionCrossfade
PipeConnectionDefinition
PipeConnectionType
PipePictures
PlaceAsTile
PlaceEquipmentTipTrigger
PlanetPrototypeMapGenSettings
PlanTrainPathTipTrigger
PlayerColorData
PlayerInputMethodFilter
PlayFor — Defines when controller vibrations should be played.
PlaySoundTriggerEffectItem
PlumeEffect
PlumesSpecification
PodAnimationProcessionBezierControlPoint — One frame in time for a Bezier interpolation.
PodAnimationProcessionLayer
PodDistanceTraveledProcessionBezierControlPoint — One frame in time for a Bezier interpolation.
PodDistanceTraveledProcessionLayer
PodMovementProcessionBezierControlPoint — One frame in time for a Bezier interpolation.
PodMovementProcessionLayer
PodOpacityProcessionBezierControlPoint — One frame in time for a Bezier interpolation.
PodOpacityProcessionLayer
PollutionSettings — The pollution settings, the values are for 60 ticks (1 second).
ProbabilityTable — Probabilities of all items must add up to 100.
ProbabilityTableItem — The first number is the value.
ProcessionAudio
ProcessionAudioCatalogue — Allows a prototype to load variable amount of sounds which may be referenced by index.
ProcessionAudioCatalogueItem
ProcessionAudioEvent — Controls sounds during procession.
ProcessionAudioEventType — Type of ProcessionAudioEvent.
ProcessionAudioType — Types of ProcessionAudio.
ProcessionAudioUsage — Who will hear ProcessionAudioEvent.
ProcessionGraphic
ProcessionGraphicCatalogue — Allows a prototype to load variable amount of sprites which may be referenced by index.
ProcessionGraphicCatalogueItem — Either animation or sprite must be provided.
ProcessionGraphicType — Types of ProcessionGraphic.
ProcessionID — The name of a ProcessionPrototype.
ProcessionLayer — Describes one aspect of a procession. Animation and picture are interchangeable for types that require it.
ProcessionLayerInheritanceGroupID — The name of an ProcessionLayerInheritanceGroup.
ProcessionSet — Lists arrivals and departures available for travel to a given surface.
ProcessionTimeline — A wrapper for a collection of ProcessionLayers.
ProductionHealthEffect
ProductionType — Specifies how the entity will utilize this fluidbox. input-output should only be used for boilers in fluid heating mode.
ProductPrototype
ProgrammableSpeakerInstrument
ProgrammableSpeakerNote
ProgressBarStyleSpecification
ProjectileAttackParameters
ProjectileTriggerDelivery
PrototypeStrafeSettings — Used by UnitPrototype.
PuddleTileEffectParameters
PumpConnectorGraphics — A mapping of arrays of PumpConnectorGraphicsAnimations to all 4 directions of the pump connection (to a fluid wagon).
PumpConnectorGraphicsAnimation
PushBackTriggerEffectItem — The push back effect used by the discharge defense.
QualityID — The name of a QualityPrototype.
RadioButtonStyleSpecification
RadiusVisualisationSpecification — Sprite to be shown around the entity when it is selected/held in the cursor.
RailFenceDirectionSet
RailFenceGraphicsSet — Used for graphics by RailPrototype.
RailFencePictureSet
RailPictureSet
RailPieceLayers — Used for graphics by RailPrototype and RailRemnantsPrototype.
RailPlannerAllowElevatedRailsModifier
RailRenderLayers
RailsFogMaskDefinitions
RailSignalColorToFrameIndex
RailSignalLightDefinition
RailSignalLights
RailSignalPictureSet
RailSignalStaticSpriteLayer
RailsSliceOffsets
RailSupportGraphicsSet
RailSupportOnDeepOilOceanModifier
RandomRange — Define a numerical property in terms of minimum and maximum to be used as a randomly chosen value in that range (inclusively).
RangedValue
RangeMode
RealOrientation — The smooth orientation. It is a float in the range [0, 1) that covers a full circle, starting at the top and going clockwise.
RecipeCategoryID — The name of a RecipeCategory.
RecipeID — The name of a RecipePrototype.
RecipeTints — If no tint is specified, the machine falls back to WorkingVisualisations::default_recipe_tint.
RenderLayer — The render layer specifies the order of the sprite when rendering, most of the objects have it hardcoded in the source, but some are configurable. The union contains valid values from lowest to highest.
ResearchIngredient — Defines the amount of an item required to research one unit of a technology. The first member of the tuple is the name of a ToolPrototype and the second is the amount. Amount must not be 0.
ResearchTechnologyTipTrigger
ResearchWithSciencePackTipTrigger
Resistance — Resistances to certain types of attacks from enemy, and physical damage. See Damage.
ResourceCategoryID — The name of a ResourceCategory.
RichTextSetting
RollingStockRotatedSlopedGraphics
RotatedAnimation
RotatedAnimation8Way — A map of rotated animations for all 8 directions of the entity. If this is loaded as a single RotatedAnimation, it applies to all directions.
RotatedAnimationVariations
RotatedSprite — Specifies series of sprites used to visualize different rotations of the object.
RotatedSpriteFrame — Specifies frame-specific properties of an individual sprite within a RotatedSprite set. Some properties are absolute values, and some are relative and inherited from the parent RotatedSprite prototype definition.
RotateEntityTipTrigger
ScriptedTechnologyTrigger — Triggered only by calling LuaForce::script_trigger_research. Can be used to show custom scripted triggers in the technology GUI.
ScriptTriggerEffectItem
ScrollBarStyleSpecification
ScrollPaneStyleSpecification
SegmentEngineSpecification — Used by SegmentedUnitPrototype to define and manage the segments that make up the body of the entity.
SegmentSpecification — A container for a single reference to a SegmentPrototype within a SegmentEngineSpecification.
SelectionModeData
SelectionModeFlags — An array containing the following values.
SemiPersistentWorldAmbientSoundDefinition
SendItemToOrbitTechnologyTrigger
SendSpidertronTipTrigger
SendToOrbitMode
SequenceTipTrigger
SetFilterTipTrigger
SetLogisticRequestTipTrigger
SetRecipeTipTrigger
SetTileTriggerEffectItem
Settings — A struct that provides access to the user-set values of startup mod settings. It is accessible through the global object named settings.
ShiftAnimationWaypoints
ShootTipTrigger
ShowExplosionOnChartTriggerEffectItem
SignalColorMapping
SignalIDConnector
SimpleBoundingBox — An axis aligned bounding box.
SimpleModifier
SimulationDefinition — Used by tips and tricks and main menu simulations. Simulations can be controlled at runtime via LuaSimulation.
SingleGraphicLayerProcessionBezierControlPoint — One frame in time for a Bezier interpolation.
SingleGraphicProcessionLayer
SliderStyleSpecification
SmokeSource — Definition of the smoke of an entity.
Sound
SoundAccent
SoundDefinition
SoundModifier
SoundModifierType
SoundType — This defines which slider in the sound settings affects the volume of this sound. Furthermore, some sound types are mixed differently than others, e.g. zoom level effects are applied.
SpaceConnectionAsteroidSpawnDefinition
SpaceConnectionAsteroidSpawnPoint
SpaceConnectionID — The name of a SpaceConnectionPrototype.
SpaceDustEffectProperties
SpaceLocationAsteroidSpawnDefinition
SpaceLocationID — The name of a SpaceLocationPrototype.
SpacePlatformsModifier
SpacePlatformTileDefinition
SpaceTileEffectParameters — Nebulae are rendered only behind tiles with the effect, but stars are rendered behind entire terrain. For that reason using two or more tile types with different space effect on one surface is not supported. The game will allow this to happen, but rendering will chose one star configuration for entire screen.
SpacingItem
SpawnPoint — The definition of a evolution and probability weights for a spawnable unit for a EnemySpawnerPrototype.
SpeechBubbleStyleSpecification
SpiderEngineSpecification — Used by SpiderVehiclePrototype.
SpiderLegGraphicsSet
SpiderLegPart
SpiderLegSpecification — Used by SpiderEngineSpecification for SpiderVehiclePrototype.
SpiderLegTriggerEffect
SpiderTorsoGraphicsSet
SpiderVehicleGraphicsSet — Used to specify the graphics for SpiderVehiclePrototype.
SpoilToTriggerResult
Sprite — Specifies one picture that can be used in the game.
Sprite16Way — A map of sprites for all 16 directions of the entity.
Sprite4Way — Sprites for the 4 major directions of the entity. If this is loaded as a single Sprite, it applies to all directions.
SpriteFlags — An array containing the following values.
SpriteNWaySheet
SpriteParameters
SpritePriority — This sets the "caching priority" of a sprite, so deciding priority of it being included in VRAM instead of streaming it and is therefore a purely technical value. See here and here. The possible values are listed below.
SpriteSheet
SpriteSizeType
SpriteSource
SpriteUsageHint — Provides hint to sprite atlas system, so it can pack sprites that are related to each other to the same sprite atlas.
SpriteUsageSurfaceHint — Provides hint to sprite atlas system, so it can try to put sprites that are intended to be used at the same locations to the same sprite atlas.
SpriteVariations
StackTransferTipTrigger
StatelessVisualisation
StateSteeringSettings
StatusColors
SteeringSettings
StorageTankPictures
StreamAttackParameters
StreamFluidProperties
StreamTriggerDelivery
StretchRule — Sets whether a GUI element can be stretched or squashed.
string — Strings are enclosed in double-quotes.
Stripe — Used as an alternative way to specify animations.
StyleSpecification — Loaded as one of the BaseStyleSpecification extensions, based on the value of the type key.
StyleWithClickableGraphicalSetSpecification
SurfaceCondition — Requires Space Age to use.
SurfaceID — The name of a SurfacePrototype.
SurfacePropertyID — The name of a SurfacePropertyPrototype.
SurfaceRenderParameters
SwitchStyleSpecification
TabbedPaneStyleSpecification
table — A simple Lua table. An array is a table that uses continuous integer keys starting at 1, while a dictionary can use numeric or string keys in any order or combination.
TableStyleSpecification
TabStyleSpecification
TechnologyID — The name of a TechnologyPrototype.
TechnologySlotStyleSpecification
TechnologyTrigger — Loaded as one of the technology triggers, based on the value of the type key.
TechnologyUnit — Either count or count_formula must be defined, never both.
TerritorySettings
TextBoxStyleSpecification
ThrowCapsuleAction
ThrusterGraphicsSet
ThrusterPerformancePoint
TileAndAlpha
TileBasedParticleTints — Used for particles created with apply_tile_tint defined.
TileBuildabilityRule — Defines restrictions on what tiles an entity can or must be built on.
TileBuildSound
TileEffectDefinitionID — The name of an TileEffectDefinition.
TileID — The name of a TilePrototype.
TileIDRestriction — Name of an allowed tile, or a list of two tile names for entities allowed on transitions.
TileLightPictures
TileMainPictures
TilePosition — Coordinates of a tile on a map where each integer x/y represents a different tile. This uses the same format as MapPosition, except it rounds any non-integer x/y down to whole numbers. It can be specified either with or without explicit keys.
TileRenderLayer
TileSpriteLayout
TileSpriteLayoutVariant
TileTransitions — Used for TilePrototype graphics.
TileTransitionsBetweenTransitions
TileTransitionSpritesheetLayout — The properties from the parent TileSpriteLayoutVariant provide defaults for the TileTransitionVariantLayouts.
TileTransitionsToTiles
TileTransitionsVariants
TileTransitionVariantLayout — The properties from the parent TileSpriteLayoutVariant provide defaults for the properties defined here.
TimeElapsedTipTrigger
TimeSinceLastTipActivationTipTrigger
TintProcessionBezierControlPoint — One frame in time for a Bezier interpolation.
TintProcessionLayer — Fullscreen overlay which blends gradient from top to bottom edge of the screen using pre-multiplied alpha blending.
TipStatus — This is used by TipsAndTricksItem for the initial starting status. One of the following values:
TipTrigger — Loaded as one of the tip triggers, based on the value of the type key.
ToggleRailLayerTipTrigger
ToggleShowEntityInfoTipTrigger
TrainBrakingForceBonusModifier
TrainPathFinderConstants
TrainStopDrawingBoxes
TrainStopLight
TrainVisualizationConstants
TransitionApplication
TransportBeltAnimationSet
TransportBeltAnimationSetWithCorners
TransportBeltConnectorFrame — Used to define the graphics for the (in vanilla) yellow frame that is used when a TransportBeltPrototype is connected to the circuit network.
TreeVariation — Tree has number of "dying" stages, which is deduced from frame count of shadow if shadow is defined, otherwise from frame count of trunk. Frame count of leaves has to be one less than deduced number stages, as last stage is always assumed to be leafless.
Trigger — Loaded as one of the TriggerItem extensions, based on the value of the type key.
TriggerDelivery — Loaded as one of the TriggerDeliveryItem extensions, based on the value of the type key.
TriggerDeliveryItem — The abstract base of all TriggerDeliveries.
TriggerEffect — Loaded as one of the TriggerEffectItem extensions, based on the value of the type key.
TriggerEffectItem — The abstract base of all TriggerEffects.
TriggerEffectWithCooldown — A TriggerEffect with cooldown conditions, used to limit the frequency of trigger effects that would otherwise fire every single tick. If multiple cooldown conditions are defined, then all cooldowns must be satisfied before the effect can be triggered.
TriggerItem — The abstract base of all Triggers.
TriggerTargetMask — An array of names of TriggerTargetType. See Design discussion: Trigger target type and Blacklist for prototypes turrets shouldn't attack.
TrivialSmokeID — The name of a TrivialSmokePrototype.
TurretAttackModifier
TurretBaseVisualisation
TurretGraphicsSet
TurretSpecialEffect
TurretSpecialEffectCenter — If this is loaded as a single Vector, it is used for all directions.
TurretState
uint16 — 16 bit unsigned integer. Ranges from 0 to 65 535, or [0, 2^16-1].
uint32 — 32 bit unsigned integer. Ranges from 0 to 4 294 967 295, or [0, 2^32-1].
uint64 — 64 bit unsigned integer. Ranges from 0 to 18 446 744 073 709 551 615, or [0, 2^64-1].
uint8 — 8 bit unsigned integer. Ranges from 0 to 255, or [0, 2^8-1].
UndergroundBeltStructure
UnitAISettings — Used by UnitPrototype and SpiderUnitPrototype.
UnitAlternativeFrameSequence
UnitGroupSettings
UnitSpawnDefinition — It can be specified as a table with named or numbered keys, but not a mix of both. If this is specified as a table with numbered keys then the first value is the unit and the second is the spawn points.
UnlockQualityModifier
UnlockRecipeModifier
UnlockRecipeTipTrigger
UnlockSpaceLocationModifier
UseConfirmTipTrigger
UseOnSelfCapsuleAction
UsePipetteTipTrigger
UseRailPlannerTipTrigger
ValveMode — Defines the mode of operation for a ValvePrototype.
VariableAmbientSoundCompositionMode — Defines how are individual samples selected and played after each other.
VariableAmbientSoundLayer
VariableAmbientSoundLayerSample — First property is the name of a layer.
VariableAmbientSoundLayerStateProperties
VariableAmbientSoundNextStateConditions
VariableAmbientSoundNextStateItem
VariableAmbientSoundNextStateTrigger — Defines how a transition to next state is triggered.
VariableAmbientSoundState
VariableAmbientSoundStateType
VariableAmbientSoundVariableSound
Vector — A vector is a two-element array or dictionary containing the x and y components. Positive x goes east, positive y goes south.
Vector3D — If this is specified as a three-element array then the array items are x, y and z, in that order.
Vector4f
VectorRotation
VehicleLogisticsModifier
VerticalAlign
VerticalFlowStyleSpecification
VerticalScrollBarStyleSpecification
VirtualSignalID — The name of a VirtualSignalPrototype.
VisualState
VoidEnergySource — Void energy sources provide unlimited free energy.
WallPictures
WaterReflectionDefinition — Entity water reflection. Currently only renders for EntityWithHealthPrototype.
WaterTileEffectParameters
Weight — Weight of an object. The weight is stored as a fixed-size 64 bit integer, with 16 bits reserved for decimal precision, meaning the smallest value step is 1/2^16.
WireConnectionPoint — Definition of a point where circuit network wires can be connected to an entity.
WirePosition — Used by WireConnectionPoint.
WorkerRobotBatteryModifier
WorkerRobotSpeedModifier
WorkerRobotStorageModifier
WorkingSound — This type is used to produce sound from in-game entities when they are working/idle.
WorkingVisualisation — Used by crafting machines to display different graphics when the machine is running.
WorkingVisualisations
WorldAmbientSoundDefinition