index / api / engine / system

Module api.engine.system🔗

Contains definitions for of api.engine.system

global record System animalMoveSystem: AnimalMoveSystem aircraftMoveSystem: AircraftMoveSystem baseParallelStripSystem: BaseParallelStripSystem carriageListSystem: CarriageListSystem catchmentAreaSystem: CatchmentAreaSystem emissionGridSystem: EmissionGridSystem gameScriptSystem: GameScriptSystem landVehicleMoveSystem: LandVehicleMoveSystem landmarkSystem: LandmarkSystem lineSystem: LineSystem octreeSystem: OctreeSystem parcelSystem: ParcelSystem railRoadCrossingSystem: RailRoadCrossingSystem riverSystem: RiverSystem runwaySystem: RunwaySystem shipMoveSystem: ShipMoveSystem signalSystem: SignalSystem simCargoSystem: SimCargoSystem simPersonSystem: SimPersonSystem simPersonAtBuildingSystem: SimPersonAtBuildingSystem simPersonAtTerminalSystem: SimPersonAtTerminalSystem simPersonAtVehicleSystem: SimPersonAtVehicleSystem simEntityAtStockSystem: SimEntityAtStockSystem simEntityAtTerminalSystem: SimEntityAtTerminalSystem simEntityAtVehicleSystem: SimEntityAtVehicleSystem stationSystem: StationSystem stationGroupSystem: StationGroupSystem stockListSystem: StockListSystem streetSystem: StreetSystem streetConnectorSystem: StreetConnectorSystem townBuildingSystem: TownBuildingSystem tpNetLinkSystem: TpNetLinkSystem transportNetworkSystem: TransportNetworkSystem transportVehicleSystem: TransportVehicleSystem vehicleDepotSystem: VehicleDepotSystem gridCollision: GridCollision end
global record AircraftMoveSystem getAirCraftInfo: function(vehicleEntity : Engine.Entity): AircraftInfo isReserved: function(edgeId : EdgeId): boolean forEach: function(Engine.Entity) end
global record AnimalMoveSystem forEach: function(Engine.Entity) end
global record BaseParallelStripSystem getStrips: function(edgeEntity : Engine.Entity): {Engine.Entity} end
global record CarriageListSystem
record CarriageInfo owningVehicle: Engine.Entity index: integer offset: number reversed: boolean crew: boolean end
getVehicleInfo: function(vehicleEntity : Engine.Entity): CarriageInfo getVehicleData: function(vehicleEntity : Engine.Entity): VehicleData forEach: function(Engine.Entity) end
global record CatchmentAreaSystem getEdge2stationsMap: function(): {EdgeId : {{Engine.Entity, integer}}} getStation2edgesMap: function(): {Engine.Entity : {{EdgeId, integer}}} getStation2stationsAndDistancesMap: function(): {Engine.Entity : {Engine.Entity : integer}} getStationCatchables: function(stationEntity : Engine.Entity, cargo : boolean): {Engine.Entity} end
global record EmissionGridSystem getInterpolatedEmission: function(pos : Vec2f, useAverage : boolean, type : Engine.Component.EmissionGrid.Type): number getEmissionGridEntity: function(noise : boolean): Engine.Entity end
global record GameScriptSystem getEntityForGameScript: function(name : string): Engine.Entity end
global record GridCollision getGridCollisionSystem: function(index : integer): GridCollisionSystem getPlayerInfrastructureCollisionSystem: function(): GridCollisionSystem end
global record GridCollisionSystem getCollisionDataAt: function(GridCollisionSystem, Vec2f): number end
global interface ISystem forEach: function(Engine.Entity) end
global record LandVehicleMoveSystem getBlockedTrains: function(): {{Engine.Entity, Engine.Entity}} getVehicleInfo: function(vehicleEntity : Engine.Entity): LandVehicleMoveInfo isTrainWaitingForFreePath: function(trainEntity : Engine.Entity): boolean forEach: function(Engine.Entity) end
global record LandmarkSystem getLandmarkData: function(landmarkEntity : Engine.Entity): {EdgeId : number} end
global record LineSystem getLines: function(): {Engine.Entity} getLinesForPlayer: function(playerEntity : Engine.Entity): {Engine.Entity} getLinesForWaypoint: function(waypointEntity : Engine.Entity): {Engine.Entity} getLinesForWaypointLane: function(waypointEntity : Engine.Entity, signalIndex : integer): {{Engine.Entity, integer, integer}} getLineStops: function(stationGroupEntity : Engine.Entity): {{Engine.Entity, integer}} getLineStopsForStation: function(stationEntity : Engine.Entity): {{Engine.Entity, integer}} getLineStopsForTerminal: function(stationEntity : Engine.Entity, terminal : integer): {{Engine.Entity, integer}} getLinesForStationGroup: function(stationGroup : Engine.Entity): {Engine.Entity} getProblemLines: function(playerEntity : Engine.Entity): {{Engine.Entity, LineProblem}} getStationGroup2LineStopsMap: function(): {Engine.Entity : {{Engine.Entity, integer}}} getTerminal2lineStops: function(): {{Engine.Entity, integer} : {{Engine.Entity, integer}}} getBestLineAssignment: function(lineEntity : Engine.Entity, lineData : Engine.Component.Line, allowTerminalChanges : boolean): {StationTerminal} end
global record OctreeSystem findIntersectingEntities: function(box : Box3f, callback : function(Engine.Entity, Engine.Component.BoundingVolume)) end
global record ParcelSystem getParcelData: function(segmentEntity : Engine.Entity): any getSegment2ParcelData: function(): {Engine.Entity : <any type>} end
global record RailRoadCrossingSystem getRailroadCrossingForEdge: function(edgeEntity : Engine.Entity): Engine.Entity getRailroadCrossingForNode: function(nodeEntity : Engine.Entity): Engine.Entity end
global record RiverSystem getWaterMeshEntities: function(Vec2i, Vec2i): {Engine.Entity} end
global record RunwaySystem getLandingNodeIdMap: function(): {NodeId : Engine.Entity} getTakeoffNodeIdMap: function(): {NodeId : Engine.Entity} end
global record ShipMoveSystem getShipInfo: function(vehicleEntity : Engine.Entity): ShipInfo forEach: function(Engine.Entity) end
global record SignalSystem getSignal: function(edgeId : EdgeId, reversed : boolean): SignalId end
global record SimCargoSystemend
global record SimEntityAtStockSystem getStock2SimEntityMap: function(): {{Engine.Entity, StockId} : {Engine.Entity}} getStockCount: function(stockEntity : Engine.Entity, stockId : StockId): integer getStockCountForCargoType: function(stockEntity : Engine.Entity, stockId : StockId, cargoTypeId : CargoTypeId): integer getStockEntities: function(stockEntity : Engine.Entity, stockId : StockId): {{integer, Engine.Entity}} getStockSimEntity: function(stockEntity : Engine.Entity, stockId : StockId): Engine.Entity end
global record SimEntityAtTerminalSystem getLineStopSimEntitiesCount: function(entity : Engine.Entity, stopIndex : integer, cargoType : CargoTypeId): integer getLineStopSimEntities: function(entity : Engine.Entity, stopIndex : integer, cargoType : CargoTypeId): {Engine.Entity} end
global record SimEntityAtVehicleSystem getVehicle2Cargo2SimEntitesMap: function(): {Engine.Entity : {CargoTypeId : {Engine.Entity}}} getVehicleSimEntitiesCount: function(vehicleEntity : Engine.Entity): integer getVehicleSimEntitiesCountForCargoType: function(vehicleEntity : Engine.Entity, cargoType : CargoTypeId): integer getVehiclesWithRoundTripCount: function(): {Engine.Entity : integer} end
global record SimPersonAtBuildingSystem getSimPersonAtBuilding: function(simBuildingEntity : Engine.Entity): {Engine.Entity} end
global record SimPersonAtTerminalSystem getEdgeInfoMap: function(): {EdgeId : <any type>} getNumFreePlaces: function(edgeId : EdgeId): integer getPos01: function(edgeId : EdgeId, place : integer): {number, number} end
global record SimPersonAtVehicleSystem getVehiclePartInfoList: function(vehicleEntity : Engine.Entity): {VehiclePartInfo} end
global record SimPersonSystem getCount: function(): integer getDestination2SpMap: function(): {Engine.Entity : {Engine.Entity}} getSimPersonsAtTerminalForTransportNetwork: function(tnEntity : Engine.Entity): {Engine.Entity} getSimPersonsForDestination: function(destination : Engine.Entity): {Engine.Entity} getSimPersonsForLine: function(lineEntity : Engine.Entity): {Engine.Entity} getSimPersonsForTarget: function(targetEntity : Engine.Entity): {Engine.Entity} getSimPersonsIdleForTransportNetwork: function(tnEntity : Engine.Entity): {Engine.Entity} getSimPersonsMovingForTransportNetwork: function(tnEntity : Engine.Entity): {Engine.Entity} end
global record StationGroupSystem getExpiredStationGroups: function(time : integer): {Engine.Entity} getExpiryProgress: function(stationGroupEntity : Engine.Entity, time : integer): number getStationGroup: function(stationEntity : Engine.Entity): Engine.Entity getCarriers: function(stationGroup : Engine.Entity, station : integer, terminal : integer): {{Carrier}, {TransportMode}} end
global record StationSystem getPersonNodeId2StationTerminalsMap: function(): {NodeId : {{Engine.Entity, integer}}} getStation2TownMap: function(): {Engine.Entity : Engine.Entity} getStations: function(townEntity : Engine.Entity): {Engine.Entity} getStationTerminalForVehicleNode: function(nodeId : NodeId): {Engine.Entity, integer} getStationTerminalsForPersonEdge: function(nodeId : EdgeId): {{Engine.Entity, integer}} getStationTerminalsForPersonNode: function(nodeId : NodeId): {{Engine.Entity, integer}} getTown2StationsMap: function(): {Engine.Entity : {Engine.Entity}} getTown: function(stationEntity : Engine.Entity): Engine.Entity getVehicleNodeId2StationTerminalsMap: function(): {NodeId : {{Engine.Entity, integer}}} forEach: function(Engine.Entity) end
global record StockListSystemend
global record StreetConnectorSystem getConstructionEntityForDepot: function(depotEntity : Engine.Entity): Engine.Entity getConstructionEntityForEdge: function(edgeEntity : Engine.Entity): Engine.Entity getConstructionEntityForIndustry: function(industryEntity : Engine.Entity): Engine.Entity getConstructionEntityForNode: function(nodeEntity : Engine.Entity): Engine.Entity getConstructionEntityForSubconstruction: function(subconstruction : Engine.Entity): Engine.Entity getConstructionEntityForStation: function(stationEntity : Engine.Entity): Engine.Entity getConstructionEntityForTownBuilding: function(townBuilding : Engine.Entity): Engine.Entity getNode2StreetConnectorMap: function(): {Engine.Entity : Engine.Entity} getStation2ConstructionMap: function(): {Engine.Entity : Engine.Entity} forEachConstructionWithMetadata: function(metadataKey : string, constructionDescMeta : boolean, constructionInstanceMeta : boolean, fn : function(Engine.Entity, Engine.Component.Construction, ConstructionId), playerOwnedOnly : boolean) getConstructionIdIfStaticMetadata: function(constructionEntity : Engine.Entity, metadataKey : string): {ConstructionId, ResName} getConstructionClosestTown: function(constructionEntity : Engine.Entity): Engine.Entity getTownClosestConstructions: function(townEntity : Engine.Entity): {Engine.Entity} forEach: function(Engine.Entity) end
global record StreetSystem getEdgeForEdgeObject: function(edgeEntity : Engine.Entity): Engine.Entity getEdgeObject2EdgeMap: function(): {Engine.Entity : Engine.Entity} getNode2SegmentMap: function(): {Engine.Entity : {Engine.Entity}} getNode2StreetEdgeMap: function(): {Engine.Entity : {Engine.Entity}} getNode2TrackEdgeMap: function(): {Engine.Entity : {Engine.Entity}} isTownCrossingNode: function(Engine.Entity): boolean getNodeSegments: function(nodeEntity : Engine.Entity): {Engine.Entity} getNodeStreetSegments: function(nodeEntity : Engine.Entity): {Engine.Entity} getNodeTrackSegments: function(nodeEntity : Engine.Entity): {Engine.Entity} end
global record TownBuildingSystem getBuilding: function(parcelEntity : Engine.Entity): Engine.Entity getCargoSupplyAndLimit: function(townEntity : Engine.Entity, LandUseType): {CargoTypeId : {number, number, integer}} getLandUsePersonCapacities: function(townEntity : Engine.Entity): {integer} getParcel2BuildingMap: function(): {Engine.Entity : Engine.Entity} getPersonCapacity2townBuildingMap: function(): {Engine.Entity : Engine.Entity} getTown2BuildingMap: function(): {Engine.Entity : {Engine.Entity}} getTown2personCapacitiesMap: function(): {Engine.Entity : {integer}} hasBuilding: function(parcelEntity : Engine.Entity): boolean end
global record TpNetLinkSystem getEdgeId2linkEntities: function(): {EdgeId : {Engine.Entity}} getLinkEntities: function(edgeId : EdgeId): {Engine.Entity} end
global record TransportNetworkSystem getIntersections: function(tnEntity : Engine.Entity): {<any type>} getTpNetData: function(): TpNetData end
global record TransportVehicleSystem getDepotVehicles: function(depotEntity : Engine.Entity): {Engine.Entity} getGoingToDepotVehicles: function(depotEntity : Engine.Entity): {Engine.Entity} getInfo: function(transportVehicleEntity : Engine.Entity): any getLine2VehicleMap: function(): {Engine.Entity : {Engine.Entity}} getLineStopVehicles: function(lineEntity : Engine.Entity, stopIndex : number): {Engine.Entity} checkLineStopForVehicleOverlength: function(lineEntity : Engine.Entity, stopIndex : number): {StationTerminal : boolean} getLineVehicles: function(lineEntity : Engine.Entity): {Engine.Entity} getNoPathVehicles: function(): {Engine.Entity} getVehicleNames: function(carrier : Carrier): {string} getVehicles: function(tnEntities : {Engine.Entity}, wholePath : boolean): {Engine.Entity} getVehiclesWithState: function(state : TransportVehicleState): {Engine.Entity} getVehiclesForMaintenanceStation: function(maintenanceStation : Engine.Entity): {Engine.Entity} isVehicleMaintainedByStation: function(vehicle : Engine.Entity, maintenanceStation : Engine.Entity): boolean getLineCargoInfo: function(lineEntity : Engine.Entity, cargoTypeId : CargoTypeId): LineCargoInfo end
global record VehicleDepotSystem getDepotForInNodeId: function(nodeId : NodeId): Engine.Entity forEach: function(Engine.Entity) end

