Guide:XEdit

From Step Mods | Change The Game

Template:TOC right The xEdit guide -- by Kesta and the S.T.E.P. Team

GUIDE FORUM THREAD
SUPPORT FORUM



Tes5logosmall.png

Template:Construction Template:Construction

About TES5Edit

TES5Edit is an advanced tool for analyzing and editing Skyrim plugins. It works by loading one or multiple plugins (.esp or .esm files) with their explicit masters, and then displaying their contents in a specific user interface.

TES5Edit allows a clear layout and provide useful navigation controls to visualize the data of Skyrim plugins, as well as powerful editing functions to clean, edit, or even create mods and patches.


It was originally developed by ElminsterAU as TES4Edit, for Oblivion. It then got updated by its author to handle Fallout 3 and Fallout New Vegas. Finally, it later got updated for Skyrim by Hlp, Sharlikran and Zilav. Those different versions of the tools led to what is currently known as xEdit. xEdit is a standard name convention to refer to the whole set: TES4Edit, FO3Edit, FNVEdit, TES5Edit. It is important to mention that whichever version you downloaded, these are all the same executable. It is possible to switch from one to another by simply renaming the executable.

The official release of the tool is currently the 11th (on 18/06/2015), namely v3.1.1


Installing TES5Edit

Video play triangle.png
Related Video(s):


Prerequisites

None, but only the latest official version of Skyrim (Version 1.9.32.0.8) is supported.

Installation

  1. Download either the official release on GitHub or the Nexus mod page, or the developer release on the afkmods thread.
  2. Extract the archive, then put this folder somewhere smart. Using a "Modding Tools" folders is a good practice.
  3. For Mod Organizer user, it's critical to add xEdit in your executable list. If not, installation is already over, but it's recommended to create a shortcut for easy access.

Launch and Basic Features

xEdit is launched by simply double-clicking the icon for standard users, or launching it through Mod Organizer for MO users. It will automatically detect the Skyrim folder as well as the current Load Order.

Loading Plugins

Loading Menu


The first menu is the Master/Plugin Selection Menu. Closing this menu instead of pressing OK will close the program. This menu is used to determine which plugins will be loaded and analyzed in xEdit. By default, plugins checked are plugins actives in the load order. Plugins are sorted according to your load order. To select which plugin to load, it's possible to:

  • Check/Uncheck plugins manually.
  • Use "Select All" from the contextual menu to select every plugins.
  • Use "Select None" from the contextual menu to deselect every plugin.
  • Use "Invert Selection" to select currently unchecked plugins and vice-versa.

Template:Notice Small

On top of the selection, a "Search" field allow to highlight plugins name that contain the typed text (non case-sensitive), and set the view to the highest highlighted plugin.

This allow to quickly choose which set of mod (or which single mod) to load.

Most common uses for end-users are:

  • Use the default selection to check the current load order (in order to spot/resolve conflicts)
  • Use "Select None" first, then select a specific plugin to load, or double-click on it for instant-load.

Template:Warning Small

It's important to note that even unselected, explicit masters of loaded plugins will be loaded as well. This imply that the main game file (Skyrim.esm for Skyrim) should always be loaded.

Once the selection is done, clicking the OK button or pressing Enter will load the selected list.

xEdit will display messages both in the "Messages" tab and in the footer of the application, while running the Background Loader. Depending on the user system, the number of plugins and their content, this operation can take up to several minutes.

Once completed, this message will appear in the "Messages" tab and in the footer: [01:03] Background Loader: finished. If not, it simply means that the Background Loader is still running, even if it doesn't actually add new lines to the "Messages" tab.

Template:Definition

The user interface and available functionalities will be explained in the next sections of this guide.

Setting the language

If your game is installed in an other language than english, it's important to set this in xEdit. To set the language : right click anywhere in the left pane to bring up a contextual menu and Navigate to "Other" -> "Localization" -> "Language" -> Choose your language. Only available options should be English and the current language installation. Template:Notice Small

