Mit der eingeschränkten Wegsuche und den programmierbaren Signalen werden dem Spieler unüberschaubare Möglichkeiten zur Kontrolle der Signale gegeben. Da diese ganzen Möglichkeiten relativ komplex sind und bei unvorsichtiger Benutzung schnell zu Katastrophen führen, sollte man alles vorher in einer sicheren Umgebung testen. Es ist vielleicht keine dumme Idee, ein neues Spiel zu starten, in dem man diese neuen Features so lange ausprobiert, bis man verstanden hat, wie sie arbeiten. Die auf dieser Seite erklärten Möglichkeiten richten sich definitiv nicht an Gelegenheitsspieler!

Icon
Um diese neuen Signale optisch von den anderen Signalen zu unterscheiden, kann man ein Testset mit neuen Signalgrafiken benutzen (evtl. muss man sich ein wenig durch die Diskussionsseiten durchklicken). Ohne dieses Set funktioniert das Feature genauso, nur sieht man den Signalen die zusätzlichen Einstellungen nicht an.

Eingeschränkte Wegfindung

Eingeschränkte Wegfindung

Die eingeschränkte Wegfindung ist ein sehr mächtiges und ebenso komplexes Feature, welches man nutzen kann, um die Routen der Züge genauer zu kontrollieren. Hierbei beeinflusst man die Wegfindung durch das Setzen von Einschränkungen an Signalen. Der Wegfinder ignoriert dann das Gleis hinter dem Signal, wenn der Zug nicht den Beschränkungen entspricht. Das Verhalten des Signales selbst bleibt dabei unverändert. Man kann jedes Signal mit Beschränkungen versehen, diese wirken dann zusätzlich zum normalen Signalverhalten.

Kriterien zur Einschränkung