Category: main🔗

System🔗

global record System animalMoveSystem: AnimalMoveSystem aircraftMoveSystem: AircraftMoveSystem baseParallelStripSystem: BaseParallelStripSystem carriageListSystem: CarriageListSystem catchmentAreaSystem: CatchmentAreaSystem emissionGridSystem: EmissionGridSystem gameScriptSystem: GameScriptSystem landVehicleMoveSystem: LandVehicleMoveSystem landmarkSystem: LandmarkSystem lineSystem: LineSystem octreeSystem: OctreeSystem parcelSystem: ParcelSystem railRoadCrossingSystem: RailRoadCrossingSystem riverSystem: RiverSystem runwaySystem: RunwaySystem shipMoveSystem: ShipMoveSystem signalSystem: SignalSystem simCargoSystem: SimCargoSystem simPersonSystem: SimPersonSystem simPersonAtBuildingSystem: SimPersonAtBuildingSystem simPersonAtTerminalSystem: SimPersonAtTerminalSystem simPersonAtVehicleSystem: SimPersonAtVehicleSystem simEntityAtStockSystem: SimEntityAtStockSystem simEntityAtTerminalSystem: SimEntityAtTerminalSystem simEntityAtVehicleSystem: SimEntityAtVehicleSystem stationSystem: StationSystem stationGroupSystem: StationGroupSystem stockListSystem: StockListSystem streetSystem: StreetSystem streetConnectorSystem: StreetConnectorSystem townBuildingSystem: TownBuildingSystem tpNetLinkSystem: TpNetLinkSystem transportNetworkSystem: TransportNetworkSystem transportVehicleSystem: TransportVehicleSystem vehicleDepotSystem: VehicleDepotSystem gridCollision: GridCollision end

A system is a simulation object that controls entities with specific components or caches additional computed data
for entities after listening for component changes

System.animalMoveSystem🔗

System.animalMoveSystem: AnimalMoveSystem

Controls animal simulation and movement

System.aircraftMoveSystem🔗

System.aircraftMoveSystem: AircraftMoveSystem

Controls aircraft (helicopters and airplanes) simulation (reservation, pathing, ...) and movement

System.baseParallelStripSystem🔗

System.baseParallelStripSystem: BaseParallelStripSystem

A cache of data that is computed from parallel strip data

System.carriageListSystem🔗

System.carriageListSystem: CarriageListSystem

A cache of data for carriage lists

System.catchmentAreaSystem🔗

System.catchmentAreaSystem: CatchmentAreaSystem

System.emissionGridSystem🔗

System.emissionGridSystem: EmissionGridSystem

System.gameScriptSystem🔗

System.gameScriptSystem: GameScriptSystem

System.landVehicleMoveSystem🔗

System.landVehicleMoveSystem: LandVehicleMoveSystem

System.landmarkSystem🔗

System.landmarkSystem: LandmarkSystem

System.lineSystem🔗

System.lineSystem: LineSystem

Manages all line data

System.octreeSystem🔗

System.octreeSystem: OctreeSystem

Efficient way to collect entities in a specific region of space

System.parcelSystem🔗

System.parcelSystem: ParcelSystem

Manages parcels for towns, and provides inverse relation from segment to parcels

System.railRoadCrossingSystem🔗

System.railRoadCrossingSystem: RailRoadCrossingSystem

System.riverSystem🔗

System.riverSystem: RiverSystem

Create a vector field of waterfronts for street and construction alignment

System.runwaySystem🔗

System.runwaySystem: RunwaySystem

System.shipMoveSystem🔗

System.shipMoveSystem: ShipMoveSystem

System.signalSystem🔗

System.signalSystem: SignalSystem

System.simCargoSystem🔗

System.simCargoSystem: SimCargoSystem

System.simPersonSystem🔗

System.simPersonSystem: SimPersonSystem

System.simPersonAtBuildingSystem🔗

System.simPersonAtBuildingSystem: SimPersonAtBuildingSystem

System.simPersonAtTerminalSystem🔗

System.simPersonAtTerminalSystem: SimPersonAtTerminalSystem

System.simPersonAtVehicleSystem🔗

System.simPersonAtVehicleSystem: SimPersonAtVehicleSystem

System.simEntityAtStockSystem🔗

System.simEntityAtStockSystem: SimEntityAtStockSystem

System.simEntityAtTerminalSystem🔗

System.simEntityAtTerminalSystem: SimEntityAtTerminalSystem

System.simEntityAtVehicleSystem🔗

System.simEntityAtVehicleSystem: SimEntityAtVehicleSystem

System.stationSystem🔗

System.stationSystem: StationSystem

System.stationGroupSystem🔗

System.stationGroupSystem: StationGroupSystem

System.stockListSystem🔗

System.stockListSystem: StockListSystem

System.streetSystem🔗

System.streetSystem: StreetSystem

System.streetConnectorSystem🔗

System.streetConnectorSystem: StreetConnectorSystem

Caches relations between constructions and base edges

System.townBuildingSystem🔗

System.townBuildingSystem: TownBuildingSystem

System.tpNetLinkSystem🔗

System.tpNetLinkSystem: TpNetLinkSystem

System.transportNetworkSystem🔗

System.transportNetworkSystem: TransportNetworkSystem

System.transportVehicleSystem🔗

System.transportVehicleSystem: TransportVehicleSystem

Manages cargo loading and unloading, as well as arrival of any transport vehicle

System.vehicleDepotSystem🔗

System.vehicleDepotSystem: VehicleDepotSystem

Manages door animation of depots

System.gridCollision🔗

System.gridCollision: GridCollision

A generic system representing a 2d grid in the world of miscelaneous data

Category: globals🔗

AircraftMoveSystem🔗

global record AircraftMoveSystem getAirCraftInfo: function(vehicleEntity : Engine.Entity): AircraftInfo isReserved: function(edgeId : EdgeId): boolean forEach: function(Engine.Entity) end

Aircraft Move System.
System managing the movement of airplanes.

AircraftMoveSystem.getAirCraftInfo🔗

function AircraftMoveSystem.getAirCraftInfo(vehicleEntity : Engine.Entity): AircraftInfo

Obtains Aircraft information for the given entity.

Parameters
  • vehicleEntity :Engine.Entity — the entity id of the aircraft that should be inspected
Returns
  1. AircraftInfo

AircraftMoveSystem.isReserved🔗

function AircraftMoveSystem.isReserved(edgeId : EdgeId): boolean

Checks if a given edge is reserved by an aircraft.

Parameters
  • edgeId :EdgeId — the edgeId that should be inspected
Returns
  1. boolean — true if reserved

AircraftMoveSystem.forEach🔗

function AircraftMoveSystem.forEach(Engine.Entity)

Loops over all aircraft.

Parameters
  • Engine.Entity

AnimalMoveSystem🔗

global record AnimalMoveSystem forEach: function(Engine.Entity) end

Animal Move System.
Manages animals.

AnimalMoveSystem.forEach🔗

function AnimalMoveSystem.forEach(Engine.Entity)

Loops over all animals.

Parameters
  • Engine.Entity

BaseParallelStripSystem🔗

global record BaseParallelStripSystem getStrips: function(edgeEntity : Engine.Entity): {Engine.Entity} end

Base Parallel Strip System.
Contain information about parallel edge ranges.

BaseParallelStripSystem.getStrips🔗

function BaseParallelStripSystem.getStrips(edgeEntity : Engine.Entity): {Engine.Entity}

Obtains all parallel strips of a base edge entity (there might be more than one parallel strip for each base edge).

Parameters
  • edgeEntity :Engine.Entity — the entity of the edge that should be inspected
Returns
  1. {Engine.Entity}

CarriageListSystem🔗

global record CarriageListSystem
record CarriageInfo owningVehicle: Engine.Entity index: integer offset: number reversed: boolean crew: boolean end
getVehicleInfo: function(vehicleEntity : Engine.Entity): CarriageInfo getVehicleData: function(vehicleEntity : Engine.Entity): VehicleData forEach: function(Engine.Entity) end

Carriage list System.
Manages vehicles that are groups of multiple carriages.

CarriageListSystem.CarriageInfo🔗

record CarriageListSystem.CarriageInfo owningVehicle: Engine.Entity index: integer offset: number reversed: boolean crew: boolean end

