North Shore Line Simulator
Central → Hornsby via the Harbour Bridge · real timetable, signalling and patronage data · original "inspired-by" trains and signage
Scenarios
Free drive
Any timetabled service on the segment. W/S master controller, C camera, M signaller panel, K save.
Signaller & timetable
Signaller sandbox
The whole morning peak on the 2D panel: set routes, switch ARS, replace signals, watch passengers and loads.
DataTrack data map
The track graph built from OpenStreetMap, with gradients, curvature, signals and platforms.
Saved games
Import a save file:
Settings
Real Sydney Trains recordings are copyright and are not included. If you have your own recordings (announcements, the door-closing sequence, chimes), load them here: files are named by the clip they replace (see docs/audio-pack.md, e.g. doors-closing-sequence.mp3, next-stop.mp3, station-hornsby.mp3). They stay in this browser only.
Attribution & credits
Data
- Track geometry, stations, platforms and signals © OpenStreetMap contributors, licensed under the Open Database Licence (ODbL) 1.0.
- Timetable (GTFS
sydneytrains), Opal station entries & exits, Opal Tap On/Off Release 3 (2020), ROAM loads and the train station typical-day workbook (Transport Performance and Analytics): contains data from Transport for NSW Open Data, licensed under CC BY 4.0. - Elevation: NSW 5 m DEM © Spatial Services (NSW Department of Customer Service), CC BY 4.0.
- Signalling rules and rolling stock figures: sourced from published TfNSW / ASA standards, the NSW Network Rules, TCQSM and academic papers — every source is listed in
docs/research/.
Software
- three.js (MIT), Vite (MIT), TypeScript (Apache-2.0), zod (MIT), proj4js (MIT), geotiff.js (MIT), yauzl (MIT), Vitest (MIT), Playwright (Apache-2.0), fast-check (MIT).
- 3D models were made by scripts in Blender (the models are original work of this project).
- Sounds are generated live with the Web Audio API, layered with real openly licensed Sydney recordings (
docs/research/audio-v2.md); announcements use your browser's speech synthesis with original wording.
Sound recordings
- Curve squeal: "Railway tram curving noise datasets" by Cao et al., doi:10.5281/zenodo.11540120, CC BY 4.0 (excerpts, pitch-shifted and filtered).
- Flanging: "train_wheels_ringing_curve.wav" by uair01, freesound.org/s/57786, CC BY 3.0 (edited).
- Real Sydney train recordings (VVVF arrivals and departures, door beeps and warnings): "St James Platform" by black_trillium, freesound.org/s/702601, CC0; "Redfern slow" by sparxx001, freesound.org/s/347746, CC0 (excerpts, edited).
- Saloon rolling, curve squeal and door beeps: "Train to Sydney Olympic Park" by augustclaire2211, freesound.org/s/624772, CC BY 3.0 (excerpts, edited).
- Waratah and OSCar saloons: "A set IDI 2" and "H set IDI" by Wykymania, Wikimedia Commons, CC BY-SA 3.0 (excerpts, edited; the excerpt files are CC BY-SA 3.0).
- Platform departure and pass-by: "Train Station 4" by Fission9, freesound.org/s/502681, CC0. Tangara departure: "Tangara leaves Blacktown" by Jason Flores (JaseyR573), Flickr, CC BY 2.0 (edited). Squeal: "Wheels ringing on bend" by JotrainG, freesound.org/s/700035, CC0.
- Also measured for the synthesis (CC0, with thanks): alongsidesound (743991), Fission9 (502935), polymorpheva (91555) on freesound.org.
Not affiliated
This is an independent fan simulator. It is not affiliated with, endorsed by or connected to Transport for NSW or Sydney Trains. Train liveries, station signage and line colours are original designs "inspired by" Sydney — no official logos, wordmarks or trademarked branding are used.