r/linux_gaming • • 14h ago

Classic Mu-Online for linux

Hey everyone!

Running server on linux vps

I've been working on an open-source project to preserve and modernize MU Online 0.97k, a classic MMORPG from the early 2000s.

The project started with a native Linux server implementation and eventually expanded into reconstructing the original Windows game client from decompiled code.

I recently released version 0.97.20 of both projects, completing Phase 2 of the modernization roadmap.

What's working so far?

Server (Linux):

  • Native Linux implementation, no Wine required.
  • Docker support for AMD64 and ARM64.
  • MySQL integration and Pterodactyl support.
  • Custom items, monsters, effects and pets.
  • Server-driven data synchronization with the client.
  • Open-source code and prebuilt server packages.

Client (currently Windows):

  • Reconstructed C++ source code from the original 0.97k client.
  • Removed the dependency on the old injected Main.dll by integrating its functionality directly into the source.
  • Modularized several legacy systems.
  • CMake build support.
  • Various rendering, UI, gameplay and compatibility fixes.

Phase 3: Bringing the client to Linux

This is what I'm starting to work on now.

The server already runs natively on Linux, but the client does not run natively on Linux yet.

My next goal is to make the reconstructed client portable, with native Windows and Linux builds from a shared codebase.

Some of the challenges ahead include:

  • Replacing Windows-specific APIs and dependencies.
  • Decoupling the rendering and window management systems.
  • Modernizing the legacy graphics pipeline.
  • Making the build system cross-platform.
  • Preserving the original game's appearance and behavior while improving compatibility with modern systems.

I'm also interested in exploring more modern rendering options in the future, but the immediate priority is getting a functional native Linux client.

Why am I doing this?

Partly for nostalgia, partly for the technical challenge, and partly because I believe old games deserve to remain accessible and understandable.

It's also been a great opportunity to learn more about reverse engineering, legacy C++, networking, and cross-platform development.

The project is still a work in progress, and I'm not claiming the client is Linux-ready yet.

GitHub repositories

Client source:
https://github.com/EmanuelCatania/Mu-97k-Client-Source

Native Linux server:
https://github.com/EmanuelCatania/Mu-Linux-0.97k

Latest release: 0.97.20

Both repositories are publicly available.

I'd love to hear from other Linux developers who have worked on porting old Windows games or modernizing legacy rendering engines.

Any feedback, technical suggestions, or contributions are welcome!

Doc: https://mu-linux.com/es/

4 Upvotes

0 comments sorted by

0

u/[deleted] 13h ago edited 13h ago

[deleted]

1

u/Xlaits 13h ago

What gives you the feeling this is LLM generated or Spyware/Malware? Go read the repo if you think that, and tell me where you see that.

Additionally, the server software and client software are open source? How wou;d they make money on it?

1

u/Pupi-Pups 13h ago

I've been working on this for a year; it's on the MU community forums. It's based on an existing source code xD

Did the AI ​​help me? Yes, with Claude's free passes or the bonuses they gave away xD