Guten Abend zusammen,
jetzt, wo @ChrisTrains es mir erlaubt hat, mein Skriptupdate zu veröffentlichen, möchte ich die Ankündigung dafür schreiben.
Meine Intention war, dass der Simulations-Flirt³ endlich eine Haltebremse, eine abhängig von der dynamischen Bremse dazuschaltende Druckluftbremse, eine TAV-Türsteuerung mit auswählbarem Fahrgastwechsel, eine "verbesserte" PZB sowie einen ebenfalls "verbesserten" Tempomat und viele andere kleine Gimmicks erhält, die man vielleicht erst nach längerer Zeit alle entdeckt.
Da ich nun schon öfters gefragt wurde, wie ich denn auf ein eigentlich verschlüsseltes Skript zugreifen konnte, möchte ich das mal erklären. Ich habe nichts illegales gemacht. Ich habe das Skript weder dekompiliert, noch sonst irgendwie den alten Inhalt bearbeitet(/n) (können). Ich habe einfach die *.out-Datei in Notepad++ gezogen, die ganzen kryptischen Zeichen markiert und auf Entf gedrückt. Dann habe ich das gespeichert und mal testweise ein Szenario mit dem Flirt gestartet. Das, was man dann sieht, ist ein Flirt ohne jegliche Funktionen, mit eingeschalteten Lichtern und ohne Möglichkeit, Schalter zu verändern. Man öffne wieder Notepad++ mit dem "geleerten" Skript und fängt ganz von vorne in LUA an zu programmieren. Geht los mit function update() und endet dann nach 2-3 Monaten mit zich Tests und Aufregern darüber, dass doch noch irgendwo ein Fehler ist
Ich bin nun mit dem Skript so weit, dass die gröbsten Funktionen fertig sind und nur noch Fehler beseitigt werden müssen. Am Ende steht ein Härtetest, bei dem ich halt so weit wie möglich alles ausprobiere. Ich werde aber nie und nimmer alle Bugs alleine finden. Dafür brauche ich euch.
Ich bitte euch, Fehler hier in diesen Thread oder mir persönlich per PM zu schreiben, die euch beim Flirt³ von ChrisTrains mit meinem bald erscheinenden Skriptupdate auffallen. Nur so lässt sich das Skript endgültig fertig stellen.
Ich werde jetzt nochmal kurz und knapp auflisten, was sich alles geändert hat oder was hinzu gekommen ist:
-
Dynamische Bremse: Der Flirt³ in der alten, aktuellen Skriptversion legt die dynamische Bremse immer nur bei einer Traktionseinheit an. Fährt man beispielsweise in Dreifachtraktion, sind die anderen beiden Traktionen dynamisch ungebremst. (Kann man das so sagen?)
- Das ändert sich mit der neuen Skriptversion. Ich habe dafür gesorgt, dass auch, um bei dem Beispiel zu bleiben, die anderen beiden Traktionen mitbremsen. Der Train Simulator lässt es leider nicht zu, dass man das mit dem Controller "DynamicBrake" lösen kann. Das würde ich mal als Bug oder Fehlfunktion beschreiben.
Ich habe das umgangen, indem der Richtungswender zum dynamischen Bremsen einfach umgelegt und dann Leistung aufgeschaltet wird. Das sieht leider im HUD etwas "blöd" aus, wenn ständig der Richtungswender-Hebel hin- und herwechselt, aber es lässt sich anders leider nicht lösen. So nervig ist das nun auch nicht. Ich wollte nur mal drauf hinweisen, wieso weshalb und warum. Erspart Fragen. Nebenbei würde ich gerne nochmal auf diesen Thread verweisen. Da gab es leider nie eine Antwort. Wahrscheinlich ist das, was ich da beschrieben oder gefragt habe, auch nicht möglich.
- Das ändert sich mit der neuen Skriptversion. Ich habe dafür gesorgt, dass auch, um bei dem Beispiel zu bleiben, die anderen beiden Traktionen mitbremsen. Der Train Simulator lässt es leider nicht zu, dass man das mit dem Controller "DynamicBrake" lösen kann. Das würde ich mal als Bug oder Fehlfunktion beschreiben.
-
Haltebremse: In der aktuellen Skriptversion ist es so, dass der Zug grundsätzlich keine Haltebremse hat. Man muss dem Triebwagen selbst einen festen Halt durch entsprechendes Anlegen einer Bremse verschaffen.
- Der Flirt³ muss jetzt grundsätzlich nicht mehr vom Player selbst festgehalten werden. Ist die Geschwindigkeit = 0, wird eine ich nenne es mal 40%ige Druckluftbremsleistung angelegt. Die reicht locker aus, um den Zug vor dem Wegrollen zu hindern. Diese Haltebremse löst sich, wenn der Fahrbremshebel in Fahrtstellung positioniert oder der rechte Bremshebel für die indirekte Bremse angezogen wird. Die Haltebremsposition von 40% löst sich dann sozusagen und die Bremsleistung nimmt dann die durch den rechten Bremshebel geforderte an, welche halt auch geringer als die 40 % sein kann. Mehr ist eigentlich zur Haltebremse nicht zu sagen.
-
Hinzuschaltende Druckluftbremse: Eng verbunden mit dem vorherigen Punkt. Denn beim Abbremsen nimmt die Kraft der dynamischen Bremse immer weiter ab. Bei Triebwagenzügen in der Realität fängt dann die indirekte Bremse an zu wirken oder sich hinzuzuschalten.
- Auch das kann der Flirt in der neuen Skriptversion. Das wird wohl nicht ganz der Realität nach empfunden sein. Aber folgendes: Fängt die dynamische Bremskraft an, bei sinkender Geschwindigkeit nachzulassen, schaltet der Computer/das Skript/der Flirt die Druckluftbremse nach und nach hinzu, sodass man zum Stillstand kommen kann, ohne den Fahrbremshebel auf unter -50% zu stellen. Man kann quasi eine für den Fahrgast komfortable Bremsleistung wählen und kommt dann "butterweich" zum Stillstand. Ab unter +-0,5 km/h wirkt die dynamische Bremse nicht mehr. Die indirekte Bremse gibt jetzt so viel Kraft, wie vom Fahrbremshebel gefordert.
- Verbesserte PZB: Hierzu kann ich nicht so ganz viel sagen und deswegen erspare ich mir einen untergeordneten Bulletpoint. Mir kam es manchmal so vor, als ob die PZB in der aktuellen Skriptversion nicht ganz fehlerfrei ist. Ist im Grundsatz auch egal, denn ich hätte sie so oder so neu programmieren müssen. Im Handbuch erwähnt der Chris, dass er die PZB etwas modifiziert hat, damit die Beeinflussung bei fehlerhaftem Signalbau nicht zu früh endet. Das habe ich jetzt in der neuen Skriptversion nicht gemacht. Auch hier würde ich gerne eure Meinung zu hören. Soll ich das so machen, wie es vorher war? Für mich persönlich ist es nicht schlimm, wenn die Beeinflussung aufgrund von fehlerhaften Magnetabständen zu früh endet. Man muss sich ja noch nicht befreien. Zumal das, was der Chris gemacht hat dieses "Problem" auch nicht ganz so perfekt umgeht, weil man skripttechnisch nicht erkennen kann, ob der Player/Fahrer/Zug gerade über ein grünes Signal gefahren ist. Man müsste im Endeffekt also "schummeln".
-
Sonstige Kleinigkeiten
- Hier gehe ich mal direkt in den untergeordneten Punkt. Und zwar habe ich das Abspielen von Sounds etwas verändert. Ein klassisches Beispiel ist das Anlegen der Notbremse mithilfe der Notbremsstellung des Fahrbremshebels. Man hört dann natürlich einen entsprechenden Sound, einen Notbrems-Anlege-Sound. Problem an der Sache ist, dass wenn man jetzt vorzeitig, also bevor dieser Notbrems-Anlege-Sound vollständig abgespielt wurde, die Notbremsstellung wieder verlässt, dieser Notbrems-Anlege-Sound trotzdem weiter abgespielt wird. Natürlich kommt dann der Sound für das Lösen der Notbremse noch hinzu, sodass sich ein ziemlicher Soundwirrwarr entwickeln kann.
Ich habe folgendes gemacht: Wird die Notbremsstellung verlassen, wird der Notbrems-Anlege-Sound unterbrochen und sofort der Lösesound abgespielt. Gleiches gilt noch für viele andere Sounds, wie dem Einlegen oder Aktivieren des Hauptschalter (also den Sound für das Hochfahren der Systeme) oder dem Anlegen/Lösen der Federspeicherbremse.
- Hier gehe ich mal direkt in den untergeordneten Punkt. Und zwar habe ich das Abspielen von Sounds etwas verändert. Ein klassisches Beispiel ist das Anlegen der Notbremse mithilfe der Notbremsstellung des Fahrbremshebels. Man hört dann natürlich einen entsprechenden Sound, einen Notbrems-Anlege-Sound. Problem an der Sache ist, dass wenn man jetzt vorzeitig, also bevor dieser Notbrems-Anlege-Sound vollständig abgespielt wurde, die Notbremsstellung wieder verlässt, dieser Notbrems-Anlege-Sound trotzdem weiter abgespielt wird. Natürlich kommt dann der Sound für das Lösen der Notbremse noch hinzu, sodass sich ein ziemlicher Soundwirrwarr entwickeln kann.
-
Last but not least mein absolutes Highlight - und zwar die Türsteuerung: Es ist ja grundsätzlich beim gesamten Personenwaggon-Rollmaterial im TS so, dass nach Freigeben der Türen ALLE Türen geöffnet werden. So auch beim Flirt³ von ChrisTrains.
- Und auch hier habe ich versucht, ausprobiert, teilweise aber eben auch die Grenze des Machbaren zu spüren bekommen. Grundsätzlich einmal vorab: Ihr werdet jetzt nicht sehen, dass irgendeine Pappfigur am Treppenaufgang "erscheint", zu einer der Türen watschelt und sich diese Tür dann öffnet. Das kann der TS einfach nicht. Wenn, dann wäre es auch definitiv schon verwirklicht worden.
Was aber machbar ist, dass sich Türen einzeln, per Zufallsgenerator öffnen und nach einer ebenfalls zufällig ausgewählten Zeit wieder schließen. Ich habe es so gemacht, dass sich auch die Häufigkeit der Türöffnung (also die Wahrscheinlichkeit sozusagen) direkt im Szenario/freien Spiel verändern lässt. Man kann also einen hohen, mittleren, geringen oder sehr geringen Fahrgastwechsel auswählen. Ich spiele noch mit dem Gedanken, auch eine "gar kein Fahrgastwechsel" Möglichkeit einzuprogrammieren. Denn in so manchen Tagesrandzeiten kommt das halt auch vor.
Die Türfreigabe wird mit den Tasten U, I und O bedient. "U" öffnet oder entnimmt die Freigabe für die Türen links. "O" macht selbiges mit den Türen rechts. "I" zwangsschließt BEIDE Türseiten ohne wenn und aber. Die Taste sollte man natürlich der Fahrgastfreundlichkeit zuliebe eher weniger benutzen. Ist aber natürlich jedem selbst überlassen.
Bei der KI kommt aber leider nur die Standart-Türfunktion zum Einsatz. Hier öffnen sich also alle Türen, wie sonst halt auch üblich. Dazu würde ich gerne mal auf die "Weisen Worte" von Maik Goltz verweisen.
- Und auch hier habe ich versucht, ausprobiert, teilweise aber eben auch die Grenze des Machbaren zu spüren bekommen. Grundsätzlich einmal vorab: Ihr werdet jetzt nicht sehen, dass irgendeine Pappfigur am Treppenaufgang "erscheint", zu einer der Türen watschelt und sich diese Tür dann öffnet. Das kann der TS einfach nicht. Wenn, dann wäre es auch definitiv schon verwirklicht worden.
Der Überblick ist jetzt im Nachhinein doch nicht so "klein". Aber jetzt wisst ihr grob, was auf euch zu kommt, falls ihr Interesse am Flirt³ habt.
Das eigentliche Skript, also die *.out-Datei, werde ich wohl zusammen mit einem geänderten Audio-, Lights-, Simulation- und Wagon-Ordner in einer rar-Datei zukommen lassen.
Wie gesagt, noch ist er nicht fertig, die Ziellinie ist aber sichtbar.
In diesem Sinne wünsche ich noch einen angenehmen Freitagabend und möchte zum Schluss noch mal eindringlich auf folgendes hinweisen:
Das ist kein offizielles Skriptupdate vom Hersteller ChrisTrains. Support zu diesem Skriptupdate kann man also NICHT von ChrisTrains bekommen. Für jegliche Fragen bitte ich, dass ihr diese hier im Thread stellt oder mir per PN zukommen lasst. Das wäre meine größte Bitte. Es ist definitiv nicht selbstverständlich, dass es ein Hersteller erlaubt, ein von einem User selbstgeschriebenes Skriptupdate zu veröffentlichen.
Nochmal ein herzlichstes Dankeschön für die Freigabe an @ChrisTrains. Thank you very much!
Viele Grüße
Michael