Beiträge von Busfanat

Das Forum befindet sich im reduzierten Betrieb. Die Addon- und Supportforen bleiben weiterhin verfügbar.
Bitte beachte, dass OMSI nicht mehr weiterentwickelt wird. Ein Teil der Entwickler widmet sich inzwischen der Entwicklung eines neuen Simulators. Weitere Informationen zum LOTUS-Simulator findest Du hier.
Ein communitybetriebenes Nachfolge-Forum wird hier verlinkt, sobald es gegründet und bereit ist.

    Good evening again,


    okay, sorry. There are some "kiddies" in the german part of the forums which are that impatient so I just wanted to make it clear. If you did it due to another reason I'm sorry.


    When you're french, that's a pity 'cause I can't neither understand nor speak nor write it.


    I'll try it again.


    In the Matrix_Fontfile.osc there is the macro Matrix_Fontloader_Sonderziele. I guess you want to edit the script with Windows' normal notepad. Firstly, make sure, the "automatic line break" in the view-menu is switched off.


    Afterwards, you will see that the macro contains paragraphs wich look like that:

    Code
    1. "#Dienstfahrt" $d $d $length (L.$.Matrix_Hofdatei_oben) $SetLengthR $= s0
    2. $d $length (L.$.Matrix_Hofdatei_unten) $SetLengthR $= l0 ||
    3. {if}
    4. ' /*line descriptions*/
    5. "" (S.$.Matrix_Hofdatei_oben) (S.$.Matrix_Hofdatei_unten) (S.$.Matrix_Hofdatei_gross)
    6. {endif}


    Instead of ' /*line descriptions*/ you find 19 lines which describe the "picture" of the special target.
    Every Dot, which is defined as a "0" will be switched off in OMSI and everything with a "1" will be switched on.
    At the end of every description line don't forget the (S.$.Matrix_Font_ZeileXX) command with the lines 01 to 19 instead of the XX.


    I hope this is better now. If not, I hope some user who speaks french will translate it for you.


    have a nice evening,


    Busfanat

    Good evening,


    it is very interesting how many patience you proved, AgoraRATP... 5 hours of no reaction here you've written a PM to me... Seriously? I'm very sorry that I've got a job and can't be on the forums 24/7...


    So, coming back to topic. In the Matrix_Fontfile.osc, which can be opened by windows' default text editor (notepad), you find the passages of "#Messe" and other "Sonderziele".
    To have it easier for editing make sure the "line brakes" are disabled, when the text is too long for the window. Now you can see the target pixels.


    For creating a new special target, just copy one of the paragraphs and edit the duplicated one afterwards. It shouldn't be that difficult.


    have a nice evening,


    Busfanat

    Guten Abend,


    Da ich OMSI2 nicht besitze, ist alles, was in diesem Beitrag steht, Spekulation. (!)
    Da auch die Standardmap von OMSI2 wieder Spandau ist und damit in Berlin spielt, dürfte sich hier nichts geändert haben. Möglicherweise wurde es, in Anlehnung an die Chronologie-Funktion zeitweise eingescriptet, sodass du bei gewissen Jahreszahlen die normalen 500er-Linien schildern könntest.


    Grundsätzlich fürchte ich aber, dass hier eine Lösung nicht so einfach wie gehofft erzielt werden kann.


    Schönen Abend noch,


    Busfanat

    Guten Abend,


    das Umändern der Kursnummer auf 28 bei 500er-Liniennummern ist so wie auch das Umändern auf die 04 bei den 900er-Linien (z.B.13N) im IBIS von M&R (und fast allen darauf basierenden Scripts) eingescriptet. Der Grund ist, dass dies im Berlin von 1988 so war (und vllt. auch heute noch so ist??). Grundsätzlich ist eine Änderung also möglich, würde dann aber auch alle anderen Maps betreffen, die diese Umschaltfunktion brauchen könnten (evtl. Spandau Modern oder ähnliche).


    Solltest du das Script bei dir ändern wollen, beschäftige dich bitte mit der IBIS.osc bzw. IBIS-2.osc im Script-Ordner des jeweiligen Busses.


    Schönen Abend noch,


    Busfanat

    Oje, wird hier Blödsinn verzapft...


    Genau. Wahrscheinlich wird das in Stunden gerechnet.

    Ähm, du hast doch vorher was anderes zitiert

    vier Rollbandbeleuchtung: 4x40W (4x0.0694 1/Ohm)

    Ohm ist die Einheit des elektrischen Widerstands. 1/Ohm, oder auch Siemens, ist entsprechend die Einheit des Leitwerts (Kehrwert des Widerstands) und hat damit nichts mit der Lebensdauer zu tun. Viel mehr dürfte der Wert genutzt werden, um eine vorbildgerechte Entladung der Batterie zu simulieren.

    Kann man in der Matrix Constfile die Lebensdauer der Matrixbeleuchtung einstellen?Wenn ja wo genau?

    Das weiß ich leider nicht, weil ich OMSI2 nicht besitze und in OMSI1 bei M&R-Bussen kein Verschleiß simuliert wird.


    Schönen Abend noch,


    Busfanat

    Guten Abend,


    probier's mal so:



    Is jetzt rein ausm Kopf gemacht und ungetestet. Dürfte aber nicht weit fehlen.


    Schönen Abend noch,


    Busfanat

    Guten Abend,


    Der Hof-Creator kann das leider auch nicht:

    Richtig.

    Ich möchte ins IBIS eingeben: Linie 03200, Route 9, und dann steht auf der Anzeige 21E Hauptbahnhof.

    Das ist auch nicht über die Hof-Datei möglich.

    Nimm als Linie/Kurs doch einfach die 02110, dann geht es.

    Das ist die einzige einfache Möglichkeit, diese Liniennummer zu schildern.


    Bei Spandau funktioniert das mit der 913 für 13N auch nur deshalb, weil das im IBIS eingescriptet ist, aus der 900er-Nummer die Nachtlinie zu machen, sobald eine Route übernommen wird.


    Schönen Abend noch,


    Busfanat

    Guten Abend,


    na, für "sehr beschränkte Fähigkeiten" sieht das doch ganz brauchbar aus!


    Das einzige, was mir auffällt, ist, dass du in der Vorlage zuerst die Uhrzeit, noch dazu mit Sekundenangabe angibst, danach aber im Script die Sekunden weglässt und zusätzlich erst das Datum und dann die Uhrzeit ausgibst.


    Das einzige, was ich nicht verstehe ist, warum du am Anfang irgendeinen String von links auf 10 Stellen justierst und im {else}-Abschnitt den Leerstring irgendwo hinzufügst.
    Ansonsten wäre es interessant zu wissen, was nicht funktioniert. Zudem fällt mir auf, dass sich im Code ein {else} und {endif} befinden, aber weder eine Bedingung noch ein {if} vorhanden ist. Ich vermute aber, dass du (L.L.elec_busbar_main) abfragst.


    Meine persönliche Meinung ist übrigens, dass Script-Code im Scripting-Abschnitt des Forums nicht in einen Spoiler sondern in einen Code-Tag gehören.


    Schönen Abend noch,


    Busfanat

    Servus,


    die Ursache ist das IBIS. Bei Routeneingabe schalten manche IBIS-Scripte bei 500er-(M), 800er-(X) und 900er-(N) Nummern das Linien-Suffix automatisch um, sobald eine Route aktiviert wird.
    Das ist der Stand von OMSI 1.6.


    Ich weiß nicht, wie sich die Code-Korrespondenzen in OMSI2 im Laufe der simulierten Jahreszahlen ändern, auf meines Erachtens nach liegt das Verhalten aber wahrscheinlich am IBIS.


    Schönen Abend noch,


    Busfanat

    Servus,


    tja, das liegt leider an der Natur der Sache, dass du die Flip-Dot-Animation eingeschaltet hast. Im LED-Modus wird jede Texttextur nur einmal pro Wechsel aktualisiert. Das schafft OMSI meist ohne merkbaren Ruckler. Wenn du allerdings die Wechselanimation einschaltest, aktualisiert OMSI für den Zeitraum, in dem die Matrix wechselt, die Texttextur in jedem einzelnen Frame. Und das ist halt leider nicht sonderlich performant.
    Somit hilft wahrscheinlich nur, die Flip-Dot-Animation wieder auszuschalten.


    Schönen Tag noch,


    Busfanat

    Griaß enkch,


    neuer71j: Bitte installiere dir das Update 1.02 vom O405N2 von Julian oder lade dir die aktuelle Version meines Matrix-Scripts runter. Du arbeitest leider noch mit der ersten Version der Matrix, die mit dem O405N2 ursprünglich released wurde.
    Zwischen Version 1 und 2 hat sich unter der Haube einiges getan.
    Bitte darauf achten, dass die Version 1.02 vom O405N2 OMSI 1.04 oder höher voraussetzt.


    Schönen Tag noch,


    Busfanat

    Hallo Wurstbrot,


    Ich [...] kann mir aber vorstellen dass beides nicht rein hardcoded ist sondern per Script gesteuert wird


    Mit dieser Vermutung liegst du richtig. Sowohl der Motor als auch die Abfahrt von einer Haltestelle werden vom Script gesteuert.
    Zumindest war es in OMSI1 so. Da ich OMSI2 nicht habe, kann ich es nicht 100%ig sagen, aber ich vermute es einfach mal.


    Da ja von den neuen Möglichkeiten in OMSI2 ja noch nicht so viel nach außen gedrungen ist, schlage ich hier Dinge vor, wie sie in OMSI1 funktionieren würden. Ob das dann funktioniert, musst du selber rausfinden.


    Also, 1.: Kein Motor aus, wenn die Haltestelle nicht die Endhaltestelle ist:
    Im AI-Modus ist kein IBIS aktiviert, also müssen wir mit den System-Variablen und System-Makros zum Thema Fahrplan auskommen.
    Im OMSI-Wiki (http://omnibussimulator.de/oms…e=System-Makros#Fahrzeuge) siehst du, dass es ein paar System-Makros gibt, die ohne Input-Werte auskommen, darunter GetTTBusstopCount und GetTTBusstopIndex. Wenn der Index dem Count-1 (wie in der Informatik üblich beginnt der Zähler bei 0) entspricht, hat der Bus die Endhaltestelle erreicht und darf den Motor abschalten. Hier ist aber in Gothenberg Vorsicht geboten, die Nachtbusse schalten den Motor dann am Kreuzplatz trotzdem ab!


    Umsetzung im Script:
    Was du suchst, befindet sich bei den SDs und Ds im Script "ai.osc". Du erweiterst einfach die Bedingung bei 'Engine off:

    Code
    1. ...
    2. (L.L.AI_Engine) -0.5 < (L.L.engine_on) 0.5 > &&
    3. (M.V.GetTTBusstopCount) (M.V.GetTTBusstopIndex) 1 - = &&
    4. {if}
    5. ...


    Zum anderen finde ich den Aufenthalt an Haltestellen der KI sowieso ein wenig zu kurz, da sie sich ja nicht mit Fahrscheinverkauf etc plagen muss. Daher würde ich gerne die Aufenthaltsdauer ein wenig strecken, inklusive einem Zufallsfaktor.

    Das ist "etwas" aufwändiger.
    Zunächst musst du dich zuerst damit beschäftigen, wie du das umsetzen willst. Je nach deinen Script-Kenntnissen hast du unterschiedliche Möglichkeiten. Das einfachste wäre ein schlichter Timer, der die Mindest-Haltezeit bestimmt.
    Die Umsetzung versteckt sich bei den SDs und Ds wieder im "ai.osc"-Script.
    Hier kommst du nicht um eine zusätzliche Variable herum.
    Diese definierst du in einer der _varlist-Dateien, am besten in der "AI_varlist.txt"
    Am besten benennst du sie sinnvoll, zum Bleistift "AI_Haltedauer_Timer".
    Dann schaust du wieder ins Script. Im Abschnitt, der mit "'Wenn Türen geöffnet werden sollen:" beginnt, siehst du den Aufruf des Macros "trg_bus_dooraft". Hier kannst du deinen Timer initialisieren.

    Code
    1. ...
    2. 'Taster jeweils nur betätigen, falls noch nicht an
    3. (L.L.bremse_halte_sw) !
    4. {if}
    5. (M.L.trg_bus_dooraft)
    6. 10 random (S.L.AI_Haltedauer_Timer)
    7. {endif}
    8. ...

    Damit setzt du in dem Moment, in dem die Haltestellenbremse eingelegt wird, die Mindesthaltedauer auf einen Zufallswert zwischen 0 und 9 Sekunden. Als nächstes musst du dafür sorgen, dass der Timer auch runterzählt.

    Code
    1. ...
    2. (L.L.door_AI_timer) (L.S.Timegap) + (S.L.door_AI_timer)
    3. ...


    Ist bereits ein einfacher Timer. Du setzt deinen einfach darunter:

    Code
    1. ...
    2. (L.L.door_AI_timer) (L.S.Timegap) + (S.L.door_AI_timer)
    3. (L.L.AI_Haltedauer_Timer) (L.S.Timegap) - 0 max (S.L.AI_Haltedauer_Timer)
    4. ...

    Damit wird dein Timer immer um die abgelaufene Zeit des aktuellen Frames verringert. "0 max" ist der Begrenzer, dass der Timer nicht unnötig kleiner als 0 wird.
    Jetzt musst du nur noch dafür sorgen, dass der Bus wirklich nicht früher abfährt.

    Hier ergänzt du die Passage auf


    Dadurch fährt der Bus erst ab, wenn die Türen zu sind UND der Timer abgelaufen ist.


    Ich empfehle dir, wenn du weitere Scripts basteln möchtest, dir das OMSI-Wiki durchzulesen und dann einfach rumzuprobieren. So hab' ich's auch geschafft. Einigermaßen erfolgreich, wenn ich das mal so behaupten darf...


    MfG,


    Busfanat

    Guten Abend,


    Liniennummer-Verzierungen wie Suffixe, Präfixe oder Liniennummer-Ersetzungen lassen sich über das bestehende Script NICHT mit der Hof-Datei steuern, da diese von der Kursnummer, die im IBIS eingegeben wurde, abhängig sind.


    mfG,


    Busfanat

    Hallo,


    Flipdot Front 24x189 Punkte, <- Grundsätzlich möglich, aber insbesondere dann schwierig, wenn ein anderer Schriftsatz als auf der Seite bzw. bei der LNr verwendet werden soll
    Seite 19x28 + 19x112 Punkte, <- bereits jetzt möglich, Breite kann im Const-File angepasst werden, Texttexturbreite in cfg ist dann eben 112*3=336px (3px hat jeder Dot) bzw. 28*3=84px für LNr-Anzeige
    Linie hinten/Seite ebenfalls 19x28 Punkte <- ebenfalls bereits möglich, wichtig ist, dass die LNr-Anzeigen alle die selbe Größe haben, was hier ja der Fall ist.


    Das größte Hinderniss ist die Frontmatrix mit der anderen Höhe. Man kann die Höhe natürlich im Script nur für die Front anpassen. Diese verwendet dann aber immer noch die gleiche Schrift wie die Seitenanzeige. Wenn man für die Frontanzeige im Fontfile.osc eine eigene Schriftart einbaut, ist dieses Fontfile zur originalen Matrix nicht mehr kompatibel und so, wie ich die Spezis hier im Forum kenne, hat dann irgendwer eine Zugriffsverletzung, obwohl "er/sie alles richtig installiert hat und sowieso unfehlbar ist".


    Solltest du immer noch Interesse an einer Umarbeitung haben (ich spekuliere mal, es geht um deinen O405?), melde dich bitte per PN bei mir mit Messenger-Nick (optimalerweise ICQ, sonst Skype)


    mfG,


    Busfanat

    Hallo zusammen,


    Die Vollmatrix, die mit diesem Script nachgebildet werden kann, hat eine Höhe von 19 Punkten und eine variable Breite, die im entsprechenden Const-File einzutragen ist. Natürlich muss auch die Auflösung der Texttextur(en) daran angepasst werden.


    Wie viele Punkte eine echte Vollmatrix hat, weiß ich nicht.


    zum Thema getrennte Ziel- und Linienmatrizen auf der Seite:
    Leute, nutzt doch eure Kreativität! Welche Anzeigen gibt das Script aus?

    * Ausgabe: Das Script gibt 3 voneinander unabhängige Anzeigen aus. Eine Frontanzeige mit Liniennummer, Zielsymbol und Zieltext, eine Seitenanzeige mit schaltbarem Zielsymbol und Zieltext sowie eine Heckanzeige, die nur die Liniennummer anzeigt.


    Die Seitenanzeige, die vom Script ausgegeben wird, zeigt keine Liniennummer an, und eine seperate Linienanzeige ist auch vorhanden, also? Und man kann ein und die selbe Anzeige/Texttextur auch auf mehrere Flächen mappen, zum Beispiel hat der O405N2 in der Vollmatrix-Version auch die Frontanzeige einfach nochmal auf die Seite gemappt bekommen, und die Linienanzeige ist auch sowohl hinten als auch links vorhanden.


    Also, für's nächte Mal: Macht euch bewusst, was ihr zur Verfügung habt und nutzt eure Kreativität! Wenn ich mit eurer Einstellung M&R gefragt hätte, wie ich eine Vollmatrix für OMSI1 umsetzen soll, hätte es geheißen, dass das in OMSI 1 nicht vorgesehen wäre.


    mfG,


    Busfanat

    Da mir über längere Zeit keine Fehler gemeldet wurden, hebe ich die Vollmatrix V2 aus der OpenBeta-Phase. Entsprechend meinem Versprechen folgt nun eine Anleitung, wie ihr die Vollmatrix in ein beliebiges Fahrzeug einbauen könnt.


    0. Vorbereitung:
    Bevor das Script eingebaut werden kann, möchte ich zunächst erläutern, wie die Vollmatrix funktioniert. Grundsätzlich folgt die Vollmatrix dem EVA-Prinzip aus der Informatik:
    * Eingabe: Die Eingabe erfolgt über drei IBIS-Variablen. Ob diese tatsächlich von einem IBIS, von einem FSD (Fahrscheindrucker) oder reinen Matrix-Steuergerät beschrieben werden, ist dem Script egal. Als Eingabevariablen werden verwendet:
    - IBIS_LinieKurs enthält die Liniennummer (ohne Kursnummer, auch wenn der Variablenname etwas anderes vermuten lässt; ich hab mir den nicht ausgesucht).
    - IBIS_Linie_Suffix enthält die Kursnummer, die im M&R-IBIS mit der Liniennummer eingegeben wird. Hierüber werden die Linienverzierungen (Prä- und Suffixe oder ein Liniennummerersatz) gesteuert.
    - IBIS_TerminusIndex enthält den Index des Zielschilds (Nicht der Zielcode, sondern der Index, der durch die Reihenfolge in der Hof-Datei bestimmt wird)


    * Verarbeitung: Die Verarbeitung kümmert euch Nutzer in 99% der Fälle nicht. Der häufigste Eingriff in die Verarbeitung betrifft eine Änderung im Matrix_Fontfile.osc. Hier können neue Zeichen definiert oder bestehende verändert werden. Außerdem können hier die Linienverzierungen der Kursnummern verändert werden.


    * Ausgabe: Das Script gibt 3 voneinander unabhängige Anzeigen aus. Eine Frontanzeige mit Liniennummer, Zielsymbol und Zieltext, eine Seitenanzeige mit schaltbarem Zielsymbol und Zieltext sowie eine Heckanzeige, die nur die Liniennummer anzeigt.
    Bis zur, zur Zeit, zu der ich diesen Beitrag schreibe, aktuellen Version (Upload 2. Juni 2013) sind die Front- und Seitenanzeige als Zweischicht-Anzeigen ausgeführt.
    Die Matrix gibt die fertigen Zielanzeigen in 5 Strings aus. Diese sind:
    - Vollmatrix_Inhalt
    - Vollmatrix_Inhalt_invert
    - Vollmatrix_Seite_Inhalt
    - Vollmatrix_Seite_Inhalt_invert
    - Vollmatrix_Linie_Inhalt


    1. Modell erstellen in Blender
    Dies ist kein Blender-Tutorial und soll auch keines sein. Solltet ihr ein Blender-Tutorial brauchen, empfehle ich das Blender-Tutorial von Marcel Kuhnt ( http://www.youtube.com/user/marcelqnt/videos ) oder eine Suche mit der Suchmaschine des geringsten Misstrauens. Ich arbeite mit Blender 2.49.
    Für jede Texttextur ist eine Fläche an entsprechender Position notwendig. Für invertierbare Anzeigen (Front und Seite) ist noch eine zweite Fläche eine Spur (etwa ein Millimeter) davor oder dahinter zu platzieren.
    Ich mache es dabei so, dass ich die „normalen“ Anzeigen in ein Objekt packe, das dupliziere und im Duplikat lösche ich erstmal die Flächen, deren Anzeigen nicht invertierbar sind. Dann verschiebe ich die übrig gebliebenen Flächen jeweils um einen Millimeter nach außen.
    Als nächstes erstelle ich die Materials. Da die Materials in OMSI sowieso durch Texttexturen ersetzt werden, erstelle ich hierzu keine Texturen, sondern nur die Materials. Dazu gehe ich im UV Editor auf Image>New und erstelle für jede Texttextur, die im Objekt vorkommt, ein Material, insgesamt also je nach Bus bis zu drei. Die Namenwahl ist recht frei, ich schlage etwas ähnliches wie Matrix_Front, Matrix_Seite und Matrix_LNr vor. Die Größe der Blender-Textur ist egal, weil sie nicht exportiert wird. Beim Mapping muss die Textur mit der 3D-Fläche deckungsgleich sein, also die volle Breite der Textur entspricht der vollen Breite der Fläche und bei der Höhe das selbe. Das dann eben passend für alle Anzeigeflächen.


    Zum Schluss exportiere ich dann beide Objekte in eine *.x-Datei


    Ich möchte an dieser Stelle betonen, dass ich in Blender recht unbedarft bin und es sicher schnellere/andere Wege zum Ziel gibt. Für mich ist nur wichtig, dass mein Weg für mich funktioniert.


    2. Umwandeln der *.x-Datei in *.o3d-Dateien
    Da ich in Blender beider Matrix-Objekte in eine *.x-Datei exportiert habe, trenne ich die Objekte beim Konvertieren wieder mit der Option „seperate Files“ in zwei *.o3ds


    3. Einbinden der *.o3ds und Texttexturen in der *.cfg
    Hier sollte mit den Texttexturen begonnen werden.
    Oben in der Modell-*.cfg sind alle im Modell verwendeten Texttexturen verwendet.
    Unter allen bereits definierten Texttexturen müssen nun die für die Anzeigen benötigten Texttexturen definiert werden.

    Code
    1. NrX: ← Gehört nicht zur Syntax, nur der Index als Orientierung für den Autor
    2. [texttexture] ← Schlüsselwort
    3. Vollmatrix_Inhalt ← String-Var-Name (siehe oben)
    4. FlipDot_Font_Vollmatrix ← Schriftart (entweder FlipDot_Font_Vollmatrix oder FlipDot_Font_Vollmatrix_invert bei invertierten Flächen)
    5. 360 ← Breite der Anzeige in Pixel (In Constfile definierte Breite * 3)
    6. 57 ← Höhe der Anzeige in Pixel (immer 57, weil Zeilenanzahl 19 * 3)
    7. 0 ← Auswahl, ob Farbe aus Fontfile oder über RGB bestimmen (fast immer 0)
    8. 255 ← Rot-Anteil der Farbe, wenn über RGB bestimmt
    9. 255 ← Grün-Anteil der Farbe, wenn über RGB bestimmt
    10. 0 ← Blau-Anteil der Farbe, wenn über RGB bestimmt


    Die Meshs der Matrix sollten nach allen Objekten, die nicht durchsichtig sind, und vor der Verglasung definiert werden:


    Das ganze für weitere Materialien des gleichen Objekts bzw. weitere Objekte wiederholen.


    4. Einbinden der Scripts und Variablenlisten in die *.bus
    In der *.bus muss noch deklariert werden, welche Dateien OMSI bekannt sein sollen und abgerufen werden sollen


    Beim Punkt [varnamelist] ist die Datei Script\Matrix_Varlist.txt hinzuzufügen, wenn noch nicht vorhanden und die Zahl unter dem Schlüsselwort muss an die Anzahl der angeführten Dateien angepasst werden.
    Beim Punkt [stringvarnamelist] sind die Dateien Script\matrix_stringvarlist.txt und Script\matrix_fontfile_stringvarlist.txt hinzuzufügen, wenn noch nicht vorhanden, sowie wieder die Zahl unter dem Schlüsselwort anzupassen.
    Beim Punkt [constfile] ist die Datei Script\matrix_constfile.txt hinzuzufügen, wenn noch nicht vorhanden, sowie wieder die Zahl unter dem Schlüsselwort anzupassen.
    Beim Punkt [script] sind die Dateien Script\Matrix.osc und Script\Matrix_Fontfile.osc am unteren Ende der Liste hinzuzufügen, wenn noch nicht vorhanden, sowie wieder die Zahl unter dem Schlüsselwort anzupassen.


    5. Aufruf der Macros und die Sache mit der KI
    In der Main.osc-Datei des Fahrzeugs müssen dann noch innerhalb des init-Bereichs, also zwischen {init} und dem entsprechenden {end} der Befehl (M.L.Matrix_init) und innerhalb des frame-Bereichs der Befehl (M.L.Matrix_frame) eingetragen werden.


    Wer sich erinnert, weiß, dass die Vollmatrix ursprünglich mit dem O405N2 von Julian/TramDüsseldorf veröffentlicht wurde. Dieser hat eine Kombination aus Rollband und Matrix. Das bedeutet die Besonderheit, dass zwei Scripts vom Trigger „ai_scheduled_settarget“ beeinflusst werden sollen. Da ein Trigger nicht in zwei unterschiedlichen Dateien definiert werden kann, musste ich mir eine Alternative einfallen lassen. Umgesetzt wurde es im Endeffekt so, dass der Trigger im Rollband-Script ist, allerdings als erstes das Äquivalent im Matrix-Script aufruft, um diese zu aktualisieren. Erst danach aktualisiert das Rollband-Script das Rollband.
    Um Update-Kompatibel zu bleiben, empfehle ich, in der Main.osc-Datei des Fahrzeugs folgende Scriptzeilen außerhalb der {init} und {frame}-Tags:

    Code
    1. {trigger:ai_scheduled_settarget}
    2. (M.L.Vollmatrix-AI-Setting)
    3. {end}


    Dann kann die KI die Matrix bedienen und auch der Nutzer hat die Möglichkeit, über das Alt-Menü zu schildern.


    6. Was zu sagen bleibt
    Bei der Anleitung wird ein Weg beschrieben, der bei mir funktioniert. Es gibt sicher auch noch andere funktionierende Wege.
    Auch durch dieses Tutorial bleiben die Lizenzbedingungen, die man durch das Nutzen des Scripts eingegangen ist, bestehen. Das bedeutet, solltet ihr die Vollmatrix in euren Bus einbauen und diesen veröffentlichen wollen, braucht ihr dazu eine Erlaubnis von mir.


    Ich wünsche euch noch einen schönen Abend


    Busfanat

    Hallo zusammen,


    auch ich habe die Map einmal angetestet.


    Installation: Ist in der Readme gut beschrieben. Da ich mir den Addon Manager nicht installiert habe, weiß ich nie, wie aktuell meine installierten Addon-Versionen sind. Das heißt, ich starte die Map und arbeite die aufpoppenden Dialogfelder einfach ab. Hat bis auf die im Thread bereits erwähnte Rock_text.bmp auch funktioniert. Da ich zu faul war, auf einen Fix zu warten, habe ich die bestehende Rock.jpg im selben Verzeichnis kopiert und umgespeichert. funktioniert auch.


    Readme: Obwohl sie auf den ersten Blick relativ kurz ist, wurde viel Zeit in sie investiert. Gefreut habe ich mich, als ich gesehen habe, dass man als Nutzer das Fontfile der Vollmatrix umschreiben soll. Dies ist gut beschrieben und ein für mich ein Pluspunkt. Zu den erwähnten Bugs kann ich sagen, dass sie bei mir während der beiden Testrunden nicht aufgetreten sind.


    Map: Die Streckenführung an sich kenne ich in der Realität nicht. Wenn sie in dieser Form realitätsähnlich ist, muss ich vor jedem RL-Busfahrer den Hut ziehen. Besonders die Kurve in der Höttinger Gasse ist äußerst eng. Bislang hatte ich da immer einen "Lackschaden". Wahrscheinlich fehlende Übung. Naja, in der Realität stellen einem da wenigstens die Fußgänger aus, wenn's knapp wird... Die restliche Strecke ist herausfordernd, aber meiner Meinung nach schaffbar.


    Hof-Datei: Hast du zu viel Zeit?! Die Hof-Datei ist extrem ausführlich geworden. 161 Ziele sind nicht ohne. Was mir persönlich weniger gefällt, ist, dass viele IBIS2-Strings in Großbuchstaben ausgeführt sind, das halte ich aber für Geschmackssache. Auch bei den Routen hast du viel Arbeit investiert, die viele Nutzer wahrscheinlich nicht sehen werden. Das einzige, was mir hier aufgefallen ist, ist, dass bei der Linie 7 die Route 1 nicht funktioniert, obwohl sie in der Hof-Datei definiert ist. Ich weiß nicht, ob der Bug hier bei deiner *.hof oder bei OMSI an sich liegt.


    Details: Was mir halt sonst noch so aufgefallen ist, sind die Kennzeichen der KI-Fahrzeuge. Hier hast du meiner Meinung nach einen sehr schönen Mix gefunden. Zwar sind die fehlenden Landeswappen ein winziger Wehmutstropfen, aber das ist Kritik auf sehr hohem Niveau.


    Zusammenfassend muss ich sagen, dass die Map zwar gelungen ist, mich aber leider nicht auf lange Zeit motivieren kann. Liegt wahrscheinlich daran, dass ich OMSI gerne zur Entspannung spiele und anspruchsvolle Strecken hier eher ungeeignet sind.


    Schönen Sonntag noch


    Busfanat

    Hallo,


    ja, mein letzter Beitrag war etwas überzogen, schließlich bist du besser als 95% der Ersteller von Themen im Wünsche-Forum und beschäftigst dich zumindest mit der Materie. Tut mir Leid.


    Nachdem wir bereits im Rollband-Script sind, müssen wir uns zunächst damit beschäftigen, wie die Zeichen auf die Rollbandtextur kommen. Die Reihenfolge beim Linienrollband ist, anders als beim Zielrollband vom bspw. SD77 nicht vom Script, sondern bereits beim Erstellen des Rollbands festgelegt. Da du das SB-Zeichen durch das A ersetzt hast, wissen wir bereits, dass das Zeichen an vierter Stelle am Rollband ist.


    Das Rollband selbst wird im Macro rollband_frame gesteuert. Man sieht ein paar Zeilen unterhalb des Macroanfangs werden die Kursnummern in Sonderformatierungen umgewandelt:

    Hier ist bereits der Teil des Codes, den wir bearbeiten müssen. Wir legen das vierte Zeichen (bei dir das A) aufs dritte Rollband. Den Rest schieben wir einfach eine Stelle vor. Das Ergebnis:


    Nun wird bei 20er-Kursnummern das A hinten angestellt.


    mfG,


    Busfanat