CarriageListSystem.CarriageInfo.owningVehicle🔗

CarriageListSystem.CarriageInfo.owningVehicle: Engine.Entity

CarriageListSystem.CarriageInfo.index🔗

CarriageListSystem.CarriageInfo.index: integer

CarriageListSystem.CarriageInfo.offset🔗

CarriageListSystem.CarriageInfo.offset: number

CarriageListSystem.CarriageInfo.reversed🔗

CarriageListSystem.CarriageInfo.reversed: boolean

CarriageListSystem.CarriageInfo.crew🔗

CarriageListSystem.CarriageInfo.crew: boolean

CarriageListSystem.getVehicleInfo🔗

function CarriageListSystem.getVehicleInfo(vehicleEntity : Engine.Entity): CarriageInfo

Gets more information about a train carriage/engine.

Parameters
  • vehicleEntity :Engine.Entity — the entity of the vehicle.
Returns
  1. CarriageInfo

CarriageListSystem.getVehicleData🔗

function CarriageListSystem.getVehicleData(vehicleEntity : Engine.Entity): VehicleData

Gets more information about a train carriage/engine.

Parameters
  • vehicleEntity :Engine.Entity — the entity of the vehicle.
Returns
  1. VehicleData

CarriageListSystem.forEach🔗

function CarriageListSystem.forEach(Engine.Entity)

Loops over all carriage lists.

Parameters
  • Engine.Entity

CatchmentAreaSystem🔗

global record CatchmentAreaSystem getEdge2stationsMap: function(): {EdgeId : {{Engine.Entity, integer}}} getStation2edgesMap: function(): {Engine.Entity : {{EdgeId, integer}}} getStation2stationsAndDistancesMap: function(): {Engine.Entity : {Engine.Entity : integer}} getStationCatchables: function(stationEntity : Engine.Entity, cargo : boolean): {Engine.Entity} end

Catchment Area System.
Contains cached information about reachability of stations and destinations.

CatchmentAreaSystem.getEdge2stationsMap🔗

function CatchmentAreaSystem.getEdge2stationsMap(): {EdgeId : {{Engine.Entity, integer}}}

Obtains a map mapping transport network edges to stations that can be reached from that edge.

Returns
  1. {EdgeId : {{Engine.Entity, integer}}}

CatchmentAreaSystem.getStation2edgesMap🔗

function CatchmentAreaSystem.getStation2edgesMap(): {Engine.Entity : {{EdgeId, integer}}}

Obtains a map mapping stations to all reachable edges from that station (the actual catchment area of the station).

Returns
  1. {Engine.Entity : {{EdgeId, integer}}}

CatchmentAreaSystem.getStation2stationsAndDistancesMap🔗

function CatchmentAreaSystem.getStation2stationsAndDistancesMap(): {Engine.Entity : {Engine.Entity : integer}}

Obtains a map, mapping station to all reachable stations in the catchment area, and, additionally, the distance of the
shortest path.

Returns
  1. {Engine.Entity : {Engine.Entity : integer}}

CatchmentAreaSystem.getStationCatchables🔗

function CatchmentAreaSystem.getStationCatchables(stationEntity : Engine.Entity, cargo : boolean): {Engine.Entity}

Obtains a list of all catchables (entities holding a StockList or PersonCapacity component) for the station.

Parameters
  • stationEntity :Engine.Entity — the entity of the station
  • cargo :boolean — wether to return cargo or passenger catchables
Returns
  1. {Engine.Entity}

EmissionGridSystem🔗

global record EmissionGridSystem getInterpolatedEmission: function(pos : Vec2f, useAverage : boolean, type : Engine.Component.EmissionGrid.Type): number getEmissionGridEntity: function(noise : boolean): Engine.Entity end

Emission grid system.
Manages emission grid data.

EmissionGridSystem.getInterpolatedEmission🔗

function EmissionGridSystem.getInterpolatedEmission(pos : Vec2f, useAverage : boolean, type : Engine.Component.EmissionGrid.Type): number

Returns the interpolated emission at a given position.

Parameters
  • pos :Vec2f — the position at which the emission should be sampled
  • useAverage :boolean — whether to use average or not
  • type :Engine.Component.EmissionGrid.Type — the type of emission to query
Returns
  1. number — the interpolated emission value

EmissionGridSystem.getEmissionGridEntity🔗

function EmissionGridSystem.getEmissionGridEntity(noise : boolean): Engine.Entity

Returns the EmissionGrid entity for the noise or pollution

Parameters
  • noise :boolean — Which type of emission: noise or pollution
Returns
  1. Engine.Entity — an entity with the EmissionGrid component

GameScriptSystem🔗

global record GameScriptSystem getEntityForGameScript: function(name : string): Engine.Entity end

Game Script System
Manages entities and components for gamescript.

GameScriptSystem.getEntityForGameScript🔗

function GameScriptSystem.getEntityForGameScript(name : string): Engine.Entity

Gets the entity onto which the gamescript state is attached

Parameters
  • name :string — the name of the gamescript
Returns
  1. Engine.Entity

GridCollision🔗

global record GridCollision getGridCollisionSystem: function(index : integer): GridCollisionSystem getPlayerInfrastructureCollisionSystem: function(): GridCollisionSystem end

Contains multiple grids holding data
Contains multiple grids holding diverse data

GridCollision.getGridCollisionSystem🔗

function GridCollision.getGridCollisionSystem(index : integer): GridCollisionSystem

Gets the grid collision system with the given index.

Parameters
  • index :integer — the index of the system to get
Returns
  1. GridCollisionSystem

GridCollision.getPlayerInfrastructureCollisionSystem🔗

function GridCollision.getPlayerInfrastructureCollisionSystem(): GridCollisionSystem

Gets the grid collision system tracking player owned structures.

Returns
  1. GridCollisionSystem

GridCollisionSystem🔗

global record GridCollisionSystem getCollisionDataAt: function(GridCollisionSystem, Vec2f): number end

Grid Collision System.
Single instance of the grid collision system.

GridCollisionSystem.getCollisionDataAt🔗

function GridCollisionSystem.getCollisionDataAt(GridCollisionSystem, Vec2f): number

Gets collision data at a given position (0 = no collision)

Parameters
  • GridCollisionSystem
  • Vec2f
Returns
  1. number

ISystem🔗

global interface ISystem forEach: function(Engine.Entity) end

ISystem.forEach🔗

function ISystem.forEach(Engine.Entity)
Parameters
  • Engine.Entity

LandVehicleMoveSystem🔗

global record LandVehicleMoveSystem getBlockedTrains: function(): {{Engine.Entity, Engine.Entity}} getVehicleInfo: function(vehicleEntity : Engine.Entity): LandVehicleMoveInfo isTrainWaitingForFreePath: function(trainEntity : Engine.Entity): boolean forEach: function(Engine.Entity) end

Land Vehicle Move System.
Manages the movement of land vehicles.

LandVehicleMoveSystem.getBlockedTrains🔗

function LandVehicleMoveSystem.getBlockedTrains(): {{Engine.Entity, Engine.Entity}}

Gets all trains that are blocked by another train.

Returns
  1. {{Engine.Entity, Engine.Entity}}

LandVehicleMoveSystem.getVehicleInfo🔗

function LandVehicleMoveSystem.getVehicleInfo(vehicleEntity : Engine.Entity): LandVehicleMoveInfo

Gets more information about a vehicle.

Parameters
  • vehicleEntity :Engine.Entity — the entity of the vehicle.
Returns
  1. LandVehicleMoveInfo

LandVehicleMoveSystem.isTrainWaitingForFreePath🔗

function LandVehicleMoveSystem.isTrainWaitingForFreePath(trainEntity : Engine.Entity): boolean

Checks if a train is waiting for a free path.

Parameters
  • trainEntity :Engine.Entity — the entity of the train.
Returns
  1. boolean

LandVehicleMoveSystem.forEach🔗

function LandVehicleMoveSystem.forEach(Engine.Entity)

Loops over all trains.

Parameters
  • Engine.Entity

LandmarkSystem🔗

global record LandmarkSystem getLandmarkData: function(landmarkEntity : Engine.Entity): {EdgeId : number} end

Landmark system.
Manages landmarks data.

LandmarkSystem.getLandmarkData🔗

function LandmarkSystem.getLandmarkData(landmarkEntity : Engine.Entity): {EdgeId : number}

Returns distances from landmark entity to transport network edges.

Parameters
  • landmarkEntity :Engine.Entity — entity of the landmark
Returns
  1. {EdgeId : number}

LineSystem🔗

global record LineSystem getLines: function(): {Engine.Entity} getLinesForPlayer: function(playerEntity : Engine.Entity): {Engine.Entity} getLinesForWaypoint: function(waypointEntity : Engine.Entity): {Engine.Entity} getLinesForWaypointLane: function(waypointEntity : Engine.Entity, signalIndex : integer): {{Engine.Entity, integer, integer}} getLineStops: function(stationGroupEntity : Engine.Entity): {{Engine.Entity, integer}} getLineStopsForStation: function(stationEntity : Engine.Entity): {{Engine.Entity, integer}} getLineStopsForTerminal: function(stationEntity : Engine.Entity, terminal : integer): {{Engine.Entity, integer}} getLinesForStationGroup: function(stationGroup : Engine.Entity): {Engine.Entity} getProblemLines: function(playerEntity : Engine.Entity): {{Engine.Entity, LineProblem}} getStationGroup2LineStopsMap: function(): {Engine.Entity : {{Engine.Entity, integer}}} getTerminal2lineStops: function(): {{Engine.Entity, integer} : {{Engine.Entity, integer}}} getBestLineAssignment: function(lineEntity : Engine.Entity, lineData : Engine.Component.Line, allowTerminalChanges : boolean): {StationTerminal} end

Line System.
Contains cached information about lines.

LineSystem.getLines🔗

function LineSystem.getLines(): {Engine.Entity}

Gets all lines on the map.

Returns
  1. {Engine.Entity} — line entities

LineSystem.getLinesForPlayer🔗

function LineSystem.getLinesForPlayer(playerEntity : Engine.Entity): {Engine.Entity}

Gets all lines belonging to the player.

Parameters
  • playerEntity :Engine.Entity — the player for which the lines should be fetched
Returns
  1. {Engine.Entity} — line entities

LineSystem.getLinesForWaypoint🔗

function LineSystem.getLinesForWaypoint(waypointEntity : Engine.Entity): {Engine.Entity}

Gets all lines going through a waypoint.

Parameters
  • waypointEntity :Engine.Entity — the waypoint for which the lines should be fetched
Returns
  1. {Engine.Entity} — line entities

LineSystem.getLinesForWaypointLane🔗

function LineSystem.getLinesForWaypointLane(waypointEntity : Engine.Entity, signalIndex : integer): {{Engine.Entity, integer, integer}}

Gets all line waypoints at the specific signal+lane

Parameters
  • waypointEntity :Engine.Entity — the signalList entity
  • signalIndex :integer — the signal index inside the SignalList
Returns
  1. {{Engine.Entity, integer, integer}}

LineSystem.getLineStops🔗

function LineSystem.getLineStops(stationGroupEntity : Engine.Entity): {{Engine.Entity, integer}}

Gets all lines stopping at a station group.

Parameters
  • stationGroupEntity :Engine.Entity — the stationGroup for which the lines should be fetched
Returns
  1. {{Engine.Entity, integer}}

LineSystem.getLineStopsForStation🔗

