Jump to content

Fahrplan


Draisine

Empfohlene Beiträge

Hallo Leute

Ich habe mir für meine Anlage mit MBS einen Fahrplan gebastelt.

fahrplan.thumb.JPG.fb6fceec9fa9d9717a4ec04147e7ff8c.JPG

Die 220 Ankünfte und 220 Abfahrten eines Tages sind nach realem Vorbild erfasst .
Es werden jeweils nur die nächsten 10 Ankünfte und Abfahrten angezeigt. Die Fahrplanzeige wird jede Minute einmal aktualisiert und steuert auch die Bahnsteiganzeigen.

perron.JPG.10fb183efa7cbc51ade041b43543753a.JPG

Damit ich die in Rocrail bereits eingetragenen Züge nicht nochmals im MBS erfassen musste, schrieb ich mir mit LUA einen kleinen xml-Parser um das Plan.xml aus Rocrail einzulesen.

Als Nächstes werde ich mir ein Spielergebnis anzeigen lassen, bei dem jede Verspätungsminute einen Minuspunkt und jede Ankunft eines Güterzuges in einem der Schattenbahnhöfe einen Pluspunkt gibt.
Die Herausforderung wird also sein, den Personenverkehr ohne Verspätungen gemäss diesem Fahrplan abzuwickeln und dabei möglichst viele Güterzüge dazwischen zu schieben.

Vielleicht gibt das dem Einen oder Anderen noch eine zusätzliche Idee.

Spielerische Grüsse

Draisine

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor einer Stunde schrieb HaNNoveraNer:

Darf ich auch mal in den Parser schauen?  :-)

Hallo Thomas

Die Anlage "Arth-Goldau V6" ist als Entwurf veröffentlicht. ID 28443A71-B605-4B63-A057-F40A52F19F73

Du findest den Parser in der EV unter Fahrplan - Rocrail Daten einlesen.

Es wird dort nur der Fahrplan-Teil (<sclist) aus dem plan.xml eingelesen. Dazu musste ich vorher mit einem Editor noch gewisse Zeichen mit Suchen/Ersetzen ändern, ich glaube alle " in ' und alle \r\n in \ \r\n und dann ab mit Cut/Paste in eine Variable. Aber das dürfte für Dich kein Problem sein.

Er ist natürlich überhaupt nicht allgemeingültig, sondern auf meine Bedürfnisse zugeschnitten. Er ist auch weder sauber programmiert noch kommentiert. Ich brauchte ihn ja nur einmal. Vielleicht findest Du etwas, was Du gebrauchen kannst.

Gruss

Draisine

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Draisine

Cool Danke.
Das hat mich wirklich auf neue Ideen gebracht.
Ich hatte noch garnicht gesehen, daß man EV und Lua Scripte so mischen kann :-(
Damit kann man sich ja "Ereignis Variablen und Funktionen" definieren und muß nicht immer "Modul-Variablen oder Scripte" nutzen.
Schade nur, daß man mit nachfolgenden EV Aktionen und Bedingungen nicht auf die in den Scripten definierten Variablen zugreifen kann...
Mit nachfolgenden Scripten geht das ja, da das wie ein Script sequentiell abgearbeitet wird.

Die Idee, einen String zu kopieren und den zu parsen, finde ich auch gut.
Damit könnte man alle möglichen Strukturen von außen parametrieren.
Z.B. Ampelschaltungen über Excel (csv).

Gruß
Thomas

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 16 Minuten schrieb HaNNoveraNer:

Schade nur, daß man mit nachfolgenden EV Aktionen und Bedingungen nicht auf die in den Scripten definierten Variablen zugreifen kann.

Dann definiere in solchen Fällen, wo du das benötigst, keine Variable im Skript, sondern nutze eine Objekt- oder Modulvariable, um den Wert anderswo verfügbar zu machen. Im Skript würde ich überhaupt nur lokale Variablen definieren. Als Zwischenträger für Berechnungen, Auswertungen etc.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 34 Minuten schrieb HaNNoveraNer:

Damit kann man sich ja "Ereignis Variablen und Funktionen" definieren und muß nicht immer "Modul-Variablen oder Scripte" nutzen.


 

Soll eben nur im Ereignis z.B.  "Schalter betätigt" bekannt sein und nicht für alle Ereignisse im Modul.
Aber dort eben für ALLE Aktionen, auch die der EV.
Ist schon klar, daß das nicht so einfach zu realisieren wäre, wenn man die Variablen aus dem Lua Code migriert :-)
War ja auch nur laut gedacht.
 

Bearbeitet von HaNNoveraNer
Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...