A Guide to TES3MP
TES3MP is a fully playable multiplayer version of Morrowind, based on OpenMW.
Introduction
This project is already fairly well-documented, but this guide serves as a quick-reference for new players. It aims to describe the current state of the project, and offer some advice on overcoming common problems.
Mechanics
To make the game work in a multiplayer context, a few special mechanics have been introduced:
- Upon joining the server, players must log in; all player data is stored on the server.
- Time no longer passes when a player sleeps or fast-travels. This ensure that game time is always synchronized between players.
- The game no longer pauses in the menus.
- By default, all players share the same journal, which means that if any player talks to an NPC or picks up a quest item, the journal will be updated for all players.
- If a player dies, they will respawn at the nearest Imperial Shrine or Tribunal Temple, and they will lose some skill points, much like after spending time in jail.
- A new chat console has been added, which can be toggled by pressing F2.
Limitations
Limited Synchronization
Some data is not currently synchronized between players and the server, which can lead to inconsistencies between clients, and some data being reset after logging out and rejoining. In particular, spell effects, diseases, NPC dispositions and merchant inventories are not saved to the server.
Outdated Engine
At the time of writing, TES3MP is based on OpenMW 0.44.0, which means it lacks some of the latest features that OpenMW supports, such as native herbalism, animated containers, day/night-based models, weapon sheathing, truetype fonts and HD UI elements.
In practice this means that mods that rely on these features will, at best: not work at all, and at worst: result in missing models in-game.
Quest-Related Quirks
Since the original game was designed with only one player in mind, some quests may not work properly when multiple players are present. Fortunately, these cases are few and far between, and console commands can normally be used as a workaround.
Some specific examples are documented below.
Permanent Corprus
Only the player who gives Divayth Fyr the Dwemer Boots will be cured of Corprus.
Other players can cure themselves using the following console commands:
Player->AddSpell "common disease immunity"
Player->AddSpell "blight disease immunity"
Player->AddSpell "corprus immunity"
Player->RemoveSpell "corprus"
Disappearing Mehra Milo
Mehra Milo, when situated in the Ministry of Truth and Holamayan, may only be visible to the player who previously talked to her!
The easiest workaround is to have the same player talk to her again.
Holamayan Monastery Door
The door to this monastery only opens at a particular time of day, but there is no way to pass time except by literally waiting (in real life).
Fortunately, the game time can be changed using the console. This should be done by all players, to keep the time of day in-sync:
Set GameHour To 6
Setup
There is already a quickstart guide available here, but I will describe how to get games working without using the server browser. This can be useful to connect directly to friends over a LAN or online.
TES3MP uses the same configuration files as OpenMW, but there are some additional files in the TES3MP directory that can be used to configure the multiplayer settings. In particular, the files we care about are tes3mp-client-default.cfg and tes3mp-server-default.cfg, which control the client and server, respectively.
Client Configuration
The destination address of the client configuration determines where the game will try to connect; this should be the IP address of the host.
The port should also match the server port of the host.
Example:
destinationAddress = 192.168.0.45
port = 25565
Running tes3mp.exe will then attempt to connect directly to the configured server.
Server Configuration
The main settings that we need to concern ourselves with in the server configuration file are the password and port:
- A password can be set to prevent strangers joining a game (if playing online).
- The port must match the port used by the clients.
Console Commands
As well as the usual Morrowind console, TES3MP supports a number of new commands which can be entered via the chat window. The full list of commands can be found in this server guide, under the header "Server commands".

Animations can be played at will.
Note that some commands require elevated privileges. The server guide explains this as well, under the header "How to make yourself an admin".
Modding
Installing Client Mods
Since TES3MP shares the same settings as OpenMW, it also shares the same installed mods.
Pluginless replacers such as new graphics and sounds will work out of the box since they do not affect gameplay, but the server requires that all players have the same plugins installed, to reduce the risk of any synchronization errors.
Tes3MpPluginHelper is an invaluable tool here: it will automatically copy your active mod selection from OpenMW to the format required by TES3MP.

For example, here is a mod selection from openmw.cfg:
content=Morrowind.esm
content=Tribunal.esm
content=Bloodmoon.esm
content=Patch for Purists.esm
content=GITD_WL_RR_Interiors.esp
content=Expansion Delay.ESP
content=Patch for Purists - Book Typos.ESP
content=Patch for Purists - Semi-Purist Fixes.ESP
content=Unofficial Morrowind Official Plugins Patched.ESP
content=Merged Objects.esp
content=multipatch.esp
And here is the resulting requiredDataFiles.json after running Tes3MpPluginHelper:
[
{"Morrowind.esm": ["0x7B6AF5B9", "0x34282D67"]},
{"Tribunal.esm": ["0xF481F334", "0x211329EF"]},
{"Bloodmoon.esm": ["0x43DD2132", "0x9EB62F26"]},
{"Patch for Purists.esm": ["0xE5A0F103"]},
{"GITD_WL_RR_Interiors.esp": ["0xC783DECC"]},
{"Expansion Delay.ESP": ["0x9D79CD4B"]},
{"Patch for Purists - Book Typos.ESP": ["0x2E10D796"]},
{"Patch for Purists - Semi-Purist Fixes.ESP": ["0x7AC1FB23"]},
{"Unofficial Morrowind Official Plugins Patched.ESP": ["0xA4EEA087"]},
{"Merged Objects.esp": ["0x8EA6BD47"]},
{"multipatch.esp": ["0xB86C0E9E"]}
]
Bypassing Mod Conflicts
If the plugin versions do not match the server specifications exactly, players will not be allowed to join. If this causes problems, the checksums can be removed from any of these files, and the server will only compare the filenames.
Example:
[
{"Morrowind.esm": []},
{"Tribunal.esm": []},
{"Bloodmoon.esm": []},
...
]
Copying Mods Between Clients
These are the steps required to copy all mods from one client (source) to another (target):
- Copy all mod folders from source machine to target machine.
-
Copy all data="..." and content="..." lines from source openmw.cfg to target openmw.cfg.
- Update any paths in target openmw.cfg if any mods are in a different drive or directory on the target machine.
-
(Optional) If the target wants to use ModOrganiser, you can copy the ModOrganiser profile as well.
Server Mods
TES3MP allows the creation and use of server-side mods using Lua scripts.
A list of available server mods can be found here.
Published 20/09/2020