Benutzer-Werkzeuge

Webseiten-Werkzeuge


Gothic-Dateien

Die meisten Gothic-Daten sind in den VDF-Dateien im Verzeichnis /data/ gespeichert. Ausnahmen sind die Skriptdateien und (aus technischen Gründen) Videos und Musikdaten.

Das eigentliche Datenverzeichnis von Gothic ist /_work/data/ (ab jetzt nur noch [GDATA] genannt); nicht zu verwechseln mit /data/, in dem die VDF-Dateien abgelegt sind. VDF-Dateien enthalten die komplette Verzeichnisstruktur in „[GDATA]/“ … sie sind also virtuelle Abbilder dieser Verzeichnisse.

Das Programm GothicVDFS kann benutzt werden, um den Inhalt von VDF-Dateien anzuzeigen oder zu extrahieren. Um Daten zu verändern, die in VDF-Dateien enthalten sind, müssen diese vorher extrahiert werden.

Es ist also möglich eine VDF-Datei nach „[GDATA]/“ zu entpacken und dann zu löschen. Nun wird Gothic die Dateien zwar nicht mehr per VDF-System (VDFS) finden, sucht dann aber in den entsprechenden Verzeichnissen auf der Festplatte, was allerdings länger dauert. .

Fast jedes Datenformat von Gothic liegt in einer compilierten Form vor. Auf die einzelnen Formate gehen die folgenden Abschnitte etwas genauer ein. An dieser Stelle sei nur erwähnt, dass compilierte Daten jeweils in den entsprechenden COMPILE-Verzeichnissen liegen.

Hinweis: Im SYSTEM-Verzeichnis befindet sich auch eine Datei paths.d, in der die einzelnen besonders wichtigen Verzeichnisse aufgeführt sind. Die Datei darf allerdings nicht verändert werden, sonst ist nicht mehr damit zu rechnen, dass Gothic weiterhin funktioniert.

Texturen

Verzeichnisse für Texturen:

  • Allgemein: [GDATA]/textures
  • Compilierte Texturen (*.TEX): [GDATA]/textures/_compiled

Die Texturen von Gothic liegen im TEX-Format vor. Dieses Format kann von Gothic automatisch erzeugt werden. Dabei dient das TGA-Format als Ausgangsformat. TGAs sucht Gothic übrigens quer durch die Unterverzeichnisse. Identische Texturnamen sollten also vermieden werden, selbst wenn die Texturen in verschiedenen Verzeichnissen stecken.

Texturen konvertieren

Neue Texturen im TGA-Format werden von Gothic automatisch erkannt und konvertiert. Die konvertierten Texturen im TEX-Format landen im COMPILED-Verzeichnis. Wenn ihr vorhandenen Texturen ändert, müsst ihr zum konvertieren die GothicStarter.exe (Advanced-Options: convert textures) benutzen.

Sounds

Verzeichnisse für Sounds:

  • Allgemein: [GDATA]/sounds

Für Sounds gilt das gleiche wie für Texturen: Sie werden quer durch alle Unterverzeichnisse gesucht. Auch hier sollten identische Dateinamen vermieden werden. Die Sounds werden direkt als WAV-Datei verwendet. Eine Konvertierung findet nicht statt.

Welten/Level

Verzeichnisse für Level:

  • Allgemein: [GDATA]/worlds
  1. Level werden als ZEN-Dateien abgelegt. Hier eine knappe übersicht, wie man zu solchen ZEN-Dateien kommt:
  2. Ein Levelmesh (3DS-Format) im Spacer einladen
  3. Zum Texturieren im Editor-Modus compilieren (Indoor/Outdoor beachten!)
    1. Texturieren
  4. Zum Objektieren ohne Editor-Modus compilieren (Indoor/Outdoor beachten!)
    1. Standardzonen setzen (DefaultFogZone und DefaultMusicZone)
    2. Objekte einfügen: Bäume, Items (keine NPCs!)
    3. Beleuchten und Beschallen: Licht und Soundobjekte
    4. Rätsel bauen
  5. Licht compilieren
  6. Level als ZEN-Datei speichern

