Difference between revisions of "Json2ttb"

From Railway Operation Simulator Wiki
Jump to navigation Jump to search
(Updated link)
(Updated json2ttb version)
 
(One intermediate revision by the same user not shown)
Line 14: Line 14:
 
| discontinued = <!-- Set to yes if software is discontinued, otherwise omit. -->
 
| discontinued = <!-- Set to yes if software is discontinued, otherwise omit. -->
 
| ver layout = <!-- simple (default) or stacked -->
 
| ver layout = <!-- simple (default) or stacked -->
| latest release version = [https://github.com/Railway-Op-Sim/json2ttb/releases/tag/1.3.4 1.3.4]
+
| latest release version = [https://github.com/Railway-Op-Sim/json2ttb/releases/tag/1.3.5 1.3.5]
| latest release date = 2022-03-03
+
| latest release date = 2023-07-03
 
| latest preview version =  
 
| latest preview version =  
 
| latest preview date = <!-- {{Start date and age|YYYY|MM|DD|df=yes/no}} -->
 
| latest preview date = <!-- {{Start date and age|YYYY|MM|DD|df=yes/no}} -->
Line 37: Line 37:
 
{{For|the json2ttb tutorial|Json2ttb/Tutorial}}
 
{{For|the json2ttb tutorial|Json2ttb/Tutorial}}
  
'''json2ttb''' is a external tool for [[About|Railway Operation Simulator]] which allows the user to speed up the creation of complex [[TTB file|timetables]].
+
'''json2ttb''' is a external tool for [[About|Railway Operation Simulator]] which allows the user to speed up the creation of complex [[Timetable Creation|timetables]].
  
 
The program works by parsing a user-written json file, which is then converted to a [[.ttb file]] which can be used in within ROS. The structure of the json file is in such a way that you define a service template, which can then be iterated upon and copied over several instances, which can have non-iterative references, descriptions, times and train data.
 
The program works by parsing a user-written json file, which is then converted to a [[.ttb file]] which can be used in within ROS. The structure of the json file is in such a way that you define a service template, which can then be iterated upon and copied over several instances, which can have non-iterative references, descriptions, times and train data.

Latest revision as of 19:50, 9 July 2023

json2ttb
Original Author(s)Daniel Gill
Initial release2021
Stable release
1.3.5 / 2023-07-03
Written inJava
Available inEnglish
TypeSimulation
LicenseGNU Public License v3
Websitehttps://railway-op-sim.github.io/json2ttb/

json2ttb is a external tool for Railway Operation Simulator which allows the user to speed up the creation of complex timetables.

The program works by parsing a user-written json file, which is then converted to a .ttb file which can be used in within ROS. The structure of the json file is in such a way that you define a service template, which can then be iterated upon and copied over several instances, which can have non-iterative references, descriptions, times and train data.

Key Features

  • Allows for unusual repeats of services.
  • Create templates of service data and use them for several services.
  • Change the reference and description of single repeats.
  • Allows for creating shuttles without using shuttle syntax.
  • In most cases, quicker than writing timetables in ROS.

What json2ttb cannot do... (yet)

  • Does not simplify writing individual services.
  • No current support for the ROS repeats (e.g. R;30;2;2), repeats are done in a different way.

JSON Example

Below is a small excerpt of the json file which can be parsed by json2ttb. This example is taken from the timetable for Sheffield East.

{
    "ref":"1R50",
    "description":"SHFF AVOIDING",
    "startSpeed":80,
    "dataTemplate":"C222/0_5",
    "increment":1,
    "events": [
        "23:46;Snt;55-73 55-72",
        "00:04;Fer;28-24"
    ],
    "times": [
        {"time":"06:10","ref":"1R50","description":"Nottingham to Liverpool Lime Street","dataTemplate":"C158_2"},
        {"time":"06:14","ref":"5C14","description":"Etches Park Sdgs to Sheffield"},
        {"time":"07:00","ref":"1F00","description":"Kettering to Sheffield"},
        {"time":"19:10","ref":"1F60","description":"St Pancras International to Sheffield"}
    ]
},
{
    "ref":"1C23",
    "description":"Sheffield to St Pancras International",
    "dataTemplate":"C222/0_5",
    "startSpeed":80,
    "increment":1,
    "events": [
        "07:53;Snt;28-23 29-23",
        "08:11;Fer;56-73"
    ]
}