CR-Tutorial
Aus Clonk Wiki
| Dieser Artikel befindet sich noch im Aufbau. Bitte warte mit dem Bearbeiten bis dieser Textbaustein vom Autor entfernt wurde! |
--Clonkonaut 15:28, 27. Jul. 2008 (UTC)
Dieses Tutorial soll einen Einstieg in die Entwicklung von Clonk bieten. Vorausgesetzt werden keine Programmierkenntnisse, diese können jedoch hilfreich bei Verständnisproblemen sein.
Hinweis: Dieses Tutorial befasst sich mit der Entwicklung unter Clonk Rage. Es gibt ein älteres Tutorial, welches sich mit der Entwicklung unter Clonk Endeavour beschäftigt. Siehe dazu CE-Tutorial.
Inhaltsverzeichnis |
Der Anfang
Zuerst einmal sollte man sicher stellen, dass man die nötigen Hilfsmittel zum Entwickeln hat. Das wichtigste ist die Entwicklermodus-Dokumentation (kurz Doku). Diese findet man auf Clonk.de in der Entwicklersektion in einer Online-Version und zum Runterladen als ".chm"-Datei. Beide Dokus (online und offline) verfügen über eine Suchfunktion, von der man unbedingt Gebrauch machen sollte. Bis auf einige Ausnahmen sind alle Scriptfunktionen in der Doku beschrieben, außerdem gibt es noch weitere Informationen über Einstellungsmöglichkeiten. Die Startseite der Doku sollte unbedingt gelesen werden. Auf dieser befindet sich auch das Passwort, welches man zur Benutzung des Editors benötigt. Nun kann man bereits anfangen, wenn man möchte. Wie so oft gibt es allerdings einige Möglichkeiten, sich das Leben einfacher zu machen. Diese werden hier noch kurz beschrieben; wer sich damit erstmal nicht beschäftigen möchte kann auch gleich im nächsten Abschnitt weiterlesen.
C4Script
Scripte kann man zwar auch mit dem Editor von Windows (Notepad) bearbeiten, allerdings gibt es beim Programmieren immer einige Hilfen, die bei der Arbeit unterstützen. Das simpelste Hilfsmittel wird "syntax highlighting" genannt. Dies bedeutet, dass ein Scripteditor bestimmte Textteile verschieden einfärbt um den Überblick einfacher zu machen und Fehler zu vermeiden. Weiterhin ist es sehr nützlich, wenn der Editor alle Scriptfunktionen kennt und den Benutzer mit Informationen zu den Parametern (Erklärung folgt später) versorgt. Dann muss man nicht ständig in der Doku nachschlagen. Zur Bearbeitung von Scripten gibt es einen Editor, der sich besonders hervorgetan hat: der c4scripter von Clonk-Karl, welchen man auf dem Clonk Center runterladen kann.
Editor
Zuerst sollte man jetzt den Clonk Editor starten. Dies tut man, indem man im Vollbildmenü von Clonk (also einfach Clonk starten) F6 drückt oder direkt die Datei Editor.exe im Clonk-Verzeichnis öffnet. Wenn der Clonk Editor einmal gestartet ist und durch das Passwort erfolgreich freigeschaltet wurde, sollte man sich zuerst einmal diesen anschauen. Wer den Entwicklermodus des alten Clonk Frontends kennt, wird vieles wiedererkennen. Wer es nicht kennt, für den gibt es hier eine kurze Beschreibung: Aufgelistet werden alle Dateien, die im Clonk-Verzeichnis vorhanden sind. Einige davon uninteressant, die wichtigen sind in der Doku aufgelistet. Die einzelnen Dateien kann man auch aufklappen und mal hineinschauen, was so ein Szenario oder Objekt eigentlich ausmacht. Die Inhalte sind näher beschrieben im Artikel Spieldaten.
Neue Dateien
Neue Dateien werden durch Rechtsklick und "Neu" auswählen oder durch den Button oben rechts erstellt.
Entpacken / Packen
Wenn man im Editor einen Rechtsklick auf Clonk-Archive (.c4s, .c4d, .c4g, .c4f, .c4p, .c4i, .c4m) macht, kann man eine Funktion namens "Entpacken" auswählen. Dies bedeutet, das Datei ausgepackt wird. Wenn man das tut, kann man die Dateien auch mit einem normalen Dateibrowser (z.B. Windows Explorer) anschauen und nicht nur im Editor. Einige Entwickler arbeiten völlig ohne den Editor mit entpackten Dateien (Dateien werden dabei mit der C4Group ent- und gepackt). Aber auch, wenn man selbst den Editor benutzt, sollten die Dateien, die man bearbeitet, entpackt sein. Dies beschleunigt alle Vorgänge wie Aufklappen und Speichern wesentlich, außerdem treten weniger Probleme auf, die zu Datenverlust führen können. Wenn man seine Daten weitergeben möchte, braucht man die Dateien nur wieder zu Packen (Rechtsklick im Editor auf entpackte Dateien oder mit C4Group per Kommandozeile, wenn man dies beherrscht). Wichtig: Das Packen birgt immer noch Gefahren, bevor man seine Daten packt, sollte man eine Sicherheitskopie anlegen, falls es zum Datenverlust kommen sollte.
Optionen
Die Optionen im Editor haben einen kurzen Blick verdient. Unter dem Reiter "Extern" kann man Programme definieren, mit denen bestimmte Dateitypen geöffnet werden sollen. Normalerweise ist die Checkbox "Windows-Shell zum Bearbeiten benutzen" aktiviert. Dies bedeutet, dass die gleichen Programme benutzt werden, die auch in Windows für diese Dateitypen definiert sind. Dies führt manchmal zu Problemen, da Windows von Haus kein Programm für ".c"-Dateien definiert hat und Bilder häufig mit einem Vorschauprogramm öffnet. Wenn also der Editor beim Öffnen einer Datei melden einen "Fehler beim Bearbeiten" melden sollte, liegt dies meist daran, dass Windows den Dateityp nicht kennt. In diesem Falle muss man ein Standardprogramm zum Öffnen definieren; entweder in Windows selbst oder im Editor. Der nächste Reiter, "Entwickler", enthält einige nützliche Optionen, die man aktivieren sollte:
- Bearbeitete Objekte im Hintergrund aktualisieren: Hiermit aktualisiert der Editor bearbeitete Dateien automatisch und zeigt die aktuelle Version. Unbedingt aktivieren.
- Objektdefinitionsupdates bei laufender Engine: Dies ermöglicht es, Objekte zu bearbeiten, während die Engine läuft. Die Objekte werden dann automatisch von der Engine neu geladen.
- Debug-Modus: Die wichtigste aller Funktionen. Ist der Debug-Modus aktiviert, prüft die Engine alle geschriebenen Scripte auf Richtigkeit und meldet Fehler. Unbedingt aktivieren.
- Überladene Objekte melden: Ist diese Option aktiviert, gibt die Engine beim Start Meldung darüber, ob Objekte überladen wurden (was das bedeutet, dazu später)
Erste Schritte
Jetzt sollte man soweit sein, dass man sich an eigene Entwicklungen wagen kann. Doch die große Frage ist jetzt, wie das überhaupt geht. Am besten startet man, indem man ein neues Szenario erstellt (Rechtsklick im Editor an einer freien Stelle, "Neu" auswählen und danach "Szenario"). Diesem Szenario kann man jetzt einen Dateinamen geben (z.B. Test.c4s). Die Endung ".c4s" bedeutet, dass es sich um ein Szenario handelt. Wenn man das Szenario jetzt im Editor aufklappt, sieht man, welche Dateien so ein Szenario ausmachen. Scenario.txt ist die wichtigste Datei, die erst einmal alle Grundeinstellungen eines Szenarios bestimmt. In dieser Textdatei stehen die Einstellungen, welche man auch im Editor direkt in einem Menü einstellen kann, wenn man das Szenario auswählt und auf Eigenschaften drückt. Diese Datei wird also meistens automatisch von Editor generiert und nur in Spezialfällen ist es nötig, dass man sie selbst bearbeitet. DescDE.rtf ist eine Textdatei, in der die Beschreibung des Szenarios stehen sollte. ".rtf" ist auch ein Textdateiformat, welches jedoch einfache Formatierungen wie z.B. fett, kursiv oder farbig zulässt. Allerdings wird diese Formatierung im Vollbildmenü von Clonk Rage nicht mehr angezeigt. DescUS.rtf ist ebenso die Beschreibung, nur englisch. Genauso ist es noch möglich, weitere Sprachen einzubauen, dazu muss man eine ".rtf"-Datei erstellen und das entsprechende Sprachenkürzel einfügen (z.B. DescFR.rtf für eine französische Beschreibung). In der Title.txt steht der Name des Szenarios, ebenfalls mehrsprachig. Dieser Name wird im Vollbildmenü angezeigt und nicht etwa der Name der Szenariodatei mit angehängtem ".c4s". Da seit Clonk Rage auch zunehmend internationale Spieler mitspielen, wäre es sehr gut, wenn (soweit nach dem eigenen Kenntnissstand möglich) das Szenario (oder andere Entwicklungen) mindestens ins englische übersetzt wird. Eine weitere Textdatei findet man noch in einem neuen Szenario: Script.c Dies ist das Szenarioscript. Scripte sind in Clonk das A und O der Entwicklung. Das Script eines Steines bestimmt, dass dieser beim Auftreffen auf den Boden ein Geräusch erzeugt oder dass ein Flint explodiert. Die meisten Aubläufe, die der Spieler in Clonk zu sehen bekommt, werden vom Script geregelt (bis auf einige Ausnahmen, wie z.B. die Gravitationsbeschleunigung). Also bedeutet Entwickeln in Clonk, dass man Scripte schreibt (was man sich wie Programmieren vorstellen kann). Dazu muss man die sogenannte Scriptsprache C4Script erlernen, damit die Engine versteht, was man von ihr möchte. Damit anfangen, kann man z.B. beim GC-Szenario-Tutorial oder das C4Script-Tutorial.