First Edit Warning


At the 1st try to edit one of the loaded plugins, xEdit will display an explicit warning, asking if yes or no the program should actually start editing modules. Once clicked "Yes I'm absolutely sure", this warning won't appear again until you quit the current session and re-open a new one.
If this warning appears unexpectedly, clicking "Hm.. let me think about it some more" will cancel the unexpected editing operation. The warning will then be displayed again the next time xEdit try to edit something, until the user select "Yes I'm absolutely sure". Template:Notice Small

Exit and Save

Video play triangle.png
Related Video(s):

While the common practice is to "Save and Exit", xEdit work as opposite : "Exit To Save"

If nothing have been modified, exiting the program by using the red cross or the Alt-F4 shortcut will simply close the application. If there is anything which have been modified, xEdit will bring up a Saving Menu before closing.

Template:Notice Small

Saving Menu

The Saving Menu layout is similar to the "Master/Plugin Selection Menu", except it only display mods which have been modified during the session, and contains a "Backup Plugins" Checkbox.

To save changes made to a plugin, this plugin need to be checked in the save menu. If the "Backup Plugins" Checkbox is checked, original plugins will be saved under the "Data\TES5Edit Backup" folder. (MO users : The "TES5Edit Backup" folder will be created in the overwrite.) Plugins backup see their name modified from PluginName.esp to PluginName.esp to PluginName.esp.backup.YYYY_MM_DD_HH_NN_SS where the last part represent the instant the backup got created. Unchecked plugins won't be saved. It allows to cancel manipulations mistakes during the session (unwanted edit on a mod).

Pressing OK will exit the program and save/backup plugins according to your selection.

Template:Warning Small

Interface

Navigation bar

The Navigation Bar display the location of your current selection. Note that it will only appear once something have been selected in the Tree View. The two buttons on the right of the bar allow you to move to previous/next element. Template:Notice

The location displayed in the text field is formated as follow :

[XX]PluginName.esp\GRUP\..\FormID <EditorID>

Where :

  • XX is the index of the plugin currently being looked at in the session's load order
  • PluginName.esp is the name of the plugin currently being looked at
  • GRUP is the GRUP of records being looked at
  • .. can contains additionnal sub-GRUP when relevant
  • FormID is the formID of the record being looked at
  • EditorID is the Editor ID of the record being looked at


What is "being looked at" is what is currently being selected in the Tree View, and displayed in the View tab of the right panel if it's a record.

Template:Definition

Tree Panel

The Tree Panel, on the left, display plugins loaded in the session. There is an additionnal Skyrim.exe, which is at the same load order position as Skyrim.esm (should always be [00]). Skyrim.exe represent the game executable, which contain hard-coded data which cannont be edited by mod authors, and are essential for the game to function properly.

Two search-fields "FormID" and "EditorID" are available above the tree, which allows to search a specific record, knowing either it's FormID or EditorID.

The Tree Itself contains 3 columns : "FormID", "EditorID" and "Name". While it's impossible for a record to have no FormID, bad manipulation in the CK can lead to Blank EditorID. "Name" is optional, thus some records don't have any.

Plugins loaded in the session appears with an [XX] prefix, which represent their position in the session's load order as an hexadecimal number.

Tree Panel

Sorting

When looking for a specific record, it can be usefull to sort the Tree Panel table by FormID, EditorID or Name, depending on the information known about the record(s) to find. To do so, a simple click on the desired column header will sort the table. When sorting the table as such, it's recommanded to right click on the column header to bring up the contextual menu, and select "Files" -> "Always by Load Order". This way, sorting the table won't affect the order in which plugins are displayed in the tree, but instead sort the records in each of them according to the chosen sorting column. Other options for this contextual menu are "As Selected" (default), which will sort everything, plugins and records alike, and "Always by Name", which will maintain plugins sorted in the tree by alphabetical order instead of their load order position. This last option can be usefull to quickly find a plugin in the tree when only knowing its name but not its position in the load order.

Navigation and Selection