function LineSystem.getLineStopsForStation(stationEntity : Engine.Entity): {{Engine.Entity, integer}}

Gets all lines stopping at a station.

Parameters
  • stationEntity :Engine.Entity — the station for which the lines should be fetched
Returns
  1. {{Engine.Entity, integer}}

LineSystem.getLineStopsForTerminal🔗

function LineSystem.getLineStopsForTerminal(stationEntity : Engine.Entity, terminal : integer): {{Engine.Entity, integer}}

Gets all lines stopping at a terminal.

Parameters
  • stationEntity :Engine.Entity — the station for which the lines should be fetched
  • terminal :integer — the terminal of the station for which the lines should be fetched
Returns
  1. {{Engine.Entity, integer}}

LineSystem.getLinesForStationGroup🔗

function LineSystem.getLinesForStationGroup(stationGroup : Engine.Entity): {Engine.Entity}

Gets all lines for the given station group.

Parameters
  • stationGroup :Engine.Entity — the stationGroup for which the lines should be fetched
Returns
  1. {Engine.Entity} — line entities

LineSystem.getProblemLines🔗

function LineSystem.getProblemLines(playerEntity : Engine.Entity): {{Engine.Entity, LineProblem}}

Gets all lines having an issue, and the issue in question.

Parameters
  • playerEntity :Engine.Entity — the player for which the lines should be fetched
Returns
  1. {{Engine.Entity, LineProblem}}

LineSystem.getStationGroup2LineStopsMap🔗

function LineSystem.getStationGroup2LineStopsMap(): {Engine.Entity : {{Engine.Entity, integer}}}

Gets all stops in a station group.

Returns
  1. {Engine.Entity : {{Engine.Entity, integer}}}

LineSystem.getTerminal2lineStops🔗

function LineSystem.getTerminal2lineStops(): {{Engine.Entity, integer} : {{Engine.Entity, integer}}}

Gets all stops in a terminal.

Returns
  1. {{Engine.Entity, integer} : {{Engine.Entity, integer}}}

LineSystem.getBestLineAssignment🔗

function LineSystem.getBestLineAssignment(lineEntity : Engine.Entity, lineData : Engine.Component.Line, allowTerminalChanges : boolean): {StationTerminal}

Gets best terminal assignments for line.

Parameters
  • lineEntity :Engine.Entity — the line for which the computation should happen
  • lineData :Engine.Component.Line — the line component data, stops may have station = -1 and terminal = -1
  • allowTerminalChanges :boolean —
Returns
  1. {StationTerminal}

OctreeSystem🔗

global record OctreeSystem findIntersectingEntities: function(box : Box3f, callback : function(Engine.Entity, Engine.Component.BoundingVolume)) end

Octree System.
An octree that contains all entities with a bounding box. It enables fast query and location of entities in the map.

OctreeSystem.findIntersectingEntities🔗

function OctreeSystem.findIntersectingEntities(box : Box3f, callback : function(Engine.Entity, Engine.Component.BoundingVolume))

Fetches all entities in a box and runs a callback for them.

Parameters
  • box :Box3f — Box in which all entities are searched.
  • callback :function(Engine.Entity, Engine.Component.BoundingVolume) — A function called for each matching entity within box. The callback obtains an entity and a bounding volume.

ParcelSystem🔗

global record ParcelSystem getParcelData: function(segmentEntity : Engine.Entity): any getSegment2ParcelData: function(): {Engine.Entity : <any type>} end

Parcel System.
Manages and returns information about parcels.

ParcelSystem.getParcelData🔗

function ParcelSystem.getParcelData(segmentEntity : Engine.Entity): any

Obtains all parcels belonging to a segment.

Parameters
  • segmentEntity :Engine.Entity — the segment of which to obtain all attached parcels
Returns
  1. any

ParcelSystem.getSegment2ParcelData🔗

function ParcelSystem.getSegment2ParcelData(): {Engine.Entity : <any type>}

Obtains a map of all segments to the parcel data of the segment.

Returns
  1. {Engine.Entity : <any type>}

RailRoadCrossingSystem🔗

global record RailRoadCrossingSystem getRailroadCrossingForEdge: function(edgeEntity : Engine.Entity): Engine.Entity getRailroadCrossingForNode: function(nodeEntity : Engine.Entity): Engine.Entity end

Railroad Crossing System.
Contains information about raiload crossings.

RailRoadCrossingSystem.getRailroadCrossingForEdge🔗

function RailRoadCrossingSystem.getRailroadCrossingForEdge(edgeEntity : Engine.Entity): Engine.Entity

Gets all railroad crossings of the given base edge entity.

Parameters
  • edgeEntity :Engine.Entity — the entity id of the edge that should be inspected
Returns
  1. Engine.Entity

RailRoadCrossingSystem.getRailroadCrossingForNode🔗

function RailRoadCrossingSystem.getRailroadCrossingForNode(nodeEntity : Engine.Entity): Engine.Entity

Gets all railroad crossings of the given base node entity.

Parameters
  • nodeEntity :Engine.Entity — the entity id of the node that should be inspected
Returns
  1. Engine.Entity

RiverSystem🔗

global record RiverSystem getWaterMeshEntities: function(Vec2i, Vec2i): {Engine.Entity} end

River System.
Contains information about water in the map.

RiverSystem.getWaterMeshEntities🔗

function RiverSystem.getWaterMeshEntities(Vec2i, Vec2i): {Engine.Entity}

Gets all water meshes within the bounds.

Parameters
  • Vec2i
  • Vec2i
Returns
  1. {Engine.Entity}

RunwaySystem🔗

global record RunwaySystem getLandingNodeIdMap: function(): {NodeId : Engine.Entity} getTakeoffNodeIdMap: function(): {NodeId : Engine.Entity} end

Runway System.
Contains information about runway edges.

RunwaySystem.getLandingNodeIdMap🔗

function RunwaySystem.getLandingNodeIdMap(): {NodeId : Engine.Entity}

Gets all stations reachable from that landing node.

Returns
  1. {NodeId : Engine.Entity}

RunwaySystem.getTakeoffNodeIdMap🔗

function RunwaySystem.getTakeoffNodeIdMap(): {NodeId : Engine.Entity}

Gets all station from which the takeoff node can reached.

Returns
  1. {NodeId : Engine.Entity}

ShipMoveSystem🔗

global record ShipMoveSystem getShipInfo: function(vehicleEntity : Engine.Entity): ShipInfo forEach: function(Engine.Entity) end

Ship Move System.
Contains information about the movement of ships.

ShipMoveSystem.getShipInfo🔗

function ShipMoveSystem.getShipInfo(vehicleEntity : Engine.Entity): ShipInfo

Gets more path and movement information about ships.

Parameters
  • vehicleEntity :Engine.Entity — the entity id of the ship that should be inspected
Returns
  1. ShipInfo

ShipMoveSystem.forEach🔗

function ShipMoveSystem.forEach(Engine.Entity)

Loops over all ships.

Parameters
  • Engine.Entity

SignalSystem🔗

global record SignalSystem getSignal: function(edgeId : EdgeId, reversed : boolean): SignalId end

Signal System.
Contains information about Signals (waypoints, path and one way signals)

SignalSystem.getSignal🔗

function SignalSystem.getSignal(edgeId : EdgeId, reversed : boolean): SignalId

Gets the signal from an @{api.type.EdgeId} at the given direction.
Notice: there can be at most one signal per direction per transport network edge.

Parameters
  • edgeId :EdgeId — the id of the edge hosting the signal
  • reversed :boolean — false if signal in direction of edge is requested
Returns
  1. SignalId

SimCargoSystem🔗

global record SimCargoSystemend

Cargo System.
System managing cargo.

SimEntityAtStockSystem🔗

global record SimEntityAtStockSystem getStock2SimEntityMap: function(): {{Engine.Entity, StockId} : {Engine.Entity}} getStockCount: function(stockEntity : Engine.Entity, stockId : StockId): integer getStockCountForCargoType: function(stockEntity : Engine.Entity, stockId : StockId, cargoTypeId : CargoTypeId): integer getStockEntities: function(stockEntity : Engine.Entity, stockId : StockId): {{integer, Engine.Entity}} getStockSimEntity: function(stockEntity : Engine.Entity, stockId : StockId): Engine.Entity end

Sim Entity At Stock System.
System managing cargo produced by industries or transported to a warehouse.

SimEntityAtStockSystem.getStock2SimEntityMap🔗

function SimEntityAtStockSystem.getStock2SimEntityMap(): {{Engine.Entity, StockId} : {Engine.Entity}}

Obtains a map, mapping the stock to the cargo waiting there.

Returns
  1. {{Engine.Entity, StockId} : {Engine.Entity}}

SimEntityAtStockSystem.getStockCount🔗

function SimEntityAtStockSystem.getStockCount(stockEntity : Engine.Entity, stockId : StockId): integer

Obtains the amount of specific item id waiting at a given stock.

Parameters
  • stockEntity :Engine.Entity — the entity of the stock holding entity, e.g. industry
  • stockId :StockId — the id of the stock
Returns
  1. integer

SimEntityAtStockSystem.getStockCountForCargoType🔗

function SimEntityAtStockSystem.getStockCountForCargoType(stockEntity : Engine.Entity, stockId : StockId, cargoTypeId : CargoTypeId): integer

Obtains the amount of specific item id waiting at a given stock and cargo type.

Parameters
  • stockEntity :Engine.Entity — the entity of the stock holding entity, e.g. industry
  • stockId :StockId — the id of the stock
  • cargoTypeId :CargoTypeId — the id of the cargo type
Returns
  1. integer

SimEntityAtStockSystem.getStockEntities🔗

function SimEntityAtStockSystem.getStockEntities(stockEntity : Engine.Entity, stockId : StockId): {{integer, Engine.Entity}}

Obtains all entities waiting at a given stock.

Parameters
  • stockEntity :Engine.Entity — the entity of the stock holding entity, e.g. industry
  • stockId :StockId — the id of the stock
Returns
  1. {{integer, Engine.Entity}}

SimEntityAtStockSystem.getStockSimEntity🔗

function SimEntityAtStockSystem.getStockSimEntity(stockEntity : Engine.Entity, stockId : StockId): Engine.Entity

Obtains the entity that was waiting longest at a given stock.

Parameters
  • stockEntity :Engine.Entity — the entity of the stock holding entity, e.g. industry
  • stockId :StockId — the id of the stock
Returns
  1. Engine.Entity

SimEntityAtTerminalSystem🔗

global record SimEntityAtTerminalSystem getLineStopSimEntitiesCount: function(entity : Engine.Entity, stopIndex : integer, cargoType : CargoTypeId): integer getLineStopSimEntities: function(entity : Engine.Entity, stopIndex : integer, cargoType : CargoTypeId): {Engine.Entity} end

Sim Entity At Terminal System.
System managing entities waiting at terminals.

SimEntityAtTerminalSystem.getLineStopSimEntitiesCount🔗

function SimEntityAtTerminalSystem.getLineStopSimEntitiesCount(entity : Engine.Entity, stopIndex : integer, cargoType : CargoTypeId): integer

Gets the count of entities (SimPersons) waiting at the terminal.

Parameters
  • entity :Engine.Entity — the line entity
  • stopIndex :integer — the index of the stop in the line
  • cargoType :CargoTypeId — the id of the cargo type
Returns
  1. integer — the count of entities at that line stop

SimEntityAtTerminalSystem.getLineStopSimEntities🔗

