Handbuch

STS Handbuch

Stellwerksim Handbuch

Webseiten-Werkzeuge


stellwerksim:tutorials:bauen:zuege:namensmuster

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

stellwerksim:tutorials:bauen:zuege:namensmuster [2016/02/13 14:01] – Externe Bearbeitung 127.0.0.1stellwerksim:tutorials:bauen:zuege:namensmuster [2016/02/13 19:42] (aktuell) – gelöscht admin
Zeile 1: Zeile 1:
-====== Namensmuster ====== 
  
-Nun haben wir Züge erzeugt, aber die kann man nicht auseinanderhalten - sie brauchen einen Namen. Bei der DB besteht dieser Name aus der Zuggattung (z.B. ICE) und einer Nummer (z.B. 504), die möglichst nur einmal am Tag auftaucht. 
- 
-Bei den meisten Bahnunternehmen gibt es daher Listen mit Nummernbereichen für bestimmte Züge (bei der DB sind z.B. die Nummern 0 bis 999 Fernzüge). Auch für Güter- und Sonderzüge gibt es solche Nummernbereiche. 
- 
-Auch hier im Sim muss ein Zugname eindeutig sein, dazu zählt aber neben der Nummer auch die Zuggattung und ein eventueller Kommentar dahinter. 
- 
-Zugnamen können grundsätzlich frei gewählt werden, solange sie mindestens ein sichtbares (siehe unten) Zeichen enthalten und im Sim-System eindeutig sind. Normalerweise orientier man sich aber an dem Zugnummernmuster des Vorbilds. 
- 
-===== Rechnen mit dem Namen ===== 
- 
-Grundsätzlich kann man pro Template nur ein Namensmuster angeben, aber viele Züge erzeugen. Wie kann man nun dafür sorgen, dass jeder Zug einen eigenen Namen hat? 
- 
-Die Lösung: Der Server rechnet bei jedem Zug die Zugnummer aus. Dafür gibt es Variablen, die sich während des Erzeugens der Züge ändern. Sie beginnen alle mit einem Dollarzeichen $: 
- 
-  * $zi - Fortlaufender Zähler, beginnt mit 0 bei jedem Template 
-  * $ti - Fortlaufender Zähler, beginnt mit 0 bei jedem ZugScript 
-  * $stdmin - Stunde und Minute der Abfahrt am Referenzbahnsteig 
-  * $i - Fortlaufender Zähler über alle erzeugten Züge 
- 
-<note>noch mehr?</note> 
- 
-Hierzu einige Beispiele. 
- 
-==== Beispiel 1 ==== 
- 
-  Namensmuster: RB 21002+$zi*2 
-  ZugScript: takt(60,ID=123,GLEIS=A-Dorf,STUNDE=5..8); 
- 
-Dieses Namensmuster erzeugt folgende Züge: 
- 
-  RB 21002 
-  RB 21004 
-  RB 21006 
- 
-Gerechnet wird nach den gängigen Rechenregeln: 
- 
-  21002+0*2 = 21002 + (0 * 2) = 21002 + 0 = 21002 
-  21002+1*2 = 21002 + (1 * 2) = 21002 + 2 = 21004 
-  21002+2*2 = 21002 + (2 * 2) = 21002 + 4 = 21006 
- 
-Wichtig: Die Variablen fangen immer bei 0 an. Die Zugnummer im Namensmuster ist also die Nummer des ersten Zuges. 
- 
-==== Beispiel 2 ==== 
- 
-<note>Weiteres Beispiel</note> 
- 
-===== Unsichtbare Zusätze: Das %-Zeichen ===== 
- 
-Da es doch mal vorkommt, dass Zugnummern im Sim mehrfach vorkommen (z.B. weil ICEs in mehreren Templates dargestellt werden müssen oder zwei Regionen die gleiche Nummer für ihren Güterzug wählen), gibt es eine Erweiterung: Hinter dem Namen, der für den Spieler sichtbar sein soll, kann man ein Prozentzeichen % setzten. Dieses % und alles, was dahinter folgt, wird dem Spieler nicht mehr angezeigt, ist aber Teil des Zugnames und hilft dem Erbauer beim Unterscheiden der Züge. 
- 
-Dabei muss man natürlich beachten, dass der Spieler evtl. nur einen Teil des Namens sieht - und damit zwei Züge mit dem gleichen Namen vor dem % nicht auseinanderhalten kann: Weder auf Displays noch bei Zugmeldungen noch bei Fehlermeldungen im Forum. Daher sollte man darauf achten, dass der für den Spieler sichtbare Name trotzdem von diesem auseinander gehalten werden kann. 
- 
-===== NAME als ZugScript-Parameter ===== 
- 
-Es gibt die Möglichkeit, das Namensmuster statt für das Template nur für jedes einzelne ZugScript zu setzten. Das Namensmuster-Feld des Templates bleibt dann leer. Es kann aber nur eines von beiden gemacht werden. 
- 
-Im ZugScript wird dann der zusätzliche Parameter NAME=xxx angegeben, xxx steht hier für das Namensmuster. 
- 
-Wichtig: Wird das Namensmuster innerhalb des ZugScripts angegeben, wird $zi bei mehreren ZugScripten nicht zurückgesetzt, sondern läuft weiter! Normalerweise ist hier $ti die bessere Wahl. 
- 
-  takt(60,ID=123,GLEIS=A-Dorf,STUNDE=5..8,NAME=RB 21201+$zi*2); 
-  takt(60,ID=123,GLEIS=A-Dorf,STUNDE=9..12,NAME=RB 21209+$zi*2); 
- 
-Hier werden folgende Züge erzeugt: 
- 
-  RB 21201 
-  RB 21203 
-  RB 21205 
-   
-  RB 21215 
-  RB 21217 
-  RB 21219 
- 
-Möchte man aber eine fortlaufende Nummerierung mit Auslassen eines Zuges, muss man $ti verwenden: 
- 
-  takt(60,ID=123,GLEIS=A-Dorf,STUNDE=5..8,NAME=RB 21201+$ti*2); 
-  takt(60,ID=123,GLEIS=A-Dorf,STUNDE=9..12,NAME=RB 21209+$ti*2); 
- 
-Dies erzeugt folgende Züge: 
- 
-  RB 21201 
-  RB 21203 
-  RB 21205 
-   
-  RB 21209 
-  RB 21211 
-  RB 21213 
- 
-===== Und im nächsten Kapitel... ===== 
- 
-... wird der Fahrplan erstellt. 
- 
-Dieses Kapitel wird in Zukunft ergänzt. 
- 
-| [[.:zugscript2|Zurück: ZugScript (2)]] | [[..:zuege|Nach oben: Züge]] | 
stellwerksim/tutorials/bauen/zuege/namensmuster.1455368464.txt.gz · Zuletzt geändert: 2016/02/13 19:42 (Externe Bearbeitung)