Es gibt eine Reihe von Kriterien, welche man zum Beschränken der Wegfindung nutzen kann. Diese sind im Folgenden aufgeführt. Ein leeres oder nicht komplett gesetztes Kriterium gilt grundsätzlich als erfüllt und erlaubt das Passieren des Signals.

  • Anzahl der Einheiten des Zuges

    Die erste Möglichkeit ist die Beschränkung anhand der Länge des Zuges. Die Lok zählt hierbei dazu, bei mehrteiligen Loks zählt jeder Teil gesondert, zum Beispiel bei Dampflokomotiven mit Tender.

  • Höchstgeschwindigkeit in (km/h|mph)

    Das ist recht einfach. Man kann schnelle und langsame Züge problemlos voneinander trennen, zum Beispiel wenn man spezielle Hochgeschwindigkeitsstrecken hat. Die Beschränkung für ein Signal zu einer solchen Strecke könnte dann lauten "Höchstgeschwindigkeit in km/h > 130".

  • Aktueller Zielbahnhof

    Um festzulegen, dass nur Züge in einen Bahnhof fahren, die gerade exakt dorthin fahren sollen, bietet sich diese Einschränkung an. Der Wert wird durch Anklicken des Bahnhofs ausgewählt. Somit liest sich die Beschränkung dann etwa "Aktueller Zielbahnhof ist Smalltown Station". Nur "ist" und "ist nicht" sind hierbei gültige Operationen, alles andere würde ohnehin keinen Sinn ergeben.

  • Nächster Zielbahnhof

    Diese Beschränkung funktioniert genauso wie die vorherige. Sie ist besonders nützlich, wenn man einen kombinierten Kopfbahnhof mit einigen Durchfahrtsgleisen hat und die Züge somit an die richtigen Bahnsteige lotsen muss.

  • Vorheriger Zielbahnhof

    Es könnte auch notwendig sein, die Züge danach zu sortieren, von wo sie kommen. Das kann mit dieser Einschränkung gemacht werden. Dabei ist der vorherige Zielbahnhof der, an welchem der Zug zuletzt gehalten hat, nicht der letzte durchfahrene.

  • Aktuelles Zieldepot

    Da man Zügen auch die Order geben kann, ein Depot aufzusuchen, kann man dies als einschränkendes Kriterium benutzen. Das Depot wird durch Anklicken mit der Maus ausgewählt. Somit könnte man zum Beispiel das Befahren eines Gleises reglementieren, welches zu einem Depot führt, und welches nur von Zügen befahren werden soll, die gerade in das Depot fahren sollen.

  • Nächstes Zieldepot

    Bei größeren Bahnhöfen mit Depots direkt dahinter kann es notwendig sein, die Züge bereits vorher auf das richtige Gleis zu leiten. Dafür gibt es diese Beschränkung. Sie funktioniert genauso wie die Einschränkung "Nächster Zielbahnhof", nur dass man eben ein Depot anstatt eines Bahnhofs auswählt.

  • Gesamte Zugleistung

    Wenn man mit höheren Werten für freighttrains spielt, werden Berge ein schwieriges Hindernis. In vielen Fällen ist es dann besser, eine flache Strecke um den Berg herum zu bauen, anstatt über den Berg zu fahren. Unter Umständen sind zwei Strecken möglich, die man anhand der Leistung der Zugloks auswählen könnte. Wenn die Lokomotiven nicht stark genug sind, sollte man den Zug um den Berg herumschicken. Bei der Berechnung zählen alle Lokomotiven im Zug.

  • Gesamtgewicht des Zuges

    Anstatt die Leistung des Zuges zu betrachten, könnte man die Wegfindung im Gebirge auch anhand des Gewichtes des Zuges beeinflussen. Ein Zug mit einer schwachen Lok könnte ja die Steigung trotzdem schaffen, wenn er leer ist.

  • Fracht

    Es gibt neue Bahnhofsgrafiken, und da ist es sicherlich erwünscht, dass die Güterzüge an die "richtigen" Bahnsteige fahren. Ein Zug mit Kesselwagen für Öl steht nun mal an einer Holzverladestation fehl am Platze. Um festzulegen, welche Bahnsteige angefahren werden dürfen kann man den Zugang anhand der Fracht beschränken, die der Zug transportieren kann. Ein Zug kann hierbei eine bestimmte Fracht transportieren, wenn er mindestens eine Einheit der Fracht befördern kann.

  • Anzahl der Felder vom Signal

    Diese Beschränkung wird anhand der Entfernung zum Signal gesetzt. Allerdings macht es wenig Sinn, die Wegfindung einzuschränken, nur weil der Zug sich in einer gewissen Entfernung befindet. Man sollte diese Beschränkung daher zusammen mit einer Beschränkung des Signalstatus verbinden, um eine Art Umleitung zu erhalten: Wenn die Strecke weiter vorn blockiert ist, soll der Zug vorher eine andere Strecke wählen.

  • Signalstatus (SW|SO|NW|NO)

    Das ist jetzt ein wenig komplizierter. Im wesentlichen basiert diese Beschränkung auf dem momentanen Status eines anderen Signals. Mit andern Worten, Signal X beschränkt die Durchfahrt in Abhängkeit davon, ob Signal Y gerade rot oder grün zeigt. Die beiden Farben sind denn auch die beiden einzigen erlaubten Werte. Wenn das Signal die gewählte Farbe anzeigt, ist das Kriterium erfüllt, ansonsten wird der Zug versuchen, den Weg zu Signal X zu meiden. Signal Y wird durch Anklicken mit der Maus ausgewählt. Da aber mehrere Signale auf einem Feld stehen können, wählte man das passende Signal über die Himmelsrichtungen aus. Die folgenden Bilder zeigen die Signale, die bei entsprechender Auswahl der Himmelsrichtung gemeint sind. In diesem Beispiel stehen die Signale rechts vom Gleis, das spielt jedoch keine Rolle, da die Auswahl anhand des Gleises und der Signalrichtung getroffen wird. Nicht existierende Signale gelten immer als rot.

    SW signals

    Das sind die gültigen SW-Signale. Bei den diagonalen Strecken zeigen sie nach links (Westen), bei horizontalen Gleisen stehen sie am unteren (Süden) Gleis und zeigen nach Westen, bei vertikalen Gleisen stehen sie am linken (Westen) Gleis und zeigen nach unten (Süden).

    SE signals

    Das sind die gültigen SO-Signale. Bei den diagonalen Strecken zeigen sie nach rechts (Osten), bei horizontalen Gleisen stehen sie am unteren (Süden) Gleis und zeigen nach Osten, bei vertikalen Gleisen stehen sie am rechten (Osten) Gleis und zeigen nach unten (Süden).

    NW signals

    Das sind die gültigen NW-Signale. Bei den diagonalen Strecken zeigen sie nach links (Westen), bei horizontalen Gleisen stehen sie am oberen (Norden) Gleis und zeigen nach Westen, bei vertikalen Gleisen stehen sie am linken (Westen) Gleis und zeigen nach oben (Norden).

    NE signals

    Das sind die gültigen NO-Signale. Bei den diagonalen Strecken zeigen sie nach rechts (Osten), bei horizontalen Gleisen stehen sie am oberen (Norden) Gleis und zeigen nach Osten, bei vertikalen Gleisen stehen sie am rechten (Osten) Gleis und zeigen nach oben (Norden).

  • Tage seit der letzten Wartung

    Um Züge auf geordnete Art und Weise in ein Depot zu bringen, kann man sie mit dieser Beschränkung auf die passenden Gleise lotsen, wenn eine bestimmte Zeit seit der letzten Wartung vergangen ist. Auf diese Weise kann man regelmäßige Wartung erzwingen.

  • Zug sucht gerade nach einem Depot

    Wenn das Wartungsintervall überschritten wurde, beginnen Züge sofort mit der Suche nach einem Depot. Das führt regelmäßig zu totalem Chaos im Streckennetz, weil die Züge zum nächstgelegenen Depot fahren wollen, auch wenn sie dafür vorher die halbe Karte durchqueren müssen. Mit dieser Beschränkung kann man dieses Chaos verhindern.

  • Fahrtrichtung auf dem Feld

    Bei zweiseitigen Signalen gelten die Beschränkungen für beide Richtungen. Manchmal ist es aber sinnvoll, Beschränkungen nur für eine Richtung festzulegen. Das geht mit diesem Kriterium, mögliche Vergleichswerte sind nur "ist" und "ist nicht", die Werte sind die Fahrtrichtungen wie bei der Beschränkung über den Signalstatus.

  • Eintrittsfeld in PBS-Block

    Mit dieser Einschränkung hat man die Möglichkeit, Züge anhand des Signals, durch welches sie in den Signalblock eingefahren sind, weiterzuleiten. Das lohnt sich besonders an großen Bahnhöfen, wo Züge aus verschiedenen Richtung möglichst nur an bestimmte Bahnsteige fahren sollen. Wenn man diese Beschränkung auf ein nicht pfadbasiertes Signal anwendet, wird das Ergebnis für "ist" grundsätzlich falsch!

