Visual Studio Code ist der Editor unserer Wahl, um Mapskripte für Siedler 5 - Maps zu bearbeiten. Das Programm bietet unter anderem Syntax-Highlighting, sodass Fehler schon beim Schreiben des Skriptes auffallen und Autovervollständigung, sodass die Wahrscheinlichkeit sinkt, dass man sich vertippt. Wir wollen hier daher Schritt für Schritt anleiten, wie man VSC für Siedler 5 - Skripte einrichtet.
Zuerst solltest du das Programm installieren. Den Downloadlink findest du hier:
Offizielle Seite von Visual Studio Code
Damit VSC Lua interpretieren und dir beim Bearbeiten deiner Skripte bereits einige Fehler und Vorschläge anzeigen kann, muss der offizielle Lua Language Server installiert werden. Gehe dazu
Wir erstellen einen neuen Ordner C:\Scripts\
. Das hat den Grund, dass sowohl die Siedler 5 - Funktionsreferenz als auch unsere eigenen Skripte dort gesammelt und verwaltet werden sollen. VSC kann diese Skriptumgebung speichern und jederzeit neu laden.
In diesen neuen Ordner legen wir zunächst die Siedler 5 Lua-Reference ab. Die erlaubt uns, dass VSC Siedler 5 - Funktionen erkennt, selbstständig vervollständigen kann und Beschreibungstexte anzeigt.
Downloadlink der S5-Reference auf Github
Der einfachste Weg, die S5-Reference runterzuladen ist, nach einem Klick auf den grünen Code-Button Download ZIP auszuwählen. Entpacke die Datei in den neuen Scripts-Ordner.
Führe nun die folgenden Schritte durch, um die S5-Reference in VSC zu öffnen:
VSC sollte nun einen Scripts-Workspace anzeigen. Den kannst du auch abspeichern, sodass du ihn später schnell wieder öffnen kannst. Gehe dazu auf File → Save Workspace As… und speichere die Datei an einem beliebigen Ort ab.
Später kannst du sie mit File → Open Workspace from File… wieder öffnen und bist direkt zurück in deinem Workspace. Das ist besonders nützlich, wenn du den Workspace in irgendeiner Weise modifizierst, also zum Beispiel Blacklists für bestimmte Dateien oder ein Repository auf Github anlegst, etc
Ob die obigen Schritte alle funktioniert haben, kannst du folgendermaßen prüfen:
Table
fährst, sollte ein kleines Fenster erscheinen, das Unused local `Table`
anzeigt. Wenn du mit dem Mauszeiger über GetPosition
fährst, sollte ein ähnliches Fenster erscheinen, das eine kurze Beschreibung der Funktion anzeigt