User Tools

Site Tools


dev:proposals:simsig

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
dev:proposals:simsig [2026-01-11 19:15] – orwelldev:proposals:simsig [2026-01-28 00:04] (current) – some more ideas orwell
Line 11: Line 11:
 ==== Train simulators ==== ==== Train simulators ====
  
-A classical train simulation game focuses on the aspect of driving a train across a detailed and realistically made route. This route is mostly fixed and pre-built by some creative people. The game focuses on realism on the train‘s controls and the driver‘s experience.+A classical train simulation game focuses on the aspect of driving a train across a detailed and realistically made route. This route is mostly fixed and pre-built by some creative people. The game focuses on the experience of driving a train.
  
-What advtrains falls short in:+Typical games in this genre are making the controls as realistic as possible and having detailed scenery and good graphics. This is what advtrains currently falls short in:
   * Realism of driver controls   * Realism of driver controls
   * Realism of tracks (sharp turns)   * Realism of tracks (sharp turns)
   * General detailed-ness of models and worlds   * General detailed-ness of models and worlds
  
-All of these can be improved by putting in some work, but they are no immediate blockers and ideas exist for how to improve (e.g. the set-track proposal). Other than that, advtrains can serve as a train sim game with only minor changes.+All of these can be improved by putting in some work, but they are no immediate blockers and ideas exist for how to improve (e.g. the set-track proposal). 
 + 
 +Other than that, advtrains can serve as a train sim game with only minor changes. Even with the current controls, it is challenging enough to keep track of the signals and stop at the appropriate places.
  
 === Train Sim Mode Idea === === Train Sim Mode Idea ===
Line 38: Line 40:
 === Signal Box Webapp === === Signal Box Webapp ===
  
-I am not a masochist so I won’t even start trying to implement this in formspecs. It will be a web app.+I am not a masochist so I won’t even start trying to implement this in formspecs. It will be a web app (and by this I mean, a webapp that fits into one html, one js and one css file and does not need Node/React/whatever is the latest JavaScript framework hype).
  
 Builders can create a signal box schematic, which looks similar to SimSig/ts2/german ESTWs, and link the schematic elements to components in the Luanti world. This way the player can then directly control the signals in the world. Builders can create a signal box schematic, which looks similar to SimSig/ts2/german ESTWs, and link the schematic elements to components in the Luanti world. This way the player can then directly control the signals in the world.
Line 44: Line 46:
 Technology wise, since Luanti can only serve as a http client, the Webserver serving the webapp will also need to act as a relay. Luanti can receive commands from the relay (and thus the webapp) via http long polling. Technology wise, since Luanti can only serve as a http client, the Webserver serving the webapp will also need to act as a relay. Luanti can receive commands from the relay (and thus the webapp) via http long polling.
  
-While a signal box session is in place, ARs will be disabled on the signals in the area.+While a signal box session is in place, ARS will be disabled on the signals in the area.
  
 Taking timetables data as a basis, also for this game mode scoring can be performed. One further idea is to simulate failures (both on the trains e.g. door problems) and on the trackside equipment (signal lamp/switch failures) like in SimSig. Taking timetables data as a basis, also for this game mode scoring can be performed. One further idea is to simulate failures (both on the trains e.g. door problems) and on the trackside equipment (signal lamp/switch failures) like in SimSig.
 +
 +On a server, multiple distinct signal boxes / control areas can exist and multiple players can operate them simultaneously. This makes it possible to also simulate train handovers (Zugmeldungen) between the participating players.
 +
 +=== Multiplayer aspect ===
 +
 +With both of these features in place, we can build a collaborative railway mini-world server:
 +
 +  * Builders can build railway networks in the Luanti world, and let trains run on them controlled by the interlocking system and timetable/line automation system. Everything can run on automation by default.
 +  * Players can pick a train and switch to Sim Mode. They have to drive the train manually and adhere to the timetable, and can accumulate score.
 +  * Players can pick a signal box and control the interlocking in a designated area. Their performance is also scored
 +
 +All of these activities can happen simultaneously on the server. There can be server-wide leaderboards for train driver and signaller performance.
 +
 +=== NPCs / Transport Tycoon ===
 +
 +An added bonus would be NPCs that randomly spawn at or near stations and can enter and ride trains. In the long run, this could even be extended so that NPCs start to build cities around places where there is good train service, akin to games like OpenTTD / Simutrans. I have already explored the idea of combining mg_villages with advtrains and connecting the generated villages by train lines (see my tutorial videos).
 +
 + --- //orwell 2026-01-27 23:41//
  
dev/proposals/simsig.txt · Last modified: by orwell