yoda
Übersetzung des IW-Wiki-Artikels
Compile Tools
CoD4 Compile Tools Dokumentation
Die CoD4 Compile Tools bieten eine einfache Benutzeroberfläche zum Compilieren, Beleuchten, Routen anlegen, Reflektionen erzeugen und Maps laden. Sie geben ebenfalls den einfachen Zugriff auf die MOD-Tool-Programme, wie z.B. den Level Editor, den Effekt Editor oder den Bestandsmanager.
Konfigurieren der CoD4 Compile Tools
Beim ersten Starten der Compile Tools muss der Spielpfad angegeben werden. Ein Klick auf "Preferences" und ein weiterer Klick auf "Browse…" bringt uns zum Fenster, wo wir den Pfad für das Spiel angeben können (Standard: C:\Programme\Activision\Call of Duty 4 – Modern Warfare\).

Nachdem wir den Compile-Tools mitgeteilt haben, wo sich das Spiel befindet, sollte es nun möglich sein, auf "Level Compiling" zu klicken. Dort sollten einige Beispielmaps aufgelistet sein.

***
Benutzen der CoD4 Compile Tools
Im Bereich "Level Compiling" werden alle derzeitig verfügbaren .map-Dateien aufgelistet und können von dort aus zu .bsp-Dateien compiliert werden, welche weiterhin Lichtinformationen, Routen und Reflektionsinformationen für die Map-Dateien enthalten.
Des weiteren sind die Buttons 1-5 links unten aufgeführt. Diese Buttons zeigen an, welche Schritte notwendig sind, um die erstellte Map für das Spiel lauffähig zu machen.
Hier die Schritte im Einzelnen:
1. Compile BSP (BSP Kompilieren)
Aus der Liste eine Karte auswählen, die für das Spiel kompiliert werden soll. In diesem Beispiel benutzen wir die Map "test", welche mit den MOD-Tools mitgeliefert wird. Als erstes muss eine BSP-Datei kompiliert werden. Das bedeutet nichts anderes, als dass die MAP-Datei, welche eine editorfreundliche Version der erstellten Karte enthält, nun in eine BSP-Datei umgerechnet wird, die das Spiel verstehen kann. Hierbei müssen wir nun einige Optionen auf der rechten Seite einstellen. Sobald etwas in der MAP-Datei geändert wurde, muss IMMER eine neue BSP-Datei kompiliert werden. Die Licht- (lighting) und Pfadberechnung (path) kann auch später durchgeführt werden, solange sich die BSP-Datei nicht verändert hat. Die Pfadberechnung dient der KI zur Wegfindung und so wird ein angetestetes Singleplayer-Level natürlich nicht richtig funktionieren.
Wir sollten sicherstellen, das die BSP Optionen und Lichtoptionen eingestellt sind, bevor wir auf "1. Compile BSP" klicken.
BSP Options:
Wenn nur Entities kompiliert werden sollen, muss die Box vor "onlyents" angehakt sein. Diese Funktion kann nützlich sein, wenn in eine bereits bestehende Map nur ein paar Entities hinzugefügt wurden und diese schnell kompiliert werden soll. Achtung! Beim Rekompilieren dieser Art werden Schatten nicht neu berechnet. Das bedeutet, dass ein Schatten eines Entities, welches lediglich bewegt wurde, immer noch an derselben Stelle ist.
Die Option "blocksize" kann dazu verwendet werden, um eine eigene Gittergröße für die Berechnung anzugeben. Der Wert 0 entspricht hierbei der maximal möglichen Größe und ist als Standart eingestellt, wenn die Box nicht angehakt ist. Die meiste Zeit bleibt diese Box unangehakt.
Wenn die Lightmaps neu skaliert werden sollen, kann in der "samplescale"-Box ein neuer Wert angegeben werden. Ein Wert von 2 verdoppelt die Pixelgröße, der Wert 0.5 halbiert die Pixelgröße. Auch diese Option sollte in der Regel nicht angehakt sein.
Die "debuglightmaps"-Option ist eine gute Möglichkeit, um zu sehen, wie die Ingame-Lightmaps kompiliert und verwendet werden. Nach dem Kompilieren kann man im Level überall da, wo Lighmaps verwendet werden, farbige Geomerie sehen. Hierbei zeigen verschiedene Farben verschiedene Lightmap-Texturen an. Hiermit können Beleuchtungsfehler besser erkannt und behoben werden.
Light Options:
Die meisten dieser Optionen bleiben in der Regel abgeschaltet, aber hier werden dennoch die einzelnen Funktionen erklärt, für den seltenen Fall, dass eine dieser Optionen benöigt wird.
Es empfiehlt sich die "fast"-Option für schnelles Kompilieren der Level einzuschalten. Lediglich für die Final-Version kann dann auf "extra" geschaltet werden, um den Ganzen ein besseres Lighmap-Detail zu verpassen.
- Fast: Benutzt schnelle Voreinstellungen für viele Optionen (generiert niedrigere qualität, ist aber wesentlich schneller)
- Extra: Benutzt Voreinstellungen mit sehr hoher Qualität für die Lichtberechnung (sieht gut aus, dauert aber lange)
- ModelShadow: Erlaubt Modeloberflächen Schatten zu werfen
- NoModelShadow: Erlaubt Modeloberflächen NICHT Schatten zu werfen
- DumpOptions: Zeigt die derzeitigen Einstellungen der meisten Parameter an
- Traces: Anzahl an Linien, die von jedem Samplepunkt aus zu machen sind
- BounceFraction: Höhere Werte sehen verwaschener aus, niedrigere Werte sind dunkler
- Jitter: Bricht das aliasing auf (0 kein, 1 max)
Nachdem nun alle Einstellungen so sind, wie wir sie benötigen, klicken wir auf "1. Compile BSP" und starten damit das Kompilieren unserer MAP zu einer BSP-Datei. Anschließend (je nach gewählter Option) wird dann die Lichtberechnung und dann die Pfadberechnung durchgeführt (falls die Karte eine Singleplayer-Map sein soll).
Dieser Prozess kann von einigen Sekunden bis hin zu mehreren Stunden dauern, je nachdem wie groß das zu berechnende Level ist, wie viele Lichter darin gesetzt sind, etc.
Nur als Anhaltspunkt: die Karten, die dem Spiel beiliegen, benötigen zur Berechnung auf einem Quad-Core CPU ca. 30 Minuten bis zu einer Stunde.
Für das Beleuchten der Karte ist die Grid-Datei verantworlich. Entities (Models, Spieler, KI) innerhalb der Karte werden beleuchtet. In komplexen Karten ist es sehr schwer, die Lichteffekte, die den Spieler und die Gegend ausleuchten, zu berechnen. Das benötigt eine Menge Arbeit und wird deshalb für die BSP im voraus berechnet. Die Informationen werden in die Datei Mapname.grid berechnet und anschließend in die Datei Mapname.bsp geschrieben. Falls die Karte nicht über eine Grid-Datei verfügt, muss eine solche Datei angelegt werden. Durch das Auswählen von "make new grid" kann eine Solche Datei angelegt werden. Die Karte wird nun im Grid-Mode gestartet. Nun gilt es so viele von den Punkten einzusammeln, wie irgend möglich. Dies zeigt dem Editor nun an, welche Punkte innerhalb der Map für den Spieler sichtbar und erreichbar sind. Bei veränderungen an der Karte kann auch die Option "edit existing grid" gewählt werden. Für die meisten Gegenden kann im Editor auch ein Brush mit dem Lightgrid-Material darauf platziert werden. Der Editor holt sich dann selbstständig vom Brush die benötigten Punkte.
2. Compile Reflections (Reflektionen Kompilieren)
Wenn die Charaktere, Waffen und Fahrzeuge rote Rahmen haben, wurden noch keine Reflektionen für die Map kompiliert. "Reflection Probes" sind für das Aussehen von spiegelnden Oberflächen sehr wichtig. Eine Pro Raum oder Aussenbereich platziert und vielleicht noch eine vor besonders glänzenden Objekten sollte reichen. Sie benötigen zwar Speicher, aber zwischen 10 und 100 von ihnen sollte man schon platziert haben.
Nachdem die BSP berechnet wurde, müsen wir nun warten, bis die Reflektionen berechnet wurden. Dieses setzt natürlich voraus, dass wir genügend "Reflection Probe"-Entities im Level verteilt haben. Während der Berechnung wird nun für die jeweilige Umgebung eine Cubemap erzeugt. Es wird immer die Cubemap der nahesten Reflection Probe zum Kompilieren des jeweiligen Levelabschnitts benutzt. Es werden bei der Berechnung Portale benutzt, um die passende Cubemap zu ermitteln. Es sollte also normalerweise keine Probleme mit Verwechselungen von Aussen- und Innenbereichen geben, da ein Model nicht durch die Wand von einer Cubemap beeinflusst werden kann.
Mit Klick auf "2. Compile Reflections" beginnt jetzt das Kompilieren der Lichtreflexionen für unser Level. Dieser Schritt kann auch übersprungen und später ausgeführt werden, falls wärend der Testphase eines Levels noch keine Lichtberechnungen benötigt werden. Dieser Test kann ebenfalls übersprungen werden, falls sich an den Reflection Probes im Level nichts verändert hat und diese schon mal berechnet wurden. In diesem Fall werden die alten Berechnungen übernommen.
3. Build Fast File (Schnelldatei erstellen)
Damit unsere Karte vom Spiel in einer annehmbaren Zeitspanne geladen werden kann, ist es notwendig eine Datei zu erstellen, die alle benötigten Daten unseres Levels enthält. Dadurch, dass alle Daten in eine einzige Datei geschrieben werden, kann diese Datei besser im Speicher hinterlegt werden und der Zugriff auf einzelne Dateiteile erfolgt zügiger.
Beim ersten Erstellen einer solchen "Fast File" wird der Editor melden, daß keine "Zone Files" (Zonen-Dateien) existieren. Bei der Frage, ob wir welche erstellen wollen, antworten wir mit "Yes". Es wird nun eine Datei im Verzeichnis [root]\ zone_source\[levelname].csv erstellt, wobei [root] für den Stammordner des Spiels steht.
Innerhalb der .csv-Datei werden nun die verschiedenen Dateien, die das Level benötigt aufgelistet. Einige Dateien werden standardmäßig hinzugefügt, die alle Level benötigen. Diese .csv-Datei wird anschließend vom Fast File Builder zum Zusammenfassen des Levels benutzt, so dass später alle benötigten Dateien und unsere BSP-Datei zusammen geschrieben werden.
Die Datei wird im Ordner [root]\zone\[language]\[levelname].ff erstellt. Wenn nun ein Level z.B. mit Freunden ausgetauscht wird, genügt es die Datei Mapname.ff zu verschicken, da diese alle benötigten Informationen über unser Level enthält. Bei jeder Änderung des Levelinhaltes muss dementsprechend ein neuer "Fast File" kompiliert werden.
4. Update Zone File (Zonen-Datei aktualisieren)
Nachdem wir wissen, was "Fast Files" sind und wie man sie erstellt, fällt auf, daß vorhin "Zone Files" erwähnt wurden. Nun, wie wir bereits Wissen enthalten die Fast Files den gesamten Bestand an benötigten Dateien für unser Level. Angenommen, wir fügen ein neues statisches Model in unser Level ein oder geben dem Spieler über ein Script eine Waffe. Dieser neue Bestand taucht auf einmal nicht mehr in dem bestehenden Fast File auf. Dadurch kann das Spiel Fehler melden oder sogar zum Absturz gebracht werden. Über die Funktion "Update Zone File" (die [levelname].csv-Datei ) kann sichergestellt werden, dass die Bestandsliste im Fast File mit aktuellen Werten versorgt wird.
Für den Fall, dass im Fast File eine Datei aufgeführt ist, die beim Levelstart nicht gefunden wird, wird diese in der Datei missingassets.csv ausgegeben (Ordner: [root]\main\missingassets.csv). In dieser Datei findet sich dann eine Liste aller nicht gefundener Bestände, die das Spiel für unser Level laden sollte. Wird keine missingassets.csv erstellt, ist das Level entweder in Ordnung und es wurden alle Dateien gefunden, oder das Level muss mit eingeschalteter "developer" und "developer_script" Option gestartet werden. (Die Optionen sind unter Punkt 5 erklärt)
Der fehlende Bestand aus der missingassets.csv muss nun natürlich in unsere mapname.csv eingefügt werden, damit unser Level so funktioniert, wie es soll. Dies kann entweder über simples Kopieren/Einfügen geschehen oder man benutzt eine einfache Funktion aus den CoD4 Compile Tools.
Wenn auf "4. Update Zone File" geklickt wird, öffnet sich ein Fenster, welches den Inhalt der missingassets.csv und der mapname.csv anzeigt. Dieses Fenster erlaubt das einfache Hinüberziehen der benötigten Bestände und anschließende Speichern der neuen Datei.

