Neues Spiel

Um in der Lamiae Engine ein neues Spiel zu erstellen, haben wir entweder die möglichkeit ganz von vorne anzufangen, oder aber wir nehmen ein Preset zur Hand, welches uns die Lamiae Engine an die Hand gibt.
Im Ordner <Pfad zur Lamiae Engine>/games/ befindet sich ein Ordner base dieser beinhalten eine Menge leerer Scripts die wir im laufe dieses Tutorials ergänzen.
Diesen kopieren wir uns unter einem neuen Namen in den games/ Ordner und benennen ihn so um wie unser Spiel heißen soll.
In dem Ordner sollte sich eine base.cfg befinden, diese Kopieren wir zu dem noch aus dem Ordner ebenfalls in den games/ Ordner und benennen ihn so wie unser Spielordner.
loopfiles f (datapath tools) cfg [ include (concatword tools/ $f) ]
Dieser kleine Codeschnipsel läd automatisch alle Dateien im Ordner games/<dein spiel>/tools/.
loopfiles ist ein Skriptbefehl der alle Dateien im angegebenen Datenpfad und der angegebenen Endung iteriert.
Die aktuelle Datei wird in der Variable f festgehalten.
Die Standarddateien beinhalten ein rudimentäres Levelsystem und ein Tag-Nachtsystem.
loopfiles <variable> <Pfad zum Ordner> <Dateinendung> [ <dein code> ]
Der Befehl datapath ist ein interner Lamiae Befehl und gibt lediglich eine Zeichenkette mit einer Ordner Angabe zurück, das erlaubt es euch, eure Ordnerstrucktur selbst fest zulegen, wenn ihr die Pfade hinter den Schlüsselworten ändert.
r_preparemap <Karte> <Skript> <Flags>
Dieser Befehl dient dazu eine Bestimmte Karte mit einem bestimmten Skript vorzubereiten, nehmen wir an, ihr wollt ein und die selbe Map mehrmals benutzen, aber ein paar Dinge, außer Geometrie, Spawnpositionen von NPCs/Crittern oder Items, passend zum Spielverlauf abändern, ist das hier der Befehl nach dem ihr sucht.
Für den Anfang machen wir erst einmal noch nichts in dieser Hinsicht und schreiben einfach r_preparemap <Karte> null 0 und laden einen Leerenskript ohne FLags, ihr könnt für den Anfang das auch komplett weg lassen.
firstmap <Karte>
Dieser Befehl legt die erste Karte eures Spiels fest, habt ihr sie vorher vorbereitet, sind diese Änderungen gültig, und müssen nicht in einem Zug gemacht werden.
gameversion <Version> compatversion <Version>
Diese beiden Befehle sind eine Versionierung, während der erste Befehl die aktuelle Version eures Spieles wieder gibt, ist der zweite dazu da, um Savegames zu laden.
Bzw, der 2te gibt an welche Savegames von welcher früheren Version mit eurer jetzigen Version als letztes gültig sind.
friendlyfire <Typ>
Friendlyfire ist ein Befehl, der das Verhalten von Freundbeschuss steuert und kann die Werte 0 bis 3 annehmen.
- 0 : Kein Schutz, der Spieler kann sich auch selbst Schaden zufügen.
- 1 : Der Angreifer, ob NPC/Critter oder Spieler ist egal, kann sich selbst keinen Schaden zufügen.
- 2 : Alle NPC/Critter die in der selben Fraktion sind, können sich gegenseitig keinen Schaden zufügen.
- 3 : Alle gegenseitig freudlich gesinnten Critter/NPC können sich gegenseitig keinen Schaden zufügen, der „like“ Wert muss dabei größer als 50 sein.
exec <Skript>
Führ einfach nur den angegebenen Skript aus.
Hier im Preset wird das Standardinterface von der Lamiae Engine geladen, für eigenes Interface müsst ihr diese Datei anpassen oder gänzlich eine eigene Schreiben.
Für den Fall das ihr nach einer langen Sitzung im Scripting und modelling euer Spiel bzw Lamiae etwas durcheinander gebracht habt, könnt ihr mit der Befehl
r_rehash
Euer Spiel neu laden, ohne Lamiae beenden und neu starten zu müssen, stellt nur sicher das ihr eure Map und sonstige Dateien, die nivht zurück gesetzt werden sollen, gespeichert habt.