====== Aufsetzen der Umgebung und Debugtools ====== **Richte deine Entwicklungsumgebung richtig ein, für effizienteres und effektiveres Arbeiten!**\\ Folgende Optionen sind möglich um das Coden für Siedler stark zu vereinfachen: - Visual Studio Code installieren und einrichten - Skripte extern laden - Eine Funktionsreferenz mit den Parametern der Lua-API - Das Debugscript aktivieren - Den LuaDebugger verwenden ---- ===== Schritt 1: Visual Studio Code installieren und einrichten ===== * **Features**: * Hervorhebung der Syntax und schnelle Fehlererkennung. __Herunterladen und installieren:__\\ https://code.visualstudio.com/download * **Schritte**: * Visual Studio Code starten * Ganz Links den Button für Erweiterungen anklicken * Nach **Lua** suchen und das erste Ergebnis **Lua Language Server coded by Lua** von sumneko installieren. * Siehe auch die Anleitung von mcb dazu: https://github.com/mcb5637/s5CommunityLib/blob/master/VSCodeSetup.md ---- ===== Schritt 2: Ein Ordner für externe Skripte ===== * **Features**: * Externe Skripte können bearbeitet werden ohne das Spiel neuzustarten. * **Schritte**: * Navigiere in dein Siedler Mapverzeichnis *../extra2/shr/maps/user/* * Erstelle einen Ordner namens **scripts**. * Neue Skripte erstellst du hier als myscript.lua Datei. Beliebiger Name wählbar. * Öffne den Skripteditor im Mapeditor und füge als einzige Zeile ein: Script.Load("maps\\user\\scripts\\myscript.lua") * Der Dateiname im Pfad muss zur angelegten .lua passen. ---- ===== Schritt 3: Funktionsreferenz: Parameter der Lua-API ===== * **Features**: * Zeigt dir die richtigen Parameter zu jeder Lua-API Funktion. * **Schritte**: * Herunterladen: https://github.com/mcb5637/s5LuaReference * Die .zip-Datei entpacken und in **../extra2/shr/maps/user/scripts/** entpacken. * Den Ordner **../extra2/shr/maps/user/scripts/** in Visual Studio Code öffnen.. API Funktionen sollten dann erkannt werden. ---- ===== Schritt 4: Das debugscript aktivieren ===== * **Features**: * Typische Fehler im Skript wie fehlende Zeichen oder Aufrufen nicht existenter Funktionen (gennant Syntaxfehler) werden sofort als gemeldet. * **Schritte**: * Um das Debug-Script zu aktivieren, muss -debugscript als Kommandozeilenparameter an Siedler beim Start übergeben werden. * __Möglichkeit 1__: Wenn eine Verknüpfung für Siedler auf dem Desktop vorhanden ist: * Rechtsklick -> Eigenschaften -> In der Zeile hinter **Ziel:** ganz nach rechts und hinter **..settlershok.exe"** -debugscript anfügen und mit OK beenden. * Wichtig ist ein Leerzeichen zwischen -debugscript und dem "-Zeichen: ..settlershok.exe" -debugscript * __Möglichkeit 2__: Im MPUpdater von Kimichura kann per Häckchen das Debug-Script aktiviert werden. ===== Schritt 5: Den LuaDebugger verwenden ===== * **Features**: * Ermöglicht das interaktive debuggen von Skripten, mittel break points, anzeigen aktueller Variablenbelegungen, etc. * **Schritte**: * Die Debugger dll herunterladen: https://github.com/mcb5637/SettlersLuaDebugger/releases/download/v0.5.9/DebugS5.zip * (Falls Link nicht verfügbar, neueste Releases hier: https://github.com/mcb5637/SettlersLuaDebugger/releases ) * .zip entpacken und LuaDebugger.dll im Siedlerverzeichnis neben jede **settlershok.exe** legen. Das sind die Pfade: * **/bin** * **/extra1/bin** * **/extra2/bin**