Tes3Mod:TES3MP

TES3MP is a fork of OpenMW that provides multiplayer functionality. As such, it is not a mod in the traditional sense, but rather an alternative game engine for The Elder Scrolls III: Morrowind with an added multiplayer component.

The TES3MP code consists of a client and a server. Multiplayer rules are defined by server-side scripts written in Lua and are highly flexible. Rulesets can range from unchanged Morrowind with network co-op to player-run MMO custom worlds. Its servers are run by the community itself, and they can be accessed through the server browser in the TES3MP client.

Most mods that work with OpenMW will also work with TES3MP, with the exception of mods employing highly complex scripting. TES3MP runs on GNU+Linux, macOS and Microsoft Windows, although the pre-packaged release for macOS has a few known issues and is considered to be experimental.

As of version 0.7.0-alpha, TES3MP is almost entirely playable, except for a dozen quests that are not synchronized properly in multiplayer and a few gameplay mechanics whose effects are not synchronized properly or at all. Its playable state has led to it being featured on websites such as Rock, Paper, Shotgun. 

Development

The project was founded in December of 2015 by Stanislav "Koncord" Zhukov.
After he uploaded videos showcasing proof-of-concept multiplayer,  the Morrowind community expressed significant interest and requested that he release the source code to the public.

The initial release of the source code was done on 2016-06-08 and provided player synchronization in interior areas.

After writing a compilation guide for Linux, David Cernat was invited to join as the second main developer of the project, and ended up implementing much of the remaining missing gameplay functionality, including world, NPC and quest synchronization, while Stanislav went on to create the project's server browser and master server.

The TES3MP code gets updated regularly and constantly takes in all changes made to OpenMW itself.

Features

TES3MP has been developed to the point where most aspects of the game are synchronized among all players.
Player and NPC movements, animations, cell changes, equipment, stats, combat, spell casting and speech are all well-synchronized, as are most changes to the world such as the placement and removal of objects.
Most quests without complex scripting work in TES3MP and most quest lines can be completed without encountering issues.

From a technical perspective, TES3MP offers the following:
Client-server architecture
Users have access to both client and server executables, meaning that they can join an existing server or host their own server.
Server browser
Provides various filters and options to sort available public servers
In-game chat window
Can be toggled using F2 key to only appear for few seconds when new chat messages appear, or can be completely hidden by pressing the F2 key for a second time.
Server scripts and extensions
Server-side storage of information about players and world state
Various server-side configurations of gameplay mechanics

Users have the ability to host servers on their own computers, which allows TES3MP to be played on a local network without access to the internet.

TES3MP can work with the OpenMW Example Suite and other content that can be used with OpenMW.

Playthroughs and Demos

Gameplay demo of TES3MP 0.7.0 pre-release and interview with developer
compilation of gameplay using version 0.6.0
another compilation of gameplay using version 0.6.0
Others (Youtube search)

Mods

Client-side mods
TES3MP is able to load the same mods as OpenMW, but – due to most mods being designed for singleplayer – it is not guaranteed that all of them will work as expected.
The list of mods that the player must have enabled in order to be able to connect is determined by each individual server that the player connects to. This ensures that all the players on the server have the same game content. It is possible to configure servers in a way that allows connections from all clients, regardless of loaded mods or load order, though doing so is discouraged.

Server-side mods
Server side modifications are implemented using Lua programming language by changing the core scripts or by adding custom scripts that change game mechanics or provide additional functionality like player housing or restrictions on usage of specific items. The community has produced a number of server-side scripts that can be installed in a manner similar to mods, without requiring any scripting knowledge.

Future development
Beyond implementing all remaining missing synchronization and providing additional polish to existing features, it is hoped that TES3MP can provide the auto-downloading of mods required to join servers, as well as the tools to allow servers to easily implement player-created quests, factions and housing.

External Links
TES3MP Steam Group
TES3MP subreddit
Source code repository hosted on Github
Discord channel | IRC channel | Matrix room
OpenMW subforum
Youtube channel

References