Runtime Classes
LuaAccumulatorControlBehavior — Control behavior for accumulators.
LuaAchievementPrototype — Prototype of a achievement.
LuaActiveTriggerPrototype — Prototype of an Active Trigger.
LuaAgriculturalTowerControlBehavior — Control behavior for agricultural tower
LuaAirbornePollutantPrototype — Airborne pollutant prototype.
LuaAISettings — Collection of settings for overriding default ai behavior.
LuaAmmoCategoryPrototype — Prototype of a ammo category.
LuaArithmeticCombinatorControlBehavior — Control behavior for arithmetic combinators.
LuaArtilleryTurretControlBehavior — Control behavior for artillery turrets.
LuaAssemblingMachineControlBehavior — Control behavior for assembling machines.
LuaAsteroidChunkPrototype — Prototype of an asteroid chunk.
LuaAsteroidCollectorControlBehavior — Control behavior for asteroid collectors.
LuaAutoplaceControlPrototype — Prototype of an autoplace control.
LuaBootstrap — Entry point for registering event handlers. It is accessible through the global object named script.
LuaBurner — A reference to the burner energy source owned by a specific LuaEntity or LuaEquipment.
LuaBurnerPrototype — Prototype of a burner energy source.
LuaBurnerUsagePrototype — Description of burner usage.
LuaCargoHatch — A cargo hatch.
LuaCargoLandingPadControlBehavior — Control behavior for cargo landing pad.
LuaChunkIterator — A chunk iterator can be used for iterating chunks coordinates of a surface.
LuaCircuitNetwork — A circuit network associated with a given entity, connector, and wire type.
LuaCollisionLayerPrototype — Prototype of a collision layer.
LuaCombinatorControlBehavior
LuaCommandable — AI object which can be ordered commands. This can represent a UnitGroup (a set of multiple commandables) or can be a single Unit or SpiderUnit.
LuaCommandProcessor — Allows for the registration of custom console commands through the global object named commands. Similarly to event subscriptions, these don't persist through a save-and-load cycle.
LuaConstantCombinatorControlBehavior — Control behavior for constant combinators.
LuaContainerControlBehavior — Control behavior for container entities.
LuaControl — This is an abstract base class containing the common functionality between LuaPlayer and entities (see LuaEntity). When accessing player-related functions through a LuaEntity, it must refer to a character entity.
LuaControlBehavior — The control behavior for an entity. Inserters have logistic network and circuit network behavior logic, lamps have circuit logic and so on. This is an abstract base class that concrete control behaviors inherit.
LuaCustomChartTag — A custom tag that shows on the map view.
LuaCustomEventPrototype — Prototype of a custom event.
LuaCustomInputPrototype — Prototype of a custom input.
LuaCustomTable — Lazily evaluated table. For performance reasons, we sometimes return a custom table-like type instead of a native Lua table. This custom type lazily constructs the necessary Lua wrappers of the corresponding C++ objects, therefore preventing their unnecessary construction in some cases.
LuaDamagePrototype — Prototype of a damage.
LuaDeciderCombinatorControlBehavior — Control behavior for decider combinators.
LuaDecorativePrototype — Prototype of an optimized decorative.
LuaDisplayPanelControlBehavior — Control behavior for display panels.
LuaElectricEnergySourcePrototype — Prototype of an electric energy source.
LuaEntity — The primary interface for interacting with entities through the Lua API. Entities are everything that exists on the map except for tiles (see LuaTile).
LuaEntityPrototype — Prototype of an entity.
LuaEquipment — An item in a LuaEquipmentGrid, for example a fusion reactor placed in one's power armor.
LuaEquipmentCategoryPrototype — Prototype of an equipment category.
LuaEquipmentGrid — An equipment grid is for example the inside of a power armor.
LuaEquipmentGridPrototype — Prototype of an equipment grid.
LuaEquipmentPrototype — Prototype of a modular equipment.
LuaFlowStatistics — Encapsulates statistic data for different parts of the game.
LuaFluidBox — An array of fluid boxes of an entity. Entities may contain more than one fluid box, and some can change the number of fluid boxes -- for instance, an assembling machine will change its number of fluid boxes depending on its active recipe. See Fluid.
LuaFluidBoxPrototype — A prototype of a fluidbox owned by some LuaEntityPrototype.
LuaFluidEnergySourcePrototype — Prototype of a fluid energy source.
LuaFluidPrototype — Prototype of a fluid.
LuaFontPrototype — Prototype of a font.
LuaForce — LuaForce encapsulates data local to each "force" or "faction" of the game. Default forces are player, enemy and neutral. Players and mods can create additional forces (up to 64 total).
LuaFuelCategoryPrototype — Prototype of a fuel category.
LuaFurnaceControlBehavior — Control behavior for furnaces.
LuaGameScript — Main toplevel type, provides access to most of the API though its members. An instance of LuaGameScript is available as the global object named game.
LuaGenericOnOffControlBehavior — An abstract base class for behaviors that support switching the entity on or off based on some condition.
LuaGroup — Item group or subgroup.
LuaGui — The root of the GUI. This type houses the root elements, top, left, center, goal, and screen, to which other elements can be added to be displayed on screen.
LuaGuiElement — An element of a custom GUI. This type is used to represent any kind of a GUI element - labels, buttons and frames are all instances of this type. Just like LuaEntity, different kinds of elements support different attributes; attempting to access an attribute on an element that doesn't support it (for instance, trying to access the column_count of a textfield) will result in a runtime error.
LuaHeatBufferPrototype — Prototype of a heat buffer.
LuaHeatEnergySourcePrototype — Prototype of a heat energy source.
LuaHelpers — Provides various helper and utility functions. It is accessible through the global object named helpers in all stages (settings, prototype and runtime).
LuaInserterControlBehavior — Control behavior for inserters.
LuaInventory — A storage of item stacks.
LuaItem — A reference to an item with data. In contrast to LuaItemStack, this is binding to a specific item data even if it would move between entities or inventories.
LuaItemCommon — Common methods related to usage of item with data. It is useful when LuaItemStack contains item with data or in general with LuaItem as it can only point at an item with data.
LuaItemPrototype — Prototype of an item. For example, an item prototype can be obtained from LuaPrototypes::item by its name: prototypes.item["iron-plate"].
LuaItemStack — A reference to an item and count owned by some external entity.
LuaLampControlBehavior — Control behavior for lamps.
LuaLazyLoadedValue — A lazily loaded value. For performance reasons, we sometimes return a custom lazily-loaded value type instead of the native Lua value. This custom type lazily constructs the necessary value when LuaLazyLoadedValue::get is called, therefore preventing its unnecessary construction in some cases.
LuaLoaderControlBehavior — Control behavior for loaders.
LuaLogisticCell — Logistic cell of a particular LuaEntity. A "Logistic Cell" is the given name for settings and properties used by what would normally be seen as a "Roboport". A logistic cell however doesn't have to be attached to the roboport entity (the character has one for the personal roboport).
LuaLogisticContainerControlBehavior — Control behavior for logistic chests.
LuaLogisticNetwork — A single logistic network of a given force on a given surface.
LuaLogisticPoint — Logistic point of a particular LuaEntity. A "Logistic point" is the name given for settings and properties used by requester, provider, and storage points in a given logistic network. These "points" don't have to be a logistic container but often are. One other entity that can own several points is the "character" character type entity.
LuaLogisticSection — Logistic section of a particular LuaLogisticPoint or LuaConstantCombinatorControlBehavior.
LuaLogisticSections — Logistic sections of an entity.
LuaMiningDrillControlBehavior — Control behavior for mining drills.
LuaModData — Arbitrary data provided by mods.
LuaModSettingPrototype — Prototype of a mod setting.
LuaModuleCategoryPrototype — Prototype of a module category.
LuaNamedNoiseExpression — Prototype of a named noise expression.
LuaNamedNoiseFunction — Prototype of a named noise function.
LuaParticlePrototype — Prototype of an optimized particle.
LuaPermissionGroup — A permission group that defines what players in this group are allowed to do.
LuaPermissionGroups — All permission groups.
LuaPlanet — The runtime values of a planet
LuaPlayer — A player in the game. Pay attention that a player may or may not have a character, which is the LuaEntity of the little guy running around the world doing things.
LuaProcessionLayerInheritanceGroupPrototype — Prototype of a procession inheritance group which synchronizes offsets between procession steps.
LuaProcessionPrototype — Prototype of a procession.
LuaProfiler — An object used to measure script performance.
LuaProgrammableSpeakerControlBehavior — Control behavior for programmable speakers.
LuaPrototypeBase — Base for all prototype classes.
LuaPrototypes — Provides read-only access to prototypes. It is accessible through the global object named prototypes.
LuaProxyContainerControlBehavior — Control behavior for proxy container.
LuaPumpControlBehavior — Control behavior for pumps.
LuaQualityPrototype — Prototype of a quality.
LuaRadarControlBehavior — Control behavior for radars
LuaRailEnd — Utility object that binds to a rail entity and rail_direction to allow easier traversal over rails
LuaRailPath — A rail path.
LuaRailSignalBaseControlBehavior — Control behavior for rail signals and rail chain signals.
LuaRandomGenerator — A deterministic random generator independent from the core games random generator that can be seeded and re-seeded at will. This random generator can be saved and loaded and will maintain its state.
LuaRCON — An interface to send messages to the calling RCON interface through the global object named rcon.
LuaReactorControlBehavior — Control behavior for Reactor
LuaRecipe — A crafting recipe. Recipes belong to forces (see LuaForce) because some recipes are unlocked by research, and researches are per-force.
LuaRecipeCategoryPrototype — Prototype of a recipe category.
LuaRecipePrototype — A crafting recipe prototype.
LuaRecord — A reference to a record in the blueprint library. Records in the "my blueprints" shelf are read-only, but records in the "game blueprints" shelf are read/write.
LuaRemote — Registry of interfaces between scripts. An interface is simply a dictionary mapping names to functions. A script or mod can then register an interface with LuaRemote, after that any script can call the registered functions, provided it knows the interface name and the desired function name. An instance of LuaRemote is available through the global object named remote.
LuaRendering — Allows rendering of geometric shapes, text and sprites in the game world through the global object named rendering. Each render object is identified by an id that is universally unique for the lifetime of a whole game.
LuaRenderObject — Reference to a single LuaRendering object.
LuaResourceCategoryPrototype — Prototype of a resource category.
LuaRoboportControlBehavior — Control behavior for roboports.
LuaRocketSiloControlBehavior — Control behavior for rocket silos.
LuaSchedule — The schedule of a particular LuaTrain or LuaSpacePlatform.
LuaSegment — An individual segment of a LuaSegmentedUnit. If the segment exists in a generated chunk, you can access the entity representation using LuaSegment::entity.
LuaSegmentedUnit — A surface-level object composed of one SegmentedUnitPrototype followed by up to 63 SegmentPrototypes.
LuaSelectorCombinatorControlBehavior — Control behavior for selector combinators.
LuaSettings — Object containing the three different types of mod settings: startup settings, global runtime settings and per-player runtime settings. An instance of LuaSettings is available through the global object named settings.
LuaShortcutPrototype — Prototype of a shortcut.
LuaSimulation — Functions for use during simulations. This object cannot be saved, and cannot be used outside of a simulation.
LuaSpaceConnectionPrototype — Prototype of a space connection.
LuaSpaceLocationPrototype — Prototype of a space location, such as a planet.
LuaSpacePlatform — A space platform.
LuaSpacePlatformHubControlBehavior — Control behavior for space platform hubs
LuaSplitterControlBehavior — Control behavior for splitter.
LuaStorageTankControlBehavior — Control behavior for storage tanks.
LuaStyle — Style of a GUI element. All of the attributes listed here may be nil if not available for a particular GUI element.
LuaSurface — A "domain" of the world. Surfaces can only be created and deleted through the API. Surfaces are uniquely identified by their name. Every game contains at least the surface "nauvis".
LuaSurfacePropertyPrototype — Prototype of a surface property.
LuaSurfacePrototype — Prototype of a surface.
LuaTechnology — One research item.
LuaTechnologyPrototype — A Technology prototype.
LuaTerritory — A set of chunks on a single LuaSurface that can be guarded by one or more LuaSegmentedUnits.
LuaTile — A single "square" on the map.
LuaTilePrototype — Prototype of a tile.
LuaTrain — A train. Trains are a sequence of connected rolling stocks -- locomotives and wagons.
LuaTrainManager — The train manager manages all the train in the game. LuaTrainManager allows to perform some direct queries to the train manager.
LuaTrainStopControlBehavior — Control behavior for train stops.
LuaTransportBeltControlBehavior — Control behavior for transport belts.
LuaTransportLine — One line on a transport belt.
LuaTrivialSmokePrototype — Prototype of a trivial smoke.
LuaTurretControlBehavior — Control behavior for turrets.
LuaUndoRedoStack — The undo queue for a player. The term item_index refers to the index of an undo item in the queue, while action_index refers to the index of one of the individual actions that make up an undo item.
LuaVirtualSignalPrototype — Prototype of a virtual signal.
LuaVoidEnergySourcePrototype — Prototype of a void energy source.
LuaWallControlBehavior — Control behavior for walls.
LuaWireConnector — A wire connector of a given entity. Allows to find wires, add or remove wires and do some basic operations specific to those connectors.