User Tools

Site Tools


mtr:development:transport_simulation_core

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
mtr:development:transport_simulation_core [2026/04/10 09:23] – Fix TSC link and update description AmberFrostmtr:development:transport_simulation_core [2026/09/23 08:26] (current) – Current state of TSC AmberFrost
Line 12: Line 12:
 </WRAP> </WRAP>
  
-**Transport Simulation Core** is a project facilitating train & vehicles simulation.+**Transport Simulation Core** (Often abbreviated as **TSC**) is a project facilitating train & vehicles simulation.
  
 It primarily serves as the backend for MTR 4, responsible for holding all the station, trains, depot, track data and more, as well as simulating vehicle movements and hosting the online system map. It primarily serves as the backend for MTR 4, responsible for holding all the station, trains, depot, track data and more, as well as simulating vehicle movements and hosting the online system map.
 +
 +===== State of TSC in MTR 4.0 =====
 +The latest commit in Transport Simulation Core is designed for MTR 4.1, not for MTR 4.0. (MTR4 Commit hash TBD)
 +
 +The simplest way to modify the behavior of TSC (Or to obtain private/protected fields) in MTR 4.0 is by using Mixin or similar injection tools.
 +
 +Otherwise, you can locate the TSC commit used by MTR 4.0, recompile it, and copy the pre-built jar into MTR 4's codebase.
 +
 +===== Dependency Configuration =====
 +
 +TSC is used as a Java dependency by the MTR Mod. It's code are then shadowed within the main MTR Mod jar, so the TSC jar does not need to be separately shipped to the end user.
 +
 +In MTR 4.0, the Transport Simulation Core pre-built jar file is uploaded within the MTR Mod GitHub repository.
 +
 +In MTR 4.1, the Transport Simulation Core is published as GitHub package, in whichj the MTR Mod would grab the packages via GitHub package. However this requires setting up an access token on your local machine in order to authenticate with GitHub package and obtain the dependency.
 +
 +See [[https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry|GitHub's documentation]] for detail.
  
 ===== Communicating ===== ===== Communicating =====
mtr/development/transport_simulation_core.txt · Last modified: 2026/09/23 08:26 by AmberFrost