API de mods

Consulta las opciones de archivos y las clases de scripts que gestionan la simulación.

Símbolos de scripts

El índice recoge las funciones, propiedades, señales, constantes y enumeraciones con nombre de las clases de simulación y de mods. Las firmas y los comentarios del código están en inglés. Mod define los puntos de entrada de los scripts. Las demás clases y los miembros que empiezan por guion bajo pueden cambiar entre versiones.

Resultados

Mod

  • Mod.info varMetadata for the loaded mod.
    Enlace a esta entradavar info := {}

    Common keys are id, name, version, author, description, and path. Use this to inspect which copy was loaded.

    Declarado en scripts/core/mod.gd:21
  • Mod._on_load funcRuns after Fourways reapplies enabled mods, including after a rescan.
    Enlace a esta entradafunc _on_load() -> void

    Read mod files or initialize settings here. Use _on_new_game or _on_game_loaded for work that needs a simulation.

    Devuelve
    void
    Declarado en scripts/core/mod.gd:25
  • Mod._on_new_game funcA new game has been created (world generated, companies founded), before the first day.
    Enlace a esta entradafunc _on_new_game(_sim: Sim) -> void
    Parámetros
    • _sim: Sim
    Devuelve
    void
    Declarado en scripts/core/mod.gd:30
  • Mod._on_game_loaded funcA saved game has been loaded.
    Enlace a esta entradafunc _on_game_loaded(_sim: Sim) -> void
    Parámetros
    • _sim: Sim
    Devuelve
    void
    Declarado en scripts/core/mod.gd:35
  • Mod._on_day funcRuns once for each simulated calendar day after daily town, competitor and vehicle updates, and before the daily goal checks and month-end bookkeeping.
    Enlace a esta entradafunc _on_day(_sim: Sim) -> void

    Read sim.day_int for the day that has just started.

    Parámetros
    • _sim: Sim
    Devuelve
    void
    Declarado en scripts/core/mod.gd:40
  • Mod._on_month funcRuns at the month boundary after Fourways closes the previous month’s accounts.
    Enlace a esta entradafunc _on_month(_sim: Sim) -> void

    Money credited here is recorded in the new month.

    Parámetros
    • _sim: Sim
    Devuelve
    void

    Ejemplo

    func _on_month(sim: Sim) -> void:
        sim.company.earn(500)
        news(sim, L.t("Monthly transport grant"), "good")
    Declarado en scripts/core/mod.gd:45
  • Mod._on_year funcAt the start of every year; year is the one that has just ended.
    Enlace a esta entradafunc _on_year(_sim: Sim, _year: int) -> void
    Parámetros
    • _sim: Sim
    • _year: int
    Devuelve
    void
    Declarado en scripts/core/mod.gd:50
  • Mod._on_delivery funcRuns after a vehicle earns a fare by delivering cargo.
    Enlace a esta entradafunc _on_delivery(_sim: Sim, _vehicle: Vehicle, _station: Station, _amount: int) -> void

    amount is the total payment for that unload, in game dollars. It is not the number of units delivered or a per-cargo breakdown.

    Parámetros
    • _sim: Sim
    • _vehicle: Vehicle
    • _station: Station
    • _amount: int
    Devuelve
    void
    Declarado en scripts/core/mod.gd:55
  • Mod._on_vehicle_bought funcA vehicle has been bought.
    Enlace a esta entradafunc _on_vehicle_bought(_sim: Sim, _vehicle: Vehicle) -> void
    Parámetros
    • _sim: Sim
    • _vehicle: Vehicle
    Devuelve
    void
    Declarado en scripts/core/mod.gd:60
  • Mod._on_station_built funcA station has been built (or extended).
    Enlace a esta entradafunc _on_station_built(_sim: Sim, _station: Station) -> void
    Parámetros
    • _sim: Sim
    • _station: Station
    Devuelve
    void
    Declarado en scripts/core/mod.gd:65
  • Mod._on_news funcRuns before a news item is posted.
    Enlace a esta entradafunc _on_news(_sim: Sim, _item: Dictionary) -> bool

    Return false to suppress it or true to let it proceed through the other active mods. The item includes text, kind, pos, and day. Posting news from this hook calls the hook again.

    Parámetros
    • _sim: Sim
    • _item: Dictionary
    Devuelve
    bool
    Declarado en scripts/core/mod.gd:70
  • Mod._save funcReturns the mod’s persistent state as a dictionary of plain values.
    Enlace a esta entradafunc _save(_sim: Sim) -> Dictionary

    An empty dictionary is omitted, so _load will not run for that save. Return the data rather than writing a separate file.

    Parámetros
    • _sim: Sim
    Devuelve
    Dictionary
    Declarado en scripts/core/mod.gd:76
  • Mod._load funcRestores this mod’s data before _on_game_loaded.
    Enlace a esta entradafunc _load(_sim: Sim, _data: Dictionary) -> void

    Called only if the save contains a dictionary for this mod’s ID. Use data.get("key", default) so older saves can omit keys added by a later mod version.

    Parámetros
    • _sim: Sim
    • _data: Dictionary
    Devuelve
    void
    Declarado en scripts/core/mod.gd:80
  • Mod.news funcPost a news item ("good", "info", "warn" or "bad").
    Enlace a esta entradafunc news(sim: Sim, text: String, kind: String = "info", at: Vector2 = Vector2(-1, -1)) -> void

    at is a tile to jump to when it's clicked.

    Parámetros
    • sim: Sim
    • text: String
    • kind: String = "info"
    • at: Vector2 = Vector2(-1, -1)
    Devuelve
    void
    Declarado en scripts/core/mod.gd:87
  • Mod.note funcWrite a line to the game's log, tagged with the mod's id.
    Enlace a esta entradafunc note(text: String) -> void
    Parámetros
    • text: String
    Devuelve
    void
    Declarado en scripts/core/mod.gd:92
  • Mod.path funcA file inside the mod's folder, e.g.
    Enlace a esta entradafunc path(file: String) -> String

    path("data/extra.json").

    Parámetros
    • file: String
    Devuelve
    String
    Declarado en scripts/core/mod.gd:97

Sim

  • Sim.news_posted signal{"text", "kind": good|info|warn|bad, "pos": Vector2, "day"[, "veh"][, "urgent"][, "world"]}
    Enlace a esta entradasignal news_posted(item: Dictionary)
    Parámetros
    • item: Dictionary
    Devuelve
    signal news_posted(item: Dictionary)
    Declarado en scripts/sim/sim.gd:6
  • Sim.income signal
    Enlace a esta entradasignal income(vehicle: Vehicle, station: Station, amount: int)
    Parámetros
    • vehicle: Vehicle
    • station: Station
    • amount: int
    Devuelve
    signal income(vehicle: Vehicle, station: Station, amount: int)

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:7
  • Sim.vehicles_changed signal
    Enlace a esta entradasignal vehicles_changed
    Devuelve
    signal vehicles_changed

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:8
  • Sim.company_bankrupt signal
    Enlace a esta entradasignal company_bankrupt(c: Company)
    Parámetros
    • c: Company
    Devuelve
    signal company_bankrupt(c: Company)

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:9
  • Sim.SPEEDS const
    Enlace a esta entradaconst SPEEDS := [0, 1, 2, 4, 8]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:11
  • Sim.map varThe live world map.
    Enlace a esta entradavar map: WorldMap

    Use it to read towns, industries, stations, and terrain. Use simulation construction methods when changing infrastructure.

    Declarado en scripts/sim/sim.gd:13
  • Sim.companies varThe companies in the current simulation, including the player.
    Enlace a esta entradavar companies: Array[Company] = []

    Compare a vehicle or station’s owner with a company object to filter its assets.

    Declarado en scripts/sim/sim.gd:14
  • Sim.company varThe player’s company.
    Enlace a esta entradavar company: Company

    Use its id for council ratings and its earn() and spend() methods to record changes in the accounts.

    Declarado en scripts/sim/sim.gd:15
  • Sim.vehicles varThe vehicles active in the current simulation.
    Enlace a esta entradavar vehicles: Array[Vehicle] = []

    Use buying and selling methods to manage ownership and accounting.

    Declarado en scripts/sim/sim.gd:16
  • Sim.next_vehicle_id var
    Enlace a esta entradavar next_vehicle_id := 1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:17
  • Sim.seed_value var
    Enlace a esta entradavar seed_value := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:18
  • Sim.rng varThe simulation’s seeded random-number generator.
    Enlace a esta entradavar rng := RandomNumberGenerator.new()

    Calls advance the same random stream the simulation uses.

    Declarado en scripts/sim/sim.gd:19
  • Sim.day var
    Enlace a esta entradavar day := 0.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:20
  • Sim.day_int var
    Enlace a esta entradavar day_int := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:21
  • Sim.speed var
    Enlace a esta entradavar speed := 1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:22
  • Sim.news var
    Enlace a esta entradavar news: Array = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:23
  • Sim.ais varAI controllers (see ai.gd)
    Enlace a esta entradavar ais: Array = []Declarado en scripts/sim/sim.gd:24
  • Sim.options varGame rules chosen at setup: "cost" construction cost multiplier, "blocking" (trains wait for each other at signals, and crash into each other where there are none), "ai_level" 0..2, "max_loan".
    Enlace a esta entradavar options := {"cost": 1.0, "blocking": false, "ai_level": 1, "max_loan": Data.MAX_LOAN, "depots": false, "breakdowns": 0, "goal": "none"}

    "depots": road vehicles and trains are bought at (and serviced in) depots; "breakdowns" 0..2; "goal": the company goal (one of Goals.GOAL_IDS).

    Declarado en scripts/sim/sim.gd:29
  • Sim.occupied varsignal block id -> Vehicle (realistic blocking only)
    Enlace a esta entradavar occupied := {}Declarado en scripts/sim/sim.gd:30
  • Sim.CRASH_R constTrain crashes (see _check_crashes).
    Enlace a esta entradaconst CRASH_R := 0.25

    Not saved: after loading, trains that already overlap are let go until they part. how close a train's nose may come to another train before they touch

    Declarado en scripts/sim/sim.gd:33
  • Sim.CRASH_STEP constthe most a train moves between two crash checks
    Enlace a esta entradaconst CRASH_STEP := 0.2Declarado en scripts/sim/sim.gd:34
  • Sim.CRASH_CELL constmap cells (in tiles) for finding trains near each other
    Enlace a esta entradaconst CRASH_CELL := 8.0Declarado en scripts/sim/sim.gd:35
  • Sim._touching var"id:id" -> true: trains overlapping at the last check that didn't crash
    Enlace a esta entradavar _touching := {}Declarado en scripts/sim/sim.gd:36
  • Sim._checked varvehicle id -> true: trains taking part in the last check
    Enlace a esta entradavar _checked := {}Declarado en scripts/sim/sim.gd:37
  • Sim.WRECK_DAYS constCrashed trains lying on the line until it is cleared, WRECK_DAYS later: [{"pos": Vector2 (where they met), "day": float, "trains": [Vehicle, Vehicle] (as they were, for the view), "tiles": {Vector2i: true}}].
    Enlace a esta entradaconst WRECK_DAYS := 20.0

    Trains stop short of a wreck's tiles (see wreck_tiles). Not saved.

    Declarado en scripts/sim/sim.gd:41
  • Sim.wrecks var
    Enlace a esta entradavar wrecks: Array = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:42
  • Sim.wreck_tiles varVector2i -> true: track blocked by a wreck
    Enlace a esta entradavar wreck_tiles := {}Declarado en scripts/sim/sim.gd:43
  • Sim.road_at varQueues (RAIL-26): who is where, worked out afresh at the start of every advance (_index_queues) and kept up to date as vehicles take a berth or a stand.
    Enlace a esta entradavar road_at := PackedInt32Array()

    Road vehicles by the tile their front is in, as lists threaded through road_next, so each one only looks at the few near it. tile index -> index in road_list of a road vehicle there (-1: none)

    Declarado en scripts/sim/sim.gd:47
  • Sim.road_list var
    Enlace a esta entradavar road_list: Array[Vehicle] = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:48
  • Sim.road_next varindex in road_list -> the next one in the same tile (-1: none)
    Enlace a esta entradavar road_next := PackedInt32Array()Declarado en scripts/sim/sim.gd:49
  • Sim._road_tiles varthe tiles set in road_at, to clear again
    Enlace a esta entradavar _road_tiles := PackedInt32Array()Declarado en scripts/sim/sim.gd:50
  • Sim.ships_at vartile -> a ship whose front is in it
    Enlace a esta entradavar ships_at := {}Declarado en scripts/sim/sim.gd:51
  • Sim.stands varStation -> aircraft on the ground there or coming in to land
    Enlace a esta entradavar stands := {}Declarado en scripts/sim/sim.gd:52
  • Sim.holding_over varStation -> aircraft holding over it
    Enlace a esta entradavar holding_over := {}Declarado en scripts/sim/sim.gd:53
  • Sim.missing_mods varAfter loading: mods this game was saved with that aren't switched on now, and vehicles left out because their model came from one of them.
    Enlace a esta entradavar missing_mods: Array = []Declarado en scripts/sim/sim.gd:56
  • Sim.dropped_vehicles var
    Enlace a esta entradavar dropped_vehicles := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:57
  • Sim.undo varThe player's last construction actions, for Ctrl+Z (see undo.gd).
    Enlace a esta entradavar undo := UndoStack.new()

    Not saved.

    Declarado en scripts/sim/sim.gd:59
  • Sim.goals varfirst steps, achievements and the company goal (RAIL-25)
    Enlace a esta entradavar goals := Goals.new()Declarado en scripts/sim/sim.gd:60
  • Sim.opportunities varsubsidies and town requests (RAIL-24)
    Enlace a esta entradavar opportunities := Opportunities.new()Declarado en scripts/sim/sim.gd:61
  • Sim.lines varThe player's lines: vehicles sharing one order list (see line.gd).
    Enlace a esta entradavar lines: Array = []Declarado en scripts/sim/sim.gd:63
  • Sim.next_line_id var
    Enlace a esta entradavar next_line_id := 1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:64
  • Sim.next_industry_id varIndustries open and close during the game (RAIL-23, IndustryLife).
    Enlace a esta entradavar next_industry_id := 0

    Ids are never used twice, so nothing that remembers a closed industry's id mistakes a new one for it (see new_industry_id).

    Declarado en scripts/sim/sim.gd:67
  • Sim.industry_target varHow many industries the map started with (counted at the first month end): openings and closures lean back toward it.
    Enlace a esta entradavar industry_target := 0Declarado en scripts/sim/sim.gd:70
  • Sim.industry_room varThe room the map has for industries (WorldGen.industry_room), worked out when first needed.
    Enlace a esta entradavar industry_room := Vector2i(-1, -1)

    Not saved: the coast hardly moves in a game.

    Declarado en scripts/sim/sim.gd:73
  • Sim.introduce_wait varA new era's kinds of industry that found no site (IndustryLife._introduce): type -> the game day before which they are not tried again.
    Enlace a esta entradavar introduce_wait := {}

    Not saved.

    Declarado en scripts/sim/sim.gd:76
  • Sim.create static funcA brand-new game from setup parameters (see the new-game screen for the keys).
    Enlace a esta entradastatic func create(params: Dictionary) -> Sim
    Parámetros
    • params: Dictionary
    Devuelve
    Sim
    Llama a
    WorldGen.generate, Calendar.day_of_year_start, AiPlayer.create_competitors, Mods.hook
    Declarado en scripts/sim/sim.gd:80
  • Sim._init func
    Enlace a esta entradafunc _init(p_seed: int, size: int = Const.MAP_SIZE, generate: bool = true, size_h: int = -1) -> void
    Parámetros
    • p_seed: int
    • size: int = Const.MAP_SIZE
    • generate: bool = true
    • size_h: int = -1
    Devuelve
    void
    Llama a
    WorldGen.generate, L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:110
  • Sim.date_text funcFormats the current simulation day for display using the active language.
    Enlace a esta entradafunc date_text() -> String

    For date calculations use day_int or year().

    Devuelve
    String
    Llama a
    Calendar.format
    Declarado en scripts/sim/sim.gd:121
  • Sim.year funcReturns the calendar year of day_int.
    Enlace a esta entradafunc year() -> int

    Use it for year-based rules instead of dividing the elapsed day count by 365.

    Devuelve
    int
    Llama a
    Calendar.from_day
    Declarado en scripts/sim/sim.gd:125
  • Sim.tick funcAdvance by real seconds at the current game speed.
    Enlace a esta entradafunc tick(real_dt: float) -> void
    Parámetros
    • real_dt: float
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:132
  • Sim.advance funcAdvance by dd game days.
    Enlace a esta entradafunc advance(dd: float) -> void
    Parámetros
    • dd: float
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:139
  • Sim._update_occupancy funcWhich track blocks trains are standing in (only matters with realistic blocking).
    Enlace a esta entradafunc _update_occupancy() -> void

    Since RAIL-80 junctions are blocks too, so this runs without signals as well.

    Devuelve
    void
    Declarado en scripts/sim/sim.gd:162
  • Sim._index_queues funcWhere road vehicles, ships and aircraft are, for the queues (RAIL-26).
    Enlace a esta entradafunc _index_queues() -> void

    One pass over the vehicles, with nothing allocated for each road vehicle: those out of a depot go into road_at by the tile of their front.

    Devuelve
    void
    Declarado en scripts/sim/sim.gd:206
  • Sim.claim_stand funcWhether a plane may land at airport st now (RAIL-26), and if so it is counted in: fewer than Vehicle.STANDS aircraft are on the ground there or coming in to land.
    Enlace a esta entradafunc claim_stand(st: Station, holding: bool) -> bool

    One already holding goes before one only just arriving.

    Parámetros
    • st: Station
    • holding: bool
    Devuelve
    bool
    Declarado en scripts/sim/sim.gd:252
  • Sim._rail_steps funcHow many steps to move the trains in this frame, so none goes further than CRASH_STEP in one.
    Enlace a esta entradafunc _rail_steps(dd: float) -> int

    Only where two trains could meet within the frame: everywhere else one step does (most frames, since trains mostly run apart, and stepping every train many times a frame is what costs).

    Parámetros
    • dd: float
    Devuelve
    int
    Declarado en scripts/sim/sim.gd:263
  • Sim._check_crashes funcTrains on the same track crash (with realistic blocking): when a train's nose runs into another train, both are wrecked.
    Enlace a esta entradafunc _check_crashes() -> void

    Signals are what keeps them apart. Trains in a depot shed or being serviced there are out of the way. Two trains that already overlapped at the last check, or where one has only just appeared (bought onto a busy platform, out of the depot together with another, a game just loaded), are let go until they part: only running into each other counts.

    Devuelve
    void
    Declarado en scripts/sim/sim.gd:298
  • Sim._contact funcWhere the nose of train a touches the body of train b on the same level (not one on a bridge over the other), or null.
    Enlace a esta entradafunc _contact(a: Dictionary, b: Dictionary) -> Variant

    a and b are entries of _check_crashes' list.

    Parámetros
    • a: Dictionary
    • b: Dictionary
    Devuelve
    Variant
    Declarado en scripts/sim/sim.gd:346
  • Sim._crash funcTwo trains have run into each other at at: both are wrecked, with all they carried.
    Enlace a esta entradafunc _crash(a: Vehicle, b: Vehicle, at: Vector2) -> void
    Parámetros
    • a: Vehicle
    • b: Vehicle
    • at: Vector2
    Devuelve
    void
    Llama a
    Station.nearest_town, L.t
    Declarado en scripts/sim/sim.gd:374
  • Sim._dir_index static func
    Enlace a esta entradastatic func _dir_index(v: Vector2) -> int
    Parámetros
    • v: Vector2
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:403
  • Sim._on_day func
    Enlace a esta entradafunc _on_day() -> void
    Devuelve
    void
    Llama a
    Economy.produce, IndustryLife.near_wind_farm, Calendar.from_day, Mods.hook, Economy.monthly, IndustryLife.monthly, Data.intros, Data.model, L.t, L.lower

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:409
  • Sim._growth_context funcWhat a town's land values depend on: stations with recent passenger service and nearby industry.
    Enlace a esta entradafunc _growth_context(t: Town) -> Dictionary
    Parámetros
    • t: Town
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:471
  • Sim._new_era funcA new age: industry modernises (more output from the same mines, fields and plants, except those on their way out), and the chains change (RAIL-29: Sim.sync_era has moved the map to it already).
    Enlace a esta entradafunc _new_era(era: Dictionary) -> void
    Parámetros
    • era: Dictionary
    Devuelve
    void
    Llama a
    Data.retiring, L.t, Data.era_changes
    Declarado en scripts/sim/sim.gd:492
  • Sim.sync_era funcMove the industry chains to the era of the date (RAIL-29): at the start of a game, after loading and at every month end, so a game that crosses into a new era (or was saved before the chains changed) takes it on.
    Enlace a esta entradafunc sync_era() -> void

    Stations look again at what they accept and supply.

    Devuelve
    void
    Llama a
    Data.era_index
    Declarado en scripts/sim/sim.gd:504
  • Sim._match_days funcStadiums hold a match once a month, each on its own day (see match_offset).
    Enlace a esta entradafunc _match_days() -> void

    The crowd of fans is one per stadium: the stations that reach it share it the way they share ordinary passengers (Economy.shares: the best two by rating), so a second station next to a stadium doesn't double it.

    Devuelve
    void
    Llama a
    Economy.shares, L.t
    Declarado en scripts/sim/sim.gd:516
  • Sim.match_offset static funcThe day in each 30 a stadium standing at t (its north-west tile) holds its match: the match is on the days where (day + this) is a multiple of 30.
    Enlace a esta entradastatic func match_offset(t: Vector2i) -> int

    TownLife shows the fans walking to it then.

    Parámetros
    • t: Vector2i
    Devuelve
    int
    Declarado en scripts/sim/sim.gd:546
  • Sim._update_town_service func
    Enlace a esta entradafunc _update_town_service(t: Town) -> void
    Parámetros
    • t: Town
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:550
  • Sim._yearly func
    Enlace a esta entradafunc _yearly(old_year: int) -> void
    Parámetros
    • old_year: int
    Devuelve
    void
    Llama a
    IndustryLife.yearly, L.t, Fmt.money

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:559
  • Sim._check_bankruptcy funcMonth end: companies in the red are warned, draw on their credit (rivals), and after Data.BANKRUPT_MONTHS months go bankrupt.
    Enlace a esta entradafunc _check_bankruptcy() -> void
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/sim.gd:578
  • Sim._go_bankrupt func
    Enlace a esta entradafunc _go_bankrupt(c: Company) -> void
    Parámetros
    • c: Company
    Devuelve
    void
    Llama a
    L.t, WorldMap.crossing_tiles

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:606
  • Sim.post_news funcveh: the id of the vehicle the news is about, if any (clicking the news opens it).
    Enlace a esta entradafunc post_news(text: String, kind: String, pos: Vector2, veh: int = 0, about: String = "", urgent: bool = false, world: bool = false) -> void

    about: the screen clicking it opens instead ("goals"). urgent: news the player mustn't miss (a crash of their trains: the HUD shows it on a card in the middle of the screen, see Hud.show_crash). world: see post_world_news.

    Parámetros
    • text: String
    • kind: String
    • pos: Vector2
    • veh: int = 0
    • about: String = ""
    • urgent: bool = false
    • world: bool = false
    Devuelve
    void
    Llama a
    Mods.allow_news
    Declarado en scripts/sim/sim.gd:671
  • Sim.post_world_news funcNews about the world rather than the player's company: rivals' new lines, other towns' requests coming and going, industries opening and closing.
    Enlace a esta entradafunc post_world_news(text: String, kind: String, pos: Vector2, about: String = "") -> void

    It goes in the News window (under All news), without a note popping up on screen, so the player's own news isn't lost among it.

    Parámetros
    • text: String
    • kind: String
    • pos: Vector2
    • about: String = ""
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:692
  • Sim.new_industry_id funcAn id for an industry opening now: never one an industry has had before, whether it is still on the map (one placed by hand, as test maps do, counts too) or has closed.
    Enlace a esta entradafunc new_industry_id() -> int
    Devuelve
    int
    Declarado en scripts/sim/sim.gd:698
  • Sim.vehicle_by_id funcThe vehicle with this id, or null.
    Enlace a esta entradafunc vehicle_by_id(id: int) -> Vehicle
    Parámetros
    • id: int
    Devuelve
    Vehicle
    Declarado en scripts/sim/sim.gd:706
  • Sim.on_income func
    Enlace a esta entradafunc on_income(v: Vehicle, st: Station, amount: int) -> void
    Parámetros
    • v: Vehicle
    • st: Station
    • amount: int
    Devuelve
    void
    Llama a
    Mods.hook

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:713
  • Sim._with_money funcMarks a plan as unaffordable if the company can't pay for it.
    Enlace a esta entradafunc _with_money(p: Dictionary, who: Company) -> Dictionary
    Parámetros
    • p: Dictionary
    • who: Company
    Devuelve
    Dictionary
    Llama a
    L.t, Fmt.money
    Declarado en scripts/sim/sim.gd:721
  • Sim._ownership funcTrack and stations belonging to other companies can't be touched.
    Enlace a esta entradafunc _ownership(p: Dictionary, who: Company, tiles: Array) -> Dictionary
    Parámetros
    • p: Dictionary
    • who: Company
    • tiles: Array
    Devuelve
    Dictionary
    Llama a
    L.t
    Declarado en scripts/sim/sim.gd:734
  • Sim.preview_line funcChecks a path of adjacent road or rail tiles for construction, ownership, and affordability.
    Enlace a esta entradafunc preview_line(kind: String, pts: Array[Vector2i], who: Company = null) -> Dictionary

    Returns a plan with ok, reason and cost without laying track or spending money.

    Parámetros
    • kind: String
    • pts: Array[Vector2i]
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_line
    Declarado en scripts/sim/sim.gd:754
  • Sim.build_line funcLays road or track along consecutive adjacent tiles and debits construction costs on success.
    Enlace a esta entradafunc build_line(kind: String, pts: Array[Vector2i], who: Company = null) -> Dictionary

    Pass at least two tiles as Array[Vector2i]. The return value is a construction plan, so check ok before using it.

    Parámetros
    • kind: String
    • pts: Array[Vector2i]
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.apply_line

    Ejemplo

    var tiles: Array[Vector2i] = [Vector2i(5, 6), Vector2i(6, 6)]
    var plan := sim.build_line("road", tiles)
    if not plan.ok:
        note(plan.reason)
    Declarado en scripts/sim/sim.gd:762
  • Sim.plan_route funcA line along pts (each tile next to the one before) with bridges and tunnels on it (crossings, as RouteBuilder.last_crossings gives them, RAIL-52): the stretches of land between them as build_line lays them and each crossing as build_crossing builds it.
    Enlace a esta entradafunc plan_route(kind: String, pts: Array[Vector2i], crossings: Array, who: Company = null) -> Dictionary

    Without the money check (see preview_route). Keys as plan_line's - "add" every piece, "cost" the total - plus "tiles" (every bridge span and tunnel tile), "spans" (bridge spans only) and "parts" (each stretch's and crossing's own plan, in order).

    Parámetros
    • kind: String
    • pts: Array[Vector2i]
    • crossings: Array
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_line, L.t, BuildOps.plan_bridge, BuildOps.plan_tunnel
    Declarado en scripts/sim/sim.gd:785
  • Sim._join_plan funcAdd a stretch's or crossing's plan to a route's (plan_route).
    Enlace a esta entradafunc _join_plan(p: Dictionary, part: Dictionary) -> void
    Parámetros
    • p: Dictionary
    • part: Dictionary
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:835
  • Sim.preview_route funcReturns the cost and validity of a road or rail route that can include bridges or tunnels.
    Enlace a esta entradafunc preview_route(kind: String, pts: Array[Vector2i], crossings: Array, who: Company = null) -> Dictionary

    It runs the route planner and checks funds without building the route.

    Parámetros
    • kind: String
    • pts: Array[Vector2i]
    • crossings: Array
    • who: Company = null
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:853
  • Sim.build_route funcBuild a route planned by preview_route: every stretch and crossing exactly as previewed, paid for at once, and taken back by one undo.
    Enlace a esta entradafunc build_route(kind: String, pts: Array[Vector2i], crossings: Array, who: Company = null) -> Dictionary
    Parámetros
    • kind: String
    • pts: Array[Vector2i]
    • crossings: Array
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.apply_crossing, BuildOps.apply_line
    Declarado en scripts/sim/sim.gd:860
  • Sim.preview_station funcChecks placement, ownership, council permission, and affordability for a new station or extension.
    Enlace a esta entradafunc preview_station(kind: String, pts: Array[Vector2i], axis: int, who: Company = null) -> Dictionary

    Returns a plan without building the station.

    Parámetros
    • kind: String
    • pts: Array[Vector2i]
    • axis: int
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_station, Station.nearest_town
    Declarado en scripts/sim/sim.gd:886
  • Sim.build_station funcBuilds or extends a station, charges the company, and fires Mod._on_station_built.
    Enlace a esta entradafunc build_station(kind: String, pts: Array[Vector2i], axis: int, who: Company = null) -> Dictionary

    Pass rail, road, dock, or air, a typed tile array, and an orientation. On success the plan includes the resulting station; on failure use reason.

    Parámetros
    • kind: String
    • pts: Array[Vector2i]
    • axis: int
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.apply_station, Mods.hook
    Declarado en scripts/sim/sim.gd:904
  • Sim.preview_bulldoze funcChecks which objects in the tile rectangle can be cleared by the company, and estimates the cost.
    Enlace a esta entradafunc preview_bulldoze(rect: Rect2i, who: Company = null) -> Dictionary

    Read the plan before calling build_bulldoze.

    Parámetros
    • rect: Rect2i
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_bulldoze, BuildOps.bulldoze_target, L.t, WorldMap.crossing_tiles
    Declarado en scripts/sim/sim.gd:924
  • Sim.build_bulldoze funcClears the allowed parts of a tile rectangle, updates track ownership counts, and charges the company.
    Enlace a esta entradafunc build_bulldoze(rect: Rect2i, who: Company = null) -> Dictionary

    Removing scenery and buildings can affect town council ratings.

    Parámetros
    • rect: Rect2i
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    UndoStack.bulldoze_tiles, BuildOps.apply_bulldoze
    Declarado en scripts/sim/sim.gd:957
  • Sim.preview_crossing funcBridges (b is the far ramp) and tunnels (from hillside tile a).
    Enlace a esta entradafunc preview_crossing(kind: String, type: String, a: Vector2i, b: Vector2i, who: Company = null, style: String = "") -> Dictionary
    Parámetros
    • kind: String
    • type: String
    • a: Vector2i
    • b: Vector2i
    • who: Company = null
    • style: String = ""
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_bridge, BuildOps.plan_tunnel, L.t
    Declarado en scripts/sim/sim.gd:981
  • Sim.build_crossing funcBuilds a bridge between the ramp tiles or a tunnel from the hillside tile.
    Enlace a esta entradafunc build_crossing(kind: String, type: String, a: Vector2i, b: Vector2i, who: Company = null, style: String = "") -> Dictionary

    Pass bridge or tunnel for type. A successful plan contains the new crossing.

    Parámetros
    • kind: String
    • type: String
    • a: Vector2i
    • b: Vector2i
    • who: Company = null
    • style: String = ""
    Devuelve
    Dictionary
    Llama a
    UndoStack.terraform_tiles, BuildOps.apply_crossing
    Declarado en scripts/sim/sim.gd:992
  • Sim.preview_signal funcChecks placement, ownership, and cost for the signal action on a rail tile.
    Enlace a esta entradafunc preview_signal(t: Vector2i, who: Company = null) -> Dictionary

    Returns the plan without applying it.

    Parámetros
    • t: Vector2i
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_signal
    Declarado en scripts/sim/sim.gd:1012
  • Sim.build_signal funcApplies the signal action to the rail tile after validating ownership and cost, and records the operation for undo.
    Enlace a esta entradafunc build_signal(t: Vector2i, who: Company = null) -> Dictionary
    Parámetros
    • t: Vector2i
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.apply_signal
    Declarado en scripts/sim/sim.gd:1019
  • Sim.preview_terraform funcChecks the cost and rules for raising or lowering a map corner.
    Enlace a esta entradafunc preview_terraform(corner: Vector2i, delta: int, who: Company = null) -> Dictionary

    It also rejects a plan if a vehicle occupies any affected tile.

    Parámetros
    • corner: Vector2i
    • delta: int
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_terraform, L.t
    Declarado en scripts/sim/sim.gd:1030
  • Sim.build_terraform funcApplies an affordable height change to a map corner.
    Enlace a esta entradafunc build_terraform(corner: Vector2i, delta: int, who: Company = null) -> Dictionary

    A positive delta raises it and a negative one lowers it.

    Parámetros
    • corner: Vector2i
    • delta: int
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    UndoStack.terraform_tiles, BuildOps.apply_terraform
    Declarado en scripts/sim/sim.gd:1042
  • Sim.preview_level funcLevel the tiles in rect to corner height height as far as the rules allow (see BuildOps.plan_level): tiles under vehicles or belonging to other companies are left alone too.
    Enlace a esta entradafunc preview_level(rect: Rect2i, height: int, who: Company = null) -> Dictionary
    Parámetros
    • rect: Rect2i
    • height: int
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    L.t, BuildOps.plan_level
    Declarado en scripts/sim/sim.gd:1057
  • Sim.build_level funcLevels the eligible tiles in a rectangle to a target corner height, charges the construction cost, and records the change for undo.
    Enlace a esta entradafunc build_level(rect: Rect2i, height: int, who: Company = null) -> Dictionary

    Check the returned plan for skipped tiles.

    Parámetros
    • rect: Rect2i
    • height: int
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    UndoStack.terraform_tiles, BuildOps.apply_level
    Declarado en scripts/sim/sim.gd:1073
  • Sim._level_upsets_towns funcLevelling clears the trees on the tiles it reshapes, which the nearby councils mind the way they mind bulldozing them (see _bulldoze_upsets_towns).
    Enlace a esta entradafunc _level_upsets_towns(tiles: Array, who: Company) -> void
    Parámetros
    • tiles: Array
    • who: Company
    Devuelve
    void
    Llama a
    Station.nearest_town, L.t
    Declarado en scripts/sim/sim.gd:1090
  • Sim._bulldoze_upsets_towns funcKnocking down houses, tearing up town streets and clearing trees near a town hurts the company's standing with its council.
    Enlace a esta entradafunc _bulldoze_upsets_towns(r: Rect2i, who: Company) -> void

    Only what belongs to the town counts: houses, streets inside its built-up area, and trees in and just around it. Roads and woods out in the country are the company's own business.

    Parámetros
    • r: Rect2i
    • who: Company
    Devuelve
    void
    Llama a
    BuildOps.bulldoze_target, Station.nearest_town, L.t
    Declarado en scripts/sim/sim.gd:1109
  • Sim.council_news funcTell the player the moment a council turns against them (or comes round).
    Enlace a esta entradafunc council_news(t: Town, who: Company, was: float) -> void
    Parámetros
    • t: Town
    • who: Company
    • was: float
    Devuelve
    void
    Llama a
    L.t, Town.rating_name
    Declarado en scripts/sim/sim.gd:1141
  • Sim.council_refusal funcWhy a council refuses who near t, in words a player can act on.
    Enlace a esta entradafunc council_refusal(t: Town, who: Company) -> String
    Parámetros
    • t: Town
    • who: Company
    Devuelve
    String
    Llama a
    L.t, Town.rating_name, L.lower
    Declarado en scripts/sim/sim.gd:1153
  • Sim.town_action funcTown actions from the town window: "advertise", "trees" or "fund".
    Enlace a esta entradafunc town_action(t: Town, action: String, who: Company = null) -> Dictionary

    Returns {ok, reason, cost}.

    Parámetros
    • t: Town
    • action: String
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    L.t, Fmt.money
    Declarado en scripts/sim/sim.gd:1168
  • Sim.renew_vehicle funcCharges the owner the renewal price and resets the vehicle’s age, reliability, and last-service date.
    Enlace a esta entradafunc renew_vehicle(v: Vehicle, who: Company = null) -> Dictionary

    Check ok before reading the successful result’s cost.

    Parámetros
    • v: Vehicle
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    L.t, Fmt.money, Data.reliability
    Declarado en scripts/sim/sim.gd:1215
  • Sim.renew_price funcWhat renew_vehicle would charge for v right now.
    Enlace a esta entradafunc renew_price(v: Vehicle) -> int
    Parámetros
    • v: Vehicle
    Devuelve
    int
    Declarado en scripts/sim/sim.gd:1231
  • Sim.same_route static funcWhether two vehicles run the same route: the same company and kind of transport, calling at the same stations in the same order, wherever in the round each of them starts.
    Enlace a esta entradastatic func same_route(a: Vehicle, b: Vehicle) -> bool
    Parámetros
    • a: Vehicle
    • b: Vehicle
    Devuelve
    bool
    Declarado en scripts/sim/sim.gd:1239
  • Sim.vehicles_on_stops funcHow many of who's vehicles of kind call at exactly stops, in that order (wherever in the round each one starts), as same_route counts them.
    Enlace a esta entradafunc vehicles_on_stops(kind: String, stops: Array, who: Company) -> int
    Parámetros
    • kind: String
    • stops: Array
    • who: Company
    Devuelve
    int
    Declarado en scripts/sim/sim.gd:1258
  • Sim.route_vehicles funcEvery vehicle on v's route (see same_route), v included; for a vehicle on a line, every vehicle on that line.
    Enlace a esta entradafunc route_vehicles(v: Vehicle) -> Array
    Parámetros
    • v: Vehicle
    Devuelve
    Array
    Declarado en scripts/sim/sim.gd:1280
  • Sim.make_line funcTurn v's route into a line: v and every other vehicle of its company on the same route (see same_route) that isn't on a line yet join it.
    Enlace a esta entradafunc make_line(v: Vehicle, line_name: String = "") -> Line

    Returns the line.

    Parámetros
    • v: Vehicle
    • line_name: String = ""
    Devuelve
    Line
    Declarado en scripts/sim/sim.gd:1290
  • Sim.line_problem funcWhy v can't run ln's stops ("" when it can).
    Enlace a esta entradafunc line_problem(v: Vehicle, ln: Line) -> String
    Parámetros
    • v: Vehicle
    • ln: Line
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/sim.gd:1305
  • Sim.join_line funcPut v on line ln (it takes the line's stops).
    Enlace a esta entradafunc join_line(v: Vehicle, ln: Line) -> Dictionary

    Returns {"ok", "reason"}.

    Parámetros
    • v: Vehicle
    • ln: Line
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:1314
  • Sim._put_on_line funcThe vehicle shares the line's order list and keeps heading for the stop it was heading for, when the line calls there too.
    Enlace a esta entradafunc _put_on_line(v: Vehicle, ln: Line) -> void
    Parámetros
    • v: Vehicle
    • ln: Line
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:1327
  • Sim.leave_line funcTake v off its line: it keeps the stops as its own.
    Enlace a esta entradafunc leave_line(v: Vehicle) -> void
    Parámetros
    • v: Vehicle
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:1340
  • Sim.set_line_orders funcGive line ln new stops (validated for every model running on it).
    Enlace a esta entradafunc set_line_orders(ln: Line, new_orders: Array) -> Dictionary

    The vehicles keep heading for the stop they were heading for where it is still on the line. Returns {"ok", "reason"}.

    Parámetros
    • ln: Line
    • new_orders: Array
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:1350
  • Sim.set_vehicle_orders funcGive a vehicle new stops: its own, or (on a line) the whole line's.
    Enlace a esta entradafunc set_vehicle_orders(v: Vehicle, new_orders: Array, idx: int = -1) -> Dictionary

    Returns {"ok", "reason"}.

    Parámetros
    • v: Vehicle
    • new_orders: Array
    • idx: int = -1
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:1381
  • Sim._stops_problem funcA line with no vehicles can still be checked for its stops: what check_orders asks of every model, without the model.
    Enlace a esta entradafunc _stops_problem(kind: String, stops: Array, who: Company) -> String
    Parámetros
    • kind: String
    • stops: Array
    • who: Company
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/sim.gd:1402
  • Sim.delete_line funcDelete a line: its vehicles keep running its stops, each on its own.
    Enlace a esta entradafunc delete_line(ln: Line) -> void
    Parámetros
    • ln: Line
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:1419
  • Sim.buy_for_line funcBuy one more vehicle for line ln, like template (the same model, cargo and wagons).
    Enlace a esta entradafunc buy_for_line(ln: Line, template: Vehicle) -> Dictionary

    Returns buy_vehicle's answer.

    Parámetros
    • ln: Line
    • template: Vehicle
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:1429
  • Sim.stop_line funcStop (or start again) every vehicle on a line.
    Enlace a esta entradafunc stop_line(ln: Line, stop: bool) -> void
    Parámetros
    • ln: Line
    • stop: bool
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:1445
  • Sim.renew_line funcRenew every vehicle on a line that is past its working life.
    Enlace a esta entradafunc renew_line(ln: Line) -> Dictionary

    Returns {"n", "cost", "reason"}.

    Parámetros
    • ln: Line
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:1454
  • Sim.line_by_id funcLooks for a line with the given ID in the simulation and returns null if no line matches.
    Enlace a esta entradafunc line_by_id(line_id: int) -> Line
    Parámetros
    • line_id: int
    Devuelve
    Line
    Declarado en scripts/sim/sim.gd:1470
  • Sim._index_of static func
    Enlace a esta entradastatic func _index_of(list: Array, st: Station, fallback: int) -> int
    Parámetros
    • list: Array
    • st: Station
    • fallback: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:1477
  • Sim._mark_served func
    Enlace a esta entradafunc _mark_served(v: Vehicle) -> void
    Parámetros
    • v: Vehicle
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:1487
  • Sim.route_text static funcA vehicle's route in a few words: "Ashford → Millbury".
    Enlace a esta entradastatic func route_text(v: Vehicle) -> String
    Parámetros
    • v: Vehicle
    Devuelve
    String
    Declarado en scripts/sim/sim.gd:1496
  • Sim.replace_plan funcWhat swapping v for a new model_id would take: the model must be of the same kind, on sale, able to carry what v carries and able to run its orders (wires for an electric train, a depot where depots are needed).
    Enlace a esta entradafunc replace_plan(v: Vehicle, model_id: String, checked: Dictionary = {}) -> Dictionary

    A train keeps its wagons, as many as the new engine pulls. Returns {"ok", "reason"} and, when it can be done, "price" (the new one, with its wagons), "trade_in" (what the old one is worth, as when it is sold), "cost" (the difference: negative when the old one is worth more) and "wagons". checked remembers the route checks between calls for vehicles of one route.

    Parámetros
    • v: Vehicle
    • model_id: String
    • checked: Dictionary = {}
    Devuelve
    Dictionary
    Llama a
    Data.has_model, Data.model, L.t, Data.available, Data.intro_year
    Declarado en scripts/sim/sim.gd:1513
  • Sim.replace_vehicle funcSwap a vehicle for a new one of another model, where it stands, as renew_vehicle does for the same model: it keeps its number, name, orders, cargo and history, and is new again.
    Enlace a esta entradafunc replace_vehicle(v: Vehicle, model_id: String, who: Company = null) -> Dictionary

    Charges the new price less what the old one is worth (see replace_plan, whose answer this returns).

    Parámetros
    • v: Vehicle
    • model_id: String
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    L.t, Fmt.money
    Declarado en scripts/sim/sim.gd:1540
  • Sim.replace_route_plan funcWhat replace_route would do: {"ok", "reason", "cost" (for all of them together), "vehicles" (the ones that would change), "costs" (for each of those), "skipped" (how many on the route can't take the model, say for their cargo; ones that already are that model aren't counted)}.
    Enlace a esta entradafunc replace_route_plan(v: Vehicle, model_id: String, checked: Dictionary = {}) -> Dictionary
    Parámetros
    • v: Vehicle
    • model_id: String
    • checked: Dictionary = {}
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:1559
  • Sim.replace_route funcreplace_vehicle for every vehicle on v's route that can take the model (see same_route and replace_route_plan, whose answer this returns): all of them or, when the money isn't there, none.
    Enlace a esta entradafunc replace_route(v: Vehicle, model_id: String, who: Company = null) -> Dictionary

    The player is told in one news item.

    Parámetros
    • v: Vehicle
    • model_id: String
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    L.t, Fmt.money, Data.model
    Declarado en scripts/sim/sim.gd:1577
  • Sim._pay_vehicles funcPay for vehicles, or be paid when cost is negative (trading in for something cheaper).
    Enlace a esta entradafunc _pay_vehicles(who: Company, cost: int) -> void
    Parámetros
    • who: Company
    • cost: int
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:1608
  • Sim._become funcThe swap itself: v becomes a brand-new model_id (what renew_vehicle resets, on a new model).
    Enlace a esta entradafunc _become(v: Vehicle, model_id: String) -> void
    Parámetros
    • v: Vehicle
    • model_id: String
    Devuelve
    void
    Llama a
    Data.reliability
    Declarado en scripts/sim/sim.gd:1617
  • Sim.AUTO_RENEW_MAX constMonth end, for the player's company when it has asked for it: renew vehicles past their working life (the ones the news warns about), oldest first, exactly as the Renew button would, while the cash left afterwards stays at or above the company's threshold.
    Enlace a esta entradaconst AUTO_RENEW_MAX := 3

    At most AUTO_RENEW_MAX a month, so a fleet bought together doesn't empty the bank at once. Returns how many were renewed.

    Declarado en scripts/sim/sim.gd:1629
  • Sim._auto_renew func
    Enlace a esta entradafunc _auto_renew() -> int
    Devuelve
    int
    Llama a
    L.t, Fmt.money

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:1630
  • Sim.refit_cost funcWhat changing a vehicle's cargo would cost.
    Enlace a esta entradafunc refit_cost(v: Vehicle, consist: Array) -> Dictionary

    consist: the cargo of each wagon for a train (front to back, so wagons can be added, dropped or mixed), one cargo for anything else. Returns {"ok", "reason", "cost"}: cost is negative when dropping wagons pays more than the rest costs.

    Parámetros
    • v: Vehicle
    • consist: Array
    Devuelve
    Dictionary
    Llama a
    L.t
    Declarado en scripts/sim/sim.gd:1664
  • Sim.refit_place funcWhere a change of cargo ordered now would be done: "now" (it is standing in one of its depots), "depot" (it goes to one after its next stop), "station" (at its next stop: ships, aircraft, and companies playing without depots that have none on the route) or "" (it needs a depot first).
    Enlace a esta entradafunc refit_place(v: Vehicle) -> String
    Parámetros
    • v: Vehicle
    Devuelve
    String
    Declarado en scripts/sim/sim.gd:1701
  • Sim.refit_plan funcrefit_cost plus "at", where the change would be done (see refit_place); refused when the vehicle needs a depot and none is linked to its route.
    Enlace a esta entradafunc refit_plan(v: Vehicle, consist: Array) -> Dictionary
    Parámetros
    • v: Vehicle
    • consist: Array
    Devuelve
    Dictionary
    Llama a
    L.t
    Declarado en scripts/sim/sim.gd:1714
  • Sim.refit_vehicle funcOrder a change of what a vehicle carries (see refit_cost) and pay for it.
    Enlace a esta entradafunc refit_vehicle(v: Vehicle, consist: Array, who: Company = null) -> Dictionary

    The vehicle delivers what it has at its next stop, takes nothing on and goes to a depot, where finish_refit does the work; its orders, age and history stay. An earlier order still waiting is replaced. Returns refit_plan's answer.

    Parámetros
    • v: Vehicle
    • consist: Array
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    L.t, Fmt.money
    Declarado en scripts/sim/sim.gd:1729
  • Sim.cancel_refit funcCall off a change of cargo that hasn't been done yet; returns the money given back.
    Enlace a esta entradafunc cancel_refit(v: Vehicle, who: Company = null) -> int
    Parámetros
    • v: Vehicle
    • who: Company = null
    Devuelve
    int
    Declarado en scripts/sim/sim.gd:1752
  • Sim.finish_refit funcDo the change of cargo a vehicle is waiting for (it has reached the depot).
    Enlace a esta entradafunc finish_refit(v: Vehicle) -> void
    Parámetros
    • v: Vehicle
    Devuelve
    void
    Declarado en scripts/sim/sim.gd:1765
  • Sim._occupied_tiles func
    Enlace a esta entradafunc _occupied_tiles() -> Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:1779
  • Sim.check_orders funcCheck a vehicle order list: returns "" if fine, else why not.
    Enlace a esta entradafunc check_orders(model_id: String, cargo: String, stops: Array, who: Company) -> String
    Parámetros
    • model_id: String
    • cargo: String
    • stops: Array
    • who: Company
    Devuelve
    String
    Llama a
    Data.model, L.t
    Declarado en scripts/sim/sim.gd:1796
  • Sim.vehicle_price funcReturns the model purchase price plus the cost of the specified number of rail wagons.
    Enlace a esta entradafunc vehicle_price(model_id: String, wagons: int) -> int

    Non-rail models ignore the wagon count. It does not check funds, routes, or sale year.

    Parámetros
    • model_id: String
    • wagons: int
    Devuelve
    int
    Llama a
    Data.model
    Declarado en scripts/sim/sim.gd:1832
  • Sim.buy_vehicle funcBuys a model for a route of existing stations.
    Enlace a esta entradafunc buy_vehicle(model_id: String, cargo: String, wagons: int, stops: Array, full_load_first: bool, who: Company = null, consist: Array = [], transfer_at: Array = []) -> Dictionary

    full_load_first sets the first order’s load flag. consist is one cargo ID per wagon, from front to back; a nonempty rail consist replaces cargo and wagons. transfer_at is a list of zero-based stop indices. Check ok and read reason on failure. A successful purchase returns the new vehicle.

    Parámetros
    • model_id: String
    • cargo: String
    • wagons: int
    • stops: Array
    • full_load_first: bool
    • who: Company = null
    • consist: Array = []
    • transfer_at: Array = []
    Devuelve
    Dictionary
    Llama a
    Data.model, L.t, Data.available, Data.intro_year, Fmt.money, Data.reliability, Mods.hook, BuildOps.dir_between
    Declarado en scripts/sim/sim.gd:1840
  • Sim.depots_required func
    Enlace a esta entradafunc depots_required(who: Company) -> bool
    Parámetros
    • who: Company
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:1932
  • Sim.depot_tiles funcwho's depots for vehicles of kind (road or rail), as a set of tiles.
    Enlace a esta entradafunc depot_tiles(kind: String, who: Company) -> Dictionary
    Parámetros
    • kind: String
    • who: Company
    Devuelve
    Dictionary
    Declarado en scripts/sim/sim.gd:1937
  • Sim.find_depot funcThe nearest of who's depots that's linked to station st, or (-1, -1): the one a vehicle leaving st would drive to.
    Enlace a esta entradafunc find_depot(kind: String, st: Station, who: Company, wired: bool = false) -> Vector2i

    For the one a new vehicle drives out of, see depot_out.

    Parámetros
    • kind: String
    • st: Station
    • who: Company
    • wired: bool = false
    Devuelve
    Vector2i
    Declarado en scripts/sim/sim.gd:1948
  • Sim.depot_out funcThe nearest of who's depots that a new vehicle can drive out of to station st, or (-1, -1).
    Enlace a esta entradafunc depot_out(kind: String, st: Station, who: Company, wired: bool = false, obey_signals: bool = true) -> Vector2i

    Searched from the depot's door to the station, not the other way: one-way signals can let trains from a depot into a station and not back.

    Parámetros
    • kind: String
    • st: Station
    • who: Company
    • wired: bool = false
    • obey_signals: bool = true
    Devuelve
    Vector2i
    Llama a
    Pathfinder.find
    Declarado en scripts/sim/sim.gd:1958
  • Sim.route_from funcThe shortest route from station st to any of the goals tiles, as Pathfinder.find returns it ({} when there is none).
    Enlace a esta entradafunc route_from(kind: String, st: Station, goals: Dictionary, wired: bool = false, obey_signals: bool = true) -> Dictionary

    A station's platforms (or stops) needn't be joined to each other, so every separate one is tried: the route may leave from any of them.

    Parámetros
    • kind: String
    • st: Station
    • goals: Dictionary
    • wired: bool = false
    • obey_signals: bool = true
    Devuelve
    Dictionary
    Llama a
    Pathfinder.find
    Declarado en scripts/sim/sim.gd:1973
  • Sim.preview_electrify func
    Enlace a esta entradafunc preview_electrify(pts: Array[Vector2i], who: Company = null) -> Dictionary
    Parámetros
    • pts: Array[Vector2i]
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_electrify

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:1996
  • Sim.build_electrify func
    Enlace a esta entradafunc build_electrify(pts: Array[Vector2i], who: Company = null) -> Dictionary
    Parámetros
    • pts: Array[Vector2i]
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.apply_electrify

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:2003
  • Sim.preview_depot func
    Enlace a esta entradafunc preview_depot(kind: String, t: Vector2i, facing: int, who: Company = null) -> Dictionary
    Parámetros
    • kind: String
    • t: Vector2i
    • facing: int
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_depot, Station.nearest_town

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:2014
  • Sim.build_depot func
    Enlace a esta entradafunc build_depot(kind: String, t: Vector2i, facing: int, who: Company = null) -> Dictionary
    Parámetros
    • kind: String
    • t: Vector2i
    • facing: int
    • who: Company = null
    Devuelve
    Dictionary
    Llama a
    BuildOps.apply_depot

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/sim.gd:2031
  • Sim.sell_vehicle funcSell a vehicle.
    Enlace a esta entradafunc sell_vehicle(v: Vehicle, who: Company = null) -> int

    who must own it (defaults to the player); returns the refund, or -1 if refused.

    Parámetros
    • v: Vehicle
    • who: Company = null
    Devuelve
    int
    Declarado en scripts/sim/sim.gd:2048
  • Sim.company_vehicles funcReturns the vehicles owned by the supplied Company.
    Enlace a esta entradafunc company_vehicles(who: Company) -> Array

    The returned array can be filtered or reordered independently, but its vehicle objects are live.

    Parámetros
    • who: Company
    Devuelve
    Array
    Declarado en scripts/sim/sim.gd:2061
  • Sim.company_value funcCalculates cash minus loans plus vehicle resale value, station tile value, and owned track value.
    Enlace a esta entradafunc company_value(who: Company) -> int

    This is the value used for company comparisons.

    Parámetros
    • who: Company
    Devuelve
    int
    Declarado en scripts/sim/sim.gd:2065

Company

  • Company.COLORS const
    Enlace a esta entradaconst COLORS

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:5
  • Company.CATEGORIES const
    Enlace a esta entradaconst CATEGORIES := ["construction", "vehicles", "running", "property", "infrastructure", "interest", "income"]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:8
  • Company.id var
    Enlace a esta entradavar id := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:10
  • Company.name var
    Enlace a esta entradavar name := "Fourways Transport Co."

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:11
  • Company.color var
    Enlace a esta entradavar color := Color(0.18, 0.45, 0.85)

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:12
  • Company.is_ai var
    Enlace a esta entradavar is_ai := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:13
  • Company.money varThe company’s current cash balance in game dollars.
    Enlace a esta entradavar money: int = Data.START_LOAN

    Use the accounting methods to change it when the transaction should appear in the ledger.

    Declarado en scripts/sim/company.gd:14
  • Company.loan varThe company’s outstanding debt in game dollars.
    Enlace a esta entradavar loan: int = Data.START_LOAN

    Use borrow and repay to adjust cash and debt together.

    Declarado en scripts/sim/company.gd:15
  • Company.ledger var
    Enlace a esta entradavar ledger := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:16
  • Company.ledger_last var
    Enlace a esta entradavar ledger_last := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:17
  • Company.founded_day var
    Enlace a esta entradavar founded_day := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:18
  • Company.max_loan var
    Enlace a esta entradavar max_loan: int = Data.MAX_LOAN

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:19
  • Company.rail_tiles vartiles of track owned (counted in company value)
    Enlace a esta entradavar rail_tiles := 0Declarado en scripts/sim/company.gd:20
  • Company.history varmonthly company value, oldest first (last 120 months)
    Enlace a esta entradavar history: Array = []Declarado en scripts/sim/company.gd:21
  • Company.months_in_red varconsecutive month-ends with a negative balance
    Enlace a esta entradavar months_in_red := 0Declarado en scripts/sim/company.gd:22
  • Company.bankrupt var
    Enlace a esta entradavar bankrupt := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:23
  • Company.month varthis month so far: "income", "spend" (all), "invest" (building and buying), "cargo": {c: [units, $]}
    Enlace a esta entradavar month := {}Declarado en scripts/sim/company.gd:25
  • Company.months varclosed months, oldest first (last 24): {"income", "spend", "value", "cargo"}
    Enlace a esta entradavar months: Array = []Declarado en scripts/sim/company.gd:26
  • Company.cargo_year varcargo -> [units, $] delivered this year
    Enlace a esta entradavar cargo_year := {}Declarado en scripts/sim/company.gd:27
  • Company.cargo_last var
    Enlace a esta entradavar cargo_last := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:28
  • Company.kind_year varvehicle kind -> $ earned this year
    Enlace a esta entradavar kind_year := {}Declarado en scripts/sim/company.gd:29
  • Company.kind_last var
    Enlace a esta entradavar kind_last := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:30
  • Company.years varclosed years, oldest first (last 60): see _year_row
    Enlace a esta entradavar years: Array = []Declarado en scripts/sim/company.gd:31
  • Company.auto_renew var
    Enlace a esta entradavar auto_renew := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:33
  • Company.auto_renew_keep varonly renew while this much cash is left afterwards
    Enlace a esta entradavar auto_renew_keep := 50000Declarado en scripts/sim/company.gd:34
  • Company.auto_renew_reminded varthe year of the last "can't afford to renew" reminder
    Enlace a esta entradavar auto_renew_reminded := -1Declarado en scripts/sim/company.gd:35
  • Company.record_month func
    Enlace a esta entradafunc record_month(value: int) -> void
    Parámetros
    • value: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:38
  • Company.note_delivery funcA delivery: units of cargo c paid pay, carried by a vehicle of kind.
    Enlace a esta entradafunc note_delivery(c: String, units: int, pay: int, kind: String) -> void
    Parámetros
    • c: String
    • units: int
    • pay: int
    • kind: String
    Devuelve
    void
    Declarado en scripts/sim/company.gd:50
  • Company._init func
    Enlace a esta entradafunc _init(p_id: int = 0, p_name: String = "Fourways Transport Co.") -> void
    Parámetros
    • p_id: int = 0
    • p_name: String = "Fourways Transport Co."
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/company.gd:61
  • Company.can_afford funcChecks whether the company’s current cash covers cost.
    Enlace a esta entradafunc can_afford(cost: int) -> bool

    It does not borrow money or change its balance.

    Parámetros
    • cost: int
    Devuelve
    bool
    Declarado en scripts/sim/company.gd:70
  • Company.spend funcDeducts the cost from cash and records it in the category and monthly accounts.
    Enlace a esta entradafunc spend(cost: int, category: String) -> bool

    Returns false and leaves the accounts untouched if cash is insufficient. Typical categories include construction and vehicles.

    Parámetros
    • cost: int
    • category: String
    Devuelve
    bool
    Declarado en scripts/sim/company.gd:74
  • Company.charge funcCosts that are paid whether or not there is cash (running costs, interest).
    Enlace a esta entradafunc charge(cost: int, category: String) -> void
    Parámetros
    • cost: int
    • category: String
    Devuelve
    void
    Declarado en scripts/sim/company.gd:86
  • Company.earn funcAdds game dollars to cash and records the amount as income in the ledger and current month’s accounts.
    Enlace a esta entradafunc earn(amount: int) -> void
    Parámetros
    • amount: int
    Devuelve
    void
    Declarado en scripts/sim/company.gd:92
  • Company.borrow funcAdds up to amount to cash and debt, limited by the company’s remaining loan allowance.
    Enlace a esta entradafunc borrow(amount: int) -> bool

    Returns whether any money was borrowed.

    Parámetros
    • amount: int
    Devuelve
    bool
    Declarado en scripts/sim/company.gd:98
  • Company.repay funcRepays up to amount, limited by cash and outstanding debt.
    Enlace a esta entradafunc repay(amount: int) -> bool

    Returns whether a payment was made.

    Parámetros
    • amount: int
    Devuelve
    bool
    Declarado en scripts/sim/company.gd:107
  • Company.roll_year funcClose the books on year; value is the company value at its end.
    Enlace a esta entradafunc roll_year(year: int = 0, value: int = 0) -> void
    Parámetros
    • year: int = 0
    • value: int = 0
    Devuelve
    void
    Declarado en scripts/sim/company.gd:117
  • Company.profit funcCalculates net profit from a ledger dictionary by subtracting recorded expense categories from income.
    Enlace a esta entradafunc profit(l: Dictionary) -> int
    Parámetros
    • l: Dictionary
    Devuelve
    int
    Declarado en scripts/sim/company.gd:130
  • Company._year_row funcA ledger boiled down to one line of the yearly summary.
    Enlace a esta entradafunc _year_row(l: Dictionary, year: int, value: int) -> Dictionary
    Parámetros
    • l: Dictionary
    • year: int
    • value: int
    Devuelve
    Dictionary
    Declarado en scripts/sim/company.gd:139
  • Company.year_rows funcThe yearly summary, oldest first: every closed year, then the year in progress ("open": true).
    Enlace a esta entradafunc year_rows(year: int, month: int, value: int) -> Array

    year and month (0 = January) are today's, value the company value now. Saves from before the yearly records were kept still get last year's line, from last year's ledger.

    Parámetros
    • year: int
    • month: int
    • value: int
    Devuelve
    Array
    Llama a
    Calendar.from_day
    Declarado en scripts/sim/company.gd:149

Town

  • Town.id var
    Enlace a esta entradavar id := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:5
  • Town.name var
    Enlace a esta entradavar name := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:6
  • Town.cx var
    Enlace a esta entradavar cx := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:7
  • Town.cy var
    Enlace a esta entradavar cy := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:8
  • Town.grid varroad spacing; houses fill the blocks between grid lines
    Enlace a esta entradavar grid := 3Declarado en scripts/sim/town.gd:9
  • Town.pop var
    Enlace a esta entradavar pop := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:10
  • Town.house_count var
    Enlace a esta entradavar house_count := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:11
  • Town.grow_timer var
    Enlace a esta entradavar grow_timer := 30

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:12
  • Town.pax varpassengers generated this month
    Enlace a esta entradavar pax := 0.0Declarado en scripts/sim/town.gd:13
  • Town.pax_moved var...and picked up by stations
    Enlace a esta entradavar pax_moved := 0.0Declarado en scripts/sim/town.gd:14
  • Town.pax_last var
    Enlace a esta entradavar pax_last := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:15
  • Town.pax_moved_last var
    Enlace a esta entradavar pax_moved_last := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:16
  • Town.supplied vargoods and food delivered this month
    Enlace a esta entradavar supplied := 0.0Declarado en scripts/sim/town.gd:17
  • Town.supplied_last var
    Enlace a esta entradavar supplied_last := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:18
  • Town.served_until vargame day until which the town counts as served
    Enlace a esta entradavar served_until := -1Declarado en scripts/sim/town.gd:19
  • Town.dirty vartiles changed by growth since the view last redrew them
    Enlace a esta entradavar dirty := Rect2i()Declarado en scripts/sim/town.gd:20
  • Town.ratings varLocal authority: how the council sees each company (company id -> 0..100), and town actions.
    Enlace a esta entradavar ratings := {}Declarado en scripts/sim/town.gd:22
  • Town.advert varcompany id -> game day the advertising campaign ends
    Enlace a esta entradavar advert := {}Declarado en scripts/sim/town.gd:23
  • Town.fund_until vargame day funded building ends
    Enlace a esta entradavar fund_until := -1Declarado en scripts/sim/town.gd:24
  • Town.exclusive varRewards for meeting the council's requests (RAIL-24, Opportunities): the company with exclusive transport rights here (-1: none) and the day they end, and company id -> the day its half-price stations and depots end.
    Enlace a esta entradavar exclusive := -1Declarado en scripts/sim/town.gd:28
  • Town.exclusive_until var
    Enlace a esta entradavar exclusive_until := -1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:29
  • Town.cheap var
    Enlace a esta entradavar cheap := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:30
  • Town.rating_log varWhy each company's rating moved lately: company id -> [{"day", "delta", "why"}], newest last.
    Enlace a esta entradavar rating_log := {}Declarado en scripts/sim/town.gd:33
  • Town.RATING_START const
    Enlace a esta entradaconst RATING_START := 60.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:35
  • Town.RATING_REFUSE const
    Enlace a esta entradaconst RATING_REFUSE := 30.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:36
  • Town.COUNCIL_RADIUS const
    Enlace a esta entradaconst COUNCIL_RADIUS := 18

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:37
  • Town.RATING_CRASH const
    Enlace a esta entradaconst RATING_CRASH := -20.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:38
  • Town.RATING_NEGLECT_FLOOR constNeglect alone never costs a company its building permission: it stops lowering the rating here.
    Enlace a esta entradaconst RATING_NEGLECT_FLOOR := 40.0Declarado en scripts/sim/town.gd:40
  • Town.RATING_HOUSE constWhat demolition costs, per tile.
    Enlace a esta entradaconst RATING_HOUSE := -8.0

    Tree clearing in one bulldoze action never costs more than RATING_TREES_MAX, so cutting a strip for a railway is a nuisance, not a ban.

    Declarado en scripts/sim/town.gd:43
  • Town.RATING_STREET const
    Enlace a esta entradaconst RATING_STREET := -3.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:44
  • Town.RATING_TREE const
    Enlace a esta entradaconst RATING_TREE := -0.5

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:45
  • Town.RATING_TREES_MAX const
    Enlace a esta entradaconst RATING_TREES_MAX := -6.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:46
  • Town.BUSY_NOISE constHow far the noise of a busy industry lowers land values (Industry.BUSY, land_value).
    Enlace a esta entradaconst BUSY_NOISE := 9.0Declarado en scripts/sim/town.gd:48
  • Town.LOG_SIZE const
    Enlace a esta entradaconst LOG_SIZE := 8

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:49
  • Town.rating funcReturns the council’s current rating for a company ID on the 0–100 scale.
    Enlace a esta entradafunc rating(cid: int) -> float

    Companies without a recorded rating receive the starting value.

    Parámetros
    • cid: int
    Devuelve
    float
    Declarado en scripts/sim/town.gd:52
  • Town.change_rating funcwhy (a short phrase such as "Demolished buildings") and day record the change in the rating log, so the town window can explain where a rating came from.
    Enlace a esta entradafunc change_rating(cid: int, delta: float, why: String = "", day: int = -1) -> void
    Parámetros
    • cid: int
    • delta: float
    • why: String = ""
    • day: int = -1
    Devuelve
    void
    Declarado en scripts/sim/town.gd:58
  • Town.is_street funcA town's own streets: roads inside the built-up area.
    Enlace a esta entradafunc is_street(x: int, y: int) -> bool

    Roads a company lays in open country aren't.

    Parámetros
    • x: int
    • y: int
    Devuelve
    bool
    Declarado en scripts/sim/town.gd:77
  • Town.rating_name static func
    Enlace a esta entradastatic func rating_name(r: float) -> String
    Parámetros
    • r: float
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:81
  • Town._mark func
    Enlace a esta entradafunc _mark(x: int, y: int) -> void
    Parámetros
    • x: int
    • y: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:91
  • Town._init func
    Enlace a esta entradafunc _init(p_id: int, p_name: String, x: int, y: int, p_grid: int) -> void
    Parámetros
    • p_id: int
    • p_name: String
    • x: int
    • y: int
    • p_grid: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:96
  • Town.roll_month func
    Enlace a esta entradafunc roll_month() -> void
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:104
  • Town.growth_interval funcDays between growth spurts: faster when served by stations and supplied with goods / food.
    Enlace a esta entradafunc growth_interval(day: int) -> int
    Parámetros
    • day: int
    Devuelve
    int
    Llama a
    Data.era_index, Calendar.from_day
    Declarado en scripts/sim/town.gd:117
  • Town.bounds funcTile rectangle the town's buildings occupy (used for redraws after growth).
    Enlace a esta entradafunc bounds() -> Rect2i
    Devuelve
    Rect2i
    Declarado en scripts/sim/town.gd:131
  • Town.on_grid_x func
    Enlace a esta entradafunc on_grid_x(x: int) -> bool
    Parámetros
    • x: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:136
  • Town.on_grid_y func
    Enlace a esta entradafunc on_grid_y(y: int) -> bool
    Parámetros
    • y: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:140
  • Town.seed_roads funcThe initial crossroads at the town centre.
    Enlace a esta entradafunc seed_roads(m: WorldMap, rng: RandomNumberGenerator) -> void
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    Devuelve
    void
    Llama a
    BuildOps.can_link_road, BuildOps.link_road
    Declarado en scripts/sim/town.gd:145
  • Town.zone_pop varPeople by zone (kept up to date as buildings come and go), the street layout, and what this town needs most right now.
    Enlace a esta entradavar zone_pop := {"R": 0, "C": 0, "I": 0, "L": 0, "A": 0}Declarado en scripts/sim/town.gd:159
  • Town.layout vargrid | organic
    Enlace a esta entradavar layout := "grid"Declarado en scripts/sim/town.gd:160
  • Town.style varbuilding style: classic | tudor | mediterranean | nordic | brick
    Enlace a esta entradavar style := "classic"Declarado en scripts/sim/town.gd:161
  • Town.landmarks varbuilding type -> true once built
    Enlace a esta entradavar landmarks := {}Declarado en scripts/sim/town.gd:162
  • Town.pop_history varpopulation at each month end (last 36)
    Enlace a esta entradavar pop_history: Array = []Declarado en scripts/sim/town.gd:163
  • Town.demand funcResidential / commercial / industrial demand, each -1..1 (SimCity's RCI meter).
    Enlace a esta entradafunc demand(day: int = -1) -> Vector3

    Homes follow jobs, shops follow residents and deliveries, workshops follow residents.

    Parámetros
    • day: int = -1
    Devuelve
    Vector3
    Declarado en scripts/sim/town.gd:168
  • Town._pick_zone func
    Enlace a esta entradafunc _pick_zone(rng: RandomNumberGenerator, day: int) -> String
    Parámetros
    • rng: RandomNumberGenerator
    • day: int
    Devuelve
    String

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:180
  • Town.land_value funcLand value of a plot (roughly 0..100): the centre, busy stations, water, trees and landmarks raise it; industry and railway noise lower it.
    Enlace a esta entradafunc land_value(m: WorldMap, x: int, y: int, ctx: Dictionary) -> float

    ctx may carry "stations" (served station positions), "industries" and "busy" (positions of well-staffed industries, heard up to BUSY_NOISE tiles away: RAIL-28) from the sim.

    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • ctx: Dictionary
    Devuelve
    float
    Declarado en scripts/sim/town.gd:195
  • Town._type_for funcThe building a zone gets on a plot of this land value, in this year's style.
    Enlace a esta entradafunc _type_for(zone: String, lv: float, rng: RandomNumberGenerator, year: int = 1950) -> String
    Parámetros
    • zone: String
    • lv: float
    • rng: RandomNumberGenerator
    • year: int = 1950
    Devuelve
    String
    Llama a
    Data.can_build
    Declarado en scripts/sim/town.gd:240
  • Town.grow funcOne growth step: maybe a landmark, else a building for the zone in demand, a new street, or a rebuild into something denser where land has become valuable.
    Enlace a esta entradafunc grow(m: WorldMap, rng: RandomNumberGenerator, ctx: Dictionary = {}) -> bool
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • ctx: Dictionary = {}
    Devuelve
    bool
    Declarado en scripts/sim/town.gd:267
  • Town._try_house func
    Enlace a esta entradafunc _try_house(m: WorldMap, x: int, y: int, rng: RandomNumberGenerator, zone: String = "R", ctx: Dictionary = {}) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • rng: RandomNumberGenerator
    • zone: String = "R"
    • ctx: Dictionary = {}
    Devuelve
    bool
    Llama a
    BuildOps.can_build_house, Const.opp

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:290
  • Town._try_road func
    Enlace a esta entradafunc _try_road(m: WorldMap, x: int, y: int, rng: RandomNumberGenerator) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • rng: RandomNumberGenerator
    Devuelve
    bool
    Llama a
    BuildOps.can_link_road, BuildOps.link_road

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:306
  • Town._organic_ok funcOrganic streets wander, but never run right alongside another street (which would leave no room for buildings).
    Enlace a esta entradafunc _organic_ok(m: WorldMap, x: int, y: int, d: int) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • d: int
    Devuelve
    bool
    Declarado en scripts/sim/town.gd:345
  • Town._try_upgrade func
    Enlace a esta entradafunc _try_upgrade(m: WorldMap, rng: RandomNumberGenerator, ctx: Dictionary = {}) -> bool
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • ctx: Dictionary = {}
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:358
  • Town._try_landmark funcLandmarks arrive as the town grows: a church, then a park, then a town hall.
    Enlace a esta entradafunc _try_landmark(m: WorldMap, rng: RandomNumberGenerator) -> bool

    Attractions (cinema, museum, funfair, stadium, and a resort by the sea) follow as it gets bigger.

    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    Devuelve
    bool
    Declarado en scripts/sim/town.gd:392
  • Town._place_landmark func
    Enlace a esta entradafunc _place_landmark(m: WorldMap, rng: RandomNumberGenerator, want: String) -> bool
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • want: String
    Devuelve
    bool
    Llama a
    BuildOps.can_build_house

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:418
  • Town._redevelop funcNo free plot: rebuild a modest building near the centre as the new landmark or attraction.
    Enlace a esta entradafunc _redevelop(m: WorldMap, rng: RandomNumberGenerator, want: String, r: int) -> bool
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • want: String
    • r: int
    Devuelve
    bool
    Declarado en scripts/sim/town.gd:432
  • Town.pick_style static funcA town's building style, from where it stands: seaside towns lean Mediterranean, hill towns Nordic, the rest a mix.
    Enlace a esta entradastatic func pick_style(m: WorldMap, t: Town) -> String

    Derived from the name so it doesn't disturb world generation.

    Parámetros
    • m: WorldMap
    • t: Town
    Devuelve
    String
    Declarado en scripts/sim/town.gd:462
  • Town._near_sea func
    Enlace a esta entradafunc _near_sea(m: WorldMap) -> bool
    Parámetros
    • m: WorldMap
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:478
  • Town._place_attraction funcAttractions go on a free plot by a road: the stadium and funfair towards the edge of town, the resort by the water, the rest near the centre.
    Enlace a esta entradafunc _place_attraction(m: WorldMap, rng: RandomNumberGenerator, want: String) -> bool
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • want: String
    Devuelve
    bool
    Llama a
    BuildOps.can_build_house
    Declarado en scripts/sim/town.gd:489
  • Town._water_distance func
    Enlace a esta entradafunc _water_distance(m: WorldMap, x: int, y: int) -> float
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:525
  • Town._set_building func
    Enlace a esta entradafunc _set_building(o: Dictionary, type: String, rng: RandomNumberGenerator) -> void
    Parámetros
    • o: Dictionary
    • type: String
    • rng: RandomNumberGenerator
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:534
  • Town._count func
    Enlace a esta entradafunc _count(type: String, people: int) -> void
    Parámetros
    • type: String
    • people: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:544
  • Town.remove_building funcRemove a building's people (it was demolished).
    Enlace a esta entradafunc remove_building(o: Dictionary) -> void
    Parámetros
    • o: Dictionary
    Devuelve
    void
    Declarado en scripts/sim/town.gd:551
  • Town.restore_building funcPut back a building's people (its demolition was undone): the opposite of remove_building.
    Enlace a esta entradafunc restore_building(o: Dictionary) -> void
    Parámetros
    • o: Dictionary
    Devuelve
    void
    Declarado en scripts/sim/town.gd:559
  • Town.recount funcRebuild the zone tallies from the map (after loading).
    Enlace a esta entradafunc recount(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/town.gd:567
  • Town.recount_all static funcrecount for every town of the map in one pass over its tiles.
    Enlace a esta entradastatic func recount_all(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/town.gd:578
  • Town.place_house funcPlace a house facing direction facing (towards its road).
    Enlace a esta entradafunc place_house(m: WorldMap, x: int, y: int, facing: int, type: String, rng: RandomNumberGenerator) -> void
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • facing: int
    • type: String
    • rng: RandomNumberGenerator
    Devuelve
    void
    Declarado en scripts/sim/town.gd:592
  • Town.MODEST const
    Enlace a esta entradaconst MODEST := ["cottage", "house", "shop", "modern", "workshop"]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:619
  • Town.size_of static funcHow many tiles along each side a building of type takes.
    Enlace a esta entradastatic func size_of(type: String) -> int
    Parámetros
    • type: String
    Devuelve
    int
    Declarado en scripts/sim/town.gd:623
  • Town.building_at static funcThe town building on tile t, whichever of its tiles that is; null where there is none.
    Enlace a esta entradastatic func building_at(m: WorldMap, t: Vector2i) -> Variant
    Parámetros
    • m: WorldMap
    • t: Vector2i
    Devuelve
    Variant
    Declarado en scripts/sim/town.gd:628
  • Town.anchor_of static funcThe north-west tile of the building on t (t itself for a one-tile building).
    Enlace a esta entradastatic func anchor_of(m: WorldMap, t: Vector2i) -> Vector2i
    Parámetros
    • m: WorldMap
    • t: Vector2i
    Devuelve
    Vector2i
    Declarado en scripts/sim/town.gd:638
  • Town.footprint static funcEvery tile of the building whose north-west tile is anchor.
    Enlace a esta entradastatic func footprint(m: WorldMap, anchor: Vector2i) -> Array[Vector2i]
    Parámetros
    • m: WorldMap
    • anchor: Vector2i
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/town.gd:644
  • Town.big_plot funcThe 2 x 2 plot for a big building whose front tile (x, y) faces a road in direction facing: it reaches one tile back from the road and one to either side, whichever is free.
    Enlace a esta entradafunc big_plot(m: WorldMap, x: int, y: int, facing: int, rebuild: bool = false) -> Rect2i

    With rebuild, a tile holding a modest building of this town counts as free (the building makes way). An empty rect where there is no room.

    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • facing: int
    • rebuild: bool = false
    Devuelve
    Rect2i
    Declarado en scripts/sim/town.gd:658
  • Town._plot_free func
    Enlace a esta entradafunc _plot_free(m: WorldMap, t: Vector2i, rebuild: bool) -> bool
    Parámetros
    • m: WorldMap
    • t: Vector2i
    • rebuild: bool
    Devuelve
    bool
    Llama a
    BuildOps.can_build_house

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/town.gd:673
  • Town._place_big funcPut a big building on plot (see big_plot), facing facing.
    Enlace a esta entradafunc _place_big(m: WorldMap, plot: Rect2i, facing: int, type: String, rng: RandomNumberGenerator) -> void
    Parámetros
    • m: WorldMap
    • plot: Rect2i
    • facing: int
    • type: String
    • rng: RandomNumberGenerator
    Devuelve
    void
    Declarado en scripts/sim/town.gd:683
  • Town.restore_annexes static funcMark the other tiles of every big building (after loading: only its own tile is saved).
    Enlace a esta entradastatic func restore_annexes(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/town.gd:705
  • Town.enlarge_old_buildings static funcA game saved before big buildings has its stadium on a single tile.
    Enlace a esta entradastatic func enlarge_old_buildings(m: WorldMap) -> void

    Give each one its full plot where there is room behind it - modest buildings next door make way, as they do when a town builds a new one - and leave it small where roads or bigger buildings hem it in.

    Parámetros
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/town.gd:720

Station

  • Station.CATCH_RAIL const
    Enlace a esta entradaconst CATCH_RAIL := 4

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:5
  • Station.CATCH_ROAD const
    Enlace a esta entradaconst CATCH_ROAD := 3

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:6
  • Station.CATCH_DOCK const
    Enlace a esta entradaconst CATCH_DOCK := 4

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:7
  • Station.CATCH_AIR const
    Enlace a esta entradaconst CATCH_AIR := 5

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:8
  • Station.TRANSFER_DISTANCE const
    Enlace a esta entradaconst TRANSFER_DISTANCE := 3

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:9
  • Station.SUFFIXES const
    Enlace a esta entradaconst SUFFIXES

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:10
  • Station.id var
    Enlace a esta entradavar id := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:13
  • Station.name var
    Enlace a esta entradavar name := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:14
  • Station.tiles var
    Enlace a esta entradavar tiles: Array[Vector2i] = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:15
  • Station.has_rail var
    Enlace a esta entradavar has_rail := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:16
  • Station.has_road var
    Enlace a esta entradavar has_road := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:17
  • Station.has_dock var
    Enlace a esta entradavar has_dock := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:18
  • Station.has_air var
    Enlace a esta entradavar has_air := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:19
  • Station.catchment vartile index -> true
    Enlace a esta entradavar catchment := {}Declarado en scripts/sim/station.gd:20
  • Station.accepts varCargo IDs that can be delivered in this station’s catchment.
    Enlace a esta entradavar accepts: Array = []

    A vehicle can unload and earn a fare here for a supported cargo.

    Declarado en scripts/sim/station.gd:21
  • Station.supplies varCargo IDs supplied by towns or industries in the station’s catchment.
    Enlace a esta entradavar supplies: Array = []

    Read waiting for the amount currently available to load.

    Declarado en scripts/sim/station.gd:22
  • Station.deleted var
    Enlace a esta entradavar deleted := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:23
  • Station.owner varThe company that owns the station.
    Enlace a esta entradavar owner: Company = null

    Can be null, for example at an oil rig dock. Use usable_by(company) to check access.

    Declarado en scripts/sim/station.gd:24
  • Station.rig varThe industry out at sea this dock is built into (an oil rig), or null.
    Enlace a esta entradavar rig: Industry = null

    Such a dock belongs to nobody: every company's ships may call there, and it is never built or removed by hand.

    Declarado en scripts/sim/station.gd:27
  • Station.town varthe town whose council looks after this station's area
    Enlace a esta entradavar town: Town = nullDeclarado en scripts/sim/station.gd:28
  • Station.attractions varattraction types inside the catchment (tourist fares)
    Enlace a esta entradavar attractions: Array = []Declarado en scripts/sim/station.gd:29
  • Station.workers varan industry in reach employs passengers who come here (RAIL-28)
    Enlace a esta entradavar workers := falseDeclarado en scripts/sim/station.gd:30
  • Station.waiting varamount waiting (float)
    Enlace a esta entradavar waiting := {}Declarado en scripts/sim/station.gd:33
  • Station.transfers varCargo left here by vehicles with a transfer order, for another vehicle to carry on (RAIL-20): [{"amt", "c", "from", "pos", "day", "credit"}], oldest first.
    Enlace a esta entradavar transfers: Array = []

    It is part of waiting too; these packets remember where and when it was first loaded, so the last leg is paid for the whole trip.

    Declarado en scripts/sim/station.gd:37
  • Station.rating var0..1, share of nearby production this station receives
    Enlace a esta entradavar rating := {}Declarado en scripts/sim/station.gd:38
  • Station.served vartrue once a vehicle with this cargo has orders here
    Enlace a esta entradavar served := {}Declarado en scripts/sim/station.gd:39
  • Station.last_pickup vargame day of the last loading attempt
    Enlace a esta entradavar last_pickup := {}Declarado en scripts/sim/station.gd:40
  • Station.last_speed varspeed of the last vehicle that loaded here (tiles/day)
    Enlace a esta entradavar last_speed := {}Declarado en scripts/sim/station.gd:41
  • Station.last_age varage in years of the last vehicle that loaded here
    Enlace a esta entradavar last_age := {}Declarado en scripts/sim/station.gd:42
  • Station.first_arrival var
    Enlace a esta entradavar first_arrival := true

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:43
  • Station.match_told varthe player has had the news of this station's first match day
    Enlace a esta entradavar match_told := falseDeclarado en scripts/sim/station.gd:44
  • Station.last_visit vargame day a vehicle last called here
    Enlace a esta entradavar last_visit := -1.0Declarado en scripts/sim/station.gd:45
  • Station.picked varcargo -> units loaded this month
    Enlace a esta entradavar picked := {}Declarado en scripts/sim/station.gd:46
  • Station.picked_last var
    Enlace a esta entradavar picked_last := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:47
  • Station.delivered varcargo -> units unloaded (and paid for) this month
    Enlace a esta entradavar delivered := {}Declarado en scripts/sim/station.gd:48
  • Station.delivered_last var
    Enlace a esta entradavar delivered_last := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:49
  • Station.earned varfares paid for deliveries here this month
    Enlace a esta entradavar earned := 0Declarado en scripts/sim/station.gd:50
  • Station.earned_last var
    Enlace a esta entradavar earned_last := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:51
  • Station.inflow varHow much of each cargo comes here in a month, as a running estimate (Economy._update_ratings): what waits beyond this slowly gives up (RAIL-56).
    Enlace a esta entradavar inflow := {}

    Production and transfers count; a match-day crowd doesn't, so the fans who can't get away go home over the following weeks.

    Declarado en scripts/sim/station.gd:55
  • Station.arrived varcargo -> units come since the last production run
    Enlace a esta entradavar arrived := {}Declarado en scripts/sim/station.gd:56
  • Station.catch_rect var
    Enlace a esta entradavar catch_rect := Rect2i()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:59
  • Station.house_ok var
    Enlace a esta entradavar house_ok := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:60
  • Station._houses var
    Enlace a esta entradavar _houses := PackedInt32Array()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:61
  • Station.roll_month func
    Enlace a esta entradafunc roll_month() -> void
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:64
  • Station._init func
    Enlace a esta entradafunc _init(p_id: int, p_name: String) -> void
    Parámetros
    • p_id: int
    • p_name: String
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:73
  • Station.tiles_of funcTiles vehicles of kind stop on: platforms, road stops, the water in front of a dock, the airfield.
    Enlace a esta entradafunc tiles_of(m: WorldMap, kind: String) -> Dictionary
    Parámetros
    • m: WorldMap
    • kind: String
    Devuelve
    Dictionary
    Declarado en scripts/sim/station.gd:79
  • Station.usable_by funcWhether who's vehicles may have orders here: its own stations and the open docks of oil rigs.
    Enlace a esta entradafunc usable_by(who: Company) -> bool
    Parámetros
    • who: Company
    Devuelve
    bool
    Declarado en scripts/sim/station.gd:100
  • Station.has_kind funcTests whether the station supports rail, road, water, or air.
    Enlace a esta entradafunc has_kind(kind: String) -> bool

    For ships use water, even though the construction kind for a dock is dock.

    Parámetros
    • kind: String
    Devuelve
    bool
    Declarado en scripts/sim/station.gd:104
  • Station.transfer_neighbors funcOther stations of the same company within TRANSFER_DISTANCE steps of any of our tiles.
    Enlace a esta entradafunc transfer_neighbors(m: WorldMap) -> Array[Station]
    Parámetros
    • m: WorldMap
    Devuelve
    Array[Station]
    Declarado en scripts/sim/station.gd:114
  • Station.transfer_amount funcUnits of c left here by transfers and still waiting.
    Enlace a esta entradafunc transfer_amount(c: String) -> int
    Parámetros
    • c: String
    Devuelve
    int
    Declarado en scripts/sim/station.gd:132
  • Station.add_transfer funcLeave cargo from a vehicle here for another to pick up (see Economy.unload).
    Enlace a esta entradafunc add_transfer(p: Dictionary) -> void
    Parámetros
    • p: Dictionary
    Devuelve
    void
    Declarado en scripts/sim/station.gd:141
  • Station.add_waiting funcCargo c comes here to wait: counted in waiting and in what arrives (see inflow).
    Enlace a esta entradafunc add_waiting(c: String, amt: float) -> void
    Parámetros
    • c: String
    • amt: float
    Devuelve
    void
    Declarado en scripts/sim/station.gd:147
  • Station.take_transfers funcTake up to n units of transferred c (oldest first), as packets to put on board.
    Enlace a esta entradafunc take_transfers(c: String, n: int) -> Array

    Waiting cargo that went away (a poor rating, the cap) takes the transferred share with it first.

    Parámetros
    • c: String
    • n: int
    Devuelve
    Array
    Declarado en scripts/sim/station.gd:154
  • Station.platform_len funcLength in tiles of the platform t is part of: the straight row of this station's rail tiles along the track through t (0 if t isn't one of them).
    Enlace a esta entradafunc platform_len(m: WorldMap, t: Vector2i) -> int
    Parámetros
    • m: WorldMap
    • t: Vector2i
    Devuelve
    int
    Declarado en scripts/sim/station.gd:185
  • Station.longest_platform funcThe longest of this station's platforms, in tiles (0 without any).
    Enlace a esta entradafunc longest_platform(m: WorldMap) -> int
    Parámetros
    • m: WorldMap
    Devuelve
    int
    Declarado en scripts/sim/station.gd:205
  • Station.air_pos funcWhere aircraft park: the middle of the runway.
    Enlace a esta entradafunc air_pos(m: WorldMap) -> Vector2
    Parámetros
    • m: WorldMap
    Devuelve
    Vector2
    Declarado en scripts/sim/station.gd:215
  • Station.is_runway static funcAirfields are 3 x 2 tiles: the runway is the first row (axis 0) or first column (axis 1).
    Enlace a esta entradastatic func is_runway(o: Dictionary) -> bool
    Parámetros
    • o: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/station.gd:227
  • Station.total_waiting funcSums the station’s waiting quantities across all cargo IDs and converts the result to a whole number.
    Enlace a esta entradafunc total_waiting() -> int

    For a single cargo read that key in waiting.

    Devuelve
    int
    Declarado en scripts/sim/station.gd:232
  • Station.sign_pos funcReturns the average position of the station’s tile centers, in world tile coordinates.
    Enlace a esta entradafunc sign_pos() -> Vector2

    Useful for locating a news item on the map.

    Devuelve
    Vector2
    Declarado en scripts/sim/station.gd:239
  • Station.stop_pos funcFor a road vehicle, point to the roadside stop even when it shares a station with other modes.
    Enlace a esta entradafunc stop_pos(m: WorldMap, kind: String) -> Vector2
    Parámetros
    • m: WorldMap
    • kind: String
    Devuelve
    Vector2
    Declarado en scripts/sim/station.gd:247
  • Station.refresh funcRecompute station type flags, catchment and what it accepts / supplies.
    Enlace a esta entradafunc refresh(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/station.gd:257
  • Station.refresh_coverage funcRecheck what reaches this station after its surroundings change.
    Enlace a esta entradafunc refresh_coverage(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/station.gd:300
  • Station.house_tiles funcThe tiles of the catchment with a house on them, in catchment order.
    Enlace a esta entradafunc house_tiles(m: WorldMap) -> PackedInt32Array
    Parámetros
    • m: WorldMap
    Devuelve
    PackedInt32Array
    Declarado en scripts/sim/station.gd:309
  • Station.add_catchment static func
    Enlace a esta entradastatic func add_catchment(m: WorldMap, catch: Dictionary, t: Vector2i, r: int) -> void
    Parámetros
    • m: WorldMap
    • catch: Dictionary
    • t: Vector2i
    • r: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:335
  • Station.coverage static funcWhat a catchment area accepts and supplies.
    Enlace a esta entradastatic func coverage(m: WorldMap, catch: Dictionary) -> Dictionary

    Towns accept passengers from 12 residents and goods / food from 60; houses supply passengers and mail (waste too, from the Late century). Some buildings take more in later eras, and so does every house of a big enough town (Data.TOWN_TAKES: electronics, cars). An industry that employs people takes passengers as workers and sends some home again ("workers": true).

    Parámetros
    • m: WorldMap
    • catch: Dictionary
    Devuelve
    Dictionary
    Llama a
    Data.town_takes, Data.town_takes_by_size, Data.town_makes
    Declarado en scripts/sim/station.gd:346
  • Station.nearest_town static func
    Enlace a esta entradastatic func nearest_town(m: WorldMap, p: Vector2, within: float) -> Town
    Parámetros
    • m: WorldMap
    • p: Vector2
    • within: float
    Devuelve
    Town

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:409
  • Station.make_name static func
    Enlace a esta entradastatic func make_name(m: WorldMap, at: Vector2i) -> String
    Parámetros
    • m: WorldMap
    • at: Vector2i
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/station.gd:420

Vehicle

  • Vehicle.LOCO_LEN const
    Enlace a esta entradaconst LOCO_LEN := 0.56

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:8
  • Vehicle.CAR_LEN const
    Enlace a esta entradaconst CAR_LEN := 0.5

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:9
  • Vehicle.RV_LEN const
    Enlace a esta entradaconst RV_LEN := 0.46

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:10
  • Vehicle.SHIP_LEN const
    Enlace a esta entradaconst SHIP_LEN := 0.9

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:11
  • Vehicle.PLANE_LEN const
    Enlace a esta entradaconst PLANE_LEN := 0.7

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:12
  • Vehicle.CRUISE constflight altitude above the ground
    Enlace a esta entradaconst CRUISE := 3.2Declarado en scripts/sim/vehicle.gd:13
  • Vehicle.LOAD_RATE constunits moved per day while loading
    Enlace a esta entradaconst LOAD_RATE := 40.0Declarado en scripts/sim/vehicle.gd:14
  • Vehicle.LANE constroad vehicles keep right by this much
    Enlace a esta entradaconst LANE := 0.12Declarado en scripts/sim/vehicle.gd:15
  • Vehicle.ROAD_GAP constQueues (RAIL-26).
    Enlace a esta entradaconst ROAD_GAP := 0.12

    A road vehicle keeps ROAD_GAP behind the one ahead in its lane and, stuck for ROAD_GIVE_UP days, drives through, so a jam always clears (as trains do at signals). A ship waits for a free berth and a plane holds for a free stand at most QUEUE_GIVE_UP days, then goes in anyway.

    Declarado en scripts/sim/vehicle.gd:19
  • Vehicle.ROAD_GIVE_UP const
    Enlace a esta entradaconst ROAD_GIVE_UP := 3.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:20
  • Vehicle.QUEUE_GIVE_UP const
    Enlace a esta entradaconst QUEUE_GIVE_UP := 15.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:21
  • Vehicle.STANDS constaircraft an airport takes at a time
    Enlace a esta entradaconst STANDS := 3Declarado en scripts/sim/vehicle.gd:22
  • Vehicle.HOLD_AT consthow far out a plane asks for a stand: where it would start to descend
    Enlace a esta entradaconst HOLD_AT := 5.0Declarado en scripts/sim/vehicle.gd:23
  • Vehicle.HOLD_R constradius of the circle a plane holds on, at cruising height...
    Enlace a esta entradaconst HOLD_R := 2.5Declarado en scripts/sim/vehicle.gd:24
  • Vehicle.HOLD_STEP const...or that much wider, or twice that (see _hold_r)
    Enlace a esta entradaconst HOLD_STEP := 0.7Declarado en scripts/sim/vehicle.gd:25
  • Vehicle.HOLD_BANK consthow far it leans into that circle (radians)
    Enlace a esta entradaconst HOLD_BANK := 0.35Declarado en scripts/sim/vehicle.gd:26
  • Vehicle.ORDER_FLAGS constWhat an order can say besides "full": leave unaccepted cargo for another vehicle (RAIL-20); unload everything and take nothing on; deliver but take nothing on; call at a depot before the next stop (RAIL-36).
    Enlace a esta entradaconst ORDER_FLAGS := ["transfer", "unload", "no_load", "depot"]

    Saved in this order (see SaveGame).

    Declarado en scripts/sim/vehicle.gd:30
  • Vehicle.id var
    Enlace a esta entradavar id := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:32
  • Vehicle.name var
    Enlace a esta entradavar name := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:33
  • Vehicle.model_id var
    Enlace a esta entradavar model_id := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:34
  • Vehicle.model var
    Enlace a esta entradavar model: Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:35
  • Vehicle.kind var
    Enlace a esta entradavar kind := "road"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:36
  • Vehicle.cargo var
    Enlace a esta entradavar cargo := "pax"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:37
  • Vehicle.wagons var
    Enlace a esta entradavar wagons := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:38
  • Vehicle.owner var
    Enlace a esta entradavar owner: Company

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:39
  • Vehicle.orders var[{"st": Station, "full": bool, and any of ORDER_FLAGS: bool (missing: false)}]
    Enlace a esta entradavar orders: Array = []Declarado en scripts/sim/vehicle.gd:40
  • Vehicle.order_idx var
    Enlace a esta entradavar order_idx := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:41
  • Vehicle.state varloading | moving | lost | stopped | servicing | wrecked (see Sim.wrecks)
    Enlace a esta entradavar state := "loading"Declarado en scripts/sim/vehicle.gd:43
  • Vehicle.status var
    Enlace a esta entradavar status := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:44
  • Vehicle.timer var
    Enlace a esta entradavar timer := 0.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:45
  • Vehicle.segs varpath history; the last one is the one the head is on
    Enlace a esta entradavar segs: Array = []Declarado en scripts/sim/vehicle.gd:46
  • Vehicle.t varprogress along the last segment (0..1)
    Enlace a esta entradavar t := 1.0Declarado en scripts/sim/vehicle.gd:47
  • Vehicle.route var
    Enlace a esta entradavar route: Array[Vector2i] = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:48
  • Vehicle.rp varindex in route of the tile the head is in
    Enlace a esta entradavar rp := 0Declarado en scripts/sim/vehicle.gd:49
  • Vehicle.speed varcurrent speed, tiles per day
    Enlace a esta entradavar speed := 0.0Declarado en scripts/sim/vehicle.gd:50
  • Vehicle.at_station var
    Enlace a esta entradavar at_station: Station = null

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:51
  • Vehicle.lost_ctx var
    Enlace a esta entradavar lost_ctx := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:52
  • Vehicle.lost_tries var
    Enlace a esta entradavar lost_tries := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:53
  • Vehicle.cap var
    Enlace a esta entradavar cap := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:55
  • Vehicle.packets var[{"amt": int, "from": Station, "day": float}]
    Enlace a esta entradavar packets: Array = []Declarado en scripts/sim/vehicle.gd:56
  • Vehicle.profit_this var
    Enlace a esta entradavar profit_this := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:57
  • Vehicle.profit_last var
    Enlace a esta entradavar profit_last := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:58
  • Vehicle.income_total var
    Enlace a esta entradavar income_total := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:59
  • Vehicle.age_days var
    Enlace a esta entradavar age_days := 0.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:60
  • Vehicle.cost var
    Enlace a esta entradavar cost := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:61
  • Vehicle.trips var
    Enlace a esta entradavar trips := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:62
  • Vehicle.stopped_by_player var
    Enlace a esta entradavar stopped_by_player := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:63
  • Vehicle.sig_wait vardays spent waiting at a red signal or in front of a junction
    Enlace a esta entradavar sig_wait := 0.0Declarado en scripts/sim/vehicle.gd:64
  • Vehicle.held_at varWhat the train waited at when it last moved: 0 nothing, 1 a signal, 2 a junction (RAIL-80).
    Enlace a esta entradavar held_at := 0Declarado en scripts/sim/vehicle.gd:66
  • Vehicle.GIVE_UP_DAYS consta train held this long at a signal or junction is deadlocked
    Enlace a esta entradaconst GIVE_UP_DAYS := 30.0Declarado en scripts/sim/vehicle.gd:67
  • Vehicle._backoff_try varwhen it last tried turning round out of a deadlock
    Enlace a esta entradavar _backoff_try := -1000.0Declarado en scripts/sim/vehicle.gd:68
  • Vehicle._backed_off_at varwhen it last did
    Enlace a esta entradavar _backed_off_at := -1000.0Declarado en scripts/sim/vehicle.gd:69
  • Vehicle._forced_at varwhen it last went on anyway, unable to turn round
    Enlace a esta entradavar _forced_at := -1000.0Declarado en scripts/sim/vehicle.gd:70
  • Vehicle._turned var_held_up turned it round just now (see _advance)
    Enlace a esta entradavar _turned := falseDeclarado en scripts/sim/vehicle.gd:71
  • Vehicle._detour_day varwhen it last looked for a way round a busy stretch (see _detour)
    Enlace a esta entradavar _detour_day := -1000.0Declarado en scripts/sim/vehicle.gd:72
  • Vehicle.queue_wait vardays held up in a queue: in traffic, for a berth, or holding (RAIL-26)
    Enlace a esta entradavar queue_wait := 0.0Declarado en scripts/sim/vehicle.gd:73
  • Vehicle.hold_a varaircraft holding over a full airport: its angle round the circle, -1 when not
    Enlace a esta entradavar hold_a := -1.0Declarado en scripts/sim/vehicle.gd:74
  • Vehicle.old_warned var
    Enlace a esta entradavar old_warned := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:75
  • Vehicle.electric varneeds overhead wires (set from the model)
    Enlace a esta entradavar electric := falseDeclarado en scripts/sim/vehicle.gd:76
  • Vehicle.wagon_cargos vartrains: the cargo of each wagon, front to back (mixed trains)
    Enlace a esta entradavar wagon_cargos: Array = []Declarado en scripts/sim/vehicle.gd:77
  • Vehicle.reliability var0..1; wears down day by day, restored by servicing
    Enlace a esta entradavar reliability := 1.0Declarado en scripts/sim/vehicle.gd:78
  • Vehicle.last_service vargame day of the last service
    Enlace a esta entradavar last_service := 0.0Declarado en scripts/sim/vehicle.gd:79
  • Vehicle.breakdowns var
    Enlace a esta entradavar breakdowns := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:80
  • Vehicle.broken vardays left standing broken down
    Enlace a esta entradavar broken := 0.0Declarado en scripts/sim/vehicle.gd:81
  • Vehicle.service_to varthe depot it's heading to for servicing
    Enlace a esta entradavar service_to := Vector2i(-1, -1)Declarado en scripts/sim/vehicle.gd:82
  • Vehicle.load_avg varrunning average of how full it leaves stations (0..1), -1 until known
    Enlace a esta entradavar load_avg := -1.0Declarado en scripts/sim/vehicle.gd:83
  • Vehicle.last_trip varlast paid delivery: {"pay", "units", "day", "st"}
    Enlace a esta entradavar last_trip := {}Declarado en scripts/sim/vehicle.gd:84
  • Vehicle.look_rev vargoes up when a refit changes how it looks (the view redraws it)
    Enlace a esta entradavar look_rev := 0Declarado en scripts/sim/vehicle.gd:85
  • Vehicle.refit_to vara change of cargo ordered and paid for, done at the depot (see refit)
    Enlace a esta entradavar refit_to: Array = []Declarado en scripts/sim/vehicle.gd:86
  • Vehicle.refit_paid varwhat ordering it cost (given back if it is cancelled)
    Enlace a esta entradavar refit_paid := 0Declarado en scripts/sim/vehicle.gd:87
  • Vehicle.stuck_cargo vara cargo on board that no stop in the orders accepts (see _check_stuck)
    Enlace a esta entradavar stuck_cargo := ""Declarado en scripts/sim/vehicle.gd:88
  • Vehicle.stuck_stops varstops it has called at with that cargo on board, undelivered
    Enlace a esta entradavar stuck_stops := 0Declarado en scripts/sim/vehicle.gd:89
  • Vehicle.stuck_news vargame day the player was last told about it (-1: never)
    Enlace a esta entradavar stuck_news := -1Declarado en scripts/sim/vehicle.gd:90
  • Vehicle.line varthe line it runs on (its orders are then the line's), or null
    Enlace a esta entradavar line: Line = nullDeclarado en scripts/sim/vehicle.gd:91
  • Vehicle.lap_start vargame day it last left its line's first stop (-1: not yet)
    Enlace a esta entradavar lap_start := -1.0Declarado en scripts/sim/vehicle.gd:92
  • Vehicle.held vardays held at the first stop this round to keep the line evenly spaced
    Enlace a esta entradavar held := 0.0Declarado en scripts/sim/vehicle.gd:93
  • Vehicle.air_from var
    Enlace a esta entradavar air_from := Vector2.ZERO

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:95
  • Vehicle.air_to var
    Enlace a esta entradavar air_to := Vector2.ZERO

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:96
  • Vehicle.air_d var
    Enlace a esta entradavar air_d := 0.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:97
  • Vehicle.air_y0 var
    Enlace a esta entradavar air_y0 := 0.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:98
  • Vehicle.air_y1 var
    Enlace a esta entradavar air_y1 := 0.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:99
  • Vehicle._accel varacceleration as a multiple of the top speed, by kind
    Enlace a esta entradavar _accel := 2.5Declarado en scripts/sim/vehicle.gd:101
  • Vehicle._len varlength of a road vehicle, ship or aircraft (of model _len_of)
    Enlace a esta entradavar _len := -1.0Declarado en scripts/sim/vehicle.gd:102
  • Vehicle._len_of var
    Enlace a esta entradavar _len_of := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:103
  • Vehicle._back_u varsecond result of _back_i
    Enlace a esta entradavar _back_u := 0.0Declarado en scripts/sim/vehicle.gd:104
  • Vehicle._routes varroutes found before, by order (see _find)
    Enlace a esta entradavar _routes := {}Declarado en scripts/sim/vehicle.gd:105
  • Vehicle._fit vartrains: the share of the train alongside the platform it stands at
    Enlace a esta entradavar _fit := 1.0Declarado en scripts/sim/vehicle.gd:106
  • Vehicle._course varships: the straight course route follows (see water_course), {} for none
    Enlace a esta entradavar _course := {}Declarado en scripts/sim/vehicle.gd:107
  • Vehicle._queued varheld up in a queue this step (counts towards queue_wait)
    Enlace a esta entradavar _queued := falseDeclarado en scripts/sim/vehicle.gd:108
  • Vehicle._blocked_by varroad vehicles: id of the one it is keeping behind (0: none)
    Enlace a esta entradavar _blocked_by := 0Declarado en scripts/sim/vehicle.gd:109
  • Vehicle.route_cache static varSwitch for the tests: with it off every departure searches for its route again.
    Enlace a esta entradastatic var route_cache := trueDeclarado en scripts/sim/vehicle.gd:111
  • Vehicle._seg_cache static varmake_seg results by tile, sides and shape
    Enlace a esta entradastatic var _seg_cache := {}Declarado en scripts/sim/vehicle.gd:112
  • Vehicle.SEG_CACHE_MAX const
    Enlace a esta entradaconst SEG_CACHE_MAX := 200000

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:113
  • Vehicle._init func
    Enlace a esta entradafunc _init(p_id: int, p_model: String, p_cargo: String, p_wagons: int, p_owner: Company) -> void
    Parámetros
    • p_id: int
    • p_model: String
    • p_cargo: String
    • p_wagons: int
    • p_owner: Company
    Devuelve
    void
    Llama a
    Data.model, Data.wagon_cap

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:116
  • Vehicle._default_name funcThe name a vehicle gets when bought: what it is and its number.
    Enlace a esta entradafunc _default_name() -> String
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/vehicle.gd:135
  • Vehicle.load_amount func
    Enlace a esta entradafunc load_amount() -> int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:145
  • Vehicle.set_consist funcA train's wagons, one cargo each (front to back).
    Enlace a esta entradafunc set_consist(list: Array) -> void

    cargo becomes the first wagon's.

    Parámetros
    • list: Array
    Devuelve
    void
    Llama a
    Data.wagon_cap
    Declarado en scripts/sim/vehicle.gd:153
  • Vehicle.refit funcChange what the vehicle carries: a train's wagons (one cargo each, front to back) or the one cargo of anything else.
    Enlace a esta entradafunc refit(list: Array, m: WorldMap = null) -> void

    Cargo on board that no longer has room is lost. Sim.refit_vehicle orders it and Sim.finish_refit calls this once the vehicle is at a depot.

    Parámetros
    • list: Array
    • m: WorldMap = null
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:168
  • Vehicle._trim_load funcDrop what no longer fits on board (was: the cargo of packets from before they were labelled).
    Enlace a esta entradafunc _trim_load(was: String) -> void
    Parámetros
    • was: String
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:187
  • Vehicle.change_model funcBecome another model of the same kind, where it stands (see Sim.replace_vehicle, which checks that the model can carry its cargo and run its route).
    Enlace a esta entradafunc change_model(p_model: String) -> void

    A train keeps its wagons, as many as the new engine pulls; anything else gets the new model's capacity. Cargo without room is lost.

    Parámetros
    • p_model: String
    Devuelve
    void
    Llama a
    Data.model, Data.wagon_cap
    Declarado en scripts/sim/vehicle.gd:205
  • Vehicle._grow_tail funcLay more history behind the tail, following the track, so a train that just got longer has somewhere to stand (the same walk spawn does).
    Enlace a esta entradafunc _grow_tail(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void
    Llama a
    Const.opp
    Declarado en scripts/sim/vehicle.gd:228
  • Vehicle.cargos funcThe cargos this vehicle carries (several for a mixed train).
    Enlace a esta entradafunc cargos() -> Array
    Devuelve
    Array
    Declarado en scripts/sim/vehicle.gd:263
  • Vehicle.is_mixed func
    Enlace a esta entradafunc is_mixed() -> bool
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:273
  • Vehicle.cap_of funcReturns the capacity for one cargo ID.
    Enlace a esta entradafunc cap_of(c: String) -> int

    For mixed trains, it counts only wagons assigned to that cargo. A cargo the vehicle cannot currently carry has capacity zero.

    Parámetros
    • c: String
    Devuelve
    int
    Llama a
    Data.wagon_cap
    Declarado en scripts/sim/vehicle.gd:277
  • Vehicle.load_of funcAdds up the units in the vehicle’s cargo packets for one cargo ID.
    Enlace a esta entradafunc load_of(c: String) -> int

    This is the current load, rather than available room.

    Parámetros
    • c: String
    Devuelve
    int
    Declarado en scripts/sim/vehicle.gd:287
  • Vehicle.running_cost funcReturns the annual running cost of the model plus its wagons.
    Enlace a esta entradafunc running_cost() -> int
    Devuelve
    int
    Declarado en scripts/sim/vehicle.gd:295
  • Vehicle.life_years funcReturns the usual service life in years for the vehicle’s transport kind.
    Enlace a esta entradafunc life_years() -> int
    Devuelve
    int
    Declarado en scripts/sim/vehicle.gd:299
  • Vehicle.is_old funcChecks whether the vehicle’s age in days exceeds its service life in years, using 365 days per year.
    Enlace a esta entradafunc is_old() -> bool
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:303
  • Vehicle.value funcReturns the current resale value in dollars.
    Enlace a esta entradafunc value() -> int

    The value falls with age and bottoms out at 15 percent of purchase cost.

    Devuelve
    int
    Declarado en scripts/sim/vehicle.gd:307
  • Vehicle.max_speed funcReturns the model’s maximum speed in tiles per game day.
    Enlace a esta entradafunc max_speed() -> float

    Steam trains lose three percent of model speed per wagon in this calculation.

    Devuelve
    float
    Declarado en scripts/sim/vehicle.gd:311
  • Vehicle.train_length func
    Enlace a esta entradafunc train_length() -> float
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:318
  • Vehicle.tiles_long static funcHow many platform tiles a train with n_wagons wagons needs to stand alongside in full.
    Enlace a esta entradastatic func tiles_long(n_wagons: int) -> int

    A buffer's worth of overhang (OVERHANG_OK) doesn't count: two wagons a tile, less one for the engine, so 3 tiles take 5 wagons.

    Parámetros
    • n_wagons: int
    Devuelve
    int
    Declarado en scripts/sim/vehicle.gd:330
  • Vehicle.OVERHANG_OK const
    Enlace a esta entradaconst OVERHANG_OK := 0.1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:334
  • Vehicle.platform_fit static funcThe share of a train of length tiles that is alongside a platform of platform tiles.
    Enlace a esta entradastatic func platform_fit(length: float, platform: int) -> float

    Only those wagons load and unload at a time, so loading a train longer than the platform takes longer (the rest are drawn up in turns) while its back wagons stick out onto the line behind (RAIL-18).

    Parámetros
    • length: float
    • platform: int
    Devuelve
    float
    Declarado en scripts/sim/vehicle.gd:340
  • Vehicle.body_len static funcLength of a road vehicle, ship or aircraft of this model (see Data.LENGTH).
    Enlace a esta entradastatic func body_len(id: String) -> float
    Parámetros
    • id: String
    Devuelve
    float
    Llama a
    Data.model, Data.look
    Declarado en scripts/sim/vehicle.gd:347
  • Vehicle.dest func
    Enlace a esta entradafunc dest() -> Station
    Devuelve
    Station

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:356
  • Vehicle._edge static func
    Enlace a esta entradastatic func _edge(t: Vector2i, d: int) -> Vector2
    Parámetros
    • t: Vector2i
    • d: int
    Devuelve
    Vector2

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:362
  • Vehicle._center static func
    Enlace a esta entradastatic func _center(t: Vector2i) -> Vector2
    Parámetros
    • t: Vector2i
    Devuelve
    Vector2

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:366
  • Vehicle.make_seg static funcA segment crossing tile t, entering through side a and leaving through side b (-1 means starting or stopping at the tile centre).
    Enlace a esta entradastatic func make_seg(t: Vector2i, a: int, b: int, chord: int = 0) -> Dictionary

    chord: the piece's shape (see WorldMap.piece_shape) when it is part of a diagonal run or eases into one; the piece is then a cubic curve.

    Parámetros
    • t: Vector2i
    • a: int
    • b: int
    • chord: int = 0
    Devuelve
    Dictionary
    Llama a
    Const.opp, WorldMap.piece_curve
    Declarado en scripts/sim/vehicle.gd:374
  • Vehicle._seg_len static func
    Enlace a esta entradastatic func _seg_len(s: Dictionary) -> float
    Parámetros
    • s: Dictionary
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:404
  • Vehicle.seg_pos static func
    Enlace a esta entradastatic func seg_pos(s: Dictionary, u: float) -> Vector2
    Parámetros
    • s: Dictionary
    • u: float
    Devuelve
    Vector2

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:414
  • Vehicle.seg_dir static funcThe way along segment s at u (not normalised; zero only half-way round a U-turn).
    Enlace a esta entradastatic func seg_dir(s: Dictionary, u: float) -> Vector2
    Parámetros
    • s: Dictionary
    • u: float
    Devuelve
    Vector2
    Declarado en scripts/sim/vehicle.gd:426
  • Vehicle.rev_seg static func
    Enlace a esta entradastatic func rev_seg(s: Dictionary) -> Dictionary
    Parámetros
    • s: Dictionary
    Devuelve
    Dictionary
    Llama a
    WorldMap.flip_shape

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:437
  • Vehicle._seg funcA segment through tile t that knows whether it's part of a diagonal run.
    Enlace a esta entradafunc _seg(m: WorldMap, t: Vector2i, a: int, b: int) -> Dictionary
    Parámetros
    • m: WorldMap
    • t: Vector2i
    • a: int
    • b: int
    Devuelve
    Dictionary
    Declarado en scripts/sim/vehicle.gd:442
  • Vehicle.SEA_ROOM constHow far a ship's straight leg keeps from land on either side (tiles).
    Enlace a esta entradaconst SEA_ROOM := 0.3Declarado en scripts/sim/vehicle.gd:449
  • Vehicle.water_course static funcShips aren't held to the grid: they sail straight legs across open water, which bend only where something is in the way.
    Enlace a esta entradastatic func water_course(m: WorldMap, tiles: Array) -> Dictionary

    tiles is a route of neighbouring sailable tiles (a Pathfinder answer); the course runs between its ends along the shortest way by water (Pathfinder.find_sea), pulled tight. Returns {"tiles": the tiles the legs pass through, neighbours again, "cross": where the course enters each of them (the first: its centre), "turn": 1 at each tile where two legs meet}.

    Parámetros
    • m: WorldMap
    • tiles: Array
    Devuelve
    Dictionary
    Llama a
    Pathfinder.find_sea
    Declarado en scripts/sim/vehicle.gd:457
  • Vehicle._sea_clear static funcWhether a ship can sail straight from the centre of tile a to the centre of tile b, keeping SEA_ROOM clear of anything that isn't open water.
    Enlace a esta entradastatic func _sea_clear(m: WorldMap, a: Vector2i, b: Vector2i) -> bool
    Parámetros
    • m: WorldMap
    • a: Vector2i
    • b: Vector2i
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:498
  • Vehicle._walk_line static funcThe tiles a straight line from p to q passes through after the first, in order and each the neighbour of the one before (through a corner it goes across first), appended to tiles, and where it enters each one appended to cross.
    Enlace a esta entradastatic func _walk_line(p: Vector2, q: Vector2, tiles: Array[Vector2i], cross: PackedVector2Array) -> void
    Parámetros
    • p: Vector2
    • q: Vector2
    • tiles: Array[Vector2i]
    • cross: PackedVector2Array
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:515
  • Vehicle.course_seg static funcThe piece of a ship's course (see water_course) in its kth tile.
    Enlace a esta entradastatic func course_seg(c: Dictionary, k: int, a: int = -2, from: Variant = null) -> Dictionary

    a: the side it comes in by (-2: from the course, -1: from the tile centre); from: where it starts instead of the course's own entry point (a ship turning onto a new course mid-tile).

    Parámetros
    • c: Dictionary
    • k: int
    • a: int = -2
    • from: Variant = null
    Devuelve
    Dictionary
    Llama a
    Const.opp, BuildOps.dir_between
    Declarado en scripts/sim/vehicle.gd:552
  • Vehicle.free_seg static funcA segment through tile t (sides a to b) along any curve: from p0 to p2, pulled towards c.
    Enlace a esta entradastatic func free_seg(t: Vector2i, a: int, b: int, p0: Vector2, c: Vector2, p2: Vector2) -> Dictionary
    Parámetros
    • t: Vector2i
    • a: int
    • b: int
    • p0: Vector2
    • c: Vector2
    • p2: Vector2
    Devuelve
    Dictionary
    Declarado en scripts/sim/vehicle.gd:569
  • Vehicle.course_segs static funcEvery piece of a ship's course, first to last.
    Enlace a esta entradastatic func course_segs(c: Dictionary) -> Array
    Parámetros
    • c: Dictionary
    Devuelve
    Array
    Declarado en scripts/sim/vehicle.gd:576
  • Vehicle._set_route funcSet off along tiles (from the head's tile): a ship's course is pulled straight first.
    Enlace a esta entradafunc _set_route(m: WorldMap, tiles: Array[Vector2i]) -> void
    Parámetros
    • m: WorldMap
    • tiles: Array[Vector2i]
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:584
  • Vehicle._first_seg funcThe first piece of a new route, from where the head is now.
    Enlace a esta entradafunc _first_seg(m: WorldMap, a: int) -> Dictionary
    Parámetros
    • m: WorldMap
    • a: int
    Devuelve
    Dictionary
    Llama a
    BuildOps.dir_between
    Declarado en scripts/sim/vehicle.gd:594
  • Vehicle._pos_back funcWalk d back from the head along the history: {"i": segment index, "u": position in it}.
    Enlace a esta entradafunc _pos_back(d: float) -> Dictionary
    Parámetros
    • d: float
    Devuelve
    Dictionary
    Declarado en scripts/sim/vehicle.gd:605
  • Vehicle._back_i funcThe same walk as _pos_back without building a Dictionary: returns the segment index and leaves the position in it in _back_u.
    Enlace a esta entradafunc _back_i(d: float) -> int
    Parámetros
    • d: float
    Devuelve
    int
    Declarado en scripts/sim/vehicle.gd:623
  • Vehicle.pos_at funcPosition d behind the nose, or Vector2.INF for a hidden segment when it is excluded.
    Enlace a esta entradafunc pos_at(d: float, include_hidden: bool = true) -> Vector2
    Parámetros
    • d: float
    • include_hidden: bool = true
    Devuelve
    Vector2
    Declarado en scripts/sim/vehicle.gd:642
  • Vehicle.body_points funcPoints every step along the train from the nose to the tail (both included), leaving out the part still inside a depot shed.
    Enlace a esta entradafunc body_points(step: float) -> PackedVector2Array

    For crash checks (see Sim._check_crashes).

    Parámetros
    • step: float
    Devuelve
    PackedVector2Array
    Declarado en scripts/sim/vehicle.gd:651
  • Vehicle.heading funcDirection of travel in the current tile (0..3).
    Enlace a esta entradafunc heading() -> int
    Devuelve
    int
    Llama a
    Const.opp
    Declarado en scripts/sim/vehicle.gd:663
  • Vehicle.head_tile func
    Enlace a esta entradafunc head_tile() -> Vector2i
    Devuelve
    Vector2i

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:674
  • Vehicle.spawn funcPlace the vehicle stopped at the centre of station tile tile, facing direction facing.
    Enlace a esta entradafunc spawn(tile: Vector2i, facing: int, m: WorldMap = null, hide_behind: bool = false) -> void

    A train's wagons are laid back along the actual track where there is some.

    Parámetros
    • tile: Vector2i
    • facing: int
    • m: WorldMap = null
    • hide_behind: bool = false
    Devuelve
    void
    Llama a
    Const.opp
    Declarado en scripts/sim/vehicle.gd:684
  • Vehicle.update func
    Enlace a esta entradafunc update(sim: Sim, dt: float) -> void
    Parámetros
    • sim: Sim
    • dt: float
    Devuelve
    void
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:724
  • Vehicle._remaining func
    Enlace a esta entradafunc _remaining() -> float
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:763
  • Vehicle._on_course funcWhether the ship is following a course worked out for its route (not one from an older save).
    Enlace a esta entradafunc _on_course() -> bool
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:780
  • Vehicle._move func
    Enlace a esta entradafunc _move(sim: Sim, dt: float) -> void
    Parámetros
    • sim: Sim
    • dt: float
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:784
  • Vehicle._trim funcDrop the history further back than the tail needs (the walk of _pos_back, stopping as soon as it is clear nothing can go).
    Enlace a esta entradafunc _trim() -> void
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:836
  • Vehicle._advance funcStep the head into the next tile of the route.
    Enlace a esta entradafunc _advance(sim: Sim) -> bool

    Returns false if movement must stop.

    Parámetros
    • sim: Sim
    Devuelve
    bool
    Llama a
    BuildOps.dir_between, L.t, Const.opp
    Declarado en scripts/sim/vehicle.gd:852
  • Vehicle._gate funcRealistic blocking: whether the train must stop before it enters route[k], coming from route[k - 1]: 1 where a signal there faces it, 2 where route[k] is the first tile of a junction (RAIL-80: a junction is guarded as if signals stood round it), else 0.
    Enlace a esta entradafunc _gate(m: WorldMap, k: int) -> int
    Parámetros
    • m: WorldMap
    • k: int
    Devuelve
    int
    Llama a
    BuildOps.dir_between
    Declarado en scripts/sim/vehicle.gd:908
  • Vehicle.way_ahead funcThe blocks the train must have to itself before it may pass the gate in front of route[k] (see _gate): past a signal, the track beyond it; at a junction, the junction itself and the stretch it leaves it by.
    Enlace a esta entradafunc way_ahead(m: WorldMap, blocks: Dictionary, k: int, gate: int) -> Array

    A train never stops on a junction: where the stretch past a junction is too short to hold the whole train before the next signal or junction, the way goes on past that one too, to the first place the train can wait clear of every junction. So a train is never let onto a junction it would then have to block while it waits for the track beyond.

    Parámetros
    • m: WorldMap
    • blocks: Dictionary
    • k: int
    • gate: int
    Devuelve
    Array
    Llama a
    BuildOps.dir_between
    Declarado en scripts/sim/vehicle.gd:927
  • Vehicle._dir_in funcThe way the head entered the tile it is in, or -1.
    Enlace a esta entradafunc _dir_in() -> int
    Devuelve
    int
    Llama a
    Const.opp
    Declarado en scripts/sim/vehicle.gd:973
  • Vehicle.claims_ahead funcThe blocks ahead the train has been let into but not reached yet, for Sim._update_occupancy: standing on a signal, the way past it; inside a junction, the stretch it leaves it by.
    Enlace a esta entradafunc claims_ahead(m: WorldMap, blocks: Dictionary) -> Array
    Parámetros
    • m: WorldMap
    • blocks: Dictionary
    Devuelve
    Array
    Llama a
    BuildOps.dir_between
    Declarado en scripts/sim/vehicle.gd:981
  • Vehicle._held_up funcWhether another train holds any of the way past the gate in front of route[k] (see _gate).
    Enlace a esta entradafunc _held_up(sim: Sim, k: int, gate: int) -> bool

    When it doesn't, the way is claimed at once, so a second train at the same junction waits. Held at a junction, the train looks for another way round once a day: the other side of a passing loop. After waiting GIVE_UP_DAYS (a deadlock) it turns round if it can (see _deadlocked).

    Parámetros
    • sim: Sim
    • k: int
    • gate: int
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:998
  • Vehicle._deadlocked funcA train that has waited GIVE_UP_DAYS for the way ahead.
    Enlace a esta entradafunc _deadlocked(sim: Sim, need: Array) -> bool

    It turns round and finds another way if there is one; only when there is none does it go on anyway. Of the trains that hold each other up, one acts at a time: they never all drive off at once into each other. Returns whether it still waits (or has just turned round: see _turned).

    Parámetros
    • sim: Sim
    • need: Array
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1022
  • Vehicle._busy func
    Enlace a esta entradafunc _busy(sim: Sim, need: Array) -> bool
    Parámetros
    • sim: Sim
    • need: Array
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1051
  • Vehicle._detour funcAnother way to where the route goes that keeps off the blocks other trains hold, from the tile the head is in through the same next tile (the junction ahead): the free side of a passing loop.
    Enlace a esta entradafunc _detour(sim: Sim, blocks: Dictionary, need: Array) -> bool

    Taken only when it isn't much longer. Returns whether the route changed.

    Parámetros
    • sim: Sim
    • blocks: Dictionary
    • need: Array
    Devuelve
    bool
    Llama a
    Pathfinder.find
    Declarado en scripts/sim/vehicle.gd:1062
  • Vehicle._red_signal_dist funcDistance to a red signal or a busy junction (or a wreck on the line) ahead within the next couple of tiles, or -1.
    Enlace a esta entradafunc _red_signal_dist(sim: Sim) -> float
    Parámetros
    • sim: Sim
    Devuelve
    float
    Declarado en scripts/sim/vehicle.gd:1087
  • Vehicle._traffic_gap funcRoad traffic (RAIL-26): how far the front may go before it comes ROAD_GAP short of the back of the vehicle ahead in its lane, or -1 when nothing is in the way.
    Enlace a esta entradafunc _traffic_gap(sim: Sim) -> float

    Only the vehicles whose front is in its own tile or the next three on its route are looked at (Sim.road_at); one is in its lane when it heads the way this one will cross that tile, so traffic the other way and across a junction passes. Held up for ROAD_GIVE_UP days on end, it drives through until the way is clear, so a jam always clears.

    Parámetros
    • sim: Sim
    Devuelve
    float
    Llama a
    L.t
    Declarado en scripts/sim/vehicle.gd:1109
  • Vehicle._berth_dist funcShips (RAIL-26): each water tile in front of a dock is a berth for one ship.
    Enlace a esta entradafunc _berth_dist(sim: Sim) -> float

    While another ship lies at the berth this one is heading for, it stops short of it: returns how far it may still go, or -1 when it may go in. After QUEUE_GIVE_UP days waiting it goes in anyway.

    Parámetros
    • sim: Sim
    Devuelve
    float
    Llama a
    L.t
    Declarado en scripts/sim/vehicle.gd:1180
  • Vehicle._end_queue funcOut of a queue: the wait is over, and the status says where it is going again.
    Enlace a esta entradafunc _end_queue() -> void
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:1198
  • Vehicle._heading_status func
    Enlace a esta entradafunc _heading_status() -> String
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1204
  • Vehicle._free_stops funcThe stop tiles no other vehicle of its kind stands at or is on its way to (all of them when every one is): buses and trucks spread over a stop's tiles and ships over a dock's berths, as trains pick a free platform (RAIL-26).
    Enlace a esta entradafunc _free_stops(sim: Sim, tiles: Dictionary) -> Dictionary
    Parámetros
    • sim: Sim
    • tiles: Dictionary
    Devuelve
    Dictionary
    Declarado en scripts/sim/vehicle.gd:1215
  • Vehicle._usable funcA stop the vehicle can actually use: still exists and has tiles of this vehicle's kind.
    Enlace a esta entradafunc _usable(sim: Sim, st: Station) -> bool
    Parámetros
    • sim: Sim
    • st: Station
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1226
  • Vehicle._skip_to_usable funcMove order_idx forward (starting at the current order) to the first usable stop.
    Enlace a esta entradafunc _skip_to_usable(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1231
  • Vehicle._go_lost funcNo route right now: wait and retry, backing off, and after a few failures try the next stop.
    Enlace a esta entradafunc _go_lost(target: Station, ctx: Dictionary) -> void
    Parámetros
    • target: Station
    • ctx: Dictionary
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/vehicle.gd:1240
  • Vehicle._reroute funcThe way ahead disappeared: find a new route from tile tile, where the head sits on edge side.
    Enlace a esta entradafunc _reroute(sim: Sim, tile: Vector2i, side: int) -> bool
    Parámetros
    • sim: Sim
    • tile: Vector2i
    • side: int
    Devuelve
    bool
    Llama a
    Pathfinder.find, Const.opp, L.t
    Declarado en scripts/sim/vehicle.gd:1252
  • Vehicle._extend_platform func
    Enlace a esta entradafunc _extend_platform(sim: Sim, tiles: Array[Vector2i]) -> Array[Vector2i]
    Parámetros
    • sim: Sim
    • tiles: Array[Vector2i]
    Devuelve
    Array[Vector2i]
    Llama a
    BuildOps.dir_between

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1273
  • Vehicle._arrive func
    Enlace a esta entradafunc _arrive(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    L.t, Economy.unload

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1296
  • Vehicle._load func
    Enlace a esta entradafunc _load(sim: Sim, st: Station) -> int
    Parámetros
    • sim: Sim
    • st: Station
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1337
  • Vehicle._load_transfers func
    Enlace a esta entradafunc _load_transfers(source: Station, pickup: Station, c: String, room: int) -> int
    Parámetros
    • source: Station
    • pickup: Station
    • c: String
    • room: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1371
  • Vehicle._note_pickup func
    Enlace a esta entradafunc _note_pickup(st: Station, c: String, day: float) -> void
    Parámetros
    • st: Station
    • c: String
    • day: float
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1384
  • Vehicle._nearby_transfer_sources funcA feeder can't take transfers from its own drop-off orders, even from a nearby pickup stop.
    Enlace a esta entradafunc _nearby_transfer_sources(sim: Sim, st: Station) -> Array[Station]
    Parámetros
    • sim: Sim
    • st: Station
    Devuelve
    Array[Station]
    Declarado en scripts/sim/vehicle.gd:1392
  • Vehicle.order_flag funcWhether the order this vehicle is carrying out at st has flag key (see ORDER_FLAGS).
    Enlace a esta entradafunc order_flag(st: Station, key: String) -> bool
    Parámetros
    • st: Station
    • key: String
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1403
  • Vehicle.transfers_at funcWhether this vehicle's orders say to leave cargo st doesn't accept there, for another vehicle (see Economy.unload): a transfer stop (RAIL-20) or an unload-only one (RAIL-36).
    Enlace a esta entradafunc transfers_at(st: Station) -> bool
    Parámetros
    • st: Station
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1412
  • Vehicle.loads_at funcWhether this vehicle may take cargo on at st: not at an unload-only or don't-load stop.
    Enlace a esta entradafunc loads_at(st: Station) -> bool
    Parámetros
    • st: Station
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1417
  • Vehicle.drops static funcWhether order o leaves the cargo its stop doesn't accept there: transfer and unload-only stops.
    Enlace a esta entradastatic func drops(o: Dictionary) -> bool
    Parámetros
    • o: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1422
  • Vehicle.transfer_stops static funcThe stations in orders where cargo is left for another vehicle (see drops).
    Enlace a esta entradastatic func transfer_stops(p_orders: Array) -> Array
    Parámetros
    • p_orders: Array
    Devuelve
    Array
    Declarado en scripts/sim/vehicle.gd:1427
  • Vehicle.stranded static funcCargo that would be left on board for good: for each of cargos that a vehicle calling at stops could never deliver, [cargo, Station it is picked up at (null when no stop accepts it at all)].
    Enlace a esta entradastatic func stranded(cargos: Array, stops: Array, transfers: Array = []) -> Array

    A stop never takes back what was loaded there (see Economy.unload), so cargo a stop supplies needs another stop that accepts it. A stop in transfers takes any cargo (to pass it on).

    Parámetros
    • cargos: Array
    • stops: Array
    • transfers: Array = []
    Devuelve
    Array
    Declarado en scripts/sim/vehicle.gd:1439
  • Vehicle._check_stuck funcCalled on arriving at st, after unloading: note cargo still on board that no stop in the orders accepts.
    Enlace a esta entradafunc _check_stuck(sim: Sim, st: Station) -> void

    It stays there unpaid, filling the vehicle, until the orders change; the player is told (the vehicle window, the "needs attention" lists and, at most once a year, the news).

    Parámetros
    • sim: Sim
    • st: Station
    Devuelve
    void
    Llama a
    L.t, L.lower
    Declarado en scripts/sim/vehicle.gd:1459
  • Vehicle.clear_stuck funcForget the undeliverable cargo (it was delivered, or the orders or the cargo changed).
    Enlace a esta entradafunc clear_stuck() -> void
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:1494
  • Vehicle.problem funcWhat is wrong with the vehicle's route, for the player ("" when nothing is).
    Enlace a esta entradafunc problem() -> String
    Devuelve
    String
    Llama a
    L.t, L.lower, L.n
    Declarado en scripts/sim/vehicle.gd:1500
  • Vehicle._wants_more funcWhether a full-load order should keep waiting: some wagon still has room for a cargo this station supplies, or that another of the company's vehicles brings here to transfer (a feeder's drop-off point that produces nothing itself); a mixed train doesn't wait for cargo that never comes here.
    Enlace a esta entradafunc _wants_more(sim: Sim, st: Station) -> bool

    Never at a stop where it takes nothing on.

    Parámetros
    • sim: Sim
    • st: Station
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1511
  • Vehicle._fed_here funcWhether another vehicle of the same company can leave cargo c here or at a nearby station.
    Enlace a esta entradafunc _fed_here(sim: Sim, st: Station, nearby: Array[Station], c: String) -> bool
    Parámetros
    • sim: Sim
    • st: Station
    • nearby: Array[Station]
    • c: String
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1531
  • Vehicle._pickup_fill funcHow full (0..1) the vehicle leaves st, counting only the cargos it can pick up here: ones the station supplies, or ones it actually took on (a transfer).
    Enlace a esta entradafunc _pickup_fill(st: Station) -> float

    -1 at a pure drop-off, so leaving the far end of a one-way freight run empty doesn't halve the average load.

    Parámetros
    • st: Station
    Devuelve
    float
    Declarado en scripts/sim/vehicle.gd:1546
  • Vehicle._update_loading func
    Enlace a esta entradafunc _update_loading(sim: Sim, dt: float) -> void
    Parámetros
    • sim: Sim
    • dt: float
    Devuelve
    void
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1562
  • Vehicle._spacing_wait funcDays still to wait at the line's first stop to keep an even gap behind the vehicle that left before (0: go now).
    Enlace a esta entradafunc _spacing_wait(sim: Sim) -> float

    Never longer than one gap all told, so a slow round can't hold a line up.

    Parámetros
    • sim: Sim
    Devuelve
    float
    Declarado en scripts/sim/vehicle.gd:1611
  • Vehicle.daily funcOnce a day: wear, and perhaps a breakdown.
    Enlace a esta entradafunc daily(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:1629
  • Vehicle.service_due func
    Enlace a esta entradafunc service_due(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1638
  • Vehicle._break_down func
    Enlace a esta entradafunc _break_down(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1642
  • Vehicle._serviced func
    Enlace a esta entradafunc _serviced(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    Data.reliability

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1652
  • Vehicle._try_service funcHead for the nearest depot if one is close (any_distance: however far).
    Enlace a esta entradafunc _try_service(sim: Sim, any_distance := false) -> bool

    Ships, aircraft and rivals' fleets are looked after at their stations instead. Returns true if the vehicle is now on its way to a depot.

    Parámetros
    • sim: Sim
    • any_distance := false
    Devuelve
    bool
    Llama a
    Pathfinder.find
    Declarado en scripts/sim/vehicle.gd:1660
  • Vehicle._try_refit funcA change of cargo is waiting (see Sim.refit_vehicle): head for the nearest depot, however far, where it is done.
    Enlace a esta entradafunc _try_refit(sim: Sim) -> bool

    Ships, aircraft and rivals have it done where they stand, and so does a company playing without depots when none can be reached. Returns true if now on its way to a depot.

    Parámetros
    • sim: Sim
    Devuelve
    bool
    Llama a
    Pathfinder.find
    Declarado en scripts/sim/vehicle.gd:1679
  • Vehicle._depot_status func
    Enlace a esta entradafunc _depot_status() -> String
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1694
  • Vehicle._go_to_depot funcLeave for the depot at the end of res (a Pathfinder route from the head's tile).
    Enlace a esta entradafunc _go_to_depot(sim: Sim, res: Dictionary, goals: Dictionary) -> void
    Parámetros
    • sim: Sim
    • res: Dictionary
    • goals: Dictionary
    Devuelve
    void
    Llama a
    BuildOps.dir_between, Const.opp
    Declarado en scripts/sim/vehicle.gd:1699
  • Vehicle._stop_no_orders funcHalt because no stop can be used.
    Enlace a esta entradafunc _stop_no_orders(ctx: Dictionary = {}) -> void

    ctx remembers where the head is if it stopped mid-route, so starting again resumes from there instead of jumping to the tile centre.

    Parámetros
    • ctx: Dictionary = {}
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/vehicle.gd:1720
  • Vehicle.resume funcRestart a stopped vehicle (from the vehicle window).
    Enlace a esta entradafunc resume() -> void
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:1728
  • Vehicle._route_to_order funcLeave the current tile for the current order's station.
    Enlace a esta entradafunc _route_to_order(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    L.t, BuildOps.dir_between, Const.opp
    Declarado en scripts/sim/vehicle.gd:1736
  • Vehicle._find funcPathfinder.find for this vehicle, remembering the answer under slot (-1: don't).
    Enlace a esta entradafunc _find(sim: Sim, slot: int, start: Vector2i, h: int, goals: Dictionary, reverse_start: bool, uturn: bool) -> Dictionary

    The search depends only on the network, where it starts, the heading and the goal tiles, so the route found last time is still the one it would find as long as those are the same and the network hasn't changed anywhere the search looked (WorldMap.net_changed_in). Every departure asks again, and a remembered route is walked once more before it is used: never a route over track that has gone.

    Parámetros
    • sim: Sim
    • slot: int
    • start: Vector2i
    • h: int
    • goals: Dictionary
    • reverse_start: bool
    • uturn: bool
    Devuelve
    Dictionary
    Llama a
    Pathfinder.find
    Declarado en scripts/sim/vehicle.gd:1781
  • Vehicle._route_stands funcWhether every step of tiles can still be driven (the checks _advance makes on the way).
    Enlace a esta entradafunc _route_stands(m: WorldMap, tiles: Array[Vector2i]) -> bool
    Parámetros
    • m: WorldMap
    • tiles: Array[Vector2i]
    Devuelve
    bool
    Declarado en scripts/sim/vehicle.gd:1801
  • Vehicle._free_platforms funcThe platforms of a station no other train is standing at (all of them if every one is taken).
    Enlace a esta entradafunc _free_platforms(sim: Sim, tiles: Dictionary) -> Dictionary

    A platform is a straight row of station tiles.

    Parámetros
    • sim: Sim
    • tiles: Dictionary
    Devuelve
    Dictionary
    Declarado en scripts/sim/vehicle.gd:1831
  • Vehicle._platform_row static func
    Enlace a esta entradastatic func _platform_row(m: WorldMap, t: Vector2i) -> Vector2i
    Parámetros
    • m: WorldMap
    • t: Vector2i
    Devuelve
    Vector2i

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:1859
  • Vehicle._turn funcTurn the train round where it stands (RAIL-80) and route it on, keeping off the blocks in avoid.
    Enlace a esta entradafunc _turn(sim: Sim, avoid: Dictionary = {}, skip_depot: bool = false) -> bool

    It heads for the depot it is on its way to, or else its next stop, or else another of its stops (taking that order up from there), or else any of the company's depots. With skip_depot (the player's Turn around) a trip to a depot for a service is dropped first. Returns whether it turned.

    Parámetros
    • sim: Sim
    • avoid: Dictionary = {}
    • skip_depot: bool = false
    Devuelve
    bool
    Llama a
    L.t
    Declarado en scripts/sim/vehicle.gd:1870
  • Vehicle.turn_around funcThe player's Turn around (vehicle window): reverse a train out on the line and send it on to its next stop, the way it came if need be.
    Enlace a esta entradafunc turn_around(sim: Sim) -> String

    A trip to a depot for a service is dropped. Returns "" or why it can't.

    Parámetros
    • sim: Sim
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/vehicle.gd:1910
  • Vehicle._flip funcReverse a train in place: the last wagon becomes the front, then route onward from there, keeping off the blocks in avoid (see _turn).
    Enlace a esta entradafunc _flip(sim: Sim, goals: Dictionary, slot: int = -1, avoid: Dictionary = {}) -> bool
    Parámetros
    • sim: Sim
    • goals: Dictionary
    • slot: int = -1
    • avoid: Dictionary = {}
    Devuelve
    bool
    Llama a
    Pathfinder.find
    Declarado en scripts/sim/vehicle.gd:1924
  • Vehicle.car_poses funcWorld transforms of each car: [{"pos": Vector3, "dir": Vector3}] front to back.
    Enlace a esta entradafunc car_poses(m: WorldMap) -> Array
    Parámetros
    • m: WorldMap
    Devuelve
    Array
    Declarado en scripts/sim/vehicle.gd:1959
  • Vehicle.place_at_airport funcPark at an airport (start of service).
    Enlace a esta entradafunc place_at_airport(st: Station, m: WorldMap) -> void
    Parámetros
    • st: Station
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:1999
  • Vehicle.head_tile_air func
    Enlace a esta entradafunc head_tile_air() -> Vector2i
    Devuelve
    Vector2i

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:2007
  • Vehicle._air_len func
    Enlace a esta entradafunc _air_len() -> float
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:2012
  • Vehicle._air_xy func
    Enlace a esta entradafunc _air_xy() -> Vector2
    Devuelve
    Vector2

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:2016
  • Vehicle._hold_entry funcWhere the plane broke off its approach: HOLD_AT short of the airport.
    Enlace a esta entradafunc _hold_entry() -> Vector2
    Devuelve
    Vector2
    Declarado en scripts/sim/vehicle.gd:2029
  • Vehicle._hold_centre func
    Enlace a esta entradafunc _hold_centre() -> Vector2
    Devuelve
    Vector2

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:2033
  • Vehicle._hold_r funcThe circle's radius: one of three sizes (by the plane's number), so planes that arrive together hold apart.
    Enlace a esta entradafunc _hold_r() -> float
    Devuelve
    float
    Declarado en scripts/sim/vehicle.gd:2040
  • Vehicle._hold_start funcThe angle round the circle of the point where the plane broke off.
    Enlace a esta entradafunc _hold_start() -> float
    Devuelve
    float
    Declarado en scripts/sim/vehicle.gd:2045
  • Vehicle._take_off funcStart a flight to target's airport.
    Enlace a esta entradafunc _take_off(sim: Sim, target: Station) -> void
    Parámetros
    • sim: Sim
    • target: Station
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/vehicle.gd:2051
  • Vehicle._move_air func
    Enlace a esta entradafunc _move_air(sim: Sim, dt: float) -> void
    Parámetros
    • sim: Sim
    • dt: float
    Devuelve
    void
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:2082
  • Vehicle._hold funcOnce round the holding circle, the plane is back where it broke off its approach: it carries on with it if a stand has come free (or it has held for QUEUE_GIVE_UP days), else it goes round again.
    Enlace a esta entradafunc _hold(sim: Sim, st: Station, vmax: float, dt: float) -> void
    Parámetros
    • sim: Sim
    • st: Station
    • vmax: float
    • dt: float
    Devuelve
    void
    Declarado en scripts/sim/vehicle.gd:2120
  • Vehicle._air_alt funcAltitude profile: taxi, climb out, cruise, descend and land.
    Enlace a esta entradafunc _air_alt() -> float
    Devuelve
    float
    Declarado en scripts/sim/vehicle.gd:2134
  • Vehicle._air_pose func
    Enlace a esta entradafunc _air_pose(m: WorldMap) -> Dictionary
    Parámetros
    • m: WorldMap
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/vehicle.gd:2143

WorldMap

  • WorldMap.Terrain enum
    Enlace a esta entradaenum Terrain { GRASS, SAND, ROCK, SNOW, WATER }

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:6
  • WorldMap.changed signalEmitted after construction changes a rectangle of tiles.
    Enlace a esta entradasignal changed(rect: Rect2i, what: int)

    what is a mask of CH_* flags.

    Parámetros
    • rect: Rect2i
    • what: int
    Devuelve
    signal changed(rect: Rect2i, what: int)
    Declarado en scripts/sim/world_map.gd:9
  • WorldMap.CH_TERRAIN const
    Enlace a esta entradaconst CH_TERRAIN := 1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:10
  • WorldMap.CH_NETWORK const
    Enlace a esta entradaconst CH_NETWORK := 2

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:11
  • WorldMap.CH_OBJECTS const
    Enlace a esta entradaconst CH_OBJECTS := 4

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:12
  • WorldMap.CH_TREES const
    Enlace a esta entradaconst CH_TREES := 8

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:13
  • WorldMap.CH_ALL const
    Enlace a esta entradaconst CH_ALL := 15

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:14
  • WorldMap.w var
    Enlace a esta entradavar w: int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:16
  • WorldMap.h var
    Enlace a esta entradavar h: int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:17
  • WorldMap.heights var(w+1)*(h+1) corner heights, 0..MAX_HEIGHT; 0 = sea floor
    Enlace a esta entradavar heights := PackedByteArray()Declarado en scripts/sim/world_map.gd:18
  • WorldMap.corner_y varrendered corner heights in world units (seabed depth applied)
    Enlace a esta entradavar corner_y := PackedFloat32Array()Declarado en scripts/sim/world_map.gd:19
  • WorldMap.terrain var
    Enlace a esta entradavar terrain := PackedByteArray()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:20
  • WorldMap.trees var
    Enlace a esta entradavar trees := PackedByteArray()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:21
  • WorldMap.variant var
    Enlace a esta entradavar variant := PackedByteArray()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:22
  • WorldMap.road varconnection bitmask N=1 E=2 S=4 W=8
    Enlace a esta entradavar road := PackedByteArray()Declarado en scripts/sim/world_map.gd:23
  • WorldMap.rail var
    Enlace a esta entradavar rail := PackedByteArray()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:24
  • WorldMap.rail_owner varcompany id + 1 for track; 0 = none
    Enlace a esta entradavar rail_owner := PackedByteArray()Declarado en scripts/sim/world_map.gd:25
  • WorldMap.objs varnull or a Dictionary with "kind": "house" | "industry" | "station"
    Enlace a esta entradavar objs: Array = []Declarado en scripts/sim/world_map.gd:26
  • WorldMap.towns varTown objects generated for this world.
    Enlace a esta entradavar towns: Array[Town] = []

    A town object gives access to its population, position, and council ratings.

    Declarado en scripts/sim/world_map.gd:27
  • WorldMap.industries varIndustries currently on the map.
    Enlace a esta entradavar industries: Array[Industry] = []

    This collection can change as industries open, close, or progress through the eras.

    Declarado en scripts/sim/world_map.gd:28
  • WorldMap.industry_rev varBumped whenever an industry opens or closes during the game (RAIL-23, IndustryLife): what is made from the list of industries (their models, smoke, lights and labels, and the caches below and in Economy) is made again.
    Enlace a esta entradavar industry_rev := 0

    Not saved.

    Declarado en scripts/sim/world_map.gd:32
  • WorldMap.era varThe era (an index into Data.ERAS) whose industry chains apply (RAIL-29): what industries take and make, and what towns make and take.
    Enlace a esta entradavar era := 0

    Follows the date (Sim.sync_era); not saved.

    Declarado en scripts/sim/world_map.gd:35
  • WorldMap._near_ind var1 on tiles within BuildOps.INDUSTRY_GAP of an industry, rebuilt whenever an industry has come or gone since it was made (or the list has grown: the world is made, or loaded, by appending to it).
    Enlace a esta entradavar _near_ind := PackedByteArray()Declarado en scripts/sim/world_map.gd:38
  • WorldMap._near_ind_n var
    Enlace a esta entradavar _near_ind_n := -1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:39
  • WorldMap._near_ind_rev var
    Enlace a esta entradavar _near_ind_rev := -1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:40
  • WorldMap.stations varStation objects in the current world.
    Enlace a esta entradavar stations: Array[Station] = []

    A station can serve more than one transport mode, so use has_kind to select the desired type.

    Declarado en scripts/sim/world_map.gd:41
  • WorldMap.next_station_id var
    Enlace a esta entradavar next_station_id := 1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:42
  • WorldMap.crossings varBridges and tunnels: {"id", "kind" rail|road, "type" bridge|tunnel, "s0", "s1" (first and last span tile), "dir" (s0 -> s1), "level" (height level of the deck / tunnel floor), "owner" (company id + 1)}.
    Enlace a esta entradavar crossings: Array = []

    For bridges the spans are the tiles strictly between the two ramps; for tunnels they include both portals.

    Declarado en scripts/sim/world_map.gd:46
  • WorldMap.spans varVector2i -> crossing
    Enlace a esta entradavar spans := {}Declarado en scripts/sim/world_map.gd:47
  • WorldMap.depots varVector2i -> depot object (also in objs)
    Enlace a esta entradavar depots := {}Declarado en scripts/sim/world_map.gd:48
  • WorldMap.elec var1 where the track has overhead wires
    Enlace a esta entradavar elec := PackedByteArray()Declarado en scripts/sim/world_map.gd:49
  • WorldMap.next_crossing_id var
    Enlace a esta entradavar next_crossing_id := 1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:50
  • WorldMap.signals varRail signals on straight track: Vector2i -> 0 (two-way) or 1 + d (one-way, trains may only pass heading d).
    Enlace a esta entradavar signals := {}Declarado en scripts/sim/world_map.gd:52
  • WorldMap.diag2 varTiles carrying two parallel diagonal pieces instead of a junction, per network: Vector2i -> 0 (pieces N-E and S-W) or 1 (pieces E-S and W-N).
    Enlace a esta entradavar diag2 := {"rail": {}, "road": {}}Declarado en scripts/sim/world_map.gd:55
  • WorldMap.DIAG2_PAIRS const
    Enlace a esta entradaconst DIAG2_PAIRS := [[[0, 1], [2, 3]], [[1, 2], [3, 0]]]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:56
  • WorldMap.EASE consthow far off the edge midpoint an eased join crosses (see piece_shape)
    Enlace a esta entradaconst EASE := 0.125Declarado en scripts/sim/world_map.gd:57
  • WorldMap.net_version varbumped whenever the network or the objects change (the view redraws on it)
    Enlace a esta entradavar net_version := 0Declarado en scripts/sim/world_map.gd:58
  • WorldMap.block_cache var
    Enlace a esta entradavar block_cache := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:59
  • WorldMap.block_version varthe rail revision block_cache was built for (see net_rev)
    Enlace a esta entradavar block_version := -1Declarado en scripts/sim/world_map.gd:60
  • WorldMap.NET_LOG_MAX constRevisions of the road and the rail network: they go up only when the network itself really changed (track, wires, signals, bridges, tunnels), not when a town merely adds a house.
    Enlace a esta entradaconst NET_LOG_MAX := 512

    Each keeps the rectangles that changed lately, so a cached route can tell whether a change touched the part of the map it was searched over (see net_changed_in). None of this is saved.

    Declarado en scripts/sim/world_map.gd:65
  • WorldMap.road_rev var
    Enlace a esta entradavar road_rev := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:66
  • WorldMap.rail_rev var
    Enlace a esta entradavar rail_rev := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:67
  • WorldMap._road_log var
    Enlace a esta entradavar _road_log: Array[Rect2i] = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:68
  • WorldMap._rail_log var
    Enlace a esta entradavar _rail_log: Array[Rect2i] = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:69
  • WorldMap._net_synced var
    Enlace a esta entradavar _net_synced := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:70
  • WorldMap._sh_road varthe network as it was at the last notify, to spot real changes
    Enlace a esta entradavar _sh_road := PackedByteArray()Declarado en scripts/sim/world_map.gd:71
  • WorldMap._sh_rail var
    Enlace a esta entradavar _sh_rail := PackedByteArray()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:72
  • WorldMap._sh_elec var
    Enlace a esta entradavar _sh_elec := PackedByteArray()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:73
  • WorldMap._sh_state var
    Enlace a esta entradavar _sh_state := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:74
  • WorldMap.station_rev varBumped when the stations' catchments change; with the two counts it keys eco_cache (Economy's industry <-> station links).
    Enlace a esta entradavar station_rev := 0

    Not saved.

    Declarado en scripts/sim/world_map.gd:77
  • WorldMap.eco_cache var
    Enlace a esta entradavar eco_cache := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:78
  • WorldMap._town_cargo_levels var
    Enlace a esta entradavar _town_cargo_levels: Array[int] = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:79
  • WorldMap._shape_memo varpiece_shape results by tile (see shape_of): tile index -> {sides and network -> shape}.
    Enlace a esta entradavar _shape_memo := {}

    Emptied around every change that is announced with notify. Not saved.

    Declarado en scripts/sim/world_map.gd:82
  • WorldMap.sea_memo varRoutes over water found by Pathfinder, by question (see Pathfinder._sea_memo).
    Enlace a esta entradavar sea_memo := {}

    Emptied whenever the ground changes. Not saved.

    Declarado en scripts/sim/world_map.gd:85
  • WorldMap._init func
    Enlace a esta entradafunc _init(width: int = Const.MAP_SIZE, height: int = Const.MAP_SIZE) -> void
    Parámetros
    • width: int = Const.MAP_SIZE
    • height: int = Const.MAP_SIZE
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:88
  • WorldMap.set_era funcMove the chains to era e: every industry takes and makes what its kind does then.
    Enlace a esta entradafunc set_era(e: int) -> void

    Stations take it on when they are next refreshed.

    Parámetros
    • e: int
    Devuelve
    void
    Declarado en scripts/sim/world_map.gd:106
  • WorldMap.is_electrified funcOverhead wires over this tile's track (bridge decks and tunnels count as wired).
    Enlace a esta entradafunc is_electrified(t: Vector2i) -> bool
    Parámetros
    • t: Vector2i
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:114
  • WorldMap.notify func
    Enlace a esta entradafunc notify(rect: Rect2i, what: int) -> void
    Parámetros
    • rect: Rect2i
    • what: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:121
  • WorldMap._town_cargo_levels_changed funcA population threshold changes acceptance at any stop serving that town, even far from the build.
    Enlace a esta entradafunc _town_cargo_levels_changed() -> bool
    Devuelve
    bool
    Llama a
    Data.town_takes_by_size
    Declarado en scripts/sim/world_map.gd:150
  • WorldMap.net_rev funcThe revision of the road or rail network (-1 for anything else, which has none).
    Enlace a esta entradafunc net_rev(kind: String) -> int

    Whatever caches something derived from the network keeps this number with it.

    Parámetros
    • kind: String
    Devuelve
    int
    Declarado en scripts/sim/world_map.gd:169
  • WorldMap.net_changed_in funcWhether the kind network changed inside box since revision since (true when it can't tell).
    Enlace a esta entradafunc net_changed_in(kind: String, since: int, box: Rect2i) -> bool
    Parámetros
    • kind: String
    • since: int
    • box: Rect2i
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:178
  • WorldMap.net_touch funcRecord that the kind network changed inside rect.
    Enlace a esta entradafunc net_touch(kind: String, rect: Rect2i) -> void

    notify does this by itself for anything it can see (track, wires, signals, bridges and tunnels), so this is only for changes it can't.

    Parámetros
    • kind: String
    • rect: Rect2i
    Devuelve
    void
    Declarado en scripts/sim/world_map.gd:194
  • WorldMap.net_reset funcForget everything cached about the network and the stations (after loading, or after editing the map's arrays directly without notify).
    Enlace a esta entradafunc net_reset() -> void
    Devuelve
    void
    Declarado en scripts/sim/world_map.gd:209
  • WorldMap._net_state func
    Enlace a esta entradafunc _net_state() -> int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:223
  • WorldMap._net_sync func
    Enlace a esta entradafunc _net_sync() -> void
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:227
  • WorldMap._net_scan funcAfter a change inside rect: compare the network there with how it was, and record what changed.
    Enlace a esta entradafunc _net_scan(rect: Rect2i) -> void
    Parámetros
    • rect: Rect2i
    Devuelve
    void
    Declarado en scripts/sim/world_map.gd:236
  • WorldMap.sig_allows funcWhether a train heading h may pass the signal on tile t (one-way signals only allow one way).
    Enlace a esta entradafunc sig_allows(t: Vector2i, h: int) -> bool
    Parámetros
    • t: Vector2i
    • h: int
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:272
  • WorldMap.sig_faces funcWhether the signal on t controls trains heading h (it faces them).
    Enlace a esta entradafunc sig_faces(t: Vector2i, h: int) -> bool
    Parámetros
    • t: Vector2i
    • h: int
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:278
  • WorldMap.block_key funcKey for the track a train travelling in direction d occupies on tile t: the tile itself on the ground, or a separate key on a bridge or in a tunnel (so the line overhead and the line underneath are different blocks).
    Enlace a esta entradafunc block_key(t: Vector2i, d: int) -> Variant
    Parámetros
    • t: Vector2i
    • d: int
    Devuelve
    Variant
    Llama a
    Const.opp
    Declarado en scripts/sim/world_map.gd:288
  • WorldMap.rail_junction funcWhether tile t is a junction on the ground, where three or four lines of track meet (RAIL-80).
    Enlace a esta entradafunc rail_junction(t: Vector2i, d: int = -1) -> bool

    A junction is a block of its own even without signals (see blocks), and trains wait in front of it until it and the track beyond it are clear (Vehicle._way_ahead). With d, a train travelling that way on a bridge or in a tunnel over the tile isn't on the junction.

    Parámetros
    • t: Vector2i
    • d: int = -1
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:302
  • WorldMap.block_key_at funcBlock key from a position (on a tile with two parallel diagonals, the half you're in decides).
    Enlace a esta entradafunc block_key_at(p: Vector2, d: int) -> Variant
    Parámetros
    • p: Vector2
    • d: int
    Devuelve
    Variant
    Declarado en scripts/sim/world_map.gd:312
  • WorldMap.blocks funcTrack blocks: rail tiles grouped into connected stretches, split at signal tiles and where track meets a junction: a junction, or a few junctions side by side, is a block of its own (RAIL-80).
    Enlace a esta entradafunc blocks() -> Dictionary

    Keyed by block_key().

    Devuelve
    Dictionary
    Llama a
    WorldMap.axis_of
    Declarado en scripts/sim/world_map.gd:325
  • WorldMap.ci func
    Enlace a esta entradafunc ci(x: int, y: int) -> int
    Parámetros
    • x: int
    • y: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:384
  • WorldMap.ti func
    Enlace a esta entradafunc ti(x: int, y: int) -> int
    Parámetros
    • x: int
    • y: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:388
  • WorldMap.in_bounds func
    Enlace a esta entradafunc in_bounds(x: int, y: int) -> bool
    Parámetros
    • x: int
    • y: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:392
  • WorldMap.near_industry funcWhether (x, y) lies within BuildOps.INDUSTRY_GAP tiles of an industry's footprint, diagonals included.
    Enlace a esta entradafunc near_industry(x: int, y: int) -> bool
    Parámetros
    • x: int
    • y: int
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:397
  • WorldMap.net_bits func
    Enlace a esta entradafunc net_bits(kind: String, i: int) -> int
    Parámetros
    • kind: String
    • i: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:411
  • WorldMap.sailable funcOpen water ships can sail through (not under an oil rig or other industry).
    Enlace a esta entradafunc sailable(i: int) -> bool

    The dock out at a rig stands in open water and ships sail onto it to berth.

    Parámetros
    • i: int
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:421
  • WorldMap.linked funcTrue when tile t connects to its neighbour in direction d on the given network (both tiles carry the matching bit), including along bridges and through tunnels.
    Enlace a esta entradafunc linked(kind: String, t: Vector2i, d: int) -> bool
    Parámetros
    • kind: String
    • t: Vector2i
    • d: int
    Devuelve
    bool
    Llama a
    Const.opp
    Declarado en scripts/sim/world_map.gd:428
  • WorldMap.pieces funcThe pieces of track or road on a tile, as [edge, edge] pairs ([edge, -1] for a dead end).
    Enlace a esta entradafunc pieces(kind: String, t: Vector2i) -> Array
    Parámetros
    • kind: String
    • t: Vector2i
    Devuelve
    Array
    Declarado en scripts/sim/world_map.gd:445
  • WorldMap._lone_corner funcWhether tile t has exactly the corner piece {a, b} on its own (or as one of two parallel diagonals).
    Enlace a esta entradafunc _lone_corner(kind: String, t: Vector2i, a: int, b: int) -> bool
    Parámetros
    • kind: String
    • t: Vector2i
    • a: int
    • b: int
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:464
  • WorldMap.chord_ends funcDiagonal runs: a corner piece (edges a, b) that continues across an edge into the mirrored corner on the next tile.
    Enlace a esta entradafunc chord_ends(kind: String, t: Vector2i, a: int, b: int) -> int

    Returns a mask of which ends continue diagonally (1 = end a, 2 = end b), or 0 for an ordinary curve. Diagonal stretches are drawn and driven as straight 45-degree lines; an end that meets straight track eases in with a curve that leaves the edge square.

    Parámetros
    • kind: String
    • t: Vector2i
    • a: int
    • b: int
    Devuelve
    int
    Llama a
    Const.opp
    Declarado en scripts/sim/world_map.gd:480
  • WorldMap.is_chord func
    Enlace a esta entradafunc is_chord(kind: String, t: Vector2i, a: int, b: int) -> bool
    Parámetros
    • kind: String
    • t: Vector2i
    • a: int
    • b: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:493
  • WorldMap._plain_straight funcWhether tile t carries nothing but one straight piece running through side d: plain ground track or road, with no station, level crossing, bridge or tunnel on it.
    Enlace a esta entradafunc _plain_straight(kind: String, t: Vector2i, d: int) -> bool
    Parámetros
    • kind: String
    • t: Vector2i
    • d: int
    Devuelve
    bool
    Llama a
    Const.opp
    Declarado en scripts/sim/world_map.gd:499
  • WorldMap.piece_shape funcThe full shape of the piece from edge a to edge b, as a mask (0 = an ordinary piece): 1, 2 end a / end b continues diagonally (see chord_ends) 4, 8 end a / end b is eased: where a diagonal run meets plain straight track, the bend is one wide curve from the middle of the straight tile to the far end of the first diagonal tile, so it crosses their shared edge EASE to one side of the midpoint 16, 32 (straight pieces) which side end a / end b is eased towards: clear = the next direction clockwise from that end, set = the one before it
    Enlace a esta entradafunc piece_shape(kind: String, t: Vector2i, a: int, b: int) -> int
    Parámetros
    • kind: String
    • t: Vector2i
    • a: int
    • b: int
    Devuelve
    int
    Llama a
    Const.opp
    Declarado en scripts/sim/world_map.gd:515
  • WorldMap.shape_of funcpiece_shape for road and rail, remembered: vehicles ask for the same pieces over and over as they drive.
    Enlace a esta entradafunc shape_of(kind: String, t: Vector2i, a: int, b: int) -> int

    The answer only depends on the map near the tile, and notify forgets what it knew around every change.

    Parámetros
    • kind: String
    • t: Vector2i
    • a: int
    • b: int
    Devuelve
    int
    Declarado en scripts/sim/world_map.gd:545
  • WorldMap.flip_shape static funcshape for the same piece travelled the other way (ends a and b swapped).
    Enlace a esta entradastatic func flip_shape(shape: int) -> int
    Parámetros
    • shape: int
    Devuelve
    int
    Declarado en scripts/sim/world_map.gd:565
  • WorldMap.piece_curve static funcControl points (tile-local, 0..1) of a piece from edge a to edge b with a non-zero shape (see piece_shape): a cubic curve.
    Enlace a esta entradastatic func piece_curve(a: int, b: int, shape: int) -> Array

    Diagonal pieces are straight where both ends continue diagonally; an end that meets plain straight track is eased, sharing one wide bend with that tile; an end that meets anything else leaves the edge square, with a tighter S-bend.

    Parámetros
    • a: int
    • b: int
    • shape: int
    Devuelve
    Array
    Llama a
    Const.opp
    Declarado en scripts/sim/world_map.gd:573
  • WorldMap.chord_curve static func
    Enlace a esta entradastatic func chord_curve(a: int, b: int, ends: int) -> Array
    Parámetros
    • a: int
    • b: int
    • ends: int
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:619
  • WorldMap.cubic_tangent static func
    Enlace a esta entradastatic func cubic_tangent(c: Array, u: float) -> Vector2
    Parámetros
    • c: Array
    • u: float
    Devuelve
    Vector2

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:623
  • WorldMap.cubic static func
    Enlace a esta entradastatic func cubic(c: Array, u: float) -> Vector2
    Parámetros
    • c: Array
    • u: float
    Devuelve
    Vector2

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:629
  • WorldMap.axis_of static func
    Enlace a esta entradastatic func axis_of(d: int) -> int
    Parámetros
    • d: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:634
  • WorldMap.span_along funcThe bridge or tunnel of kind that tile t is part of, if travel in direction d runs along it.
    Enlace a esta entradafunc span_along(kind: String, t: Vector2i, d: int) -> Variant
    Parámetros
    • kind: String
    • t: Vector2i
    • d: int
    Devuelve
    Variant
    Declarado en scripts/sim/world_map.gd:639
  • WorldMap.exit_bits funcDirections a vehicle heading h inside tile t may leave by: straight on along a bridge or tunnel, otherwise the ground connections.
    Enlace a esta entradafunc exit_bits(kind: String, t: Vector2i, h: int) -> int
    Parámetros
    • kind: String
    • t: Vector2i
    • h: int
    Devuelve
    int
    Llama a
    Const.opp
    Declarado en scripts/sim/world_map.gd:648
  • WorldMap.travel_y funcHeight vehicles travel at: the bridge deck or tunnel floor when running along one, else the ground.
    Enlace a esta entradafunc travel_y(kind: String, fx: float, fz: float, dir: Vector2) -> float
    Parámetros
    • kind: String
    • fx: float
    • fz: float
    • dir: Vector2
    Devuelve
    float
    Declarado en scripts/sim/world_map.gd:662
  • WorldMap.portal_level funcLevel of the tunnel mouth on tile (x, y), or -1.
    Enlace a esta entradafunc portal_level(x: int, y: int) -> int

    Mouth tiles are dug out flat to the tunnel floor.

    Parámetros
    • x: int
    • y: int
    Devuelve
    int
    Declarado en scripts/sim/world_map.gd:675
  • WorldMap.add_crossing func
    Enlace a esta entradafunc add_crossing(c: Dictionary) -> void
    Parámetros
    • c: Dictionary
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:682
  • WorldMap.remove_crossing func
    Enlace a esta entradafunc remove_crossing(c: Dictionary) -> void
    Parámetros
    • c: Dictionary
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:688
  • WorldMap.crossing_tiles static func
    Enlace a esta entradastatic func crossing_tiles(c: Dictionary) -> Array[Vector2i]
    Parámetros
    • c: Dictionary
    Devuelve
    Array[Vector2i]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:695
  • WorldMap.corner func
    Enlace a esta entradafunc corner(x: int, y: int) -> int
    Parámetros
    • x: int
    • y: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:706
  • WorldMap.corners funcCorner heights in order NW (x,y), NE (x+1,y), SE (x+1,y+1), SW (x,y+1).
    Enlace a esta entradafunc corners(x: int, y: int) -> Vector4i
    Parámetros
    • x: int
    • y: int
    Devuelve
    Vector4i
    Declarado en scripts/sim/world_map.gd:711
  • WorldMap.tile_min func
    Enlace a esta entradafunc tile_min(x: int, y: int) -> int
    Parámetros
    • x: int
    • y: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:715
  • WorldMap.tile_max func
    Enlace a esta entradafunc tile_max(x: int, y: int) -> int
    Parámetros
    • x: int
    • y: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:720
  • WorldMap.is_water func
    Enlace a esta entradafunc is_water(x: int, y: int) -> bool
    Parámetros
    • x: int
    • y: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:725
  • WorldMap.slope funcBits of corners raised above the tile minimum (1=NW, 2=NE, 4=SE, 8=SW), plus 16 when steep.
    Enlace a esta entradafunc slope(x: int, y: int) -> int
    Parámetros
    • x: int
    • y: int
    Devuelve
    int
    Declarado en scripts/sim/world_map.gd:730
  • WorldMap.is_flat func
    Enlace a esta entradafunc is_flat(x: int, y: int) -> bool
    Parámetros
    • x: int
    • y: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_map.gd:743
  • WorldMap.incline_axis funcAxis a tile is a simple incline along: 0 = along x, 1 = along y, -1 = not a simple incline.
    Enlace a esta entradafunc incline_axis(x: int, y: int) -> int
    Parámetros
    • x: int
    • y: int
    Devuelve
    int
    Declarado en scripts/sim/world_map.gd:748
  • WorldMap.split_nw_se funcThe mesh folds along NW-SE when those corners match, else along NE-SW.
    Enlace a esta entradafunc split_nw_se(x: int, y: int) -> bool
    Parámetros
    • x: int
    • y: int
    Devuelve
    bool
    Declarado en scripts/sim/world_map.gd:758
  • WorldMap.terrain_y funcExact height of the rendered terrain surface (matches the mesh triangles).
    Enlace a esta entradafunc terrain_y(fx: float, fz: float) -> float
    Parámetros
    • fx: float
    • fz: float
    Devuelve
    float
    Declarado en scripts/sim/world_map.gd:763
  • WorldMap.surface_y funcVisible surface: terrain or water, whichever is higher.
    Enlace a esta entradafunc surface_y(fx: float, fz: float) -> float

    Outside the map returns -INF.

    Parámetros
    • fx: float
    • fz: float
    Devuelve
    float
    Declarado en scripts/sim/world_map.gd:786
  • WorldMap.compute_corner_y funcRecompute rendered corner heights.
    Enlace a esta entradafunc compute_corner_y() -> void

    Sea-floor corners sink deeper the farther they are from land.

    Devuelve
    void
    Declarado en scripts/sim/world_map.gd:793

Industry

  • Industry.SIZE const
    Enlace a esta entradaconst SIZE := 3

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:7
  • Industry.LOCAL_REACH constStaff (RAIL-28): people walk in from towns up to LOCAL_REACH tiles from the footprint, fewer the farther the edge of the town is; right next to it, a town lends LOCAL_PER_POP workers per resident.
    Enlace a esta entradaconst LOCAL_REACH := 8.0

    Walkers-in fill at most LOCAL_MAX of the jobs: the rest takes commuters, however big the town.

    Declarado en scripts/sim/industry.gd:11
  • Industry.LOCAL_PER_POP const
    Enlace a esta entradaconst LOCAL_PER_POP := 0.16

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:12
  • Industry.LOCAL_MAX const
    Enlace a esta entradaconst LOCAL_MAX := 0.55

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:13
  • Industry.PRIMARY_MIN constOutput with nobody at work and with a full staff (see output_factor).
    Enlace a esta entradaconst PRIMARY_MIN := 0.7Declarado en scripts/sim/industry.gd:15
  • Industry.PRIMARY_MAX const
    Enlace a esta entradaconst PRIMARY_MAX := 1.5

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:16
  • Industry.PLANT_MIN const
    Enlace a esta entradaconst PLANT_MIN := 0.8

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:17
  • Industry.PLANT_MAX const
    Enlace a esta entradaconst PLANT_MAX := 1.3

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:18
  • Industry.SHIFT_BACK constOf the commuters who come to work, the share that goes home again by the same stations.
    Enlace a esta entradaconst SHIFT_BACK := 1.0 / 3.0Declarado en scripts/sim/industry.gd:20
  • Industry.BUSY constStaffing from which an industry counts as busy: its noise carries farther (Town.land_value).
    Enlace a esta entradaconst BUSY := 0.75Declarado en scripts/sim/industry.gd:22
  • Industry.id var
    Enlace a esta entradavar id := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:24
  • Industry.type var
    Enlace a esta entradavar type := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:25
  • Industry.x var
    Enlace a esta entradavar x := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:26
  • Industry.y var
    Enlace a esta entradavar y := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:27
  • Industry.name var
    Enlace a esta entradavar name := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:28
  • Industry.prod_rate varmonthly output of a primary industry
    Enlace a esta entradavar prod_rate := 0Declarado en scripts/sim/industry.gd:29
  • Industry.stock varsecondary output waiting to be shipped
    Enlace a esta entradavar stock := {}Declarado en scripts/sim/industry.gd:30
  • Industry.produced varthis month, by cargo
    Enlace a esta entradavar produced := {}Declarado en scripts/sim/industry.gd:31
  • Industry.transported var
    Enlace a esta entradavar transported := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:32
  • Industry.received var
    Enlace a esta entradavar received := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:33
  • Industry.produced_last var
    Enlace a esta entradavar produced_last := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:34
  • Industry.transported_last var
    Enlace a esta entradavar transported_last := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:35
  • Industry.received_last var
    Enlace a esta entradavar received_last := {}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:36
  • Industry.history var[produced, transported] at each month end (last 24)
    Enlace a esta entradavar history: Array = []Declarado en scripts/sim/industry.gd:37
  • Industry.workers varcommuters delivered to stations in reach this month (RAIL-28)
    Enlace a esta entradavar workers := 0.0Declarado en scripts/sim/industry.gd:38
  • Industry.workers_last var
    Enlace a esta entradavar workers_last := 0.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:39
  • Industry.shift_pax varcommuters going home, handed to stations at the next production run
    Enlace a esta entradavar shift_pax := 0.0Declarado en scripts/sim/industry.gd:40
  • Industry.local_staff varwalkers-in from nearby towns, counted once a month (-1: not yet)
    Enlace a esta entradavar local_staff := -1.0Declarado en scripts/sim/industry.gd:41
  • Industry.closing_day varIndustries come and go during the game (RAIL-23, IndustryLife): the game day a struggling one closes, warned a year ahead (-1: not at risk), and whether it has closed and left the map (what still holds on to it, a window or a label, lets go).
    Enlace a esta entradavar closing_day := -1Declarado en scripts/sim/industry.gd:45
  • Industry.closed var
    Enlace a esta entradavar closed := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:46
  • Industry.accepts varWhat it takes and makes in the map's era (Data.accepts / produces, RAIL-29): WorldMap.set_era keeps them up to date.
    Enlace a esta entradavar accepts: Array = []

    Shared and read-only.

    Declarado en scripts/sim/industry.gd:49
  • Industry.produces var
    Enlace a esta entradavar produces: Array = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:50
  • Industry.held varCargo delivered and not used yet: what a plant that needs every input holds until the rest comes, and what a wind farm site has had towards its total (Data.INDUSTRY "needs_all" and "builds").
    Enlace a esta entradavar held := {}Declarado en scripts/sim/industry.gd:53
  • Industry.builders vara wind farm site: company id -> units it delivered
    Enlace a esta entradavar builders := {}Declarado en scripts/sim/industry.gd:54
  • Industry.last_delivery vargame day cargo was last delivered to it (-1: never)
    Enlace a esta entradavar last_delivery := -1.0Declarado en scripts/sim/industry.gd:55
  • Industry._init func
    Enlace a esta entradafunc _init(p_id: int, p_type: String, px: int, py: int) -> void
    Parámetros
    • p_id: int
    • p_type: String
    • px: int
    • py: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:58
  • Industry.info func
    Enlace a esta entradafunc info() -> Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:67
  • Industry.set_era funcTake on what its kind takes and makes in era era.
    Enlace a esta entradafunc set_era(era: int) -> void
    Parámetros
    • era: int
    Devuelve
    void
    Llama a
    Data.accepts, Data.produces
    Declarado en scripts/sim/industry.gd:72
  • Industry.built_share funcA wind farm site's progress: the share of the least complete of the cargos it needs (0..1).
    Enlace a esta entradafunc built_share() -> float
    Devuelve
    float
    Declarado en scripts/sim/industry.gd:78
  • Industry.center funcReturns the center of the industry footprint in map coordinates.
    Enlace a esta entradafunc center() -> Vector2

    It can be used as the destination for a news message.

    Devuelve
    Vector2
    Declarado en scripts/sim/industry.gd:86
  • Industry.tile_indices func
    Enlace a esta entradafunc tile_indices(m: WorldMap) -> Array[int]
    Parámetros
    • m: WorldMap
    Devuelve
    Array[int]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:90
  • Industry.roll_month func
    Enlace a esta entradafunc roll_month() -> void
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:98
  • Industry.transported_share funcShare of last month's production that was carried away (0..1).
    Enlace a esta entradafunc transported_share(c: String) -> float
    Parámetros
    • c: String
    Devuelve
    float
    Declarado en scripts/sim/industry.gd:120
  • Industry.wanted funcStaff it wants each month (0: it runs without, and stations by it take no commuters).
    Enlace a esta entradafunc wanted() -> int
    Devuelve
    int
    Declarado en scripts/sim/industry.gd:128
  • Industry.local funcPeople who walk in from the towns around (see LOCAL_REACH), counted once a month.
    Enlace a esta entradafunc local(m: WorldMap, index: StaffingIndex = null) -> float
    Parámetros
    • m: WorldMap
    • index: StaffingIndex = null
    Devuelve
    float
    Declarado en scripts/sim/industry.gd:168
  • Industry.local_from_towns func
    Enlace a esta entradafunc local_from_towns(m: WorldMap, index: StaffingIndex = null) -> float
    Parámetros
    • m: WorldMap
    • index: StaffingIndex = null
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry.gd:174
  • Industry.rect_gap static funcDistance between the nearest edges of two rectangles (0 when they touch or overlap).
    Enlace a esta entradastatic func rect_gap(a: Rect2, b: Rect2) -> float
    Parámetros
    • a: Rect2
    • b: Rect2
    Devuelve
    float
    Declarado en scripts/sim/industry.gd:186
  • Industry.commuters funcCommuters counting toward the staff: this month's, or last month's while this one is young.
    Enlace a esta entradafunc commuters() -> float
    Devuelve
    float
    Declarado en scripts/sim/industry.gd:193
  • Industry.staffing funcShare of the staff it wants that turns up (0..1); 1 for an industry that wants none.
    Enlace a esta entradafunc staffing(m: WorldMap, index: StaffingIndex = null) -> float
    Parámetros
    • m: WorldMap
    • index: StaffingIndex = null
    Devuelve
    float
    Declarado en scripts/sim/industry.gd:198
  • Industry.output_factor funcHow the staff changes output: a primary industry makes PRIMARY_MIN..PRIMARY_MAX times its prod_rate, a processing plant turns PLANT_MIN..PLANT_MAX of each input unit into output.
    Enlace a esta entradafunc output_factor(m: WorldMap, index: StaffingIndex = null) -> float

    An industry that wants no staff runs at 1.

    Parámetros
    • m: WorldMap
    • index: StaffingIndex = null
    Devuelve
    float
    Declarado en scripts/sim/industry.gd:208
  • Industry.hire funcCommuters delivered to a station in reach: takes on up to what it still needs this month and returns how many it took.
    Enlace a esta entradafunc hire(m: WorldMap, n: float) -> float

    A third of them go home again (SHIFT_BACK, see Economy.produce).

    Parámetros
    • m: WorldMap
    • n: float
    Devuelve
    float
    Declarado en scripts/sim/industry.gd:219
  • Industry.nearest_town funcThe town with the nearest centre: where the industry window suggests bringing workers from.
    Enlace a esta entradafunc nearest_town(m: WorldMap) -> Town
    Parámetros
    • m: WorldMap
    Devuelve
    Town
    Declarado en scripts/sim/industry.gd:227

Data

  • Data.CARGO constwagon: what one wagon holds (30 when not given).
    Enlace a esta entradaconst CARGODeclarado en scripts/core/data.gd:5
  • Data.INDUSTRY constworkers: the staff it wants each month (RAIL-28, Industry.staffing), processing plants more than mines and farms.
    Enlace a esta entradaconst INDUSTRY

    A power station makes nothing for staff to raise, so it wants none. The eras rewrite the chains (RAIL-29). takes and makes are what a kind takes and makes when it first appears; never read them (or later) directly, ask accepts / produces (or Industry's own lists, kept up to date with the map's era): - era: the era (index into ERAS) from which it is found on new maps and opens during the game. - later: what it takes and makes as well from a later era on: {era: {"takes": [...], "makes": [...]}}. - retires: the era from which it is on its way out: a mine's output drifts down every year, a customer nobody supplies may close, and no new ones open (IndustryLife). - needs_all: a plant that only works with every input (two or more): it holds what comes until the rest does, and turns each full set into as many units of output (Economy.deliver_to_industries). It is sited near makers of each input (WorldGen.find_site). - builds: a construction site: it takes these totals, then becomes the kind in becomes. count 0: never found on a new map or opened, only made from another (a finished wind farm). site: where it stands: on "land" (when not given), at "sea", on the "coast", or by a "town" (one of the biggest: a printing works, see WorldGen.find_site). Adding a chain: a new kind with its era, or a later entry on an existing one; town cargos go in TOWN_MAKES / TOWN_TAKES. Everything else (stations, AI, the map's chains, the timeline) follows.

    Declarado en scripts/core/data.gd:48
  • Data.TOWN_MAKES constCargo houses make the way they make mail (by the people in them), from the era given on: from the Late century towns stop being only customers.
    Enlace a esta entradaconst TOWN_MAKES := {"mail": 0, "waste": 2}Declarado en scripts/core/data.gd:86
  • Data.TOWN_TAKES constCargo towns take, from the era given on: at stations that reach one of the buildings in at, or (pop) any house of a town of at least that many people.
    Enlace a esta entradaconst TOWN_TAKESDeclarado en scripts/core/data.gd:89
  • Data.HOUSES constzone: R residential, C commercial, I light industry, L landmark.
    Enlace a esta entradaconst HOUSES

    pop counts the people a building brings (residents or workers) - they all travel, so they all make passengers.

    Declarado en scripts/core/data.gd:95
  • Data.ZONE_NAMES const
    Enlace a esta entradaconst ZONE_NAMES := {"R": "Residential", "C": "Commercial", "I": "Industrial", "L": "Landmark", "A": "Attraction"}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:115
  • Data.ATTRACTIONS constAttractions towns build as they grow: population needed, and whether it has to be by the sea.
    Enlace a esta entradaconst ATTRACTIONSDeclarado en scripts/core/data.gd:117
  • Data.TOURIST_FARE constpassengers to a station serving an attraction pay this much more
    Enlace a esta entradaconst TOURIST_FARE := 1.3Declarado en scripts/core/data.gd:124
  • Data.ERAS constAges of progress.
    Enlace a esta entradaconst ERAS

    Each brings new kinds of buildings, more productive industry and faster-growing towns.

    Declarado en scripts/core/data.gd:127
  • Data.BUILD_INTRO constYear each building type starts appearing in towns.
    Enlace a esta entradaconst BUILD_INTRO := {"apartment": 1955, "tower": 1962, "highrise": 1968, "modern": 1975, "mall": 1983, "techpark": 1992}Declarado en scripts/core/data.gd:135
  • Data.era_index static func
    Enlace a esta entradastatic func era_index(year: int) -> int
    Parámetros
    • year: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:138
  • Data.can_build static func
    Enlace a esta entradastatic func can_build(type: String, year: int) -> bool
    Parámetros
    • type: String
    • year: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:146
  • Data._chains static vartype -> [{"accepts", "produces"} for each era], read-only
    Enlace a esta entradastatic var _chains := {}Declarado en scripts/core/data.gd:152
  • Data._town_makes static varera -> cargos houses make
    Enlace a esta entradastatic var _town_makes: Array = []Declarado en scripts/core/data.gd:153
  • Data._town_takes static varera -> {house type: [cargos it takes]}
    Enlace a esta entradastatic var _town_takes: Array = []Declarado en scripts/core/data.gd:154
  • Data._town_sizes static varera -> {cargo: the people a town needs to take it}
    Enlace a esta entradastatic var _town_sizes: Array = []Declarado en scripts/core/data.gd:155
  • Data._cargos static varera -> the cargos there are (see cargos)
    Enlace a esta entradastatic var _cargos: Array = []Declarado en scripts/core/data.gd:156
  • Data.accepts static funcWhat an industry of type takes in era era (an index into ERAS): what it took when it first appeared and everything later eras added.
    Enlace a esta entradastatic func accepts(type: String, era: int) -> Array

    Shared and read-only.

    Parámetros
    • type: String
    • era: int
    Devuelve
    Array
    Declarado en scripts/core/data.gd:161
  • Data.produces static funcWhat an industry of type makes in era era.
    Enlace a esta entradastatic func produces(type: String, era: int) -> Array

    Shared and read-only.

    Parámetros
    • type: String
    • era: int
    Devuelve
    Array
    Declarado en scripts/core/data.gd:166
  • Data._chain static func
    Enlace a esta entradastatic func _chain(type: String, era: int) -> Dictionary
    Parámetros
    • type: String
    • era: int
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:170
  • Data.exists static funcWhether industries of type are around by era era.
    Enlace a esta entradastatic func exists(type: String, era: int) -> bool
    Parámetros
    • type: String
    • era: int
    Devuelve
    bool
    Declarado en scripts/core/data.gd:192
  • Data.opens static funcWhether industries of type are found on new maps and open during the game by era era (a kind with count 0 is only ever made from another).
    Enlace a esta entradastatic func opens(type: String, era: int) -> bool
    Parámetros
    • type: String
    • era: int
    Devuelve
    bool
    Declarado en scripts/core/data.gd:198
  • Data.retiring static funcWhether type is on its way out by era era (see INDUSTRY's retires).
    Enlace a esta entradastatic func retiring(type: String, era: int) -> bool
    Parámetros
    • type: String
    • era: int
    Devuelve
    bool
    Declarado en scripts/core/data.gd:203
  • Data.town_makes static funcThe cargos houses make in era era, passengers aside (see TOWN_MAKES).
    Enlace a esta entradastatic func town_makes(era: int) -> Array
    Parámetros
    • era: int
    Devuelve
    Array
    Declarado en scripts/core/data.gd:208
  • Data.town_takes static funcThe cargos each kind of house takes in era era, beyond what any town does (see TOWN_TAKES).
    Enlace a esta entradastatic func town_takes(era: int) -> Dictionary
    Parámetros
    • era: int
    Devuelve
    Dictionary
    Declarado en scripts/core/data.gd:214
  • Data.town_takes_by_size static funcThe cargos any house of a big enough town takes in era era: {cargo: the people the town needs} (see TOWN_TAKES' pop).
    Enlace a esta entradastatic func town_takes_by_size(era: int) -> Dictionary
    Parámetros
    • era: int
    Devuelve
    Dictionary
    Declarado en scripts/core/data.gd:221
  • Data.town_pop static funcThe people a town needs before it takes c (0: any town, or only some of its buildings).
    Enlace a esta entradastatic func town_pop(c: String) -> int
    Parámetros
    • c: String
    Devuelve
    int
    Declarado en scripts/core/data.gd:227
  • Data._town_tables static func
    Enlace a esta entradastatic func _town_tables() -> void
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:231
  • Data.cargos static funcThe cargos there are in era era, in ALL_CARGO order: passengers, what towns make and take, and what the kinds of industry around by then take and make.
    Enlace a esta entradastatic func cargos(era: int) -> Array

    Shared and read-only.

    Parámetros
    • era: int
    Devuelve
    Array
    Declarado en scripts/core/data.gd:260
  • Data.era_changes static funcWhat era i changes in the industry chains, a sentence each (for the news and the Timeline).
    Enlace a esta entradastatic func era_changes(i: int) -> Array
    Parámetros
    • i: int
    Devuelve
    Array
    Llama a
    L.t, L.lower, Fmt.cargo_list, Fmt.int_commas
    Declarado en scripts/core/data.gd:278
  • Data.TOWN_PREFIX const
    Enlace a esta entradaconst TOWN_PREFIX

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:308
  • Data.TOWN_SUFFIX const
    Enlace a esta entradaconst TOWN_SUFFIX

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:312
  • Data.FREIGHT constCars (RAIL-32) are in ALL_CARGO only: trains carry them on car wagons, roads on the car transporter.
    Enlace a esta entradaconst FREIGHT := ["coal", "wood", "grain", "oil", "goods", "food", "iron_ore", "steel", "fish", "mail", "paper", "news", "plastics", "waste", "electronics"]Declarado en scripts/core/data.gd:316
  • Data.ALL_CARGO const
    Enlace a esta entradaconst ALL_CARGO

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:317
  • Data.BULK constWhat ships carry: newspapers aren't among them, as they would go stale long before a ship got anywhere.
    Enlace a esta entradaconst BULK := ["coal", "wood", "grain", "oil", "goods", "food", "iron_ore", "steel", "fish", "paper", "plastics", "waste", "electronics"]Declarado en scripts/core/data.gd:320
  • Data.MODELS const
    Enlace a esta entradaconst MODELS

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:323
  • Data.WAGON const
    Enlace a esta entradaconst WAGON := {"cost": 6500, "run": 450}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:335
  • Data.REFIT constChanging cargo costs this share of the price: of a wagon for each wagon converted, of the whole vehicle for anything that isn't a train.
    Enlace a esta entradaconst REFIT := 0.15Declarado en scripts/core/data.gd:338
  • Data.LENGTH constBody length in tiles for road vehicles, ships and aircraft that aren't the standard size (road 0.46, ships 0.9, aircraft 0.7).
    Enlace a esta entradaconst LENGTHDeclarado en scripts/core/data.gd:342
  • Data.INTRO const
    Enlace a esta entradaconst INTRO

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:351
  • Data.LATER_MODELS const
    Enlace a esta entradaconst LATER_MODELS

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:359
  • Data.MOD_MODELS static varvehicle id -> the same fields as MODELS, plus "look" or "model", "mod"
    Enlace a esta entradastatic var MOD_MODELS := {}Declarado en scripts/core/data.gd:402
  • Data.MOD_CARGO static varcargo id -> {"rate", "days"} overrides
    Enlace a esta entradastatic var MOD_CARGO := {}Declarado en scripts/core/data.gd:403
  • Data.MOD_COMPANY_NAMES static var
    Enlace a esta entradastatic var MOD_COMPANY_NAMES: Array = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:404
  • Data._town_prefixes static var
    Enlace a esta entradastatic var _town_prefixes: Array = TOWN_PREFIX

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:405
  • Data._town_suffixes static var
    Enlace a esta entradastatic var _town_suffixes: Array = TOWN_SUFFIX

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:406
  • Data.clear_mods static func
    Enlace a esta entradastatic func clear_mods() -> void
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:409
  • Data.add_model static func
    Enlace a esta entradastatic func add_model(id: String, m: Dictionary) -> void
    Parámetros
    • id: String
    • m: Dictionary
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:417
  • Data.add_town_names static funcExtra name pieces for towns; replace drops the game's own.
    Enlace a esta entradastatic func add_town_names(prefixes: Array, suffixes: Array, replace: bool = false) -> void
    Parámetros
    • prefixes: Array
    • suffixes: Array
    • replace: bool = false
    Devuelve
    void
    Declarado en scripts/core/data.gd:422
  • Data.town_prefixes static func
    Enlace a esta entradastatic func town_prefixes() -> Array
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:429
  • Data.town_suffixes static func
    Enlace a esta entradastatic func town_suffixes() -> Array
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:433
  • Data.has_model static funcChecks for an ID in the stock and enabled mod vehicle catalogs.
    Enlace a esta entradastatic func has_model(id: String) -> bool

    Use this before looking up an ID from a mod or save.

    Parámetros
    • id: String
    Devuelve
    bool
    Declarado en scripts/core/data.gd:437
  • Data.model static funcReturns the definition dictionary for an existing vehicle model ID, including enabled mods.
    Enlace a esta entradastatic func model(id: String) -> Dictionary

    Use has_model(id) first when the ID might be missing.

    Parámetros
    • id: String
    Devuelve
    Dictionary

    Ejemplo

    if Data.has_model("diesel"):
        var diesel := Data.model("diesel")
        note(str(diesel.cost))
    Declarado en scripts/core/data.gd:441
  • Data.all_models static funcReturns the model IDs from the stock and enabled mod catalogs.
    Enlace a esta entradastatic func all_models() -> Array

    Use available(id, year) to filter by sale date.

    Devuelve
    Array
    Declarado en scripts/core/data.gd:447
  • Data.intro_year static funcThe year a model goes on sale (0: from the start).
    Enlace a esta entradastatic func intro_year(id: String) -> int
    Parámetros
    • id: String
    Devuelve
    int
    Declarado en scripts/core/data.gd:452
  • Data.intros static funcEvery model with an introduction year: id -> year.
    Enlace a esta entradastatic func intros() -> Dictionary
    Devuelve
    Dictionary
    Declarado en scripts/core/data.gd:459
  • Data.available static funcChecks whether the current year is at or after a model’s introduction year.
    Enlace a esta entradastatic func available(id: String, year: int) -> bool

    Use has_model(id) separately to verify the ID.

    Parámetros
    • id: String
    • year: int
    Devuelve
    bool
    Declarado en scripts/core/data.gd:467
  • Data.look static funcThe game model whose 3D model (and size) a vehicle uses: itself, or a mod vehicle's "look".
    Enlace a esta entradastatic func look(id: String) -> String
    Parámetros
    • id: String
    Devuelve
    String
    Declarado en scripts/core/data.gd:472
  • Data.cargo_rate static funcReturns the payment rate per unit of the named cargo over 25 tiles before age penalties.
    Enlace a esta entradastatic func cargo_rate(c: String) -> float

    Uses the active mod override when one is set.

    Parámetros
    • c: String
    Devuelve
    float
    Declarado en scripts/core/data.gd:477
  • Data.cargo_days static funcReturns how many days the named cargo qualifies for the full rate.
    Enlace a esta entradastatic func cargo_days(c: String) -> float

    Uses the active mod override when one is set.

    Parámetros
    • c: String
    Devuelve
    float
    Declarado en scripts/core/data.gd:481
  • Data.COST const
    Enlace a esta entradaconst COST

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:484
  • Data.START_LOAN constwhat rivals start with (cash, all borrowed)
    Enlace a esta entradaconst START_LOAN := 100000Declarado en scripts/core/data.gd:495
  • Data.PLAYER_START_LOANS constthe player's start-up loan choices
    Enlace a esta entradaconst PLAYER_START_LOANS := [100000, 250000, 500000]Declarado en scripts/core/data.gd:496
  • Data.PLAYER_START_LOAN const...and the default
    Enlace a esta entradaconst PLAYER_START_LOAN := 250000Declarado en scripts/core/data.gd:497
  • Data.BANKRUPT_MONTHS constmonths in the red before a company goes bankrupt
    Enlace a esta entradaconst BANKRUPT_MONTHS := 12Declarado en scripts/core/data.gd:498
  • Data.MAX_LOAN const
    Enlace a esta entradaconst MAX_LOAN := 500000

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:499
  • Data.LOAN_INTEREST const
    Enlace a esta entradaconst LOAN_INTEREST := 0.04

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:500
  • Data.wagon_cap static func
    Enlace a esta entradastatic func wagon_cap(cargo: String) -> int
    Parámetros
    • cargo: String
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:503
  • Data.BRIDGES constBridge styles: cost multiplier, longest span (tiles between the ramps), year available.
    Enlace a esta entradaconst BRIDGESDeclarado en scripts/core/data.gd:508
  • Data.BRIDGE_ORDER const
    Enlace a esta entradaconst BRIDGE_ORDER := ["beam", "truss", "viaduct", "arch", "suspension"]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:515
  • Data.LIFE constYears a vehicle of this kind runs well; older ones put customers off.
    Enlace a esta entradaconst LIFE := {"road": 15, "rail": 25, "water": 30, "air": 20}Declarado en scripts/core/data.gd:519
  • Data.BREAKDOWN_NAMES constBreakdowns (a new-game option): none, reduced, normal.
    Enlace a esta entradaconst BREAKDOWN_NAMES := ["None", "Reduced", "Normal"]Declarado en scripts/core/data.gd:522
  • Data.BREAKDOWN_RATE const
    Enlace a esta entradaconst BREAKDOWN_RATE := [0.0, 0.4, 1.0]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:523
  • Data.SERVICE_DAYS consta vehicle wants servicing this often
    Enlace a esta entradaconst SERVICE_DAYS := 120Declarado en scripts/core/data.gd:524
  • Data.reliability static funcHow reliable a model is when new or just serviced (0..1): later designs are better made.
    Enlace a esta entradastatic func reliability(model_id: String) -> float
    Parámetros
    • model_id: String
    Devuelve
    float
    Declarado en scripts/core/data.gd:528
  • Data.kind_name static func
    Enlace a esta entradastatic func kind_name(kind: String) -> String
    Parámetros
    • kind: String
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/data.gd:536

AiPlayer

  • AiPlayer.NAMES const
    Enlace a esta entradaconst NAMES

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:10
  • AiPlayer.ROUTES_PER_YEAR const
    Enlace a esta entradaconst ROUTES_PER_YEAR := [1.0, 1.5, 3.0]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:13
  • AiPlayer.CEILINGS constshare of the maximum loan the AI will use for expansion
    Enlace a esta entradaconst CEILINGS := [0.5, 0.75, 0.9]Declarado en scripts/sim/ai_player.gd:14
  • AiPlayer.THINK const
    Enlace a esta entradaconst THINK := [[30, 60], [18, 40], [10, 24]]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:15
  • AiPlayer.FOUNDING const
    Enlace a esta entradaconst FOUNDING := [150, 120, 50]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:18
  • AiPlayer.FOUNDING_GAP const
    Enlace a esta entradaconst FOUNDING_GAP := [70, 60, 30]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:19
  • AiPlayer.COMPETE_SHARE const
    Enlace a esta entradaconst COMPETE_SHARE := [0.35, 0.55, 0.8]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:21
  • AiPlayer.EXTRA_VEHICLES const
    Enlace a esta entradaconst EXTRA_VEHICLES := [1, 3, 5]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:23
  • AiPlayer.RESERVE constcash kept in hand before repaying the loan
    Enlace a esta entradaconst RESERVE := 100000Declarado en scripts/sim/ai_player.gd:24
  • AiPlayer.MIN_EARNING consta year's profit each vehicle must make before its route gets more
    Enlace a esta entradaconst MIN_EARNING := 2500Declarado en scripts/sim/ai_player.gd:25
  • AiPlayer.PAIRS_COMPARED constindustry pairs weighed up before choosing a freight route
    Enlace a esta entradaconst PAIRS_COMPARED := [1, 2, 4]Declarado en scripts/sim/ai_player.gd:26
  • AiPlayer.CLOSE_STEP consttiles of a closed route torn up in one go
    Enlace a esta entradaconst CLOSE_STEP := 16Declarado en scripts/sim/ai_player.gd:27
  • AiPlayer.NO_PATH_FOR constnowhere to lay the line: the ground rarely changes, so wait four years
    Enlace a esta entradaconst NO_PATH_FOR := 365 * 3Declarado en scripts/sim/ai_player.gd:28
  • AiPlayer.CLOSED_FOR consta route closed for losing money isn't tried again for ten years
    Enlace a esta entradaconst CLOSED_FOR := 365 * 9Declarado en scripts/sim/ai_player.gd:29
  • AiPlayer.BUILD_RATE const
    Enlace a esta entradaconst BUILD_RATE := {"rail": [2, 3, 4], "road": [3, 5, 7]}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:32
  • AiPlayer.REROUTES constways round something built across a line still being laid
    Enlace a esta entradaconst REROUTES := 3Declarado en scripts/sim/ai_player.gd:33
  • AiPlayer.SHIPS_ROOM constmoney a rival can raise before it opens a ship route
    Enlace a esta entradaconst SHIPS_ROOM := 120000Declarado en scripts/sim/ai_player.gd:35
  • AiPlayer.AIR_CASH constmoney in hand before it opens an air service...
    Enlace a esta entradaconst AIR_CASH := 200000Declarado en scripts/sim/ai_player.gd:36
  • AiPlayer.AIR_ROUTES const...and how many it runs at most, by skill: airports aren't cheap
    Enlace a esta entradaconst AIR_ROUTES := [1, 2, 4]Declarado en scripts/sim/ai_player.gd:37
  • AiPlayer.AIR_MIN consttiles between two towns worth flying
    Enlace a esta entradaconst AIR_MIN := 40.0Declarado en scripts/sim/ai_player.gd:38
  • AiPlayer.SHIP_MAX consttiles apart at most: ships are slow, whatever the map's size
    Enlace a esta entradaconst SHIP_MAX := {"freight": 80.0, "ferry": 60.0}Declarado en scripts/sim/ai_player.gd:39
  • AiPlayer.AIRPORT_REACH constan airport goes this close to the town centre
    Enlace a esta entradaconst AIRPORT_REACH := 10Declarado en scripts/sim/ai_player.gd:40
  • AiPlayer.FERRIES constferry services a rival runs at most, by skill
    Enlace a esta entradaconst FERRIES := [1, 1, 2]Declarado en scripts/sim/ai_player.gd:41
  • AiPlayer.FERRY_TOWN constpeople in each town a ferry links
    Enlace a esta entradaconst FERRY_TOWN := 500Declarado en scripts/sim/ai_player.gd:42
  • AiPlayer.PORT_POP constpeople a town's dock or airport must have within reach
    Enlace a esta entradaconst PORT_POP := {"water": 150, "air": 200}Declarado en scripts/sim/ai_player.gd:43
  • AiPlayer.SITES_FOR constdays a search for dock and airport sites is remembered
    Enlace a esta entradaconst SITES_FOR := 30Declarado en scripts/sim/ai_player.gd:44
  • AiPlayer.WASTE_TOWN constpeople in a town a recycling line starts from (RAIL-29)
    Enlace a esta entradaconst WASTE_TOWN := 800Declarado en scripts/sim/ai_player.gd:45
  • AiPlayer.level var
    Enlace a esta entradavar level := 1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:47
  • AiPlayer.loan_ceiling var
    Enlace a esta entradavar loan_ceiling: float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:48
  • AiPlayer.company var
    Enlace a esta entradavar company: Company

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:51
  • AiPlayer.rng var
    Enlace a esta entradavar rng := RandomNumberGenerator.new()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:52
  • AiPlayer.next_think var
    Enlace a esta entradavar next_think := 20

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:53
  • AiPlayer.routes var[{"kind", "cargo", "a": Station, "b": Station, "model", "wagons", "max"}], and optionally "consist" (a mixed train's wagons), "key" (its entry in failed) and "closing" (being torn up).
    Enlace a esta entradavar routes: Array = []Declarado en scripts/sim/ai_player.gd:56
  • AiPlayer.failed var"kind:x,y" -> day it failed; tried again a year later
    Enlace a esta entradavar failed := {}Declarado en scripts/sim/ai_player.gd:57
  • AiPlayer.project varThe route being built, or {}.
    Enlace a esta entradavar project := {}

    "kind" (rail/road), "line" (the points to lay, in order), "at" (index of the last point laid so far), "head"/"tail" (points at either end that are station platforms, kept when the rest is re-routed), "reserved" (tiles a re-route must avoid), "route" (its entry for routes once it opens; its stations may still be missing), "buy" (vehicles to buy on opening), "finish" ("", or "bus"/"delivery"/"pickup": stops still to place in towns "town_a"/"town_b"), "news", "news_at" and "reroutes".

    Declarado en scripts/sim/ai_player.gd:64
  • AiPlayer._searched varthis think already ran a construction search (one a day is enough)
    Enlace a esta entradavar _searched := falseDeclarado en scripts/sim/ai_player.gd:65
  • AiPlayer._sites varDock and airport sites found lately: key -> [day searched, sites].
    Enlace a esta entradavar _sites := {}

    Not saved: it is only a cache.

    Declarado en scripts/sim/ai_player.gd:67
  • AiPlayer.debug static varprint why route attempts fail (playtest tooling)
    Enlace a esta entradastatic var debug := falseDeclarado en scripts/sim/ai_player.gd:68
  • AiPlayer.slowest_manage static varthe longest think so far, in microseconds: looking after routes...
    Enlace a esta entradastatic var slowest_manage := 0Declarado en scripts/sim/ai_player.gd:69
  • AiPlayer.slowest_expand static var...and planning a new one (benchmark tooling)
    Enlace a esta entradastatic var slowest_expand := 0Declarado en scripts/sim/ai_player.gd:70
  • AiPlayer.create_competitors static func
    Enlace a esta entradastatic func create_competitors(sim: Sim, count: int) -> void
    Parámetros
    • sim: Sim
    • count: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:73
  • AiPlayer.daily func
    Enlace a esta entradafunc daily(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:94
  • AiPlayer._expand func
    Enlace a esta entradafunc _expand(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:111
  • AiPlayer._operating static funcIncome less the cost of running the network (vehicles, stations, track, interest) in ledger l.
    Enlace a esta entradastatic func _operating(l: Dictionary) -> int
    Parámetros
    • l: Dictionary
    Devuelve
    int
    Declarado en scripts/sim/ai_player.gd:124
  • AiPlayer._troubled funcIn the red, or about to be: no time for new ventures.
    Enlace a esta entradafunc _troubled() -> bool
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:130
  • AiPlayer._open_routes func
    Enlace a esta entradafunc _open_routes() -> int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:134
  • AiPlayer._count_routes funcRoutes still open, of one kind ("" for all), and of one cargo if cargo is given.
    Enlace a esta entradafunc _count_routes(kind: String, cargo := "") -> int
    Parámetros
    • kind: String
    • cargo := ""
    Devuelve
    int
    Declarado en scripts/sim/ai_player.gd:139
  • AiPlayer._scaled static funcConstruction prices follow the game's building-cost setting, for rivals as for the player.
    Enlace a esta entradastatic func _scaled(sim: Sim, cost: int) -> int
    Parámetros
    • sim: Sim
    • cost: int
    Devuelve
    int
    Declarado en scripts/sim/ai_player.gd:148
  • AiPlayer._manage func
    Enlace a esta entradafunc _manage(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    Data.wagon_cap, Data.model

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:154
  • AiPlayer._fleets funcOur vehicles sorted by the route they were bought for: one list for each entry of routes.
    Enlace a esta entradafunc _fleets(sim: Sim) -> Array
    Parámetros
    • sim: Sim
    Devuelve
    Array
    Declarado en scripts/sim/ai_player.gd:245
  • AiPlayer._buy funcOne more vehicle of model for route r.
    Enlace a esta entradafunc _buy(sim: Sim, r: Dictionary, model: String) -> bool
    Parámetros
    • sim: Sim
    • r: Dictionary
    • model: String
    Devuelve
    bool
    Llama a
    Vehicle.stranded
    Declarado en scripts/sim/ai_player.gd:263
  • AiPlayer._close_route funcTear up a route nothing runs on any more: its stations (unless another route still calls there, or they aren't ours, like an oil rig's dock) and, for a railway, its track.
    Enlace a esta entradafunc _close_route(sim: Sim, r: Dictionary) -> bool

    A stretch at a time, so a long line doesn't hold the game up. Returns true once nothing is left; vehicles in the way or an empty bank account mean another try next time.

    Parámetros
    • sim: Sim
    • r: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:282
  • AiPlayer.industry_closed funcAn industry has closed (RAIL-23): a route left with nothing to load, or without one of its stops (an oil rig's dock goes with the rig), is given up at once - its vehicles sold, then its stations and track torn up like those of any route that stops paying - and so is a line still being built.
    Enlace a esta entradafunc industry_closed(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/ai_player.gd:320
  • AiPlayer._orphaned static funcA freight route whose loading end no longer has its cargo (the industry there closed), or whose other end no longer takes it (a wind farm site finished, a power station closed), or any route one of whose stations is gone.
    Enlace a esta entradastatic func _orphaned(r: Dictionary) -> bool

    Stops a route doesn't have yet (a bus line still being built) are null.

    Parámetros
    • r: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:337
  • AiPlayer._station_in_use func
    Enlace a esta entradafunc _station_in_use(sim: Sim, st: Station, r: Dictionary) -> bool
    Parámetros
    • sim: Sim
    • st: Station
    • r: Dictionary
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:346
  • AiPlayer._own_track_from funcOur own plain track joined to station st (the AI never shares track between its lines).
    Enlace a esta entradafunc _own_track_from(sim: Sim, st: Station) -> Array[Vector2i]
    Parámetros
    • sim: Sim
    • st: Station
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/ai_player.gd:359
  • AiPlayer._best_model funcThe newest model of a family the AI knows that's on sale and carries the cargo.
    Enlace a esta entradafunc _best_model(sim: Sim, kind: String, cargo: String, current: String) -> String

    Aircraft stop at the narrowbody: the big jets want more passengers than the towns a rival flies between have.

    Parámetros
    • sim: Sim
    • kind: String
    • cargo: String
    • current: String
    Devuelve
    String
    Llama a
    Data.available, Data.model
    Declarado en scripts/sim/ai_player.gd:386
  • AiPlayer._plan_line funcA construction plan without the money check (_afford borrows when the AI commits to it).
    Enlace a esta entradafunc _plan_line(sim: Sim, kind: String, pts: Array[Vector2i]) -> Dictionary
    Parámetros
    • sim: Sim
    • kind: String
    • pts: Array[Vector2i]
    Devuelve
    Dictionary
    Llama a
    BuildOps.plan_line
    Declarado en scripts/sim/ai_player.gd:400
  • AiPlayer._plan_route funcThe same for a line with bridges and tunnels on it (RouteBuilder.last_crossings, RAIL-52).
    Enlace a esta entradafunc _plan_route(sim: Sim, kind: String, pts: Array[Vector2i], crossings: Array) -> Dictionary
    Parámetros
    • sim: Sim
    • kind: String
    • pts: Array[Vector2i]
    • crossings: Array
    Devuelve
    Dictionary
    Declarado en scripts/sim/ai_player.gd:408
  • AiPlayer._afford funcMake sure cost can be paid, borrowing if needed.
    Enlace a esta entradafunc _afford(sim: Sim, cost: int) -> bool

    Returns false if it can't.

    Parámetros
    • sim: Sim
    • cost: int
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:413
  • AiPlayer._try_new_route func
    Enlace a esta entradafunc _try_new_route(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:426
  • AiPlayer._nothing_to_build static funcA line plan that is refused only because everything on it exists already (a road that's there).
    Enlace a esta entradastatic func _nothing_to_build(plan: Dictionary) -> bool
    Parámetros
    • plan: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:469
  • AiPlayer._why func
    Enlace a esta entradafunc _why(msg: String) -> void
    Parámetros
    • msg: String
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:473
  • AiPlayer._try_buses func
    Enlace a esta entradafunc _try_buses(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool
    Llama a
    RouteBuilder.find, RouteBuilder.jumps_for, L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:478
  • AiPlayer._links_towns funcWhether one of our passenger lines of kind (road or rail) already runs between these two towns.
    Enlace a esta entradafunc _links_towns(a: Town, b: Town, kind: String = "road") -> bool
    Parámetros
    • a: Town
    • b: Town
    • kind: String = "road"
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:541
  • AiPlayer._try_mail funcA mail van for one of our bus lines that has none yet: the stops are there already.
    Enlace a esta entradafunc _try_mail(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:552
  • AiPlayer._town_stop_tile static funcA straight town road tile near the centre that can take a stop.
    Enlace a esta entradastatic func _town_stop_tile(m: WorldMap, t: Town) -> Dictionary
    Parámetros
    • m: WorldMap
    • t: Town
    Devuelve
    Dictionary
    Declarado en scripts/sim/ai_player.gd:578
  • AiPlayer._map_scale static func
    Enlace a esta entradastatic func _map_scale(sim: Sim) -> float
    Parámetros
    • sim: Sim
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:594
  • AiPlayer._industry_pair funcPick a producing industry and the nearest industry that accepts its cargo within a distance band.
    Enlace a esta entradafunc _industry_pair(sim: Sim, min_d: float, max_d: float, kind: String) -> Array

    A relaxed rival takes the first pair it comes across; better ones compare a few and take the one that should earn most (output not yet carried away x fare for the distance).

    Parámetros
    • sim: Sim
    • min_d: float
    • max_d: float
    • kind: String
    Devuelve
    Array
    Llama a
    Data.town_pop, Data.cargo_rate
    Declarado en scripts/sim/ai_player.gd:601
  • AiPlayer._customer_rank static funcHow good a customer for c industry q is (RAIL-29), the best first, then the nearest: 2 a plant that needs every input and has the others, waiting for c (this completes a chain); 1 an ordinary customer; 0 one that won't keep making something of it: a wind farm site (finished one day, when it takes no more) or a plant still missing another input.
    Enlace a esta entradastatic func _customer_rank(q: Industry, c: String) -> int

    Those pay for what is delivered all the same, so they do when there is nothing better.

    Parámetros
    • q: Industry
    • c: String
    Devuelve
    int
    Declarado en scripts/sim/ai_player.gd:661
  • AiPlayer._output static funcHow much c p makes in a month: a primary's rate, or what a processing plant made last month.
    Enlace a esta entradastatic func _output(p: Industry, c: String) -> float
    Parámetros
    • p: Industry
    • c: String
    Devuelve
    float
    Declarado en scripts/sim/ai_player.gd:674
  • AiPlayer._customer_town static funcThe nearest town big enough to want goods and food (and of at least pop people), within a distance band of p.
    Enlace a esta entradastatic func _customer_town(sim: Sim, p: Industry, min_d: float, max_d: float, pop: int = 0) -> Town
    Parámetros
    • sim: Sim
    • p: Industry
    • min_d: float
    • max_d: float
    • pop: int = 0
    Devuelve
    Town
    Declarado en scripts/sim/ai_player.gd:680
  • AiPlayer._good_source static funcA producing industry on land (see _producing).
    Enlace a esta entradastatic func _good_source(ind: Industry) -> bool
    Parámetros
    • ind: Industry
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:694
  • AiPlayer._producing static funcA primary industry, or a processing plant that's being supplied.
    Enlace a esta entradastatic func _producing(ind: Industry) -> bool
    Parámetros
    • ind: Industry
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:699
  • AiPlayer._served_by static func
    Enlace a esta entradastatic func _served_by(sim: Sim, ind: Industry, c: String, who: Company) -> bool
    Parámetros
    • sim: Sim
    • ind: Industry
    • c: String
    • who: Company
    Devuelve
    bool
    Llama a
    Economy.industry_stations

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:710
  • AiPlayer._served_by_anyone static func
    Enlace a esta entradastatic func _served_by_anyone(sim: Sim, ind: Industry, c: String) -> bool
    Parámetros
    • sim: Sim
    • ind: Industry
    • c: String
    Devuelve
    bool
    Llama a
    Economy.industry_stations

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:717
  • AiPlayer._terminal funcFind platform tiles near ind for a terminal of length tiles, ending on the side facing toward.
    Enlace a esta entradafunc _terminal(sim: Sim, kind: String, ind: Industry, length: int, toward: Vector2, partner: Dictionary = {}) -> Dictionary

    Returns {"tiles", "axis", "end", "exit", "exit_dir"} or {}. partner: the terminal at the other end of the line, when that is chosen already.

    Parámetros
    • sim: Sim
    • kind: String
    • ind: Industry
    • length: int
    • toward: Vector2
    • partner: Dictionary = {}
    Devuelve
    Dictionary
    Declarado en scripts/sim/ai_player.gd:727
  • AiPlayer._terminal_in funcThe same for any area: the best site whose first tile lies in area.
    Enlace a esta entradafunc _terminal_in(sim: Sim, kind: String, area: Rect2i, length: int, toward: Vector2, min_pop: int, partner: Dictionary = {}) -> Dictionary

    With min_pop, only sites whose catchment houses at least that many people count, and busier ones are preferred.

    Parámetros
    • sim: Sim
    • kind: String
    • area: Rect2i
    • length: int
    • toward: Vector2
    • min_pop: int
    • partner: Dictionary = {}
    Devuelve
    Dictionary
    Llama a
    BuildOps.station_tile_problem, BuildOps.rail_tile_problem, BuildOps.road_tile_problem
    Declarado en scripts/sim/ai_player.gd:735
  • AiPlayer._try_waste funcA recycling line (RAIL-29): trucks carry the waste from a town's centre to a recycling plant within reach.
    Enlace a esta entradafunc _try_waste(sim: Sim) -> bool

    Towns big enough to fill a truck now and then, and not served by us already.

    Parámetros
    • sim: Sim
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:791
  • AiPlayer._count_routes_from funcOur open routes loading cargo at a stop in town t.
    Enlace a esta entradafunc _count_routes_from(t: Town, cargo: String) -> int
    Parámetros
    • t: Town
    • cargo: String
    Devuelve
    int
    Declarado en scripts/sim/ai_player.gd:816
  • AiPlayer._try_trucks func
    Enlace a esta entradafunc _try_trucks(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:824
  • AiPlayer._try_rail func
    Enlace a esta entradafunc _try_rail(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:833
  • AiPlayer._try_pax_rail funcA passenger (and mail) railway between two sizeable towns a good way apart.
    Enlace a esta entradafunc _try_pax_rail(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:841
  • AiPlayer._build_pax_rail func
    Enlace a esta entradafunc _build_pax_rail(sim: Sim, a: Town, b: Town, key: String) -> bool
    Parámetros
    • sim: Sim
    • a: Town
    • b: Town
    • key: String
    Devuelve
    bool
    Llama a
    RouteBuilder.find, Const.opp, RouteBuilder.jumps_for, L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:864
  • AiPlayer._build_freight func
    Enlace a esta entradafunc _build_freight(sim: Sim, kind: String, p: Industry, q: Industry, cargo: String) -> bool
    Parámetros
    • sim: Sim
    • kind: String
    • p: Industry
    • q: Industry
    • cargo: String
    Devuelve
    bool
    Llama a
    RouteBuilder.find, Const.opp, RouteBuilder.jumps_for, Data.available, L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:913
  • AiPlayer._build_town_delivery funcA truck line from a processing plant to a stop in the middle of a town that takes its cargo, or with pickup the other way round: from a town stop that supplies it (waste) to p, which takes it.
    Enlace a esta entradafunc _build_town_delivery(sim: Sim, p: Industry, town: Town, cargo: String, pickup := false) -> bool
    Parámetros
    • sim: Sim
    • p: Industry
    • town: Town
    • cargo: String
    • pickup := false
    Devuelve
    bool
    Llama a
    Station.add_catchment, Station.coverage, RouteBuilder.find, RouteBuilder.jumps_for, L.t
    Declarado en scripts/sim/ai_player.gd:979
  • AiPlayer._try_ships funcA ship route: freight, or when there's none to try (no search was run), a ferry.
    Enlace a esta entradafunc _try_ships(sim: Sim) -> bool

    A ferry earns far less than a freighter, so a rival runs only a few (FERRIES).

    Parámetros
    • sim: Sim
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:1044
  • AiPlayer._try_ship_freight funcFreight by sea: a producing industry ships can call at (an oil rig, or one near the shore) and the nearest industry by the sea that takes its cargo, weighed up as in _industry_pair.
    Enlace a esta entradafunc _try_ship_freight(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool
    Llama a
    Data.cargo_rate
    Declarado en scripts/sim/ai_player.gd:1052
  • AiPlayer._build_ship_freight func
    Enlace a esta entradafunc _build_ship_freight(sim: Sim, p: Industry, q: Industry, cargo: String) -> bool
    Parámetros
    • sim: Sim
    • p: Industry
    • q: Industry
    • cargo: String
    Devuelve
    bool
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1098
  • AiPlayer._try_ferry funcA ferry between two towns of FERRY_TOWN+ people on the same water, 14 to SHIP_MAX tiles apart.
    Enlace a esta entradafunc _try_ferry(sim: Sim) -> bool
    Parámetros
    • sim: Sim
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:1115
  • AiPlayer._try_air funcAn air service between two big towns a good way apart: from a town, to the biggest one far enough away.
    Enlace a esta entradafunc _try_air(sim: Sim) -> bool

    A town's airport is used again for its next service rather than building another.

    Parámetros
    • sim: Sim
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:1145
  • AiPlayer._pair_key static func
    Enlace a esta entradastatic func _pair_key(what: String, a: Town, b: Town) -> String
    Parámetros
    • what: String
    • a: Town
    • b: Town
    Devuelve
    String

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1171
  • AiPlayer._build_town_link funcA passenger service of kind ("water" or "air") between two towns, calling at pa and pb (see _town_port).
    Enlace a esta entradafunc _build_town_link(sim: Sim, kind: String, a: Town, b: Town, pa: Dictionary, pb: Dictionary) -> bool
    Parámetros
    • sim: Sim
    • kind: String
    • a: Town
    • b: Town
    • pa: Dictionary
    • pb: Dictionary
    Devuelve
    bool
    Llama a
    L.t
    Declarado en scripts/sim/ai_player.gd:1177
  • AiPlayer._open_port_route funcBuild what a ship or air route still needs at either end (r.a, r.b: {"station"} for one that's there already, or a site {"tiles", "axis"}), buy its first count vehicles and open it.
    Enlace a esta entradafunc _open_port_route(sim: Sim, r: Dictionary, count: int, news: String, news_at: Vector2) -> bool

    Nothing is built unless both ends can be, and each must supply or take the cargo as its end of the route should.

    Parámetros
    • sim: Sim
    • r: Dictionary
    • count: int
    • news: String
    • news_at: Vector2
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:1194
  • AiPlayer._town_port funcWhere a passenger service of kind ("water" or "air") calls in town: a dock or airport of ours there already, or else the best site for a new one ({} when there's none).
    Enlace a esta entradafunc _town_port(sim: Sim, kind: String, town: Town) -> Dictionary
    Parámetros
    • sim: Sim
    • kind: String
    • town: Town
    Devuelve
    Dictionary
    Declarado en scripts/sim/ai_player.gd:1243
  • AiPlayer._port_toward funcWhere a ship route for ind calls: our own dock that serves it already, an oil rig's open dock, or the shore site nearest toward.
    Enlace a esta entradafunc _port_toward(sim: Sim, ind: Industry, toward: Vector2) -> Dictionary

    {} if ships can't reach it.

    Parámetros
    • sim: Sim
    • ind: Industry
    • toward: Vector2
    Devuelve
    Dictionary
    Llama a
    Economy.industry_stations
    Declarado en scripts/sim/ai_player.gd:1254
  • AiPlayer._ports_of funcWhere ships can call for ind: an oil rig's own open dock, or the shore tiles near enough for a dock's catchment to reach it ([] inland).
    Enlace a esta entradafunc _ports_of(sim: Sim, ind: Industry) -> Array

    Remembered for a while.

    Parámetros
    • sim: Sim
    • ind: Industry
    Devuelve
    Array
    Declarado en scripts/sim/ai_player.gd:1272
  • AiPlayer._industry_docks static func
    Enlace a esta entradastatic func _industry_docks(m: WorldMap, ind: Industry) -> Array
    Parámetros
    • m: WorldMap
    • ind: Industry
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1276
  • AiPlayer._remembered funcA search for sites, done again only once it's SITES_FOR days old: the coast and the towns barely change from one think to the next, and a site that has gone is caught when it's built on.
    Enlace a esta entradafunc _remembered(sim: Sim, key: String, search: Callable)
    Parámetros
    • sim: Sim
    • key: String
    • search: Callable
    Devuelve
    func _remembered(sim: Sim, key: String, search: Callable)
    Declarado en scripts/sim/ai_player.gd:1293
  • AiPlayer._port_site static funcThe best site near the centre of town for a dock (a shore tile) or an airport (a level 3x2 or 2x3 patch): most people within its reach, at least PORT_POP, less a little for each tile from the centre.
    Enlace a esta entradastatic func _port_site(m: WorldMap, kind: String, town: Town) -> Dictionary

    {"tiles", "axis"}, or {} when there's none.

    Parámetros
    • m: WorldMap
    • kind: String
    • town: Town
    Devuelve
    Dictionary
    Declarado en scripts/sim/ai_player.gd:1304
  • AiPlayer._port_fits static funcWhether a dock (kind "water", one tile) or an airport ("air") can go on the tiles of r.
    Enlace a esta entradastatic func _port_fits(m: WorldMap, kind: String, r: Rect2i) -> bool
    Parámetros
    • m: WorldMap
    • kind: String
    • r: Rect2i
    Devuelve
    bool
    Llama a
    BuildOps.station_tile_problem
    Declarado en scripts/sim/ai_player.gd:1335
  • AiPlayer._pop_table static funcRunning totals of the people in the houses of area, so that those in any rectangle of it take four lookups (_pop_in) instead of a count tile by tile.
    Enlace a esta entradastatic func _pop_table(m: WorldMap, area: Rect2i) -> PackedInt32Array
    Parámetros
    • m: WorldMap
    • area: Rect2i
    Devuelve
    PackedInt32Array
    Declarado en scripts/sim/ai_player.gd:1356
  • AiPlayer._pop_in static func
    Enlace a esta entradastatic func _pop_in(sums: PackedInt32Array, area: Rect2i, r: Rect2i) -> int
    Parámetros
    • sums: PackedInt32Array
    • area: Rect2i
    • r: Rect2i
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1374
  • AiPlayer._berth static funcThe water tile ships berth at for a dock end of a route ({"station"} or a shore site).
    Enlace a esta entradastatic func _berth(m: WorldMap, port: Dictionary) -> Vector2i
    Parámetros
    • m: WorldMap
    • port: Dictionary
    Devuelve
    Vector2i
    Llama a
    BuildOps.dock_facing
    Declarado en scripts/sim/ai_player.gd:1387
  • AiPlayer._second_berth funcShips take turns at a berth (RAIL-26).
    Enlace a esta entradafunc _second_berth(sim: Sim, fleet: Array) -> void

    A ship seen waiting (thinks are weeks apart, so it waits often) off one of our one-berth docks, where the ship in the berth is waiting for a full load, gets a second dock tile built beside the first, with a berth of its own - but only when the waiting ship has other work there: cargo to unload, or a different cargo to load. Two ships waiting for the same cargo gain nothing from a berth each: they would share it out between them, fill up no sooner, and then sail in convoy with nobody loading in between. Two berths at most, and an oil rig's dock is nobody's to extend.

    Parámetros
    • sim: Sim
    • fleet: Array
    Devuelve
    void
    Declarado en scripts/sim/ai_player.gd:1403
  • AiPlayer._berth_beside static funcA shore tile beside dock tile t, whose ships berth on the water facing it, where a second dock tile would have a berth of its own: on the same shore, facing the same way, so the two berths lie side by side, and on water no other dock berths at.
    Enlace a esta entradastatic func _berth_beside(m: WorldMap, t: Vector2i, facing: int) -> Vector2i

    (-1, -1) if there's none.

    Parámetros
    • m: WorldMap
    • t: Vector2i
    • facing: int
    Devuelve
    Vector2i
    Llama a
    BuildOps.dock_facing
    Declarado en scripts/sim/ai_player.gd:1429
  • AiPlayer._berth_taken static funcWhether a dock already berths at water tile w: one on the shore facing it, or an oil rig's dock standing on it.
    Enlace a esta entradastatic func _berth_taken(m: WorldMap, w: Vector2i) -> bool
    Parámetros
    • m: WorldMap
    • w: Vector2i
    Devuelve
    bool
    Declarado en scripts/sim/ai_player.gd:1442
  • AiPlayer._sea_link static funcWhether ships can sail between the water tiles a and b by a way not much longer than the straight line (a long way round the coast pays no more than the short one).
    Enlace a esta entradastatic func _sea_link(m: WorldMap, a: Vector2i, b: Vector2i) -> bool

    The search keeps to the water near that line, so even on a big sea it's quick.

    Parámetros
    • m: WorldMap
    • a: Vector2i
    • b: Vector2i
    Devuelve
    bool
    Llama a
    Pathfinder.find_sea
    Declarado en scripts/sim/ai_player.gd:1457
  • AiPlayer._carries_from funcWhether one of our routes already loads c at a station serving ind (an oil rig's dock is nobody's, so _served_by doesn't see our tankers there).
    Enlace a esta entradafunc _carries_from(sim: Sim, ind: Industry, c: String) -> bool
    Parámetros
    • sim: Sim
    • ind: Industry
    • c: String
    Devuelve
    bool
    Llama a
    Economy.industry_stations
    Declarado en scripts/sim/ai_player.gd:1463
  • AiPlayer._start funcBegin laying line, a stretch a day (see project).
    Enlace a esta entradafunc _start(line: Array[Vector2i], head: int, tail: int, reserved: Dictionary, to_lay: bool, route: Dictionary, buy: int, news: String, news_at: Vector2, extra: Dictionary = {}) -> void

    head/tail: points at the start/end of the line that are platforms. to_lay: false when every piece of it exists already (an existing road).

    Parámetros
    • line: Array[Vector2i]
    • head: int
    • tail: int
    • reserved: Dictionary
    • to_lay: bool
    • route: Dictionary
    • buy: int
    • news: String
    • news_at: Vector2
    • extra: Dictionary = {}
    Devuelve
    void
    Declarado en scripts/sim/ai_player.gd:1475
  • AiPlayer._construct funcA day's work on the line under construction, and opening it once it's finished.
    Enlace a esta entradafunc _construct(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/ai_player.gd:1484
  • AiPlayer._next_crossing static funcThe next bridge or tunnel the line under construction comes to ({} when none is left).
    Enlace a esta entradastatic func _next_crossing(p: Dictionary) -> Dictionary
    Parámetros
    • p: Dictionary
    Devuelve
    Dictionary
    Declarado en scripts/sim/ai_player.gd:1536
  • AiPlayer._reroute funcA new way from where the line has got to, to its far end.
    Enlace a esta entradafunc _reroute(sim: Sim) -> bool

    False if there's none (or the line has been re-routed too often already).

    Parámetros
    • sim: Sim
    Devuelve
    bool
    Llama a
    BuildOps.dir_between, RouteBuilder.jumps_for, RouteBuilder.find
    Declarado en scripts/sim/ai_player.gd:1550
  • AiPlayer._open funcThe line is finished: place the stops still missing, buy the first vehicles and open for business.
    Enlace a esta entradafunc _open(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/ai_player.gd:1606
  • AiPlayer._abandon funcGive up the line under construction: what was built of it is torn up again (roads stay, as they do when a route closes) and the place isn't tried again for a while.
    Enlace a esta entradafunc _abandon(sim: Sim, why: String) -> void
    Parámetros
    • sim: Sim
    • why: String
    Devuelve
    void
    Declarado en scripts/sim/ai_player.gd:1642
  • AiPlayer.to_dict func
    Enlace a esta entradafunc to_dict() -> Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1661
  • AiPlayer._route_to_dict static func
    Enlace a esta entradastatic func _route_to_dict(r: Dictionary) -> Dictionary
    Parámetros
    • r: Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1681
  • AiPlayer._route_from_dict static funcA route saved by _route_to_dict, or {} if one of its stations is gone.
    Enlace a esta entradastatic func _route_from_dict(r: Dictionary, by_id: Dictionary, partial := false) -> Dictionary

    With partial, a station not placed yet (-1) is allowed.

    Parámetros
    • r: Dictionary
    • by_id: Dictionary
    • partial := false
    Devuelve
    Dictionary
    Declarado en scripts/sim/ai_player.gd:1692
  • AiPlayer._flat static func
    Enlace a esta entradastatic func _flat(tiles: Array) -> Array
    Parámetros
    • tiles: Array
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1713
  • AiPlayer._tiles static func
    Enlace a esta entradastatic func _tiles(flat: Array) -> Array[Vector2i]
    Parámetros
    • flat: Array
    Devuelve
    Array[Vector2i]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1721
  • AiPlayer.from_dict static func
    Enlace a esta entradastatic func from_dict(sim: Sim, d: Dictionary) -> AiPlayer
    Parámetros
    • sim: Sim
    • d: Dictionary
    Devuelve
    AiPlayer

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/ai_player.gd:1728

BuildOps

  • BuildOps._plan static func
    Enlace a esta entradastatic func _plan() -> Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:8
  • BuildOps._fail static func
    Enlace a esta entradastatic func _fail(p: Dictionary, t: Vector2i, why: String) -> void
    Parámetros
    • p: Dictionary
    • t: Vector2i
    • why: String
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:12
  • BuildOps.dir_between static func
    Enlace a esta entradastatic func dir_between(a: Vector2i, b: Vector2i) -> int
    Parámetros
    • a: Vector2i
    • b: Vector2i
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:18
  • BuildOps.network_bits_ok static funcWhether a tile can carry a road or rail piece with the given full connection bitmask.
    Enlace a esta entradastatic func network_bits_ok(m: WorldMap, x: int, y: int, bits: int, strict: bool = false) -> bool

    Flat tiles take any shape; simple inclines only take pieces running along the incline.

    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • bits: int
    • strict: bool = false
    Devuelve
    bool
    Declarado en scripts/sim/build_ops.gd:26
  • BuildOps._slope_reason static func
    Enlace a esta entradastatic func _slope_reason(m: WorldMap, x: int, y: int) -> String
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:50
  • BuildOps._obj_reason static func
    Enlace a esta entradastatic func _obj_reason(o: Dictionary) -> String
    Parámetros
    • o: Dictionary
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:58
  • BuildOps._is_crossing static func
    Enlace a esta entradastatic func _is_crossing(existing_other: int, bits: int) -> bool
    Parámetros
    • existing_other: int
    • bits: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:67
  • BuildOps.span_problem static funcGround construction under a bridge or over a tunnel: allowed only across its line.
    Enlace a esta entradastatic func span_problem(m: WorldMap, x: int, y: int, bits: int) -> String
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • bits: int
    Devuelve
    String
    Llama a
    L.t, WorldMap.axis_of
    Declarado en scripts/sim/build_ops.gd:72
  • BuildOps.under_bridge static func
    Enlace a esta entradastatic func under_bridge(m: WorldMap, x: int, y: int) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:86
  • BuildOps.rail_tile_problem static funcWhy rail with full bitmask bits can't go on this tile, or "" if it can.
    Enlace a esta entradastatic func rail_tile_problem(m: WorldMap, x: int, y: int, bits: int) -> String
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • bits: int
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/build_ops.gd:92
  • BuildOps.road_tile_problem static funcWhy road with full bitmask bits can't go on this tile, or "" if it can.
    Enlace a esta entradastatic func road_tile_problem(m: WorldMap, x: int, y: int, bits: int) -> String
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • bits: int
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/build_ops.gd:118
  • BuildOps.INDUSTRY_GAP constTiles of open ground towns leave around an industry's footprint: room for the player's station or loading bay, and no houses pressed against a cooling tower.
    Enlace a esta entradaconst INDUSTRY_GAP := 2Declarado en scripts/sim/build_ops.gd:147
  • BuildOps.can_link_road static funcStricter rule used by town growth: no crossings, no stations, and no new street into the ground kept clear around an industry (joining a road already there is fine).
    Enlace a esta entradastatic func can_link_road(m: WorldMap, x: int, y: int, d: int, strict: bool = false) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • d: int
    • strict: bool = false
    Devuelve
    bool
    Llama a
    Const.opp
    Declarado en scripts/sim/build_ops.gd:152
  • BuildOps.link_road static func
    Enlace a esta entradastatic func link_road(m: WorldMap, x: int, y: int, d: int) -> void
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • d: int
    Devuelve
    void
    Llama a
    Const.opp

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:171
  • BuildOps.can_build_house static funcHouses need a flat, dry, empty tile, clear of the ground kept around industries.
    Enlace a esta entradastatic func can_build_house(m: WorldMap, x: int, y: int) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    bool
    Declarado en scripts/sim/build_ops.gd:181
  • BuildOps.plan_line static funcPlan a road or rail line through consecutive, 4-adjacent tiles pts.
    Enlace a esta entradastatic func plan_line(m: WorldMap, kind: String, pts: Array[Vector2i]) -> Dictionary

    Extra keys: kind, add (Vector2i -> bits to add).

    Parámetros
    • m: WorldMap
    • kind: String
    • pts: Array[Vector2i]
    Devuelve
    Dictionary
    Llama a
    L.t, Const.opp
    Declarado en scripts/sim/build_ops.gd:194
  • BuildOps._parallel_diagonal static funcIf existing is one corner piece and adding the opposite corner, the pairing they form as two parallel diagonals (see WorldMap.diag2), else -1.
    Enlace a esta entradastatic func _parallel_diagonal(existing: int, adding: int) -> int
    Parámetros
    • existing: int
    • adding: int
    Devuelve
    int
    Declarado en scripts/sim/build_ops.gd:245
  • BuildOps.apply_line static func
    Enlace a esta entradastatic func apply_line(m: WorldMap, p: Dictionary) -> void
    Parámetros
    • m: WorldMap
    • p: Dictionary
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:255
  • BuildOps.dock_facing static funcDirection from a shore tile down to open water, or -1.
    Enlace a esta entradastatic func dock_facing(m: WorldMap, x: int, y: int) -> int

    Docks sit on a shore slope whose low edge meets the water (or on a level tile at the water's edge).

    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    int
    Declarado en scripts/sim/build_ops.gd:276
  • BuildOps.station_tile_problem static func
    Enlace a esta entradastatic func station_tile_problem(m: WorldMap, kind: String, x: int, y: int, axis: int) -> String
    Parámetros
    • m: WorldMap
    • kind: String
    • x: int
    • y: int
    • axis: int
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:284
  • BuildOps.MAX_STATION_SPREAD consta station's tiles fit in a square this many tiles across
    Enlace a esta entradaconst MAX_STATION_SPREAD := 20Declarado en scripts/sim/build_ops.gd:328
  • BuildOps.plan_station static funcPlan station tiles of kind ("rail" or "road") along axis.
    Enlace a esta entradastatic func plan_station(m: WorldMap, kind: String, pts: Array[Vector2i], axis: int) -> Dictionary

    Extra keys: kind, axis, tiles, join (Station or null), catch (catchment incl. joined station), accepts, supplies, attractions (attraction types in the catchment).

    Parámetros
    • m: WorldMap
    • kind: String
    • pts: Array[Vector2i]
    • axis: int
    Devuelve
    Dictionary
    Llama a
    L.t, Station.add_catchment, Station.coverage
    Declarado en scripts/sim/build_ops.gd:333
  • BuildOps.apply_station static func
    Enlace a esta entradastatic func apply_station(m: WorldMap, p: Dictionary) -> Station
    Parámetros
    • m: WorldMap
    • p: Dictionary
    Devuelve
    Station
    Llama a
    Station.make_name, WorldMap.axis_of

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:389
  • BuildOps.add_rig_dock static funcThe open dock an industry at sea (an oil rig) comes with, so a rig can be served by ship however far from the shore it stands.
    Enlace a esta entradastatic func add_rig_dock(m: WorldMap, ind: Industry) -> Station

    Nobody owns it and every company's ships may load there. Made with the map, and on loading a save from before rigs had one. Returns the dock (the one it already has, if any), or null when no open water touches the rig.

    Parámetros
    • m: WorldMap
    • ind: Industry
    Devuelve
    Station
    Llama a
    L.t, WorldMap.axis_of
    Declarado en scripts/sim/build_ops.gd:424
  • BuildOps.rig_dock_spot static funcWhere a rig's dock goes: a free water tile along one of the rig's sides, the one with the most open water around it (away from any shore), so ships come and go easily.
    Enlace a esta entradastatic func rig_dock_spot(m: WorldMap, ind: Industry) -> Vector2i

    (-1, -1) if none.

    Parámetros
    • m: WorldMap
    • ind: Industry
    Devuelve
    Vector2i
    Declarado en scripts/sim/build_ops.gd:455
  • BuildOps.is_rig_dock static funcTrue on the tile of a rig's own dock (see add_rig_dock).
    Enlace a esta entradastatic func is_rig_dock(o) -> bool
    Parámetros
    • o
    Devuelve
    bool
    Declarado en scripts/sim/build_ops.gd:486
  • BuildOps.bulldoze_target static funcWhat bulldozing a tile would remove (one layer: station, track, road, building or trees) and its cost.
    Enlace a esta entradastatic func bulldoze_target(m: WorldMap, x: int, y: int, who_id: int = -1) -> Dictionary

    who_id: the company bulldozing. On a level crossing over someone else's track it takes the road.

    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • who_id: int = -1
    Devuelve
    Dictionary
    Llama a
    Town.anchor_of, Town.footprint, WorldMap.crossing_tiles
    Declarado en scripts/sim/build_ops.gd:494
  • BuildOps.plan_bulldoze static funcExtra keys: rect, count.
    Enlace a esta entradastatic func plan_bulldoze(m: WorldMap, rect: Rect2i, who_id: int = -1) -> Dictionary
    Parámetros
    • m: WorldMap
    • rect: Rect2i
    • who_id: int = -1
    Devuelve
    Dictionary
    Llama a
    L.t
    Declarado en scripts/sim/build_ops.gd:526
  • BuildOps.apply_bulldoze static funcApplies to every removable tile in the rect; industries are skipped.
    Enlace a esta entradastatic func apply_bulldoze(m: WorldMap, p: Dictionary) -> void
    Parámetros
    • m: WorldMap
    • p: Dictionary
    Devuelve
    void
    Llama a
    WorldMap.crossing_tiles, Town.footprint, Const.opp
    Declarado en scripts/sim/build_ops.gd:566
  • BuildOps.plan_terraform static funcRaise (delta = 1) or lower (delta = -1) one tile corner.
    Enlace a esta entradastatic func plan_terraform(m: WorldMap, c: Vector2i, delta: int) -> Dictionary

    Neighbouring corners follow so that edge-adjacent corners never differ by more than one level. Extra keys: corner, corners (Vector2i -> new height), tiles (affected tiles).

    Parámetros
    • m: WorldMap
    • c: Vector2i
    • delta: int
    Devuelve
    Dictionary
    Llama a
    L.t
    Declarado en scripts/sim/build_ops.gd:648
  • BuildOps.apply_terraform static func
    Enlace a esta entradastatic func apply_terraform(m: WorldMap, p: Dictionary) -> void
    Parámetros
    • m: WorldMap
    • p: Dictionary
    Devuelve
    void
    Llama a
    TerrainGen.classify_tile

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:701
  • BuildOps.plan_level static funcLevel the tiles in rect (all their corners) to height, as far as the rules allow.
    Enlace a esta entradastatic func plan_level(m: WorldMap, rect: Rect2i, height: int, blocked: Dictionary = {}) -> Dictionary

    Corners move one level at a time - cutting from the top down, then filling from the bottom up - and drag their neighbours along the way plan_terraform does, so edge-adjacent corners never differ by more than one level. A tile that can't change shape (a building, road or track, a bridge or tunnel, water, or a tile in blocked: tile -> reason) pins its corners, and any move that would disturb a pinned corner is left out; the rest of the area is still levelled. Trees on tiles that change shape are cleared. Extra keys: rect, height, corners (Vector2i -> new height), steps (corner moves, each costing Data.COST.terraform), tiles (tiles that change shape), trees (those of them with trees), why (refused tile -> reason; the same tiles are in bad).

    Parámetros
    • m: WorldMap
    • rect: Rect2i
    • height: int
    • blocked: Dictionary = {}
    Devuelve
    Dictionary
    Llama a
    L.t
    Declarado en scripts/sim/build_ops.gd:723
  • BuildOps._level_problem static funcWhy tile t can't change shape while levelling ("" if it can).
    Enlace a esta entradastatic func _level_problem(m: WorldMap, t: Vector2i, blocked: Dictionary) -> String
    Parámetros
    • m: WorldMap
    • t: Vector2i
    • blocked: Dictionary
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/build_ops.gd:783
  • BuildOps._level_step static funcMove corner c one level (delta) to v, dragging neighbours along.
    Enlace a esta entradastatic func _level_step(m: WorldMap, c: Vector2i, v: int, delta: int, work: Dictionary, blocked: Dictionary, problems: Dictionary, p: Dictionary) -> bool

    Fails, changing nothing in work, when a corner that would move belongs to a tile that can't change (recorded in p.why).

    Parámetros
    • m: WorldMap
    • c: Vector2i
    • v: int
    • delta: int
    • work: Dictionary
    • blocked: Dictionary
    • problems: Dictionary
    • p: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/build_ops.gd:800
  • BuildOps.apply_level static func
    Enlace a esta entradastatic func apply_level(m: WorldMap, p: Dictionary) -> void
    Parámetros
    • m: WorldMap
    • p: Dictionary
    Devuelve
    void
    Llama a
    TerrainGen.classify_tile

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:838
  • BuildOps.MAX_BRIDGE const
    Enlace a esta entradaconst MAX_BRIDGE := 24

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:857
  • BuildOps.MAX_TUNNEL const
    Enlace a esta entradaconst MAX_TUNNEL := 30

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:858
  • BuildOps.edge_heights static funcCorner heights of the edge of tile t facing direction d.
    Enlace a esta entradastatic func edge_heights(m: WorldMap, t: Vector2i, d: int) -> Vector2i
    Parámetros
    • m: WorldMap
    • t: Vector2i
    • d: int
    Devuelve
    Vector2i
    Declarado en scripts/sim/build_ops.gd:862
  • BuildOps._end_piece static funcThe network piece a bridge or tunnel needs on tile t (toward direction d), added to the plan.
    Enlace a esta entradastatic func _end_piece(m: WorldMap, p: Dictionary, t: Vector2i, d: int) -> void
    Parámetros
    • m: WorldMap
    • p: Dictionary
    • t: Vector2i
    • d: int
    Devuelve
    void
    Declarado en scripts/sim/build_ops.gd:871
  • BuildOps.plan_bridge static funcA bridge from ramp tile a to ramp tile b (same row or column).
    Enlace a esta entradastatic func plan_bridge(m: WorldMap, kind: String, a: Vector2i, b: Vector2i, style: String = "") -> Dictionary

    The deck sits at the height of the ramps' inner edges, which must match. The ground underneath may not rise above the deck, and roads or track passing under need a level of clearance. Extra keys: kind, type, s0, s1, dir, level, add (ramp pieces), tiles (spans).

    Parámetros
    • m: WorldMap
    • kind: String
    • a: Vector2i
    • b: Vector2i
    • style: String = ""
    Devuelve
    Dictionary
    Llama a
    L.t, L.lower, Const.opp, WorldMap.axis_of
    Declarado en scripts/sim/build_ops.gd:890
  • BuildOps.plan_electrify static funcOverhead wires over the track along pts.
    Enlace a esta entradastatic func plan_electrify(m: WorldMap, pts: Array[Vector2i]) -> Dictionary

    Tiles without track are skipped; wired ones are free. Extra keys: tiles (the tiles that get wires).

    Parámetros
    • m: WorldMap
    • pts: Array[Vector2i]
    Devuelve
    Dictionary
    Llama a
    L.t
    Declarado en scripts/sim/build_ops.gd:966
  • BuildOps.apply_electrify static func
    Enlace a esta entradastatic func apply_electrify(m: WorldMap, p: Dictionary) -> void
    Parámetros
    • m: WorldMap
    • p: Dictionary
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:984
  • BuildOps.plan_depot static funcA depot on tile t, its door - and its one road or track connection - facing facing.
    Enlace a esta entradastatic func plan_depot(m: WorldMap, kind: String, t: Vector2i, facing: int) -> Dictionary

    Extra keys: kind, tile, facing, link (joins the road/track in front), link_reason.

    Parámetros
    • m: WorldMap
    • kind: String
    • t: Vector2i
    • facing: int
    Devuelve
    Dictionary
    Llama a
    L.t, Const.opp
    Declarado en scripts/sim/build_ops.gd:999
  • BuildOps.apply_depot static func
    Enlace a esta entradastatic func apply_depot(m: WorldMap, p: Dictionary, owner: Company) -> void
    Parámetros
    • m: WorldMap
    • p: Dictionary
    • owner: Company
    Devuelve
    void
    Llama a
    Const.opp

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:1034
  • BuildOps.tunnel_exit static funcWhere a tunnel from hillside tile a (heading d, its mouth at height level) comes out: how many tiles on the far mouth is, at the first tile whose far edge comes back down to level at either corner.
    Enlace a esta entradastatic func tunnel_exit(m: WorldMap, a: Vector2i, d: int, level: int) -> int

    0 when the ground doesn't come down that far within MAX_TUNNEL tiles (or the map ends first).

    Parámetros
    • m: WorldMap
    • a: Vector2i
    • d: int
    • level: int
    Devuelve
    int
    Declarado en scripts/sim/build_ops.gd:1060
  • BuildOps._edge_corners static funcThe corners of the edge of tile t facing direction d, in edge_heights' order.
    Enlace a esta entradastatic func _edge_corners(t: Vector2i, d: int) -> Array[Vector2i]
    Parámetros
    • t: Vector2i
    • d: int
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/build_ops.gd:1072
  • BuildOps.plan_tunnel static funcA tunnel starting at hillside tile a (an incline rising straight ahead).
    Enlace a esta entradastatic func plan_tunnel(m: WorldMap, kind: String, a: Vector2i, hint: bool = true) -> Dictionary

    It runs into the hill to the first tile where the ground comes back down to the entrance's height (tunnel_exit), and that tile is the far mouth. A hill seldom ends in a slope exactly like the one it started with - it comes down on a slant, or one corner sticks up - so the far mouth's tile is evened out into one, its corners lowered the way Level land lowers them (dragging the land around along). Extra keys as plan_bridge, plus corners (corner -> new height, evening out the far mouth: see apply_level) and trees (tiles that change shape and lose their trees). hint: when there's no way out, look further up the slope for a hillside that has one.

    Parámetros
    • m: WorldMap
    • kind: String
    • a: Vector2i
    • hint: bool = true
    Devuelve
    Dictionary
    Llama a
    L.t, Const.opp
    Declarado en scripts/sim/build_ops.gd:1088
  • BuildOps._no_exit static funcplan_tunnel finding no way out: say so, on the entrance alone (not the whole line it looked along).
    Enlace a esta entradastatic func _no_exit(m: WorldMap, p: Dictionary, a: Vector2i, d: int, level: int, hint: bool) -> void

    The ground may come back down on the far side, only not as low as here: then a hillside further up the same slope, still on the way up (before the ground first levels off or falls), may well take a tunnel - when one does, say where.

    Parámetros
    • m: WorldMap
    • p: Dictionary
    • a: Vector2i
    • d: int
    • level: int
    • hint: bool
    Devuelve
    void
    Llama a
    L.t, WorldMap.axis_of, L.n
    Declarado en scripts/sim/build_ops.gd:1162
  • BuildOps._even_out_mouth static funcEven out tunnel tile t (heading d) into the far mouth: a straight incline from level + 1 on its near edge down to level on its far edge.
    Enlace a esta entradastatic func _even_out_mouth(m: WorldMap, p: Dictionary, t: Vector2i, d: int, level: int, keep: Array) -> void

    Adds the corners that move, their cost and the trees they take to p; keep are tiles that mustn't change shape.

    Parámetros
    • m: WorldMap
    • p: Dictionary
    • t: Vector2i
    • d: int
    • level: int
    • keep: Array
    Devuelve
    void
    Llama a
    Const.opp, L.t
    Declarado en scripts/sim/build_ops.gd:1189
  • BuildOps._set_corners static funcPut corner heights (corner -> height) on the map as they are, without redrawing anything.
    Enlace a esta entradastatic func _set_corners(m: WorldMap, corners: Dictionary) -> Dictionary

    Returns the heights they had, to put back the same way.

    Parámetros
    • m: WorldMap
    • corners: Dictionary
    Devuelve
    Dictionary
    Declarado en scripts/sim/build_ops.gd:1234
  • BuildOps.apply_crossing static func
    Enlace a esta entradastatic func apply_crossing(m: WorldMap, p: Dictionary) -> Dictionary
    Parámetros
    • m: WorldMap
    • p: Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:1243
  • BuildOps.signal_problem static func
    Enlace a esta entradastatic func signal_problem(m: WorldMap, t: Vector2i) -> String
    Parámetros
    • m: WorldMap
    • t: Vector2i
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:1268
  • BuildOps.plan_signal static funcPlace a two-way signal, or cycle an existing one: two-way -> one-way -> one-way the other way -> two-way.
    Enlace a esta entradastatic func plan_signal(m: WorldMap, t: Vector2i) -> Dictionary

    Extra keys: tile, state (see WorldMap.signals).

    Parámetros
    • m: WorldMap
    • t: Vector2i
    Devuelve
    Dictionary
    Declarado en scripts/sim/build_ops.gd:1288
  • BuildOps.apply_signal static func
    Enlace a esta entradastatic func apply_signal(m: WorldMap, p: Dictionary) -> void
    Parámetros
    • m: WorldMap
    • p: Dictionary
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/build_ops.gd:1307
  • BuildOps._corner_of static func[a, b] if bits is a single corner piece, else [].
    Enlace a esta entradastatic func _corner_of(bits: int) -> Array
    Parámetros
    • bits: int
    Devuelve
    Array
    Declarado en scripts/sim/build_ops.gd:1314
  • BuildOps.signal_dirs static funcThe two directions trains can pass a signal on tile t (headings on entering the tile).
    Enlace a esta entradastatic func signal_dirs(m: WorldMap, t: Vector2i) -> Array
    Parámetros
    • m: WorldMap
    • t: Vector2i
    Devuelve
    Array
    Llama a
    Const.opp
    Declarado en scripts/sim/build_ops.gd:1323

Calendar

  • Calendar.MONTHS const
    Enlace a esta entradaconst MONTHS := ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/calendar.gd:4
  • Calendar.MONTH_DAYS const
    Enlace a esta entradaconst MONTH_DAYS := [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/calendar.gd:5
  • Calendar.is_leap static func
    Enlace a esta entradastatic func is_leap(y: int) -> bool
    Parámetros
    • y: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/calendar.gd:8
  • Calendar.year_days static func
    Enlace a esta entradastatic func year_days(y: int) -> int
    Parámetros
    • y: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/calendar.gd:12
  • Calendar.from_day static funcReturns Vector3i(year, month 0-11, day of month 1-31).
    Enlace a esta entradastatic func from_day(day: int) -> Vector3i
    Parámetros
    • day: int
    Devuelve
    Vector3i
    Declarado en scripts/core/calendar.gd:17
  • Calendar.format static func
    Enlace a esta entradastatic func format(day: int) -> String
    Parámetros
    • day: int
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/calendar.gd:33
  • Calendar.is_christmas static funcChristmas time in the towns: 1 December to 6 January.
    Enlace a esta entradastatic func is_christmas(day: int) -> bool
    Parámetros
    • day: int
    Devuelve
    bool
    Declarado en scripts/core/calendar.gd:39
  • Calendar.doy_is_christmas static funcThe same for a day of the year (0 = 1 January), ignoring leap years.
    Enlace a esta entradastatic func doy_is_christmas(doy: int) -> bool
    Parámetros
    • doy: int
    Devuelve
    bool
    Declarado en scripts/core/calendar.gd:45
  • Calendar.day_of_year_start static funcDay number of 1 January of year.
    Enlace a esta entradastatic func day_of_year_start(year: int) -> int
    Parámetros
    • year: int
    Devuelve
    int
    Declarado en scripts/core/calendar.gd:50

ConnectPlanner

  • ConnectPlanner.MAX_DIST consttiles apart (along the grid) beyond which it doesn't search at all
    Enlace a esta entradaconst MAX_DIST := 160Declarado en scripts/sim/connect_planner.gd:15
  • ConnectPlanner.ENDS_TRIED constsides of a joined end worth trying
    Enlace a esta entradaconst ENDS_TRIED := 2Declarado en scripts/sim/connect_planner.gd:16
  • ConnectPlanner.PAIRS const(start side, end side) pairs searched at most
    Enlace a esta entradaconst PAIRS := 2Declarado en scripts/sim/connect_planner.gd:17
  • ConnectPlanner.LIVE_EXPANSIONS constRouteBuilder's budget while the pointer moves (the click that builds searches with its own, larger one), so a search that finds nothing doesn't hold up the game.
    Enlace a esta entradaconst LIVE_EXPANSIONS := 4000Declarado en scripts/sim/connect_planner.gd:20
  • ConnectPlanner.SHORTCUT_SAVES constA bridge or tunnel is taken over the cheapest way round when it saves at least SHORTCUT_SAVES tiles and SHORTCUT_SHARE of the line's length.
    Enlace a esta entradaconst SHORTCUT_SAVES := 4

    In that search a crossing tile costs plain line plus SHORTCUT_PRICE of what it costs over that, and each crossing SHORTCUT_CROSSING tiles on top.

    Declarado en scripts/sim/connect_planner.gd:24
  • ConnectPlanner.SHORTCUT_SHARE const
    Enlace a esta entradaconst SHORTCUT_SHARE := 0.3

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/connect_planner.gd:25
  • ConnectPlanner.SHORTCUT_PRICE const
    Enlace a esta entradaconst SHORTCUT_PRICE := 0.25

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/connect_planner.gd:26
  • ConnectPlanner.SHORTCUT_CROSSING const
    Enlace a esta entradaconst SHORTCUT_CROSSING := 2.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/connect_planner.gd:27
  • ConnectPlanner.path static funcTiles from a to b (both included, each one next to the one before), or [] when no line was found within the search's budget; never over water or through a hill (see route for those).
    Enlace a esta entradastatic func path(m: WorldMap, kind: String, a: Vector2i, b: Vector2i, arriving: int = -1, max_expansions: int = 0, pairs_tried: int = PAIRS) -> Array[Vector2i]

    arriving: the way a line already reaches a (a waypoint), so this one carries on from it instead of doubling back (-1: none). max_expansions: RouteBuilder's budget (0: its own default, which grows with the distance; otherwise never more than that). pairs_tried: how many (start side, end side) pairs to try at most.

    Parámetros
    • m: WorldMap
    • kind: String
    • a: Vector2i
    • b: Vector2i
    • arriving: int = -1
    • max_expansions: int = 0
    • pairs_tried: int = PAIRS
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/connect_planner.gd:36
  • ConnectPlanner.route static funcpath, with bridges and tunnels where the way needs them: {"tiles", "crossings": as RouteBuilder.last_crossings gives them}.
    Enlace a esta entradastatic func route(m: WorldMap, kind: String, a: Vector2i, b: Vector2i, year: int, arriving: int = -1, max_expansions: int = 0, pairs_tried: int = PAIRS) -> Dictionary

    year: the bridge styles there are by then (-1: no bridges or tunnels at all).

    Parámetros
    • m: WorldMap
    • kind: String
    • a: Vector2i
    • b: Vector2i
    • year: int
    • arriving: int = -1
    • max_expansions: int = 0
    • pairs_tried: int = PAIRS
    Devuelve
    Dictionary
    Llama a
    RouteBuilder.jumps_for
    Declarado en scripts/sim/connect_planner.gd:44
  • ConnectPlanner._shortcut static funcjumps (RouteBuilder.jumps_for) with every crossing weighed mostly by its length: a span or tunnel tile costs little more than a tile of plain line, and a crossing little on top.
    Enlace a esta entradastatic func _shortcut(jumps: Dictionary) -> Dictionary
    Parámetros
    • jumps: Dictionary
    Devuelve
    Dictionary
    Declarado en scripts/sim/connect_planner.gd:73
  • ConnectPlanner._route static funcOne search with jumps, from the best sides of the ends: route's {"tiles", "crossings"}.
    Enlace a esta entradastatic func _route(m: WorldMap, kind: String, a: Vector2i, b: Vector2i, jumps: Dictionary, arriving: int, max_expansions: int, pairs_tried: int) -> Dictionary
    Parámetros
    • m: WorldMap
    • kind: String
    • a: Vector2i
    • b: Vector2i
    • jumps: Dictionary
    • arriving: int
    • max_expansions: int
    • pairs_tried: int
    Devuelve
    Dictionary
    Llama a
    Const.opp, RouteBuilder.find
    Declarado en scripts/sim/connect_planner.gd:83
  • ConnectPlanner.ends static funcWhere a search may start from end p (or, read backwards, finish at it), the other end being at toward: [{"tile", "dir": the way in (-1 any), "joined": true when p itself is an existing piece the line joins from the free tile beside it}], best first.
    Enlace a esta entradastatic func ends(m: WorldMap, kind: String, p: Vector2i, toward: Vector2i) -> Array
    Parámetros
    • m: WorldMap
    • kind: String
    • p: Vector2i
    • toward: Vector2i
    Devuelve
    Array
    Declarado en scripts/sim/connect_planner.gd:129
  • ConnectPlanner._takes_a_piece static funcWhether any piece of road or track at all (straight or a bend) could go on tile t.
    Enlace a esta entradastatic func _takes_a_piece(m: WorldMap, kind: String, t: Vector2i) -> bool
    Parámetros
    • m: WorldMap
    • kind: String
    • t: Vector2i
    Devuelve
    bool
    Llama a
    RouteBuilder._tile_cost
    Declarado en scripts/sim/connect_planner.gd:154
  • ConnectPlanner._open static funcWhether a line of kind can be searched through tile t as it is: no building, station or depot on it, and no track already there for a railway (a road may run along a road).
    Enlace a esta entradastatic func _open(m: WorldMap, kind: String, t: Vector2i) -> bool
    Parámetros
    • m: WorldMap
    • kind: String
    • t: Vector2i
    Devuelve
    bool
    Declarado en scripts/sim/connect_planner.gd:163

Const

  • Const.MAP_SIZE const
    Enlace a esta entradaconst MAP_SIZE := 128

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/constants.gd:4
  • Const.CHUNK const
    Enlace a esta entradaconst CHUNK := 16

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/constants.gd:5
  • Const.HEIGHT_STEP constworld units per height level
    Enlace a esta entradaconst HEIGHT_STEP := 0.4Declarado en scripts/core/constants.gd:6
  • Const.MAX_HEIGHT const
    Enlace a esta entradaconst MAX_HEIGHT := 10

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/constants.gd:7
  • Const.WATER_Y constwater surface height in world units
    Enlace a esta entradaconst WATER_Y := 0.12Declarado en scripts/core/constants.gd:8
  • Const.DAY_SECONDS constreal seconds per game day at 1x (OpenTTD: 74 ticks x 30 ms = 2.22 s)
    Enlace a esta entradaconst DAY_SECONDS := 2.2Declarado en scripts/core/constants.gd:10
  • Const.VEHICLE_PACE constVehicles get this much done per game day - moving, loading, being serviced - so trips take fewer days while they move on screen exactly as fast as before the day got longer.
    Enlace a esta entradaconst VEHICLE_PACE := 1.6Declarado en scripts/core/constants.gd:13
  • Const.START_YEAR const
    Enlace a esta entradaconst START_YEAR := 1950

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/constants.gd:14
  • Const.DIRS const
    Enlace a esta entradaconst DIRS: Array[Vector2i] = [Vector2i(0, -1), Vector2i(1, 0), Vector2i(0, 1), Vector2i(-1, 0)]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/constants.gd:17
  • Const.BIT const
    Enlace a esta entradaconst BIT: Array[int] = [1, 2, 4, 8]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/constants.gd:18
  • Const.AXIS_BITS const
    Enlace a esta entradaconst AXIS_BITS: Array[int] = [10, 5]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/constants.gd:20
  • Const.opp static func
    Enlace a esta entradastatic func opp(d: int) -> int
    Parámetros
    • d: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/constants.gd:23

Economy

  • Economy.PRODUCTION_DAYS constproduction runs every this many days
    Enlace a esta entradaconst PRODUCTION_DAYS := 3Declarado en scripts/sim/economy.gd:5
  • Economy.LATE_SPAN consta late cargo loses its fare, on average, at a rate that would take all of it over this many times its on-time days
    Enlace a esta entradaconst LATE_SPAN := 10.0Declarado en scripts/sim/economy.gd:6
  • Economy.LATE_EARLY constbelow 1 the S-curve starts falling sooner after the on-time days; 1 is a symmetric S
    Enlace a esta entradaconst LATE_EARLY := 0.75Declarado en scripts/sim/economy.gd:7
  • Economy.LATE_FLOOR constno delivery pays less than this share of the full fare
    Enlace a esta entradaconst LATE_FLOOR := 0.3Declarado en scripts/sim/economy.gd:8
  • Economy.PAX_PER_POP constpassengers per resident per month
    Enlace a esta entradaconst PAX_PER_POP := 1.0 / 7.0Declarado en scripts/sim/economy.gd:9
  • Economy.MAIL_PER_POP constbags of mail per resident per month
    Enlace a esta entradaconst MAIL_PER_POP := 1.0 / 26.0Declarado en scripts/sim/economy.gd:10
  • Economy.WASTE_PER_POP consttonnes of waste per resident per month (from the Late century, RAIL-29)
    Enlace a esta entradaconst WASTE_PER_POP := 1.0 / 12.0Declarado en scripts/sim/economy.gd:11
  • Economy.PER_POP const
    Enlace a esta entradaconst PER_POP := {"pax": PAX_PER_POP, "mail": MAIL_PER_POP, "waste": WASTE_PER_POP}

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:12
  • Economy.MAX_WAITING const
    Enlace a esta entradaconst MAX_WAITING := 3000.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:13
  • Economy.GIVE_UP consteach production run, cargo waiting beyond a month's worth loses this share times (1 - rating)
    Enlace a esta entradaconst GIVE_UP := 0.06Declarado en scripts/sim/economy.gd:14
  • Economy.INFLOW_EASE consthow fast a station's estimate of its monthly inflow follows what arrives (per production run)
    Enlace a esta entradaconst INFLOW_EASE := 0.1Declarado en scripts/sim/economy.gd:15
  • Economy.STAFF_NEUTRAL conststaffing at which an industry leans neither to growing nor shrinking (see staff_lean)
    Enlace a esta entradaconst STAFF_NEUTRAL := 0.4Declarado en scripts/sim/economy.gd:16
  • Economy.STAFF_TILT consthow far staff_lean moves the odds that a production change is a rise
    Enlace a esta entradaconst STAFF_TILT := 0.4Declarado en scripts/sim/economy.gd:17
  • Economy.PROD_MIN constthe least a mine, farm or well makes in a month
    Enlace a esta entradaconst PROD_MIN := 16Declarado en scripts/sim/economy.gd:18
  • Economy.payment static funcPayment for delivering amount of cargo c over dist tiles in days days.
    Enlace a esta entradastatic func payment(c: String, amount: float, dist: float, days: float) -> int
    Parámetros
    • c: String
    • amount: float
    • dist: float
    • days: float
    Devuelve
    int
    Declarado en scripts/sim/economy.gd:22
  • Economy.fare static funcWhat one unit of cargo c pays for dist tiles after days on the way.
    Enlace a esta entradastatic func fare(c: String, dist: float, days: float) -> float

    Fares don't change over the years: distance raises them in proportion, and lateness lowers them (see time_factor).

    Parámetros
    • c: String
    • dist: float
    • days: float
    Devuelve
    float
    Llama a
    Data.cargo_rate
    Declarado en scripts/sim/economy.gd:28
  • Economy.time_factor static funcShare of the full fare still paid after days on the way: all of it up to the cargo's own number of days, then easing down in a smooth S-curve (slowly at first, fastest half-way, slowly again at the end) to LATE_FLOOR, reached at 8 times that long (see LATE_SPAN).
    Enlace a esta entradastatic func time_factor(c: String, days: float) -> float
    Parámetros
    • c: String
    • days: float
    Devuelve
    float
    Llama a
    Data.cargo_days
    Declarado en scripts/sim/economy.gd:35
  • Economy.late_loss_per_day static funcShare of the full fare lost, on average, for every day between the cargo's own number of days and the day it reaches the floor.
    Enlace a esta entradastatic func late_loss_per_day(c: String) -> float

    In the steep part of the curve it falls about twice as fast.

    Parámetros
    • c: String
    Devuelve
    float
    Llama a
    Data.cargo_days
    Declarado en scripts/sim/economy.gd:44
  • Economy.station_distance static func
    Enlace a esta entradastatic func station_distance(a: Station, b: Station) -> float
    Parámetros
    • a: Station
    • b: Station
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:48
  • Economy.produce static func
    Enlace a esta entradastatic func produce(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    Data.town_makes, Calendar.from_day

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:56
  • Economy._links static funcWhich stations reach which industries, both ways round: {"sts": Industry -> [Station], "inds": Station -> [Industry]}, each list in map order.
    Enlace a esta entradastatic func _links(m: WorldMap) -> Dictionary

    Kept on the map and rebuilt only when a station's catchment changes or a station or industry comes or goes (never saved).

    Parámetros
    • m: WorldMap
    Devuelve
    Dictionary
    Declarado en scripts/sim/economy.gd:112
  • Economy.industry_stations static funcStations whose catchment touches any tile of the industry.
    Enlace a esta entradastatic func industry_stations(m: WorldMap, ind: Industry) -> Array
    Parámetros
    • m: WorldMap
    • ind: Industry
    Devuelve
    Array
    Declarado en scripts/sim/economy.gd:142
  • Economy._distribute static funcGive amt of cargo to the (up to two) best-rated stations that serve it.
    Enlace a esta entradastatic func _distribute(stations: Array, c: String, amt: float) -> float

    Returns the amount moved.

    Parámetros
    • stations: Array
    • c: String
    • amt: float
    Devuelve
    float
    Declarado en scripts/sim/economy.gd:157
  • Economy.shares static funcHow cargo c made in reach of stations is split right now: Station -> the share of everything made that goes to it.
    Enlace a esta entradastatic func shares(stations: Array, c: String) -> Dictionary

    Only stations that load the cargo take part, and only the best-rated two of them; the best rating sets how much leaves at all, and the two split that in proportion to their ratings. The shares add up to the best rating; the rest is lost. Stations left out aren't listed, nor are those of companies shut out of their town by another's exclusive rights (RAIL-24).

    Parámetros
    • stations: Array
    • c: String
    Devuelve
    Dictionary
    Declarado en scripts/sim/economy.gd:173
  • Economy.shut_out static funcWhether st gets no new cargo because another company holds exclusive transport rights in its town (a town request's reward, see Opportunities).
    Enlace a esta entradastatic func shut_out(st: Station) -> bool
    Parámetros
    • st: Station
    Devuelve
    bool
    Declarado en scripts/sim/economy.gd:195
  • Economy._update_ratings static funcRatings drift toward a target set by pickup frequency, vehicle speed and waiting cargo.
    Enlace a esta entradastatic func _update_ratings(sim: Sim) -> void

    Then cargo that has piled up gives up (see give_up).

    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/economy.gd:201
  • Economy.give_up static funcCargo c waiting at st that gives up this production run (RAIL-56): of what waits beyond a month's worth (Station.inflow), a share of GIVE_UP times what the rating falls short of 100%.
    Enlace a esta entradastatic func give_up(st: Station, c: String) -> float

    At 50% that is 3% every run, about a quarter a month; at 90%, 0.6%. A queue that fits the station's own trade is never touched, and every queue settles instead of filling to MAX_WAITING.

    Parámetros
    • st: Station
    • c: String
    Devuelve
    float
    Declarado en scripts/sim/economy.gd:234
  • Economy._update_inflow static funcFold what came to st since the last production run into its estimate of a month's inflow.
    Enlace a esta entradastatic func _update_inflow(st: Station) -> void
    Parámetros
    • st: Station
    Devuelve
    void
    Declarado en scripts/sim/economy.gd:242
  • Economy.unload static funcUnload what this station accepts; pay the owner.
    Enlace a esta entradastatic func unload(sim: Sim, v: Vehicle, st: Station) -> int

    Returns units moved.

    Parámetros
    • sim: Sim
    • v: Vehicle
    • st: Station
    Devuelve
    int
    Declarado en scripts/sim/economy.gd:256
  • Economy.FEEDER_SHARE constA feeder's share of the fare for cargo it leaves at a transfer stop: part of what the trip so far would pay, less what earlier feeders already showed.
    Enlace a esta entradaconst FEEDER_SHARE := 0.75

    It only goes on the vehicle's books (its profit); the money comes when the cargo is delivered, so passing cargo back and forth earns nothing.

    Declarado en scripts/sim/economy.gd:324
  • Economy.feeder_share static func
    Enlace a esta entradastatic func feeder_share(sim: Sim, p: Dictionary, c: String, st: Station) -> int
    Parámetros
    • sim: Sim
    • p: Dictionary
    • c: String
    • st: Station
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:326
  • Economy.deliver_to_industries static func
    Enlace a esta entradastatic func deliver_to_industries(sim: Sim, st: Station, c: String, amount: int) -> void
    Parámetros
    • sim: Sim
    • st: Station
    • c: String
    • amount: int
    Devuelve
    void
    Llama a
    IndustryLife.build

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:333
  • Economy._full_sets static funcA plant that needs every input (Data.INDUSTRY "needs_all") holds what comes until the rest does: amount of c joins its store, and every full set (one unit of each input) goes into the works.
    Enlace a esta entradastatic func _full_sets(ind: Industry, c: String, amount: float) -> float

    Returns how many units go in, so each set makes as many units of output as it took in.

    Parámetros
    • ind: Industry
    • c: String
    • amount: float
    Devuelve
    float
    Declarado en scripts/sim/economy.gd:369
  • Economy.hire_commuters static funcPassengers delivered to st go to work at the industries it reaches (RAIL-28), each taking on what it still needs this month, in map order.
    Enlace a esta entradastatic func hire_commuters(m: WorldMap, st: Station, amount: float) -> float

    Returns how many found work; the rest are ordinary passengers (the fare is the same either way).

    Parámetros
    • m: WorldMap
    • st: Station
    • amount: float
    Devuelve
    float
    Declarado en scripts/sim/economy.gd:384
  • Economy.reaches static funcWhether st's catchment touches ind (from the cached links: nothing is copied).
    Enlace a esta entradastatic func reaches(m: WorldMap, st: Station, ind: Industry) -> bool
    Parámetros
    • m: WorldMap
    • st: Station
    • ind: Industry
    Devuelve
    bool
    Declarado en scripts/sim/economy.gd:394
  • Economy.industry_stations_reverse static func
    Enlace a esta entradastatic func industry_stations_reverse(m: WorldMap, st: Station) -> Array
    Parámetros
    • m: WorldMap
    • st: Station
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:398
  • Economy.monthly static func
    Enlace a esta entradastatic func monthly(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:413
  • Economy._charge_infrastructure static funcMonthly upkeep of everything companies own besides stations: track, overhead wires, signals, bridges and tunnels, and depots.
    Enlace a esta entradastatic func _charge_infrastructure(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    WorldMap.crossing_tiles
    Declarado en scripts/sim/economy.gd:446
  • Economy._council static funcCouncils like companies that serve their town and grow tired of neglected stations.
    Enlace a esta entradastatic func _council(sim: Sim, t: Town) -> void
    Parámetros
    • sim: Sim
    • t: Town
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/economy.gd:491
  • Economy.staff_lean static funcHow staffing leans an industry's future (RAIL-28): from -STAFF_NEUTRAL with nobody at work to 1 - STAFF_NEUTRAL with a full staff, 0 at about what walkers-in from a nearby town give.
    Enlace a esta entradastatic func staff_lean(m: WorldMap, ind: Industry, index: Industry.StaffingIndex = null) -> float

    _maybe_change_production weighs it into growing or shrinking; closures (RAIL-23) can too.

    Parámetros
    • m: WorldMap
    • ind: Industry
    • index: Industry.StaffingIndex = null
    Devuelve
    float
    Declarado en scripts/sim/economy.gd:528
  • Economy._maybe_change_production static func
    Enlace a esta entradastatic func _maybe_change_production(sim: Sim, ind: Industry, index: Industry.StaffingIndex) -> void
    Parámetros
    • sim: Sim
    • ind: Industry
    • index: Industry.StaffingIndex
    Devuelve
    void
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/economy.gd:532

FirstSteps

  • FirstSteps.PAIR_DIST consttiles apart a first bus route pays well over and costs little road for
    Enlace a esta entradaconst PAIR_DIST := 20.0Declarado en scripts/sim/first_steps.gd:7
  • FirstSteps.PAIR_MIN constcloser than this, two towns are one place to a passenger
    Enlace a esta entradaconst PAIR_MIN := 8.0Declarado en scripts/sim/first_steps.gd:8
  • FirstSteps.PAIR_FROM constpairs are chosen among this many towns nearest the view
    Enlace a esta entradaconst PAIR_FROM := 10Declarado en scripts/sim/first_steps.gd:9
  • FirstSteps.CENTRE consttiles from a town's centre whose roads count as the town's
    Enlace a esta entradaconst CENTRE := 3Declarado en scripts/sim/first_steps.gd:10
  • FirstSteps.town_pair static funcTwo towns near around (a tile) that make a good first bus route: about PAIR_DIST apart, near the view, the bigger the better.
    Enlace a esta entradastatic func town_pair(m: WorldMap, around: Vector2) -> Array

    [Town, Town], or [] on a map with fewer than two towns.

    Parámetros
    • m: WorldMap
    • around: Vector2
    Devuelve
    Array
    Declarado en scripts/sim/first_steps.gd:15
  • FirstSteps._from static func
    Enlace a esta entradastatic func _from(t: Town, p: Vector2) -> float
    Parámetros
    • t: Town
    • p: Vector2
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/first_steps.gd:35
  • FirstSteps.towns_joined static funcWhether a road runs from the middle of town a to the middle of town b.
    Enlace a esta entradastatic func towns_joined(m: WorldMap, a: Town, b: Town) -> bool
    Parámetros
    • m: WorldMap
    • a: Town
    • b: Town
    Devuelve
    bool
    Llama a
    Pathfinder.find
    Declarado en scripts/sim/first_steps.gd:40
  • FirstSteps._centre_roads static funcThe road tiles near a town's centre (its first crossroads is there), as a set.
    Enlace a esta entradastatic func _centre_roads(m: WorldMap, t: Town) -> Dictionary
    Parámetros
    • m: WorldMap
    • t: Town
    Devuelve
    Dictionary
    Declarado en scripts/sim/first_steps.gd:49
  • FirstSteps.road_stops static funcwho's road stops (a station with a road stop).
    Enlace a esta entradastatic func road_stops(m: WorldMap, who: Company) -> Array
    Parámetros
    • m: WorldMap
    • who: Company
    Devuelve
    Array
    Declarado en scripts/sim/first_steps.gd:59
  • FirstSteps.joined_stops static funcTwo of who's road stops that a road joins, so a bus could run between them: [Station, Station], or [].
    Enlace a esta entradastatic func joined_stops(sim: Sim, who: Company) -> Array

    One search per stop at most, each towards all the stops after it.

    Parámetros
    • sim: Sim
    • who: Company
    Devuelve
    Array
    Declarado en scripts/sim/first_steps.gd:69
  • FirstSteps.depot_ready static funcWhether a new bus could leave for st now: with depots in the rules, one of who's road depots must be joined to it.
    Enlace a esta entradastatic func depot_ready(sim: Sim, who: Company, st: Station) -> bool
    Parámetros
    • sim: Sim
    • who: Company
    • st: Station
    Devuelve
    bool
    Declarado en scripts/sim/first_steps.gd:87
  • FirstSteps.route_vehicle static funcwho's newest vehicle that has a route (two stops or more), or null.
    Enlace a esta entradastatic func route_vehicle(sim: Sim, who: Company) -> Vehicle
    Parámetros
    • sim: Sim
    • who: Company
    Devuelve
    Vehicle
    Declarado en scripts/sim/first_steps.gd:92
  • FirstSteps.has_station static funcWhether who has a station of any kind.
    Enlace a esta entradastatic func has_station(m: WorldMap, who: Company) -> bool
    Parámetros
    • m: WorldMap
    • who: Company
    Devuelve
    bool
    Declarado en scripts/sim/first_steps.gd:101
  • FirstSteps.town_link static funcA vehicle of who's that carries passengers between stops in two different towns, or null.
    Enlace a esta entradastatic func town_link(sim: Sim, who: Company) -> Vehicle
    Parámetros
    • sim: Sim
    • who: Company
    Devuelve
    Vehicle
    Declarado en scripts/sim/first_steps.gd:109
  • FirstSteps._taken static varcargo -> true: what some industry takes, in any era (industry_takes)
    Enlace a esta entradastatic var _taken := {}Declarado en scripts/sim/first_steps.gd:123
  • FirstSteps.industry_takes static funcWhether cargo c is something an industry takes in, in any era (so delivering it delivers to an industry).
    Enlace a esta entradastatic func industry_takes(c: String) -> bool
    Parámetros
    • c: String
    Devuelve
    bool
    Llama a
    Data.accepts
    Declarado en scripts/sim/first_steps.gd:128

Fmt

  • Fmt.int_commas static func
    Enlace a esta entradastatic func int_commas(n: int) -> String
    Parámetros
    • n: int
    Devuelve
    String
    Llama a
    L.thousands

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/fmt.gd:5
  • Fmt.money static funcFormats an integer dollar amount with the active language’s digit grouping and currency placement.
    Enlace a esta entradastatic func money(n: int) -> String

    The result is a string for display.

    Parámetros
    • n: int
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/core/fmt.gd:15
  • Fmt.cargo_list static func
    Enlace a esta entradastatic func cargo_list(ids: Array) -> String
    Parámetros
    • ids: Array
    Devuelve
    String
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/fmt.gd:19
  • Fmt.short_money static funcCompact money for chart axes and tiles: $950, $12k, $1.4M.
    Enlace a esta entradastatic func short_money(n: int) -> String
    Parámetros
    • n: int
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/core/fmt.gd:27

Goals

  • Goals.STEPS constThe checklist, in the order a company usually gets there: [id, title, how to do it].
    Enlace a esta entradaconst STEPSDeclarado en scripts/sim/goals.gd:20
  • Goals.ACHIEVEMENTS constAchievements: tiers gives one achievement per number ("<kind>_<number>"); the others are one each.
    Enlace a esta entradaconst ACHIEVEMENTSDeclarado en scripts/sim/goals.gd:32
  • Goals.KINDS const
    Enlace a esta entradaconst KINDS := ["road", "rail", "water", "air"]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:42
  • Goals.SERVED_DAYS consta town counts as served while one of your stations there has picked up passengers this recently
    Enlace a esta entradaconst SERVED_DAYS := 30.0Declarado en scripts/sim/goals.gd:43
  • Goals.LEAGUE_AGE constdays: a lead in the league counts once the company is this old (before, it is
    Enlace a esta entradaconst LEAGUE_AGE := 365Declarado en scripts/sim/goals.gd:44
  • Goals.GOAL_IDS constThe company goals a new game can set, and what each takes: a company value, or first place in the league, within so many years of the company's founding.
    Enlace a esta entradaconst GOAL_IDS := ["none", "value_1m", "value_10m", "league"]Declarado en scripts/sim/goals.gd:49
  • Goals.GOALS const
    Enlace a esta entradaconst GOALS

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:50
  • Goals.steps varstep id -> game day it was done
    Enlace a esta entradavar steps := {}Declarado en scripts/sim/goals.gd:56
  • Goals.unlocked varachievement id -> game day it was won
    Enlace a esta entradavar unlocked := {}Declarado en scripts/sim/goals.gd:57
  • Goals.goal_result var"won" or "missed" once the company goal is decided
    Enlace a esta entradavar goal_result := ""Declarado en scripts/sim/goals.gd:58
  • Goals.goal_day var...and the day it was
    Enlace a esta entradavar goal_day := -1Declarado en scripts/sim/goals.gd:59
  • Goals.pax varpassengers delivered, all closed months together
    Enlace a esta entradavar pax := 0Declarado en scripts/sim/goals.gd:60
  • Goals.delivered varcargo -> true: every cargo the company has delivered
    Enlace a esta entradavar delivered := {}Declarado en scripts/sim/goals.gd:61
  • Goals.rev vargoes up whenever something is ticked off, won or missed
    Enlace a esta entradavar rev := 0Declarado en scripts/sim/goals.gd:62
  • Goals._station_id varthe map's next station id at the last look (a new station since?)
    Enlace a esta entradavar _station_id := -1Declarado en scripts/sim/goals.gd:63
  • Goals._vehicle_id varthe same for vehicles
    Enlace a esta entradavar _vehicle_id := -1Declarado en scripts/sim/goals.gd:64
  • Goals._pax_month varpassengers delivered this month at the last look
    Enlace a esta entradavar _pax_month := -1Declarado en scripts/sim/goals.gd:65
  • Goals._quiet varcatching up an old save: no news
    Enlace a esta entradavar _quiet := falseDeclarado en scripts/sim/goals.gd:66
  • Goals.check_steps funcTick off the first steps done since the last look.
    Enlace a esta entradafunc check_steps(sim: Sim) -> void

    Cheap: see the top of the file.

    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/goals.gd:72
  • Goals._check_steps funccargo: what the company has delivered lately, cargo -> [units, $]; rail_paid: a train has earned.
    Enlace a esta entradafunc _check_steps(sim: Sim, cargo: Dictionary, rail_paid: bool) -> void
    Parámetros
    • sim: Sim
    • cargo: Dictionary
    • rail_paid: bool
    Devuelve
    void
    Llama a
    FirstSteps.has_station, FirstSteps.route_vehicle, FirstSteps.town_link, FirstSteps.industry_takes
    Declarado en scripts/sim/goals.gd:80
  • Goals._tick func
    Enlace a esta entradafunc _tick(sim: Sim, id: String) -> void
    Parámetros
    • sim: Sim
    • id: String
    Devuelve
    void
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:107
  • Goals.step_title static func
    Enlace a esta entradastatic func step_title(id: String) -> String
    Parámetros
    • id: String
    Devuelve
    String

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:116
  • Goals.monthly funcMonth end (Sim._on_day, once the month's books are closed): the month in profit, the achievements and the company goal.
    Enlace a esta entradafunc monthly(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/goals.gd:127
  • Goals._judge funcLook at the figures again and unlock what they reach, then decide the goal if it is due.
    Enlace a esta entradafunc _judge(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/goals.gd:140
  • Goals.operating_profit static funcA month's income less its running costs and upkeep (buying and building aside), as the company overview's chart counts it.
    Enlace a esta entradastatic func operating_profit(mo: Dictionary) -> int
    Parámetros
    • mo: Dictionary
    Devuelve
    int
    Declarado en scripts/sim/goals.gd:151
  • Goals.measure funcThe figures the achievements and the goal are judged by: one pass over the vehicles and the stations, and the company value of each company for the league.
    Enlace a esta entradafunc measure(sim: Sim) -> Dictionary

    best is the best rival's value; leads, whether the company is worth more than every rival and old enough to count.

    Parámetros
    • sim: Sim
    Devuelve
    Dictionary
    Declarado en scripts/sim/goals.gd:158
  • Goals.cargos_in_game static funcThe cargos this map has now: passengers, mail (and from the Late century waste) from the towns, and what its industries make.
    Enlace a esta entradastatic func cargos_in_game(m: WorldMap) -> Array

    Cargos whose industries haven't appeared yet (a later era's) aren't among them until one opens.

    Parámetros
    • m: WorldMap
    Devuelve
    Array
    Llama a
    Data.town_makes
    Declarado en scripts/sim/goals.gd:190
  • Goals.ids_of static funcThe ids of an achievement's tiers (or its one id).
    Enlace a esta entradastatic func ids_of(a: Dictionary) -> Array
    Parámetros
    • a: Dictionary
    Devuelve
    Array
    Declarado en scripts/sim/goals.gd:201
  • Goals.reached static funcWhether the figures f (see measure) reach achievement id.
    Enlace a esta entradastatic func reached(id: String, f: Dictionary) -> bool
    Parámetros
    • id: String
    • f: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/goals.gd:208
  • Goals.unlock funcWin achievement id today (if it isn't already), with news.
    Enlace a esta entradafunc unlock(sim: Sim, id: String) -> void
    Parámetros
    • sim: Sim
    • id: String
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/goals.gd:219
  • Goals.achievement_name static funcWhat an achievement is called: the tier's own name, or the achievement's.
    Enlace a esta entradastatic func achievement_name(id: String) -> String
    Parámetros
    • id: String
    Devuelve
    String
    Llama a
    L.t, Fmt.money, Fmt.int_commas
    Declarado en scripts/sim/goals.gd:228
  • Goals.title_of static funcAn achievement's heading in the Goals window.
    Enlace a esta entradastatic func title_of(kind: String) -> String
    Parámetros
    • kind: String
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/goals.gd:240
  • Goals.goal_of static func
    Enlace a esta entradastatic func goal_of(sim: Sim) -> String
    Parámetros
    • sim: Sim
    Devuelve
    String

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:255
  • Goals.goal_name static funcWhat a goal asks, in a few words.
    Enlace a esta entradastatic func goal_name(id: String) -> String
    Parámetros
    • id: String
    Devuelve
    String
    Llama a
    L.t, Fmt.money
    Declarado en scripts/sim/goals.gd:260
  • Goals.goal_short static funcThe same, short enough for the new-game screen's list.
    Enlace a esta entradastatic func goal_short(id: String) -> String
    Parámetros
    • id: String
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/goals.gd:270
  • Goals.round_number static funcA round number in few characters: 50, 100k, 10M.
    Enlace a esta entradastatic func round_number(n: int) -> String
    Parámetros
    • n: int
    Devuelve
    String
    Declarado en scripts/sim/goals.gd:280
  • Goals.deadline static funcThe last day to reach the goal: so many years after the company was founded.
    Enlace a esta entradastatic func deadline(sim: Sim) -> int
    Parámetros
    • sim: Sim
    Devuelve
    int
    Llama a
    Calendar.from_day, Calendar.day_of_year_start
    Declarado en scripts/sim/goals.gd:289
  • Goals.goal_met static funcWhether figures f (see measure) meet the game's goal.
    Enlace a esta entradastatic func goal_met(sim: Sim, f: Dictionary) -> bool
    Parámetros
    • sim: Sim
    • f: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/goals.gd:297
  • Goals._check_goal func
    Enlace a esta entradafunc _check_goal(sim: Sim, f: Dictionary) -> void
    Parámetros
    • sim: Sim
    • f: Dictionary
    Devuelve
    void
    Llama a
    L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:306
  • Goals._news func
    Enlace a esta entradafunc _news(sim: Sim, text: String, kind: String = "good") -> void
    Parámetros
    • sim: Sim
    • text: String
    • kind: String = "good"
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:322
  • Goals.to_dict func
    Enlace a esta entradafunc to_dict() -> Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:329
  • Goals.from_dict static func
    Enlace a esta entradastatic func from_dict(d: Dictionary) -> Goals
    Parámetros
    • d: Dictionary
    Devuelve
    Goals

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/goals.gd:334
  • Goals.caught_up static funcA game saved before there were goals: tick off and unlock what it has done already, quietly, from what the save remembers (the last two years of deliveries, the last 24 months' books).
    Enlace a esta entradastatic func caught_up(sim: Sim) -> Goals
    Parámetros
    • sim: Sim
    Devuelve
    Goals
    Declarado en scripts/sim/goals.gd:350

IndustryLife

  • IndustryLife.OPENS_A_YEAR constopenings a year for each industry the map started with
    Enlace a esta entradaconst OPENS_A_YEAR := 0.012Declarado en scripts/sim/industry_life.gd:27
  • IndustryLife.WARNS_A_YEAR constchance a year a struggling industry is warned (staff tilt it)
    Enlace a esta entradaconst WARNS_A_YEAR := 0.3Declarado en scripts/sim/industry_life.gd:28
  • IndustryLife.UNSERVED_MONTHS constnobody has loaded its cargo for this long before it can struggle
    Enlace a esta entradaconst UNSERVED_MONTHS := 24Declarado en scripts/sim/industry_life.gd:29
  • IndustryLife.FLOOR const...and it makes at most this share of its kind's usual output
    Enlace a esta entradaconst FLOOR := 0.75Declarado en scripts/sim/industry_life.gd:30
  • IndustryLife.WARN_DAYS consthow long before closing it is warned
    Enlace a esta entradaconst WARN_DAYS := 365Declarado en scripts/sim/industry_life.gd:31
  • IndustryLife.RESCUE_DAYS consta pickup (or delivery) this recent lifts the warning
    Enlace a esta entradaconst RESCUE_DAYS := 31Declarado en scripts/sim/industry_life.gd:32
  • IndustryLife.FADE consta retiring mine loses this share of its output every year
    Enlace a esta entradaconst FADE := 0.03Declarado en scripts/sim/industry_life.gd:33
  • IndustryLife.RENEWABLE consthow much likelier a renewable kind is to open than its count says
    Enlace a esta entradaconst RENEWABLE := 4.0Declarado en scripts/sim/industry_life.gd:34
  • IndustryLife.WIND_REACH consttowns this close to a wind farm grow faster and thank its builders
    Enlace a esta entradaconst WIND_REACH := 24.0Declarado en scripts/sim/industry_life.gd:35
  • IndustryLife.WIND_RATING constcouncil rating a builder gains, times its share of the deliveries
    Enlace a esta entradaconst WIND_RATING := 25.0Declarado en scripts/sim/industry_life.gd:36
  • IndustryLife.WIND_GROWTH const...and growth waits this share as long in a town near one
    Enlace a esta entradaconst WIND_GROWTH := 0.8Declarado en scripts/sim/industry_life.gd:37
  • IndustryLife.monthly static func
    Enlace a esta entradastatic func monthly(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    L.t, Economy.staff_lean

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/industry_life.gd:40
  • IndustryLife.yearly static funcOnce a year: retiring mines make a little less.
    Enlace a esta entradastatic func yearly(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    Data.retiring
    Declarado en scripts/sim/industry_life.gd:72
  • IndustryLife._room static funcThe map's room for industries ashore and at sea (see Sim.industry_room).
    Enlace a esta entradastatic func _room(sim: Sim) -> Vector2i
    Parámetros
    • sim: Sim
    Devuelve
    Vector2i
    Llama a
    WorldGen.industry_room
    Declarado en scripts/sim/industry_life.gd:79
  • IndustryLife.served static funcWhether a company has loaded ind's cargo at a station in its reach, or delivered cargo to it, within the last days.
    Enlace a esta entradastatic func served(sim: Sim, ind: Industry, days: float) -> bool
    Parámetros
    • sim: Sim
    • ind: Industry
    • days: float
    Devuelve
    bool
    Llama a
    Economy.industry_stations
    Declarado en scripts/sim/industry_life.gd:89
  • IndustryLife.struggling static funcA primary industry at least UNSERVED_MONTHS old that nobody has served in that time, and whose output (staff included) is down to FLOOR of its kind's usual rate.
    Enlace a esta entradastatic func struggling(sim: Sim, ind: Industry, index: Industry.StaffingIndex = null) -> bool

    One with nobody at work gets there at its usual rate (Industry.PRIMARY_MIN); one with a town at its gate only after a cut. A customer on its way out (a power station in the Green age) struggles once nobody has supplied it for that long.

    Parámetros
    • sim: Sim
    • ind: Industry
    • index: Industry.StaffingIndex = null
    Devuelve
    bool
    Llama a
    Data.retiring
    Declarado en scripts/sim/industry_life.gd:107
  • IndustryLife.warn static funcTell everyone ind closes in a year unless it is served by then.
    Enlace a esta entradastatic func warn(sim: Sim, ind: Industry) -> void
    Parámetros
    • sim: Sim
    • ind: Industry
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/industry_life.gd:119
  • IndustryLife.closing_text static funcThe day a struggling industry closes and what saves it, for its window and the Problems list.
    Enlace a esta entradastatic func closing_text(ind: Industry) -> String
    Parámetros
    • ind: Industry
    Devuelve
    String
    Llama a
    L.t, Calendar.format
    Declarado en scripts/sim/industry_life.gd:127
  • IndustryLife.rescue static funcThe cargo that saves a struggling industry, in lower case: what it makes, carried away, or for a customer (a power station) what it takes, brought to it.
    Enlace a esta entradastatic func rescue(ind: Industry) -> String
    Parámetros
    • ind: Industry
    Devuelve
    String
    Llama a
    L.lower, Fmt.cargo_list
    Declarado en scripts/sim/industry_life.gd:135
  • IndustryLife.close static funcTake ind off the map: its tiles, an oil rig's own dock, what the stations around it accept and supply, the rivals' routes that served it, and the subsidies about it (Opportunities).
    Enlace a esta entradastatic func close(sim: Sim, ind: Industry) -> void
    Parámetros
    • sim: Sim
    • ind: Industry
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/industry_life.gd:141
  • IndustryLife._pick_type static funcWhich kind opens: weighed by how common each is on a new map, among those of this era that the map has room for.
    Enlace a esta entradastatic func _pick_type(sim: Sim) -> String

    Kinds on their way out open no more, and from the era that retires the old ones (the Green age) the new kinds that take their place (wind farm sites) are favoured.

    Parámetros
    • sim: Sim
    Devuelve
    String
    Llama a
    Data.opens, Data.retiring
    Declarado en scripts/sim/industry_life.gd:169
  • IndustryLife._renewable static funcA kind that comes with the era that retires others (the Green age's wind farm sites).
    Enlace a esta entradastatic func _renewable(type: String) -> bool
    Parámetros
    • type: String
    Devuelve
    bool
    Declarado en scripts/sim/industry_life.gd:191
  • IndustryLife._introduce static funcThe kinds of a later era, once it has come, that the map has fewer of than a new map would get each open one more this month (at the era's start, or in a game saved before it had them).
    Enlace a esta entradastatic func _introduce(sim: Sim) -> void

    A kind made from another (a wind farm from its site) counts with it. Where no site turns up, the next try waits a year (Sim.introduce_wait).

    Parámetros
    • sim: Sim
    Devuelve
    void
    Llama a
    Data.opens, WorldGen.type_count
    Declarado en scripts/sim/industry_life.gd:205
  • IndustryLife._made_from static funcThe kind an industry of type was before it was finished (a wind farm: its site), or type.
    Enlace a esta entradastatic func _made_from(type: String) -> String
    Parámetros
    • type: String
    Devuelve
    String
    Declarado en scripts/sim/industry_life.gd:221
  • IndustryLife.build static funcamount of c delivered to a construction site (Data.INDUSTRY "builds") by who: it counts towards the site's totals, and once they are all in the site becomes what it was building.
    Enlace a esta entradastatic func build(sim: Sim, ind: Industry, c: String, amount: float, who: Company) -> void
    Parámetros
    • sim: Sim
    • ind: Industry
    • c: String
    • amount: float
    • who: Company
    Devuelve
    void
    Declarado en scripts/sim/industry_life.gd:232
  • IndustryLife.finish static funcA site has all it needs: it becomes a wind farm.
    Enlace a esta entradastatic func finish(sim: Sim, ind: Industry) -> void

    Its builders gain standing with the councils of the towns around it, in proportion to what each delivered, and the stations around it stop taking what it took.

    Parámetros
    • sim: Sim
    • ind: Industry
    Devuelve
    void
    Llama a
    WorldGen.industry_name, L.t
    Declarado en scripts/sim/industry_life.gd:243
  • IndustryLife.near_wind_farm static funcWhether a wind farm stands within WIND_REACH of town t (it grows faster: see Sim).
    Enlace a esta entradastatic func near_wind_farm(m: WorldMap, t: Town) -> bool
    Parámetros
    • m: WorldMap
    • t: Town
    Devuelve
    bool
    Declarado en scripts/sim/industry_life.gd:270
  • IndustryLife.open static funcOpen an industry of type where WorldGen would put one, on ground where nothing is built.
    Enlace a esta entradastatic func open(sim: Sim, type: String) -> Industry

    Returns it, or null when there is no such site (or a ship is on its way through the one found).

    Parámetros
    • sim: Sim
    • type: String
    Devuelve
    Industry
    Llama a
    WorldGen.find_site, WorldGen.spacing, WorldGen.unserved_feeders, WorldGen.put_industry, WorldGen.industry_name, BuildOps.add_rig_dock, WorldGen.level_ground, L.t, L.lower
    Declarado en scripts/sim/industry_life.gd:280
  • IndustryLife._ships_through static funcWhether a ship's course runs through r (an oil rig opening there would stand in its way).
    Enlace a esta entradastatic func _ships_through(sim: Sim, r: Rect2i) -> bool
    Parámetros
    • sim: Sim
    • r: Rect2i
    Devuelve
    bool
    Declarado en scripts/sim/industry_life.gd:312
  • IndustryLife._changed static funcAfter an industry came or went inside r: stations around it look again at what they accept and supply, and everything made from the list of industries is made again (WorldMap.industry_rev).
    Enlace a esta entradastatic func _changed(sim: Sim, r: Rect2i) -> void
    Parámetros
    • sim: Sim
    • r: Rect2i
    Devuelve
    void
    Declarado en scripts/sim/industry_life.gd:323

L

  • L.DIRS const
    Enlace a esta entradaconst DIRS := ["res://lang", "user://lang"]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/l.gd:18
  • L.FALLBACK const
    Enlace a esta entradaconst FALLBACK := "en"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/l.gd:19
  • L.ELIDE_DE constLanguages where "de" before a vowel is written "d'" (see tidy).
    Enlace a esta entradaconst ELIDE_DE := ["ca", "fr"]Declarado en scripts/core/l.gd:21
  • L.KEEP_CASE constLanguages whose nouns keep their capital in mid-sentence (see lower).
    Enlace a esta entradaconst KEEP_CASE := ["de"]Declarado en scripts/core/l.gd:23
  • L.lang static var
    Enlace a esta entradastatic var lang := "en"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/l.gd:25
  • L._tables static varlanguage code -> {english: translated}
    Enlace a esta entradastatic var _tables := {}Declarado en scripts/core/l.gd:26
  • L._table static varthe current language's table
    Enlace a esta entradastatic var _table := {}Declarado en scripts/core/l.gd:27
  • L._loaded static var
    Enlace a esta entradastatic var _loaded := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/l.gd:28
  • L._registered static varlanguage code -> Translation given to the TranslationServer
    Enlace a esta entradastatic var _registered := {}Declarado en scripts/core/l.gd:29
  • L.misses static varSet to a dictionary to collect every text looked up that has no translation (for tools/i18n_report).
    Enlace a esta entradastatic var misses = nullDeclarado en scripts/core/l.gd:31
  • L._miss_mutex static var
    Enlace a esta entradastatic var _miss_mutex := Mutex.new()

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/l.gd:32
  • L._guarded static var
    Enlace a esta entradastatic var _guarded := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/l.gd:33
  • L._elide static var
    Enlace a esta entradastatic var _elide: RegEx = null

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/l.gd:34
  • L.t static funcThe text in the current language.
    Enlace a esta entradastatic func t(s: String) -> String
    Parámetros
    • s: String
    Devuelve
    String
    Declarado en scripts/core/l.gd:58
  • L.tidy static funcSmooth text assembled from pieces, where a name was dropped into a translated sentence.
    Enlace a esta entradastatic func tidy(s: String) -> String

    Catalan and French write "de" as "d'" before a vowel: "Mina de carbó de Elmley" -> "Mina de carbó d'Elmley", "Mine de charbon de Ashford" -> "Mine de charbon d'Ashford". (Not before h: these are English-style names, where the h is sounded.)

    Parámetros
    • s: String
    Devuelve
    String
    Declarado en scripts/core/l.gd:75
  • L.lower static funcA name (cargo, building...) in lower case for use mid-sentence - except in German, where nouns keep their capital: "Takes coal", "Nimmt Kohle".
    Enlace a esta entradastatic func lower(s: String) -> String
    Parámetros
    • s: String
    Devuelve
    String
    Declarado en scripts/core/l.gd:86
  • L.n static func"1 tile" / "7 tiles": one is used for exactly one, many (with a %d) otherwise.
    Enlace a esta entradastatic func n(one: String, many: String, count: int) -> String
    Parámetros
    • one: String
    • many: String
    • count: int
    Devuelve
    String
    Declarado en scripts/core/l.gd:91
  • L.each static funcA list of names in the current language, e.g.
    Enlace a esta entradastatic func each(items: Array) -> PackedStringArray

    cargo names from the data tables.

    Parámetros
    • items: Array
    Devuelve
    PackedStringArray
    Declarado en scripts/core/l.gd:98
  • L.load_all static funcRead every language file.
    Enlace a esta entradastatic func load_all(extra_dirs: Array = []) -> void

    Later directories (the player's own, then mods) override earlier ones.

    Parámetros
    • extra_dirs: Array = []
    Devuelve
    void
    Declarado en scripts/core/l.gd:106
  • L.load_file static funcParse one language file into the tables.
    Enlace a esta entradastatic func load_file(path: String) -> int

    Returns the number of translations read.

    Parámetros
    • path: String
    Devuelve
    int
    Declarado en scripts/core/l.gd:122
  • L._unquote static funcText that starts or ends with a space is written in double quotes: > "Tip: "
    Enlace a esta entradastatic func _unquote(s: String) -> String
    Parámetros
    • s: String
    Devuelve
    String
    Declarado en scripts/core/l.gd:148
  • L.languages static funcLanguages the player can pick: [[code, name in that language]], English first.
    Enlace a esta entradastatic func languages() -> Array
    Devuelve
    Array
    Declarado en scripts/core/l.gd:155
  • L.system_language static funcThe language to use for a setting of "auto": the system's, if we have it.
    Enlace a esta entradastatic func system_language() -> String
    Devuelve
    String
    Declarado en scripts/core/l.gd:168
  • L.set_language static funcSwitch language.
    Enlace a esta entradastatic func set_language(code: String) -> void

    "auto" follows the system.

    Parámetros
    • code: String
    Devuelve
    void
    Declarado en scripts/core/l.gd:176
  • L.release static funcTake our translations back out of the TranslationServer (see _Guard).
    Enlace a esta entradastatic func release() -> void
    Devuelve
    void
    Declarado en scripts/core/l.gd:195
  • L.thousands static funcHow thousands are grouped: 1,234 in English, 1.234 in most others, 1 234 in French.
    Enlace a esta entradastatic func thousands() -> String
    Devuelve
    String
    Declarado en scripts/core/l.gd:203
  • L._guard static func
    Enlace a esta entradastatic func _guard() -> void
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/l.gd:207

Line

  • Line.COLORS const
    Enlace a esta entradaconst COLORS

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/line.gd:11
  • Line.id var
    Enlace a esta entradavar id := 0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/line.gd:14
  • Line.name var
    Enlace a esta entradavar name := ""

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/line.gd:15
  • Line.color var
    Enlace a esta entradavar color := Color.WHITE

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/line.gd:16
  • Line.kind var
    Enlace a esta entradavar kind := "road"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/line.gd:17
  • Line.owner var
    Enlace a esta entradavar owner: Company

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/line.gd:18
  • Line.orders var[{"st": Station, "full": bool, "transfer": bool}], shared with every vehicle on it
    Enlace a esta entradavar orders: Array = []Declarado en scripts/sim/line.gd:19
  • Line.spacing varKeep the vehicles evenly spread round the line: each one waits at the first stop until the one before it is a fair share of a round trip ahead.
    Enlace a esta entradavar spacing := falseDeclarado en scripts/sim/line.gd:22
  • Line.lap_days vara round trip, on average (days); -1 until one has been timed
    Enlace a esta entradavar lap_days := -1.0Declarado en scripts/sim/line.gd:23
  • Line.last_departure vargame day a vehicle of the line last left the first stop
    Enlace a esta entradavar last_departure := -1.0Declarado en scripts/sim/line.gd:24
  • Line._init func
    Enlace a esta entradafunc _init(p_id: int = 0, p_name: String = "", p_kind: String = "road", p_owner: Company = null) -> void
    Parámetros
    • p_id: int = 0
    • p_name: String = ""
    • p_kind: String = "road"
    • p_owner: Company = null
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/line.gd:27
  • Line.stops funcReturns the station objects in the order vehicles visit them on this line.
    Enlace a esta entradafunc stops() -> Array
    Devuelve
    Array
    Declarado en scripts/sim/line.gd:35
  • Line.vehicles funcThe vehicles on this line, in the order they were bought.
    Enlace a esta entradafunc vehicles(sim: Sim) -> Array
    Parámetros
    • sim: Sim
    Devuelve
    Array
    Declarado en scripts/sim/line.gd:40
  • Line.gap funcThe gap (in days) the vehicles should keep at the first stop: a round trip shared out among n of them.
    Enlace a esta entradafunc gap(n: int) -> float

    0 when there is nothing to keep apart, or no round trip timed yet.

    Parámetros
    • n: int
    Devuelve
    float
    Declarado en scripts/sim/line.gd:46
  • Line.note_departure funcA vehicle of this line just left the first stop; lap is how long it took to come round since it last left it (-1 the first time).
    Enlace a esta entradafunc note_departure(day: float, lap: float) -> void
    Parámetros
    • day: float
    • lap: float
    Devuelve
    void
    Declarado en scripts/sim/line.gd:54
  • Line.route_text funcA route in a few words: "Ashford → Millbury".
    Enlace a esta entradafunc route_text() -> String
    Devuelve
    String
    Declarado en scripts/sim/line.gd:61
  • Line.totals funcThe line's numbers, added up over its vehicles: {"count", "profit", "last", "load" (-1 when none known), "running", "old", "stopped"}.
    Enlace a esta entradafunc totals(sim: Sim) -> Dictionary
    Parámetros
    • sim: Sim
    Devuelve
    Dictionary
    Declarado en scripts/sim/line.gd:73

Mods

  • Mods.DIRS const
    Enlace a esta entradaconst DIRS := ["res://mods", "user://mods"]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:14
  • Mods.USER_DIR const
    Enlace a esta entradaconst USER_DIR := "user://mods"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:15
  • Mods.UNPACKED const
    Enlace a esta entradaconst UNPACKED := "user://mods/.unpacked"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:16
  • Mods.SAMPLES_ZIP constAn exported game can't hold the samples' folder as it is (the editor skips it: see mods/.gdignore), so tools/release.sh packs it into this zip, which is unpacked to SAMPLES whenever it changes.
    Enlace a esta entradaconst SAMPLES_ZIP := "res://sample_mods.zip"Declarado en scripts/core/mods.gd:19
  • Mods.SAMPLES const
    Enlace a esta entradaconst SAMPLES := "user://mods/.samples"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:20
  • Mods.KINDS const
    Enlace a esta entradaconst KINDS := ["rail", "road", "water", "air"]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:21
  • Mods.found static varEvery mod found: {"id", "name", "version", "author", "description", "path", "builtin", "has": {"data", "lang", "maps", "models", "script"}, "enabled", "error"}.
    Enlace a esta entradastatic var found: Array = []Declarado en scripts/core/mods.gd:25
  • Mods.scripts static varlive Mod instances of the enabled script mods
    Enlace a esta entradastatic var scripts: Array = []Declarado en scripts/core/mods.gd:26
  • Mods.maps static varMaps offered in New game: {"name", "description", "heightmap", "params", "mod"}.
    Enlace a esta entradastatic var maps: Array = []Declarado en scripts/core/mods.gd:28
  • Mods._meshes static varmodel id -> ArrayMesh loaded from a mod's .glb
    Enlace a esta entradastatic var _meshes := {}Declarado en scripts/core/mods.gd:29
  • Mods._applied static var
    Enlace a esta entradastatic var _applied := false

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:30
  • Mods.log_lines static varwhat went wrong, for the Mods screen
    Enlace a esta entradastatic var log_lines: Array[String] = []Declarado en scripts/core/mods.gd:31
  • Mods.scan static funcLook through the mod folders.
    Enlace a esta entradastatic func scan() -> void

    Zips in the player's folder are unpacked first.

    Devuelve
    void
    Declarado en scripts/core/mods.gd:37
  • Mods.read_info static funcRead a mod folder's mod.json.
    Enlace a esta entradastatic func read_info(path: String) -> Dictionary

    Returns {} if it isn't a mod (with a note in the log if it tried to be).

    Parámetros
    • path: String
    Devuelve
    Dictionary
    Declarado en scripts/core/mods.gd:72
  • Mods._unpack_zips static funcA .zip dropped in the mods folder is unpacked next to the others (once per version of the file).
    Enlace a esta entradastatic func _unpack_zips() -> void
    Devuelve
    void
    Declarado en scripts/core/mods.gd:102
  • Mods._unpack_samples static funcUnpack the samples that ship in an exported game (once per version of them).
    Enlace a esta entradastatic func _unpack_samples() -> bool

    False if that failed.

    Devuelve
    bool
    Declarado en scripts/core/mods.gd:143
  • Mods._remove_tree static func
    Enlace a esta entradastatic func _remove_tree(path: String) -> void
    Parámetros
    • path: String
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:172
  • Mods._note static func
    Enlace a esta entradastatic func _note(line: String) -> void
    Parámetros
    • line: String
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:184
  • Mods.enabled static func
    Enlace a esta entradastatic func enabled() -> Array
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:189
  • Mods.by_id static func
    Enlace a esta entradastatic func by_id(id: String) -> Dictionary
    Parámetros
    • id: String
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:193
  • Mods.set_enabled static funcSwitch a mod on or off and rebuild what mods add.
    Enlace a esta entradastatic func set_enabled(id: String, on: bool) -> void

    Remembered in the settings.

    Parámetros
    • id: String
    • on: bool
    Devuelve
    void
    Declarado en scripts/core/mods.gd:201
  • Mods.apply static funcRebuild everything the enabled mods add.
    Enlace a esta entradastatic func apply(rescan: bool = true) -> void

    Safe to call again: it starts from the plain game.

    Parámetros
    • rescan: bool = true
    Devuelve
    void
    Llama a
    Data.clear_mods, L.load_all, L.set_language
    Declarado en scripts/core/mods.gd:214
  • Mods._apply_one static func
    Enlace a esta entradastatic func _apply_one(m: Dictionary) -> String
    Parámetros
    • m: Dictionary
    Devuelve
    String

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:241
  • Mods._apply_data static funcCheck and merge one mod's data.json.
    Enlace a esta entradastatic func _apply_data(m: Dictionary, d: Dictionary) -> String

    Returns "" or what's wrong (nothing is added then).

    Parámetros
    • m: Dictionary
    • d: Dictionary
    Devuelve
    String
    Llama a
    Data.has_model, Data.model, Data.add_model, Data.add_town_names
    Declarado en scripts/core/mods.gd:265
  • Mods._collect_maps static funcmaps/NAME.png, with an optional maps/NAME.json: {"name", "description", "settings": {...}} where settings are new-game parameters (w, h, towns, industries, year, ...).
    Enlace a esta entradastatic func _collect_maps(m: Dictionary) -> void
    Parámetros
    • m: Dictionary
    Devuelve
    void
    Declarado en scripts/core/mods.gd:333
  • Mods.vehicle_mesh static funcThe mesh a mod supplies for a vehicle model (from its .glb), or null to use the game's own.
    Enlace a esta entradastatic func vehicle_mesh(model_id: String) -> ArrayMesh

    The mesh keeps the materials it was made with.

    Parámetros
    • model_id: String
    Devuelve
    ArrayMesh
    Llama a
    Data.model, Data.has_model
    Declarado en scripts/core/mods.gd:364
  • Mods.load_glb static funcRead a .glb / .gltf into one mesh (every mesh in the file, in place, with its materials).
    Enlace a esta entradastatic func load_glb(file: String) -> ArrayMesh

    Convention, as for the game's own models: the vehicle faces -Z, stands on y = 0, centred.

    Parámetros
    • file: String
    Devuelve
    ArrayMesh
    Declarado en scripts/core/mods.gd:379
  • Mods._merge_meshes static func
    Enlace a esta entradastatic func _merge_meshes(n: Node, xf: Transform3D, out: ArrayMesh) -> void
    Parámetros
    • n: Node
    • xf: Transform3D
    • out: ArrayMesh
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/core/mods.gd:393
  • Mods.hook static funcCall a hook on every enabled script mod.
    Enlace a esta entradastatic func hook(method: String, args: Array = []) -> void

    A mod whose hook fails is reported, not fatal.

    Parámetros
    • method: String
    • args: Array = []
    Devuelve
    void
    Declarado en scripts/core/mods.gd:424
  • Mods.allow_news static funcNews goes out unless a mod's _on_news returns false.
    Enlace a esta entradastatic func allow_news(sim: Sim, item: Dictionary) -> bool
    Parámetros
    • sim: Sim
    • item: Dictionary
    Devuelve
    bool
    Declarado en scripts/core/mods.gd:430
  • Mods.save_state static funcWhat goes into a saved game: which mods were on, and each script mod's own data.
    Enlace a esta entradastatic func save_state(sim: Sim) -> Dictionary
    Parámetros
    • sim: Sim
    Devuelve
    Dictionary
    Declarado en scripts/core/mods.gd:438
  • Mods.load_state static funcAfter loading a game: hand script mods their data, and return the mods the save was made with that aren't on now (names, for a warning).
    Enlace a esta entradastatic func load_state(sim: Sim, state: Dictionary) -> Array
    Parámetros
    • sim: Sim
    • state: Dictionary
    Devuelve
    Array
    Declarado en scripts/core/mods.gd:451

Opportunities

  • Opportunities.MAX_SUBSIDIES constFew at once, and seldom (a new one of each kind every eight months or so): each is news, and a stream of them buries the player's own (RAIL-78).
    Enlace a esta entradaconst MAX_SUBSIDIES := 2

    subsidies on offer at once (won ones aside)

    Declarado en scripts/sim/opportunities.gd:44
  • Opportunities.MAX_REQUESTS consttown requests open on the map at once
    Enlace a esta entradaconst MAX_REQUESTS := 2Declarado en scripts/sim/opportunities.gd:45
  • Opportunities.OFFER_CHANCE constchance a month of a new subsidy while there is room, and the same for a request
    Enlace a esta entradaconst OFFER_CHANCE := 0.12Declarado en scripts/sim/opportunities.gd:46
  • Opportunities.DAY_CHANCE const...as a chance a day (daily), so that over a month it comes to OFFER_CHANCE.
    Enlace a esta entradaconst DAY_CHANCE := 1.0 - pow(1.0 - OFFER_CHANCE, 1.0 / 30.0)Declarado en scripts/sim/opportunities.gd:48
  • Opportunities.TRIES constsources (or towns) tried for a new offer
    Enlace a esta entradaconst TRIES := 6Declarado en scripts/sim/opportunities.gd:49
  • Opportunities.SUBSIDY_MIN consttiles between the ends of a subsidised route (along the axes)
    Enlace a esta entradaconst SUBSIDY_MIN := 15Declarado en scripts/sim/opportunities.gd:50
  • Opportunities.SUBSIDY_MAX const
    Enlace a esta entradaconst SUBSIDY_MAX := 60

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:51
  • Opportunities.SUBSIDY_DAYS constan offer nobody takes lapses after this long
    Enlace a esta entradaconst SUBSIDY_DAYS := 365Declarado en scripts/sim/opportunities.gd:52
  • Opportunities.SUBSIDY_MULT constthe winner's fares on the route...
    Enlace a esta entradaconst SUBSIDY_MULT := 2.0Declarado en scripts/sim/opportunities.gd:53
  • Opportunities.SUBSIDY_YEARS const...for this long
    Enlace a esta entradaconst SUBSIDY_YEARS := 2Declarado en scripts/sim/opportunities.gd:54
  • Opportunities.UNSERVED_DAYS consta source whose cargo was loaded this recently is served already
    Enlace a esta entradaconst UNSERVED_DAYS := 90.0Declarado en scripts/sim/opportunities.gd:55
  • Opportunities.TOWN_CARGO constwhat every town takes besides passengers and mail (Station.coverage)
    Enlace a esta entradaconst TOWN_CARGO := ["goods", "food"]Declarado en scripts/sim/opportunities.gd:56
  • Opportunities.TOWN_TAKES_POP consta town this big takes them (a station in its centre reaches 60 people)
    Enlace a esta entradaconst TOWN_TAKES_POP := 400Declarado en scripts/sim/opportunities.gd:57
  • Opportunities.LINK_POP consta town this big asks for passenger links...
    Enlace a esta entradaconst LINK_POP := 700Declarado en scripts/sim/opportunities.gd:58
  • Opportunities.LINK_TO_POP const...to a town at least this big
    Enlace a esta entradaconst LINK_TO_POP := 200Declarado en scripts/sim/opportunities.gd:59
  • Opportunities.RAIL_POP consttwo towns this big may want the link by rail
    Enlace a esta entradaconst RAIL_POP := 1500Declarado en scripts/sim/opportunities.gd:60
  • Opportunities.SUPPLY_PER_POP consta supply asks this many units a resident a month of its time
    Enlace a esta entradaconst SUPPLY_PER_POP := 0.025Declarado en scripts/sim/opportunities.gd:61
  • Opportunities.VISITORS_PER_POP const...and visitors as many
    Enlace a esta entradaconst VISITORS_PER_POP := 0.04Declarado en scripts/sim/opportunities.gd:62
  • Opportunities.SERVICE_RATING consta service request: every station rated this or more...
    Enlace a esta entradaconst SERVICE_RATING := 0.6Declarado en scripts/sim/opportunities.gd:63
  • Opportunities.SERVICE_MONTHS const...this many month ends in a row...
    Enlace a esta entradaconst SERVICE_MONTHS := 12Declarado en scripts/sim/opportunities.gd:64
  • Opportunities.SERVICE_DEADLINE const...within this many months
    Enlace a esta entradaconst SERVICE_DEADLINE := 18Declarado en scripts/sim/opportunities.gd:65
  • Opportunities.REQUEST_MONTHS constthe time other requests give
    Enlace a esta entradaconst REQUEST_MONTHS := Vector2i(6, 18)Declarado en scripts/sim/opportunities.gd:66
  • Opportunities.REWARDS constThe rewards that fit each request; one is chosen when it is made.
    Enlace a esta entradaconst REWARDS

    Exclusive rights take a new link: good service alone, which rivals' stations give without trying, doesn't shut the others out.

    Declarado en scripts/sim/opportunities.gd:69
  • Opportunities.RATING_BOOST const
    Enlace a esta entradaconst RATING_BOOST := 25.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:71
  • Opportunities.GRANT const
    Enlace a esta entradaconst GRANT := 50000

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:72
  • Opportunities.RIGHTS_DAYS constexclusive rights and half-price stations last this long
    Enlace a esta entradaconst RIGHTS_DAYS := 365Declarado en scripts/sim/opportunities.gd:73
  • Opportunities.CHEAP constwhat stations and depots cost then
    Enlace a esta entradaconst CHEAP := 0.5Declarado en scripts/sim/opportunities.gd:74
  • Opportunities.BOOM_DAYS consta growth reward: fast growth this long (as Fund buildings)
    Enlace a esta entradaconst BOOM_DAYS := 180Declarado en scripts/sim/opportunities.gd:75
  • Opportunities.offers var
    Enlace a esta entradavar offers: Array = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:77
  • Opportunities.rng varIts own random numbers (seeded by Sim from the game's seed, saved), so offers don't reshuffle the rest of the game's.
    Enlace a esta entradavar rng := RandomNumberGenerator.new()Declarado en scripts/sim/opportunities.gd:80
  • Opportunities.rev vargoes up whenever something is offered, won, met, lapses or makes progress
    Enlace a esta entradavar rev := 0Declarado en scripts/sim/opportunities.gd:81
  • Opportunities.on_delivery funcamt units of c loaded at from (null when that station is gone) delivered by v at st: wins and progress.
    Enlace a esta entradafunc on_delivery(sim: Sim, v: Vehicle, from: Station, st: Station, c: String, amt: int) -> float

    Returns what the fare is multiplied by (a won subsidy's SUBSIDY_MULT, else 1).

    Parámetros
    • sim: Sim
    • v: Vehicle
    • from: Station
    • st: Station
    • c: String
    • amt: int
    Devuelve
    float
    Declarado en scripts/sim/opportunities.gd:88
  • Opportunities._reaches static funcWhether station st reaches place: an industry in its catchment, or a town it belongs to.
    Enlace a esta entradastatic func _reaches(m: WorldMap, st: Station, place: Object) -> bool
    Parámetros
    • m: WorldMap
    • st: Station
    • place: Object
    Devuelve
    bool
    Llama a
    Economy.reaches
    Declarado en scripts/sim/opportunities.gd:117
  • Opportunities._joins static func
    Enlace a esta entradastatic func _joins(o: Dictionary, a: Town, b: Town) -> bool
    Parámetros
    • o: Dictionary
    • a: Town
    • b: Town
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:123
  • Opportunities._win_subsidy func
    Enlace a esta entradafunc _win_subsidy(sim: Sim, o: Dictionary, who: Company) -> void
    Parámetros
    • sim: Sim
    • o: Dictionary
    • who: Company
    Devuelve
    void
    Llama a
    L.t, Calendar.format

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:127
  • Opportunities._met funcRequest k is met by who: its reward, news, and it leaves the list.
    Enlace a esta entradafunc _met(sim: Sim, k: int, who: Company) -> void
    Parámetros
    • sim: Sim
    • k: int
    • who: Company
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/opportunities.gd:139
  • Opportunities.monthly funcMonth end (Sim._on_day, after the industries' month): service months and rights that end.
    Enlace a esta entradafunc monthly(sim: Sim) -> void

    Then what lapses, as every day.

    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/opportunities.gd:169
  • Opportunities.daily funcEvery day (Sim._on_day): offers that lapse or end that day, and now and then a new subsidy or a new request while there is room, so news of them comes at any time of the month.
    Enlace a esta entradafunc daily(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/opportunities.gd:187
  • Opportunities._lapse funcTakes off the offers whose day has come, with news; a service request only at the month end (month_end), once its last month is counted.
    Enlace a esta entradafunc _lapse(sim: Sim, month_end: bool) -> Vector2i

    Returns how many subsidies (x) and requests (y) are still open.

    Parámetros
    • sim: Sim
    • month_end: bool
    Devuelve
    Vector2i
    Llama a
    L.t
    Declarado en scripts/sim/opportunities.gd:198
  • Opportunities._count_service funcOne more month for each company whose stations in the town are all rated SERVICE_RATING or more (it needs one at least); back to none for the others.
    Enlace a esta entradafunc _count_service(sim: Sim, o: Dictionary) -> void
    Parámetros
    • sim: Sim
    • o: Dictionary
    Devuelve
    void
    Declarado en scripts/sim/opportunities.gd:231
  • Opportunities._leader static funcThe company furthest on with a request (-1: nobody has started).
    Enlace a esta entradastatic func _leader(o: Dictionary) -> int
    Parámetros
    • o: Dictionary
    Devuelve
    int
    Declarado en scripts/sim/opportunities.gd:251
  • Opportunities.industry_closed funcAn industry closes (IndustryLife.close): offers about it are withdrawn, and a won subsidy ends.
    Enlace a esta entradafunc industry_closed(sim: Sim, ind: Industry) -> void
    Parámetros
    • sim: Sim
    • ind: Industry
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/opportunities.gd:260
  • Opportunities.offer_subsidy funcOffer a subsidy for a route nobody serves yet, if one turns up in a few tries: a cargo an industry makes (or, from the Late century, the waste a town makes: Data.town_makes) that nobody loads there, to a place in reach that takes it.
    Enlace a esta entradafunc offer_subsidy(sim: Sim) -> Dictionary

    Returns it, or {}.

    Parámetros
    • sim: Sim
    Devuelve
    Dictionary
    Llama a
    IndustryLife.served, Data.town_makes, Data.town_pop, L.t, Calendar.format
    Declarado en scripts/sim/opportunities.gd:276
  • Opportunities.pos_of static funcWhere an industry or a town is: its middle.
    Enlace a esta entradastatic func pos_of(place: Object) -> Vector2
    Parámetros
    • place: Object
    Devuelve
    Vector2
    Declarado en scripts/sim/opportunities.gd:324
  • Opportunities.offer_request funcAsk for something from a town without a request, if one in a few tries can ask for anything: the bigger the town, the likelier it is to ask.
    Enlace a esta entradafunc offer_request(sim: Sim) -> Dictionary

    Returns the request, or {}.

    Parámetros
    • sim: Sim
    Devuelve
    Dictionary
    Llama a
    Goals.cargos_in_game
    Declarado en scripts/sim/opportunities.gd:330
  • Opportunities.request_kinds funcWhat town t could ask for: links when it is big, supplies when it takes goods or food and the map makes some (have: Goals.cargos_in_game), visitors when it has an attraction, service when some company has a station there.
    Enlace a esta entradafunc request_kinds(sim: Sim, t: Town, have: Array) -> Array
    Parámetros
    • sim: Sim
    • t: Town
    • have: Array
    Devuelve
    Array
    Declarado en scripts/sim/opportunities.gd:359
  • Opportunities.make_request funcMake a request of type from town t (see request_kinds), with news.
    Enlace a esta entradafunc make_request(sim: Sim, t: Town, type: String, have: Array) -> Dictionary

    {} when there is nothing to ask for after all (a link with no town in reach that isn't linked already).

    Parámetros
    • sim: Sim
    • t: Town
    • type: String
    • have: Array
    Devuelve
    Dictionary
    Llama a
    L.t, Calendar.format
    Declarado en scripts/sim/opportunities.gd:376
  • Opportunities._link_partner funcA town for a link from t: SUBSIDY_MIN..SUBSIDY_MAX tiles away, at least LINK_TO_POP people, and no passenger vehicle of anyone's calling at both yet.
    Enlace a esta entradafunc _link_partner(sim: Sim, t: Town) -> Town

    Null when there is none.

    Parámetros
    • sim: Sim
    • t: Town
    Devuelve
    Town
    Declarado en scripts/sim/opportunities.gd:412
  • Opportunities._offer func
    Enlace a esta entradafunc _offer(sim: Sim, type: String, cargo: String, expires: int) -> Dictionary
    Parámetros
    • sim: Sim
    • type: String
    • cargo: String
    • expires: int
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:434
  • Opportunities._offered funcWhether an industry or a town is the source of a subsidy already.
    Enlace a esta entradafunc _offered(place: Object) -> bool
    Parámetros
    • place: Object
    Devuelve
    bool
    Declarado en scripts/sim/opportunities.gd:443
  • Opportunities._in_range static func
    Enlace a esta entradastatic func _in_range(a: Vector2, b: Vector2) -> bool
    Parámetros
    • a: Vector2
    • b: Vector2
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:447
  • Opportunities._round static funcA target in round numbers: to the nearest 50, at least 100.
    Enlace a esta entradastatic func _round(n: float) -> int
    Parámetros
    • n: float
    Devuelve
    int
    Declarado en scripts/sim/opportunities.gd:453
  • Opportunities.attractions_of static funcThe attractions town t has, as Data.HOUSES types.
    Enlace a esta entradastatic func attractions_of(t: Town) -> Array
    Parámetros
    • t: Town
    Devuelve
    Array
    Declarado en scripts/sim/opportunities.gd:458
  • Opportunities.request_of funcThe request town t has open, or {}.
    Enlace a esta entradafunc request_of(t: Town) -> Dictionary
    Parámetros
    • t: Town
    Devuelve
    Dictionary
    Declarado en scripts/sim/opportunities.gd:463
  • Opportunities.what static funcWhat an offer asks, in a few words, as it reads mid-sentence: "coal from Ashford Mine to Elmford Power Station", "300 food for Elmford" (title for the start of one).
    Enlace a esta entradastatic func what(o: Dictionary) -> String
    Parámetros
    • o: Dictionary
    Devuelve
    String
    Llama a
    L.t, L.lower, Fmt.int_commas
    Declarado en scripts/sim/opportunities.gd:474
  • Opportunities.title static funcwhat, starting with a capital: a heading.
    Enlace a esta entradastatic func title(o: Dictionary) -> String
    Parámetros
    • o: Dictionary
    Devuelve
    String
    Declarado en scripts/sim/opportunities.gd:488
  • Opportunities.reward_name static funcWhat meeting a request brings, in a few words ("a grant of $50,000").
    Enlace a esta entradastatic func reward_name(reward: String) -> String
    Parámetros
    • reward: String
    Devuelve
    String
    Llama a
    L.t, Fmt.money
    Declarado en scripts/sim/opportunities.gd:494
  • Opportunities.place static funcWhere an offer is, for the map: the middle of its route (or the town), and a zoom that shows it.
    Enlace a esta entradastatic func place(o: Dictionary) -> Array
    Parámetros
    • o: Dictionary
    Devuelve
    Array
    Declarado en scripts/sim/opportunities.gd:505
  • Opportunities._news funcworld: news the player can't act on (a rival's win, an offer that lapsed): Sim.post_world_news.
    Enlace a esta entradafunc _news(sim: Sim, text: String, kind: String, o: Dictionary, world: bool = false) -> void

    A new offer is the player's news: it is a chance for them.

    Parámetros
    • sim: Sim
    • text: String
    • kind: String
    • o: Dictionary
    • world: bool = false
    Devuelve
    void
    Declarado en scripts/sim/opportunities.gd:513
  • Opportunities.to_dict func
    Enlace a esta entradafunc to_dict() -> Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/opportunities.gd:519
  • Opportunities._ref static funcAn industry or a town as a save keeps it: ["i" or "t", its id] ([] for none).
    Enlace a esta entradastatic func _ref(place: Object) -> Array
    Parámetros
    • place: Object
    Devuelve
    Array
    Declarado en scripts/sim/opportunities.gd:531
  • Opportunities.restore funcTake back the offers of a save (d: to_dict's) on map m.
    Enlace a esta entradafunc restore(d: Dictionary, m: WorldMap) -> void

    An offer about a place that isn't there is left out. A save from before there were any leaves none, and the seed Sim gave.

    Parámetros
    • d: Dictionary
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/opportunities.gd:537

Pathfinder

  • Pathfinder.MAX_EXPANSIONS const
    Enlace a esta entradaconst MAX_EXPANSIONS := 400000

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/pathfinder.gd:8
  • Pathfinder.find static funcReturns {"tiles": Array[Vector2i], "end_heading": int} or {} when there is no route.
    Enlace a esta entradastatic func find(m: WorldMap, kind: String, start: Vector2i, heading: int, goals: Dictionary, allow_reverse_start: bool, allow_dead_end_uturn: bool, wired: bool = false, obey_signals: bool = true, avoid: Dictionary = {}) -> Dictionary

    A route that took a search also carries "box": every tile the search looked at lies inside it, so as long as the network doesn't change in there the same search gives the same route. goals: Dictionary of goal tiles. heading -1 means any first move is allowed. wired: an electric train, which can only run under overhead wires. obey_signals false: as if one-way signals let trains through both ways (to tell the player when they are what stands in the way). avoid: track blocks (ids of WorldMap.blocks) to keep off, where other trains are (RAIL-80).

    Parámetros
    • m: WorldMap
    • kind: String
    • start: Vector2i
    • heading: int
    • goals: Dictionary
    • allow_reverse_start: bool
    • allow_dead_end_uturn: bool
    • wired: bool = false
    • obey_signals: bool = true
    • avoid: Dictionary = {}
    Devuelve
    Dictionary
    Llama a
    Const.opp
    Declarado en scripts/sim/pathfinder.gd:19
  • Pathfinder._find_water static funcThe way over water from start to the nearest of goals.
    Enlace a esta entradastatic func _find_water(m: WorldMap, start: Vector2i, goals: Dictionary) -> Dictionary

    Ships turn where they like and sail a straight course afterwards (Vehicle.water_course), so this is the eight-way way of find_sea with each diagonal step split in two: a search over tiles rather than tiles and headings, with a heuristic that fits open water. Remembered on the map (see _sea_memo).

    Parámetros
    • m: WorldMap
    • start: Vector2i
    • goals: Dictionary
    Devuelve
    Dictionary
    Llama a
    BuildOps.dir_between
    Declarado en scripts/sim/pathfinder.gd:101
  • Pathfinder.find_sea static funcThe shortest way by water from start to goal, moving between tiles in eight directions (diagonally only where both tiles beside the step are water too), or [] when there is none.
    Enlace a esta entradastatic func find_sea(m: WorldMap, start: Vector2i, goal: Vector2i, max_len: float = INF) -> Array[Vector2i]

    Ships pull it straight afterwards (Vehicle.water_course): unlike the four-way route, it already runs close to the direct line, so the pulled course doesn't keep the corners of an L. max_len: ways longer than this don't count, which keeps the search to the water near the straight line (an answer of "none" then comes quickly even on a big sea).

    Parámetros
    • m: WorldMap
    • start: Vector2i
    • goal: Vector2i
    • max_len: float = INF
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/pathfinder.gd:127
  • Pathfinder._sea_memo static funcA way over water found earlier under key from start to one of ends ([] if none, if it no longer runs over open water, or if it answers another question whose key hashed the same).
    Enlace a esta entradastatic func _sea_memo(m: WorldMap, key: int, start: Vector2i, ends: Dictionary) -> Array[Vector2i]

    Ships ask the same questions at every departure, and open water only changes with the ground (WorldMap.notify empties sea_memo then).

    Parámetros
    • m: WorldMap
    • key: int
    • start: Vector2i
    • ends: Dictionary
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/pathfinder.gd:142
  • Pathfinder._sea_remember static func
    Enlace a esta entradastatic func _sea_remember(m: WorldMap, key: int, tiles: Array[Vector2i]) -> void
    Parámetros
    • m: WorldMap
    • key: int
    • tiles: Array[Vector2i]
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/pathfinder.gd:155
  • Pathfinder._find_sea static funcfind_sea's search, to the nearest of goals.
    Enlace a esta entradastatic func _find_sea(m: WorldMap, start: Vector2i, goals: Array, max_len: float) -> Array[Vector2i]
    Parámetros
    • m: WorldMap
    • start: Vector2i
    • goals: Array
    • max_len: float
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/pathfinder.gd:162
  • Pathfinder._octile static funcThe eight-way distance over open water from (x, y) to the nearest of goals.
    Enlace a esta entradastatic func _octile(x: int, y: int, goals: Array) -> float
    Parámetros
    • x: int
    • y: int
    • goals: Array
    Devuelve
    float
    Declarado en scripts/sim/pathfinder.gd:223
  • Pathfinder._heuristic static func
    Enlace a esta entradastatic func _heuristic(t: Vector2i, goals: Array) -> float
    Parámetros
    • t: Vector2i
    • goals: Array
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/pathfinder.gd:232
  • Pathfinder._build static func
    Enlace a esta entradastatic func _build(m: WorldMap, came: Dictionary, s: int, end_heading: int) -> Dictionary
    Parámetros
    • m: WorldMap
    • came: Dictionary
    • s: int
    • end_heading: int
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/pathfinder.gd:239
  • Pathfinder._push static func
    Enlace a esta entradastatic func _push(f: PackedFloat32Array, s: PackedInt32Array, pri: float, state: int) -> void
    Parámetros
    • f: PackedFloat32Array
    • s: PackedInt32Array
    • pri: float
    • state: int
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/pathfinder.gd:250
  • Pathfinder._pop static func
    Enlace a esta entradastatic func _pop(f: PackedFloat32Array, s: PackedInt32Array) -> void
    Parámetros
    • f: PackedFloat32Array
    • s: PackedInt32Array
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/pathfinder.gd:263

Problems

  • Problems.SIGNAL_DAYS consta train held at a red signal this long
    Enlace a esta entradaconst SIGNAL_DAYS := 10.0Declarado en scripts/sim/problems.gd:22
  • Problems.QUEUE_DAYS consta vehicle held up in traffic, off a berth or holding this long (RAIL-26)
    Enlace a esta entradaconst QUEUE_DAYS := 2.0Declarado en scripts/sim/problems.gd:23
  • Problems.NO_CALL_DAYS consta station in use that no vehicle has called at for this long
    Enlace a esta entradaconst NO_CALL_DAYS := 60.0Declarado en scripts/sim/problems.gd:24
  • Problems.PILE_UP constcargo piling up: at least this much waiting, more than comes in a month...
    Enlace a esta entradaconst PILE_UP := 150.0Declarado en scripts/sim/problems.gd:25
  • Problems.PILE_RATING const...and the station's rating for it under this, so some of it gives up
    Enlace a esta entradaconst PILE_RATING := 0.6Declarado en scripts/sim/problems.gd:26
  • Problems.SERVICE_LATE constoverdue a service: this many service intervals since the last one
    Enlace a esta entradaconst SERVICE_LATE := 1.6Declarado en scripts/sim/problems.gd:27
  • Problems.STAFF_SHORT constan industry with under this share of the staff it wants
    Enlace a esta entradaconst STAFF_SHORT := 0.5Declarado en scripts/sim/problems.gd:28
  • Problems.HELD_UP consta plant that needs every input holding this much while it waits for another
    Enlace a esta entradaconst HELD_UP := 60.0Declarado en scripts/sim/problems.gd:29
  • Problems.REFRESH constreal seconds between two looks (tick)
    Enlace a esta entradaconst REFRESH := 0.5Declarado en scripts/sim/problems.gd:30
  • Problems.TOLD_DAYS consta vehicle that gets lost is announced at most once in this many days
    Enlace a esta entradaconst TOLD_DAYS := 30Declarado en scripts/sim/problems.gd:31
  • Problems.rows varthe last look, most serious first
    Enlace a esta entradavar rows: Array = []Declarado en scripts/sim/problems.gd:33
  • Problems.serious varrows of level 0
    Enlace a esta entradavar serious := 0Declarado en scripts/sim/problems.gd:34
  • Problems.rev vargoes up when what is on the list (things and kinds) changes
    Enlace a esta entradavar rev := 0Declarado en scripts/sim/problems.gd:35
  • Problems._of varthing -> its most serious row
    Enlace a esta entradavar _of := {}Declarado en scripts/sim/problems.gd:36
  • Problems._sig var
    Enlace a esta entradavar _sig: Array = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/problems.gd:37
  • Problems._wait var
    Enlace a esta entradavar _wait := 0.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/problems.gd:38
  • Problems._lost varids of the vehicles lost at the last look
    Enlace a esta entradavar _lost := {}Declarado en scripts/sim/problems.gd:39
  • Problems._told varvehicle id -> game day it was last announced as lost
    Enlace a esta entradavar _told := {}Declarado en scripts/sim/problems.gd:40
  • Problems._primed varthe first look announces nothing: those were lost already
    Enlace a esta entradavar _primed := falseDeclarado en scripts/sim/problems.gd:41
  • Problems._alerts var
    Enlace a esta entradavar _alerts: Array = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/problems.gd:42
  • Problems.tick funcLook again if REFRESH seconds have passed since the last look.
    Enlace a esta entradafunc tick(sim: Sim, delta: float) -> bool

    True when it did.

    Parámetros
    • sim: Sim
    • delta: float
    Devuelve
    bool
    Declarado en scripts/sim/problems.gd:46
  • Problems.refresh funcLook again now.
    Enlace a esta entradafunc refresh(sim: Sim) -> void
    Parámetros
    • sim: Sim
    Devuelve
    void
    Declarado en scripts/sim/problems.gd:55
  • Problems.has func
    Enlace a esta entradafunc has(thing: Object) -> bool
    Parámetros
    • thing: Object
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/problems.gd:83
  • Problems.of funcThe most serious row about thing, or {}.
    Enlace a esta entradafunc of(thing: Object) -> Dictionary
    Parámetros
    • thing: Object
    Devuelve
    Dictionary
    Declarado en scripts/sim/problems.gd:88
  • Problems.take_alerts funcVehicles that got lost since the last call (at most once a month each): for a toast.
    Enlace a esta entradafunc take_alerts() -> Array
    Devuelve
    Array
    Declarado en scripts/sim/problems.gd:93
  • Problems.list static funcEvery problem of the player's company, most serious first.
    Enlace a esta entradastatic func list(sim: Sim) -> Array

    Cheap enough for a few times a second with hundreds of vehicles: one pass over vehicles, stations, towns and the industries the stations reach, text only for the rows, and each platform measured once.

    Parámetros
    • sim: Sim
    Devuelve
    Array
    Llama a
    L.t, Economy.industry_stations_reverse, SignalTraps.find, SignalTraps.text
    Declarado en scripts/sim/problems.gd:104
  • Problems.vehicle_row static funcThe worst problem of one vehicle, or {}.
    Enlace a esta entradastatic func vehicle_row(sim: Sim, v: Vehicle) -> Dictionary
    Parámetros
    • sim: Sim
    • v: Vehicle
    Devuelve
    Dictionary
    Llama a
    L.t, L.lower, Fmt.money
    Declarado en scripts/sim/problems.gd:146
  • Problems._station_rows static funccalls is cargo -> the player's vehicles that take it on at st (see _note_calls).
    Enlace a esta entradastatic func _station_rows(sim: Sim, st: Station, out: Array, calls: Dictionary) -> void
    Parámetros
    • sim: Sim
    • st: Station
    • out: Array
    • calls: Dictionary
    Devuelve
    void
    Llama a
    L.t
    Declarado en scripts/sim/problems.gd:173
  • Problems._piling_row static funcCargo c piling up at st, and what holds it back.
    Enlace a esta entradastatic func _piling_row(st: Station, c: String, w: float, r: float, vs: Array) -> Dictionary

    When more waits than the biggest of the vehicles that load it there can take, each of them leaves full: a train wants more wagons (its fix opens that train, where Change cargo adds them), anything else more vehicles. When there is room on board they call too seldom. A player who sees a full train leave thinks it took everything, so the hint says how much it takes.

    Parámetros
    • st: Station
    • c: String
    • w: float
    • r: float
    • vs: Array
    Devuelve
    Dictionary
    Llama a
    L.lower, L.t
    Declarado en scripts/sim/problems.gd:189
  • Problems._note_calls static funcNote the stops where v takes cargo on (not unload-only or don't-load ones), in calls: Station -> cargo -> [Vehicle].
    Enlace a esta entradastatic func _note_calls(v: Vehicle, calls: Dictionary) -> void
    Parámetros
    • v: Vehicle
    • calls: Dictionary
    Devuelve
    void
    Declarado en scripts/sim/problems.gd:219
  • Problems._short_platforms static funcNote the longest of the player's trains too long for each of its rail stops (as VehicleWindow.short_platform_text works it out), measuring each station once.
    Enlace a esta entradastatic func _short_platforms(m: WorldMap, v: Vehicle, platforms: Dictionary, short: Dictionary) -> void
    Parámetros
    • m: WorldMap
    • v: Vehicle
    • platforms: Dictionary
    • short: Dictionary
    Devuelve
    void
    Llama a
    Vehicle.tiles_long
    Declarado en scripts/sim/problems.gd:232
  • Problems._trades static funcWhether st carries a cargo ind makes or takes.
    Enlace a esta entradastatic func _trades(ind: Industry, st: Station) -> bool
    Parámetros
    • ind: Industry
    • st: Station
    Devuelve
    bool
    Declarado en scripts/sim/problems.gd:246
  • Problems._industry_rows static func
    Enlace a esta entradastatic func _industry_rows(sim: Sim, ind: Industry, out: Array) -> void
    Parámetros
    • sim: Sim
    • ind: Industry
    • out: Array
    Devuelve
    void
    Llama a
    L.t, IndustryLife.closing_text, L.lower, Fmt.cargo_list

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/problems.gd:253
  • Problems._where static funcWhere a vehicle is: the tile its front is on (or, before it has set off, its next stop).
    Enlace a esta entradastatic func _where(v: Vehicle) -> Vector2
    Parámetros
    • v: Vehicle
    Devuelve
    Vector2
    Declarado en scripts/sim/problems.gd:291
  • Problems._row static func
    Enlace a esta entradastatic func _row(kind: String, level: int, obj: Object, pos: Vector2, text: String, fix: String) -> Dictionary
    Parámetros
    • kind: String
    • level: int
    • obj: Object
    • pos: Vector2
    • text: String
    • fix: String
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/problems.gd:298
  • Problems._before static funcMost serious first, then by name.
    Enlace a esta entradastatic func _before(a: Dictionary, b: Dictionary) -> bool
    Parámetros
    • a: Dictionary
    • b: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/problems.gd:303

RouteBuilder

  • RouteBuilder.MAX_EXPANSIONS const
    Enlace a esta entradaconst MAX_EXPANSIONS := 8000

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/route_builder.gd:20
  • RouteBuilder.SHAPE_EXPANSIONS constThe second pass's share of the search budget, at the most.
    Enlace a esta entradaconst SHAPE_EXPANSIONS := 3000Declarado en scripts/sim/route_builder.gd:22
  • RouteBuilder.REACH constHow far from the rough path (in tiles) the second pass may stray.
    Enlace a esta entradaconst REACH := 3Declarado en scripts/sim/route_builder.gd:24
  • RouteBuilder.DETOUR constA rough path up to this much longer than the straight distance had nothing much in its way.
    Enlace a esta entradaconst DETOUR := 1.3Declarado en scripts/sim/route_builder.gd:26
  • RouteBuilder.TURN constWhat the shape of the line costs, in tiles of track: the first turning tile after straight track
    Enlace a esta entradaconst TURN := 1.2Declarado en scripts/sim/route_builder.gd:28
  • RouteBuilder.LONE_BEND const...when straight track follows it: a 90-degree bend (2.0 in all)
    Enlace a esta entradaconst LONE_BEND := 0.8Declarado en scripts/sim/route_builder.gd:29
  • RouteBuilder.SECOND_TURN const...when it turns back on the next tile: the start of a diagonal (1.5)
    Enlace a esta entradaconst SECOND_TURN := 0.3Declarado en scripts/sim/route_builder.gd:30
  • RouteBuilder.SIDESTEP consta diagonal that ends after those two tiles: a one-tile sidestep (4.0)
    Enlace a esta entradaconst SIDESTEP := 2.5Declarado en scripts/sim/route_builder.gd:31
  • RouteBuilder.RUN consteach further tile of a diagonal: it is that much shorter to drive
    Enlace a esta entradaconst RUN := -0.25Declarado en scripts/sim/route_builder.gd:32
  • RouteBuilder.HAIRPIN consttwo turns the same way on neighbouring tiles
    Enlace a esta entradaconst HAIRPIN := 3.0Declarado en scripts/sim/route_builder.gd:33
  • RouteBuilder.CAREFUL constThe second pass first looks for the best line with this share of its budget; if that runs out it settles for a good one, weighting the distance left by HASTY.
    Enlace a esta entradaconst CAREFUL := 0.65Declarado en scripts/sim/route_builder.gd:36
  • RouteBuilder.HASTY const
    Enlace a esta entradaconst HASTY := 2.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/route_builder.gd:37
  • RouteBuilder.TURN_INDEX const(way out - way in) & 3 -> straight on, right, left
    Enlace a esta entradaconst TURN_INDEX: Array[int] = [0, 1, 0, 2]Declarado en scripts/sim/route_builder.gd:38
  • RouteBuilder.last_expansions static varstates looked at by the last search (benchmark tooling)
    Enlace a esta entradastatic var last_expansions := 0Declarado en scripts/sim/route_builder.gd:39
  • RouteBuilder.last_refined static varwhether the last search's second pass finished (benchmark tooling)
    Enlace a esta entradastatic var last_refined := falseDeclarado en scripts/sim/route_builder.gd:40
  • RouteBuilder.log_to static varan Array: every search adds its describe entry (benchmark tooling)
    Enlace a esta entradastatic var log_to = nullDeclarado en scripts/sim/route_builder.gd:41
  • RouteBuilder.last_crossings static varThe bridges and tunnels on the path the last search returned, in order along it: [{"type": "bridge" | "tunnel", "from", "to": the tiles either side (a bridge's ramps, the tiles before and after a tunnel's mouths), "between": the tiles in between (spans / tunnel), "dir", "a", "b", "style": what Sim.build_crossing takes}].
    Enlace a esta entradastatic var last_crossings: Array = []

    Empty when jumps was.

    Declarado en scripts/sim/route_builder.gd:46
  • RouteBuilder.CROSSING constWhat a crossing costs on top of its tiles, in tiles of track: short detours still win.
    Enlace a esta entradaconst CROSSING := 8.0

    (The first pass leans towards the goal, so a tile sideways looks dearer to it than it is: this has to cover that too.)

    Declarado en scripts/sim/route_builder.gd:50
  • RouteBuilder.find static funcPath of tiles from start to goal (both included).
    Enlace a esta entradastatic func find(m: WorldMap, kind: String, start: Vector2i, start_dir: int, goal: Vector2i, goal_dir: int, reserved: Dictionary = {}, max_expansions: int = 0, jumps: Dictionary = {}) -> Array[Vector2i]

    start_dir: direction of travel when entering start (-1: any). goal_dir: direction the path must leave goal in (-1: any). reserved tiles are never used. Returns [] if none found. jumps (jumps_for): the bridges and tunnels it may build; {} for none. The path then may not be buildable by Sim.build_line alone: see last_crossings and Sim.build_route.

    Parámetros
    • m: WorldMap
    • kind: String
    • start: Vector2i
    • start_dir: int
    • goal: Vector2i
    • goal_dir: int
    • reserved: Dictionary = {}
    • max_expansions: int = 0
    • jumps: Dictionary = {}
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/route_builder.gd:58
  • RouteBuilder.describe static funcThe shape of a path: how many tiles turn, and how those turns group.
    Enlace a esta entradastatic func describe(path: Array[Vector2i], start_dir: int = -1, goal_dir: int = -1) -> Dictionary

    A run of turning tiles is a bend one turn on its own, a sidestep a left and a right (or right and left) with straight track either side: the line jumps one tile sideways, which shows as a wobble, a diagonal three or more alternating turns, drawn and driven as one straight 45-degree line, a hairpin two turns the same way on neighbouring tiles. start_dir / goal_dir: the directions the path is entered and left in, when known.

    Parámetros
    • path: Array[Vector2i]
    • start_dir: int = -1
    • goal_dir: int = -1
    Devuelve
    Dictionary
    Llama a
    BuildOps.dir_between
    Declarado en scripts/sim/route_builder.gd:104
  • RouteBuilder._rough static funcThe first pass.
    Enlace a esta entradastatic func _rough(m: WorldMap, kind: String, start: Vector2i, start_dir: int, goal: Vector2i, goal_dir: int, reserved: Dictionary, budget: int, jumps: Dictionary = {}, out_crossings: Array = []) -> Array[Vector2i]

    With jumps, the bridges and tunnels on the path found go into out_crossings.

    Parámetros
    • m: WorldMap
    • kind: String
    • start: Vector2i
    • start_dir: int
    • goal: Vector2i
    • goal_dir: int
    • reserved: Dictionary
    • budget: int
    • jumps: Dictionary = {}
    • out_crossings: Array = []
    Devuelve
    Array[Vector2i]
    Llama a
    Pathfinder._push, Pathfinder._pop, Const.opp
    Declarado en scripts/sim/route_builder.gd:140
  • RouteBuilder._refine static funcThe second pass: the best-shaped path through corridor (see _corridor).
    Enlace a esta entradastatic func _refine(m: WorldMap, kind: String, rough: Array[Vector2i], corridor: Dictionary, start_dir: int, goal_dir: int, reserved: Dictionary, budget: int, weight: float) -> Array[Vector2i]

    A* over (tile, entry direction, shape), where shape remembers the turning tiles just behind: 0 straight track 1, 2 one turn so far, to the right / to the left 3, 4 two alternating turns, the last to the right / left 5, 6 three or more: a diagonal Open ground costs the same everywhere here (the rough pass has weighed up trees and slopes), which is what lets the search run straight to the goal. weight: 1 for the best line, more to settle sooner for a good one. Returns [] when budget runs out.

    Parámetros
    • m: WorldMap
    • kind: String
    • rough: Array[Vector2i]
    • corridor: Dictionary
    • start_dir: int
    • goal_dir: int
    • reserved: Dictionary
    • budget: int
    • weight: float
    Devuelve
    Array[Vector2i]
    Llama a
    Pathfinder._push, Pathfinder._pop, Const.opp
    Declarado en scripts/sim/route_builder.gd:222
  • RouteBuilder._corridor static funcThe tiles the second pass may use: every tile within REACH of the rough path (and, where little was in its way, of the two straight-and-diagonal lines between its ends), each with its distance to the goal through the corridor, so the search is drawn round a lake the way the rough path went.
    Enlace a esta entradastatic func _corridor(m: WorldMap, rough: Array[Vector2i]) -> Dictionary
    Parámetros
    • m: WorldMap
    • rough: Array[Vector2i]
    Devuelve
    Dictionary
    Declarado en scripts/sim/route_builder.gd:336
  • RouteBuilder.jumps_for static funcWhat find() may use to cross water and hills in year: every bridge style there is by then, cheapest first ("unit": a span tile's price in tiles of plain kind), and tunnels (likewise).
    Enlace a esta entradastatic func jumps_for(kind: String, year: int) -> Dictionary

    A caller may add "crossing": what each crossing costs on top of its tiles (CROSSING if not).

    Parámetros
    • kind: String
    • year: int
    Devuelve
    Dictionary
    Declarado en scripts/sim/route_builder.gd:399
  • RouteBuilder._jump static funcA bridge or tunnel from tile t heading d (see last_crossings for its keys, plus "cost" in tiles of track), or {} when there is none to build.
    Enlace a esta entradastatic func _jump(m: WorldMap, kind: String, t: Vector2i, d: int, jumps: Dictionary, reserved: Dictionary, cache: Dictionary) -> Dictionary

    A bridge is tried where the tile ahead is water or takes no piece, a tunnel where the ground ahead rises straight up the way it goes.

    Parámetros
    • m: WorldMap
    • kind: String
    • t: Vector2i
    • d: int
    • jumps: Dictionary
    • reserved: Dictionary
    • cache: Dictionary
    Devuelve
    Dictionary
    Llama a
    WorldMap.axis_of
    Declarado en scripts/sim/route_builder.gd:413
  • RouteBuilder._rises static funcWhether the ground on tile n climbs on its way across it heading d.
    Enlace a esta entradastatic func _rises(m: WorldMap, n: Vector2i, d: int) -> bool
    Parámetros
    • m: WorldMap
    • n: Vector2i
    • d: int
    Devuelve
    bool
    Llama a
    BuildOps.edge_heights, Const.opp
    Declarado en scripts/sim/route_builder.gd:447
  • RouteBuilder._bridge static funcThe shortest bridge from ramp t heading d that the player's bridge tool would allow, in the cheapest style long enough for it.
    Enlace a esta entradastatic func _bridge(m: WorldMap, kind: String, t: Vector2i, d: int, jumps: Dictionary, reserved: Dictionary) -> Dictionary
    Parámetros
    • m: WorldMap
    • kind: String
    • t: Vector2i
    • d: int
    • jumps: Dictionary
    • reserved: Dictionary
    Devuelve
    Dictionary
    Llama a
    BuildOps.edge_heights, Const.opp, BuildOps.plan_bridge
    Declarado en scripts/sim/route_builder.gd:455
  • RouteBuilder._tunnel static funcThe tunnel the player's tunnel tool would dig from the hillside just ahead of t (heading d): the line goes from t into it and comes out on the tile beyond its far mouth.
    Enlace a esta entradastatic func _tunnel(m: WorldMap, kind: String, t: Vector2i, d: int, jumps: Dictionary, reserved: Dictionary) -> Dictionary
    Parámetros
    • m: WorldMap
    • kind: String
    • t: Vector2i
    • d: int
    • jumps: Dictionary
    • reserved: Dictionary
    Devuelve
    Dictionary
    Llama a
    WorldMap.axis_of, BuildOps.edge_heights, BuildOps.plan_tunnel
    Declarado en scripts/sim/route_builder.gd:494
  • RouteBuilder._build_jumped static func_build for a first pass that jumped: the bridges' spans and the tunnels' tiles go into the path where they are, and the crossings into out_crossings.
    Enlace a esta entradastatic func _build_jumped(m: WorldMap, came: Dictionary, s: int, jumped: Dictionary, out_crossings: Array) -> Array[Vector2i]
    Parámetros
    • m: WorldMap
    • came: Dictionary
    • s: int
    • jumped: Dictionary
    • out_crossings: Array
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/route_builder.gd:539
  • RouteBuilder._refine_between static funcThe second pass for a path with crossings: each stretch of land between them is shaped on its own (a stretch it can't improve on in its share of the budget stays as the first pass laid it), leaving every bridge and tunnel where it is and entered and left straight on.
    Enlace a esta entradastatic func _refine_between(m: WorldMap, kind: String, path: Array[Vector2i], crossings: Array, start_dir: int, goal_dir: int, reserved: Dictionary, budget: int) -> Array[Vector2i]
    Parámetros
    • m: WorldMap
    • kind: String
    • path: Array[Vector2i]
    • crossings: Array
    • start_dir: int
    • goal_dir: int
    • reserved: Dictionary
    • budget: int
    Devuelve
    Array[Vector2i]
    Declarado en scripts/sim/route_builder.gd:562
  • RouteBuilder._manhattan static func
    Enlace a esta entradastatic func _manhattan(a: Vector2i, b: Vector2i) -> float
    Parámetros
    • a: Vector2i
    • b: Vector2i
    Devuelve
    float

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/route_builder.gd:599
  • RouteBuilder._tile_cost static funcCost of putting a piece with bits on tile t, or -1 when it can't be built.
    Enlace a esta entradastatic func _tile_cost(m: WorldMap, kind: String, t: Vector2i, bits: int, fine: bool = false) -> float

    fine: for the second pass, which doesn't tell trees and slopes from open ground.

    Parámetros
    • m: WorldMap
    • kind: String
    • t: Vector2i
    • bits: int
    • fine: bool = false
    Devuelve
    float
    Llama a
    BuildOps.rail_tile_problem, BuildOps.road_tile_problem
    Declarado en scripts/sim/route_builder.gd:605
  • RouteBuilder._build static func
    Enlace a esta entradastatic func _build(m: WorldMap, came: Dictionary, s: int, per_tile: int) -> Array[Vector2i]
    Parámetros
    • m: WorldMap
    • came: Dictionary
    • s: int
    • per_tile: int
    Devuelve
    Array[Vector2i]

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/route_builder.gd:645

SaveGame

  • SaveGame.VERSION const
    Enlace a esta entradaconst VERSION := 1

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:6
  • SaveGame.DIR const
    Enlace a esta entradaconst DIR := "user://saves"

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:7
  • SaveGame.list_saves static func
    Enlace a esta entradastatic func list_saves() -> Array
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:10
  • SaveGame.delete_save static func
    Enlace a esta entradastatic func delete_save(path: String) -> void
    Parámetros
    • path: String
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:29
  • SaveGame._v static func
    Enlace a esta entradastatic func _v(v: Vector2i) -> Array
    Parámetros
    • v: Vector2i
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:36
  • SaveGame._vi static func
    Enlace a esta entradastatic func _vi(a: Array) -> Vector2i
    Parámetros
    • a: Array
    Devuelve
    Vector2i

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:40
  • SaveGame._b64 static func
    Enlace a esta entradastatic func _b64(p: PackedByteArray) -> String
    Parámetros
    • p: PackedByteArray
    Devuelve
    String

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:44
  • SaveGame._unb64 static func
    Enlace a esta entradastatic func _unb64(s: String) -> PackedByteArray
    Parámetros
    • s: String
    Devuelve
    PackedByteArray

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:48
  • SaveGame.save static func
    Enlace a esta entradastatic func save(sim: Sim, path: String) -> Error
    Parámetros
    • sim: Sim
    • path: String
    Devuelve
    Error
    Llama a
    Mods.save_state, Town.size_of

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:54
  • SaveGame.load_sim static func
    Enlace a esta entradastatic func load_sim(path: String) -> Sim
    Parámetros
    • path: String
    Devuelve
    Sim
    Llama a
    Data.era_index, Town.restore_annexes, Town.enlarge_old_buildings, Town.recount_all, WorldGen.add_rig_docks, Data.has_model, Data.reliability, Vehicle.make_seg, Vehicle.free_seg, AiPlayer.from_dict, Goals.from_dict, Goals.caught_up, Mods.load_state, Mods.hook

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:177
  • SaveGame._order_out static funcAn order as saved: [station id, full, then each of Vehicle.ORDER_FLAGS].
    Enlace a esta entradastatic func _order_out(o: Dictionary) -> Array
    Parámetros
    • o: Dictionary
    Devuelve
    Array
    Declarado en scripts/sim/save_game.gd:532
  • SaveGame._order_in static funcAn order back from row (see _order_out), at station st.
    Enlace a esta entradastatic func _order_in(row: Array, st: Station) -> Dictionary

    Flags an older save didn't have are off.

    Parámetros
    • row: Array
    • st: Station
    Devuelve
    Dictionary
    Declarado en scripts/sim/save_game.gd:540
  • SaveGame._floats static func
    Enlace a esta entradastatic func _floats(src: Dictionary) -> Dictionary
    Parámetros
    • src: Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:547
  • SaveGame._ints static func
    Enlace a esta entradastatic func _ints(d: Dictionary) -> Dictionary
    Parámetros
    • d: Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:554
  • SaveGame._pairs static funccargo -> [units, $]
    Enlace a esta entradastatic func _pairs(d: Dictionary) -> Dictionary
    Parámetros
    • d: Dictionary
    Devuelve
    Dictionary
    Declarado en scripts/sim/save_game.gd:562
  • SaveGame._stat_month static func
    Enlace a esta entradastatic func _stat_month(mo: Dictionary) -> Dictionary
    Parámetros
    • mo: Dictionary
    Devuelve
    Dictionary

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:569
  • SaveGame._course_out static funcA ship's course (see Vehicle.water_course) as [x, y, turn, x, y, turn, ...] over its route.
    Enlace a esta entradastatic func _course_out(v: Vehicle) -> Array
    Parámetros
    • v: Vehicle
    Devuelve
    Array
    Declarado en scripts/sim/save_game.gd:585
  • SaveGame._course_in static func
    Enlace a esta entradastatic func _course_in(v: Vehicle, a: Array) -> void
    Parámetros
    • v: Vehicle
    • a: Array
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/save_game.gd:596

SignalTraps

  • SignalTraps._memo_key static var
    Enlace a esta entradastatic var _memo_key := []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/signal_traps.gd:17
  • SignalTraps._memo static var
    Enlace a esta entradastatic var _memo: Array = []

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/signal_traps.gd:18
  • SignalTraps.find static funcThe stations of who that one-way signals shut: [{"station", "way": "out" | "in", "signal"}], one per station ("out" when both are true), the order of map.stations.
    Enlace a esta entradastatic func find(sim: Sim, who: Company, over: Dictionary = {}) -> Array

    signal is the tile of the first signal in the way, seen from the station. over ({tile: state}) stands in for those tiles' signals (see WorldMap.signals), to ask what a click would do; without it the answer is remembered until the rail network, the stations or the depots change.

    Parámetros
    • sim: Sim
    • who: Company
    • over: Dictionary = {}
    Devuelve
    Array
    Declarado en scripts/sim/signal_traps.gd:26
  • SignalTraps.after_click static funcWhat setting the signal on t to state would change: {"shut": [...], "freed": [...]}, each in find's form, "shut" for stations it would shut that are open now and "freed" for those it would open again.
    Enlace a esta entradastatic func after_click(sim: Sim, who: Company, t: Vector2i, state: int) -> Dictionary

    A station that stays shut (say, the far end of a line made one-way) isn't news.

    Parámetros
    • sim: Sim
    • who: Company
    • t: Vector2i
    • state: int
    Devuelve
    Dictionary
    Declarado en scripts/sim/signal_traps.gd:64
  • SignalTraps.text static funcOne of find's rows in words.
    Enlace a esta entradastatic func text(r: Dictionary, when: String) -> String

    when: "careful" (what the click under the mouse would do), "now" (what the click just did), "freed" (what the click would put right) or "problem" (a Problems row, which names the station already).

    Parámetros
    • r: Dictionary
    • when: String
    Devuelve
    String
    Llama a
    L.t
    Declarado en scripts/sim/signal_traps.gd:73
  • SignalTraps.blocker static funcThe tile of the one-way signal that keeps trains from getting between tiles and any of the goals tiles - out of tiles or, with inward, into them - or (-1, -1) when they can, or when there is no track between them at all.
    Enlace a esta entradastatic func blocker(m: WorldMap, tiles: Dictionary, goals: Dictionary, inward: bool, over: Dictionary = {}) -> Vector2i
    Parámetros
    • m: WorldMap
    • tiles: Dictionary
    • goals: Dictionary
    • inward: bool
    • over: Dictionary = {}
    Devuelve
    Vector2i
    Declarado en scripts/sim/signal_traps.gd:92
  • SignalTraps._passes static funcWhether a train heading h (or, inward, heading the other way) may pass tile n's signal.
    Enlace a esta entradastatic func _passes(m: WorldMap, n: Vector2i, h: int, inward: bool, over: Dictionary) -> bool
    Parámetros
    • m: WorldMap
    • n: Vector2i
    • h: int
    • inward: bool
    • over: Dictionary
    Devuelve
    bool
    Llama a
    Const.opp
    Declarado en scripts/sim/signal_traps.gd:104
  • SignalTraps._flood static funcFlood the rail network outward from tiles until one of goals is reached.
    Enlace a esta entradastatic func _flood(m: WorldMap, tiles: Dictionary, goals: Dictionary, obey: bool, inward: bool, over: Dictionary) -> Array

    Returns the steps from the start to that goal, [{"t": tile, "h": heading on entering it}], or [] when none is reached. obey false lets trains through one-way signals both ways.

    Parámetros
    • m: WorldMap
    • tiles: Dictionary
    • goals: Dictionary
    • obey: bool
    • inward: bool
    • over: Dictionary
    Devuelve
    Array
    Llama a
    Const.opp
    Declarado en scripts/sim/signal_traps.gd:112
  • SignalTraps._step static func
    Enlace a esta entradastatic func _step(m: WorldMap, tile: Vector2i, d: int, bits: int, from: int, obey: bool, inward: bool, over: Dictionary, came: Dictionary, queue: PackedInt32Array) -> void
    Parámetros
    • m: WorldMap
    • tile: Vector2i
    • d: int
    • bits: int
    • from: int
    • obey: bool
    • inward: bool
    • over: Dictionary
    • came: Dictionary
    • queue: PackedInt32Array
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/signal_traps.gd:142
  • SignalTraps._minus static func
    Enlace a esta entradastatic func _minus(a: Array, b: Array) -> Array
    Parámetros
    • a: Array
    • b: Array
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/signal_traps.gd:156

TerrainGen

  • TerrainGen.generate static funcTerrain only (no towns or industries).
    Enlace a esta entradastatic func generate(m: WorldMap, seed_value: int) -> void

    WorldGen.generate builds a full world.

    Parámetros
    • m: WorldMap
    • seed_value: int
    Devuelve
    void
    Declarado en scripts/sim/terrain_gen.gd:7
  • TerrainGen.heights_from_image static funcHeights from a greyscale image (white = high, black = sea), like OpenTTD heightmaps.
    Enlace a esta entradastatic func heights_from_image(m: WorldMap, path: String) -> bool
    Parámetros
    • m: WorldMap
    • path: String
    Devuelve
    bool
    Declarado en scripts/sim/terrain_gen.gd:14
  • TerrainGen.generate_heights static funcwater: sea level 0 (low) ..
    Enlace a esta entradastatic func generate_heights(m: WorldMap, seed_value: int, water: int = 1, rough: int = 2, sample_scale: float = 1.0) -> void

    3 (islands). rough: 0 flat .. 3 mountainous. sample_scale stretches the noise so a small preview map shows the same world as a big one.

    Parámetros
    • m: WorldMap
    • seed_value: int
    • water: int = 1
    • rough: int = 2
    • sample_scale: float = 1.0
    Devuelve
    void
    Declarado en scripts/sim/terrain_gen.gd:30
  • TerrainGen.enforce_slopes static funcLower corners until every pair of edge-adjacent corners differs by at most one level.
    Enlace a esta entradastatic func enforce_slopes(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void
    Declarado en scripts/sim/terrain_gen.gd:73
  • TerrainGen.classify static funcTerrain types (from heights) and tree cover.
    Enlace a esta entradastatic func classify(m: WorldMap, seed_value: int) -> void
    Parámetros
    • m: WorldMap
    • seed_value: int
    Devuelve
    void
    Declarado en scripts/sim/terrain_gen.gd:100
  • TerrainGen.terrain_type static func
    Enlace a esta entradastatic func terrain_type(m: WorldMap, x: int, y: int) -> int
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/terrain_gen.gd:123
  • TerrainGen.classify_tile static funcRe-derive one tile's terrain after its corners changed; trees only survive on grass.
    Enlace a esta entradastatic func classify_tile(m: WorldMap, x: int, y: int) -> void
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    void
    Declarado en scripts/sim/terrain_gen.gd:138
  • TerrainGen._near_water static func
    Enlace a esta entradastatic func _near_water(m: WorldMap, x: int, y: int) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/terrain_gen.gd:145

UndoStack

  • UndoStack.MAX_STEPS const
    Enlace a esta entradaconst MAX_STEPS := 20

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:23
  • UndoStack.MAX_AGE_DAYS const
    Enlace a esta entradaconst MAX_AGE_DAYS := 60.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:24
  • UndoStack.steps varoldest first
    Enlace a esta entradavar steps: Array = []Declarado en scripts/sim/undo.gd:29
  • UndoStack.enabled var
    Enlace a esta entradavar enabled := true

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:30
  • UndoStack.lost varThe step that was given up last, for the button's tooltip: {"what", "why"}.
    Enlace a esta entradavar lost := {}

    Emptied by the next action.

    Declarado en scripts/sim/undo.gd:32
  • UndoStack.clear func
    Enlace a esta entradafunc clear() -> void
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:35
  • UndoStack.size func
    Enlace a esta entradafunc size() -> int
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:40
  • UndoStack._tile static func
    Enlace a esta entradastatic func _tile(m: WorldMap, t: Vector2i) -> Array
    Parámetros
    • m: WorldMap
    • t: Vector2i
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:46
  • UndoStack._put static func
    Enlace a esta entradastatic func _put(m: WorldMap, t: Vector2i, s: Array) -> void
    Parámetros
    • m: WorldMap
    • t: Vector2i
    • s: Array
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:52
  • UndoStack._station static func
    Enlace a esta entradastatic func _station(m: WorldMap, st: Station) -> Array
    Parámetros
    • m: WorldMap
    • st: Station
    Devuelve
    Array

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:83
  • UndoStack._orders_to static func
    Enlace a esta entradastatic func _orders_to(sim: Sim, st: Station) -> int
    Parámetros
    • sim: Sim
    • st: Station
    Devuelve
    int

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:89
  • UndoStack.bulldoze_tiles static funcEvery tile a bulldoze of rect may change: the area and its edge (a depot lets go of the road in front of it), the whole of each bridge or tunnel it reaches and of each airfield.
    Enlace a esta entradastatic func bulldoze_tiles(m: WorldMap, rect: Rect2i) -> Array
    Parámetros
    • m: WorldMap
    • rect: Rect2i
    Devuelve
    Array
    Llama a
    WorldMap.crossing_tiles, Town.footprint, Town.anchor_of
    Declarado en scripts/sim/undo.gd:100
  • UndoStack.terraform_tiles static funcEvery tile raising or lowering corners may change (see BuildOps.apply_terraform).
    Enlace a esta entradastatic func terraform_tiles(m: WorldMap, corners: Array) -> Array
    Parámetros
    • m: WorldMap
    • corners: Array
    Devuelve
    Array
    Declarado en scripts/sim/undo.gd:124
  • UndoStack.begin funcCall before an action changes anything.
    Enlace a esta entradafunc begin(sim: Sim, who: Company, tiles: Array, opt: Dictionary = {}) -> Dictionary

    tiles: every tile it may touch (more is fine: tiles that end up unchanged are dropped). opt: "corners" (corner heights it may change), "stations" (stations it may change that don't stand on tiles), "ratings" (it may move council ratings). Returns what commit needs; {} when the action isn't the player's (nothing is recorded then).

    Parámetros
    • sim: Sim
    • who: Company
    • tiles: Array
    • opt: Dictionary = {}
    Devuelve
    Dictionary
    Declarado en scripts/sim/undo.gd:142
  • UndoStack._log_of static func
    Enlace a esta entradastatic func _log_of(t: Town, cid: int) -> Variant
    Parámetros
    • t: Town
    • cid: int
    Devuelve
    Variant

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:171
  • UndoStack.commit funcCall when the action is done and paid for.
    Enlace a esta entradafunc commit(sim: Sim, u: Dictionary, kind: String, info: Dictionary = {}) -> void

    kind and info ("n": how many tiles, "name": a station's or town's name, "category": the ledger line it was paid from) only describe it.

    Parámetros
    • sim: Sim
    • u: Dictionary
    • kind: String
    • info: Dictionary = {}
    Devuelve
    void
    Declarado en scripts/sim/undo.gd:177
  • UndoStack._month static func
    Enlace a esta entradastatic func _month(sim: Sim) -> Vector2i
    Parámetros
    • sim: Sim
    Devuelve
    Vector2i
    Llama a
    Calendar.from_day

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:237
  • UndoStack.describe static funcA step in words: "12 tiles of rail", "Ashford North", "demolition of 3 tiles".
    Enlace a esta entradastatic func describe(step: Dictionary) -> String
    Parámetros
    • step: Dictionary
    Devuelve
    String
    Llama a
    L.n, L.t
    Declarado en scripts/sim/undo.gd:245
  • UndoStack._problem funcWhy the newest step can't be undone now: [reason, given up for good].
    Enlace a esta entradafunc _problem(sim: Sim, step: Dictionary) -> Array

    ["", false] when it can.

    Parámetros
    • sim: Sim
    • step: Dictionary
    Devuelve
    Array
    Llama a
    L.t
    Declarado en scripts/sim/undo.gd:266
  • UndoStack._vehicle_on func
    Enlace a esta entradafunc _vehicle_on(sim: Sim, step: Dictionary) -> bool
    Parámetros
    • sim: Sim
    • step: Dictionary
    Devuelve
    bool

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:299
  • UndoStack._block_held funcWith realistic blocking: whether a train holds (stands in, or has been let into) a block of track that undoing the step would take away.
    Enlace a esta entradafunc _block_held(sim: Sim, step: Dictionary) -> bool
    Parámetros
    • sim: Sim
    • step: Dictionary
    Devuelve
    bool
    Declarado en scripts/sim/undo.gd:320
  • UndoStack.status funcFor the Undo button: {"can", "what", "money" (what undoing pays back), "tip"}.
    Enlace a esta entradafunc status(sim: Sim) -> Dictionary

    A step that can never be undone again is dropped here, with everything older.

    Parámetros
    • sim: Sim
    Devuelve
    Dictionary
    Llama a
    L.t, Fmt.money
    Declarado en scripts/sim/undo.gd:340
  • UndoStack.undo funcUndo the newest step.
    Enlace a esta entradafunc undo(sim: Sim) -> Dictionary

    Returns {"ok", "text" (what to tell the player), "what", "money"}.

    Parámetros
    • sim: Sim
    Devuelve
    Dictionary
    Llama a
    L.t, Fmt.money
    Declarado en scripts/sim/undo.gd:362
  • UndoStack._revert func
    Enlace a esta entradafunc _revert(sim: Sim, step: Dictionary) -> void
    Parámetros
    • sim: Sim
    • step: Dictionary
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/undo.gd:376

WorldGen

  • WorldGen.DENSITY constOptions: "water" 0..3 (sea level), "rough" 0..3 (terrain), "towns" / "industries" 0..3 (density), "heightmap" (path to a greyscale image, OpenTTD-style).
    Enlace a esta entradaconst DENSITY := [0.55, 1.0, 1.5, 2.2]Declarado en scripts/sim/world_gen.gd:8
  • WorldGen.INDUSTRY_AREA constTiles of land (or sea) that hold one full set of Data.INDUSTRY counts at normal density: 24 industries here is about one per 600 tiles.
    Enlace a esta entradaconst INDUSTRY_AREA := 120.0 * 120.0Declarado en scripts/sim/world_gen.gd:11
  • WorldGen.FEED_MIN constHow far (in tiles) a processing industry is sited from the producers that feed it: far enough for a route to pay, near enough for an early train or lorry.
    Enlace a esta entradaconst FEED_MIN := 18.0Declarado en scripts/sim/world_gen.gd:14
  • WorldGen.FEED_MAX const
    Enlace a esta entradaconst FEED_MAX := 50.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:15
  • WorldGen.SAME_APART_MAX constUpper bound on how far apart two industries of one type are kept (see _place_industries).
    Enlace a esta entradaconst SAME_APART_MAX := 32.0Declarado en scripts/sim/world_gen.gd:17
  • WorldGen.SPREAD_TRIES constUsable sites weighed for each industry placed at random; the one farthest from its own kind wins.
    Enlace a esta entradaconst SPREAD_TRIES := 8Declarado en scripts/sim/world_gen.gd:19
  • WorldGen.TOWN_SITE_TOWNS constAn industry that stands by a town (a printing works) looks around the biggest few towns, up to TOWN_SITE_MAX tiles from the centre.
    Enlace a esta entradaconst TOWN_SITE_TOWNS := 4Declarado en scripts/sim/world_gen.gd:22
  • WorldGen.TOWN_SITE_MAX const
    Enlace a esta entradaconst TOWN_SITE_MAX := 16.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:23
  • WorldGen.TOWN_INDUSTRY_MIN constHow far (in tiles) a town centre is founded from an industry's centre, so the town starts with room to grow before it meets the ground kept clear around the industry (BuildOps.INDUSTRY_GAP).
    Enlace a esta entradaconst TOWN_INDUSTRY_MIN := 14.0Declarado en scripts/sim/world_gen.gd:26
  • WorldGen.TOWN_INDUSTRY_FALLBACK const
    Enlace a esta entradaconst TOWN_INDUSTRY_FALLBACK := 10.0

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:27
  • WorldGen.TOWN_EXTRA const
    Enlace a esta entradaconst TOWN_EXTRA

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:28
  • WorldGen.generate static func
    Enlace a esta entradastatic func generate(m: WorldMap, seed_value: int, opts: Dictionary = {}) -> void
    Parámetros
    • m: WorldMap
    • seed_value: int
    • opts: Dictionary = {}
    Devuelve
    void
    Llama a
    Data.era_index, L.t, TerrainGen.heights_from_image, TerrainGen.generate_heights, TerrainGen.classify

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:31
  • WorldGen.add_rig_docks static funcEvery industry out at sea gets its own open dock (see BuildOps.add_rig_dock).
    Enlace a esta entradastatic func add_rig_docks(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void
    Llama a
    BuildOps.add_rig_dock
    Declarado en scripts/sim/world_gen.gd:57
  • WorldGen._place_industries static func
    Enlace a esta entradastatic func _place_industries(m: WorldMap, rng: RandomNumberGenerator, density: float = 1.0) -> void
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • density: float = 1.0
    Devuelve
    void
    Llama a
    Data.opens, Data.accepts

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:65
  • WorldGen._place_town_industries static funcThe kinds that stand by a town (a printing works, RAIL-31), once the towns are founded: on ground the towns have left clear, levelled like an industry opening during the game.
    Enlace a esta entradastatic func _place_town_industries(m: WorldMap, rng: RandomNumberGenerator, density: float) -> void
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • density: float
    Devuelve
    void
    Llama a
    Data.opens
    Declarado en scripts/sim/world_gen.gd:84
  • WorldGen._place_kind static funcPut down a new map's industries of type (see type_count) and return them.
    Enlace a esta entradastatic func _place_kind(m: WorldMap, rng: RandomNumberGenerator, room: Vector2i, type: String, density: float) -> Array
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • room: Vector2i
    • type: String
    • density: float
    Devuelve
    Array
    Declarado en scripts/sim/world_gen.gd:93
  • WorldGen.industry_room static funcThe room there is to build industries in: x land tiles (for industries ashore), y open water (for those at sea).
    Enlace a esta entradastatic func industry_room(m: WorldMap) -> Vector2i

    Sampled every other tile, which is plenty for a head count.

    Parámetros
    • m: WorldMap
    Devuelve
    Vector2i
    Declarado en scripts/sim/world_gen.gd:110
  • WorldGen.type_count static funcHow many industries of type a map with room (see industry_room) gets at density: counts follow the room there is to build in, and every type gets at least one.
    Enlace a esta entradastatic func type_count(room: Vector2i, type: String, density: float) -> int
    Parámetros
    • room: Vector2i
    • type: String
    • density: float
    Devuelve
    int
    Declarado en scripts/sim/world_gen.gd:124
  • WorldGen.spacing static funcHow far apart count industries of type are kept.
    Enlace a esta entradastatic func spacing(room: Vector2i, type: String, count: int) -> float

    Two of a kind side by side look like a mistake and split one area's trade between them: keep each a fair share of its own type's room apart (half the even spacing, capped so a rare processor can still sit near its feeders).

    Parámetros
    • room: Vector2i
    • type: String
    • count: int
    Devuelve
    float
    Declarado en scripts/sim/world_gen.gd:132
  • WorldGen.find_site static funcWhere a new industry of type goes: near producers in unserved (see unserved_feeders) that have nobody to take their cargo, if any; else near producers none of its own kind is near yet (a paper mill by forests that already have a sawmill); else anywhere, as far from its own kind as it can.
    Enlace a esta entradastatic func find_site(m: WorldMap, rng: RandomNumberGenerator, type: String, apart: float, unserved: Array) -> Vector3i

    A plant that needs every input (Data.INDUSTRY "needs_all") goes where it reaches makers of as many of its inputs as it can. A kind that stands by a town (a printing works) goes at the edge of one of the biggest. (x, y) is the north-west tile and z the level it stands at; z is -1 when no usable site turned up.

    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • type: String
    • apart: float
    • unserved: Array
    Devuelve
    Vector3i
    Declarado en scripts/sim/world_gen.gd:144
  • WorldGen.put_industry static funcPut an industry of type with id id on spot (from find_site): the ground under it flattened to its level (the corners only: the caller works out the rest), added to the map's list and its tiles.
    Enlace a esta entradastatic func put_industry(m: WorldMap, id: int, type: String, spot: Vector3i) -> Industry

    Returns it.

    Parámetros
    • m: WorldMap
    • id: int
    • type: String
    • spot: Vector3i
    Devuelve
    Industry
    Declarado en scripts/sim/world_gen.gd:162
  • WorldGen._site_level static funcThe level a site kind of industry would stand at with its north-west tile on (x, y): 0 at sea, the flattened ground level ashore, -1 where it can't go.
    Enlace a esta entradastatic func _site_level(m: WorldMap, site: String, x: int, y: int) -> int
    Parámetros
    • m: WorldMap
    • site: String
    • x: int
    • y: int
    Devuelve
    int
    Declarado en scripts/sim/world_gen.gd:178
  • WorldGen.unserved_feeders static funcIndustries making something type accepts that have no taker within FEED_MAX tiles yet.
    Enlace a esta entradastatic func unserved_feeders(m: WorldMap, type: String) -> Array

    For a plant that needs every input, all of them, taken or not: it can't work on one alone.

    Parámetros
    • m: WorldMap
    • type: String
    Devuelve
    Array
    Llama a
    Data.accepts
    Declarado en scripts/sim/world_gen.gd:189
  • WorldGen._feeders_of_own static funcIndustries making something type accepts that have no industry of type within FEED_MAX tiles: for a second customer of a cargo (a paper mill, where the forests already have a sawmill).
    Enlace a esta entradastatic func _feeders_of_own(m: WorldMap, type: String) -> Array
    Parámetros
    • m: WorldMap
    • type: String
    Devuelve
    Array
    Llama a
    Data.accepts
    Declarado en scripts/sim/world_gen.gd:225
  • WorldGen._site_near_feeders static funcA site FEED_MIN..FEED_MAX tiles from a producer in unserved and at least apart tiles from any other type: the best of several usable ones, counting how many such producers each would serve (for a plant that needs every input, how many of its inputs they make), then how far it keeps from its own kind.
    Enlace a esta entradastatic func _site_near_feeders(m: WorldMap, rng: RandomNumberGenerator, site: String, type: String, apart: float, unserved: Array) -> Vector3i

    z is -1 when none turned up.

    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • site: String
    • type: String
    • apart: float
    • unserved: Array
    Devuelve
    Vector3i
    Llama a
    Data.accepts
    Declarado en scripts/sim/world_gen.gd:239
  • WorldGen._site_spread static funcA usable site anywhere on the map: of SPREAD_TRIES random ones, the farthest from other industries of type (best-candidate sampling, which spreads them out without a hard rule that could leave one unplaced).
    Enlace a esta entradastatic func _site_spread(m: WorldMap, rng: RandomNumberGenerator, site: String, type: String) -> Vector3i

    z is -1 when no usable site turned up.

    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • site: String
    • type: String
    Devuelve
    Vector3i
    Declarado en scripts/sim/world_gen.gd:286
  • WorldGen._site_by_town static funcA site by one of the TOWN_SITE_TOWNS biggest towns, at least apart tiles from any other type: the usable one nearest the centre of the biggest town that has any within TOWN_SITE_MAX tiles, so it stands at the edge of town or in a gap inside it.
    Enlace a esta entradastatic func _site_by_town(m: WorldMap, rng: RandomNumberGenerator, type: String, apart: float) -> Vector3i

    z is -1 when none turned up.

    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • type: String
    • apart: float
    Devuelve
    Vector3i
    Declarado en scripts/sim/world_gen.gd:309
  • WorldGen.level_ground static funcThe ground of an industry put down where the land is already shaped (one opening during the game, or one by a town once the towns are founded): no trees on it or around it, its corners at the level put_industry flattened them to, and its tiles looked at again.
    Enlace a esta entradastatic func level_ground(m: WorldMap, ind: Industry) -> Rect2i

    Returns the tiles that changed.

    Parámetros
    • m: WorldMap
    • ind: Industry
    Devuelve
    Rect2i
    Llama a
    TerrainGen.classify_tile
    Declarado en scripts/sim/world_gen.gd:334
  • WorldGen._gap_to_kind static funcDistance from c to the nearest industry of type, INF when there is none yet.
    Enlace a esta entradastatic func _gap_to_kind(m: WorldMap, type: String, c: Vector2) -> float
    Parámetros
    • m: WorldMap
    • type: String
    • c: Vector2
    Devuelve
    float
    Declarado en scripts/sim/world_gen.gd:348
  • WorldGen._sea_site_ok static funcOffshore: open water all over the footprint and a margin, with a shore close enough for a dock.
    Enlace a esta entradastatic func _sea_site_ok(m: WorldMap, x: int, y: int) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    bool
    Declarado en scripts/sim/world_gen.gd:357
  • WorldGen._near_coast static funcA harbour sits on the shore: open water within a couple of tiles of its footprint.
    Enlace a esta entradastatic func _near_coast(m: WorldMap, x: int, y: int) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    bool
    Declarado en scripts/sim/world_gen.gd:380
  • WorldGen._industry_site_level static funcReturns the level the footprint can be flattened to, or -1 if the site is unusable.
    Enlace a esta entradastatic func _industry_site_level(m: WorldMap, x: int, y: int) -> int

    Flattening only lowers corners by one, and only where that keeps neighbours within one level.

    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    int
    Declarado en scripts/sim/world_gen.gd:391
  • WorldGen._site_clear static funcNothing built on the footprint of an industry with its north-west tile on (x, y), or by it: no road, track, bridge or tunnel within a tile (flattening reshapes the ground there), and no building, station or depot within BuildOps.INDUSTRY_GAP (the ground towns keep clear around industries).
    Enlace a esta entradastatic func _site_clear(m: WorldMap, x: int, y: int) -> bool

    This is for industries opening during the game (RAIL-23): when the world is made, nothing is built yet but other industries, and those keep further apart than this anyway.

    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    Devuelve
    bool
    Declarado en scripts/sim/world_gen.gd:419
  • WorldGen._name_industries static func
    Enlace a esta entradastatic func _name_industries(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:433
  • WorldGen.industry_name static funcAn industry is named after the nearest town: "Ashford Coal Mine".
    Enlace a esta entradastatic func industry_name(m: WorldMap, ind: Industry) -> String
    Parámetros
    • m: WorldMap
    • ind: Industry
    Devuelve
    String
    Llama a
    L.t, L.tidy
    Declarado en scripts/sim/world_gen.gd:439
  • WorldGen._place_towns static func
    Enlace a esta entradastatic func _place_towns(m: WorldMap, rng: RandomNumberGenerator, density: float = 1.0, opts: Dictionary = {}) -> void
    Parámetros
    • m: WorldMap
    • rng: RandomNumberGenerator
    • density: float = 1.0
    • opts: Dictionary = {}
    Devuelve
    void
    Llama a
    L.t, Town.pick_style

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:453
  • WorldGen._town_site_ok static func
    Enlace a esta entradastatic func _town_site_ok(m: WorldMap, x: int, y: int, spacing: float = 22.0, industry_clear: float = TOWN_INDUSTRY_MIN) -> bool
    Parámetros
    • m: WorldMap
    • x: int
    • y: int
    • spacing: float = 22.0
    • industry_clear: float = TOWN_INDUSTRY_MIN
    Devuelve
    bool
    Llama a
    BuildOps.can_build_house

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:481
  • WorldGen._town_name static func
    Enlace a esta entradastatic func _town_name(rng: RandomNumberGenerator, used: Dictionary) -> String
    Parámetros
    • rng: RandomNumberGenerator
    • used: Dictionary
    Devuelve
    String
    Llama a
    Data.town_prefixes, Data.town_suffixes, L.t

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:502
  • WorldGen._clear_trees static func
    Enlace a esta entradastatic func _clear_trees(m: WorldMap) -> void
    Parámetros
    • m: WorldMap
    Devuelve
    void

    Esta entrada aún no describe el comportamiento.

    Declarado en scripts/sim/world_gen.gd:517

Opciones de archivos

Los nombres de los campos distinguen mayúsculas y minúsculas. Las secciones enlazadas tienen ejemplos y explican el uso de cada archivo.

Archivo o secciónCampos obligatoriosCampos opcionales
mod.jsonidname, version, author, description
data.json → vehicles.<id>name, kind, cargos, speed, cost y run. Usa look o model y, según el tipo, max_wagons para locomotoras o cap para el resto.desc, year, rel, electric, steam, length
data.json → cargo.<id>Identificador de carga existenterate, days
data.json → town_namesNingunoprefixes, suffixes, replace
data.json → company_namesLista de nombresNinguno
maps/<name>.jsonNingunoname, description, settings

En settings, se admiten w y h (64, 128, 256, 512, 1024), year (1950, 1960, 1970, 1980, 1990, 2000), y towns, industries, rough y water (índices de 0 a 3). rough va de llano a montañoso. water va de bajo a islas, pasando por normal y alto.

El campo booleano steam activa los efectos y el comportamiento de una locomotora de vapor. length indica la longitud en casillas de un modelo personalizado.

El diccionario Sim.options contiene cost, blocking, ai_level, max_loan, depots, breakdowns y goal. Son opciones de la simulación. Para los mods de mapas, usa los campos de settings de arriba.

Identificadores de carga

IDNombre
paxPassengers
coalCoal
woodWood
grainGrain
oilOil
goodsGoods
foodFood
iron_oreIron ore
steelSteel
fishFish
mailMail
plasticsPlastics
wasteWaste
electronicsElectronics
carsCars
paperPaper
newsNewspapers

Modelos del juego base

IDNombreTipo
cargoplanePelican Freighterair
cargopropStork Cargo Propair
eplaneBreeze Electric Commuterair
h2linerAurora H2 Airlinerair
jetAlbatross Jetair
jumboCondor Jumboair
mailplanePetrel Mailplaneair
narrowbodyFalcon Narrowbodyair
propSkylark Propair
regionalSwift Regional Jetair
superjumboLeviathan Double-Deckair
supersonicArrow Supersonicair
turbopropKittiwake Turbopropair
widebodyOsprey Widebodyair
dieselMeridian Dieselrail
efreightTempest Electric Freightrail
electricAurora Electricrail
expressVanguard Expressrail
heavydieselIronclad Freight Dieselrail
hstSwift High-Speedrail
hydrogenZephyr Hydrogenrail
mogulHighland Mogulrail
railcarSparrow Railcarrail
steamKestrel Steamrail
tankBrigand Tank Enginerail
tiltingSwallow Tilting Expressrail
artbusComet Articulatedroad
busComet City Busroad
bus2Comet Coachroad
cartruckAtlas Car Transporterroad
ddbusComet Double-Deckerroad
ebusVolt Electric Busroad
etruckVolt Electric Truckroad
roadtrainTitan Road Trainroad
truckAtlas Haulerroad
truck2Atlas Hauler Mk IIroad
truck3Atlas Hauler Mk IIIroad
bulkerGranite Bulk Carrierwater
containerAtlas Box Carrierwater
eferryRipple Electric Ferrywater
ferryGull Ferrywater
freighterTern Freighterwater
hydrofoilSkimmer Hydrofoilwater
linerMajestic Linerwater
tankerPetrel Tankerwater