Features

This page attempts to keep track of features added to OpenMW that were not part of the original Morrowind engine.

= Scripting =


 * Stricter compiler and compiler warnings. Error handling in the vanilla MW script compiler was very limited.
 * Function arguments can now be expressions of arbitrary complexity. Vanilla MW would not even allow simple variable arguments for some functions.
 * Arbitrary limitations on code depth/size are not present anymore. For example, there was a limit on how deep you can nest if/endif clauses. And there was also a limit on the length of a if/endif block.
 * Fixed a large number of miscellaneous pitfalls and limitations.
 * Script variable values are stored by name in saved games, so that reordering or adding new script variables in a content file does not cause incompatibilities with existing save files.

= GUI =


 * World map adjusts automatically to fit new landmass from mods such as Tamriel Rebuilt
 * Improved save/load dialogs. Saves are organized by character
 * Improved item selection dialog
 * Improved and resizable alchemy dialog
 * Allow keyboard input for item count dialog and trade window price
 * Improved console (colors, tab completion of commands and object IDs)
 * Copy&paste from system clipboard
 * Various small usability fixes
 * When placing items, irrelevant windows (stats, map and spell windows) will turn transparent on mouse-over and allow click-through

= Controls =


 * Joystick support - although no special joystick user interface yet
 * Hardware cursors - this means the GUI cursor is always fluent, independent of the framerate.
 * Keyboard Layout Support - original Morrowind would always use QWERTY keyboard regardless of system setting; OpenMW will correctly map the buttons
 * Held attacks (e.g. a nocked arrow) may be canceled by using the Ready Weapon key.
 * The annoying "Finish your current attack before equipping a new weapon" error has been removed and instead plays the weapon equip animation.

= Media =


 * Image formats: all formats supported by FreeImage
 * Audio and video formats: all formats supported by FFmpeg

= Graphics =


 * Unclamped lighting
 * Morrowind used the fixed function pipeline which imposes a limit on the maximum amount of lighting. This typically made day-time lighting look flat. (Add comparison screenshots)
 * Support normal, specular, and parallax maps (TextureModding)
 * Support for all resolutions
 * Adjustable field of view
 * Anisotropic filtering
 * Depth shadow mapping
 * More accurate sun flare using occlusion queries

Terrain

 * Uses alpha-splatting (fixes all visible texture seams)
 * Built-in distant terrain support

= Misc =


 * Multiple data directories (see Mod installation).
 * Replaced the content file limit of 255 with a content file limit of 2147483646 and a per content file limit on the number of dependencies of 255.
 * Various options available to facilitate game testing (see Testing).
 * Objects in any cell can be referenced by scripts (in vanilla Morrowind, only objects in recently-visited cells could be referenced).

= Selected Bugfixes =

Since OpenMW is written from scratch, almost all bugs in the Morrowind engine do not affect OpenMW in the first place. Attempting to list them all would be a futile effort, but the most game-breaking ones are worth mentioning:


 * Infinite merchant restock fix
 * Selling an item to a merchant would permanently increase the restock capacity of that item, making it easy to buy enormous amounts of an item very quickly. This exploit no longer exists in OpenMW.


 * Owner contamination fix
 * When an item owned by an NPC is stolen, it could "contaminate" a stack of similar items and flag the whole stack as stolen. OpenMW creates a separate stack for non-stolen items.


 * Savegame doubling fix
 * Morrowind's savegame system suffers from a design flaw that could cause objects to duplicate. This should never happen in OpenMW.

For more detail on bugs in the vanilla engine see the Bugs page.