Liebe Community!
Um die Reichweite an potentiellem Wissen zu vergrößern, möchte ich mein Problem auch hier schildern. Ich arbeite derzeit an einem Skriptupdate für den RSSLO 4010er (apparently nutzt er das Skript von der SZ363). Das sollte der erste Step für ein weiteres Soundupdate sein. Als ersten Schritt habe ich dafür im Skript die Fortschaltgrenzen und Zeiten richtig gesetzt und die Motorströme und die Leistung anhand der korrekten Formeln für Reihenschlussmotoren berechnet. Dies passiert in jedem Simulationsschritt. Damit die TractiveEffortVsSpeed/Throttle nicht dazwischenpfuschen, habe ich sie quasi neutralisiert, indem ich in der Speed-File eine konstante Leistung etwas über der maximalen Leistung angegeben habe und den Throttle auf 1 gesetzt hab, sodass es dafür keine Multiplikatoren gibt. Im Skript wird für den Regulator schließlich ein Wert zwischen 0 und 1 normiert auf die angegebene Maximalleistung pro Motor gesetzt. Das schien mir der beste Approach für eine möglichst genaue Simulation zu sein. Die Motorwiderstände sind dabei aus der Leistungstafel des Motors und mehreren Leistungspunkten über die Verlustleistung berechnet. Da die Induktivität mit dem Arbeitspunkt schwankt, habe ich als Dämpfung eine Exponentialfunktion verwendet, um nicht im Skript langsame DGLS lösen zu müssen.
So viel zur Beschreibung. Mein Problem ist jetzt, dass, obwohl die Werte alle aus dem realen Fahrzeug stammen und in meinen Augen korrekt berechnet werden, die Leistung im Spiel viel zu hoch ist. Bereits bei der ersten Stufe gerät das Fahrzeug direkt ins Schleudern und beschleunigt über alle Maßen. Habe ich irgendwas falsch verstanden, wie der Train Sim mit Leistungen und Kräften umgeht? Hab ich was übersehen oder stimmt etwas in meiner Logik im Script selber nicht? Nachdem RWA einige sehr genaue Addons erschaffen hat, würde ich mich freuen, wenn ihr mich auf die richtige Spur leiten könntet. Die geänderten Files sind im Anhang ersichtlich.
(Anm.: Ich habe einige Programmiererfahrung in C# und Java, für Lua ist das jedoch mein erstes Projekt, deswegen bitte hinsichtlich des Codestyles nachsichtig sein.)