Open Derjohann84 opened 1 month ago
Hi Johannes,
thanks for getting in touch!
Yes you are right, my script only looks at the working hours and not the lifetime values. Is it enough for you to reduce the general number of faults? I've got a few in-game settings that you can use to do this (attached screenshot).
The only question is whether it is enough for you if all vehicles receive less wear, or if individual vehicles should receive a different amount of wear. In this case I can send you a customized version if you like. For future updates, I'll definitely make a note to add a function like the one you suggested!
I hope I could help
Cheers Gerrit / frvetz
*In case your from Germany you can answer in German, since I am :D
Hi Gerrit,
dann gerne weiter auf deutsch 🙂.
Danke für den Hinweis zur Menüpunkt frequency, denn habe ich tatsächlich noch nicht berücksichtigt. Was ich bereits nutze ist die mod Reparatur Und Lackierungseinstellungen mit dem Faktor 0,25 für Verschleiß.
Mit der Idee mit realistischen Werten zu spielen kommen ja zwei Herausforderungen. -Die LS Fahrzeuge werden also länger genutzt als in der Vanilla Spiel-Idee vorgesehen - sie müssen also deutlich langsamer verschleißen. -Die Fahrzeuge werden also auch deutlich älter, oder gebrauchte haben dann auch mal 10.000 h Betriebsstunden. Dem Punkt eins kann ich ggf. mit Anpassung der mod für Reparatur Und Lackierungseinstellungen begegnen ( ggf. den Faktor noch weiter runtersetzen 0,05 statt 0,25… Die hohen Betriebsstunden schlagen jedoch bei deinem Skrip ordentlich zu, füge ich bei einem neuen Schlepper 10000h über Easy dev hinzu, habe ich plötzlich 16% schaden.
Mein Wunschziel wäre es, dass ich in 100-200 Betriebsstunden ca 1-3 “Schäden” reparieren muss - Voraussetzung ich fahre den Motor warm und schalte nicht die Fahrbereiche unter Last (spiele mit CVT). Und das unabhängig von den Gesamtbetriebsstunden. (Klar könnte man sich da noch austoben und die lifetime aus der XML mit in Relation nehmen - aber keine Ahnung ob ausser mir noch mehr so verrückt sind und ultrarealistisch spielen wollen.
Falls du Lust hast mir eine customised Version zu erstellen wäre das natürlich mega. Ich muss gestehen das mich dein skript noch überfordert- bei XML Anpassungen traue ich mir ja schon einiges zu.
Beste Grüße Johannes
Hi Johannes,
da hast du natürlich vollkommen Recht! Wenn man mit so realistischen Werten spielt wie du, kommt man mit den Standardwerten überhaupt nicht zurecht.
Hier mal ein kurzer Crashkurs wo du was in meinem Script findest:
Alles was während des Spielens passiert findest du in 'RealisticDanageSystem.lua, alle Einstellungen sind in 'registerRealisticDamageSystem.lua'.
"Wichtig" wird es erst ab Zeile 750. Hier werden die Schäden erstellt. Erst bekannte Schäden durch Motorstunden, dann bekannte Schäden durch das Alter, dann unbekannte Schäden durch Motorstunden und zum Schluss unbekannte Schäden durch das Alter. 'NextKnownDamageOperatingHour': Gibt an bei welcher Motorstunde der nächste bekannte Schaden entsteht 'NextKnownDamageAge': Gibt an wann bei welchem Alter der nächste bekannte Schaden entsteht Das gleiche dann auch für 'Unknown' Hier kannst du theoretisch einfach die Werte in den jeweiligen 'math.random' Funktionen ändern. Hier wird bei jedem Durchlauf eine zufällige Zahl in dem Bereich in Klammern gewählt und zu den aktuellen Motorstunden/Alter hinzugefügt (sprich wenn du da "math.random(100, 200)" hinschreibst, erstellt er im Schnitt alle 150 Motorstunden einen bekannten bzw. unbekannten Schaden. Bei manchen math.random Funktionen habe ich schon eine relativ hohe Zahl (einmal 45, 75 und einmal 105, 135) und dahinter "/ 10" stehen. Das habe ich gemacht, um Dezimalzahlen zu erzeugen, damit auch mal bei z.B. 75,3 Motorstunden ein Schaden entsteht und nicht immer bei ganzen Zahlen. Da also einfach eine Null dranhängen (1000, 2000 bei dir, wenn ich mich nicht irre). Ein bisschen weiter unten (ab Zeile 820) ist dann jeweils ein Eintrag, um Wartung, Inspektion und CVT-Reparatur zu beenden und die Werte zurückzusetzen. Am Schluss der onUpdate Funktion sind die ganzen Konsolenbefehle. Eine komplette Liste mit Beschreibung findest du hier.
Hoffe das bringt ein wenig Klarheit in das Chaos 😅 Meistens findest du im Script auch nochmal eine kurze Beschreibung in Grün hinter den jeweiligen Zeilen.
Ich habe dir hier mal eine Version angehängt, wo die Fahrzeug-Lifetime einbezogen wird. Der Zufallswert wird hier lifetime / 600 gerechnet. So ziemlich jedes Fahrzeug hat einen Lifetime-Wert von 600, was also für normale Spieler keinen Unterschied macht. Passt man sich jetzt die Lifetime auf 15.000 an, rechnet das Script z.B. "nächster bekannter Schaden in 6 Motorstunden 15.000/600 = nächster Schaden in 150 Motorstunden.
Neue Range für neue bekannte Schäden durch die Motorstunden: 112,5 - 187,5 Neue Range für neue unbekannte Schäden durch Mototstunden: 262,5 - 337,5 Das Alter habe ich nicht jetzt nicht geändert. Hierdurch entstehen im Jahr ca. 1,5 bekannte Schäden und ca. 2 unbekannte Schäden. Eventuell ist das sogar ein bisschen zu viel für dich. Hierfür könntest du einfach in Zeile 765 (bekannte Schäden) und 789 (unbekannte Schäden) größere Zahlen in math.random einsetzten.
Um ingame ein bisschen zu schauen, ob es passt, kannst du "rdsDebug" in die Log eingeben und die Werte für 'NextKnownDamageOperatingHour', 'NextKnownDamageAge', 'NextUnknownDamageOperatingHour' und 'NextUnknownDamageAge' auslesen. Neue Zeiten generierst du mit "rdsResetTimeUntilNextDamage" und den Debug beendest du wieder mit "rdsDebug", sonst schreibt er dir dauerhaft alle Werte in die Log.
Beste Grüße Gerrit 😄
Wow, du bist spitze! Das ist jede Menge guter Input, dass schau ich mir alles im Detail an und werde deine Vorschläge ausprobieren. Freue mich schon drauf 😁. Ist immer genial, wenn man den LS ein Stück weiter optimieren kann. Nochmals Danke!
Sehr gerne! 😁 Ich lasse den Issue noch ein paar Tage auf, falls du noch Fragen hast oder eine Änderung wünscht. Ansonsten würde ich ihn demnächst einfach schließen und bei Bedarf wieder öffnen :D
Hi,
I am playing FS22 as close as possible with real—live values.
For example: I buy „used“ Tractors with 7000h working hours (set with easy def). In the vehicle xml I have changed the lifetime value from 600 to 15.000 and wearduration from 480 to 2000. Without your mod the wear in % is near real life wearing (playing a 150 ha farm and 200-300h working hours per ingame year) I pretty much like the idea of your mod but playing with it led to a fast increase of wear. I am assuming that your script take the working hours into account without putting them in relation to the changed lifetime value from the vehicle xml.
Do you have any suggestion what needs to be change that a tractor with thousands of working hours is not that fast wearing out? Potentially you can point me to the relevant function in you script.
thank you in advance Johannes