Es stehen eine Menge an grafischer Tools zur Verfügung, um zu Testen bzw. zu Debuggen. Grundsätzlich ist es bei meinem Editor der Fall, dass das Spiel im Editor 1:1 so aussieht, wie es im Player aussehen wird. Genauso lässt sich das Spiel direkt im Editor starten.
Zum Debugging selber musste man im Maker im Endeffekt mit "print" oder einem Textlog arbeiten. Hier habe ich dank der direkten Ausgabe im Editor verschiedene Möglichkeiten:
-
Visuelle Ausgaben: Es stehen mehrere Debug-Ausgaben bereits, welche sich auch erweitern lassen. Man kennt aus dem Maker bereits die Möglichkeit, nur den aktiven Map-Layer anzuzeigen, etc...hier gibt es eine Anzeige für: Passierbarkeit jeder Position auf der Map, welche Tiles an der Position der Maus sind, alle unsichtbaren Tiles (z.B. Tiles für andere Passierbarkeit), das im Tileset markierten Tile auf der Map, der Terrain-Tag auf jeder Position der Map, sowie der Eigenschaften der Entities (Kollisonsgröße, Spritegröße, Sensor-Umfang).
-
Pause/Frame-Step/Speed: Eine sehr praktische Möglichkeit des Debuggings ist es, das Spiel jederzeit anhalten zu können, diese Möglichkeit hatte ich bereits in der Rpg-Maker Variante eingebaut, hier gibt es das jetzt standardmäßig im Editor. Es lässt sich auch jeweils nur eine Frame weiterspringen, bzw. die Geschwindigkeit zwischen 0.125x und 8x anpassen, um bestimmte Abschnitte schneller überspringen zu können, oder auch selten auftretende Fehler schneller reproduzieren zu können.
-
State save/loading: Es lassen sich im Editor Playmode jederzeit Savegames erstellen, sowie bereits vorhandene laden. Damit kann man relativ schnell Änderungen testen, indem man bis zu einer gewissen Stelle spielt, ein Savegame erstellt, Änderungen im Editor-Mode macht, und das Save wieder lädt, solange bis man zufrieden ist.
-
C++/Plugin-Debugging:SämtlichenPlugin/C++-Code lässt sich logischerweise mit einer IDE debuggen (Visual Studio), was dafür sorgt dass ich mit Breakpoints, direkter Anzeige von Variablen-Werten etc... Probleme viel schneller finden und lösen kann, als das im Maker der Fall war.
-
Script-Debugging: Das Script-System lässt sich ebenso komplett debuggen. Breakpoints stehen zur Verfügung, und Variablenwerte bzw. lokale Werte von Commands lassen sich ebenso anzeigen. Damit ist auch das finden von Fehlern in Scripten deutlich einfacher (obwohl es ebenso noch "print" Befehle gibt, welche aber seltener zur Anwendung kommen).