Der Text auf der linken Seite stammt aus der Datei missingassets.csv und zeigt alle Bestände an, die nicht korrekt geladen wurden. Auf der rechten Seite ist nun die Quelldatei unserer Karte. Nun kann auf der linken Seite der fehlende Bestand markiert werden und dann über das Kontextmenü (rechte Maustaste) ausgeschnitten und auf der rechten Seite wieder eingefügt werden. Es muss aber sichergestellt werden, dass pro Zeile nur ein Bestand aufgeführt wird.

Nachdem die Zone-Datei auf den neuesten Stand gebracht wurde, erstellen wir eine neue Fast File und starten anschliessend unsere Map erneut. Die missingassets.csv teilt uns natürlich sofort mit, dass weitere Bestände fehlen. Leider ist dies normal, also muss der Schritt mehrfach wiederholt werden, bis die Map einwandfrei funktioniert. Das ist leider normal, weil einige Bestände weitere Bestände aufrufen.
Ein praktisches Beispiel: Durch ein Script bedingt geben wir unserem Spieler eine Waffe. Die missingassets.csv findet die Waffe nicht, weil diese durch ein Script ins Spiel gebracht wird. Nachdem wir also die Waffe in den Bestand aufgenommen haben, findet die missingassets.csv eine weitere Waffe nicht, weil diese durch die erste bedingt wird (z. B. zweiter Feuermodus). Deshalb wird nicht jeder fehlende Bestand direkt im 1. Durchgang gefunden.
Also - bei allen fehlenden Beständen gilt: so oft durchprüfen, bis sich die Datei missingassets.csv nicht mehr ändert oder leer bleibt und natürlich alle benötigten Bestände im Fast File aufgeführt sind.
5. Run Selected Map (Ausgewählte Karte starten)
Startet das Spiel mit der ausgewählten Map. Als Optionen stehen zusätzlich das Einschalten der Optionen "developer" (Entwickler), "developer_script" (Entwickler script) und "Cheats" (Schummeleien) zur Verfügung.
Das Einschalten von "developer" hat zur Folge, dass viele Profilierungsfunktionen sowie die Fehlerausgabe und eine weitere Form der missingassets.csv-Ausgabe aktiviert werden.
Das Einschalten von "developer_script" ermöglicht das Script Debugging von Script-Fehlern, falls welche auftreten. Wenn diese Funktion eingeschaltet ist, werden Script-Fehler übersprungen.
Die Funktion "Cheats" ermöglicht den Einsatz der Ingame-Cheats, wie z.B. den God-Mode (unbesiegbar) oder den Ufo-mode, welche das Arbeiten an der Map erleichtern.
Launching Applications (Starten der Anwendungen)
Auf der Registerkarte "Applications" können die verschiedenen MOD-Tools einfach gestartet werden. Hier können der "Level Editor", der "Effekt Editor" oder der "Bestandsmanager" gestartet werden.