It's possible to expand/collapse each plugin to see it's content. This can be down by clicking on the + icon on the left of the plugin's name, by double clicking on the plugin's name, or by pressing   when the plugin is selected. To quickly browse elements in the Tree Panel, it's possible to use   and   keyboard controls to select elements, as well as   and   to expand or collapse clusters.

When expanding a plugin, it display a list of "records category" called GRUPs. GRUPs can usually be expanded as well. When expanding a GRUP, depending of it's type, it will either display a list of records, or a list of sub-GRUP. Records can't be expanded on the Tree Panel, instead their data are displayed in the Right Pane when they are selected.

Interractions and Available Informations

The line of a plugin indicate its load order position in the current session, and its name and extension (.esp or .esm).

When a plugin is expanded, it shows that its content, always including a "File Header" line, plus the list of GRUPs this plugin have record associated in. If a plugin only have the File Header and no GRUP, this is what is called a dummy plugin. Dummy plugins are usually intended to force the game to load an associated .bsa file.

The line of a GRUP only display its name. Once expanded, a GRUP display every records in the plugin belonging to this GRUP.

The line of a plugin match the tree's table columns : | FormID | EditorID | Name (if any) |


Additional information are available with the color, background-color and font-style of each line. see xEdit Color Code


Right-clicking in the Tree Panel will bring up a contextual menu. Depending on what have been cliked on, and the version of xEdit used, available functionalities in this menu will vary. Some are specific to a game, and others are only available for plugin or record. see Using xEdit functionnalities

Right Pane

The right pane is divided in two parts : One for the actual content, and one to choose a tab, to choose which content to display. Available tabs are :

  • View : Will be blank if a GRUP is selected in the Tree View. Will display record's data of the selected Record if one is selected in the Tree View.
  • Referenced By : Only available if a pertinent record is selected in the Tree View. Display a 2 columns table listing every records referencing the one selected, and the plugin they belong to.
  • Message : This is the console output for TES5Edit. This is where informations related to what is processed are displayed, and serve as log as well. See "Errors and General Informations" for more information.
  • Information : This is a static page with some basic informations on how to use the application.
  • Spreadsheets : There is 3 spreadsheets available : Weapons, Armor and Ammunition. They're used to list every available item from it's associated category present in a selection of mod. See "Spreadsheet" section for more informations.

"View" Tab

Visualisation

When a record is selected in the tree panel, its data are displayed in the View tab of the right pane. If not already in this tab or the Reference tab, xEdit will automatically bring it up. With the tree pane, the View tab is the main area of work in TES5Edit for most users.


The xEdit View tab is a table. The 1st column on the left provide informations about the label of each row displayed:

  • The 1st set of rows don't have a signature in their label and are related to the "Record Header" of the selected record.
  • The 1st subrecord of the table, no matter for which record, is always EDID - Editor ID. This subrecord define the EditorID of the record (which is also used and displayed in the Tree Panel).
  • Each row named this way : XXXX - Some Wording represent a subrecord, i.e. a piece of information defining the record.
    XXXX is the signature of this subrecord. It's a 4 capital char words to identify particular type of data. Note that the signature of the currently selected plugin is displayed as part of his Record Header.
    Some Wording is a name associated with this signature by the xEdit interface for easier understanding, it isn't part of the game data structure.
  • Non-indented row without a signature in their label are irrelevant of the actual file structure. They doesn't represent a subrecord. They're generated by the xEdit interface to allow easier reading and editing. They either represent a list of similar subrecords, or a pack of subrecords that are usually edited together. While subrecords associated by the xEdit interface to such list or pack are indented in the View tab, they represent a whole subrecord as much as any others. Example : Armor Addon Records contains a pack of subrecords named "Male world model" which contain both "MOD2 - Model Filename" and "MO2S - Alternate Textures" records, and a list of subrecords named "Additional Races" which contain a list of "MODL - Race" records.
  • Indented Rows without a signature in their label are simple elements belonging to a subrecord. They doesn't represent a whole subrecord either. The indentation allow to see which subrecord such element belong to. They're displayed on their own line for reading convenience, but are actually stored in their parent subrecord. Example : Armor Addon Records contain a "DNAM - Data" subrecord which is displayed as a list of elements : "Male priority ; Female priority ; Weight slider - Male ; ..."

