Handbuch

STS Handbuch

Stellwerksim Handbuch

Webseiten-Werkzeuge


Seitenleiste



JavaScript ist deaktiviert!

stellwerksim:editor:themascript:sts-befehle

Dies ist eine alte Version des Dokuments!


Allgemein

Neben den allgemeingültigen gibt es auch Befehle, welche eigens für den Stellwerksim definiert wurden. Mit diesen Befehlen können die Züge beeinflusst werden. Dabei können Werte gesetzt, aber auch ausgelesen werden. Zum setzen wird der Name eines Befehles als Operator eingesetzt, zum auslesen wird vor dem Namen ein $ (Dollar) eingefügt und das ganze als Parameter eingefügt. Die Gross-, Kleinschreibung sollte eingehalten werden.

StellwerkSim spezifische Kommentarfunktion:

Neben den normalen Kommentaren (#) (siehe Themascript-Handbuch-Startseite) können auch Spezialkommentare eingegeben werden:

  • #DESC - diese Zeilen werden in der ThemaScript-Übersichtsliste (ThemaScript-Editor) ausgegeben
  • #DATE - enthält immer das Datum der letzten Sicherung, wird automatisch gesetzt

Wichtig: hinter dem Schlüsselwort muß immer ein Leerzeichen stehen!

Die Befehle:

verspätung oder verspaetung

Die (Start-)Verspätung des Zuges. Sowohl verspätung als auch verspaetung werden als Schreibweisen akzeptiert.

  • lesen: kein Parameter (Klasse:Start;Bahnhof) [Blockkopf($verspaetung); Die Verspätung wird ausgegeben]
  • schreiben: 1 Parameter (Ganzzahl) (Klasse:Start;Bahnhof) [Blockkopf(4,verspaetung); Die Verspätung wird auf 4 gesetzt]

tempo

Das Tempo des Zuges

  • lesen: kein Parameter (Klasse:Start;Bahnhof) [Blockkopf($tempo); Das Tempo wird ausgegeben]
  • schreiben: 1 Parameter (Ganzzahl) (Klasse:Start;Bahnhof) [Blockkopf(4,tempo); Das Tempo wird auf 4 gesetzt]

länge oder laenge

Die Länge des Zuges. Sollte bei Übergabepunkten nicht geändert werden, es sei den im vorhergehenden Stellwerk wird geflügelt oder gekuppelt. Sowohl länge als auch laenge sind akzeptierte Schreibweisen.

  • lesen: kein Parameter (Klasse:Start;Bahnhof) [Blockkopf($laenge); Die Länge wird ausgegeben]
  • schreiben: 1 Parameter (Ganzzahl) (Klasse:Start;Bahnhof) [Blockkopf(4,laenge); Die Länge wird auf 4 gesetzt]

aktiv

Legt fest ob ein Zug überhaupt fährt oder nicht. Sobald ein Zug deaktiviert wurde, kann er an diesem Spieltag [b]nicht[/b] reaktiviert werden

  • lesen: kein Parameter (Klasse:Start) [Blockkopf($aktiv); gibt an, ob der Zug aktiv ist oder nicht (1 oder 0)]
  • schreiben: 1 Parameter (J für aktiv, N für inaktiv) (Klasse:Start) [Blockkopf(N,aktiv); setzt den Zug inaktiv]

anstunde

gibt die Stunde der ersten Ankunftszeit des Zuges zurück, entwerder für den ganzen Zuglauf (Klasse Start) oder im Stellwerk (Klasse Bahnhof)

  • lesen: kein Parameter (Klasse:Start;Bahnhof) [Blockkopf($anstunde);]

abstunde

gibt die Stunde der letzten Abfahrtszeit des Zuges zurück, entwerder für den ganzen Zuglauf (Klasse Start) oder im Stellwerk (Klasse Bahnhof)

  • lesen: kein Parameter (Klasse:Start;Bahnhof) [Blockkopf($abstunde);]

abstundev

gibt die Stunde der letzten Abfahrtszeit des Zuges für das vorherige Stellwerk zurück

  • lesen: kein Parameter (Klasse:Bahnhof) [Blockkopf($abstundev);]

flag

prüft, ob ein Flag im Bahnhof gesetzt ist, dazu muß das zu prüfende Flag als Parameter übergeben werden, erlaubte Flags sind R, E, K, F, W, L, A, B1, B2

  • lesen: 1 Parameter (Flag) (Klasse:Start) [Blockkopf(R,$flag); Prüft ob ein R-Flag gesetzt ist]

Bx Flags (x durch eine Zahl von 1 bis 9 ersetzen) funktionieren nur in Verbindung mit Themascripten. Dabei können sie auch etwas anderes bewirken als im Standard-script definiert.

wurdegesteuert

gibt TRUE zurück, wenn das letzte Stellwerk des Zuges im Fahrplan gesteuert wird. Das bedeutet nicht zwingend, dass der Spieler den Zug auch gefahren hat!

  • lesen: kein Parameter (Klasse:Bahnhof) [Blockkopf($wurdegesteuert);]

wirdgesteuert

gibt TRUE zurück, wenn das Stellwerk zu dem der Zug jetzt kommt gerade jetzt gesteuert wird. Das bedeutet nicht zwingend, dass der Spieler den Zug auch fahren wird!

  • lesen: kein Parameter (Klasse:Bahnhof) [Blockkopf($wirdgesteuert);]

neuaid

gibt die ID des Stellwerks zurück, an das der Zug jetzt kommt. Anstelle dieses Befehles sollte der erweiterte Blockkopf verwendet werden. * lesen: kein Parameter (Klasse:Bahnhof) [Blockkopf($neuaid);]

altaid

gibt die ID des Stellwerks zurück, von dem der Zug kommt (laut Fahrplan) oder 0 beim 1. Stellwerk des Fahrplans

  • lesen: kein Parameter (Klasse:Bahnhof) [Blockkopf($altaid);]

themamarker

legt eine Markierung für einen Zug fest, es kann nur ein Themamarker pro Themascript angegeben werden, die Themammarker werden hierbei mit A-H bezeichnet

  • lesen: kein Parameter (Klasse:Bahnhof) [Blockkopf($themamarker); Der aktuell aktivierte Themamarker wird ausgegeben]
  • schreiben: 1 Parameter (Buchstabe A-H) (Klasse:Start) [Blockkopf(A,$themamarker); Themamarker A wird gesetzt]

simparam

Das ändern der Werte durch Simparam kann das verhalten des Sim stark verändern! Alle Änderungen gelten nur für den einen Zug und nur für das eine Stellwerk!

Setzen eines Wertes ergänzt die bestehenden Werte, das heisst die Werte werden nicht überschrieben. Betritt ein Zug ein neues Stellwerk ist der Befehl wieder leer.

Das simparam ist wie folgt aufgebaut: Blockkopf(Wert,Bedeutung,Bahnhof,simparam);

Parameter: *Klasse: Bahnhof (S)

  • schreiben: 3 Parameter (Klasse:Bahnhof) [Blockkopf(30,minstop,any,simparam); An allen Bahnsteigen hält der Zug mindestens 30 Sekunden]
  • Werte
  1. maxrandom Obergrenze zufällige Wartezeit
  2. minstop mindest Wartezeit
  3. maxstop maximale Wartezeit
  4. randomdevisor Mittelwert für Faktor durch den die normale Haltezeit bei Verspätungen geteilt wird, Bereich 2 - 5
  5. soll_tempo Tempo welches der Zug in der Anlage fahren soll. Damit kann auch Anlagen-vMax überschritten werden!
  6. anrufwartezeit Wartezeit bis zum Anruf bei rotem Signal
  7. gleisänderung Gleisänderung erlauben (0,1)
  8. gleisfalschmin Die minimale Aufenthaltsdauer bei unangekündigter Gleisänderung
  9. gleisfalschmax Die maximale Aufenthaltsdauer bei unangekündigter Gleisänderung
  10. gleisfalschmitte Der Mittelwert der Aufenthaltsdauer bei unangekündigter Gleisänderung
  • bahnsteig

Solange der eingetragene Bahnsteig im Fahrplan vorzufinden ist, also vom Zeitpunkt in dem der Zug ins Stellwerk einfährt bis er den eingetragenen Bahnsteig verlassen hat, wird das simparam ausgeführt. Soll ein Wert für alle gelten, so muss als bahnsteig „any“ angegeben werden, kein Stern!

Die Standardwerte sind:

maxrandom 4 (Angabe in Minuten)
minstop 0 (Angabe in Sekunden)
maxstop 5 (Angaben in Minuten)
randomdevisor 2
soll_tempo Maxtempo des Templates
anrufwartezeit 3 (Angabe in Minuten)
Gleisänderung Ja (Wert grösser 0)
gleisfalschmin 90 (Angabe in Sekunden)
gleisfalschmax 600 (Angabe in Sekunden)
gleisfalschmitte 300 (Angabe in Sekunden)

So werden die simparams berechnet.

Abfahren wenn: (minStopTime() UND minStopANAB() UND minStopRandom()) ODER maxStop()

maxStop(): (aktzeit - warankunft) > VAR_MINUTEN_maxstop(zielgleis)

minStopRandom(): aktzeit - warankunft > gauss(-10 sec, 30 sec, VAR_MINUTEN_maxrandom(zielgleis))

minStopANAB(): (aktzeit - warankunft) > (ab - an) / gauss(2, VAR_randomdevisor(zielgleis), 5)

minStopTime(): 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)

aktzeit: aktuelle Spielzeit warankunft: tatsächliche Ankunftzeit an: Ankunft laut Fahrplan ab: Abfahrt laut Fahrplan gauss(a,b,c): Zufallszahl zwischen a und c, wobei b die Mitte darstellt VAR_SEKUNDEN heisst: simparam Variable, Wert in Sekunden

stellwerksim/editor/themascript/sts-befehle.1457866715.txt.gz · Zuletzt geändert: 2016/03/13 11:58 von 127.0.0.1