Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • position and train_on_track
  • pre_next_segment
  • moving
  • track_speeds

Features:

  • Take an alternative route (route == 1): on full station (KH, KH_REV, IC, OC) or other special cases the trains take an alternative route (route = 1) to prevent deadlocks for deadlocks prevention
    • e.g. if KH_ST is full and the KIO_LN are occupied by incoming (into KH) trains a train leaving KH should always leave through KH
  • lock Lock the entrance to KH_LN and KH_LN_REV and the corresponding exit of the turnout track if : more than two trains travel in the opposite direction of KH
  • Assign a train that is currently random destination to trains: that are in a station, has have no destination and is are blocking an other train, is given a "random" destination (this is calculated deterministic) to drive to a new station. This other trains
    • random_destination is calculated deterministcly
    • can be disabled
    on
    • for each train by
    setting the
    • setting no_forced_direction
    input
  • if the KH_ST is full in one direction and the KIO_LN in the opposite direction or the / exit of the turnout track are locked. What is locked : depends on how full busy KH_LN is and if someone wants to enter from KH_LN (same for REV)
  • a train is never stuck in turnout track, because after five trains passed Lock opposite direction in KH: a train in the KH pass may have to wait for a long time if trains are looping in the opposite direction, so wait for two trains (waiting_bound_KH in in KH_deadlockDeadlock_prevention.sctx) without the train to leave, the opposite direction is locked so that the train may leave. it is possible to set Prevention) and then enable its movement
  • Set a random destination for each train if a train currently (random_mode == true): sets destination if train doesn't have one, by setting random_mode to true