[1.12.26] Transportation System Extension

Find tutorials, documentation, and resources for creating and using TheoTown plugins.
Previous topicNext topic
User avatar
Lobby
Inhabitant of a Supercluster
Reactions:
Posts: 3756
Joined: 26 Oct 2008, 10:34
Plugins: Showcase Store

[1.12.26] Transportation System Extension

Post by Lobby » 22 Sep 2025, 12:08

image.png
The newly introduced transportation update features the following built-in transportation systems:
  • Buses
  • Passenger Trains
  • Freight Trains
  • Elevated Train
  • Metro
While these modes of transportation existed before the update they now feature the ability to manage routes, stations and vehicles. Even better, you can now extend these systems with more buildings or vehicles via plugins.



Technical Aspects
These transportation systems all have in common that they are based on roads and cars. Even the elevated train that historically was implemented differently is now based on roads and cars (you didn't notice? great, that means that the automatic migration works.) What this means is that the process of adding new buldings, (bus)stops or vehicles looks quite similar for all systems. The only differences are road flags and tags which are used to assign the objects to the systems. Building types play a minor role in this implementation and were picked as appropriate.



Vehicles
Vehicles are implemented as Cars. Car chains are supported and can be used to model long buses and trains. So to add a vehicle to a system you first have to implement it as a car.

Add the attributes "capacity" (amount of people that fit into the vehicle) and "speed" (a speed factor, 1 is the default car speed):

Code: Select all

    "capacity": 20,
    "speed": 0.9
You can also set a price, but by default the game will set a minimum value based on stats automatically.

After that, add the specifics of the system that you want to target:
  • Buses

    Code: Select all

        "flag normal": false,
        "flag bus": true,
        "meta": {"tags": {"ts_normal_bus": {}}}
  • Passenger Trains

    Code: Select all

        "flag normal": false,
        "flag train": true,
        "meta": {"tags": {"short_distance_passenger_train": {}}}
  • Freight Trains

    Code: Select all

        "flag normal": false,
        "flag train": true,
        "meta": {"tags": {"freight_train": {}}}
  • Elevated Train

    Code: Select all

        "flag normal": false,
        "flag elevated train": true,
        "meta": {"tags": {"elevated_train": {}}}
  • Metro

    Code: Select all

        "flag normal": false,
        "flag subway": true,
        "meta": {"tags": {"metro_train": {}}}
It is crucial to use the correct flags otherwise your cars may not be spawnable.



Station buildings
Buildings can act as a station in a transportation system. There are two types of station buildings:
  • Glue - They don't act as a station on their own but only if a spawn station is nearby; can "glue" nearby buildings together to form a single station; for example used for train stations
  • Spawn - The actual building that spawns vehicles. A composited station usually has only a few spawn buildings and many glue buildings
Station buildings can define "capacity". The sum of capacities of all station buildings of a station gets used as its total capacity. The monthly price of a station building gets accounted to the associated transportation system.
  • Buses
    As of right now (1.12.27) station buildings are not supported for buses
  • Passenger Trains - Glue

    Code: Select all

        "type": "decoration",
        "meta": {"tags": {"passenger_train_platform": {}}}
    
  • Passenger Trains - Spawn

    Code: Select all

        "type": "railway station",
        "influence passenger train":80,
        "meta": {"tags": {"short_distance_passenger_train_station": {}}}
    
  • Freight Trains - Glue

    Code: Select all

        "type": "decoration",
        "meta": {"tags": {"passenger_train_platform": {}}}
    
  • Freight Trains - Spawn

    Code: Select all

        "type": "railway station",
        "influence passenger train":80,
        "meta": {"tags": {"freight_train_station": {}}}
    
  • Elevated Train - Glue

    Code: Select all

        "type": "railway station",
        "meta": {"tags": {"elevated_train_platform": {}}}
    
  • Elevated Train - Spawn

    Code: Select all

        "type": "railway station",
        "influence passenger train": 20,
        "car min level": 2,
        "car max level": 2,
        "meta": {"tags": {"elevated_train_station": {}}}
    
  • Metro - Glue

    Code: Select all

        "type": "railway station",
        "meta": {"tags": {"metro_platform": {}}}
    
  • Metro - Spawn

    Code: Select all

        "type": "railway station",
        "influence passenger train":25,
        "car min level": -2,
        "car max level": -2,
        "meta": {"tags": {"metro_station": {}}}
    
Note how the "influence passenger train" influence gets used as a general influence for public transport. The game internally distingishes between passenger and freight transport, through.



(Bus) Stops
Bus stops are small stops that can be placed directly on "road". From the point of view of the transportation system they are stations. Nearby bus stops will be merged to a single station. Bus stops can define a capacity that is used as the max amount of people that can wait there at a time. Their monthly price will be displayed as spending for the transportation system. As of right now (version 1.12.27) only the following transportation systems support defining bus stops:
  • Buses

    Code: Select all

        "influence passenger bus": 30,
        "meta": {"tags": {"default_busstop": {}}}
    
  • Elevated Train

    Code: Select all

        "influence passenger bus": 30,
        "required flag normal": false,
        "required flag elevated train": true,
        "meta": {"tags": {"elevated_train_busstop": {}}}
Note that "influence passenger bus" is used to express public transport influence for all of them.



Depots
The bus and metro transportation system rely on depot buildings that provide space for vehicles. Using the "depot capacity" attribute they define the amount of vehicles that the depot can house.
  • Buses

    Code: Select all

        "type": "bus depot",
        "meta": {"tags": {"bus depot": {}}}
    
  • Metro

    Code: Select all

        "type": "railway station",
        "meta": {"tags": {"metro_depot": {}}}
    
Station buildings can be used as depot building for the same transportation system at the same time.



Roads & Rails
You can define roads and rails as regular roads by setting the corresponding flags from the cars above.



Category & Requirements
For simplicity the default categories and (rank) requirements in the code listings above were omitted. To be consistent with the in-game content you should define requirements so they are at least as strict as the defaults:
  • Buses

    Code: Select all

        "category": "$cat_bus00",
        "requirements":[{"type": "RANK", "lvl": 3}]
    
  • Passenger & Freight Trains

    Code: Select all

        "category": "$cat_train00",
        "requirements": [{"type": "RANK", "lvl": 6}]
    
  • Elevated Train

    Code: Select all

        "category": "$cat_elevatedtrain00",
        "requirements": [{"type": "RANK", "lvl": 9}]
    
  • Metro

    Code: Select all

        "category": "$cat_metro00",
        "requirements": [{"type": "RANK", "lvl": 15}]
    


Caveats
image.png
The player may disable the new transportation system for buses to keep using the old, level based system. In this case your custom buses won't be used.

You should avoid defining a station building or bus stop for multiple transportation systems at the same time. This would mix up accouting or may lead to incompatible road flags.
You do not have the required permissions to view the files attached to this post.
User avatar
Yakka Works
Inhabitant of a Conurbation
Reactions:
Posts: 412
Joined: 06 Jan 2020, 07:57
Location: Java-indonesia
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by Yakka Works » 22 Sep 2025, 16:16

Just a quick question,does the glue station tag is explicitly decoration type only?
User avatar
IlikeBurgerHam
Settler
Reactions:
Posts: 7
Joined: 08 Jun 2020, 02:11
Location: Philippines
Plugins: Showcase Store

Platform

Re: [1.12.26] Transportation System Extension

Post by IlikeBurgerHam » 26 Sep 2025, 17:46

Hello, I just wanted to ask how you could create an elevated railway station with the current system?
I tried making one but it didn't connect with the elevated rails even after trying out compositions.

My code so far is this:

Code: Select all    Reset

[ { "id":"$RedLineRoof00", "type":"animation", "frames":[{"bmp": "Station 1 Roof.png", "x":0, "w":32, "h":19}] }, { "id":"$RedLineRoof01", "type":"animation", "frames":[{"bmp": "Station 1 Roof.png", "x":32, "w":32, "h":19}] }, { "id":"RedLineFacade", "type":"railway station", "title":"0", "category":"$cat_elevatedtrain00", "requirements":[{"type": "RANK", "lvl": 9}], "influence passenger train": 20, "car min level":2, "car max level":2, "frames":[ {"bmp": "Red Facade.png", "y":0, "w":32,"count": 2}, ], "width":1, "height":1, "draw ground":"true", "animation":[ {"id":"$RedLineRoof00", "X":0, "y":44} ], "capacity": 50, "meta":{"tags": { "elevated_train_busstop":{}, "elevated_train_platform": {}, "elevated_train_station": {} } } } ]
JSON checker
Check
User avatar
JustAnyone
Honorary Contributor
Reactions:
Posts: 3664
Joined: 23 Jul 2017, 10:45
Location: Easter Island
Plugins: Showcase Store

Platform

Re: [1.12.26] Transportation System Extension

Post by JustAnyone » 27 Sep 2025, 16:06

Yakka wrote: 22 Sep 2025, 16:16 Just a quick question,does the glue station tag is explicitly decoration type only?
No, station glue can be any type of building draft.
User avatar
JustAnyone
Honorary Contributor
Reactions:
Posts: 3664
Joined: 23 Jul 2017, 10:45
Location: Easter Island
Plugins: Showcase Store

Platform

Re: [1.12.26] Transportation System Extension

Post by JustAnyone » 27 Sep 2025, 16:28

IlikeBurgerHam wrote: 26 Sep 2025, 17:46 Hello, I just wanted to ask how you could create an elevated railway station with the current system?
I tried making one but it didn't connect with the elevated rails even after trying out compositions.
<...>
The answer depends on what kind of elevated railway station you want to accomplish. The updated elevated train stations are compositions that place glue buildings, roads that act as rail, and the station itself. Station can be either a station building or station "bus stop".
image.png
For your convenience, here's the definition of each station building and the rail itself:

Regular station

Code: Select all    Reset

{ "id": "$elevated_train_station00", "type": "railway station", "template": "$template_elevated_train_base00", "capacity": 300, "car min level": 2, "car max level": 2, "meta": { "tags": { "elevated_train_station": {} }} }
JSON checker
Check
Urban station

Code: Select all    Reset

{ "id": "$elevated_train_busstop00", "type": "bus stop", "template": "$template_elevated_train_base01", "capacity": 90, // Forbid to be placed only on roads with these flags "required flag normal": false, "required flag elevated train": true, "min level": 2, "max level": 2, "meta": { "tags": { "elevated_train_busstop": {} } } }
JSON checker
Check
Regular Rail (road)

Code: Select all    Reset

{ "id": "$elevated_train_track00", "type": "road", "template": "$template_elevated_train_base00", "min level": 2, "max level": 2, "diagonal cars": true, // Prevents regular roads from connecting "join group": "elevated train track", "flag normal": false, "flag elevated train": true, "allow bus stop": true }
JSON checker
Check
You do not have the required permissions to view the files attached to this post.
Ostrovsk
Townsman
Reactions:
Posts: 42
Joined: 13 Oct 2023, 16:31
Location: Rostov-on-Don
Plugins: Showcase Store
Version: Beta

Re: [1.12.26] Transportation System Extension

Post by Ostrovsk » 30 Sep 2025, 04:50

I would like to clarify that I have an impressive amount of public transport. And I'd like to know. Can I somehow put it into this new system so that my buses that I created can spawn in this depot? And if so, how this can be roughly done, I just don't understand the whole essence of what is happening yet😁☕
User avatar
THEMAX
Inhabitant of a Universe
Reactions:
Posts: 4311
Joined: 14 Sep 2017, 15:30
Location: Astrellia, UHAE
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by THEMAX » 09 Oct 2025, 10:54

Hi !
I saw that new tags had been added for transportation system ? Which are those new ones and can we plugin creators use those yet ? Thanks in advance :)
User avatar
JustAnyone
Honorary Contributor
Reactions:
Posts: 3664
Joined: 23 Jul 2017, 10:45
Location: Easter Island
Plugins: Showcase Store

Platform

Re: [1.12.26] Transportation System Extension

Post by JustAnyone » 09 Oct 2025, 12:54

Eventually, a more in depth documentation will be made, you may see a list of tags here:
https://pca.svetikas.lt/docs/attribute-types/meta/tags/
User avatar
Patchouli Knowledge
Townsman
Reactions:
Posts: 64
Joined: 26 Sep 2020, 07:42

回复:[1.12.26]运输系统扩展

Post by Patchouli Knowledge » 29 Oct 2025, 11:19

I'm curious about how to achieve the built-in color change? I saw that the new version of the monorail allows players to color the vehicle body themselves.
kit is an aslan
Settler
Reactions:
Posts: 1
Joined: 30 Jul 2024, 17:06

Re: [1.12.26] Transportation System Extension

Post by kit is an aslan » 30 Oct 2025, 23:24

Hey quick question is it possible to make a in game transfer station if there is please let me know since I can't find it
User avatar
TheFennekin
Inhabitant of a Galaxy Cluster
Reactions:
Posts: 2714
Joined: 24 Aug 2017, 09:17
Location: honsing around
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by TheFennekin » 14 Nov 2025, 18:41

Is it possible to display a custom preview image for the vehicle?
IMG_20251115_024040.jpg
You do not have the required permissions to view the files attached to this post.
Ostrovsk
Townsman
Reactions:
Posts: 42
Joined: 13 Oct 2023, 16:31
Location: Rostov-on-Don
Plugins: Showcase Store
Version: Beta

Re: [1.12.26] Transportation System Extension

Post by Ostrovsk » 02 Dec 2025, 23:56

Good afternoon everyone. I want to clarify. In the system, it is now impossible to put more than 4 models of transport on one route. Can this be changed now or can it be changed in the future? At least make 10-15 human planes for one route. Especially for large metropolises of a real scale
User avatar
Maxi06
Townsman
Reactions:
Posts: 59
Joined: 23 Mar 2021, 19:28
Location: Argentina
Plugins: Showcase Store

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by Maxi06 » 20 Jan 2026, 01:33

I recently tried using "building upgrade" to allow the player to choose between a functional grand central terminal (and other aditions) or just a landmark without uses.

However, this doesn't seem to work because the game ignores the capabilities and attributes given by the "building upgrade" so it simply remains a ordinary landmark.
And if the station attributes are codded before "building upgrade" the game always displays the subway management menu
User avatar
ng0cl0ng@2k5
Settler
Reactions:
Posts: 7
Joined: 18 Nov 2024, 03:40
Location: Hà Nội
Plugins: Showcase Store

Re: [1.12.26] Transportation System Extension

Post by ng0cl0ng@2k5 » 20 Jan 2026, 03:43

Great update! The public transport system is now becoming more realistic... But I have a lot of questions:
1. Is it possible to build a train line with both elevated/ground lines and underground metro lines? I mean, as some metro lines in Taiwan or Vietnam and such does here, underground in the city center, above ground in the suburban areas. It's actually a perfect combination.
2. Is it possible to create a custom lane for public transit for roads and streets specifically? For a typical street in TheoTown (4 lanes, 2 per each direction) for example, I want to devote the middle 2 lanes for a streetcar/BRT/LRT line, but it's not possible as of now. I think there's a constraint in the road system, where cars have to go in both lanes of a street, but not customizable per each lane. Oh, and also a bike/motorbike-only lane too.
3. Please, please, make it support one-way bus stops, please, please! :D
I really, really need these so bad, especially if I were building a 6-lanes street or something like that. The bus stops somehow always being placed on both sides on a road, even if it's wider than 2 lanes. The "excess" bus stop is always placed between any 2 lanes of a wide road, and I don't like it.
User avatar
Jaforzem
Villager
Reactions:
Posts: 10
Joined: 04 Jul 2020, 21:51
Location: Mexico
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by Jaforzem » 20 Jan 2026, 16:55

ng0cl0ng@2k5 wrote: 20 Jan 2026, 03:43 Great update! The public transport system is now becoming more realistic... But I have a lot of questions:
1. Is it possible to build a train line with both elevated/ground lines and underground metro lines? I mean, as some metro lines in Taiwan or Vietnam and such does here, underground in the city center, above ground in the suburban areas. It's actually a perfect combination.
2. Is it possible to create a custom lane for public transit for roads and streets specifically? For a typical street in TheoTown (4 lanes, 2 per each direction) for example, I want to devote the middle 2 lanes for a streetcar/BRT/LRT line, but it's not possible as of now. I think there's a constraint in the road system, where cars have to go in both lanes of a street, but not customizable per each lane. Oh, and also a bike/motorbike-only lane too.
3. Please, please, make it support one-way bus stops, please, please! :D
I really, really need these so bad, especially if I were building a 6-lanes street or something like that. The bus stops somehow always being placed on both sides on a road, even if it's wider than 2 lanes. The "excess" bus stop is always placed between any 2 lanes of a wide road, and I don't like it.
Answering the 1st question, yes you can, but not with the game stations but with plugins, one of those plugins is RRSE (that I know of) it is very extensive and can be confusing, but it gives the option of elevated stations (up to 3 levels high), surface and underground

To the 2nd and 3rd question, for a bus stop to connect to another turning it into a single one these have a radius of 2 squares, if it comes out of that the game takes it as another stop, in the game there is an exclusive reel for the bus as one way and both, there are also plugins that can improve this such as Advanced Road, and Bus Line, which offer a lane for the bus, there is also the Trolleybus Plugin, but it is not updated with the TSE (Transport System Expansion).
User avatar
Armin Hpj
Metropolitan
Reactions:
Posts: 148
Joined: 11 Jan 2024, 07:47

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by Armin Hpj » 31 Jan 2026, 12:29

:mine
Also, in the transportation update, the monorail was released, but the json codes are here:
:json
  • Vheicle

    Code: Select all

        "flag normal": false,
        "flag monorail": true,
        "meta": {"tags": {"monorail_train": {}}}
    
  • Glue Railway Station

    Code: Select all

        "type": "railway station",
        "meta": {"tags": {"monorail_platform": {}}}
    
  • Spawn Railway Station

    Code: Select all

        "type": "railway station",
        "influence passenger train":25,
        "car min level": 1,
        "car max level": 2,
        "meta": {"tags": {"monorail_station": {}}}
    
  • Category & Requirements

    Code: Select all

        "category": "$cat_monorail00",
        "requirements": [{"type": "RANK", "lvl": 15}]
    
User avatar
HelloPolaris
Settler
Reactions:
Posts: 1
Joined: 04 Feb 2026, 10:14

Re: [1.12.26] Transportation System Extension

Post by HelloPolaris » 17 Feb 2026, 06:21

What's the JSON for the metro in Transportation System Extension?
I would like to make a Asian metro train plug-in
User avatar
Armin Hpj
Metropolitan
Reactions:
Posts: 148
Joined: 11 Jan 2024, 07:47

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by Armin Hpj » 18 Feb 2026, 16:17

HelloPolaris wrote: 17 Feb 2026, 06:21 What's the JSON for the metro in Transportation System Extension?
I would like to make a Asian metro train plug-in
Here is a Json code for an example of the 10X MTrain Pack (which is the featured metro & monorail train plugin in the TheoTown's plugin store).

Code: Select all    Reset

[ //Unlisted trains { "id":"$10x_blue_mtrainv_part00", "type":"train car", "frames":[ {"bmp":"BlueTrain.png","x":0,"y":1,"w":18,"h":15,"count":8} ], "frames per variant": 8, "v2": true }, { "id":"$10x_blue_mtrainv_part01", "type":"train car", "frames":[ {"bmp":"BlueTrain.png","x":0,"y":46,"w":18,"h":15,"count":8} ], "frames per variant": 8, "v2": true }, //Metro Trains { "id":"$10x_blue_mtrainv", "type":"train car", "frames":[ {"bmp":"BlueTrain.png","x":0,"y":16,"w":18,"h":15,"count":8} ], "frames per variant": 8, "v2": true, "flag normal": false, "flag subway": true, "capacity": 300, "speed": 3, "meta":{"tags":{"metro_train":{}}}, "tail":[ "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part00", "$car_null00", "$10x_blue_mtrainv_part01" ], "title":"10X MTrain V (blue)" } ]
JSON checker
Check
BlueTrain.png
:plugin Download link for the 10X MTrain Pack (only for 10X MTrain V series):
10X MTrain V.zip
You do not have the required permissions to view the files attached to this post.
User avatar
Syn
Small-town resident
Reactions:
Posts: 29
Joined: 07 Jan 2021, 05:55

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by Syn » 11 Apr 2026, 10:45

Armin Hpj wrote: 31 Jan 2026, 12:29 :mine
Also, in the transportation update, the monorail was released, but the json codes are here:
:json
  • Vheicle

    Code: Select all

        "flag normal": false,
        "flag monorail": true,
        "meta": {"tags": {"monorail_train": {}}}
    
  • Glue Railway Station

    Code: Select all

        "type": "railway station",
        "meta": {"tags": {"monorail_platform": {}}}
    
  • Spawn Railway Station

    Code: Select all

        "type": "railway station",
        "influence passenger train":25,
        "car min level": 1,
        "car max level": 2,
        "meta": {"tags": {"monorail_station": {}}}
    
  • Category & Requirements

    Code: Select all

        "category": "$cat_monorail00",
        "requirements": [{"type": "RANK", "lvl": 15}]
    



Hello can I know what's the tag for the monorail, well rail?
User avatar
Khajnagari KH 09
Inhabitant of a Galaxy Cluster
Reactions:
Posts: 2682
Joined: 07 Apr 2024, 03:18
Location: ||||||
Plugins: Showcase Store

Plugin Creator

Platform

Re: [1.12.26] Transportation System Extension

Post by Khajnagari KH 09 » 21 Jun 2026, 18:09

Question here:
I saw there being a "flag tram".
Then are there any meta tags for tram stations and trams/vehicles?
If there aren't, can I make one myself like flags?
Previous topicNext topic