Vorschau "GetArrBusTimeDiff"

Welcome to the OMSI-WebDisk!
As guest you can only see content in your selected language! Registered users can choose the visibility of other languages in their control panel, more informations here. All topics are marked with a language flag inside the forums: = English [EN], = German [DE], = French [FR].
If you're not able to speak the topic language than write in English!
  • Grüßt euch!


    Kurz und knapp: kann man mit dem oben im Titel stehenden Systemmakro auch weiter als eine Stunde die Abfahrten für Busse vorhersagen?


    Hab mir ein DFI zusammengebastelt und das kann eben 13 Busse anzeigen (oder 12 mit einer dynamischen Laufzeile).

    Und da an manchen Haltestellen nur 1-2 Abfahrten die Stunde erfolgen, wäre das schön, wenn man da bisschen mehr in die Zukunft schauen könnte.


    Die Abfahrten werden ja als Uhrzeit angegeben also würde dann nicht "in 700 Min" stehen oder so ^^


    Hoffe ihr könnt mir da helfen.


    - IRE612 -

    Gemeinsam gegen Corona! Abstand halten, Mund und Nase bedecken. Togheter against Corona! Keep distance, cover mouth and nose.

    OMSI-Modder

    OMSI 2, der Omnibussimulator - der Gute, mit Stückchen!

  • Advertisement
  • Hello,

    I although I cannot be sure, to my knowledge there is no limit to the time on this function, it will just return a value in minutes (so for something in more than 1h it will return something bigger than 60 mins)


    Hope this helps,
    Adam Mathieson

    Part of the Grand Paris Moulon DLC team

  • Falls es tatsächlich nicht gehen sollte, gäbe es natürlich noch Möglichkeiten per Skript-Magie:

    • Die Abfahrtszeiten "hart" eincodieren oder im Editor mit Variablen steuern
    • Falls der Takt regelmäßig ist, ab dem x-ten Bus einfach den vorherigen Eintrag nehmen und den Takt aufaddieren
  • Hello Adam!


    Thanks for your answer! :-)


    But is it possible to show up the departure of busses in more than 60 minutes?


    Best regards

    Julien


    Die Abfahrtszeiten "hart" eincodieren oder im Editor mit Variablen steuern

    Hmm... normalerweise wäre das auch realistischer. Die Dinger haben bei uns keine Echtzeitauskunft, selbst wo gestreikt wurde, standen noch alle Busse dran! Fährt der Bus zu früh ab, bleibt er solange dran stehen, bis die Zeit um ist. Fährt er zu spät, ist der Eintrag eben schon weg.


    Da muss ich mir mal nen Kopf machen, wie man das ganz easy eintragen kann...


    - IRE612 -

    Gemeinsam gegen Corona! Abstand halten, Mund und Nase bedecken. Togheter against Corona! Keep distance, cover mouth and nose.

    OMSI-Modder

    OMSI 2, der Omnibussimulator - der Gute, mit Stückchen!

    Edited once, last by IREgio612: Ein Beitrag von IREgio612 mit diesem Beitrag zusammengefügt. ().

  • Given this is not something I have had to do before, I cannot be certain, but the documentation certainly doesn't mention any limits to time all it says is that it will return the time in seconds, I can go and test some things if you would like to see if I can get it working on my end.


    Kind regards,

    Adam Mathieson

    Part of the Grand Paris Moulon DLC team

  • Yes, but you can choose a "new" shedule only 60 minutes before departure too. For example, I will drive a nightline (dep.: 11.50pm). The reallife-time is 1.30pm. So I must wait until 10.50pm before I can choose the shedule.

    Maybe it's related with the function?


    Best regards

    Julien

    Gemeinsam gegen Corona! Abstand halten, Mund und Nase bedecken. Togheter against Corona! Keep distance, cover mouth and nose.

    OMSI-Modder

    OMSI 2, der Omnibussimulator - der Gute, mit Stückchen!

  • Very True, it is definitely possible that these two are related, thus making it impossible to get departures more than 1h in advance.


    Kind regards,

    Adam Mathieson

    Part of the Grand Paris Moulon DLC team

  • Ich glaube auch nicht, dass es möglich ist. Das Debug-Fenster zum Beispiel zeigt im Reiter "Stations" auch nur Abfahrten innerhalb der nächsten 60 Minuten an.

    Ist halt wieder so ein typisches OMSI-Ding. Abfahrtszeiten in mehr als 60 Minuten wurden für den Lieferumfang nicht benötigt, da der Anzeiger, der am U-Bahnhof Ruhleben hängt, eh nur zwei Abfahrten anzeigt. Also wurde es auch nicht umgesetzt. Das soll kein Vorwurf sein - man kann oder will als Entwickler schließlich nicht sämtliche Eventualitäten vorausahnen, die Modder mal benötigen könnten. Genausowenig gibt es einen Anspruch der Modder darauf, dass alles umsetzbar sein muss.

    Da muss man m. E. einfach Abstriche machen. Den Aufwand für das feste Eincodieren (besonders, wenn man - so wie ich - den DFI-Anzeiger an zahllosen Haltestellen platzieren möchte) rechtfertigt das Ergebnis meiner Meinung nach in keiner Weise, besonders, wenn dann Busse von der Anzeige verschwinden, bevor sie abgefahren sind (was beim von mir nachgestellten Modell in der Realität nicht der Fall ist).

    Man könnte es zwar vielleicht - genau hab ich mir das jetzt nicht überlegt - so umsetzen, dass alle Abfahrten bis 60 Min über GetArrBusTimeDiff, und alle darüber aus einer fest integrierten Liste genommen werden, aber das wäre erstens nochmal sehr kompliziert und aufwendig, und zweitens bleibt das Problem, dass das dann nur für eine konkrete Haltestelle funktioniert (oder interpretiere ich das "fest eincodieren" falsch?)


    Genauso muss man ja bereits - zumindest wenn das reale Vorbild eine Echtzeitfunktion unterstützt - auch dort Abstriche machen. Schließlich zeigt eine reale Anzeige bei einem 10 Minuten verspäteten Bus nicht 10 Minuten lang "sofort" an, sondern passt die Zeitprognose "in x Minuten" dynamisch an, sodass erst "sofort" (o. Ä.) angezeigt wird, wenn der Bus auch wirklich in weniger als 1 Minute erscheint.

    Mir ist kein DFI-Anzeiger in OMSI bekannt, der das umgesetzt hat, und ich weiß auch nicht, ob die Verspätung von KI-Fahrzeugen überhaupt ausgelesen werden kann, was ja dafür notwendig wäre. Außerdem würde es sicherlich negative Einflüsse auf die Performance haben.


    Kurzgesagt muss man sich glaube ich in OMSI einfach damit abfinden, dass DFIs nur in Teilen realistisch umgesetzt werden können. Dinge, die einem im normalen Spielablauf kaum auffallen, wie eben die Zeitspanne, die der Anzeiger abdeckt, oder eben das realistische Verhalten der Zeitprognose (OMSI ist nicht dazu gedacht, dass man sich an die Haltestelle stellt, und schaut, ob die DFIs alles richtig anzeigen) sind kaum bis gar nicht umsetzbar...


    Ich habe in meinen DFIs auch eine Anzeige eingebaut, die von OMSI in der Form nicht vorgesehen wurde. Einige Linien/Ziele werden mit einem Symbol markiert. Die Zuordnungslogik der einzelnen Symbole ist fest ins Script integriert, sodass die Anzeiger auf anderen Karten nicht sinnvoll eingesetzt werden können. Wenn man nun bestimmte, von OMSI nicht vorgesehene Anzeigen einbauen möchte, die man dann sogar für jede einzelne Haltestelle oder gar jeden Fahrplanwechsel aufwendig abändern muss, braucht man dazu Ausdauer und Motivation in einem Maße, das mir bei weitem abgeht ;)


    Wenn sich aber doch eine etwas weniger aufwendige Methode, das umzusetzen, findet, bin ich natürlich auch daran interessiert.


    Grüße

  • Naja wie gesagt, ich hab das DFI nach realem Vorbild gebaut, und bei uns laufen die Busse auf der Anzeige nach einem bestimmter Liste ab. Egal ob +5, -5, Ausfall oder sonst was... der Bus bleibt bis planm.Abfahrt dran stehen.

    Aber stimmt, schon wäre es wenn es so einfach gehen würde ;-)


    - IRE612 -

    Gemeinsam gegen Corona! Abstand halten, Mund und Nase bedecken. Togheter against Corona! Keep distance, cover mouth and nose.

    OMSI-Modder

    OMSI 2, der Omnibussimulator - der Gute, mit Stückchen!