function SimEntityAtTerminalSystem.getLineStopSimEntities(entity : Engine.Entity, stopIndex : integer, cargoType : CargoTypeId): {Engine.Entity}

Gets the count of entities (SimPersons) waiting at the terminal for the given cargo type.

Parameters
  • entity :Engine.Entity — the line entity
  • stopIndex :integer — the index of the stop in the line
  • cargoType :CargoTypeId — the id of the cargo type
Returns
  1. {Engine.Entity} — the sim entities of the given cargo type at that line stop

SimEntityAtVehicleSystem🔗

global record SimEntityAtVehicleSystem getVehicle2Cargo2SimEntitesMap: function(): {Engine.Entity : {CargoTypeId : {Engine.Entity}}} getVehicleSimEntitiesCount: function(vehicleEntity : Engine.Entity): integer getVehicleSimEntitiesCountForCargoType: function(vehicleEntity : Engine.Entity, cargoType : CargoTypeId): integer getVehiclesWithRoundTripCount: function(): {Engine.Entity : integer} end

Sim Entity At Vehicle System.
System managing entities travelling in a vehicle.

SimEntityAtVehicleSystem.getVehicle2Cargo2SimEntitesMap🔗

function SimEntityAtVehicleSystem.getVehicle2Cargo2SimEntitesMap(): {Engine.Entity : {CargoTypeId : {Engine.Entity}}}

Gets a map from vehicle Entity to a map from cargo to all "Sim" entities in the vehicle of the given cargo type.

Returns
  1. {Engine.Entity : {CargoTypeId : {Engine.Entity}}}

SimEntityAtVehicleSystem.getVehicleSimEntitiesCount🔗

function SimEntityAtVehicleSystem.getVehicleSimEntitiesCount(vehicleEntity : Engine.Entity): integer

Gets the count of entities in the vehicle.

Parameters
  • vehicleEntity :Engine.Entity — the entity of the vehicle that should be inspected
Returns
  1. integer — the count of entities

SimEntityAtVehicleSystem.getVehicleSimEntitiesCountForCargoType🔗

function SimEntityAtVehicleSystem.getVehicleSimEntitiesCountForCargoType(vehicleEntity : Engine.Entity, cargoType : CargoTypeId): integer

Gets the count of entities in the vehicle for the given cargo type.

Parameters
  • vehicleEntity :Engine.Entity — the entity of the vehicle that should be inspected
  • cargoType :CargoTypeId — the id of the cargo type
Returns
  1. integer — the count of entities

SimEntityAtVehicleSystem.getVehiclesWithRoundTripCount🔗

function SimEntityAtVehicleSystem.getVehiclesWithRoundTripCount(): {Engine.Entity : integer}

Gets the vehicles with their round trip cargo counts.

Returns
  1. {Engine.Entity : integer} — the vehicles with their round trip cargo counts

SimPersonAtBuildingSystem🔗

global record SimPersonAtBuildingSystem getSimPersonAtBuilding: function(simBuildingEntity : Engine.Entity): {Engine.Entity} end

Person At Building System.
System managing persons at a building.

SimPersonAtBuildingSystem.getSimPersonAtBuilding🔗

function SimPersonAtBuildingSystem.getSimPersonAtBuilding(simBuildingEntity : Engine.Entity): {Engine.Entity}

Gets list of entities currently at the building

Parameters
  • simBuildingEntity :Engine.Entity — the entity of the building that should be inspected
Returns
  1. {Engine.Entity}

SimPersonAtTerminalSystem🔗

global record SimPersonAtTerminalSystem getEdgeInfoMap: function(): {EdgeId : <any type>} getNumFreePlaces: function(edgeId : EdgeId): integer getPos01: function(edgeId : EdgeId, place : integer): {number, number} end

Person At Terminal System.
System managing persons waiting at terminal.

SimPersonAtTerminalSystem.getEdgeInfoMap🔗

function SimPersonAtTerminalSystem.getEdgeInfoMap(): {EdgeId : <any type>}

Gets information about persons waiting at the terminals.

Returns
  1. {EdgeId : <any type>}

SimPersonAtTerminalSystem.getNumFreePlaces🔗

function SimPersonAtTerminalSystem.getNumFreePlaces(edgeId : EdgeId): integer

Gets number of free waiting places for the given transport network edge.

Parameters
  • edgeId :EdgeId — the id of the edge that should be inspected
Returns
  1. integer

SimPersonAtTerminalSystem.getPos01🔗

function SimPersonAtTerminalSystem.getPos01(edgeId : EdgeId, place : integer): {number, number}

Gets the position on the transport network edge for the given place.

Parameters
  • edgeId :EdgeId — the id of the edge that should be inspected
  • place :integer — the waiting place number
Returns
  1. {number, number} — the position

SimPersonAtVehicleSystem🔗

global record SimPersonAtVehicleSystem getVehiclePartInfoList: function(vehicleEntity : Engine.Entity): {VehiclePartInfo} end

Sim Person At Vehicle System.
System managing persons travelling on a vehicle.

SimPersonAtVehicleSystem.getVehiclePartInfoList🔗

function SimPersonAtVehicleSystem.getVehiclePartInfoList(vehicleEntity : Engine.Entity): {VehiclePartInfo}

Gets information about persons traveling on the given vehicle.

Parameters
  • vehicleEntity :Engine.Entity — the entity of the vehicle that should be inspected
Returns
  1. {VehiclePartInfo} — Information about each vehicle part

SimPersonSystem🔗

global record SimPersonSystem getCount: function(): integer getDestination2SpMap: function(): {Engine.Entity : {Engine.Entity}} getSimPersonsAtTerminalForTransportNetwork: function(tnEntity : Engine.Entity): {Engine.Entity} getSimPersonsForDestination: function(destination : Engine.Entity): {Engine.Entity} getSimPersonsForLine: function(lineEntity : Engine.Entity): {Engine.Entity} getSimPersonsForTarget: function(targetEntity : Engine.Entity): {Engine.Entity} getSimPersonsIdleForTransportNetwork: function(tnEntity : Engine.Entity): {Engine.Entity} getSimPersonsMovingForTransportNetwork: function(tnEntity : Engine.Entity): {Engine.Entity} end

Sim Person System.
System managing persons.

SimPersonSystem.getCount🔗

function SimPersonSystem.getCount(): integer

Gets number of people on the map.

Returns
  1. integer — number of people

SimPersonSystem.getDestination2SpMap🔗

function SimPersonSystem.getDestination2SpMap(): {Engine.Entity : {Engine.Entity}}

Gets list of people for every destination.

Returns
  1. {Engine.Entity : {Engine.Entity}}

SimPersonSystem.getSimPersonsAtTerminalForTransportNetwork🔗

function SimPersonSystem.getSimPersonsAtTerminalForTransportNetwork(tnEntity : Engine.Entity): {Engine.Entity}

Gets all persons waiting at the given transport network.

Parameters
  • tnEntity :Engine.Entity — the entity of the transport network
Returns
  1. {Engine.Entity}

SimPersonSystem.getSimPersonsForDestination🔗

function SimPersonSystem.getSimPersonsForDestination(destination : Engine.Entity): {Engine.Entity}

Gets all persons that have an entity as one of their destination.
Destinations are a home, a work and a shopping destination.

Parameters
  • destination :Engine.Entity — the destination entity
Returns
  1. {Engine.Entity}

SimPersonSystem.getSimPersonsForLine🔗

function SimPersonSystem.getSimPersonsForLine(lineEntity : Engine.Entity): {Engine.Entity}

Gets all persons travelling with the given line.

Parameters
  • lineEntity :Engine.Entity — the entity of the line
Returns
  1. {Engine.Entity}

SimPersonSystem.getSimPersonsForTarget🔗

function SimPersonSystem.getSimPersonsForTarget(targetEntity : Engine.Entity): {Engine.Entity}

Gets all persons currently trying to reach given target.

Parameters
  • targetEntity :Engine.Entity — the entity of the target
Returns
  1. {Engine.Entity}

SimPersonSystem.getSimPersonsIdleForTransportNetwork🔗

function SimPersonSystem.getSimPersonsIdleForTransportNetwork(tnEntity : Engine.Entity): {Engine.Entity}

Gets all idle persons on a transport network.

Parameters
  • tnEntity :Engine.Entity — the entity of the transport network
Returns
  1. {Engine.Entity}

SimPersonSystem.getSimPersonsMovingForTransportNetwork🔗

function SimPersonSystem.getSimPersonsMovingForTransportNetwork(tnEntity : Engine.Entity): {Engine.Entity}

Gets all moving persons over a transport network.

Parameters
  • tnEntity :Engine.Entity — the entity of the transport network
Returns
  1. {Engine.Entity}

StationGroupSystem🔗

global record StationGroupSystem getExpiredStationGroups: function(time : integer): {Engine.Entity} getExpiryProgress: function(stationGroupEntity : Engine.Entity, time : integer): number getStationGroup: function(stationEntity : Engine.Entity): Engine.Entity getCarriers: function(stationGroup : Engine.Entity, station : integer, terminal : integer): {{Carrier}, {TransportMode}} end

Station Group System.
Contains cached information about station groups.

StationGroupSystem.getExpiredStationGroups🔗

function StationGroupSystem.getExpiredStationGroups(time : integer): {Engine.Entity}

Gets station groups that no longer contain stations and are thus about to be removed.

Parameters
  • time :integer — the time stamp until when the stations with this condition are removed
Returns
  1. {Engine.Entity}

StationGroupSystem.getExpiryProgress🔗

function StationGroupSystem.getExpiryProgress(stationGroupEntity : Engine.Entity, time : integer): number

Gets progress on the removal of station groups.

Parameters
  • stationGroupEntity :Engine.Entity — the entity of the station group that is about to be removed
  • time :integer — the time for which th progress is requested
Returns
  1. number

StationGroupSystem.getStationGroup🔗

function StationGroupSystem.getStationGroup(stationEntity : Engine.Entity): Engine.Entity

Obtains the station group to which the station belongs.

Parameters
  • stationEntity :Engine.Entity — the entity of the station for which the parent station group is queried
Returns
  1. Engine.Entity

StationGroupSystem.getCarriers🔗

function StationGroupSystem.getCarriers(stationGroup : Engine.Entity, station : integer, terminal : integer): {{Carrier}, {TransportMode}}

Gets the carriers of the station / terminal.

Parameters
  • stationGroup :Engine.Entity — entity
  • station :integer — The station index (or -1 to get superset over all terminals)
  • terminal :integer — The terminal index inside the station (or -1 if station == -1)
Returns
  1. {{Carrier}, {TransportMode}}

StationSystem🔗

global record StationSystem getPersonNodeId2StationTerminalsMap: function(): {NodeId : {{Engine.Entity, integer}}} getStation2TownMap: function(): {Engine.Entity : Engine.Entity} getStations: function(townEntity : Engine.Entity): {Engine.Entity} getStationTerminalForVehicleNode: function(nodeId : NodeId): {Engine.Entity, integer} getStationTerminalsForPersonEdge: function(nodeId : EdgeId): {{Engine.Entity, integer}} getStationTerminalsForPersonNode: function(nodeId : NodeId): {{Engine.Entity, integer}} getTown2StationsMap: function(): {Engine.Entity : {Engine.Entity}} getTown: function(stationEntity : Engine.Entity): Engine.Entity getVehicleNodeId2StationTerminalsMap: function(): {NodeId : {{Engine.Entity, integer}}} forEach: function(Engine.Entity) end

Station System.
Contains cached information about stations.

StationSystem.getPersonNodeId2StationTerminalsMap🔗

