Dies ist eine alte Version des Dokuments!
Mit Simparams kann das Verhalten eines Zuges im Sim stark verändern.
Die Werte des Simparams sind jeweils von der Abfahrt am vorhergehenden Bahnsteig bis zur Abfahrt am angegebenen Bahnsteig wirksam. Handelt es sich beim angegebenen Bahnsteig um den ersten im Stellwerk gilt das simparam ab der Einfahrt. Wurde der letzte Bahnsteig im Stellwerk angegeben, so gilt das simparam von der Abfahrt am vorhergehenden Bahnsteig bis zur Ausfahrt.1)
Bei nur einem Bahnsteig im Fahrplan gilt der simparam von der Einfahrt bis zur Ausfahrt.
Dieser Befehl kann nur in der Klasse bahnhof
verwendet werden.
Blockkopf(Wert,Befehl,Fahrplanhalt,simparam);
Beispiel:
*:Bahnhof(20,minstop,any,simparam);
simparam
können einzelne und alle Werte überschrieben werden.
Befehl | Standardwert | Einheit | Kurzbeschreibung (ausführlicher weiter unten) |
---|---|---|---|
maxrandom | 4 | Minuten | Obergrenze der zufälligen Wartezeit |
randomdevisor | 2 | Mittelwert zur Kürzung der Haltezeit bei Verspätung | |
minstop | 0 | Sekunden | Minimale Haltezeit |
minstopR | 30 | Sekunden | Minimale Haltezeit bei Richtungswechsel (muss grösser 30 sein)2) |
maxstop | 5 | Minuten | Maximale Haltezeit (sofern Abfahrtszeit überschritten) |
soll_tempo | Tempo des Zuges (mit diesem Befehl kann auch die v-max überschritten werden | ||
anrufwartezeit | 3 | Minuten | Wartezeit bis zum Anruf bei Halt an einem roten Signal |
gleisänderung | 1 | Legt fest ob Gleisänderungen erlaubt sind. 1 steht für „ja“ 0 steht für „nein“ | |
gleisfalschmin | 90 | Sekunden | Minimale Haltezeit bei unangekündigter Gleisänderung |
gleisfalschmax | 600 | Sekunden | Maximale Haltezeit bei unangekündigter Gleisänderung |
gleisfalschmitte | 300 | Sekunden | Mittlere Haltezeit bei unangekündigter Gleisänderung |
any
eingeben werden.
Funktion | maxrandom ist Teil einer zufälligen Wartezeit-Berechnung. Die Einheit Minuten wird vom System auf Sekunden umgerechnet. |
Standardwerte | Die zufällige Wartezeit beträgt meistens etwa 30 Sekunden. Die Extremwerte sind auf 10 Sek. nach unten und 4 Min. (= 240 Sek.) nach oben festgelegt. |
Einstellmöglichkeiten | maxrandom ermöglicht das Einstellen eines abweichenden Extremwertes nach oben. Kleinster einstellbarer Extremwert nach oben ist 1 und ergibt damit 60 Sekunden. |
Auswirkungen | Es kann erreicht werden, dass der Zufall auch sehr lange zufällige Wartezeiten ergibt. |
Angenommen in der fiktiven Anlage Kleinstadt (AID 987) verkehrt das Template 23456, welches einen Zug mit Fahrradwagen darstellt. Möchte man im Sommer einen großen Andrang simulieren an allen Halten in der Anlage könnte man diese Zeile z.B. in den Regionshook schreiben:
sommer:bahnhof:987:23456(5,maxrandom,any,simparam);
Das würde dazu führen, dass der Zug zwar im Schnitt weiterhin etwa 30 Sekunden zufälliger Wartezeit bekommt an den Halten, es aber auch mal bis zu 5 Minuten werden können.
Funktion | randomdevisor ist Teil der Wartezeit-Berechnung auf Basis der im Fahrplan hinterlegten Standzeit. |
Standardwerte | Der voreingestellte Wert ist 2 . Da es nur ein Devisor für eine mathematische Rechnung ist, gibt es keine Einheit. |
Einstellmöglichkeiten | randomdevisor ermöglicht die Einkürzung der Haltezeit. Der Wert bildet die Mitte einer Zufallsberechnung ab zwischen den Extremwerten 2 und 5 ab. Daher können auch nur die Werte 2, 3, 4 oder 5 eingestellt werden. |
Auswirkungen | Je höher der Zufallsdevisor gesetzt wird, desto kürzer wird die Wartezeit auf Basis der Standzeit laut Fahrplan, da eine Standzeit von 10 Minuten durch 5 geteilt wesentlich kleiner ist als durch 2. |
Angenommen in der fiktiven Anlage Kleinstadt (AID 987) sollen alle Templates der Region ABC am Bahnsteig Innenreinigung 1
nur eine ganz schnelle Reinigung bekommen und die betrieblich notwendige Standzeit kann deswegen auch deutlich eingekürzt werden. Dann könnte man im Zughook der Region ABC schreiben:
*:bahnhof:987(4,randomdevisor,Innenreinigung 1,simparam);
Das würde dazu führen, dass z.B. ein Zug mit geplanten 40 Minuten Standzeit dort durchschnittlich bei Verspätung etwa 10 Minuten steht. Der Standardwert würde hier mehrheitlich 20 Minuten ergeben.
Funktion | minstop ist Teil der allgemeinen Wartezeit-Berechnung und stellt das absolute Minimum dar. |
Standardwerte | Der voreingestellte Wert ist 0 , die Einheit Sekunden. |
Einstellmöglichkeiten | minstop ermöglicht das Einstellen einer absoluten Mindesthaltezeit. Dabei muss die Angabe immer in Sekunden angegeben werden. |
Auswirkungen | Wenn alle anderen Berechnungen zur Wartezeit eines Zuges bereits die Abfahrt erlauben würden, kann dieser Wert sie noch verzögern. |
Angenommen für eine besondere Zuggattung gibt es ein extra ThemaScript. Um die notwendige Standzeit bei einem Personalwechsel zu simulieren, der immer auf Gleis 5 in Anlage 987 stattfindet, könnte im ThemaScript stehen:
*:bahnhof:987(90,150,rnd,minstop,5,simparam);
Das würde dazu führen, dass alle Züge, denen das ThemaScript zugewiesen ist, in der Anlage 987 auf Gleis 5 stets eine absolute Mindeststandzeit haben. In diesem Beispiel wurde sogar noch eine Zufallsberechnung eingebaut, die einen Wert zwischen 90 und 150 Sekunden ausgibt, sich also an 120 Sekunden orientiert. Schließlich gibt es flotte und gemütliche Lokführer.
minstop
ist wirkungslos, wenn am Fahrplanhalt ein A-Flag gesetzt ist!
300
gesetzt werden, muss auch maxstop
überschrieben werden!
Funktion | minstopR ist Teil der allgemeinen Wartezeit-Berechnung und stellt das absolute Minimum dar an Bahnsteigen mit gesetztem R-Flag. |
Standardwerte | Der voreingestellte Wert ist 30 , die Einheit Sekunden. |
Einstellmöglichkeiten | minstopR ermöglicht das Einstellen einer absoluten Mindestwendezeit. Dabei muss die Angabe immer in Sekunden angegeben werden. |
Auswirkungen | Wenn alle anderen Berechnungen zur Wartezeit eines Zuges bereits die Abfahrt erlauben würden, kann dieser Wert sie noch verzögern. Analog zu minstop aber eben für Richtungswechsel per R-Flag. |
Angenommen für ein S-Bahn-Netz gibt es ein extra ThemaScript. Um die notwendige Wendezeit bei einem Richtungswechsel zu simulieren, der immer mindestens etwa 2 Minuten dauert, könnte im ThemaScript stehen:
*:bahnhof(100,160,rnd,minstopR,any,simparam);
Das würde dazu führen, dass alle Züge, denen das ThemaScript zugewiesen ist und an allen Bahnsteien, wo ein R-Flag gesetzt ist, dort eine Mindestwendezeit zwischen 100 und 160 Sekunden bekommen.
minstopR
wirkt auch, wenn am Fahrplanhalt ein A-Flag gesetzt ist!
300
gesetzt werden, muss auch maxstop
überschrieben werden!
Funktion | maxstop ist Teil der allgemeinen Wartezeit-Berechnung und stellt das absolute Maximum dar. |
Standardwerte | Der voreingestellte Wert ist 5 , die Einheit Minuten. |
Einstellmöglichkeiten | maxstop ermöglicht das Einstellen einer absoluten Höchstwartezeit an einem Halt, sofern die Abfahrtszeit bereits erreicht ist. Dabei muss die Angabe immer in Minuten angegeben werden. |
Auswirkungen | Es kann erreicht werden, dass der Zug bereit ist zur Abfahrt, wenn alle anderen Berechnungen, es noch nicht erlauben würde. maxstop begrenzt die anderen Wartezeitberechnungen. |
Angenommen in einer Anlage wird eine Baustelle simuliert und dieser Bauzug (Template 12345) fährt immer wieder ein Stück weiter, soll aber auch bei Verspätung nicht immer sofort wieder abfahren, damit etwa das Abladen von Material simuliert werden kann. Um nicht für alle Halte Bauzughalt 1
bis Bauzughalt 6
Scriptzeilen schreiben zu müssen, weil eine pauschale Angabe dazu führen würde, dass die Ankunft am Halt der Zuführung zur Baustelle (AB 21
) auch verlängert würde, kann man es andersrum angehen und in den Regionshook etwa schreiben:
*:bahnhof:*:12345(500,700,rnd,minstop,any,simparam); *:bahnhof:*:12345(2,maxstop,AB 21,simparam);
Das würde dazu führen, dass alle Züge des Templates 12345 in jeder Anlage an jedem Halt 500-700 Sekunden Mindeststandzeit haben, am Halt AB 21
aber maximal 2 Minuten.
Funktion | soll_tempo setzt eine manuelle, absolute Geschwindigkeit eines Zuges. |
Standardwerte | - |
Einstellmöglichkeiten | soll_tempo ermöglicht das Einstellen eines Geschwindigkeitswertes für Züge. Keine Einheit, Werte analog zu allen anderen Tempo-Angaben. |
Auswirkungen | Es kann erreicht werden, dass ein Zug in seiner Geschwindigkeit begrenzt oder sogar beschleunigt wird. Der Wert greift dann, wenn der angegebene Bahnsteig im Fahrplan des Spielers (also der nächste abzuarbeitende Eintrag) ganz steht. Wird any verwendet gilt das angegebene Tempo von der Einfahrt des Zuges bis zu seiner Ausfahrt. |
soll_tempo
überschreibt alle anderen Geschwindigkeitsvorgaben. Abweichende Tempo-Werte aus dem Template, der Anlagen-Vmax, vmax-setzen-Elemente oder tempo
eines ThemaScripts werden ignoriert!
Angenommen wir wollen im schweren Winter in der Anlage 987 alle Züge etwas langsamer fahren lassen, dann könnte im Regionshook stehen:
schwerer_winter:bahnhof:987($tempo,1,-,soll_tempo,any,simparam);
Das würde dazu führen, dass alle Züge in der Anlage 987 im schweren Winter eine Stufe langsamer fahren als es ihr eigentliches Tempo vorsieht. Die Änderung per soll_tempo
wird bei Ausfahrt aus dem Stellwerk wieder zurückgesetzt!
Angenommen es gibt Züge, die mit GNT ausgestattet (Templates 12345 und 23456) sind und diese sollen in diversen Anlagen (987, 876 und 765) schneller fahren, als die übrigen Züge. So könnte man im Regionshook schreiben:
*:bahnhof:987,876,765:12345,23456($tempo,1,+,soll_tempo,any,simparam);
Das würde dazu führen, dass alle Züge dieser Templates in den genannten Anlagen eine Stufe schneller fahren als es ihr eigentliches Tempo vorsieht. Die Änderung per soll_tempo
wird bei Ausfahrt aus dem Stellwerk wieder zurückgesetzt!
Voraussetzung: alle Templates haben in dem Stellwerk für alle Bahnhöfe Durchfahrtszeiten eingetragen. Die Bahnhöfe haben nur durchgehende Gleise und alle Templates haben das selbe Gleis im Fahrplan je Richtung. Fiktiv angenommen jeweils Gleise 1 oder 2 pro Richtung.
Angenommen in der Anlage 987 wird bei Thema baustelle
(Bauarbeiten in einigen Regionen) zwischen den Bahnhöfen EFG
und KLM
ein Streckengleis gesperrt anlagenseitig. Zum Schutz der Arbeiten auf der Baustelle wird dann auf dem anderen Gleis langsamer gefahren, weil dort eine fiktive Langsamfahrstelle eingerichtet ist. So könnte es im Regionshook lauten:
baustelle:bahnhof:987(($tempo,4,>),(4,soll_tempo,EFG 1,simparam),(nop),if); baustelle:bahnhof:987(($tempo,4,>),(4,soll_tempo,KLM 2,simparam),(nop),if);
Das führt dann dazu, dass wenn der bei Durchfahrt des ersten Bahnhofs vor der Sperrung ein Tempo über 4 hat dieses bis zum nächsten Bahnhof auf 4 begrenzt wird und im Anschluss der Zug wieder normal weiter fährt.
Funktion | anrufwartezeit ist die Zeit, die ein Zug abwartet, bis er sich beim Spieler über eine fehlende Zustimmung zur Fahrt beschwert. |
Standardwerte | Der voreingestellte Wert ist 3 , die Einheit Minuten. |
Einstellmöglichkeiten | anrufwartezeit ermöglicht das händische Einstellen der Wartezeit, bis sich der Zug bei einem Spieler beschwert über den außerplanmäßigen Halt oder die fehlende Zustimmung zur Abfahrt. |
Auswirkungen | Es kann erreicht werden, dass der Zug erst nach langer Zeit meckert oder sehr schnell. |
Tf von Güterzügen sind es oft gewohnt, dass sie oft nicht informiert werden über einen außerplanmäßigen Halt. Darum kann man z.B. in einem Güterzug-ThemaScript schreiben, dass auch die Meldung für den Spieler erst verspätet kommen soll:
*:bahnhof(5,anrufwartezeit,any,simparam);
Funktion | gleisänderung ermöglicht die Ankündigung an den Zug über ein anderes Gleis durch den Spieler. |
Standardwerte | Der voreingestellte Wert ist 1 , keine Einheit. |
Einstellmöglichkeiten | gleisänderung kann mit 0 deaktiviert werden bzw. mit 1 aktiviert werden. |
Auswirkungen | Wird gleisänderung auf 0 gesetzt, so können die Spielenden keine Gleisänderung mehr im Funkmenü vornehmen. Es erscheint lediglich der Hinweis lt. Fahrplan, keine Gleisänderung möglich . |
gleisänderung
auf einen Alternativbahnsteig geleitet, so wird der Halt dort erkannt, aber er wird wie ein unangekündigter Gleiswechsel behandelt und bekommt dementsprechend ggf. lange Standzeiten.
gleisänderung
keine Auswirkung!
Angenommen in einer Anlage 987 gibt es zwei Bahnsteige Ladestraße 1
und Ladestraße 2
. Es soll verboten sein, die Ladestraßen zu wechseln. So könnte im Regionshook stehen:
*:bahnhof:987(0,gleisänderung,Ladestraße 1,simparam); *:bahnhof:987(0,gleisänderung,Ladestraße 2,simparam);
Das würde dazu führen, dass an den beiden Bahnsteigen keine Gleisänderung erlaubt ist, obwohl anlagentechnisch Alternativen zueinander sind. Für alle anderen Halte sind dann Wechsel noch zulässig.
Funktion | Die drei Werte erlauben die „Strafzeit“ zu bestimmen, wenn ein Zug unangekündigt auf ein falsches Gleis geleitet wird. |
Standardwerte | Die voreingestellten Werte sind 90 für gleisfalschmin , 300 für gleisfalschmitte und 900 für gleisfalschmax , Einheit sind Sekunden. |
Einstellmöglichkeiten | gleisänderung kann mit 0 deaktiviert werden bzw. mit 1 aktiviert werden. |
Auswirkungen | Mit diesen Werten wird die Strafzeit berechnet bei unangekündigten Gleiswechseln. Mit gleisfalschmin und gleisfalschmax werden dabei die Extremwerte nach unten und oben gesetzt. Mit gleisfalschmitte wird angegeben, welchen Tendenzwert die Zufallsberechnung haben soll. |
300
gesetzt sind, empfiehlt es sich auch maxstop
zu setzen, da letzterer Wert immer Vorrang hat.
Angenommen für ein S-Bahn-Netz existiert ein eigenes ThemaScript. Es soll darin festgelegt werden, dass S-Bahnen nie lange warten, auch wenn der Wechsel unangekündigt war. So könnte es darin heißen:
*:bahnhof(60,gleisfalschmin,any,simparam); *:bahnhof(90,gleisfalschmitte,any,simparam); *:bahnhof(180,gleisfalschmax,any,simparam);
Das würde dazu führen, dass Züge bei unangekündigten Gleiswechseln meistens etwa 90 Sekunden Strafstandzeit bekommen, mindestens jedoch 60, höchstens aber 180 Sekunden.
(minStopTime() UND minStopANAB() UND minStopRandom()) ODER maxStop()
(aktzeit - warankunft) > VAR_MINUTEN_maxstop(zielgleis)
aktzeit - warankunft > gauss(-10 sec, 30 sec, VAR_MINUTEN_maxrandom(zielgleis))
(aktzeit - warankunft) > (ab - an) / gauss(2, VAR_randomdevisor(zielgleis), 5)
Wenn Halt am richtigen Bahnsteig (bzw. mit Ankündigung)
(aktzeit - warankunft) > VAR_SEKUNDEN_minstop(zielgleis)
Sonst
(aktzeit - warankunft) > gauss(VAR_SEKUNDEN_gleisfalschmin, VAR_SEKUNDEN_gleisfalschmitte, VAR_SEKUNDEN_gleisfalschmax)
Variable | Erklärung |
---|---|
aktzeit | aktuelle Spielzeit |
warankunft | tatsächliche Ankunftszeit |
an | Ankunft laut Fahrplan |
ab | Abfahrt laut Fahrplan |
gauss(a,b,c) | Zufallszahl zwischen a und c, wobei b die Mitte darstellt |
VAR_SEKUNDEN | simparam Variable, Wert in Sekunden |