Wrye Bash is a powerful mod management utility for TES IV: Oblivion and TES V: Skyrim. Its features include:
Wrye Bash can appear daunting at first. To help make it more manageable, the documentation has been split into a few readmes that are targeted towards different usage requirements.
This readme covers only the most commonly used features, so that the average user can start using Wrye Bash without being overwhelmed. Information on the less commonly used features and more technical details of the features covered in this readme may be found in the Advanced Readme. Information on some of the syntaxes and file formats that Wrye Bash uses are found in the Technical Readme. Finally, Wrye Bash's version history is stored in the Version History document.
Modding for Oblivion and Skyrim has a wonderful history of confusing terminology. The list below details some terms commonly used when dealing with mods.
.espextension. It is an acronym for Elder Scrolls Plugin.
.esmextension. It is an acronym for Elder Scrolls Master.
Oblivion.esm, and for Skyrim this is
.bsafile extensions. They can be used to store resource files such as textures and meshes.
dirty edit, which can break the functionality of other mods that require the record in question to have a specific value, but which have that value overridden by an ITM record.
dirty edit. This acronym is generally misused - the UDR acronym is frequently used to refer to the deleted references, rather than their fixed counterparts. For example,
Scan For UDRswill scan for deleted references, not undeleted and disabled references, and BOSS will report the UDR count for a plugin, which is actually the number of deleted references that can be fixed.
This readme will also use the placeholder [Game]. Replace this with
Skyrim depending on which game Wrye Bash is running for. Additional terminology specific to Wrye Bash's functions will be introduced as required. Also, links that are followed by go to pages that are not part of the Wrye Bash documentation.
The simplest way to install Wrye Bash is using the installer, as it installs Wrye Bash and its dependencies automatically. However, the instructions below are provided if a manual install method is preferred.
Note: There are two versions of Wrye Bash available: the Python version and the Standalone version. Both are the same program, but the Standalone version has fewer dependencies and so is recommended for most people.
Windows Vista & Windows 7 users: Windows' User Account Control feature may interfere with the running of Wrye Bash and other utilities. See the File Permissions section for solutions.
Manual Standalone Version Install:
Skyrimdepending on the game) so that the Mopy directory appears in the game folder.
Wrye Bash.exein the new Mopy folder.
Manual Python Version Install:
Skyrimdepending on the game) so that the Mopy directory appears by the game executable. See the Alternative Install Locations if you wish to install to a different directory.
Wrye Bash Launcher.pyw.
The ease with which Wrye Bash can be removed is dependent on how much you use it to manage your modded game.
If none of the above points apply to you, or once you have taken the necessary measures for the points that apply, you can uninstall Wrye Bash by either running the uninstaller, if you used the installer to install Wrye Bash, or delete the following files and folders if you installed it manually.
[Game]\Mopy- If you've edited any localisation files in the
l10nfolder that you want to keep, back them up.
[Game]\Data\Bash Patches- If you've exported any CSV files that you want to keep, back them up.
Documents\My Games\[Game]- Only delete the
People.dat.bakfiles and the
[Game] Mods(in the same folder as [Game]) - The
Bash Installersfolder stores the mods you've installed via BAIN.
Wrye Bash's mod installer is known as BAIN, and is represented by the Installers tab. The first time the Installers tab is opened, a
dialog will appear asking if BAIN should be initialized. If you click
Yes, BAIN will be initialised, which can take some time. After that, the information refresh
performed when the Installers tab is opened is much faster. BAIN's primary function is to install mod packages. BAIN Packages can be
.rar archives or uncompressed directories. Uncompressed directories are called projects while archives are usually called
packages, abusing terminology. When we refer to projects and packages together we will be also using the term installer.
If BAIN is disabled, ie. if you clicked
No on the dialog that was displayed the first time you selected the Installers tab, it can be re-enabled by right clicking on a column header in the Installers tab and selecting Enabled.
When looking at an installer (package or project) BAIN follows some rules to decide what's in there and if it can be installed. In broad lines, BAIN will search for specific directories and file extensions (mod, texture, nif, docs etc). The directories BAIN is aware of, independently of the game, are:
|bash patches||yep, Bash will install files in this folder from packages|
|docs||its contents will be copied inside Data/Docs|
|ini tweaks||ini tweaks inside this will be installed in Data/Ini Tweaks/ - do not include subfolders in ini tweaks/|
|screenshots||its contents will be copied inside Data/Docs
||Vanilla game directory present on all games
|meshes, music, textures, video|
|Game||Extra Game Directories||Bonus Directories (tools or modders)|
|Oblivion||distantlod, facegen, fonts, menus, shaders, sound, trees||_tejon, ini, obse, pluggy, scripts, streamline|
|Skyrim||dialogueviews, grass, interface, lodsettings, scripts, seq, shadersfx, sound, strings||asi, ini, skse, skyproc patchers|
|Fallout 4||interface, lodsettings, materials, misc, programs, scripts, shadersfx, sounds, strings, vis||f4se, ini|
There are, loosely speaking, three types of BAIN-compatible package structures:
|Simple||Installer has .esp, .esm and/or .bsa files, and/or any of the standard game subdirectories at the top level of the package/project.|
|Complex||Installer has top-level subdirectories that each have a simple structure (as defined above). The top level subdirectories (known as subpackages) must not have the same name as any of the regular game subdirectories for this game. Each top-level subdirectory will be treated as a sub-package, and can be independently activated or deactivated as desired.|
|Complex/Simple||A complex installer with only one top-level subdirectory. It is treated as a simple installer, starting at this top level subdirectory. Examples include mods packaged with a top-level Data directory.|
You must dump your installer in
Bash Installers directory which is created the first time Bash runs inside the
"Game" Mods directory. This directory is by default
created on the same level as your game directory (that is if your game exe is located in "C:\GAMES\TESIV\Oblivion" then by default Bash will create the "C:\GAMES\TESIV\Oblivion Mods\"
directory on first run, but you can point Bash to create this "Game" Mods directory wherever you want (or point it to an existing one) via the
sOblivionMods ini setting. Do
not however put it inside the game Data directory, as the game may well be confused and scan it adding to performance, mods thrashing and whatnot. To add an installer to the Bash
Installers dir it's enough to drag and drop it on the installers list.
Bash will scan the Bash Installers directory and pick up all subfolders and all
.rar archives - except for:
--will be skipped
Bain Converterssubdir of Bash Installers will be skipped
bashwill be skipped
Now BAIN will try to classify the packages it detected in Bash Installers into its package formats - if it fails the package will display as unrecognized and will have to be restructured.
The easiest way to tell if a package needs manual converting to be compatible with BAIN is to try installing it. If it is listed in the Package list with a grey checkbox and name, then BAIN cannot install it. Due to BAIN's flexibility, many mods are already packaged in ways that are compatible, but for those that are not, there are a few possible cases:
.omod). These mods are intended for installation with the Oblivion Mod Manager or Nexus Mod Manager. Such mods usually have a non-OMOD download option: if one is available, download that instead as it is more likely to be compatible. Otherwise, OMOD files can be converted to Projects automatically by dragging and dropping them into the Installers tab.
.exe). This is very rare, as mods do not require the complexity of executables, and the greater security risk executables represent makes their use unpopular. BAIN cannot install mods distributed in this way: often the only way to install them is to run the executable. You can often run the installer, installing to a dummy folder, and then repack the
installedfiles into a BAIN-compatible format.
If an archive has a BCF, it can be converted for installation with BAIN using the following instructions.
[Game] Mods\Bash Installers\Bain Converters. Also ensure that the archive(s) it converts is/are in
[Game] Mods\Bash Installers.
sourcepackages) and right click on the selected file(s) to bring up the context menu, and select Conversions to open the sub-menu.
If a package is unrecognised by BAIN and has no associated BCF, its contents will have to be rearranged so that the structure matches one of the three types of BAIN-compatible package structures.
Packages must first be placed in the
[Game] Mods\Bash Installers directory. This can either be done via Windows Explorer, or by dragging and dropping the package into the Wrye Bash window when the Installers tab is open. If you drag and drop, you will be asked whether you want to copy the package or move it.
If a package contains a Wizard (ie. there is overlaid on its checkbox):
Applybutton to apply its selections. The Wizard window may need to be resized for the
Applybutton to become visible.
If a package has a Simple or a Complex/Simple structure:
Esp/m Filterbox to the far right of the package list. Checked plugins will be installed, while unchecked plugins will be skipped.
If a package has a Complex structure:
Sub-Packagebox to the right of the package list. Checked sub-packages will be installed, while unchecked sub-packages will be skipped.
Esp/m Filterbox to the far right of the package list. Checked plugins will be installed, while unchecked plugins will be skipped.
If you install a package then later change the sub-packages or esp/m files selected, you can apply these changed by right-clicking the package in the list and selecting Anneal. A Wizard provides a scripted installation method that can be useful for more complex mods with many options.
When a package is installed, BAIN installs any files that appear to be documentation into the
Data\Docs folder. Any files that are simply named
readme (eg. readme.txt, readme.html, readme.doc) will be renamed according to the package name to prevent packages overwriting each other's readmes.
To uninstall any package from the Installers tab select the package and right click on it, then select Uninstall. This will uninstall all Matched files. However, BAIN will not uninstall Mismatched files. A Mismatched file is a file that has been altered after it was installed. The reason BAIN does not uninstall Mismatched files is BAIN has no way of tracking the source of the alteration if it was not done through BAIN. For example, if the file was altered because it was replaced by another mod that was installed manually, then uninstallation of the Mismatched file may not be desirable. On the other hand, if the file was altered because it was cleaned or edited with TESxEdit, or because it was an ini file that was edited with a text editor, then it may be desired to uninstall the Mismatched file along with the package that it came from. Such files could be deleted from the data folder manually, but there is an easy way to do this through BAIN. Before uninstalling the mod, first select the package and right click on it, then select Install. This will overwrite any Mismatched files with the version of the file contained in the package, making them Matched. Now select Uninstall and BAIN will uninstall all installed files associated with this package. You can also uninstall packages that BAIN hasn't installed, which will remove any installed files that match the ones in the package. This is useful for cleaning out mods that were manually installed. Of course you need to add the packages to BAIN first. Uninstalling via BAIN respects the ownership of files, ie. uninstalling a mod that contains files also installed by a mod listed lower in the installation order will not uninstall the lower mod's files. See the next section, BAIN Package Order for more on this. However, if the Auto-Anneal option is enabled (the default), then files from other packages previously overridden by the uninstalled package's files will be automatically restored.
The install order of packages in BAIN is important as this decides which mod gets its files installed in the case of resource conflicts. Packages may be listed in install order by left-clicking on the
Order column header. If two mods try to install the same file, then the mod lower down in the list will have its file overwrite the file of the mod higher up in the list.
The order of sub-packages within a package follow the same rules as packages. Checked sub-packages lower in the sub-package list will overwrite conflicting content from sub-packages above them.
Package conflicts are detailed in the
Conflicts tab to the right of the package list when you select a package. This tab tells you which packages have which files that conflict with files in your currently-selected package. It gives this information for packages both above and below the selected package in the package list.
BAIN allows you to easily adjust the conflict status of packages by moving their order around. This can be done by dragging and dropping packages within the list, or by right-clicking packages and selecting the Move To... option. You can also select multiple packages and move them, in which case they will be moved as a group, retaining their order relative to one another in their new location. A third option is to select the package(s) and use Ctrl-Up or Ctrl-Down to move them up or down respectively.
BAIN uses the colours of packages in the package list and the state of their checkboxes to convey information about their status to the user. A checkbox state may be combined with any checkbox or text colour, and the possible states and colours are described in the tables below.
Note: Installed packages are marked with a plus, eg. . Corrupt or incomplete packages are marked with a cross, eg. . Packages that begin and end with
==Last==, are marker packages. They don't represent an archive or folder and so contain no files, but may be used to organise the package list.
|The package is a Project, ie. a directory rather than an archive.|
|The package is an archive.|
|All the files in the package are installed as configured.|
|Some or all of the files in the package are not installed as configured.|
|All the package files are installed, but the .esp/.esm plugins are not identical (eg. another package has overwritten them with another version of the plugins).|
|All the package files are installed, but some resource (ie. non-plugin) files are not identical (eg. another package has overwritten them with another version of the files)|
|The package, as configured, has no files to install. This can happen for complex packages where none of the sub-packages are selected for installation.|
|BAIN does not recognise the structure of this package so cannot install it.|
|Navy Blue||The package contains sub-packages.|
|Grey||BAIN does not recognise the structure of this package so cannot install it.|
|Orange Background||The install is dirty. This will occur for packages for which the configuration has been altered (either by altering active sub-packages and esmps, or by altering the package itself). This can be repaired by running Anneal or Anneal All.|
|Yellow Background||The package has "underrides" i.e. some of its installed files should be overridden by higher order packages. This may happen after reordering mods that have already been installed. It can be repaired by running Anneal or Anneal All.|
|Grey Background||Some files present in the package will not be installed. This can be due to having a complex structure only partially handled by BAIN, or having file types that BAIN skips. This can sometimes be fixed by telling BAIN that the package Has Extra Directories by ticking that option in the right-click menu.|
The following commands found in the package and column header context (ie. right-click) menus are often useful for many users.
|Column Header Context Menu|
|Open...||Opens the Installers directory in Windows Explorer.|
|Refresh Data||Re-scans the Data directory and all project directories. This is done once per run of Wrye Bash, when the Installers tab is first opened. If you manually alter the directories after that, you should run this command to update BAIN to reflect the changes. BAIN refreshes itself automatically if changes are made to packages in the Bash Installers directory.|
|Add Marker...||Creates a marker for organising your packages. The |
==prefix and suffix will be added for you.
|List Packages||Displays a list of projects and archives and copies the list to your clipboard. This is useful for posting your package order on forums, eg. when troubleshooting an install.|
|Uninstall All Packages||Uninstalls all the packages in the package list.|
|Clean Data||Removes files from the Data folder that are not from one of the following sources:
|Anneal All||Installs any missing files for active installers and corrects all install order errors.|
|Unhide...||Opens a dialogue window allowing you to select which hidden packages to unhide.|
|Skip OBSE Plugins||Oblivion only. If this is checked, files in the Data\OBSE\Plugins folder will not be installed.|
|Skip SKSE/Script Dragon Plugins||Skyrim only. If this is checked, files to go in the Data\SKSE\Plugins or Data\asi folder will not be installed.|
|Package Context Menu|
|Open...||Opens the selected package(s) in the file system.|
|Duplicate...||Makes a duplicate of the selected package(s).|
|Delete||Deletes the selected package(s). Deleted packages are not sent to the Recycling Bin, they are permanently deleted.|
|Open At...||Attempts to open the selected package's page on the selected site. If Google is selected, performs a Google search for the package name. For the other three sites, this command assumes that the trailing digits in a package's name is the package ID at the sites. If this assumption is wrong, a random page, or an error page, will be opened.|
|Hide||Hides the selected package in the list, and moves it to the |
|Rename||Renames the selected package or marker.|
|Refresh||Refreshes all info for the selected package(s). Since BAIN refreshes package information whenever Wrye Bash regains focus after losing it (ie. you select another program's window, then switch back to Wrye Bash), this is only useful if a package has been changed and it has Don't Refresh selected, or the Auto-Refresh Projects option is disabled. Note that scanning a project for changes takes much longer than scanning an archive for changes.|
|Move To...||Moves the selected package(s) to the specified position.|
|Open readme||If BAIN detects a readme in the package, it will be opened.|
|Has Extra Directories||BAIN only recognises a limited set of subdirectories of the Data folder, and skips any unrecognised subdirectories. Checking this option will cause BAIN to install unrecognised subdirectories.|
|Wizard||Runs the Wizard for the package, if it has one.|
|Auto Wizard||Runs the Wizard for the package, if it has one, selecting the default options.|
|Anneal||Installs missing files and corrects install order errors according to the package configuration.|
|Install||Fully installs the package as configured except for files that would be overridden by later packages.|
|Uninstall||Uninstalls the package. If Auto-Anneal is active (the default) then files from earlier packages that were previously overridden will be installed as required.|
|Conversions||Apply||Applies a BAIN Conversion File.|
|List Structure||Generates a list of the files and directories in a package. Useful for posting package structure on forums, eg. when troubleshooting an install.|
Wrye Bash displays your installed plugins in its
Mods tab. Your load order of active installed plugins, which Wrye Bash marks with a
ticked checkbox, is important as it decides what plugin 'wins' any conflict between plugins, with later loading plugins overriding those
that change the same thing. Load order is not the same thing as BAIN install order! Install order determines which mods' files overwrite
other mods' files when they conflict. Load order determines which plugins' effects override other plugins' effects in-game when they conflict.
Although in general "Load Order" stands for the load order of the active plugins, all installed plugins have a load order assigned to them. In Oblivion this is based on the modification time of the plugin, in Skyrim based to an agreed upon text-file based standard, while Fallout 4 finally dumps all installed plugins in its plugins.txt, marking active ones with an asterisk. Bash needs plugins load order even for inactive plugins to correctly merge inactive mods in the bashed patch, among others.
Plugins may be activated by clicking their checkbox so that it is ticked, or by selecting a plugin or group of plugins and pressing the space bar on your keyboard. Plugins may be deactivated by again clicking their checkbox or pressing the spacebar. If a group of selected plugins contains a mix of active and inactive plugins, pressing the space bar once will activate them all, thereafter it will function as normal.
Some plugins are explicitly dependent on other plugins - they have these plugins as
masters. When a plugin is activated, its masters are also activated. Conversely, when a plugin upon which other plugins depend is deactivated, those plugins are also deactivated.
When setting the load order, make sure that Wrye Bash is displaying your plugins sorted by Load Order. Do so by clicking on the
Load Order column header near the top of the tab. You can also display the plugins sorted by other attributes by clicking on any of the other column headers. Clicking twice will reverse the display order for any column but Load Order. The load order of plugins is given in hexadecimal digits, from 00 to FE, which is 0 to 254 in decimal. (This number also forms the first two digits of a record's Form ID.)
Note that you can only have a maximum of 255 plugins active at any one time, including your game's master file (eg. Oblivion.esm, Skyrim.esm).
Wrye Bash displays a plugin count in its status bar, to the right hand side, in the format
Setting up a correct load order that minimises detrimental conflicts that could cause issues in-game can be a difficult and time-consuming process. Effective load-ordering often requires a knowledge of what each plugin in your load order contains so that you can position the plugins to minimise these conflicts. For simple mods, the description in the mod's readme will usually be sufficient to determine the records it contains, but to be sure a utility such as TES4Edit is required.
BOSS can be used to greatly simplify the process of setting the load order, as it can correctly position thousands of plugins automatically. However, you may still need to order some plugins manually.
Wrye Bash provides a number of ways for you to set up your load order:
When running Wrye Bash, you can also lock your load order in place to prevent unintended changes to it by selecting the Lock Load Order option in the column header right-click menu. Note that this will prevent other utilities from changing the load order, so uncheck this option if you use such a utility to set your load order. If you use BOSS to manage your load order and you also use Lock Load Order, ensure BOSS Disable Lock Load Order is also enabled to allow BOSS to function correctly.
Note that for Skyrim Wrye Bash will automatically undo any changes to load order done made by the Skyrim launcher or any utility that does not follow the textfile-based load order standard in order to maintain a fully coherent load order. This effectively means that unintended changes are prevented.
Launch Using GUI toggles the use of the command line interface for BOSS with the BOSS GUI. Giving quick and easy access to the additional features the GUI provides such as the
Edit User Rules option.
Bash features a sophisticated undo/redo load order feature, comprising both load order changes of active or inactive
plugins and activating/de-activating plugins. Whether you activate a plugin, drag and drop it in another position, deactivate a
plugin (having its children deactivated too) etc, you can always hit
Ctrl+Z while the list of mods has focus to undo
the operation or
Ctrl+Y to redo it. Bash keeps the load orders (meaning total load order of all installed plugins
and active state of the plugins) in its internal structures and will persist those on disc on shutting down,
My Games\<Game>\BashLoadOrders.dat, so you can undo/redo on restarting Bash.
The undo/redo feature will try to preserve as many load orders as possible - so unlike undo/redo in other applications if you have an initial load order state A then change it to B, then hit undo (so you are back on state A), then change it to C Bash will keep in its internal structures the load order states A C B while most other applications would end up with A C. Undo/redo load order state is a relatively new feature (available in 307 beta) so it may have rough edges.
Like in the Installers tab, Wrye Bash uses colour-coding and other formatting effects to convey information about the state of plugins. The different types of formatting used and their meanings are explained here.
|Plugin is active.|
|Plugin is merged into an active Bashed Patch.|
|Plugin is imported into an active Bashed Patch.|
|Plugin is not active, merged or imported.|
|The plugin's masters are all in exactly the same order as is specified in the plugin.|
|The plugin's masters are in the same order as is specified in the plugin, but their precise positions are different (ie. there are other mods between them). This is not an issue, and can be considered to be just as good as having a blue checkbox.|
|Some of the plugin's masters are in a different order than what is specified in the plugin. This will generally be handled automatically by the game, but it may result in changes in-game.|
|One or more of the plugin's masters is missing. This will generally cause the game to crash on startup, and must be corrected.|
|Blue text||A .esm plugin.|
|Green text||A mergeable plugin.|
|Purple text||A plugin that should not be merged (ie. tagged with NoMerge).|
|Pink background||Oblivion only. A plugin that shares its modification date with another plugin. Not a problem unless both plugins are active.|
|Red background||An active plugin that should remain deactivated (ie. tagged with Deactivate) or, for Oblivion only, an active plugin that shares its modification date with another active plugin. This must be corrected so that they have different modification dates or else it may break your load order.|
|Orange background||An exclusion group violation. This should be corrected.|
|Grey background||A ghosted plugin.|
|Slanted text||A plugin that is recommended to be imported and deactivated (ie. tagged with Deactivate).|
|Underlined text||A plugin identified as having dirty edits (Identical to Master, Deleted References, or otherwise necessary cleaning).|
The context menus for the column headers and plugins contain a large number of commands, most of which are unlikely to be of use to the average user so are not detailed here.
|Column Header Context Menu|
|File||New Bashed Patch...||Creates a new Bashed Patch plugin. Useful if you accidentally delete your current one or wish to have more than one.|
|List Mods||This lists the load order, including version information, activation status and major load order errors. It can be useful for debugging a broken load order. If the 'c' keyboard key is pressed when this command is selected, the CRCs of plugins will also be displayed in the output.|
|List Bash Tags||This lists all the Bash Tags applied to the plugins in your load order, and where/how the Bash Tags were specified. It can be useful for debugging a broken load order.|
|Auto-Ghost||The Oblivion game engine has a bug where it reads all the plugins in the Data folder,
and this can affect performance when the number of plugins is around 300+. In Skyrim there is a different problem, namely if you have over
508 mod files in your data directory, the engine just plain refuses to load any of them, active or not (see here:
http://forums.bethsoft.com/topic/1369136-thrashing-thread-1/?hl=+508). Auto-Ghosting adds a |
.ghostextension to all inactive plugins automatically to prevent the game engine reading them, and so helping to avoid the performance drop. When a ghosted plugin is activated, the
.ghostextension is removed, allowing it to function as normal. Note that most other utilities will not recognise ghosted plugins, so there are options available for individual plugins to control which get ghosted. Bash displays a warning if a lot of mods and BSAs are detected that you can disable via the ini.
|Lock Load Order||This prevents other utilities from altering plugin modification times. More accurately, it detects changes to modification times when Wrye Bash starts or is focused (ie. on top of all other program windows) and reverses those changes.|
|Plugin Context Menu|
|List Masters...||Outputs a list of the selected plugin's masters.|
|List Bash Tags...||Outputs a BBCode-formatted list of all the Bash Tags applied to the selected plugin, and where/how the Bash Tags was specified. It can be useful for debugging a broken load order.|
|Create BOSS Report...||Outputs the plugin filename, CRC, and ITM/UDR count for easy reporting of the plugin to an official BOSS thread.|
|Copy Mod Info...||Outputs a report on the selected plugins(s) with the info from the currently displayed columns.|
|Don't Ghost||Don't ghost this plugin when it is inactive, even if Auto-Ghost is enabled.|
|Ghost||Ghost this plugin when it is inactive even if Auto-Ghost is disabled.|
|Rebuild Patch...||Rebuild the selected Bashed Patch using the Python patcher.|
|Rebuild Patch (CBash *Beta*)...||Oblivion only. Rebuild the selected Bashed Patch using the CBash patcher.|
A Bashed Patch is a configurable plugin with three main functions:
A Bashed Patch is created by Wrye Bash the first time you run it, with the plugin being called
Bashed Patch, 0.esp. It is configured using the plugin context menu commands Rebuild Patch... or Rebuild Patch (CBash *Beta*).... You should rebuild your Bashed Patch every time you change your load order, before playing the game. The Bashed Patch should be last in your load order, unless you have plugins that explicitly state that they must load last.
The configuration dialog consists of a list of major sections to the left, and the contents of the selected section to the right, with the build and save buttons at the bottom. The sections and their items have checkboxes: checking a section will include all its checked items in the Bashed Patch. Unchecked sections and items will not be included. Some sections don't have any items, and so just need the section checkbox checked.
A short description of each section and some items is displayed near the bottom of the window if the section/item is hovered over. Bolded items are new since the last time the Bashed Patch was built. Wrye Bash will try to auto-configure most sections, but some will still need tweaking.
Note: There are currently two methods of building a Bashed Patch. One uses Python, and the other uses CBash, which is a software library written to speed up the reading of plugins. Both methods offer the same options. The CBash method is faster and allows more types of plugin to be merged, but contains some bugs as CBash is still a work in progress. CBash will become the default in the near future, once its bugs have been fixed. For now, it is probably safer to use the Python method.
|Bashed Patch Configuration Buttons|
|Build Patch||Builds your Bashed Patch with the current configuration.|
|Select All (next to section list)||Selects all the options/plugins in a section list. If an option has multiple possible values, the first value in the value list will be chosen.|
|Deselect All (next to section list)||Deselects all the options/plugins in a section list.|
|Select All (at bottom of window)||Selects all sections, and all the options/plugins in all sections. If an option has multiple possible values, the first value in the value list will be chosen.|
|Deselect All (at bottom of window)||Deselects all sections and all the options/plugins in all section list.|
|Revert To Default||Reverts your Bashed Patch to its default configuration.|
|Revert To Saved||Restores the last saved configuration of your Bashed Patch, undoing any changes since you last built it.|
|Export||Saves your Bashed Patch's configuration into an external file for backup.|
|Import||Restores your Bashed Patch's configuration from an exported patch configuration.|
Plugins that contain only certain types of data records can be merged into the Bashed Patch. This then allows these plugins to be deactivated, freeing up space in your load order.
If you're merging plugins in, you do not need the plugins active to do so. In fact, trying to merge them in Bash will 1 - ask you to deactivate them before hand, and 2 - deactivate them even if you refused that prompt after the Bashed Patch has been created. So if you're merging plugins, leave them inactive before building, then select to merge them in the Bashed Patch build dialog. Don't worry, all the algorithms for the rest of the patchers still work as you'd expect on plugins merged this way.
You should check the checkboxes of all the plugins listed in the
Merge Patches section, and ensure the section is checked too.
Do not remove merged mods from your Data folder. They will need to be present when you next rebuild your Bashed Patch.
Plugins can be tagged with Bash Tags that tell Wrye Bash that they contain certain changes that should be preserved even if another mod also changes the same things. This is usually because the changes are important to the functionality of the mod. Wrye Bash then allows you to choose which plugins should have which types of changes preserved, by selecting from the various Import sections when building a Bashed Patch.
If a section's description in the table below begins with
Preserves and two or more mods in its list change the same thing, then the later-loading plugin will override the other plugin(s). Otherwise changes are merged.
|Section||Description||When You Should Use It|
|Import Actors||Oblivion only. Preserves changes made to actors (ie. NPCs and creatures) by the mods selected.||Always, unless you are told otherwise by a mod's readme.|
|Import Actors: AIPackages||Oblivion only. Merges the changes made to actor AI packages by all the mods selected.||Always, unless you are told otherwise by a mod's readme.|
|Import Actors: Animations||Oblivion only. Merges the changes made to actor animations by all the mods selected.||Always, unless you are told otherwise by a mod's readme.|
|Import Actors: Death Items||Oblivion only. Preserves the changes made to the items added to an actor when it dies by the mods selected.||Always, unless you are told otherwise by a mod's readme.|
|Import Actors: Spells||Oblivion only. Preserves the changes made to the spells actors have by the mods selected.||Always, unless you are told otherwise by a mod's readme.|
|Import Cells||Oblivion only. Preserves the changes made by the mods selected to cell settings such as lighting, climate, music, name, owner, water and more.||Always, unless you are told otherwise by a mod's readme.|
|Import Factions||Oblivion only. Preserves the changes made to the factions an actor belongs to by the mods selected.||Always, unless you are told otherwise by a mod's readme.|
|Import Graphics||Oblivion only. Preserves the changes made by the mods selected to various textures and models throughout the game.||The decision is entirely based on user preference. Choose whichever mods' graphics you prefer.|
|Import Inventory||Oblivion only. Merges the changes made to the items in an actor's inventory by all the mods selected.||Always, unless you are told otherwise by a mod's readme.|
|Import NPC Faces||Oblivion only. Preserves the changes made to NPC faces by the mods selected.||The decision is entirely based on user preference. Choose whichever mods' NPC faces you prefer.|
|Import Names||Oblivion only. Preserves the changes made to various names throughout the game by the mods selected.||The decision is entirely based on user preference. Choose whichever mods' names you prefer.|
|Import Relations||Oblivion only. Preserves the changes made by the mods selected to how factions interact.||Always, unless you are told otherwise by a mod's readme.|
|Import Roads||Oblivion only. Preserves the changes made by the mods selected to the landscape's roads.||Always, unless you are told otherwise by a mod's readme.|
|Import Script Contents||Oblivion only. Copies scripts from the selected mods into the Bashed Patch.||Never.|
|Import Scripts||Oblivion only. Preserves the changes made by the mods selected to the scripts attached to things in the game.||Always, unless you are told otherwise by a mod's readme.|
|Import Sounds||Oblivion only. Preserves the changes made by the mods selected to various sounds in the game.||The decision is entirely based on user preference. Choose whichever mods' sounds you prefer.|
|Import Spell Stats||Oblivion only. Preserves the changes made by the mods selected to items in order to fix bugs or rebalance them.||Always, unless you are told otherwise by a mod's readme. There is an element of user preference, for instance if you are using several mods that overhaul spell stats. In such cases, choose whichever mods' stats you prefer.|
|Import Stats||Oblivion only. Preserves the changes made by the mods selected to spells in order to fix bugs or rebalance them.||Always, unless you are told otherwise by a mod's readme. There is an element of user preference, for instance if you are using several mods that overhaul item stats. In such cases, choose whichever mods' stats you prefer.|
The Bashed Patch lets you independently tweak a large number of game settings. Each tweak has a description that is visible when you select it. Some tweaks have several possible values, with the current value given in [square brackets] in the tweak name. Right-clicking these tweaks will display a menu from which you can selected a different value. The tweaks are catagorised into different sections.
|Section||Description||When You Should Use It|
|Tweak Actors||Oblivion only. Allows you to change a number of the game's settings relating to actors (ie. NPCs).||The decision is entirely based on user preference.|
|Tweak Assorted||Oblivion only. Contains a set of miscellaneous tweaks to the game.||The Bow Reach Fix and Nvidia Fog Fix are recommended for all users, as they fix bugs that may be uncovered by mods. The DarNified Books option is recommended for users of DarNified UI. Other than those, the decision is entirely based on user preference.|
|Tweak Clothes||Oblivion only. Contains a set of tweaks that changes settings relating to the game's clothing.||The decision is entirely based on user preference.|
|Tweak Names||Oblivion only. Contains a set of tweaks that changes the names of things in the game. Most change the names to change how they are sorted in your inventory.||The decision is entirely based on user preference.|
|Tweak Settings||Oblivion only. Contains a set of tweaks that changes various global and non-global game settings.||The UOP Vampire Aging and Face Fix.esp tweak is recommended for all users. Otherwise, the decision is entirely based on user preference.|
The Bashed Patch also gives you a number of other sections providing additional functionality besides the above merging, importing and tweaking. These options are described below.
|Section||Description||When You Should Use It|
|Alias Mod Names||Allows Wrye Bash to recognise some common renamings of plugins that are referenced in .csv data files that it imports as part of some Bashed Patch sections. Renamings should be listed in the text box for this section. The format is ||If you have renamed a plugin that is referenced in a CSV file you have selected in the Bashed Patch's configuration. It is recommended that you refrain from renaming plugins, as it can break parts of Wrye Bash and other utilities.|
|Replace Form IDs||Oblivion only. Replaces a set of formIDs with another set of formIDs defined by a .csv file.||If you use a mod that tells you to use it.|
|Cobl Catalogs||Oblivion only. Updates Cobl's ingredient and effect catalogs to take into account those added by mods you use.||If you use Cobl (a.k.a. Common Oblivion).|
|Cobl Exhaustion||Oblivion only. Updates greater powers added by the mods that are listed in the selected .csv file options so that they're compatible with Cobl's Exhaustion feature.||If you use Cobl's Exhaustion feature.|
|Contents Checker||Oblivion only. Checks that leveled lists and inventories contain the correct types of entries, and removes any incorrect entries.||Always.|
|Leveled Lists||Merges changes made to leveled lists by mods to increase compatibility between them.||Always. If you don't have any mods that alter leveled lists, the option won't do anything, in which case it doesn't hurt to have it enabled.|
|Morph Factions||Oblivion only. Updates factions so that they are more likely to work with Wrye Morph.||If you use Cobl and Wrye Morph.|
|Power Exhaustion||Oblivion only. This is an option provided for backwards-compatibility only and was deprecated then finally removed in Wrye Bash v296. Users of Power Exhaustion should upgrade to Cobl and use its Exhaustion feature instead.||Never.|
|Race Records||Oblivion only. Some mods make changes to races and want those changes to be preserved even if another mod changes the same race. This ensures that those changes are kept. It also checks for and fixes various errors such as googly eyes and missing hair or eyes. It also has a section of race tweaks which the user can select as desired.||Always, even if there are no mods listed on the right.|
|SEWorld Tests||Oblivion only. Fixes quests that aren't suspended while your character is in the Shivering Isles. This doesn't apply to mod-added quests, it only restores suspension to vanilla quests where mods have removed it.||Always. If you don't have Shivering Isles, the option won't do anything, in which case it doesn't hurt to have it enabled.|
The Ini Edits tab allows the user to quickly apply edits to Oblivion.ini or Skyrim.ini, depending on your game, and mod-added ini files, including those containing scripts used to configure mods. Edits are applied from ini tweak files, which are just a text file that contains only the lines of the ini that you wish to change. Ini tweaks are stored in the
Data\Ini Tweaks folder, and may be installed through BAIN or placed there manually.
The drop-down box allows you to select the current ini file. The
Browse... option in the drop-down box can be used to select an ini file not listed.
Selecting a tweak will display its contents in the middle column, and highlights the changes it applies to the current ini file in the right column. To apply a tweak, right click it and select Apply.
Warning: Incorrect Oblivion.ini or Skyrim.ini settings can cause bugs, CTDs or other damage to your game. Advanced settings in particular tend to be machine-specific and should not be casually copied from one computer to another.
|Some or all the variables the tweak sets do not exist in the current ini file.|
|The variable values in the current ini file do not match the values set by the tweak.|
|Some, but not all, of the variable values in the current ini file do not match the values set by the tweak.|
|Some, but not all, of the variable values in the current ini file do not match the values set by the tweak. The values that don't match another tweak from the same installer.|
|Tweak is applied.|
|Orange Background||The specific heading or tweak is invalid for the current ini file.|
|Yellow Background||The specific variable value does not match the value in the current ini file.|
|Green Background||The specific variable value matches the value in the current ini file.|
|Ini Edits Tab|
|Remove||Removes the current ini file from the drop-down selection box.|
|Edit...||Opens the current ini file for editing in the default text editor.|
|Column Header Context Menu|
|Sort By||This submenu allows you to choose by which column the save list is sorted. This is equivalent to clicking on a column header.|
|Columns||This submenu allows you to choose which columns are visible in the save list.|
|Allow Tweaks with New Lines|
|List Active INIs...|
|Tweak Context Menu|
|Apply||Applies the tweak to the current ini file.|
|Create Tweak with current settings...||Creates a new tweak with the same settings as the selected tweak, but uses the values in the current ini file.|
|List Errors...||If the tweak is invalid, this will show you which entries in the tweak don't exist in the current ini file.|
|Open...||Open the tweak for editing in the default text editor.|
|Delete||Delete the tweak.|
At the bottom left of Bash's main window you'll find launch buttons for your game and other applications if they're installed. You'll also find a few toggle buttons and some Wrye Bash feature buttons. Each of the application buttons will be present if the corresponding application is present in the game install directory, or in their default install location if the application is not game-specific.
Clicking an application's icon will launch it, and clicking a toggle button will change the state of the toggle. Clicking a Wrye Bash feature button will open that feature's window.
|Icon (On)||Icon (Off)||Toggles||Behaviour|
|Script Extender||When checked this will launch the game's Script Extender when either the game or game's editor (Construction Set or Creation Kit) buttons are clicked. If the LAA Launcher also launches the game's Script Extender, then unchecking this toggle will also uncheck the LAA Launcher toggle.|
|LAA Launcher||When checked this will launch the LAA Launcher when the game button is clicked. If the LAA Launcher also launches the game's Script Extender, checking this will also check the Script Extender toggle.|
|Auto-Quit||If checked this will cause Bash to quit when launching the game. This is useful if you're concerned about memory usage.|
The game and editor icons displayed will depend on which supported game you have Wrye Bash installed for. Using Wrye Bash's game launcher opens the game itself, rather than the game's launcher.
|TES Construction Set||Skyrim Creation Kit|
Tes4Edit, Tes4Trans and Tes4view are just different modes of Tes4Edit.exe and will be available if Tes4Edit.exe is available. Tes4Gecko & Oblivion Book Creator will be available if the windows path variable
JAVA_HOME points to a valid java install (or the javaw.exe is present in Windows\System32) and their .jar file is present in Oblivion install directory or for OBC in the data directory (you can override those default paths in bash.ini). The BOSS launcher has some options if BOSS v2 is installed:
BOSS Disable Lock Load Orderwill cause Wrye Bash to temporarily disable Lock Load Order when BOSS is run from its application launcher in the status bar, to allow BOSS to set the load order, re-enabling it after BOSS has finished running. It has no effect when BOSS is run from outside Wrye Bash, or when Wrye Bash is running for Skyrim.
Launch BOSS GUIwill cause Wrye Bash to launch BOSS's GUI instead of its command line interface.
|Oblivion Mod Manager||BOSS|
|Insanity Sorrow's Oblivion Launcher|
|Insanity Sorrow's Readme Generator|
|Insanity Sorrow's Random Name Generator|
|Insanity Sorrow's Random NPC Generator|
|Oblivion Face Exchange Lite|
|Oblivion Mod List Generator|
|Oblivion Book Creator|
|Interactive Map of Cyrodiil and Shivering Isles|
|Model Tools||Texture Tools||Audio Tools||Misc|
|Art of Illusion||AniFX||Audacity||Fraps|
|AutoCad||Artweaver||ABC Amber Audio Converter||Logitech G11 Keyboard Profiler|
|3ds Max||Dogwaffle||EVGA Precision|
|Softimage Mod Tool||Gimp Shop||Filezilla|
|Treed||Inkscape||RAD Video Tools|
|Nifskope||FastStone Image Viewer|
|PaintShop Photo Pro|
|Photobie Design Studio|
|Pixel Studio Pro|
|Windows Texture Viewer|
|BashMon||Oblivion only. This launches bashmon.py in a command shell window, for use with Wrye Morph.|
|Doc Browser||Show the Doc Browser. (You can also view the doc browser by double clicking on any mod file in the Mods tab.)|
|Mod Checker||Show the Mod Checker.|
|Settings||Brings up the Settings Menu.|
|Help||Show this help file in the default web browser.|
To do this find and Right Click on a tools .exe file, and choose send to desktop
Copy this Icon from the desktop and paste it into the Mopy \ Apps \ folder ( The temporary desktop icon copy can now be deleted )
When you next run Wrye Bash the icon will be in the Launcher Bar, and you can Drag and drop the new icon to a desired position
Be careful not to use up all the available space and prevent tooltip messages appearing next to the Launcher Bar
If Wrye Bash encounters an issue, it will generate a bug dump that will appear in a popup window. If an issue is encountered during startup, Wrye Bash may be unable to create the popup window, and so the bug dump will be saved to a log file, either
Wrye Bash.exe.log depending on the version of Wrye Bash you use. If no log file is present, then you will have to generate it yourself, using the steps below.
cd /D "C:\Program Files\Bethesda Softworks\Oblivion\Mopy"if Wrye Bash is installed for Oblivion.
"Wrye Bash Debug.py" -d > bash.log.
"C:\python27\python.exe" "Wrye Bash Debug.py" -d. This assumes that you have Python 2.7 installed to the default directory. Adjust the above to reference the correct path if not.
"Wrye Bash.exe" -d.
The log file will detail the cause of the problem that is stopping Wrye Bash from starting. Read it and the rest of this section to see if the problem is something you can fix yourself. If not, report it to an official Wrye Bash thread for support.
If you are running Windows Vista or later, Wrye Bash (and other modding programs) may be prevented from working correctly by the UAC security feature. There are four common workarounds to this problem:
Program Files (x86). UAC prevents unauthorised edits to these folders, so by installing the game outside of them, you remove it from UAC's reach, allowing you to use mods more easily. Steam users can move their Steam installation and games using these instructions.
Full Controlpermissions over your game install folder. This will allow you to make any edits you desire while keeping UAC active and on guard for any edits made by programs you do not run, and also means that you do not need to reinstall your game to a new location.
For those that wish to take the third option and give themselves
Full Control permissions, here is a guide:
Properties, select the
Securitytab, and click the
Edit...button. A UAC prompt may appear, simply allow yourself to continue.
Group or user namesbox, select the
Full Controlin the
Allowcolumn. Press OK to exit. If a UAC prompt appears, allow the change.
Propertieswindow, select OK to exit. You should now have Full Control permissions over your chosen folder.
The easiest method is to just run the Backup Settings and/or Restore Settings commands, which are available in the Settings menu. These commands do not backup/restore any mod files or saves, just the Wrye Bash settings/data. When run, the commands ask you for the location you wish to back up to or restore from.
If you wish to manually back up your settings, the directories Wrye Bash stores files in are below.
|[Game]\Mopy||Main Bash files. If you're working on any localisation files in |
|[Game]\Data\Bash Patches||Contains CSV files used by the import/export functions. Back up any CSV files you've exported and want to keep.|
|[Game]\Data\Docs||Contains mod readmes. Doesn't need backing up.|
|[Game]\Data\INI Tweaks||Contains ini tweaks. Only needs backing up if you've added custom ini tweaks.|
|Documents\My Games\[Game]||Contains Wrye Bash settings. It is important to back this up.|
|[Game] Mods (in the same folder as [Game])||Contains BAIN packages and other Wrye Bash settings. it is important to back this up.|
Bugs should be reported in an official Wrye Bash thread (links can be found in the Contact section of this document). In order to best help you, the following information is required.
Wrye Bash, being a complex program, has its share of bugs. Visit our issue tracker for know bugs and enhancement requests. Respect developer's time - keep discussions there short, sweet and technical. No walls of text or forum chit chat.
|Can't find bash.py||Wrye Bash is being run from the wrong directory.||Make sure you are generating the log from the Mopy directory.|
|Can't Find User Directory||The PyWin32 Python module is not installed correctly.||Install the Wrye Python package correctly.|
|Can't Find wxversion||Unknown||Uninstall then reinstall Python and wxPython (in that order).|
|No module named wx||You haven't installed wxPython successfully or you haven't installed it in the right place.||Install the Wrye Python package correctly.|
|The NTVDM CPU has encountered an illegal instruction.||This is a Python issue that causes the installation of PyWin32 (part of the Wrye Python bundle) to fail.||One workaround is to use the Standalone version of Wrye Bash. The alternative is to download PyWin32 separately and install it after installing Wrye Bash.|
|Generating comtypes||Launching Wrye Bash for the first time after installing ComTypes (part of the Wrye Python bundle).||Not an error. Close the popup produced.|
|Memory Error. This causes a debug output like the following to appear.
||This is Wrye Bash running out of memory while trying to save its settings. Usually this will occur when a user has a very large BAIN setup, and it will happen after rebuilding the Bashed Patch. Saving Wrye Bash's settings involves some memory overhead, so usually happens while saving settings.||If you start seeing this error, it means you have enough information in BAIN to push Wrye Bash to the 2GB limit of memory for 32-bit applications. Either:
|Wrye Bash will not start, and no Bug Dump can be generated||Wrye Bash is installed in a directory with unicode characters, and the Python interpreter has problems importing files in such directories.||Reinstall Wrye Bash to a directory without unicode characters.|
|File not found errors||Mapped paths and junction links can confuse Wrye Bash, leading to file not found errors.||Avoid using mapped paths and junction links for your game install.|
Aka. ideas/stuff stolen from other people.
If you have a question/comment about Wrye Bash, it's best to post it on the current RELZ topic on the Bethesda Game Studios (BGS) forums.
Wrye Bash is released under Version 2 of the GNU General Public License. See enclosed license.txt file for license details, or visit the GNU Website for information on all their licenses.
Additionally, Wrye Bash comes packaged with the following programs:
This final section gives a brief summary of what may be found in the Advanced Readme. The some of the topics covered are:
The Advanced Readme is a more technical document aimed more towards mod authors and advanced users of Wrye Bash than the average user. If you find yourself wanting to know more, or not understanding why something in Wrye Bash behaves the way it does, then the answer you seek may be found in the Advanced Readme.