function StationSystem.getPersonNodeId2StationTerminalsMap(): {NodeId : {{Engine.Entity, integer}}}

Gets all transport network nodes associated with a station terminal.

Returns
  1. {NodeId : {{Engine.Entity, integer}}}

StationSystem.getStation2TownMap🔗

function StationSystem.getStation2TownMap(): {Engine.Entity : Engine.Entity}

Gets a map from stations to towns.

Returns
  1. {Engine.Entity : Engine.Entity}

StationSystem.getStations🔗

function StationSystem.getStations(townEntity : Engine.Entity): {Engine.Entity}

Gets all stations in a town.

Parameters
  • townEntity :Engine.Entity — the entity of the town that is queried for
Returns
  1. {Engine.Entity}

StationSystem.getStationTerminalForVehicleNode🔗

function StationSystem.getStationTerminalForVehicleNode(nodeId : NodeId): {Engine.Entity, integer}

Gets the station terminal to which the node belongs.

Parameters
  • nodeId :NodeId — the vehicle node id that is queried for
Returns
  1. {Engine.Entity, integer}

StationSystem.getStationTerminalsForPersonEdge🔗

function StationSystem.getStationTerminalsForPersonEdge(nodeId : EdgeId): {{Engine.Entity, integer}}

Gets the station terminals to which the person edge belongs.

Parameters
  • nodeId :EdgeId — the edge id that is queried for
Returns
  1. {{Engine.Entity, integer}}

StationSystem.getStationTerminalsForPersonNode🔗

function StationSystem.getStationTerminalsForPersonNode(nodeId : NodeId): {{Engine.Entity, integer}}

Gets the station terminals to which the person node belongs.

Parameters
  • nodeId :NodeId — the person node id that is queried for
Returns
  1. {{Engine.Entity, integer}}

StationSystem.getTown2StationsMap🔗

function StationSystem.getTown2StationsMap(): {Engine.Entity : {Engine.Entity}}

Gets all station grouped by towns.

Returns
  1. {Engine.Entity : {Engine.Entity}}

StationSystem.getTown🔗

function StationSystem.getTown(stationEntity : Engine.Entity): Engine.Entity

Gets a the town of the station.

Parameters
  • stationEntity :Engine.Entity — the entity of the station that is queried for
Returns
  1. Engine.Entity

StationSystem.getVehicleNodeId2StationTerminalsMap🔗

function StationSystem.getVehicleNodeId2StationTerminalsMap(): {NodeId : {{Engine.Entity, integer}}}

Gets the mapping from vehicle node to station terminal.

Returns
  1. {NodeId : {{Engine.Entity, integer}}}

StationSystem.forEach🔗

function StationSystem.forEach(Engine.Entity)

Loops over all stations.

Parameters
  • Engine.Entity

StockListSystem🔗

global record StockListSystemend

Stock List System.
Manages stocks.

StreetConnectorSystem🔗

global record StreetConnectorSystem getConstructionEntityForDepot: function(depotEntity : Engine.Entity): Engine.Entity getConstructionEntityForEdge: function(edgeEntity : Engine.Entity): Engine.Entity getConstructionEntityForIndustry: function(industryEntity : Engine.Entity): Engine.Entity getConstructionEntityForNode: function(nodeEntity : Engine.Entity): Engine.Entity getConstructionEntityForSubconstruction: function(subconstruction : Engine.Entity): Engine.Entity getConstructionEntityForStation: function(stationEntity : Engine.Entity): Engine.Entity getConstructionEntityForTownBuilding: function(townBuilding : Engine.Entity): Engine.Entity getNode2StreetConnectorMap: function(): {Engine.Entity : Engine.Entity} getStation2ConstructionMap: function(): {Engine.Entity : Engine.Entity} forEachConstructionWithMetadata: function(metadataKey : string, constructionDescMeta : boolean, constructionInstanceMeta : boolean, fn : function(Engine.Entity, Engine.Component.Construction, ConstructionId), playerOwnedOnly : boolean) getConstructionIdIfStaticMetadata: function(constructionEntity : Engine.Entity, metadataKey : string): {ConstructionId, ResName} getConstructionClosestTown: function(constructionEntity : Engine.Entity): Engine.Entity getTownClosestConstructions: function(townEntity : Engine.Entity): {Engine.Entity} forEach: function(Engine.Entity) end

Street Connector System.
Manages street connections.

StreetConnectorSystem.getConstructionEntityForDepot🔗

function StreetConnectorSystem.getConstructionEntityForDepot(depotEntity : Engine.Entity): Engine.Entity

Gets all sources for the destination entity.

Parameters
  • depotEntity :Engine.Entity — the entity for which the containing construction should be fetched
Returns
  1. Engine.Entity

StreetConnectorSystem.getConstructionEntityForEdge🔗

function StreetConnectorSystem.getConstructionEntityForEdge(edgeEntity : Engine.Entity): Engine.Entity

Gets the construction that "owns" the given edge.

Parameters
  • edgeEntity :Engine.Entity — the entity for which the containing construction should be fetched
Returns
  1. Engine.Entity

StreetConnectorSystem.getConstructionEntityForIndustry🔗

function StreetConnectorSystem.getConstructionEntityForIndustry(industryEntity : Engine.Entity): Engine.Entity

Gets the construction for the industry.

Parameters
  • industryEntity :Engine.Entity — the entity for which the containing construction should be fetched
Returns
  1. Engine.Entity

StreetConnectorSystem.getConstructionEntityForNode🔗

function StreetConnectorSystem.getConstructionEntityForNode(nodeEntity : Engine.Entity): Engine.Entity

Gets the construction to which the node (a frozen node in the construction) belongs.

Parameters
  • nodeEntity :Engine.Entity — the entity for which the containing construction should be fetched
Returns
  1. Engine.Entity

StreetConnectorSystem.getConstructionEntityForSubconstruction🔗

function StreetConnectorSystem.getConstructionEntityForSubconstruction(subconstruction : Engine.Entity): Engine.Entity

Gets the construction for the subconstruction.

Parameters
  • subconstruction :Engine.Entity — the entity for which the containing construction should be fetched
Returns
  1. Engine.Entity

StreetConnectorSystem.getConstructionEntityForStation🔗

function StreetConnectorSystem.getConstructionEntityForStation(stationEntity : Engine.Entity): Engine.Entity

Gets the construction for the station.

Parameters
  • stationEntity :Engine.Entity — the entity for which the containing construction should be fetched
Returns
  1. Engine.Entity

StreetConnectorSystem.getConstructionEntityForTownBuilding🔗

function StreetConnectorSystem.getConstructionEntityForTownBuilding(townBuilding : Engine.Entity): Engine.Entity

Gets the construction for the town building.

Parameters
  • townBuilding :Engine.Entity — the entity for which the containing construction should be fetched
Returns
  1. Engine.Entity

StreetConnectorSystem.getNode2StreetConnectorMap🔗

function StreetConnectorSystem.getNode2StreetConnectorMap(): {Engine.Entity : Engine.Entity}

Gets a mapping from frozen nodes to the construction they belong.

Returns
  1. {Engine.Entity : Engine.Entity}

StreetConnectorSystem.getStation2ConstructionMap🔗

function StreetConnectorSystem.getStation2ConstructionMap(): {Engine.Entity : Engine.Entity}

Gets a mapping from stations to constructions.

Returns
  1. {Engine.Entity : Engine.Entity}

StreetConnectorSystem.forEachConstructionWithMetadata🔗

function StreetConnectorSystem.forEachConstructionWithMetadata(metadataKey : string, constructionDescMeta : boolean, constructionInstanceMeta : boolean, fn : function(Engine.Entity, Engine.Component.Construction, ConstructionId), playerOwnedOnly : boolean)

Loop over all constructions that have the specified metadata key in their static description.