Skripte

Verzeichnis für Skripte:

  • Allgemein: [GDATA]/scripts
  • Compiliert (*.DAT): [GDATA]/scripts/_compiled
  • Content (*.D, *.SRC): [GDATA]/scripts/content
  • System (*.D, *.SRC): [GDATA]/scripts/system

Als Content bezeichnen wir alle Skripte, die etwas mit dem Spielinhalt zu tun haben: NPCs, Items, Quests, AI; System-Skripte beschreiben Menüs, Effekte u.a.

Es gibt im Rahmen unserer Scriptsprache drei verschiedene Arten von Dateien:

  • D-Skripte (Endung „.d“) sind die eigentlichen Scripte, die vom Gothic-Parser compiliert werden. Sie sind in einer Sprache geschrieben, die (entfernt) an C erinnert. Es gibt IF-Abfragen, logische Ausdrücke, Variablen und -type, sowie Funktionen. Zusätzlich wird ein sehr einfaches Klassen- und Instanzen-Konzept verwendet. Nähere Informationen zur Scriptsprache entnehmt bitte dem entsprechenden Dokument.
  • SRC-Listen (Endung „.src“) sind einfache Auflistungen von D- und SRC-Scripten und können vielleicht am ehesten mit INCLUDE-Blöcken verglichen werden: Die dort aufgelisteten Dateien (Wildcards sind erlaubt) werden vom Parser zu einem DAT-File gelinkt.
  • DAT-Files (Endung „.dat“) sind compilierte Versionen der SRC-Listen.

Skripte kompilieren und testen

Um geänderte Scripte in ein neues aktuelles DAT-File zu überführen, muss Gothic mit dem Parameter -zreparse gestartet werden. Auch dies kann die Gothic Starter übernehmen.

Dann werden alle Skripte im Scriptverzeichnis komplett neu geparset und zu aktualisierten DAT-Files gelinkt.

Wie findet Gothic meine Dateien?

Der Mechanismus ist eigentlich ganz einfach:
Gothic schaut nach, ob die gesuchte Datei in einem der VDF-Dateien zu finden ist
Ist sie in genau einer VDF-Datei zu finden, so wird diese verwendet
Ist sie in mehreren VDF-Dateien vorhanden, so wird sie aus der aktuellsten genommen (auf diese Weise sind Patches möglich)
Ist sie in keiner VDF-Datei zu finden, so wird im entsprechenden Verzeichnis auf der Festplatte gesucht
Schlägt auch das fehl, so gibt es eine Fehlermeldung

Das führt natürlich zu einem Problem:
Eine Datei, die schon in einem VDF-File zu finden ist, wird nie von der Festplatte gelesen, was natürlich das Testen von geänderten Dateien (z.B. Texturen) erschwert.

Aber mal Schritt für Schritt:
Neue Dateien, wie z.B. ein neuer Level oder darin referenzierte Texturen, Sounds etc. werden ja nicht in den VDF-Dateien gefunden, also auf der Festplatte gesucht. Wunderbar!
Von Euch Geänderte Dateien, die auch in den offiziellen VDFs vorhanden sind, werden dort gefunden und die einzelne Datei auf der Festplatte ignoriert. Möglichkeiten zur Lösung des Problems:
Immer ein eigenes VDF erstellen (das GothicMOD-VDF, siehe nächstes Kapitel) und damit Testen.
Die neue Option vdfs:physicalfirst nutzen. Im Gothic Starter ist hierfür eine Einstellung vorgesehen (physicalfirst). Damit kann man Gothic dazu zwingen, zuerst direkt auf der Festplatte nachzuschauen.
Mit entpackten VDFs arbeiten: Die Einzeldateien aus den VDFs also nach „[GDATA]/“ entpacken und das VDF löschen.