***
Direkt verlinken:
https://www.opferlamm-clan.de/wbb2/thread.php?threadid=10529
***
Compile Tools
CoD4 Compile Tools Dokumentation
Die CoD4 Compile Tools bieten eine einfache Benutzeroberfläche zum Compilieren, Beleuchten, Routen anlegen, Reflektionen erzeugen und Maps laden. Sie geben ebenfalls den einfachen Zugriff auf die MOD-Tool-Programme, wie z.B. den Level Editor, den Effekt Editor oder den Bestandsmanager.
Konfigurieren der CoD4 Compile Tools
Beim ersten Starten der Compile Tools muss der Spielpfad angegeben werden. Ein Klick auf "Preferences" und ein weiterer Klick auf "Browse…" bringt uns zum Fenster, wo wir den Pfad für das Spiel angeben können (Standard: C:\Programme\Activision\Call of Duty 4 – Modern Warfare\).

Nachdem wir den Compile-Tools mitgeteilt haben, wo sich das Spiel befindet, sollte es nun möglich sein, auf "Level Compiling" zu klicken. Dort sollten einige Beispielmaps aufgelistet sein.

***
Benutzen der CoD4 Compile Tools
Im Bereich "Level Compiling" werden alle derzeitig verfügbaren .map-Dateien aufgelistet und können von dort aus zu .bsp-Dateien compiliert werden, welche weiterhin Lichtinformationen, Routen und Reflektionsinformationen für die Map-Dateien enthalten.
Des weiteren sind die Buttons 1-5 links unten aufgeführt. Diese Buttons zeigen an, welche Schritte notwendig sind, um die erstellte Map für das Spiel lauffähig zu machen.
Hier die Schritte im Einzelnen:
1. Compile BSP (BSP Kompilieren)
Aus der Liste eine Karte auswählen, die für das Spiel kompiliert werden soll. In diesem Beispiel benutzen wir die Map "test", welche mit den MOD-Tools mitgeliefert wird. Als erstes muss eine BSP-Datei kompiliert werden. Das bedeutet nichts anderes, als dass die MAP-Datei, welche eine editorfreundliche Version der erstellten Karte enthält, nun in eine BSP-Datei umgerechnet wird, die das Spiel verstehen kann. Hierbei müssen wir nun einige Optionen auf der rechten Seite einstellen. Sobald etwas in der MAP-Datei geändert wurde, muss IMMER eine neue BSP-Datei kompiliert werden. Die Licht- (lighting) und Pfadberechnung (path) kann auch später durchgeführt werden, solange sich die BSP-Datei nicht verändert hat. Die Pfadberechnung dient der KI zur Wegfindung und so wird ein angetestetes Singleplayer-Level natürlich nicht richtig funktionieren.
Wir sollten sicherstellen, das die BSP Optionen und Lichtoptionen eingestellt sind, bevor wir auf "1. Compile BSP" klicken.
BSP Options:
Wenn nur Entities kompiliert werden sollen, muss die Box vor "onlyents" angehakt sein. Diese Funktion kann nützlich sein, wenn in eine bereits bestehende Map nur ein paar Entities hinzugefügt wurden und diese schnell kompiliert werden soll. Achtung! Beim Rekompilieren dieser Art werden Schatten nicht neu berechnet. Das bedeutet, dass ein Schatten eines Entities, welches lediglich bewegt wurde, immer noch an derselben Stelle ist.
Die Option "blocksize" kann dazu verwendet werden, um eine eigene Gittergröße für die Berechnung anzugeben. Der Wert 0 entspricht hierbei der maximal möglichen Größe und ist als Standart eingestellt, wenn die Box nicht angehakt ist. Die meiste Zeit bleibt diese Box unangehakt.
Wenn die Lightmaps neu skaliert werden sollen, kann in der "samplescale"-Box ein neuer Wert angegeben werden. Ein Wert von 2 verdoppelt die Pixelgröße, der Wert 0.5 halbiert die Pixelgröße. Auch diese Option sollte in der Regel nicht angehakt sein.
Die "debuglightmaps"-Option ist eine gute Möglichkeit, um zu sehen, wie die Ingame-Lightmaps kompiliert und verwendet werden. Nach dem Kompilieren kann man im Level überall da, wo Lighmaps verwendet werden, farbige Geomerie sehen. Hierbei zeigen verschiedene Farben verschiedene Lightmap-Texturen an. Hiermit können Beleuchtungsfehler besser erkannt und behoben werden.
Light Options:
Die meisten dieser Optionen bleiben in der Regel abgeschaltet, aber hier werden dennoch die einzelnen Funktionen erklärt, für den seltenen Fall, dass eine dieser Optionen benöigt wird.
Es empfiehlt sich die "fast"-Option für schnelles Kompilieren der Level einzuschalten. Lediglich für die Final-Version kann dann auf "extra" geschaltet werden, um den Ganzen ein besseres Lighmap-Detail zu verpassen.
- Fast: Benutzt schnelle Voreinstellungen für viele Optionen (generiert niedrigere qualität, ist aber wesentlich schneller)
- Extra: Benutzt Voreinstellungen mit sehr hoher Qualität für die Lichtberechnung (sieht gut aus, dauert aber lange)
- ModelShadow: Erlaubt Modeloberflächen Schatten zu werfen
- NoModelShadow: Erlaubt Modeloberflächen NICHT Schatten zu werfen
- DumpOptions: Zeigt die derzeitigen Einstellungen der meisten Parameter an
- Traces: Anzahl an Linien, die von jedem Samplepunkt aus zu machen sind
- BounceFraction: Höhere Werte sehen verwaschener aus, niedrigere Werte sind dunkler
- Jitter: Bricht das aliasing auf (0 kein, 1 max)
Nachdem nun alle Einstellungen so sind, wie wir sie benötigen, klicken wir auf "1. Compile BSP" und starten damit das Kompilieren unserer MAP zu einer BSP-Datei. Anschließend (je nach gewählter Option) wird dann die Lichtberechnung und dann die Pfadberechnung durchgeführt (falls die Karte eine Singleplayer-Map sein soll).
Dieser Prozess kann von einigen Sekunden bis hin zu mehreren Stunden dauern, je nachdem wie groß das zu berechnende Level ist, wie viele Lichter darin gesetzt sind, etc.
Nur als Anhaltspunkt: die Karten, die dem Spiel beiliegen, benötigen zur Berechnung auf einem Quad-Core CPU ca. 30 Minuten bis zu einer Stunde.
Für das Beleuchten der Karte ist die Grid-Datei verantworlich. Entities (Models, Spieler, KI) innerhalb der Karte werden beleuchtet. In komplexen Karten ist es sehr schwer, die Lichteffekte, die den Spieler und die Gegend ausleuchten, zu berechnen. Das benötigt eine Menge Arbeit und wird deshalb für die BSP im voraus berechnet. Die Informationen werden in die Datei Mapname.grid berechnet und anschließend in die Datei Mapname.bsp geschrieben. Falls die Karte nicht über eine Grid-Datei verfügt, muss eine solche Datei angelegt werden. Durch das Auswählen von "make new grid" kann eine Solche Datei angelegt werden. Die Karte wird nun im Grid-Mode gestartet. Nun gilt es so viele von den Punkten einzusammeln, wie irgend möglich. Dies zeigt dem Editor nun an, welche Punkte innerhalb der Map für den Spieler sichtbar und erreichbar sind. Bei veränderungen an der Karte kann auch die Option "edit existing grid" gewählt werden. Für die meisten Gegenden kann im Editor auch ein Brush mit dem Lightgrid-Material darauf platziert werden. Der Editor holt sich dann selbstständig vom Brush die benötigten Punkte.
2. Compile Reflections (Reflektionen Kompilieren)
Wenn die Charaktere, Waffen und Fahrzeuge rote Rahmen haben, wurden noch keine Reflektionen für die Map kompiliert. "Reflection Probes" sind für das Aussehen von spiegelnden Oberflächen sehr wichtig. Eine Pro Raum oder Aussenbereich platziert und vielleicht noch eine vor besonders glänzenden Objekten sollte reichen. Sie benötigen zwar Speicher, aber zwischen 10 und 100 von ihnen sollte man schon platziert haben.
Nachdem die BSP berechnet wurde, müsen wir nun warten, bis die Reflektionen berechnet wurden. Dieses setzt natürlich voraus, dass wir genügend "Reflection Probe"-Entities im Level verteilt haben. Während der Berechnung wird nun für die jeweilige Umgebung eine Cubemap erzeugt. Es wird immer die Cubemap der nahesten Reflection Probe zum Kompilieren des jeweiligen Levelabschnitts benutzt. Es werden bei der Berechnung Portale benutzt, um die passende Cubemap zu ermitteln. Es sollte also normalerweise keine Probleme mit Verwechselungen von Aussen- und Innenbereichen geben, da ein Model nicht durch die Wand von einer Cubemap beeinflusst werden kann.
Mit Klick auf "2. Compile Reflections" beginnt jetzt das Kompilieren der Lichtreflexionen für unser Level. Dieser Schritt kann auch übersprungen und später ausgeführt werden, falls wärend der Testphase eines Levels noch keine Lichtberechnungen benötigt werden. Dieser Test kann ebenfalls übersprungen werden, falls sich an den Reflection Probes im Level nichts verändert hat und diese schon mal berechnet wurden. In diesem Fall werden die alten Berechnungen übernommen.
3. Build Fast File (Schnelldatei erstellen)
Damit unsere Karte vom Spiel in einer annehmbaren Zeitspanne geladen werden kann, ist es notwendig eine Datei zu erstellen, die alle benötigten Daten unseres Levels enthält. Dadurch, dass alle Daten in eine einzige Datei geschrieben werden, kann diese Datei besser im Speicher hinterlegt werden und der Zugriff auf einzelne Dateiteile erfolgt zügiger.
Beim ersten Erstellen einer solchen "Fast File" wird der Editor melden, daß keine "Zone Files" (Zonen-Dateien) existieren. Bei der Frage, ob wir welche erstellen wollen, antworten wir mit "Yes". Es wird nun eine Datei im Verzeichnis [root]\ zone_source\[levelname].csv erstellt, wobei [root] für den Stammordner des Spiels steht.
Innerhalb der .csv-Datei werden nun die verschiedenen Dateien, die das Level benötigt aufgelistet. Einige Dateien werden standardmäßig hinzugefügt, die alle Level benötigen. Diese .csv-Datei wird anschließend vom Fast File Builder zum Zusammenfassen des Levels benutzt, so dass später alle benötigten Dateien und unsere BSP-Datei zusammen geschrieben werden.
Die Datei wird im Ordner [root]\zone\[language]\[levelname].ff erstellt. Wenn nun ein Level z.B. mit Freunden ausgetauscht wird, genügt es die Datei Mapname.ff zu verschicken, da diese alle benötigten Informationen über unser Level enthält. Bei jeder Änderung des Levelinhaltes muss dementsprechend ein neuer "Fast File" kompiliert werden.
4. Update Zone File (Zonen-Datei aktualisieren)
Nachdem wir wissen, was "Fast Files" sind und wie man sie erstellt, fällt auf, daß vorhin "Zone Files" erwähnt wurden. Nun, wie wir bereits Wissen enthalten die Fast Files den gesamten Bestand an benötigten Dateien für unser Level. Angenommen, wir fügen ein neues statisches Model in unser Level ein oder geben dem Spieler über ein Script eine Waffe. Dieser neue Bestand taucht auf einmal nicht mehr in dem bestehenden Fast File auf. Dadurch kann das Spiel Fehler melden oder sogar zum Absturz gebracht werden. Über die Funktion "Update Zone File" (die [levelname].csv-Datei ) kann sichergestellt werden, dass die Bestandsliste im Fast File mit aktuellen Werten versorgt wird.
Für den Fall, dass im Fast File eine Datei aufgeführt ist, die beim Levelstart nicht gefunden wird, wird diese in der Datei missingassets.csv ausgegeben (Ordner: [root]\main\missingassets.csv). In dieser Datei findet sich dann eine Liste aller nicht gefundener Bestände, die das Spiel für unser Level laden sollte. Wird keine missingassets.csv erstellt, ist das Level entweder in Ordnung und es wurden alle Dateien gefunden, oder das Level muss mit eingeschalteter "developer" und "developer_script" Option gestartet werden. (Die Optionen sind unter Punkt 5 erklärt)
Der fehlende Bestand aus der missingassets.csv muss nun natürlich in unsere mapname.csv eingefügt werden, damit unser Level so funktioniert, wie es soll. Dies kann entweder über simples Kopieren/Einfügen geschehen oder man benutzt eine einfache Funktion aus den CoD4 Compile Tools.
Wenn auf "4. Update Zone File" geklickt wird, öffnet sich ein Fenster, welches den Inhalt der missingassets.csv und der mapname.csv anzeigt. Dieses Fenster erlaubt das einfache Hinüberziehen der benötigten Bestände und anschließende Speichern der neuen Datei.