Parameters
  • metadataKey :string — metadata key
  • constructionDescMeta :boolean — if static metadata should be checked (on match, the callback's constructionId is >= 0)
  • constructionInstanceMeta :boolean — if instance metadata should be checked
  • fn :function(Engine.Entity, Engine.Component.Construction, ConstructionId) — the callback called for each entity with the given component and its entry in constructionRep
  • playerOwnedOnly :boolean — if true, then skip constructions owned by other player or not owned at all

StreetConnectorSystem.getConstructionIdIfStaticMetadata🔗

function StreetConnectorSystem.getConstructionIdIfStaticMetadata(constructionEntity : Engine.Entity, metadataKey : string): {ConstructionId, ResName}

Loop over all constructions that have the specified metadata key in their static description.

Parameters
  • constructionEntity :Engine.Entity — the entity to check
  • metadataKey :string — metadata key
Returns
  1. {ConstructionId, ResName}

StreetConnectorSystem.getConstructionClosestTown🔗

function StreetConnectorSystem.getConstructionClosestTown(constructionEntity : Engine.Entity): Engine.Entity

Gets the closest town to the construction.

Parameters
  • constructionEntity :Engine.Entity — the entity for which the closest town should be fetched
Returns
  1. Engine.Entity

StreetConnectorSystem.getTownClosestConstructions🔗

function StreetConnectorSystem.getTownClosestConstructions(townEntity : Engine.Entity): {Engine.Entity}

Gets constructions for which the town is the closest.

Parameters
  • townEntity :Engine.Entity — the entity for which the closest constructions should be fetched
Returns
  1. {Engine.Entity}

StreetConnectorSystem.forEach🔗

function StreetConnectorSystem.forEach(Engine.Entity)

Loops over all constructions.

Parameters
  • Engine.Entity

StreetSystem🔗

global record StreetSystem getEdgeForEdgeObject: function(edgeEntity : Engine.Entity): Engine.Entity getEdgeObject2EdgeMap: function(): {Engine.Entity : Engine.Entity} getNode2SegmentMap: function(): {Engine.Entity : {Engine.Entity}} getNode2StreetEdgeMap: function(): {Engine.Entity : {Engine.Entity}} getNode2TrackEdgeMap: function(): {Engine.Entity : {Engine.Entity}} isTownCrossingNode: function(Engine.Entity): boolean getNodeSegments: function(nodeEntity : Engine.Entity): {Engine.Entity} getNodeStreetSegments: function(nodeEntity : Engine.Entity): {Engine.Entity} getNodeTrackSegments: function(nodeEntity : Engine.Entity): {Engine.Entity} end

Street System.
Manages base edges.

StreetSystem.getEdgeForEdgeObject🔗

function StreetSystem.getEdgeForEdgeObject(edgeEntity : Engine.Entity): Engine.Entity

Obtains the edge to which the edge object belongs.

Parameters
  • edgeEntity :Engine.Entity — the entity of the edge object
Returns
  1. Engine.Entity

StreetSystem.getEdgeObject2EdgeMap🔗

function StreetSystem.getEdgeObject2EdgeMap(): {Engine.Entity : Engine.Entity}

Obtains the mapping from edge object to edges they belong.

Returns
  1. {Engine.Entity : Engine.Entity}

StreetSystem.getNode2SegmentMap🔗

function StreetSystem.getNode2SegmentMap(): {Engine.Entity : {Engine.Entity}}

Obtains a map from all base nodes to base segments they are connected with.

Returns
  1. {Engine.Entity : {Engine.Entity}}

StreetSystem.getNode2StreetEdgeMap🔗

function StreetSystem.getNode2StreetEdgeMap(): {Engine.Entity : {Engine.Entity}}

Obtains a map from all base nodes to base street segments they are connected with.

Returns
  1. {Engine.Entity : {Engine.Entity}}

StreetSystem.getNode2TrackEdgeMap🔗

function StreetSystem.getNode2TrackEdgeMap(): {Engine.Entity : {Engine.Entity}}

Obtains a map from all base nodes to base track segments they are connected with.

Returns
  1. {Engine.Entity : {Engine.Entity}}

StreetSystem.isTownCrossingNode🔗

function StreetSystem.isTownCrossingNode(Engine.Entity): boolean

Checks if the node is a town crossing.

Parameters
  • Engine.Entity
Returns
  1. boolean

StreetSystem.getNodeSegments🔗

function StreetSystem.getNodeSegments(nodeEntity : Engine.Entity): {Engine.Entity}

Returns the node segments.

Parameters
  • nodeEntity :Engine.Entity — the entity of the node
Returns
  1. {Engine.Entity}

StreetSystem.getNodeStreetSegments🔗

function StreetSystem.getNodeStreetSegments(nodeEntity : Engine.Entity): {Engine.Entity}

Returns the node street segments.

Parameters
  • nodeEntity :Engine.Entity — the entity of the node
Returns
  1. {Engine.Entity}

StreetSystem.getNodeTrackSegments🔗

function StreetSystem.getNodeTrackSegments(nodeEntity : Engine.Entity): {Engine.Entity}

Returns the node track segments.

Parameters
  • nodeEntity :Engine.Entity — the entity of the node
Returns
  1. {Engine.Entity}

TownBuildingSystem🔗

global record TownBuildingSystem getBuilding: function(parcelEntity : Engine.Entity): Engine.Entity getCargoSupplyAndLimit: function(townEntity : Engine.Entity, LandUseType): {CargoTypeId : {number, number, integer}} getLandUsePersonCapacities: function(townEntity : Engine.Entity): {integer} getParcel2BuildingMap: function(): {Engine.Entity : Engine.Entity} getPersonCapacity2townBuildingMap: function(): {Engine.Entity : Engine.Entity} getTown2BuildingMap: function(): {Engine.Entity : {Engine.Entity}} getTown2personCapacitiesMap: function(): {Engine.Entity : {integer}} hasBuilding: function(parcelEntity : Engine.Entity): boolean end

Town Building System.
Manages town buildings and parcels.

TownBuildingSystem.getBuilding🔗

function TownBuildingSystem.getBuilding(parcelEntity : Engine.Entity): Engine.Entity

Obtains the building (if any) that is placed on the given parcel.

Parameters
  • parcelEntity :Engine.Entity — the entity of the parcel
Returns
  1. Engine.Entity

TownBuildingSystem.getCargoSupplyAndLimit🔗

function TownBuildingSystem.getCargoSupplyAndLimit(townEntity : Engine.Entity, LandUseType): {CargoTypeId : {number, number, integer}}

Obtains information about towns and cargo.

Parameters
  • townEntity :Engine.Entity — the entity of the town
  • LandUseType
Returns
  1. {CargoTypeId : {number, number, integer}}

TownBuildingSystem.getLandUsePersonCapacities🔗

function TownBuildingSystem.getLandUsePersonCapacities(townEntity : Engine.Entity): {integer}

Obtains information about land use and person capacities.

Parameters
  • townEntity :Engine.Entity — the entity of the town
Returns
  1. {integer}

TownBuildingSystem.getParcel2BuildingMap🔗

function TownBuildingSystem.getParcel2BuildingMap(): {Engine.Entity : Engine.Entity}

Obtains map from parcel to building occupying the parcel.

Returns
  1. {Engine.Entity : Engine.Entity}

TownBuildingSystem.getPersonCapacity2townBuildingMap🔗

function TownBuildingSystem.getPersonCapacity2townBuildingMap(): {Engine.Entity : Engine.Entity}

Obtains map from person capacities to town buildings.

Returns
  1. {Engine.Entity : Engine.Entity}

TownBuildingSystem.getTown2BuildingMap🔗

function TownBuildingSystem.getTown2BuildingMap(): {Engine.Entity : {Engine.Entity}}

Obtains map from town to town buildings of the town.

Returns
  1. {Engine.Entity : {Engine.Entity}}

TownBuildingSystem.getTown2personCapacitiesMap🔗

function TownBuildingSystem.getTown2personCapacitiesMap(): {Engine.Entity : {integer}}

Obtains map from town to person capacities of the town.

Returns
  1. {Engine.Entity : {integer}} — a map of town to an array of integer. {integer} is an array of 3 ints capa per landuse: { RESIDENTIAL, COMMERCIAL, INDUSTRIAL }

TownBuildingSystem.hasBuilding🔗

function TownBuildingSystem.hasBuilding(parcelEntity : Engine.Entity): boolean

Checks if parcel is occupied by building.

Parameters
  • parcelEntity :Engine.Entity — the entity of the parcel
Returns
  1. boolean

TpNetLinkSystem🔗

global record TpNetLinkSystem getEdgeId2linkEntities: function(): {EdgeId : {Engine.Entity}} getLinkEntities: function(edgeId : EdgeId): {Engine.Entity} end

Transport Network Link System.
Manages transport networks links (small links between roads and constructions).

TpNetLinkSystem.getEdgeId2linkEntities🔗

function TpNetLinkSystem.getEdgeId2linkEntities(): {EdgeId : {Engine.Entity}}

Gets a map from all edges to the links touching the edge.

Returns
  1. {EdgeId : {Engine.Entity}}

TpNetLinkSystem.getLinkEntities🔗

function TpNetLinkSystem.getLinkEntities(edgeId : EdgeId): {Engine.Entity}

Gets all links within a transport network edge.

Parameters
  • edgeId :EdgeId — the edge id for which the links should be fetched
Returns
  1. {Engine.Entity}

TransportNetworkSystem🔗

global record TransportNetworkSystem getIntersections: function(tnEntity : Engine.Entity): {<any type>} getTpNetData: function(): TpNetData end

Transport Network System.
Manages transport networks (and transport network edges and nodes).

TransportNetworkSystem.getIntersections🔗

function TransportNetworkSystem.getIntersections(tnEntity : Engine.Entity): {<any type>}

Gets all intersections within a transport network (e.g. all intersections in a base node).

Parameters
  • tnEntity :Engine.Entity — the entity of the transport network
Returns
  1. {<any type>}

TransportNetworkSystem.getTpNetData🔗

function TransportNetworkSystem.getTpNetData(): TpNetData

Gets a structure representing the graph of the transport network.

Returns
  1. TpNetData

TransportVehicleSystem🔗

global record TransportVehicleSystem getDepotVehicles: function(depotEntity : Engine.Entity): {Engine.Entity} getGoingToDepotVehicles: function(depotEntity : Engine.Entity): {Engine.Entity} getInfo: function(transportVehicleEntity : Engine.Entity): any getLine2VehicleMap: function(): {Engine.Entity : {Engine.Entity}} getLineStopVehicles: function(lineEntity : Engine.Entity, stopIndex : number): {Engine.Entity} checkLineStopForVehicleOverlength: function(lineEntity : Engine.Entity, stopIndex : number): {StationTerminal : boolean} getLineVehicles: function(lineEntity : Engine.Entity): {Engine.Entity} getNoPathVehicles: function(): {Engine.Entity} getVehicleNames: function(carrier : Carrier): {string} getVehicles: function(tnEntities : {Engine.Entity}, wholePath : boolean): {Engine.Entity} getVehiclesWithState: function(state : TransportVehicleState): {Engine.Entity} getVehiclesForMaintenanceStation: function(maintenanceStation : Engine.Entity): {Engine.Entity} isVehicleMaintainedByStation: function(vehicle : Engine.Entity, maintenanceStation : Engine.Entity): boolean getLineCargoInfo: function(lineEntity : Engine.Entity, cargoTypeId : CargoTypeId): LineCargoInfo end

Transport Vehicle System.
Manages the movement and behaviour of transport vehicles. This covers all vehicles transporting cargo and passengers.

TransportVehicleSystem.getDepotVehicles🔗

function TransportVehicleSystem.getDepotVehicles(depotEntity : Engine.Entity): {Engine.Entity}

Gets all vehicles that are in a depot.

Parameters
  • depotEntity :Engine.Entity — the entity of the depot
Returns
  1. {Engine.Entity}

TransportVehicleSystem.getGoingToDepotVehicles🔗

function TransportVehicleSystem.getGoingToDepotVehicles(depotEntity : Engine.Entity): {Engine.Entity}

Gets all vehicles heading for the depot.

Parameters
  • depotEntity :Engine.Entity — the entity of the depot
Returns
  1. {Engine.Entity}

TransportVehicleSystem.getInfo🔗

function TransportVehicleSystem.getInfo(transportVehicleEntity : Engine.Entity): any

Gets additional information about the vehicle.

Parameters
  • transportVehicleEntity :Engine.Entity — the entity of the transport vehicle
Returns
  1. any — info about the transport vehicle

TransportVehicleSystem.getLine2VehicleMap🔗

function TransportVehicleSystem.getLine2VehicleMap(): {Engine.Entity : {Engine.Entity}}

Gets a map of lines to the vehicles using the line.

Returns
  1. {Engine.Entity : {Engine.Entity}}

TransportVehicleSystem.getLineStopVehicles🔗

function TransportVehicleSystem.getLineStopVehicles(lineEntity : Engine.Entity, stopIndex : number): {Engine.Entity}

Gets the vehicle stopped at the stop of a line.

Parameters
  • lineEntity :Engine.Entity — the entity of the line
  • stopIndex :number — the index of the stop on the line
Returns
  1. {Engine.Entity}

TransportVehicleSystem.checkLineStopForVehicleOverlength🔗

function TransportVehicleSystem.checkLineStopForVehicleOverlength(lineEntity : Engine.Entity, stopIndex : number): {StationTerminal : boolean}

Checks whether the specified stop has terminals that are too short for optimal loading.

Parameters
  • lineEntity :Engine.Entity — the entity of the line
  • stopIndex :number — the index of the stop on the line
Returns
  1. {StationTerminal : boolean}

TransportVehicleSystem.getLineVehicles🔗

function TransportVehicleSystem.getLineVehicles(lineEntity : Engine.Entity): {Engine.Entity}

Gets all vehicles using a given line.

Parameters
  • lineEntity :Engine.Entity — the entity of the line
Returns
  1. {Engine.Entity}

TransportVehicleSystem.getNoPathVehicles🔗

function TransportVehicleSystem.getNoPathVehicles(): {Engine.Entity}

Gets all vehicles that cannot find a path to their destination.

Returns
  1. {Engine.Entity}

TransportVehicleSystem.getVehicleNames🔗

function TransportVehicleSystem.getVehicleNames(carrier : Carrier): {string}

Gets the vehicle names of all vehicles for the given carrier.

Parameters
  • carrier :Carrier — the carrier for which the names should be fetched
Returns
  1. {string}

TransportVehicleSystem.getVehicles🔗

function TransportVehicleSystem.getVehicles(tnEntities : {Engine.Entity}, wholePath : boolean): {Engine.Entity}

Gets the vehicle using a certain transport network.

Parameters
  • tnEntities :{Engine.Entity} — list of transport network entities
  • wholePath :boolean — true if the vehicle has to use the whole path
Returns
  1. {Engine.Entity}

TransportVehicleSystem.getVehiclesWithState🔗

function TransportVehicleSystem.getVehiclesWithState(state : TransportVehicleState): {Engine.Entity}

Gets all vehicles that are in the given state. This can be used, for instance, to obtain a list of all vehicles
currently waiting at a terminal.

Parameters
  • state :TransportVehicleState — A state to filter the vehicles
Returns
  1. {Engine.Entity}

TransportVehicleSystem.getVehiclesForMaintenanceStation🔗

function TransportVehicleSystem.getVehiclesForMaintenanceStation(maintenanceStation : Engine.Entity): {Engine.Entity}

Gets all vehicles that are maintained by the given maintenance station.

Parameters
  • maintenanceStation :Engine.Entity — the entity of the maintenance station
Returns
  1. {Engine.Entity}

TransportVehicleSystem.isVehicleMaintainedByStation🔗

function TransportVehicleSystem.isVehicleMaintainedByStation(vehicle : Engine.Entity, maintenanceStation : Engine.Entity): boolean

Checks if the vehicle is maintained by the given maintenance station.

Parameters
  • vehicle :Engine.Entity — the entity of the vehicle
  • maintenanceStation :Engine.Entity — the entity of the maintenance station
Returns
  1. boolean

TransportVehicleSystem.getLineCargoInfo🔗

function TransportVehicleSystem.getLineCargoInfo(lineEntity : Engine.Entity, cargoTypeId : CargoTypeId): LineCargoInfo

Gets cargo info for a line.

Parameters
  • lineEntity :Engine.Entity — the entity of the line
  • cargoTypeId :CargoTypeId — the id of the cargo type
Returns
  1. LineCargoInfo

VehicleDepotSystem🔗

global record VehicleDepotSystem getDepotForInNodeId: function(nodeId : NodeId): Engine.Entity forEach: function(Engine.Entity) end

Vehicle Depot System.
Manages depots and vehicles in depots.

VehicleDepotSystem.getDepotForInNodeId🔗

function VehicleDepotSystem.getDepotForInNodeId(nodeId : NodeId): Engine.Entity

Gets the depot entity to which the node belongs.

Parameters
  • nodeId :NodeId — the id of the node for which the depot should be fetched
Returns
  1. Engine.Entity

VehicleDepotSystem.forEach🔗

function VehicleDepotSystem.forEach(Engine.Entity)

Loops over all depots.

Parameters
  • Engine.Entity
Transport Fever 3 Wiki
Gameplay ReferenceComing soon
●
Modding Manual
  • api
  • api.cmd
  • api.engine
  • api.engine.system
  • api.engine.util
  • api.gui
  • api.res
  • api.type
  • api.type.mod
  • api.type.modhub
  • api.type.transformator
  • app
  • main
  • content
    • base
      • difficulty_util
      • model_metadata_util
      • post_run_util
    • climates
      • gen
        • map_gen_util_serialized
    • game_mechanics
      • achievements
        • sound
          • achievement_sfx
      • celebrations
        • celebration_react_util
        • gui
          • sound
            • celebration_sfx
      • company
        • company
        • company_metadata
        • company_progression_util
        • company_react_util
        • company_static_util
        • company_util
        • explorations
          • exploration_plane
        • prospection_metadata
        • sound
          • company_sfx
      • emission
        • emission_config_metadata
        • emission_metadata
        • emissions
      • finance
        • account
        • finances_react_util
        • finances_util
        • loan
        • loan_util
        • sound
          • finance_sfx
      • fun_elements
        • blimp_util
        • custom_entity_util
        • fun_elements
        • rocket_util
        • ufo_util
      • game_time
        • game_time
      • industries
        • industries
      • notifications
        • gui
          • notification_colors
          • sound
            • notification_sfx
        • notification_legacy_util
        • notification_util
        • notifications
        • types
          • notification_react_util
          • notification_types
      • subventions
        • specific_subvention
        • subvention
        • subvention_legacy_util
        • subvention_util
        • subventions_gui
      • towns
        • district_colors
        • sound
          • town_sfx
        • town_cargo
        • town_growth_metadata
        • town_marketing_metadata
        • town_react_util
        • town_util
        • town_util_parallel
        • towns
    • gui
      • construction
        • construction_colors
        • construction_desc_react_util
        • construction_menu
        • construction_react_util
        • sound
          • construction_sfx
        • track_description_metadata
        • track_modifier_metadata
      • context_helper
        • context_helper
      • entity_window
        • animal
          • animal_eow
        • empty_construction
          • empty_construction_eow
        • entity_window_hud
        • entity_window_util
        • eow_extension_util
        • fun_elements
          • fun_elements_eow
        • gameplay_colors
        • industry
          • industry_eow
        • industry_react_util
        • line
          • line_eow
        • maintenance_station
          • maintenance_station_eow
        • perk
          • perk_eow
        • sim_person
          • sim_person_eow
        • station_group
          • station_group_eow
        • town
          • town_eow
        • town_building
          • town_building_eow
        • vehicle
          • vehicle_eow
        • view_manager
        • view_manager_util
        • warehouse
          • warehouse_eow
      • game_bar
        • game_bar
        • game_bar_widgets
      • guidesystem
        • sound
          • guidesystem_sfx
      • hud
        • hud_gui_config
        • hud_react_util
      • layers
        • layer_cargo
        • layer_cargo_flow
        • layer_colors
        • layer_noise
        • layer_pollution
        • layer_public_transport
        • layer_react_util
        • layer_traffic
        • layers_button_ridge
      • line_vehicle_mgmt
        • cargofilter_window
        • feedback_list_util
        • line
        • line_react_util
        • line_util
        • manager_hud_util
        • manager_tooltips_util
        • manager_window
        • sound
          • lvm_sfx
        • vehicle_list_react_util
        • vehicle_react_util
        • vehicle_store
        • vehicle_store_table
        • vehicle_store_util
        • vehicle_store_window
        • vehicle_util
      • main
        • button_react_util
        • callout_react_util
        • cargo_react_util
        • cargo_util
        • collapsible_checkbox_list
        • content_card
        • credits_react_util
        • default_colors
        • disable_features
        • engine_react_util
        • free_cam_options
        • game_context
        • game_react_globals
        • game_tooltips
        • game_windows
        • gui_react_util
        • gui_res_modding
        • hud_icon_toolbox
        • industry_util
        • input_action_colors
        • main_mod_button_area
        • menu_category_util
        • mod_entry_point
        • particle_colors
        • particle_react_util
        • popover_react_util
        • radial_menu_extension
        • script_param_util
        • selection_colors
        • selector
        • selector_react_util
        • styleutil
        • tile_list_react_util
        • tool_react_util
        • town_hud_react_util
      • map_editor
        • map_editor
      • menu
        • dialog_react_util
        • difficulty_react_util
        • graphics_presets_util
        • main_menu
        • map_preview_colors
        • menu_icon_react_util
        • menu_util
        • mod_colors
        • mod_manager_react_util
        • mod_util
        • new_game_react_util
        • paradox_react_util
        • releasenotes_util
        • savegame_react_util
        • sound
          • main_menu_sfx
      • sound
        • gui_comp_sfx
      • statistics
        • statistics
        • statistics_react_util
    • industries
      • industry_productivity_util
      • industry_workers
    • infrastructure
      • traffic_light
        • traffic_light
    • landmarks
      • hq
        • headquarter_util_serialized
      • landmark
      • landmark_util
      • landmark_util_serialized
    • mission
      • arrival_tracker
      • builder_util
      • calendar
      • guide_system
        • guide_system_react
        • guides
          • guide_event
          • guide_generic
          • guide_state
          • guide_timer
          • guide_ui_event
      • mission_boot_util
      • mission_colors
      • mission_framework
        • mission_end_window_util
        • mission_framework_react
        • mission_framework_react_util
        • mission_framework_util
        • mission_framework_util_entity
        • mission_framework_util_line
        • mission_interface
      • mission_pathfinding_util
      • mission_react_util
      • mission_task_util
      • mission_types
      • modifier
      • name_util
      • tasks
        • assign_vehicle
          • mission_task_assign_vehicle
          • mission_task_visit_stations_ordered
        • auto_builder
          • mission_task_electrify
          • mission_task_track_builder
          • prepare_track_building_util
        • build_construction
          • mission_task_build_construction
          • mission_task_build_construction_util
          • mission_task_build_construction_variant
        • build_path
          • mission_task_build_path
        • bulldoze
          • mission_task_auto_bulldoze
          • mission_task_bulldoze
        • buy_vehicle
          • mission_task_buy_vehicle
          • mission_task_clone_vehicle
        • click_and_collect_custom_entity
          • mission_task_collect_entity
          • mission_task_spawn_entity
        • click_entity
          • mission_task_click_entity
        • connect_nodes
          • mission_task_connect_nodes
        • create_line
          • mission_task_create_line
          • mission_task_create_line_for_towns
          • mission_task_stop_config
        • cutscene
          • mission_task_cutscene
        • dialogue
          • mission_task_dialogue
        • finish
          • mission_task_finish
        • guide
          • mission_task_guide
          • mission_task_guide_collect_entity
        • join
          • mission_task_join
        • mission_dialogue_data
        • non_bulldozable
          • mission_task_non_bulldozable
        • observe_entity
          • mission_task_observe_entity
        • page
          • mission_task_page
        • spawn_sims
          • mission_task_spawn_sims
          • sampling_util
        • subsidies
          • mission_task_guide_subsidies
          • mission_task_subsidies
        • task_decorator
        • town_rating
          • mission_task_town_rating
          • mission_task_town_rating_observer
        • town_size
          • mission_task_town_size
        • transfer_ownership
          • mission_task_transfer_ownership
          • transfer_ownership_util
        • transport_cargo
          • mission_task_empty_stocks
          • mission_task_industry_boosted
          • mission_task_transport_cargo
          • mission_task_transport_cargo_faster
          • mission_task_transport_cargo_observer
          • mission_task_transport_passengers
        • utility
          • mission_task_cargo_needs
          • mission_task_check_entities
          • mission_task_check_landmark_level
          • mission_task_clouds
          • mission_task_highlight
          • mission_task_industry_activity
          • mission_task_landmark_requirements
          • mission_task_play_sound
          • mission_task_protected_entities
          • mission_task_relay_update
          • mission_task_send_command
          • mission_task_send_event
          • mission_task_store_any
          • mission_task_substitute_constructions
          • mission_task_time_of_day
          • mission_task_town_development
          • mission_town_util
        • vehicle_util
          • mission_task_replace_vehicles
          • mission_task_sell_vehicles
          • mission_task_start_vehicles
          • mission_task_vehicle_modifier
          • mission_task_vehicle_position
          • mission_vehicle_util
        • wait
          • mission_task_wait
          • mission_task_wait_event
          • mission_task_wait_for
          • mission_task_wait_ui_event
        • waypoints
          • mission_task_waypoints
      • tutorial
        • tasks
          • mission_task_tutorial_init
        • tutorial_story_util
    • scripts
      • app_util
      • audio_util
      • builtin
      • construction
        • asset_util
        • collider_util_serialized
        • construction_config_metadata
        • construction_specialization_metadata
        • construction_util_serialized
        • lane_util_serialized
        • modules_util_serialized
        • param_util
        • street_util_serialized
      • entity_util
      • gamescript
      • journal
      • lang_util
      • log
      • mat4
      • math_util
      • metadata_util
      • polygon_util
      • random_util
      • react
      • soundset
      • string_util
      • table_util
      • tex_util
      • transformator_util
      • util
        • config_util
        • listutil
        • romberg_util
        • town_growth_function
      • vec2
      • vec3
      • vec4
    • stations
      • station_metadata
    • vehicle
      • vehicle_modifier

Generated 19-08-2026

Transport Fever 3 ● Urban Games © 2026