MWSE

From Morrowind Modding Wiki
Jump to: navigation, search

The add-on MWSE (or Morrowind Script Extender) extends Morrowind's scripting language (nicknamed MWScript) by adding over 100 new functions. This allows modders to create mods that would otherwise have been very difficult, if not impossible, with the functions found in the standard scripting language. MWSE is open-source software.
To play the game with mods that use MWSE, you must launch MWSE (either via the MWSE Launcher that comes with MWSE, or via MGE or MGE-XE) before you launch Morrowind. To create scripts that use new functions, you will need to use MWEdit to compile them and save your plugin.

Development history

MWSE (2007)
MWSE program icon
Author cdcooley, MWSE Dev Team
Version 0.9.4a
Download MW Modding History
Website SourceForge page
  • The last version released by the original MWSE team - 0.9.4a - was released on SourceForge in 2007, and remained the most recent version until, 7 years later, other contributors started to work on improving MWSE and releasing updated versions of it. Past MWSE developers include:
    Charles Cooley <cdcooley>
    FreshFish
    Timeslip
    AnthonyG
    Tim Peters <timmypcpeters [on] gmail>
    Grant McDorman <grmcdorman [on] sourceforge>
    Cody Erekson <Fliggerty>
MWSE (2015-2017)
MWSE program icon
Author Merzasphor
Version 0.9.5-alpha.20171114
Download GitHub releases
Website GitHub page
  • In 2017, community member "NullCascade" had joined the MWSE development. Since then, even more new functionality was added. In 2018, MWSE itself has been completely rewritten (now dubbed MWSE v2), resulting in massive performance improvements, granting the ability to make MWSE mods that were previously impractical due to slow performance. Furthermore, other than the rewrite and new functions, a huge, new, groundbreaking feature, support for running mod Lua scripts alongside Morrowind scripts has also been added, and is in the process of further development. There is work in progress on creating extensive documentation for MWSE v2 on readthedocs.io.
MWSE (2017-2018)
MWSE program icon
Author NullCascade, Merzasphor, and others
Version 2.0
Download NexusMods, GitHub
Website GitHub page


In summary, since the original MWSE team's last release, MWSE has been greatly improved. Bugs have been fixed, performance was increased, and many new functions were added, which add a lot of power, capabilities and flexibility (enabling interaction with many more parts of the game through a script, adding support for boolean operations and arrays, and more), allowing to do many things with MWSE that were previously impossible or impractical. The updates also go towards superseding the Morrowind Enhanced script extender (so that no modding feat would have to require the two extenders). A completely new and improved approach for Morrowind scripting - using Lua - has been added.

The updates to MWSE are comprised of an updated MWSE.DLL file and can either be used with the standalone MWSE Launcher included in 0.9.4a MWSE's files, or loaded as MGE XE's internal MWSE (since MGE-XE version 0.10.0 beta 9). It can also be loaded as the internal MWSE of earlier versions of MGE XE, or regular MGE's, but that will cause all MGE XE or MGE-specific scripting functions to be overwritten and unavailable.

For discussion and updates on current MWSE development, follow the Morrowind Modding Community Discord.

Functions

The latest version of MWSE currently has over 200 functions. The new functions added by MWSE 0.9.4a, as well as the later updates, are in the following categories.

The 14 new functions added by MGE XE are found here:


Note: The above lists of existing functions are currently incomplete, and new functions continue to be added.


Functions are also documented in the Morrowind Script Extender v2 documentation.


Installation

MWSE 0.9.4a and above can be used either on its own with MWSE's Launcher program, or as part of MGE or MGE XE, if you use one of them. To use an updated version of MWSE, replace your MWSE.dll (in whichever location it is; see below) with the one from the update release.

Standalone:

If you're not using MGE XE or MGE:
Extract or copy MWSE Launcher.exe and MWSE.dll to your Morrowind directory, or just to any directory. To play with MWSE active, run "MWSE Launcher.exe" before running Morrowind. You may use MWSE's "Launch Morrowind" button, or start Morrowind in any other way.
The aforementioned button may not work if MWSE wasn't placed in the Morrowind directory and the relevant entry in the Windows registry doesn't point to a valid Morrowind installation, but MWSE will still function correctly.

As part of MGE or MGE XE:

MGE and MGE XE come with inbuilt MWSE 0.9.4a, so to use that version of MWSE with them, you only need to make sure the inbuilt MWSE is turned on in MGE/MGE XE's options. If you wish to use a newer version of MWSE as their inbuilt MWSE, then read on.

If you're using MGE XE 0.10.0 beta 9 or later:
Copy or extract MWSE.dll to your Morrowind directory. Play Morrowind normally.

If you're using MGE or an earlier version of MGE XE:
Copy MWSE.dll to your Morrowind directory. Run MGEXEgui.exe (or MGEgui.exe) and check "Disable internal MWSE" on the "In-Game" tab. Play Morrowind normally. Note that MGE XE (or MGE) specific functions will no longer be available.

See also

Morrowind Script Extender v2 documentation
MWEdit
Scripting with MWSE
MGE XE
MWE