Celmi ist schon seit Mitte 2021 nicht mehr für TPF2 aktiv. Bei dem Steam Eintrag "Fahrpläne 1.3" ist Gregory365 der Hauptautor, auch wenn Celmi in der Autorenliste oben steht. Nur der Hauptautor kann bei Steam Updates hochladen.
Gregory365 scheint also aktiv zu sein und sein Github Repo ist der einzige aktive Fork. Daher wäre es sinnvoll, Diskussionen und Fixes dort zu platzieren.
MarkMcWire Schön, dass du die Mod verbessert hast. Wenn du das Interesse hast, dich mit Github zu beschäftigen, damit deine Änderungen nachhaltig für alle zur Verfügung stehen, wäre es schön wenn du die Änderungen dort einbringst. Dazu musst du einen Fork von dem Repo erstellen, dann deine Änderungen auf Basis der aktuellsten Version comitten, und einen Pull Request zum originalen Repo erstellen. Bei Fragen zu Git, schreib mir gerne.
Vielleicht ist das der Nachteil des gitHub-Konzeptes: Du bist gezwungen, fremden Code, in den du dich mühsam einarbeiten musst, zu übernehmen, weiterzuentwickeln und vor allem zu pflegen.
Nur weil man etwas auf Github stellt, "muss" man es nicht maintainen - siehe Celmi.
Einarbeitung in fremden Code ist immer anstrengend, aber am Ende ist es doch besser wenn alle an einer Sache gemeinschaftlich arbeiten, als wenn es 20 verschiedene zip files irgendwo gibt und man nicht sehen kann, wo die Unterschiede sind. Wenn man alleine arbeitet, kann man Versionskontrolle vielleicht noch gerade so selbst managen, aber bei kollaborativem Arbeiten liegen die Vorteile von Github auf der Hand. Man kann alle Änderungen auf einen Blick nachverfolgen und kontrollieren. Und solange der Owner mitspielt, fließen Erweiterungen von anderen direkt ins Hauptprojekt ein, wovon alle profitieren, die Änderungen auch beim nächsten Update noch drin sind, und sich nicht die Frage stellt, wo kann/darf ich das als separate Version hochladen.
Ich habe eine Lösung gefunden. Ich habe das Script res/config/game_script/timetable_gui.lua in zwei Dateien aufgeteilt. Die original-Datei verwaltet nur noch das Interface und dessen Eingaben.
Das neue Script res/config/game_script/timetable_engine.lua verwaltet die Ausführung des Fahrplans und die Steuerung der Züge.
Das finde ich interessant, weil ich das bei mir auch so gemacht habe
Trennung von Logik/Berechnungen und Gui ist halt irgendwie Standard... Die game_scripts sind da irgendwie unflexibel und auch nicht intuitiv: Dieselbe Lua Datei wird in 2 Threads parallel geladen mit denselben Variablen, die dann 2x existieren, aber in Engine und Gui Thread werden jeweils andere Funktionen aufgerufen. Nur die "load" function wird in beiden aufgerufen. Das kann zu Problemen führen, siehe Game Script => Save function, Unerklärliches verhalten
Ich behaupte einfach mal, das die Fahrplanmod programmiertechnisch absoluter Müll ist. Ein lächerlicher Scriptmod welcher mit -im Prinzip- nichts weiter als ein paar Zahlentabellen, 20GB RAM zumüllt, würde ich mir nie antun.
Wie "sauber" eine Mod lua-seitig aussieht und welche Probleme im Spiel dadurch entstehen können, hat absolut nichts miteinander zu tun! Ich kann dir Mods schreiben, die mit 2 Zeilen random Crashes produzieren und gleichzeitig gibt es hier Mods, die programmiertechnisch eine Katastrophe sind (zB 1000 Zeilen was auch in 10 Zeilen geht), aber fehlerfrei laufen. Es geht hier nicht um Konzeptfehler in Mods, sondern um nicht-offensichtliche Probleme in der TPF2 Engine. Wenn es offensichtlicher Design Fehler der Timetable Mod wäre, dass Datenmengen unkontrolliert im Lua Code angehäuft würden, wäre der Fehler schon längst gefunden.
Hier ein ähnliches Beispiel, wie eis_os genannt hat: https://github.com/IncredibleH…TPF2-Timetables/issues/50
Woher soll ein Modder wissen, dass ein simpler API Aufruf nur in bestimmten Situationen einen random Crash erzeugt?