[Tutorial] Mod Cleaning mit TES4Edit
Benötigt:
Empfohlen:
I. Einführung
Warum sollte ich meine Mods cleanen?
Manche Mods besitzen sogenannte Dirty Edits, die diverse Probleme verursachen können, von kleineren Inkompatibilitäten bis hin zum Abstürzen des Spiels. Je mehr Mods man verwendet, desto höher ist die Wahrscheinlichkeit, dass es zu Problemen kommt, die durch Dirty Edits verursacht werden.
Was bedeutet Cleaning?
Cleaning, engl. "säubern" oder "reinigen", beschreibt den Prozess bei dem alle Einträge einer Mod analysiert und mit ihren Masterdateien verglichen werden um Dirty Edits zu finden und diese zu entfernen.
Was sind Dirty Edits?
Es gibt zwei verschiedene Arten von Dirty Edits:
Identical To Master:
Diese Edits können entweder durch Bugs im CS entstehen oder wenn der Modder etwas am Vanilla Oblivion ändert und dies später wieder rückgängig macht ohne jedoch den entsprechenden Eintrag zu entfernen. Diese unnötigen Einträge werden im Plugin gespeichert obwohl sie sich nicht im geringsten vom Vanilla Oblivion unterscheiden.
Nehmen wir mal an, eine Questmod verändert den Schadenswert einer Vanillawaffe. Der Modder entscheidet sich aber um und setzt den Wert wieder auf Vanilla zurück. Wird diese Questmod nun nach einer anderen Mod geladen, die dieselbe Waffe verändert, so werden diese Änderungen durch die Questmod wieder rückgängig gemacht.
Deleted Reference:
Das sind gelöschte Vanilla Referenzen. Beispiel: Eine Mod löscht einen Vanilla Baum, um an dieser Stelle ein Haus hinzusetzen. Wenn nun nach dieser Mod eine andere geladen wird, die versucht auf genau diesen Baum zuzugreifen, dann hat das den allseits bekannten Crash-on-Exit zur Folge, d.h. das Spiel stürzt beim Beenden ab. TES4Edit stellt diese gelöschten Vanilla Referenzen wieder her, deaktiviert sie und platziert sie irgendwo außerhalb der Zelle.
II. Was muss ich beim Cleanen beachten?
Der Cleaning Prozess an sich ist relativ einfach, man muss aber vorher unbedingt einige Dinge beachten:
Jede Mod muss einzeln gecleant werden
Cleant die gewünschte Mod, beendet das Programm und startet es erneut um die nächste Mod zu cleanen. Ladet niemals eure gesamte Modliste um alle Mods auf einmal zu cleanen.
Masterdateien
Man muss genau wissen welche Masterdateien die Mod hat, d.h. von welchen anderen Mods sie abhängig ist, weil sie unbedingt in TES4Edit mitgeladen werden müssen. Um eine Mod cleanen zu können muss man also auch alle Masterdateien installiert haben.
Mods, die keine Master sind, dürfen nicht mitgeladen werden. Man darf also nicht einfach seine gesamte Modliste laden!
Es müssen explizite sowie implizite Abhängigkeiten beachtet werden:
Explizite Abhängigkeiten sind leicht zu erkennen. Man kann sie z.B. in Wrye Bash auf der rechten Seite im Feld „Masterdateien“ sehen, wenn man die Mod anklickt. Diese expliziten Masterdateien werden von TES4Edit automatisch mitgeladen. Die Masterdateien sind auch in TES4Edit im Verzeichnis „File Header“ aufgelistet.
Als Beispiel habe ich die OWC - Players Home.esp gewählt, da man hier sehr schön erkennen kann, dass eine Mod nicht nur von einer ESM abhängig sein kann sondern auch von einer ESP oder sogar einer Mischung aus mehreren ESM und ESPs.
Implizite Abhängigkeiten sind schon etwas schwieriger zu erkennen, da sie in der Liste der Masterdateien nicht aufgeführt sind. Implizite Abhängigkeiten werden nicht automatisch mitgeladen in TES4Edit, werden aber unbedingt benötigt! Ihr müsst sie von Hand auswählen.
Daher müsst Ihr genau wissen, was die Mod macht und welche anderen Mods sie verändert bzw. benötigt. Lest die Readme der entsprechenden Mod, um dies in Erfahrung zu bringen.
Ein Beispiel wäre hier der Kompatibilitätspatch für Lost Spires und Unique Landscapes - Dark Forest. Als Masterdatei ist nur die Oblivion.esm aufgelistet obwohl die Mod definitiv auch von den anderen beiden genannten Mods abhängig ist.
Ladereihenfolge
Man sollte immer die korrekte Ladereihenfolge einhalten. Das gilt fürs Spielen ebenso wie für das Cleanen. Zuerst werden die Masterdateien in der richtigen Reihenfolge geladen und zum Schluss die zu cleanende Mod. Ladet niemals eine Mod nach derjenigen, die ihr cleanen wollt.
Die richtige Ladereihenfolge bei expliziten Masterdateien könnt ihr in Wrye Bash sehen. In dem Feld in dem die Masterdateien aufgelistet sind, steht in der Spalte MI die erforderliche Ladereihenfolge und rechts daneben eure derzeitige Ladereihenfolge. Ist eure Ladereihenfolge falsch, so wird das Kästchen links neben dem Modnamen orange eingefärbt, bei korrekter Reihenfolge sind alle Kästchen grün.
Die korrekte Ladereihenfolge von impliziten Masterdateien müsst ihr in der Readme nachlesen oder beim Autor der Mod nachfragen.
Zum Bestimmen der korrekten Ladereihenfolge könnt ihr auch das Tool Better Oblivion Sorting Software (BOSS) verwenden.
In welcher Reihenfolge sollte ich meine Mods cleanen?
Ganz einfach: von oben nach unten.
Fangt ganz oben in eurer Ladereihenfolge an und arbeitet euch runter bis zur Mod, die als letztes geladen wird. So könnt ihr nichts falsch machen.
Wenn eine Mod Masterdateien besitzt, dann cleant zuerst die Masterdateien in der richtigen Reihenfolge, und zwar: von oben nach unten.
Kann ich irgendwo nachlesen welche Mods clean/unclean sind?
Ja, im Bethsoft Forum, allerdings auf englisch. Dort gibt es 4 Listen:
- Mods, die gecleant werden müssen
- Mods, die manuell gecleant werden müssen
- Mods, die bereits clean sind
- Mods, die nicht gecleant werden dürfen
Vorsicht bei Animationsmods!
Mir ist schon des öfteren zu Ohren gekommen, dass Mods, die Idle Animationen einfügen, zum Teil absichtlich "Identical To Master"-Einträge einbauen, die für die Funktionalität der Mod essentiell sind. Das Entfernen dieser Einträge hat zur Folge, dass die Animationen nicht mehr abgespielt werden. Das Wiederherstellen von Vanilla Referenzen sollte allerdings kein Problem sein.
Sobald eine Mod neue Idle Animationen einfügt (und die in die bestehende Animations-Liste einbindet), darf man nicht mehr die gesamte Mod auf einmal cleanen, da man sich dabei dann die Animationen zerschiesst (die NPCs wollten bei mir auf einmal nicht mehr schlafen gehen, sondern standen nachts nur noch still neben ihrem Bett rum).
Also: sobald eine Mod den Unterpunkt "Idle Animation" hat (und dort ein Eintrag mit der FormID 00xxxxxx vorhanden ist), sollte man nicht die ganze Mod auf einmal cleanen, sondern jeden Unterpunkt einzeln (meistens reicht es auch schon aus, wenn man "Cell" und "Worldspace" cleant, die meisten Dirty Edits befinden sich dort drin).
III. Der Cleaning Prozess mit TES4Edit
Ihr habt das Tutorial bis hierhin gründlich durchgelesen und wisst nun genau auf was ihr achten müsst beim Cleanen? Gut, dann kommen wir nun endlich zum eigentlichen Cleaning Prozess.
- Ladet die aktuelle Version von TES4Edit herunter.
- Entpackt das Archiv in einen Ordner eurer Wahl.
- Startet TES4Edit.exe - Solltet ihr die Fehlermeldung erhalten, dass die Datei d3dx9_*.dll fehlt, dann müsst ihr euer DirectX aktualisieren.
- Es erscheint ein Fenster mit euren installierten Mods. Rechtsklickt auf die Modliste und wählt Select None.
- Wählt die Mod aus, die ihr cleanen wollt mitsamt allen impliziten Abhängigkeiten. Die expliziten Abhängigkeiten könnt ihr auch auswählen, müsst ihr aber nicht unbedingt, da sie sowieso automatisch mitgeladen werden.
- Nun wird die Mod mit all ihren Abhängigkeiten geladen. Das kann eine Weile dauern. Wartet bis ihr die Meldung Background Loader: finished im Messages Tab seht.
- Rechtsklickt auf die Mod, die ihr cleanen wollt und wählt Apply Filter.
- Es erscheint ein Fenster mit sehr vielen Optionen. Keine Sorge, ihr braucht lediglich eine einzige Option: Conflict status inherited by parent. Alle anderen Optionen müssen deaktiviert werden. Klickt anschließend auf den Button Filter.
- Wartet bis das Programm fertig geladen hat. Das kann bei großen oder sehr uncleanen Plugins ziemlich lange dauern. Ihr solltet nebenher keine speicherintensiven Prozesse laufen lassen. Wenn der Filterprozess abgeschlossen ist, erscheint die Meldung [Filtering done] im Messages Tab.
- Rechtsklickt auf die Mod, die ihr cleanen wollt, und wählt Remove "Identical to Master" records.
- Es erscheint eine Warnung. Klickt auf Yes I'm absolutely sure.
- Nun rechtsklickt wieder auf die Mod, die ihr cleanen wollt und wählt Undelete and Disable References.
- Falls irgendwelche Änderungen vorgenommen wurden, dann wird der Modname fett geschrieben. Den Cleaning Bericht könnt ihr im Messages Tab nachlesen.
- Beendet das Programm. Falls keine Dirty Edits gefunden wurden, dann lässt sich das Programm ganz normal schließen. Das bedeutet, dass die Mod bereits clean war.
Falls jedoch Änderungen vorgenommen wurden, dann erscheint ein neues Fenster in dem aufgelistet ist an welchen Plugins ihr Änderungen vorgenommen habt. Es sollte nur 1 Plugin aufgelistet sein, da ihr sie nur einzeln cleanen dürft (ihr habt doch das letzte Kapitel gelesen, nicht wahr?).
Achtung: Wenn Ihr die Änderungen nicht speichern wollt, dann klickt nicht auf das X oben rechts! Ihr müsst das Häkchen neben der Mod entfernen und auf OK klicken. - Ihr könnt den Vorgang nun für jede weitere Mod, die ihr cleanen möchtet, wiederholen, angefangen ganz oben in der Ladereihenfolge. Cleant niemals mehr als eine ESM/ESP gleichzeitig und achtet darauf, dass die Mod, die ihr cleanen wollt, immer als letztes in TES4Edit aufgelistet ist.
Ich habe etwas falsch gemacht. Wie kann ich die Änderungen rückgängig machen?
Jedes mal wenn ihr Änderungen an einer Datei vornehmt, speichert TES4Edit ein Backup in eurem Oblivion/Data Ordner im Format Dateiname.backup.Datum_Uhrzeit. Ihr müsst einfach nur den Dateinamen wieder in das Original ändern.
IV. NULL-Referenzen
Eine weitere Ursache für den Crash-on-Exit sind die sogenannten Null-Referenzen. Eine einzige Null-Referenz kann bereits ausreichen um das Spiel beim Beenden abstürzen zu lassen.
Das Problem bei diesen Referenzen ist, dass sie nicht automatisch gecleant werden. Man muss sie von Hand entfernen.
Wie finde ich diese Null-Referenzen?
Folgt der Cleaning Anleitung bis Schritt 8 bzw. 12, falls ihr die Mod vorher noch nicht gecleant habt.
Wenn nach dem Filtern die Mod kursiv geschrieben ist, dann rechtsklickt auf sie und wählt Check for Errors.
Es kann sein, dass das Programm eine Weile nicht reagiert, habt Geduld und wartet bis es fertig geladen hat.
Hat die Mod eine Null-Referenz, so erhaltet ihr die Fehlermeldung "NAME - Base -> Found a NULL reference" gefolgt von einer genauen Beschreibung wo ihr diese Referenz findet.
In meinem Beispiel erhielt ich folgende Meldung:
Code:
[00:00] Checking for Errors in [01] OBG - Buechermod - Bilder - BP.esp
[00:00] NAME - Base -> Found a NULL reference, expected: ACTI,ALCH,AMMO,APPA,ARMO,BOOK,CLOT,CONT,DOOR,FLOR,FURN,GRAS,INGR,KEYM,LIGH,LVLC,MISC,SBSP,SGST,SLGM,SOUN,STAT,TREE,WEAP
[00:00] Above errors were found in :[REFR:000295CA] (places NULL - Null Reference [00000000] in GRUP Cell Temporary Children of WarehouseBooks "Bücherlager" [CELL:00029571])
[00:00] Above errors were found in :GRUP Cell Temporary Children of WarehouseBooks "Bücherlager" [CELL:00029571]
[00:00] Above errors were found in :GRUP Cell Children of WarehouseBooks "Bücherlager" [CELL:00029571]
[00:00] Above errors were found in :GRUP Interior Cell Sub-Block 2
[00:00] Above errors were found in :GRUP Interior Cell Block 9
[00:00] Above errors were found in :GRUP Top "CELL"
[00:00] Above errors were found in :[01] OBG - Buechermod - Bilder - BP.esp
Rechtsklickt auf die Null-Referenz (im Verzeichnisbaum) und klickt auf Remove. TES4Edit fragt euch nun ob ihr euch sicher seid bei dem was ihr tut. Wenn dem so ist, klickt auf Yes.
V. Schlusswort
Alle hier vorgestellten Tools sind absolut kostenlos. Wenn ihr Geld dafür bezahlt habt, wurdet ihr Opfer eines Betruges.
Für den Download ist eventuell eine kostenlose Registrierung auf TESNexus.com notwendig.
Vielen Dank an
- Brumbek und alle Subautoren für den hervorragenden englischen TES4Edit Cleaning Guide
- ElminsterAU, dem Schöpfer von TES4Edit
- Naboradd für den Hinweis auf die Problematik bei Animationsmods
Zuletzt bearbeitet: