Wie greift das DLC Hamburg eigene Fahraufträge zu?

Willkommen in der OMSI-WebDisk!
Als Gast kannst du nur Inhalte in deiner ausgewählten Sprache sehen. Registrierte Nutzer können die Sichtbarkeit anderer Sprachen in ihrem Kontrollzentrum aktivieren, weitere Infos hier.
Alle Themen sind in den Foren mit einer Sprachflagge gekennzeichnet: = Englisch [EN], = Deutsch [DE], = Französisch [FR]. Wenn du die angegebene Sprache nicht beherrschst, schreibe auf Englisch!
  • Servus zusammen,


    Die Hamburger Busse greifen auf den Hamburger Karten auf die mitgelieferten Fähraufträge, die in den Bussen hinterlegt sind zu!


    Wäre dies bei anderen Bussen und Karten auch möglich?

    Durch welches Script wird dies gesteuert?

  • ticketprinter_almex und timetable_system die haben Scriptabschnitte "Unterscheidung Hamburg - Fremdkarte", mit den entsprechend bekannten Folgen und Auswirkungen. V. a. das timetable_system wird für den Zettel verantwortlich sein.


    Müsste man alles genau studieren und probieren, dann kann man das bestimmt einbauen.

  • Moin,

    das alles wird vom Ticketprinter- (also Drucker) Script übernommen.

    Das Script wurde von Darius Bode (dem Entwickler der Hamburg-Addons) eben für die Map entwickelt und veröffentlicht.

    Allerdings ist das Script sehr komplex und ich glaube, niemand außer Darius selbst ist bisher wirklich zu 100% dadurch gestiegen, wie es tatsächlich genau arbeitet.

    Zudem ist es eben speziell auf die Hamburger Busse, Linien und Fahrpläne zugeschnitten. Dementsprechend funktioniert das ganze auf Fremdkarten auch nur eingeschränkt.

    Allerdings gibt es in OMSI keine Möglichkeit, über das Script direkt die derzeit aktive Linie/Umlaufnummer herauszufinden. Der Hamburger Drucker geht hier - soweit ich es richtig durschaut habe - einen sehr aufwendigen Workaround. Es wird von der aktuellen Fahrt ermittelt, an welcher Haltestelle diese startet und was die planmäßige Abfahrtszeit ist. Aus diesen Infos kann der Drucker dann schlussfolgern, auf welchem Umlauf man sich gerade befindet. Ziemlich kompliziert, aber es funktioniert offentsichtlich. Aber hier siehst du eben auch wieder: Das Script ist speziell für die Hamburger Fahrpläne programmiert und funktioniert daher nur dort.

    Ein Umbau für eine andere Map wäre vermutlich sehr aufwendig.


    Natürlich kann man ein vergleichbares System auch für jede andere Map entwickeln. Zu deiner Frage also: Ja, natürlich wäre das auch bei anderen Karten und Bussen möglich. Ist halt nur entsprechend kompliziert und man benötigt die entsprechenden Kenntnisse im OMSI-Scriptsystem. Ein einfaches "Aus- und wieder Einbauen auf einer anderen Map" wird hier leider kaum funktionieren.


    Schau dir sonst gerne im Almex-Script in einem Hamburger Bus deiner Wahl den Abschnitt unter {macro:hamburg_umlauf} an. Das ist die Umlauferkennung.

  • Allerdings gibt es in OMSI keine Möglichkeit, über das Script direkt die derzeit aktive Linie/Umlaufnummer herauszufinden. Der Hamburger Drucker geht hier - soweit ich es richtig durschaut habe - einen sehr aufwendigen Workaround. Es wird von der aktuellen Fahrt ermittelt, an welcher Haltestelle diese startet und was die planmäßige Abfahrtszeit ist. Aus diesen Infos kann der Drucker dann schlussfolgern, auf welchem Umlauf man sich gerade befindet. Ziemlich kompliziert, aber es funktioniert offentsichtlich. Aber hier siehst du eben auch wieder: Das Script ist speziell für die Hamburger Fahrpläne programmiert und funktioniert daher nur dort.

    Kleiner Fun Fact am Rande: Das ist gar nicht so kompliziert, die ersten beiden Ziffern des Umlaufs ergeben sich aus der Linie, die letzten 3 aus den Sekunden der Abfahrtszeit (d.h. eine Fahrt von Umlauf XX001 fängt z.B. um 05:00:01 an, wenn es Umlauf 012 wäre um 05:00:12). Deswegen auch immer diese Krummen Abfahrtszeiten auf den Hamburg-Karten.

  • Ach über die Sekunden läuft das? Das ergibt Sinn, danke für die Erläuterung.

    Ich habe mich das schon gefragt, weil ja sonst eigentlich im Script jede einzelne existierende Fahrt irgendwie mit der dazugehörigen Umlaufnummer hinterlegt ist, was aber offentsichtlich nicht der Fall ist. Das ist natürlich echt clever, über die Sekundenstelle der Abfahrt zu "kodieren", welcher Umlauf das ist. Ist zwar (wie fast alles an dem System) nicht so wirklich sauber, aber es geht halt nicht viel besser.