Page 1 of 1

[Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Fri Jun 02, 2017 12:16 am
by tomsche
Hallo,

ich möchte mich an meinem zweiten Skript versuchen. Das Erste macht nichts weiter, als beim Drücken einer Taste das Anschlagbrett zu öffnen. Das neue Skript soll deutlich komplexer werden und den im Spiel enthaltenen Tempomat modifizieren. Sollte sich der Original-Tempomat nicht direkt anpassen lassen, plane ich, meine Variante zu ergänzen.

Folgende Fragen habe ich derzeit:
  • 1. Ich finde nur noch die LUA DOC zum Farming Simulator 17. Wo finde ich die LUA DOC zum Farming Simulator 15?
  • 2. Welchen Wert gebe ich für descVersion in der Datei modDesc.xml an?
  • 3. Kann ich den Original-Tempomat aus dem Spiel modifizieren oder muss ich einen zusätzlichen Tempomaten als Specialization in die Tabelle eines jeden Fahrzeugs einfügen?
  • 4. Worauf ist zu achten, wenn der neue Tempomat auch im Multiplayer-Modus funktionieren soll?
  • 5. Kann ich auch ohne weitere Spieler testen, ob mein Skript im Multiplayer-Modus funktioniert?

tomsche

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Fri Jun 02, 2017 3:24 pm
by agp8x
Schau dir mal den Mod an, der fummelt AFAIR am Tempomat rum: https://www.farming-simulator.com/mod.php?mod_id=27660
  1. (siehe PN)
  2. Zuletzt war Version 23 aktuell.
  3. Orignal-Tempomat modifizieren sollte funktionieren
  4. Für MP hängt es davon ab, was genau du tun willst. Im Endeffekt musst du Statusänderungen per Event kommunizieren, aber nicht z.b. bei jedem Update, oder key-event.
  5. Du kannst natürlich selbst 2 Spielinstanzen starten (auf verschiedenen Rechner, mit verschiedenen Lizenzen). Idealerweise wird 4 mal getestet: Ingame/dedi mit 2 und 3 Spielern (mit dedi würden auch 2 Spieler reichen)
Edit: Liste eingebaut, um Verwechslungen vorzubeugen, böserlöwe hat es ja schon erklärt

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Fri Jun 02, 2017 5:28 pm
by tomsche
Wo gibt es denn die Version 23 von SpeedControl? Ich kenne nur Version 15.0.0.2.

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Fri Jun 02, 2017 5:34 pm
by böserlöwe
Hast du hier etwas verwechselt?
23 ist die Version die für alle moddesc als letztes im LS15 verwendet worden ist.
Die Version 15.0.0.2 könnte dann die Versionsnummer des SpeedControl-Mods selbst sein.

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Fri Jun 02, 2017 6:13 pm
by tomsche
Ja, ich hatte etwas verwechselt. Jetzt ist aber alles nachvollziehbar.

Nächste Frage:
Ich kann die ZIP-Datei meines Mods nicht bei laufendem Spiel aktualisieren. Gibt es eine Möglichkeit, um den Neustart des Spiels zu umgehen, wenn ich eine neue Version meines Mods testen möchte?

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Fri Jun 02, 2017 6:31 pm
by böserlöwe
Es gibt nur die Möglichkeit den Mod als normalen Ordner im Spiel zu haben, also keine ZIP-Datei.
Dann kannst du in diesem Ordner nur in den xml Dateien Änderungen vornehmen,
dannach dann den Mod über die consolenbefehle die xml neu einlesen, aktualisieren lassen.

Wenn man das macht wird die Änderung aber nur bei neukauf des Mods wirksam.
Also das Spiel starten, den Mod kaufen, testen und dann eben wieder verkaufen.
xml ändern, im Spiel über Console aktualisieren, neu kaufen und wieder testen.

Leider lässt sich das sonst nicht ändern da der Mod ja immer wieder neu geladen werden muss.
Bei einem Script das im Spiel nicht gekauft werden kann, bleibt dir wohl nichts anderes übrig als den Mod durch neustart des Spiels neu zu laden.

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Sat Jun 03, 2017 11:26 am
by tomsche
Schade, dass das Spiel bei einer Skript-Änderung immer neu geladen werden muss.

Habe inzwischen meine erste Versuche mit Specializations durchgeführt:
  1. Gibt es eine Art Grundgerüst für Specializations, die als Vorlage verwendet werden kann?
  2. Welche Funktionen müssen in der Specialization zwingend enthalten sein?
  3. Wo füge ich meine Specialization für den Tempomat am besten ein - Drivable oder Steerable?

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Sat Jun 03, 2017 12:51 pm
by böserlöwe
Da es sich bei den Scripten um spezifische Dateien handelt ist eine art Generelles script so nicht machbar.
Da kann ich dann nur wieder auf die Documentation hinweisen die im GDN für das Scripting erstellt worden ist.
https://gdn.giants-software.com/documentation.php
Hier ist erstmal alles enthalten was für den LS verfügbar ist und was von GIANTS für die User freigegeben ist.

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Sat Jun 03, 2017 7:25 pm
by tomsche
Die Beschreibung der Funktionen im GDN ist sehr kurz gehalten. Meist so kurz, dass man nur durch Ausprobieren herausbekommt, was die Autoren der Beschreibungen einem mitteilen wollen. Dann muss ich halt weiter auf die Trial-and-Error-Methode setzen.

Folgende Fragen ergeben sich mittlerweile:
  • Was ist der Unterschied zwischen den Funktionen "update" und "update tick"?
  • Wann muss ich die Funktion "prerequisitesPresent" einbauen, wann nicht?
  • Gibt es Tutorials zum Thema "Skripten"? Gerne auch in englischer Sprache.
  • Welche Alternativen zu Notepad++ gibt es, wenn man Skripts in LUA erstellen möchte?
edit:
Eine Antwort auf diese Frage habe ich inzwischen.

Warum soll ich in der Datei modDesc.xml für den Parameter "descVersion" den Wert 23 und nicht einfach 20 oder 30 eintragen?
Im Farming Simulator 15 werden nur die Werte 20 bis 24 unterstützt. Der im Mod zu verwendende Wert hängt von der Version des Spiels ab, die vorausgesetzt wird, damit der Mod funktioniert. Welcher Wert zu welchem Patch gehört konnte ich nicht herausfinden. Da bei mir der letzte Patch installiert ist, werde ich den Wert in meinem Mod auf 24 setzen.

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Mon Jun 05, 2017 1:22 pm
by agp8x
Ja, die Dokumentation hilft wenig, wenn man noch nicht im Skripten drin ist.
  • Das Update wird weniger häufig aufgerufen, und sollte v.A. für Nutzerinteraktion genutzt werden (KeyEvents, usw.). Der updateTick soll für den "Spielzustand" sein (Interaktion mit Triggern, Füllmengen, usw.)
  • prerequisitesPresent brauchst du, wenn du dich darauf verlässt, dass das Fahrzeug gewisse andere Specializations verbaut hat (weil du auf deren Variablen zugreifst, deren Verhalten willst, oder ...)
  • Skripten allgemein, oder für LS? Allgemein für Lua gibt es etliche im Netz, für LS ist mir keines bekannt, da ändert sich einfach zu häufig alles. Bis man es selbst soweit hat, dass man ein Tutorial schreiben könnte, ist es durch Patches und dem Nachfolger schon wieder obsolet.
  • Du kannst jeden beliebigen Texteditor oder Entwicklungsumgebung zum Schreiben verwenden. Eine IDE macht relativ wenig Sinn, weil sie die ganzen LS-Spezifischen Variablen nicht kennt. (Das ist neben meinem aktuellen Zeitmangel auch ein Grund, warum bei mir wenig neues kommt. Wenn ich mal Zeit zum Skripten habe, geht die meistens komplett mit Nachbohren drauf)

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Mon Jun 05, 2017 10:29 pm
by tomsche
Danke für Deine Antworten, agp8x. Dann bleibe ich eben bei Notepad++. Ein anderer Editor wäre auch nur dann interessant, wenn er "Autovervollständigung" bieten würde. Tutorials für das Skripten im LS sind gemeint. Da scheint es irgendwie nichts brauchbares zu geben, obwohl die Serie schon so lange am Markt ist.

Mit dem Skript geht es voran. Habe heute eine Stunde mit Skript gespielt und das meiste hat so funktioniert, wie es soll. Es fehlen noch ein Bild für die Mod-Ansicht und einige Änderungen am Code, damit das Skript auch Fahrzeugwechseln umgehen kann.

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Mon Jun 19, 2017 10:00 pm
by tomsche
Das Bild für die Mod-Ansicht ist fertig und der Fahrzeugwechsel bereitet jetzt auch keine Probleme mehr. Auf die Unterstützung des Multiplayer-Modus verzichte ich vorerst, da mir eine Möglichkeit zum Experimentieren fehlt.

Wo lade ich die Mod am Besten hoch?

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Thu Jun 22, 2017 9:50 am
by agp8x
Ich würde Modhub vorschlagen, wenn dort noch Mods für 15 angenommen werden

Re: [Skript] Hilfe bei der Erstellung einer Alternative zum Original-Tempomat

Posted: Thu Jul 20, 2017 11:09 pm
by tomsche
Ich finde auf Modhub nicht einmal mehr Mods für 15. Bis vor kurzem waren die noch vorhanden. Keine Ahnung, wann Giants die rausgenommen hat.