The one-click setup tool for Morrowind Multiplayer on Linux
Project description
🐉 TES3MP Easy
The "Easy Button" for playing and hosting Morrowind Multiplayer on Linux.
A powerful Python CLI tool that automates the installation, configuration, network diagnostics, and server hosting for TES3MP (Morrowind via OpenMW).
✨ Features
- Zero-Hassle Client: Installs the engine and links your Data Files automatically.
- Smart Config: Detected and fixed the "duplicate content files" bug automatically (v1.4.2+).
- Connection Doctor: Built-in network diagnostics for Ping and Tailscale tunnels.
- Server-Only Mode: Deploy a dedicated server on a VPS (Oracle Cloud, AWS) without graphical dependencies.
- Tailscale Integration: Detects, installs, and manages Tailscale tunnels for easy non-port-forwarded hosting.
- Systemd Generator: Creates persistent background services for your server with one command (v1.5.0+).
🚀 Installation
Option A: The Easy Way (PyPI)
Install the latest stable version:
pip install tes3mp-easy
Option B: The Developer Way (GitHub)
Install from source:
pip install git+https://github.com/flywiththetide/TES3MP-Easy.git
📖 Recipes & Cookbook
🎮 Scenario 1: I just want to play!
- Install the tool:
pip install tes3mp-easy - Run it:
tes3mp-easy - Select Option 5 to point it to your Morrowind
Data Filesfolder. - Select Option 1 to Launch Game.
- In the browser, find a server and double-click to join!
🏠 Scenario 2: Hosting a Private Server for Friends (No Port Forwarding)
We use Tailscale to let friends join without opening router ports.
- Run
tes3mp-easy. - Select Server Settings > Install Server.
- When asked "Install Tailscale?", say Yes.
- Start the server. The tool will show your Tailscale IP (e.g.
100.x.y.z). - Tell your friends to:
- Install Tailscale and join your network (or share the node with them).
- Put your Tailscale IP into their "Direct Connect" field.
☁️ Scenario 3: Deploying on a Cloud VPS (Oracle/AWS)
You want a 24/7 server running on a free-tier Linux VPS. You don't have a monitor attached. Run this single command:
# Installs server, sets name/password, and starts it as a background service
tes3mp-easy --server --install --name "Morrowind World" --password "secret123" --service
Done. Your server is now running on port 25565.
🛠️ Scenario 4: Fixing "Content Files Specified More Than Once"
If your game crashes on startup with this error, your config files are messy.
- Update the tool:
pip install --upgrade tes3mp-easy - Run
tes3mp-easyonce. - It will automatically detect the duplicate lines and clean your local configuration.
- Launch the game again—it should work!
🧹 Scenario 5: Resetting Configuration
Changed your game folder? Moved files?
- Run
tes3mp-easy. - Select Option 5 (Set Data Files Path).
- Enter the new path.
- This re-writes your
openmw.cfgwith the correct paths and load order.
- This re-writes your
🤖 Advanced Automation Flags
New in v1.5.0!
| Flag | Description |
|---|---|
--server / -s |
Server-Only Mode. Skips all graphical checks (Flatpak, Client). Safe for headless VPS. |
--install |
Auto-Install. Downloads TES3MP and dependencies (libluajit, etc.) automatically without prompts. |
--name "X" |
Sets the server name in tes3mp-server-default.cfg. |
--password "X" |
Sets the server password. |
--service |
Magic Mode. Generates a systemd service file (/etc/systemd/system/tes3mp.service), enables it, and starts it. |
📂 Requirements
- OS: Linux (Ubuntu, Arch, Fedora, SteamOS, etc.)
- Python: 3.8 or higher.
- Game Files: You must own Morrowind (GOG/Steam) and have the
Data Filesfolder. - Root/Sudo: Required only for installing system dependencies (
apt install) or systemd services.
🤝 Contributing
Found a bug?
- Open an issue on GitHub.
- Fork the repo and submit a PR.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tes3mp_easy-1.5.4.tar.gz.
File metadata
- Download URL: tes3mp_easy-1.5.4.tar.gz
- Upload date:
- Size: 23.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
12a4ebe7d7b47d0b67043d219c330298b6fd55aee6bba986848750ec9e173ccf
|
|
| MD5 |
5d46046b293a0fe9379ffea5014afa92
|
|
| BLAKE2b-256 |
7427b7997af048189677f6a6634fd53f15f25ebf65d5f8449373439a3705a7dd
|
File details
Details for the file tes3mp_easy-1.5.4-py3-none-any.whl.
File metadata
- Download URL: tes3mp_easy-1.5.4-py3-none-any.whl
- Upload date:
- Size: 26.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a98aa42fcbe4d332c63ef57dea1343007077c063400b9c3eea523a19a0ea79c
|
|
| MD5 |
9cd3c5e60c5385e59baf65dad62f2075
|
|
| BLAKE2b-256 |
97bbab70c55fabd7e146a9bfb3cd82465117a01e131fb9931a0fab51d73b55a8
|