A block of row following a hierarchised parent-childs structure is what is called a node. A node with no childs is a "pit-node", but a node none the less. A node can either be a subrecord, a list/pack of subrecords, or a list/pack of elements belonging to a subrecord. A node differ from a row as it refer to both the parent row and all of it's child nodes. It is an important concept, as in xEdit it is possible to copy/delete/edit node as a whole.


Other columns are "plugin columns", they represent the record as it is saved in a plugin. There is as much plugin columns as there is mod in the load order session editing the selected record. (minus mod which have seen their record hidden by the user. see "Hidden" functionality). The title of a mod column is the same as the plugin's line in the Tree Panel : [XX] ModName.esp

Mod columns width can be resized manually, of by clicking anywhere in the View tab and right-clicking to bring up the contextual menu and using options from the "Column Widths" sub-menu. Options for column widths are :

  • Standard : Each column width is set to the same standard. The standard is defined in the options (right-click in the tree pane, Other->Options), under the "General" tab is the "Column Width" field. (default : 200)
  • Fit all : Each column width (excepted the title column) is adjusted to be the same, modified in order to see every columns in the tab without the need to use the horizontal scroll bar.
  • Fit text : Each column width is set independently, in order to have data fully displayed in each field without being truncated.


The entry at the intersection of a row and a column will be refered to as a "subrecord data" in the following guide. Subrecord data can either be :

  • A numerical value (integer or float)
  • A string
  • An other record
  • A flag

Subrecord datas may vary from a plugin to another and are what xEdit is mainly designed to analyse and edit. When two distincts and independants plugins try to set a different subrecord data for the same subrecord, this create what is called a conflict. Template:Notice Small


When browsing through records to detect and analyse/resolve conflicts, it's interesting to use the Hide no conflicts row feature by right-clicking anywhere in the View tab and checking this option. To re-enable every rows, re-do the same operation, "Hide no conflicts row" behave as a checkbox.

Navigation

To navigate from one plugin to another in the same record, the "Jump To" feature from the contextual menu (right-click on the column's header of the plugin you wnat to jump to) can be used. It's usefull as it will quicly re-focus the Tree Panel on the record in the plugin jumped to, allowing to check which other records from this plugin and GRUP could need the same attention. The currently focused plugin containing the visualized record can be checked by looking at the Navigation bar.

To vizualize the content of a record referenced in a record detail, use Ctrl  +Left Click. This will refresh the View tab to display this record's data, and focus the Tree View on this record. To quicly come back to the previous record view, use the previous button from the Navigation Bar.

Referenced Tab

Footer

On the left of the footer is displayed the last line of Information you can find under the "Information" tab in the right pane. On the right is a quick link to access TES4Edit's flattr page, which allow donation to ElminsterAU.


Record structure in TES5 Skyrim

Navigation, Reading and Analysis

Tree Panel

Details View Panel

Reference Panel

Spreadsheet Panels

Filters

Using xEdit functionnalities

Load Order functions

Plugin functions

Record functions

View Panel functions

Errors and general Informations

Using customs scripts

References

Official Links

  • TES5Edit Nexus Page : Nexus Page, include official release download link.
  • TES5Edit Github repository : Official repository for the project. Include download for official release, developer release, documentation, scripts, ...

Documentation

  • TES5Edit CreationKit Wiki Page : Original wikipage on the CreationKit wiki. While mostly exact, the page isn't up to date.
  • FO3Edit Training Manual : Nexus Page hosting Miax's guide to xEdit. While not up to date, and originally intented for the Fallout 3 version of xEdit, this is still one of the most comprehensive guide available on xEdit.

Related Forums and Threads