Programmierbare Signale

Programmierbare Signale

Programmierbare Signale ermöglichen das Festlegen neuer Regeln, die bestimmen, wann ein Signal "Halt!" zeigen soll. Damit hat man als Spieler nun weitestgehende Kontrolle über das Signalverhalten. Die Regeln der Signalprogrammierung ersetzen bzw. ergänzen die normalen Vorsignal-Regeln. Oder anders gesagt: Man kann die Vorsignal-Regeln ändern. Man kann allerdings kein Signal programmieren, welches die Einfahrt in einen besetzten Block erlaubt, so viel Sicherheit muss sein.

Für die normalen Vorsignaltypen ergeben sich durch die Programmierung einige Änderungen: Ein Einfahrt-Vorsignal wird beim Programmieren automatisch zu einem Standardsignal umgestellt (die Vorsignaleigenschaft wird durch die Programmierung überschrieben), ein Combo-Vorsignal wird zu einem Ausfahrt-Vorsignal (damit ändert sich nichts für den davor liegenden Block, die Vorsignal-Eigenschaften für den Block nach dem Signal werden durch die Programmierung überschrieben).

Kriterien zur Programmierung

Wie auch bei der beschränkten Wegfindung gibt es verschiedene Kriterien für die Programmierung. Wenn das Kriterium erfüllt ist, schaltet das Signal auf rot.

  • Anzahl der grün zeigenden (einseitigen/zweiseitigen) Ausfahrt- & kombinierten Vorsignale

    Hier wird einfach die Anzahl der entsprechenden Signale im Block gezählt. Man kann verschiedene Operationen festlegen (weniger als, mehr als, ist gleich) sowie die gewünschte Anzahl angeben. Beispielsweise könnte man ein Signal definieren, welches rot zeigen soll, wenn weniger als zwei grün zeigende Ausfahrtsignale im Block vorhanden sind.

  • Anzahl der rot zeigenden (einseitigen/zweiseitigen) Ausfahrt- & kombinierten Vorsignale

    Anstatt der grün zeigenden Signale kann man auch die rot zeigenden zählen. Zum Beispiel könnte man festlegen, dass das Einfahrsignal rot zeigen soll, wenn mindestens zwei Ausfahrsignale rot zeigen.

  • Fahrtrichtung auf dem Feld

    Diese Regel arbeitet genauso wie beim Beschränken der Wegfindung. Man kann die Programmierung somit bei zweiseitigen Signalen auf eine Richtung einschränken.

  • Signalstatus SW/SO/NW/NO

    Mit diesem Kriterium kann der Spieler ein Signal so programmieren, dass es in Abhängigkeit von einem anderen Signal rot zeigt. Man kann dieses Kriterium allerdings nur auf Signale anwenden, die, wenn sie ihren Status ändern, auch eine Wirkung auf das zu programmierende Signal haben können. Sie müssen also zum gleichen Block gehören und in die passende Richtung zeigen, also die Ausfahrt aus dem Block regeln, in welchen da zu programmierende Signal führt. Im Prinzip sind das die gleichen Kriterien, die auch für Ausfahrt-Vorsignale gelten, die ja Einfahrt-Vorsignale beeinflussen.