Das war eine kurze Beschreibung, aller Dinge, die man innerhalb eines MODs ändern, bzw. neu erstellen kann. Bevor ihr beginnt, ein eigenes MOD zu machen, lest bitte auch die ausführliche Doku zur Scriptsprache, zur ZenGin und die Tutorials.

Wie erstelle ich ein GothicMOD?

In diesem Abschnitt wird erklärt, wie geänderte Daten zu einem MOD zusammengestellt werden können, um sie an andere weiterzugeben. Zunächst sei gesagt, dass bei der Erstellung einer Installation der NSIS Installer sehr hilfreich ist und viel automatisiert.
Im folgenden gehe ich weniger auf die einzelnen Daten ein, sondern mehr darauf, wie man die Daten nun zu einem GothicMOD verpackt.

Ein GothicMOD besteht in der Regel aus zwei Dateien:

./system/modname.ini
./data/modvdf/modname.mod

GothicMOD-INI

Zu jedem GothicMOD gehört eine Datei modname.ini, in der diverse Dateinamen und Einstellungen festgelegt sind. Diese Datei wird im SYSTEM-Verzeichnis erwartet. Eine genaue Beschreibung aller Einträge in der INI findet ihr im Dokument ini-Dateien für Gothic Mods.

GothicMOD-VDF

Die eigentlichen Daten eines MODs (Sounds, Texturen, Level, Scriptdateien) werden in eine VDF-Datei gepackt. Diese Datei hat aber, anders als die bei Gothic mitgelieferten VDF-Dateien, nicht die Endung .VDF, sondern die Endung .MOD und ist in einem anderen Verzeichnis (/data/modvdf/) zu speichern. Jedes MOD sollte nur ein solches GothicMOD-VDF besitzen.
Zum Erstellen eines GothicMOD-VDFs benötigt ihr das Programm GothicVDFS
Mit diesem Programm müsst ihr nun alle geänderten, bzw. neuen Daten, die zu eurem MOD gehören, in eine VDF-Datei (.mod) einpacken. Dabei braucht ihr nur die compilierten Daten, d.h. bei den Scripten nur die DAT-Files, nicht die einzelnen Scripte (.d)!
Im Abschnitt „Ausnahmen“ findet Ihr Hinweise zur Verwendung eigener Musikstücke und Videos, die nicht in das GothicMOD-VDF gepackt werden dürfen.

Ausnahmen

Einige Dateien von Gothic befinden sich nicht in den VDF-Files. Dies sind zum einen die Scriptdateien (DAT-Files), die Ihr aber unbedingt in Euer GothicMOD-VDF packen solltet; zum anderen können aber aus technischen Gründen keine Videos und Musikdateien für DirectMusic (DirectX) in einem VDF-File verwaltet werden. Deshalb müßt ihr solche Dateien, solltet Ihr welche erstellt haben, als Einzeldateien in das MOD-Packet aufnehmen:

Beispielinhalt von modname.exe:

   ./system/modname.ini
   ./data/modvdf/modname.mod
   ./_work/data/music/modname/file1.sgt
   ./_work/data/music/modname/file2.dls
   ./_work/data/videos/modname/video1.bik
   ./_work/data/videos/modname/video2.bik

Noch einmal: Alle Dateien für ein MOD gehören in das GothicMOD-VDF mit dem Namen modname.mod. Ausnahmen sind nur Musikdateien und Videos.

GothicMOD-EXE erstellen

Spielen eines GothicMOD

Nachdem ein GothicMOD korrekt installiert wurde, kann es mit dem Programm Gothic Starter gestartet werden. Dieses Programm zeigt alle vorhandenen MODs in einer Liste und bietet noch einige weitere Funktionen.

allgemein/einleitung2.txt · Zuletzt geändert: 2016/02/10 01:53 von milgo