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.2.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.2-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tes3mp_easy-1.5.2.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.2.tar.gz
Algorithm Hash digest
SHA256 9d4c7bd73a26fe1c9eb9f296f52661e87e202407a1b02274026c1a6a306b4f48
MD5 1632fcd92cf5231750ae7cefdad12d6b
BLAKE2b-256 2e65fe2fd206fece4341e63082b497bcf057769c0769ff6b354e7169ad71163a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tes3mp_easy-1.5.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 53d2169e20d9de0cd34d7ef3e356a23fe5ff66a20c47c3290613d921b1b893bb
MD5 5d436e505c4b3c1eb4ac7b2078e3f18b
BLAKE2b-256 af236ed0395f76a5bb4091475f973d9b1ea33f5b581570fb04e661d425c2a299

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