Lua Script Support Group

  • *hi*

    Wäre es nicht sinnvoll, eine Lua Script Anwender Gruppe zu starten?

    Gut, mir ist schon bewusst, dass die Entwickler Lua Scripte nicht aus Spaß erstellen, sondern damit auch ihren Lebensunterhalt gestalten und insofern aus nachvollziehbaren Gründen sicher Null Interesse haben können, Wissen für Lau weiterzugeben. Verständlich!


    Aber ansonsten gibt es doch oft Kleinigkeiten, die sich mit einem zusätzlichen Lua Script schnell beheben ließen – wenn man denn wüsste wie.


    Als da wäre (Beispiele):

    • Was braucht man, um mit Lua Script anzufangen?
    • Wie bindet man eine zusätzliche Lua-Datei in die Engine.bin?
    • Wo gibt es schon aktive Lua-Script Gruppen?
    • Usw.

    Es sollte somit im idealsten Fall eine Begegnungsstätte für absolute Beginner, Normalos, Fortgeschrittene und Nerds sein.


    Wie zweckmäßig wäre dieser Ansatz? Bisher ist es ja so (meine Erfahrung meistens), man stellt eine Frage zu Lua im Forum und dann passiert NICHTS – zumindest nicht im Forum. Meist hatte ich dann jedoch das Glück, dass ein User über PN seine Hilfe angeboten hat und ich das Angebot dankbar nutzen konnte. Meine Kenntnisse in Lua sind sehr bescheiden, wenn es noch Abstufungen unterhalb von rudimentär geben sollte, so dann darunter irgendwo im Keller.


    Wiki Einträge zu Lua:


    Meine bisherigen Lua-Script Projekte:

    wurden mit Lua realisiert, jedoch nur unter tatkräftiger Unterstützung anderer User. Die Scripte sind nicht verschlüsselt.


    Noch einmal die Frage von ganz oben, sollte es eine Lua Gruppe geben hier im Forum?


    Gruß

  • Vielen Dank für das Interesse!

    Wenn ich eins bedauern muss, so zum Beispiel meine Ignoranz und Gleichgültigkeit gegenüber Programmiersprachen. Mein Apell daher, lernt bei Zeiten und lasst es nicht schleifen wie ich. Heute habe ich über eine Stunde gebraucht, um zu realisieren, welchen Fehler ich verbastelt hatte und somit immer komische Phänomene sich daraus ergaben. Mal ließ sich die PZB nicht einschalten , dann die ZZA nicht nicht schalten usw. Der Fehler war ein fehlendes Leerzeichen zwischen einem Minuszeichen und einer Ziffer.


    So falsch: -1


    So funktioniert es nun wieder: - 1


    Notepad++ zeigt leider diesen falschen Code nicht als Fehler, obwohl als Sprache Lua eingestellt war.

  • Super Tipp, habe Visual Studio Code installiert.

    Welche Extensions sind denn notwendig / sinnvoll? Sieht schonmal nicht schlecht aus *ja*


    Warte mal mit den Plugins.


    Gruß


    Edit:

    Hi Oliver ,

    habe da ne Frage, "Call" wird als unbekannt deklariert, kann man das irgendwo eintragen, dass das nicht als Fehler angezeigt wird?

    Gruß

  • Ich arbeite in VS Code mit der Lua Erweiterung von Tencent. Dazu ergänzend habe ich noch einen Formatter installiert, damit der Code auch immer schön aussieht. Damit komme ich ziemlich gut klar. Aber meine Empfehlung wäre da einfach mal ein paar Erweiterungen durchzuprobieren. Zum Debuggen ist außerdem eine Kombination aus Print- Ausgaben und Log-Mate mit einem Tail Programm zu empfehlen. Ich nutze dafür BareTail (https://www.baremetalsoft.com/baretail/). Damit kann man dann eigentlich schon ziemlich gut seine Scripte debuggen und quasi Live sehen was passiert. Ist zwar immer noch keine volle Debug-Funktion mit Breakpoints usw, aber schon ziemlich hilfreich.


    Ansonsten noch als Ergänzung zu der Link-Liste von Cotten Eye Joe :

    Ich würde als Scripting Referenz noch die "Scripting Function Reference" DTG empfehlen. Zu finden unter folgendem Link: http://tscdevdocs.co.uk/

    Dort ist eigentlich alles beschrieben, was man als Programmierer wissen muss. Auch deutlich ausführlicher als bei Rail-Sim im Wiki. Wobei das eher weniger Tutorials sind, sondern Entwickler-Dokumentationen. Heißt, man wird dort nicht wirklich an die Hand genommen, sondern bekommt nur den Werkzeugkasten beschrieben. Umsetzen muss man das aber selber.

    3 Mal editiert, zuletzt von TobiasM () aus folgendem Grund: Tippfehler korrigiert

  • Den Wert des Zustandes der Türen auslesen, wie geht das?

    Geschlossen = 0, Öffnen / Schließen = 1, Offen = 2

    jedoch wo oder wie kann man diese Werte auslesen?


    In der Engine.bin der DTG DB BR648 ist ein >DoorsCount< Eintrag, der gibt die Werte 0,1,2 zurück - so konnte ich diesen schonmal verwenden.


    Vielleicht hat jemand einen Plan und Zeit und kann Tipps dazu geben. Es soll eine rudimentäre Traktionssperre werden. Also, wenn Türwert = 2 dann TrainBrakeControl = 0.9
    Brauche also einen Eintrag in der Engine.bin, der die Türwerte zurückgeben kann.

    Vielleicht geht das mit mit >DoorsOpenClose<, da bekommt man die Werte 0 + 1 und man könnte dann die 1 für die Traktionssperre nehmen?

  • Ja, mit "DoorsOpenCloseRight" bzw. "DoorsOpenCloseLeft" geht das. Wenn der Wert >0 ist, sind die Türen nicht zu. Ich müsste jetzt erst nachsehen, aber bekommt man wirklich nur die Werte "0" und "1" zurück?

    "wir müssen unbedingt immer so weiter machen wie immer"

    Einmal editiert, zuletzt von Mistral ()

  • ..

    Ich könnte dir morgen schreiben welche ich da genau verwende.

    ..

    Oliver


    Köntest Du diese Plugins hier bitte noch einmal öffentlich im Thread benennen?

    Die entsprechende Seite mit den Erweiterungen ist da für Anfänger wie mich sehr unübersichtlich.

    Vielen Dank!

    Stefan

    "Bitte beachten Sie unsere unverbindliche Abfahrtsempfehlung!"

    k Route Add-On