Das Menü

Programmierbare Signale und beschränkte Wegfindung werden über das gleiche Menü eingestellt. Dieses Menü ist recht leistungsfähig und erlaubt das Festlegen von komplexen Regelsets, die aus mehreren Regeln bestehen.

Signal GUI

Um eine Regel aufzustellen, hält man Strg und klickt das Signal an, welches bearbeitet werden soll. Daraufhin öffnet sich das Fenster für das Signal-Interface, welches eine Schaltfläche "Routefinding" hat. Durch das Drücken dieser Fläche erreicht man das Fenster für das Erstellen der Regeln.

restriction window

In diesem Fenster gibt es unten mehrere Schaltflächen. Ganz links wählt man das Kriterium aus. In diesem Beispiel ist das die Höchstgeschwindigkeit des Zuges in mph. Die nächste Schaltfläche wird benutzt, um die Vergleichsoperation festzulegen. Die Schaltfläche "value" dient der Eingabe des passenden Vergleichswertes. Dazu wird entweder direkt eine Zahl eingegeben oder mit der Maus ein Bahnhof/Depot/Signal angeklickt, je nach dem zu setzenden Kriterium.

Die drei Knöpfe "And", "Or" und "Xor" sind zum Kombinieren von Regeln gedacht, was weiter unten erklärt wird. Die Schalter "Reset" und "Delete" sollten selbsterklärend sein, man löscht alle Regeln (für dieses und alle Signale, die den Regelsatz teilen), bzw. setzt das Signal komplett zurück, ohne andere Signale zu beeinflussen. Die Schaltfläche "Signal" schaltet zwischen der Wegfindung und dem Programmieren der Signale um. Der letzte Knopf "Find" zentriert den Bildausschnitt auf dem Signal, dies ist hilfreich wenn man vorher durch die Gegend gescrollt hat um bspw. Zielbahnhöfe mit der Maus auszuwählen.

