Difference between revisions of "TES5Edit Mod Cleaning Tutorial"

Jump to navigation Jump to search
9,219 bytes removed ,  12:34, 15 October 2015
Streamline and simplify the tutorial, removing information that's duplicated on other wiki pages.
imported>WinsomeMinotaur
imported>WrinklyNinja
(Streamline and simplify the tutorial, removing information that's duplicated on other wiki pages.)
Line 1: Line 1:
[[Category: TES5Edit]]
[[Category: TES5Edit]]
[[Category: Tutorials]]
[[Category: Tutorials]]
== Introduction ==


This tutorial is designed to teach modders and mod users how to use TES5Edit to clean mods. Cleaning mods is critical to the development of compatibility in the modding community and for creating a stable modded game environment, but TES5Edit is not a simple utility and care must be taken not to damage the mods in the process. This tutorial should help explain everything that you need to know to clean mods correctly.
This tutorial is designed to teach modders and mod users how to use TES5Edit to clean mods. Cleaning mods is critical to the development of compatibility in the modding community and for creating a stable modded game environment, but TES5Edit is not a simple utility and care must be taken not to damage the mods in the process. This tutorial should help explain everything that you need to know to clean mods correctly.


I will be using Sharlikran_Map_Markers_Expanded.esp. This file allows me to demonstrate the use of the program and to take pictures of the working process without using anyone's mod as a guinea pig.
== Preparing to Clean ==


== Having the mod ready ==
Before you launch TES5Edit, be sure to have the ESP you want to clean already placed in the Data folder. Here, I want to clean <code>Sharlikran_Map_Markers_Expanded.esp</code>, so I'll copy the plugin to the Data folder:
 
Before you launch TES5Edit, be sure to have the ESP you want to clean already placed in the Data folder. If not, then before launching the program, first copy one. For the sake of this example, I'll copy my plugin to the Data folder:


[[Image:Selected Mod Before Cleaning.jpg|800px|Selected Mod Before Cleaning]]
[[Image:Selected Mod Before Cleaning.jpg|800px|Selected Mod Before Cleaning]]


Take notice of its size so you can see the effect of the cleaning afterwards.
== The Cleaning Process ==
 
= The cleaning process =
 
== Quick List of What & What Not to Clean ==


* Do NOT clean Skyrim.esm!
=== Loading the Mod ===
* Do NOT clean the Unofficial Patches (USKP, UDGP, UHFP, UDBP). They have already been cleaned.
* You should clean the official DLC. (Update.esm, Dawnguard.esm, HearthFires.esm, Dragonborn.esm)
* You can also clean just about everything else.
 
== Warming up ==


Ok, now launch TES5Edit.  
Ok, now launch TES5Edit.  
Line 31: Line 22:
[[Image:TES5EditPluginList.jpg|250px|TES5Edit Plugin List]]
[[Image:TES5EditPluginList.jpg|250px|TES5Edit Plugin List]]


In order to use this tool to clean, you should load only the mod you are cleaning and any other mods that the mod you are cleaning depends upon. Generally, this means you will only tick the specific mod you are cleaning but if the mod modifies another mod, that mod is required to be ticked as well. The tool will also load Skyrim.esm, since all master plugins are also loaded, and every mod depends on it.  
In order to use this tool to clean, you should load '''only''' the mod you are cleaning and any other mods that the mod you are cleaning depends upon. Generally, this means you will only tick the specific mod you are cleaning, as most of the time any dependencies are listed inside the mod, and TES5Edit knows to load them too. However, this is not always the case, especially for mods like landscape patches, so it's always best to double-check that all the plugins you expect have been loaded.


So, to proceed, first deselect all the mods already checked (defined by the mods you have currently active). In order to do so quickly, right click on the window and then choose “Select None”  
So, to proceed, first deselect all the mods already checked (defined by the mods you have currently active). In order to do so quickly, right click on the window and then choose “Select None”  
Line 37: Line 28:
[[Image:TES5EditPluginListSelectNone.jpg|250px|Select None Popup]]
[[Image:TES5EditPluginListSelectNone.jpg|250px|Select None Popup]]


Lastly, search for the mod you want to clean ''(you already copied it to the Data folder, right? If you didn't, then this is a good time to do so ... and restart TES5Edit in order to be able to see it in the list)''
Then search the list for the mod you want to clean and tick the checkbox beside its name, and click the OK button.  
 
Then select it (tick the check to the left of the window), and click the OK button.  


[[Image:TES5EditPluginSelected.jpg|250px|Selecting The Mod]]
[[Image:TES5EditPluginSelected.jpg|250px|Selecting The Mod]]
Line 51: Line 40:
[[Image:TES5EditBeforeCleaning.jpg|800px|Before Cleaning]]
[[Image:TES5EditBeforeCleaning.jpg|800px|Before Cleaning]]


== Checking step first ==
=== Cleaning the Mod ===
 
The next step is only needed if you want to see if the mod has dirty records prior to cleaning it, so you can see what will be removed. It has no impact on the cleaning process.  If you're not interested in checking, just skip to the next section [[TES5Edit_Cleaning_Guide_-_TES5Edit#Finally cleaning the mod|Finally cleaning the mod]].
 
Ok, then. Here's the way to do that: Right click on the left pane of the TES5Edit window, and in the popup menu choose Apply Filter:
 
[[Image:TES5EditApplyFilter.jpg|800px|Apply Filter]]
 
In that window that opens, in order to show only the records that are ‘identical to Master’, choose the following settings:
 
[[Image:TES5EditFilterOptionsForChecking.jpg|800px|Filter Options For Checking]]
 
You should clear all ticks on options shown as un-ticked and only tick the ones shown.
 
After you're done, click 'Filter' and the filtering process will start. The program will change their window caption to show the filtering progress as it goes. It could take from seconds to several minutes, depending on how large the mod is and on the speed of your computer.
 
When the filtering is finished the caption will return to normal and the message:
 
<pre>[Filtering done]  Processed Records: 889643 Elapsed Time: 00:18</pre>


will be printed on the message tab.
Right click on the left pane of the TES5Edit window, and in the popup menu choose "Apply Filter For Cleaning":  
 
The point of filtering is to instruct the program to show only the things that we want to focus on, so, with these settings it will show only the records which are identical to the corresponding master record, i.e. records whose presence is not needed in the current mod, since they aren't changing anything useful. The mod only got them because the CS included them without the modder wanting to do so.
 
After the filtering process is done, the program will show the content below (select the root of the tree and press the '*' which is located on the numeric keypad in order to expand all levels):
 
[[Image:TES5EditFilteredRecordsShown.jpg|800px|Filtered Records Shown]]
 
As you can see in the image, the mod does in fact have some dirty records. They are shown colored in GREEN background and DARK GRAY text. Mainly they are landscape and some placed objects which got transferred to the mod since the CS thought that they had been touched.
 
None of those records are needed, since they an exact copy of the same information is already present on Skyrim.esm.
 
In order to be sure, you can look at the record's content. The program shows that in the right pane:
 
[[Image:TES5EditSingleRecordView.jpg|800px|Single Record View]]
 
The picture shows the REFR record for a Placed NPC -- ThalmorEmbassyGuardNightShift02 [NPC_:000A6D6C] which is identical to the one on the master. Notice the change in text color to Dark Gray there too.  But, in order to be sure about their 'equality' we can select 'Hide no conflict rows' from the popup context.
 
[[Image:TES5EditHideNoConflictRows.jpg|800px|Hide No Conflict Rows]]
 
And lo and behold!  Nothing is shown!  Confirming the first suspicion that those records are, in fact, identical.
 
[[Image:TES5EditNothingIsShown.jpg|800px|Nothing Is Shown!]]
 
NOTE: Deselect 'Hide no conflict rows' from the popup context.
 
So now, we can proceed with the cleaning.
 
== Finally cleaning the mod ==
 
=== Order For Cleaning Bethesda's Master Files ===
 
[[File:TES5EditCleaningUpdate.jpg|50px|TES5 Apply Filter For Cleaning Update.esm]]  [[File:TES5EditCleaningDawnguard.jpg|50px|TES5 Apply Filter For Cleaning Dawnguard.esm]]  [[File:TES5EditCleaningHearthfires.jpg|50px|TES5 Apply Filter For Cleaning Hearthfires.esm]]  [[File:TES5EditCleaningDragonborn.jpg|50px|TES5 Apply Filter For Cleaning Dragonborn.esm]]
 
:For Update.esm: Load Skyrim.esm and Update.esm, but only clean Update.esm.
:For Dawnguard.esm: Load Skyrim.esm, Update.esm, and Dawnguard.esm but only clean Dawnguard.esm.
:For Hearthfires.esm: Load Skyrim.esm and Hearthfires.esm but, only clean Hearthfires.esm.
:For Dragonborn.esm: Load Skyrim.esm, Update.sm, and Dragonborn.esm but only clean Dragonborn.esm.
 
=== Cleaning the ESM or ESP ===
 
Again, we need to go to the filter window, so again, right clink on the left pane, but this time select "Apply Filter For Cleaning" instead:  


[[Image:TES5EditApplyFilterForCleaning.jpg|800px|Apply Filter For Cleaning]]
[[Image:TES5EditApplyFilterForCleaning.jpg|800px|Apply Filter For Cleaning]]


All of the proper options are selected automatically and the program will apply the filter ''(which now it takes only a few seconds, since the program has cached some of the information from the first filtering step done before)'' and when the filtering is finished, go to the left pane (the tree) and select the mod (in our case: Update.esm), right click on it and choose 'Remove "Identical to Master" records.'  
The program will apply the correct filter options for cleaning, and when the filtering is finished, go to the left pane (the tree) and select the mod (in our case: Update.esm), right click on it and choose 'Remove "Identical to Master" records.'  


[[Image:TES5EditRemoveIdenticalToMaster.jpg|800px|Identical To Master]]
[[Image:TES5EditRemoveIdenticalToMaster.jpg|800px|Identical To Master]]


Then a warning popup will appear. Just wait a few seconds, the Yes button will be enabled, and you can click it:
Then a warning popup will appear. Just wait a few seconds, the "Yes" button will be enabled, and you can click it:


[[Image:TES5EditWarningAreYouSure.jpg|400px|Warning You Are Sure]]
[[Image:TES5EditWarningAreYouSure.jpg|400px|Warning You Are Sure]]
Line 134: Line 64:
[[Image:TES5EditCleaningLogWhatGotRemoved.jpg|800px|Cleaning Log]]
[[Image:TES5EditCleaningLogWhatGotRemoved.jpg|800px|Cleaning Log]]


Here I copied that blurb of text so you can examine it more closely:
You can open the image in a new tab to see it in full size if the text is too small for you.
 
<pre>[Filtering done]  Processed Records: 889643 Elapsed Time: 00:04
Removing: DA06RitualScene [SCEN:000223E7]
Removing: BardsCollegeFluteView [DLVW:00108A63]
Removing: BardsCollegeLuteView [DLVW:0010C064]
Removing: BardsCollegeDrumView [DLVW:0010C065]
Removing: MS06StyrrSpeakView [DLVW:0002850A]
Removing: GRUP Top "DLVW"
Removing: WhiterunOlavaTokenBranch [DLBR:0009CCD3]
Removing: WhiterunOlavaReadingBranch [DLBR:0009CCD4]
Removing: GRUP Top "DLBR"
Removing: DoVatsAtAll [CPTH:0003ECD5]
Removing: KillCamSlowFrontSideFarA [CPTH:000B702D]
Removing: isFrontClearL [CPTH:0010D2AD]
Removing: isFrontClearR [CPTH:0010D2AE]
Removing: S07BackRightStart01 [CPTH:0010F8AC]
Removing: S08BackLeftStart01 [CPTH:0010F8B0]
Removing: GRUP Top "LSCR"
Removing: DA02SandboxAtShrine [PACK:0004D8E2]
Removing: PowerAttackRoot [IDLE:00013384]
Removing: KillMoveShortAxeMace [IDLE:00076F44]
Removing: KillMoveShortBlade [IDLE:00076F45]
Removing: KillMoveDualWieldRoot [IDLE:000D7886]
Removing: KillMove2HMRoot [IDLE:000E1720]
Removing: KillMove2HWRoot [IDLE:000E1726]
Removing: KillMove2HWDecapBleedOut [IDLE:000E1727]
Removing: KillMove2HWDecap [IDLE:000E519C]
Removing: H2HKillMoveRoot [IDLE:000F9956]
Removing: KillMove2HWDecap00 [IDLE:00100EFB]
Removing: DBOlavaReadingMiscObjective [QUST:0002E655]
Removing: [CELL:0009F823] (in BluePalaceWingWorld "The Mind Of A Madman" [WRLD:00034240] at 1,2)
Removing: WindhelmCandlehearthHallExterior [CELL:00038382] (in WindhelmWorld "Windhelm" [WRLD:0001691D] at 32,8)
Removing: [CELL:00038381] (in WindhelmWorld "Windhelm" [WRLD:0001691D] at 32,9)
Removing: GRUP Exterior Cell Sub-Block 1, 4
Removing: GRUP Exterior Cell Block 0, 1
Removing: MS11CrimeSceneMarkerREF [REFR:00020554] (places XMarker [STAT:0000003B] in GRUP Cell Persistent Children of [CELL:0001691F] (in WindhelmWorld "Windhelm" [WRLD:0001691D] at 0,0))
Removing: GRUP Cell Persistent Children of [CELL:0001691F] (in WindhelmWorld "Windhelm" [WRLD:0001691D] at 0,0)
Removing: [CELL:0001691F] (in WindhelmWorld "Windhelm" [WRLD:0001691D] at 0,0)
Removing: WindhelmWorld "Windhelm" [WRLD:0001691D]
Removing: Mehrunes01 [CELL:00009418] (in Tamriel "Skyrim" [WRLD:0000003C] at -1,12)
Removing: GRUP Exterior Cell Sub-Block 1, -1
Removing: GRUP Exterior Cell Block 0, -1
Removing: ValtheimKeepExterior02 [CELL:000095B0] (in Tamriel "Skyrim" [WRLD:0000003C] at 18,0)
Removing: GRUP Exterior Cell Sub-Block 0, 2
Removing: GRUP Exterior Cell Block 0, 0
Removing: [ACHR:000A6D5E] (places ThalmorEmbassyGuardDayShift03 [NPC_:000A6D69] in GRUP Cell Temporary Children of ThalmorEmbassy04 "Thalmor Embassy, Barracks" [CELL:0006DAA0])
Removing: [ACHR:000A6D5F] (places ThalmorEmbassyGuardDayShift02 [NPC_:000A6D68] in GRUP Cell Temporary Children of ThalmorEmbassy04 "Thalmor Embassy, Barracks" [CELL:0006DAA0])
Removing: [ACHR:000A6D60] (places ThalmorEmbassyGuardDayShift01 [NPC_:000A6D67] in GRUP Cell Temporary Children of ThalmorEmbassy04 "Thalmor Embassy, Barracks" [CELL:0006DAA0])
Removing: [ACHR:000A6D61] (places ThalmorEmbassyGuardDayShift04 [NPC_:000A6D6A] in GRUP Cell Temporary Children of ThalmorEmbassy04 "Thalmor Embassy, Barracks" [CELL:0006DAA0])
Removing: ThalmorEmbassy02 "Thalmor Embassy, Elenwen's Solar" [CELL:0007DCFC]
Removing: GRUP Interior Cell Sub-Block 2
Removing: fVATSCameraCutAwayDistance [GMST:000142ED]
[Removing "Identical to Master" records done]  Processed Records: 963 Removed Records: 50 Elapsed Time: 00:00
</pre>


On the tree pane, to the left, the mod’s content shows the records modified in a bold font:  
On the tree pane, to the left, the mod’s content shows the records modified in a bold font:  
Line 198: Line 74:
[[Image:TES5EditUndeleteDisableReferences.jpg|800px|Undelete and Disable References]]
[[Image:TES5EditUndeleteDisableReferences.jpg|800px|Undelete and Disable References]]


Right click again on the plugin you are cleaning (again in our case: Update.esm) and select “Undelete and Disable References.” Again, check the Messages tab to see what was changed. Make a note of the number of "Identical to Master" records that were removed and the number of "undeleted and disabled references" for later when reporting the plugin to the BOSS team.
Right click again on the plugin you are cleaning (again in our case: Update.esm) and select “Undelete and Disable References.” Again, check the Messages tab to see what was changed. Make a note of the number of "Identical to Master" records that were removed and the number of "undeleted and disabled references" for later when reporting the plugin to the LOOT team.
 
=== Saving Your Changes ===


== Saving the work ==
Ok, understand this point which is very important: the modified mod is yet unsaved and it will not be saved until you want to. If you change your mind now, you will be allowed to exit the program (just click on the top-right corner of the window as you would do normally,) and then answer to the window that appears:  
Ok, understand this point which is very important: the modified mod is yet unsaved and it will not be saved until you want to. If you change your mind now, you will be allowed to exit the program (just click on the top-right corner of the window as you would do normally,) and then answer to the window that appears:  


Line 226: Line 103:
[[Image:TES5EditSaveFileLocation.jpg|800px|Save File Location]]
[[Image:TES5EditSaveFileLocation.jpg|800px|Save File Location]]


At which point the program will rename the old original file as a 'backup' file and place that in the folder TES5Edit Backups, and the new 'save' file as the original mod. (Notice the reduction in size?  Those were the extra records that are now removed.)
At which point the program will rename the old original file as a 'backup' file and place that in the folder TES5Edit Backups, and the new 'save' file as the original mod.


When we’re done and after we exit the tool:
When we’re done and after we exit the tool:
Line 234: Line 111:
the roles reverted, so you now can play test it directly after closing the program.
the roles reverted, so you now can play test it directly after closing the program.


Ok, that should be everything I can think of now.
And that's automated cleaning done!
 
== Articles about the program ==
*[http://www.oblivionmodwiki.com/index.php?title=TES4View TES4View on Oblivion Mod Wiki]


== Additional TES5Edit Resources ==
== Additional TES5Edit Resources ==
Line 246: Line 120:
* [http://forums.bethsoft.com/topic/1436132-relz-tes5edit/ Official Elderscrolls TES5Edit forum topic]
* [http://forums.bethsoft.com/topic/1436132-relz-tes5edit/ Official Elderscrolls TES5Edit forum topic]


= Final words =
== Closing Remarks & Credits ==
 
Keep in mind that we're only scratching the surface of what can be done with this awesome tool.


The modding world is better thanks to generous individuals, like ElminsterEU, who have put an enormous chunk of their personal spare time into the making of this wonderful program. All kudos should go to him. And if you are in position of doing so, don't forget to rate the download in TESNexus.
This guide has been adapted from the [http://cs.elderscrolls.com/index.php/TES4Edit/Mod_cleaning_tutorial_with_TES4Edit TES4Edit/Mod cleaning tutorial with TES4Edit]. Many thanks go to the various authors of and contributors to that article, including but not limited to: Brumbek, Aellis, Kalevala, Leeus, DragoonWraith.
 
= Closing Remarks & Credits =
 
This guide has been adapted from the [http://cs.elderscrolls.com/index.php/TES4Edit/Mod_cleaning_tutorial_with_TES4Edit TES4Edit/Mod cleaning tutorial with TES4Edit].
 
Many thanks go to the various authors of and contributors to that article, including but not limited to: Brumbek, Aellis, Kalevala, Leeus, DragoonWraith.


Thanks also go to ElminsterEU, Sharlikran, and Zilav for their work in getting TES5Edit released.
Thanks also go to ElminsterEU, Sharlikran, and Zilav for their work in getting TES5Edit released.
Still to do:
* Include pictures for the instructions a la [http://cs.elderscrolls.com/index.php/TES4Edit/Mod_cleaning_tutorial_with_TES4Edit TES4Edit/Mod cleaning tutorial with TES4Edit].
* Get the correctness of the guide verified by the TES5Edit team.


{{Languages}}
{{Languages}}
Anonymous user

Navigation menu