Skip to main content

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).

PyPI version License: MIT


✨ 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

🎮 How to Use (Client)

Once installed, simply type this in your terminal:

tes3mp-easy

The interactive menu will guide you through Setup, Server Hosting, and Diagnostics.


🖥️ Server Hosting (Interactive)

Want to host a server for friends?

  1. Run tes3mp-easy.
  2. Select Server Settings.
  3. Choose Install Server.
  4. Follow the prompts to set a name and password.
  5. Select Start Server.

Tailscale Support: The tool will automatically detect if you have Tailscale. If you do, it will offer to start it and give you your Tailscale IP to share with friends, bypassing the need for port forwarding!


🤖 Advanced Automation (Headless / VPS)

New in v1.5.0!

You can deploy a production-ready dedicated server in one command. This is perfect for setting up a server on Oracle Cloud, AWS, or DigitalOcean via a startup script.

tes3mp-easy --server --install --name "MyServer" --password "secret" --service

Breakdown of Flags:

Flag Description
--server 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.

Result: Your server is installed, configured, and running in the background. It will auto-restart if the server reboots!


🛠️ Troubleshooting

"Content files specified more than once"

If you see this error, you likely have duplicate entries in your config files. Fix: Just update to v1.4.2+ and run tes3mp-easy once. It automatically scans both your Global (~/.config/openmw) and Local (~/.local/share/tes3mp) configs and removes duplicates.

"Texture not found" / "Meshes missing"

Ensure you have pointed the tool to a valid Morrowind Data Files directory containing Morrowind.esm, Tribunal.esm, and Bloodmoon.esm. You can reset the path by running tes3mp-easy and selecting Option 5 (Set Data Files Path).


📂 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 Files folder.
  • Root/Sudo: Required only for installing system dependencies (apt install) or systemd services.

🤝 Contributing

Found a bug?

  1. Open an issue on GitHub.
  2. Fork the repo and submit a PR.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tes3mp_easy-1.5.1.tar.gz (23.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tes3mp_easy-1.5.1-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

Details for the file tes3mp_easy-1.5.1.tar.gz.

File metadata

  • Download URL: tes3mp_easy-1.5.1.tar.gz
  • Upload date:
  • Size: 23.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for tes3mp_easy-1.5.1.tar.gz
Algorithm Hash digest
SHA256 8d47bb08c11658223bee930ef9b2b1972d3cf8d0936fe5620dd2f73f157ac9db
MD5 50691ff60ecb7694d624c8177e0190e2
BLAKE2b-256 2a7ff61982a6fac12194eb7e45dcbee0b8749ee2a4e8eb2d7a65327eaf9fd703

See more details on using hashes here.

File details

Details for the file tes3mp_easy-1.5.1-py3-none-any.whl.

File metadata

  • Download URL: tes3mp_easy-1.5.1-py3-none-any.whl
  • Upload date:
  • Size: 25.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for tes3mp_easy-1.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a324dee02b14ef36e72cb5ce58fa7945f7528ca445fba8cc387e3b087974c114
MD5 42c9c26de95c1afc077879e1f7db48d5
BLAKE2b-256 386a6d20017f55f9b4df4d9e7f7011f4eb47f84b907d333fc70c94b861ba7e37

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page