Content-Tool fernsteuern um Rollbandtexturen zu erzeugen?

  • Hallo zusammen,


    ich habe mir gerade einen einfachen Generator für Perlschnurtafeln gebastelt und bin dabei ihn so aufzubohren, daß er die diversen Rollbandtexturen für die unterschiedlichen Fahrzeuge in ihren unterschiedlichen Kombinationen mit erzeugt, also alles was man vorne hinten und seitlich herumkurbeln kann.


    Jetzt wäre es natürlich sehr praktisch, wenn nach dem Abspeichern der Bitmaps auch die entsprechenden Container gleich mit erzeugt werden könnten. Speziell Zugriff auf die Funktionen "Texturlisten-Import" und "Container packen" wäre dazu nötig. Gerade wenn man das Erzeugen mehrmals wiederholen muß, würde das eine Menge Aufwand sparen.


    Gibt es eine Chance, so einen externen Zugriff zu realisieren? Egal wie, Commandline, .NET-Interface, DLL, egal was.


    Der Höhepunkt des Glücks wäre natürlich, gleich die vielfältigen Spezial-FIS komplett aus einem Datenbestand mit erzeugen zu können statt nur die Zusatzstrings für rechts oben, aber da ist evtl. der Aufwand nur vom Content-Tool ins Generatorprogramm verlagert, wodurch der Sinn verloren geht.


    Wie seht ihr das?

  • der Button hier hilft ein Stück weit

    Genau den drück ich im Moment ja mit der eigenen Hand immer wieder.

    Idee ist, ihn mehrmals mit unterschiedlichen Eingabeverzeichnissen mit der Computerhand zu drücken und etwas später auch den weiter oben befindlichen "Container packen" ein oder mehrmals automatisch zu drücken.

    Das würde nicht nur meiner persönlichen Faulheit sehr entgegenkommen, sondern auch Flüchtigkeitsfehler bei z.B. "Seitenlinie=Frontlinie+20000" vermeiden helfen.

  • Konkreter könnte bedeuten, dass das jetzt etwas Text braucht, aber ok.


    Ausgangssituation: Es kommen immer mehr Fahrzeuge für Lotus, die anstelle von Matrixanzeigen Rollbänder haben, also nicht direkt vom Basis-FIS aus angesteuert werden können. Bevor man die entsprechende Spezial-FIS erstellen kann, braucht man jede Menge Bitmaps, im Prinzip immer die Gleichen für die gleiche Basis-FIS, aber doch verschieden für jedes Fahrzeug. Man malt also immer das Gleiche immer wieder mit kleinen Unterschieden.

    Also hab ich in den letzten Tagen mal ein paar halbe Stündchen an Mittagspause und abendlichem Dösen dazu genutzt mit einem Progrämmchen anzufangen, das mir die Arbeit etwas vereinfacht. Der Ablauf ist im Prinzip wie folgt:


    Erst mal machen wir Perlschnüre für die Innenanzeige. Dazu entsteht aus einer Reihe von Textdateien, die so aussehen



    so etwas



    Das gleiche Spiel etwas einfacher für die seitliche Linienanzeige



    wird zu



    Noch einfacher das gleiche Spiel mit Frontlinie und Frontzielen, ich denke das Prinzip ist klar.

    .

    Damit ist ein generischer Baukasten entstanden, mit dem ich durch skalieren, kombinieren und rotieren jede beliebige Textur für jedes Fahrzeug ableiten kann.


    Beispiel seitlicher Linienkasten beim GT8S, aus


    Code
    1. ...
    2. 45
    3. 11301_Fiktiv_1
    4. 11201_Fiktiv_1
    5. 11302_Fiktiv_2
    6. 11202_Fiktiv_2
    7. 11303_Fiktiv_3
    8. 11203_Fiktiv_3
    9. ...


    wird z.B.



    Beim B80D läuft das Spiel z.B. genauso, nur daß die beiden Einzelbitmaps genau entgegengesetzt gedreht sind.


    Ich erstelle also aus meinem generischen Baukasten alle Bitmaps für alle Fahrzeuge, ohne ein einziges Mal paint.net zu öffnen.


    Irgendwann bin ich am Punkt, an dem ich aus meinem Bitmaphaufen Lotus-Texturen erzeugen muss. Leider kann ich jetzt nicht einfach alles in ein Verzeichnis kopieren und im Content-Tool alle auf einmal einlesen, denn u.a. wegen der +20000 Regel bei den Düsseldorfern muss ich die IDs schön im Auge behalten.


    An dieser Stelle wäre es sehr praktisch, ich könnte das Content-Tool programmgesteuert aufrufen, jeweils ein Aufruf für jedes Verzeichnis, das pro Fahrzeug Frontziel, Frontline, Seitenziel etc. enthält und die Start-ID als anderen Parameter vorgeben, so wie ich es manuell auch tue.


    Ebenso wäre praktisch, das Packen der Container auf ähnlichem Weg zu triggern.


    Kommt nun ein neues Fahrzeug dazu, ergänze ich einfach die Logik anhand der mitgelieferten Beispieldateien, fasse wieder kein Grafikprogramm an und muß wieder "nur" eine weitere Speziel-FIS erstellen. Dabei habe ich aber auch vor, zumindest die Zusammenstellung der Zusatzstrings rechts oben etwas zu vereinfachen.


    So der Plan. Mal sehen was draus wird.


    Puh, war das viel Text am Samstag Abend. Eigentlich dauert das Beschreiben länger als das Programmieren.

  • Uii, das ist ja mal was! :-D


    Da hab ich doch glatt mal diese Möglichkeit geschaffen! ;-) Batch-Texturimport-Aufruf per Kommandozeile ist dann im nächsten Patch enthalten. ;-)

  • Da hab ich doch gleich noch einen Änderungswunsch fürs Forum: Ich brauche einen größeren "Like" Button für Dinge die mir besonders gut gefallen. :-)

  • Nachdem der nächste Patch noch ein bisschen dauert bin ich schon etwas vorausgeeilt.

    Ich arbeite ja nur viertelstundenweise an dem Nebenprojektchen, daher hat es auch 3 Abende gedauert bis ich herausgefunden habe, wie man dem GT8S abgewöhnt, nur Neonröhren im Nummerkasten zu zeigen. Man gibt einfach seine User-ID in der FIS ohne Tippfehler ein. ><

    Kaum macht mans richtig, schon gehts.


    Und sobald man die Beispieldateien von GT8S und B80D nicht mehr verwechselt, darf der Blechwagen auch mit meinem Baukasten spielen:




    So langsam wird ein Schuh aus der Geschichte, auch wenn der Rand der Frontzielfilme bem B80 echt gemein war.

    Nächster Kandidat GT8. Vielleicht morgen in der Mittagspause.

  • Von wegen schnell in der Mittagspause, der auf den ersten Blick "einfachste" Wagen hatte eine ziemliche Stolperfalle parat und die sieht (jetzt) so aus:



    Also doch heute Abend schnell ein bisschen Mathe gemacht und jetzt wird der Wagen auch aus der gleichen Quelle bestückt wie die anderen:



    Der Beiwagen hält sich übrigens verschämt im Hintergrund, weil er nichts passendes anzuziehen hat. :)


    Nächstes Opfer wird der N/M-Wagen, aber mit Zeitschätzungen halte ich mich diesmal zurück, der hat wieder so gemeine Ränder in den Filmen.

  • Wie kann man so tolle Rollbändern machen? Warum gibt es keine anleitung per youtube wie man es erstellt? lg Thomas

  • Ein bisschen Mathemagie, ein bisschen Programmiererfahrung, ein bisschen Unlust an der Arbeit mit Grafikprogrammen und ein bisschen Langeweile in der Mittagspause.

    Wenn Marcel die Erweiterung beim Texturimport eingebaut hat, werde ich mal sehen, ob und wie sich das noch so vereinfachen läßt, dass Mapbauer sich etwas einfacher etwas zusammengenerieren lassen können, soll ja kein Selbstzweck sein.

    Zu gegebener Zeit geht das evtl. nach OpenLotus oder GitHub oder sowas, je nachdem wie es allgemein anwendbar wird.

    Ziel wäre, sofern sich keine Layouts ändern, daß man das Progrämmchen einfach so durch Anpassung von ein paar Textdateien nutzen kann, nur wer eigene Layouts bauen will oder Funktionen erweitern, muß die Programmierhandschuhe anziehen.

  • Und da isser schon der angedrohte N-Wagen. Eigentlich bedeutet lt. einschlägiger Fachliteratur ja "N6" soviel wie "Nachts auf der Linie 6", weil nur dann alle Fahrgäste in den Wagen gepasst haben. Aber davon gibts bisher in Lotus keine passende Map. Also nehmen wir mal eine andere zeitgemäße Linie, auf der der Wagen vor dem Umbau gesichtet wurde, laden "Stadtpark Schleife" aus dem Steam Workshop und fahren ein Stück auf der alten Linie 11.



    Ein bisschen irritieren die großen Rollbandkästen, aber die Rollbandbeispiele machen den Eindruck, daß irgendwann die kleinere Version, die wir für den Nürnberger brauchen noch folgt.


    Kleiner historischer Exkurs für Fans: Die Endhaltestelle "Muggenhof" ist auf den ersten Blick nach Eröffnung der Hochbahn 1970 nicht mehr möglich. Aber es gab diese Linie 11 tatsächlich auch später noch, vom Nordostbahnhof bzw. Trafowerk kommend, weil man ab Regerstraße auf ein Nebengleis abbiegen konnte, das auch die Zufahrt zur Hauptwerkstatt Muggenhof bis zu deren Schließung ermöglichte.

    An der Einmündung der Fuchsstraße in die Fürther Straße konnte man dann "dreiecken". Die Endhaltestelle Muggenhof lag also am Fuß des Hochbahnhofes bzw. späteren U-Bahnhofes, der jetzt als Sanierungsfall für Chaos im Verkehr zwischen Nürnberg und Fürth sorgt.

  • hoffe dass das so funktionieren wird wie du es dir vorstellst

    Bei mir tut es das ja schon. Da ist absolut nichts in einem Grafikprogramm entstanden.

    Momentan ist es nur so, daß einerseits die "letzte Meile" fehlt, also das Importieren der Texturen und packen der Container, was das unvermeidliche "Trial and Error" zur Tortur macht, weil alles noch manuell passiert und andererseits das "MyContent"-Verzeichnis von Lotus mit viel zu vielen Containern überschwemmt wird, weil derzeit jedes Fahrzeug bis zu 5 Container braucht.


    Also werd ich einfach mal die Logik für alle greifbaren Fahrzeuge implementieren bis Marcel den nächsten Lotus-Patch raushaut. Dann schauen wir mal was ich programmgesteuert in Lotus reinschiessen kann.

    Egal wie das ausgeht, den Sourcecode werde ich auf jeden Fall zu gegebener Zeit zugänglich machen. Nur momentan hat das noch keinen Sinn.


    Nächster Kandidat ist übrigens der GT6N mit der Rollbanderweiterung aus dem Workshop. Damit werde ich auch endlich eine Workshop Altlast von mir selbst los, denn das was da immer noch als uralter erster Wurf eines Nürnberger Rollbands mit viel überflüssigem Aufwand drinsteht funktioniert schon ewig nicht mehr.

  • Ein bisschen irritieren die großen Rollbandkästen, aber die Rollbandbeispiele machen den Eindruck, daß irgendwann die kleinere Version, die wir für den Nürnberger brauchen noch folgt.

    Kurzer Einwurf: Ja, genau das ist das Ziel der Dateien :)

    Ansonsten sehr cooles Tool, freue mich drauf!

    WE WILL MAKE SIMULATION GREAT AGAIN.


    Der GT8S schneidet Linksabbieger schweißfrei.

  • Jetzt dürfte der letzte verfügbare Wagen mit Rollbändern abgefrühstückt sein.

    Linie 15 biegt aus der Pirckheimerstraße in die Bayreuther Straße ein. Der Wagentyp passt zwar überhaupt nicht zur historischen Rundfahrt, aber wegen zu hohem Besucherandrang wurde alles losgeschickt was gerade auf dem Hof stand.



    Jetzt bin ich mal gespannt wie ich nach dem nächsten Lotus-Update die Dinge hinsichtlich einlesen und packen optimieren und vereinfachen kann.

    Bis dahin kann mein wirres Hirn noch über einige Ideen warmlaufen.

  • Ein bisschen irritieren die großen Rollbandkästen, aber die Rollbandbeispiele machen den Eindruck, daß irgendwann die kleinere Version, die wir für den Nürnberger brauchen noch folgt.

    Kurzer Einwurf: Ja, genau das ist das Ziel der Dateien :)

    Ansonsten sehr cooles Tool, freue mich drauf!

    Nun. Hätte ich etwas mehr Gedanken daran verschwendet, wie bzw. in welche Richtung so ein Rollband läuft, hätte ich erkennen können, dass das ganze so nicht funktionieren kann. Mit dem nächsten Update gibt es zwar einen kleinen Kasten für vorne, aber auch getrennte Dateien für das große und das kleine Rollband.

    WE WILL MAKE SIMULATION GREAT AGAIN.


    Der GT8S schneidet Linksabbieger schweißfrei.

  • Mit dem nächsten Update gibt es zwar einen kleinen Kasten für vorne, aber auch getrennte Dateien für das große und das kleine Rollband.

    Damit kann ich leben, so groß wird der Aufwand nicht.

    Gibts aber eine Chance, daß sich die Logik bei den Spezial-FISsen für den NM68 noch ändert? Momentan ist der ja leider vom GT8S abgeleitet, statt vom viel einfacheren B80D oder vom noch einfacheren GT6N. Ich frage mich, wie in den Wagen ein anderes IBIS nutzbar werden soll angesichts der Lösung mit diesem "+10" und "22L", das ja offenbar eine spezielle Funktion im Ibis erfordert. Ich habs deswegen nicht geschafft, eine Basis-FIS zu bauen, die sich sowohl mit dem GT8S, als auch mit der Matrixanzeige vom GT6N verträgt. Da hab ich schon einige Hirnzellen verbrannt.

  • Neu erstellte Beiträge unterliegen der Moderation und werden erst sichtbar, wenn sie durch einen Moderator geprüft und freigeschaltet wurden.

    Die letzte Antwort auf dieses Thema liegt mehr als 60 Tage zurück. Das Thema ist womöglich bereits veraltet. Bitte erstellen Sie ggf. ein neues Thema.

    Maximale Anzahl an Dateianhängen: 5
    Maximale Dateigröße: 500 kB
    Erlaubte Dateiendungen: bmp, cfg, ini, jpeg, jpg, lct, ldl, llg, lob, log, lpmtl, lptmt, ltx, pas, pdf, png, railtrack, rar, txt, veh, wav