Der Text auf der linken Seite stammt aus der Datei missingassets.csv und zeigt alle Bestände an, die nicht korrekt geladen wurden. Auf der rechten Seite ist nun die Quelldatei unserer Karte. Nun kann auf der linken Seite der fehlende Bestand markiert werden und dann über das Kontextmenü (rechte Maustaste) ausgeschnitten und auf der rechten Seite wieder eingefügt werden. Es muss aber sichergestellt werden, dass pro Zeile nur ein Bestand aufgeführt wird.

Nachdem die Zone-Datei auf den neuesten Stand gebracht wurde, erstellen wir eine neue Fast File und starten anschliessend unsere Map erneut. Die missingassets.csv teilt uns natürlich sofort mit, dass weitere Bestände fehlen. Leider ist dies normal, also muss der Schritt mehrfach wiederholt werden, bis die Map einwandfrei funktioniert. Das ist leider normal, weil einige Bestände weitere Bestände aufrufen.
Ein praktisches Beispiel: Durch ein Script bedingt geben wir unserem Spieler eine Waffe. Die missingassets.csv findet die Waffe nicht, weil diese durch ein Script ins Spiel gebracht wird. Nachdem wir also die Waffe in den Bestand aufgenommen haben, findet die missingassets.csv eine weitere Waffe nicht, weil diese durch die erste bedingt wird (z. B. zweiter Feuermodus). Deshalb wird nicht jeder fehlende Bestand direkt im 1. Durchgang gefunden.
Also - bei allen fehlenden Beständen gilt: so oft durchprüfen, bis sich die Datei missingassets.csv nicht mehr ändert oder leer bleibt und natürlich alle benötigten Bestände im Fast File aufgeführt sind.
5. Run Selected Map (Ausgewählte Karte starten)
Startet das Spiel mit der ausgewählten Map. Als Optionen stehen zusätzlich das Einschalten der Optionen "developer" (Entwickler), "developer_script" (Entwickler script) und "Cheats" (Schummeleien) zur Verfügung.
Das Einschalten von "developer" hat zur Folge, dass viele Profilierungsfunktionen sowie die Fehlerausgabe und eine weitere Form der missingassets.csv-Ausgabe aktiviert werden.
Das Einschalten von "developer_script" ermöglicht das Script Debugging von Script-Fehlern, falls welche auftreten. Wenn diese Funktion eingeschaltet ist, werden Script-Fehler übersprungen.
Die Funktion "Cheats" ermöglicht den Einsatz der Ingame-Cheats, wie z.B. den God-Mode (unbesiegbar) oder den Ufo-mode, welche das Arbeiten an der Map erleichtern.
Launching Applications (Starten der Anwendungen)
Auf der Registerkarte "Applications" können die verschiedenen MOD-Tools einfach gestartet werden. Hier können der "Level Editor", der "Effekt Editor" oder der "Bestandsmanager" gestartet werden.

***
Direkt verlinken:
https://www.opferlamm-clan.de/wbb2/thread.php?threadid=10529
***