Die möglichen Vergleichsoperationen sind:

  • < (weniger als)

    trifft nur zu, wenn der Wert des Zuges für das gewählte Kriterium kleiner ist als der in der Beschränkung angegebene Wert

    Höchstgeschwindigkeit in mph < 50 trifft für jeden Zug zu, der langsamer als 50 mph fahren kann, Züge, die 50 mph oder schneller fahren können, erfüllen das Kriterium nicht

  • > (größer als)

    trifft zu, wenn der Wert des Zuges höher ist als der in der Beschränkung gesetzte Wert

    Höchstgeschwindigkeit in mph > 50 trifft für alle Züge zu, die schneller als 50 mph fahren können, also 51 mph oder noch schneller. Züge, die nur 50 mph oder weniger erreichen, erfüllen die Forderung nicht.

  • <= (kleiner oder gleich)

    trifft zu wenn der Wert des Zuges kleiner oder genauso groß ist wie der Wert in der Beschränkung

    Höchstgeschwindigkeit in mph <= 50 trifft bei jedem Zug zu, der entweder genau 50 mph fährt oder aber langsamer ist. Für alle schnelleren Züge (d.h. 51 mph und darüber) trifft die Beschränkung nicht zu.

  • >= (größer oder gleich)

    trifft zu, wenn der Wert des Zuges größer oder gleich dem Wert in der Beschränkung ist

    Höchstgeschwindigkeit in mph >= 50 trifft alle Züge, die entweder schneller als 50 mph fahren oder genau 50 mph erreichen. Züge, die langsamer fahren (d.h. maximal 49 mph) erfüllen das Kriterium nicht.

  • ist

    trifft nur zu, wenn der Wert des Zuges exakt dem Wert in der Beschränkung entspricht

    Höchstgeschwindigkeit in mph ist 50 trifft nur bei Zügen zu, die exakt 50 mph erreichen. Für alle Züge mit einer anderen Höchstgeschwindigkeit trifft die Einschränkung nicht zu.

  • ist nicht

    Das ist das Gegenteil zu "ist", es trifft nur zu, wenn der Wert des Zuges nicht dem Wert in der Beschränkung entspricht.

    Höchstgeschwindigkeit in mph ist nicht 50 trifft alle Züge mit beliebiger Höchstgeschwindigkeit, solange sie nicht gleich 50 mph ist.

Für einige Kriterien sind nur "ist" bzw. "ist nicht" gültige Operationen.

Kombinieren von Regeln

Regeln können miteinander zu komplexen Regelsätzen kombiniert werden. Allerdings ist dafür ein kleines Exkurs in die Theorie der Boole'schen Operatoren und in die Logik notwendig. Das ist nicht so schwer wie es klingt, kann aber trotzdem zu gründlicher Verwirrung führen...

Es gibt drei mögliche Operationen, um Regeln miteinander zu kombinieren:

  • AND

    Beide Regeln müssen erfüllt sein, um auch die Kombination zu erfüllen

  • OR

    Wenigstens eine der beiden Regeln muss erfüllt sein. Sobald eine Regel erfüllt ist, ist auch die Kombination erfüllt. Beide Regeln können gleichzeitig erfüllt sein, das ist aber nicht notwendig.

  • XOR

    Genau eine der beiden Regeln muss erfüllt sein. Wenn die erste Regel erfüllt ist, darf die zweite nicht erfüllt sein, und umgekehrt.

restriction window

Das nächste Problem ist die Notation der kombinierten Regeln. Sie werden in Präfix-Notation geschrieben, was ziemlich seltsam ist, sofern man kein Programmierer ist. Anstatt also "restriction 1 AND restriction 2" zu setzen, wird die Kombination als "AND restriction 1 restriction 2" dargestellt.

Man kann auch mehr als zwei Regeln kombinieren. Dabei entsteht eine Hierarchie von kombinierten Regeln, die man am einfachsten auf ein Blatt Papier schreibt und dabei Klammern setzt. Beispielsweise könnte man verlangen, dass ein Zug einen bestimmten Bahnhof ansteuert sowie eine gewisse Länge und eine bestimmte Höchstgeschwindigkeit haben muss. Der Regelsatz sähe dann so aus: AND (AND [Aktueller Zielbahnhof ist X] [Anzahl der Einheiten im Zug > Y]) (Höchstgeschwindigkeit >= Z). Die Beschränkungen in den eckigen Klammern werden zuerst ausgewertet und führen zu einem Ergebnis, entweder ja oder nein. Dieses Ergebnis wird dann mit der Beschränkung in den runden Klammern kombiniert, um das Endergebnis zu erhalten. In diesem Fall ist das relativ einfach, der Zug muss alle drei Bedingungen erfüllen, um die kombinierte Einschränkung zu erfüllen.

restriction window

Als zweites Beispiel soll die Durchfahrt auf Züge beschränkt werden, die Passagiere oder Post (oder beides) transportieren, aber nur, wenn sie schneller als 50 mph sind. Die daraus folgende Beschränkung sieht dann so aus: "AND (OR [Fracht ist Passagiere] [Fracht ist Post]) (Höchstgeschwindigkeit in mph >= 50)". Alternativ (und komplexer) könnte man auch folgendes versuchen: "OR (AND [Fracht ist Passagiere] [Höchstgeschwindigkeit in mph >= 50]) (AND [Fracht ist Post] [Höchstgeschwindigkeit in mph >= 50])". Beide Varianten führen zum gleichen Ergebnis, man sieht also, dass kombinierte Regeln sehr schnell sehr kompliziert werden können...

restriction window

Beim Setzen solcher kombinierten Regeln muss man vorsichtig sein, sonst hat man schnell einen Regelsatz erstellt, der nie erfüllt werden kann. Beispielsweise kann die Kombination "AND [Höchstgeschwindigkeit in mph > 50] [Höchstgeschwindigkeit in mph < 50] nie erfüllt werden. Das scheint offensichtlich, aber beim Kombinieren von mehr als zwei Regeln kann sowas schnell indirekt passieren: Zum Beispiel ist ein Zug mit mehr als 7 Einheiten selten leichter als 100 Tonnen.

restriction window

Kopieren und gemeinsames Nutzen von Regeln

restriction window

Da man im Streckennetz ziemlich viele Signale hat, wird das Festlegen der Regeln für jedes einzelne Signal sehr mühsam, insbesondere wenn die Regeln immer die gleichen sind. Zum Beispiel könnte es im Netz spezielle Strecken für Schnellzüge geben, da möchte man nicht für jedes Signal die passende Beschränkung erneut setzen. Stattdessen kann man bestehende Beschränkungen kopieren und teilen.

Um eine existierende Beschränkung zu kopieren, öffnet man das Menü für die Beschränkung des Signals, auf das die Beschränkung kopiert werden soll. Sofern dieses Signal noch nicht in irgendeiner Form eingeschränkt wurde, hat man hier nun die Möglichkeit, Einschränkungen von anderen Signalen zu übernehmen. Man drückt einfach die Schaltfläche fürs Kopieren und klickt das Signal an, von dem man die Beschränkungen kopieren möchte. Fertig, das Signal hat nun die gleichen Beschränkungen. Das Teilen von Beschränkungen geht genauso, nur dass man natürlich die andere Schaltfläche drücken muss. Der entscheidende Unterschied zwischen Kopieren und Teilen ist, dass ein kopiertes Signal unabhängig vom Original ist. Man kann die Beschränkungen verändern, ohne andere Signale zu beeinflussen. Das Verändern einer geteilten Beschränkung hingegen ändert alle Signale, die die Beschränkung teilen. Auf diese Weise kann man beispielsweise Tempolimits einfach anpassen, wenn schnellere Lokomotiven erhältlich werden. Man ändert die Beschränkung an einem Signal und hat sofort alle Signale aktualisiert.