Open-source WotLK client

Open-source WotLK client

A short update, as promised earlier.

Snapshot repository:
https://github.com/rkabachenko/OpenWow-snapshot

Demo recordings (I unfortunately forgot to enable audio recording, but the sound is working):

Current status:

  • Many things are working as expected.
  • Significant effort has gone into optimization. On an M1 Pro, the client currently runs at approximately 120–200 FPS, depending on the area.
  • There are still several rough edges.
  • The client has been tested primarily on macOS (M1 Pro), with some limited testing on Arch Linux.
  • The snapshot pipelines are green and produce artifacts, although I haven’t had time to verify that the artifacts work properly.
  • The project was actively developed by one person for approximately four months.

Unfortunately, I’ll be leaving for military training in three weeks and won’t be able to contribute for approximately five months. Hopefully, the community will find the shared code useful and build wonderful things with it.

u/Taurm — 21 hours ago
▲ 563 r/wowservers+1 crossposts

Open source WoW client

EDIT - putting this at the top because I want it to be read first.

I would like to mention two open-source projects that inspired me to start working on something like this:

Both were created by people investing enormous amounts of their own free time into an extremely difficult problem, and both helped demonstrate that there is real interest in an open-source WoW client.

I might strongly disagree with some of their implementation and architectural decisions, and we might have very different goals in mind, but that does not make the work or effort behind them worthless.

ORIGINAL POST.

A couple of months ago, there was quite a lot of noise around an open-source WoW client. Specifically, WoWee. And here is the link, just to be fair: https://github.com/Kelsidavis/WoWee

Being an engineer who played way too much WoW back in the day, I got so excited for a moment.

Then I actually looked at the code. And, well, it turned out to be a vibe-coded pile of shit hacks pretending to be a WoW client. It has everything custom and slapped together in a disastrous manner. It's own UI. Its own asset pipeline. A bunch of stubbed APIs, approximated behavior, hardcoded special cases, and server-specific compatibility patches. Something that can connect to certain servers and look vaguely like WoW, sure - but absolutely not a drop-in replacement for the original client, and with basically no compatibility with the ecosystem that already exists around 3.3.5a (addons).

Unfortunately, I am also the kind of person who does not really know when or where to stop. So I decided to do it myself.

What I want to build is simple: a completely open-source, drop-in reimplementation of the World of Warcraft 3.3.5a client. A replacement that works with what already exists.

You should be able to take an existing 3.3.5a installation, replace the original client executable, and keep playing. The same servers, the same game data, the same addons, the same configuration, and the same behavior. Except it should work everywhere.

Windows, macOS, and Linux. ARM and x86. Modern hardware and modern operating systems. No more unsupported platforms, no more being stuck with an ancient 32-bit executable, etc.

A couple screenshots to show where it is right now are attached. All of those are on Mac OS with Metal renderer (M1 Pro).

Eventually it will be open sourced under MIT license, once I reach the point where I would be able to call it minimally playable.

u/Snoo-43610 — 1 month ago