World of Gothic Archiv > Editing
Gothic II ZEN file format
Seite 1 von 1  1 
21.06.2003, 20:14 #1
schlauerhamster
Beiträge: 140
Gothic II ZEN file format
Hallo,

Ich versuche gerade, Information aus den Weltdateien von Gothic II zu extrahieren. Dabei interessiere ich mich z.B. für die Koordinaten von Gegenständen oder von Way-/Freepoints. Meine Frage: Gibt es irgendwo eine Dokumentation für das ZEN file format? Oder hat vielleicht jemand sogar ein bisschen Code, das ein ZEN-file parsen kann? Oder gibt's ein Tool, mit dem man ein compiliertes ZEN wieder decompiliren kann?

Also ich hab durch "Draufgucken" bisher folgendes herausgefunden:
- Das File besteht offenbar aus einer baumartigen Struktur (vielleicht auch ein forest?). Die nodes sind mit Strings in eckigen Klammern gelabelt. Ein [] ist dabei sozusagen ein End-Tag. Diese Vermutung wird z.B. durch diesen Post bestätigt.
- Strings werden mit einem short integer gepräfixt, der die Länge des folgenden Strings angibt.
- Koordinaten werden als single floats abgespeichert, direkt hintereinander x, y, z.

Folgendes ist mir z.B. völlig unklar:
- Wenn ich mir den oben bereits genannten Post anschaue, dann scheint der Inhalt eines Knotens aus typisierten key-value-Paaren zu bestehen. Gut, das hatte ich auch so erwartet, und in speziellen Fällen (wie bei Strings) kann ich raten, wo der Value anfängt und aufhört. Aber wie ist der Key codiert? Oder der Typ?

Grüße,

Hamster

P.S.: Ach so, sorry, wenn es einen einschlägigen Post bereits gibt. Man kann im board leider nicht nach "ZEN" suchen (nur 3 Buchstaben). :(
21.06.2003, 21:02 #2
HornOx
Beiträge: 1.458

Es gibt weder Dokumentaion noch ein Tool um aus einer G2 Welt gezielt Informationen zu gewinnen. Bei G1 reicht es aus die Welt im Spacer zu laden und als uncompiled Ascii abzuspeichern. Sieht dann so aus.
Was außer dem Namen der Wegpunkte bzw Freepunkte, dem Visual, der Iteminstance und der Position willst du noch extrahieren? Wenn das schon alles ist was du wissen willst kannst du die unbekannten key-value-Paare doch eigentlich ignorieren :)
Ich kann mich irren aber irgendwann hab ich mal im Jowood Forum gelesen das jemand Karten von seltenen Kräutern in G2 aus den zen files erstellt hat, aber den Thread find ich nicht mehr :(
21.06.2003, 21:24 #3
NicoDE
Beiträge: 1.398

Bei den kompilierten Formaten weiß nur die Engine welche Daten (Typ/Größe) der Chunk enthät. Nur bei der unkompilierten ASCII-Version wird die Typinformation mitgeschrieben (damit man nach Änderungen im jeweiligen Chunk trotzdem mit den alten ZENs weiterarbeiten kann). Im Release liegen die Daten aber meist kompiliert vor, da die kompilierten Formate natürlich schneller gelesen werden können und eine Kompatibilität nicht notwendig ist (die Exe paßt immer zu den jeweiligen Daten und vis versa). Wie HornOx schon sagte, bräuchtest Du also den Spacer, um die Daten als unkompiliertes ASCII zu speichern.

.nico

ps: nimm einfach die Versionen von Gothic I als Vorlage, denn viel hat sich bei der Persistenz (Archiver) nicht geändert.
21.06.2003, 22:37 #4
schlauerhamster
Beiträge: 140

Ok, danke ihr beiden. :)

@ HornOx: Ja, das war Warvis. Dies ist der Thread, den du gesucht hast. Er hatte damals die Grundlage für meine Karten geliefert. Ich will es aber nun selber können, und außerdem brauche ich die Koordinaten der Freepoints. Hast schon recht, ich kann mich auch irgendwie so behelfen, aber es wäre doch schon ein etwas besseres Gefühl, wenn man die ganze Datei einfach sauber runterparsen könnte. Man weiß ja nie, was für Information man so für das nächste Projekt brauchen könnte... ;) :D

@ NicoDE: Ich hatte schon befürchtet, dass die Größen der Blöcke in der Engine und nicht in der Datei codiert sind. Tja, bei Morrowind war das irgendwie einfacher. :) Jut, ich werde mir das bei Gothic I genauer anschauen. (Kann ich inzwischen nämlich, weil ich seit letzte Woche auch Gothic I hab, jawohl! :))

Grüße,

Hamster

P.S. @ HornOx: Hui, hab gerade die "nasty url" aus deiner Sig angeschaut. Echt "nasty"! *LOL*
Seite 1 von 1  1