This is about a personal project I've been longing to do for some time now. Since a while now I have stopped playing WoW, but as I'm quite experienced in C++ I thought I'd try the following:

  • Write a minimalistic server for vanilla WoW for experimental, personal purposes

All it would feature is being able to login with a fixed character, and being able to travel around in the standard maps (non-instance; Kalimdor, eastern kingdoms, etc.) I also don't want to use / modify existing projects such as Mangos in this case, as this would be all about the development process and trying it on my own

My questions to you:

  • Is the above a realistic objective?
  • How much work would such a project require? (Boilerplate code excluded, just the basic stuff to make the client "happy")
  • Do you have any other recommendations for me regarding this?

3 Answers 3


As a former developer for MaNGOS and project founder for ScriptDev2 I would say your objective is not realistic.

The basics to make the game happy are actually pretty complex. If you tried to do this without pulling code from an existing project you will be asking questions about specific op codes for months. World of Warcraft seems like a simple game but there are a lot of minute details. Look at MaNGOS' authentication for a small example.

And then you need to think about why you want to rewrite an existing emulator? I'd assume you want specific functionality but without all of the extras. In that case you might be better off just tearing down an existing system.

If you want to write a new emulator that can handle 5,000 players at once I'd urge you to rethink why you are doing this. I would also highly suggest looking for another source of self-fulfillment. You'll probably be happier in the long term working on something that you can call your own and/or possibly sell.


Fundamentally, the problem was never about the game- it's about the scale. If your server only has to support one client, or a few clients, then it's just Minecraft server but in higher resolution better graphics on the client side, effectively. All you'd have to do is transfer the player's location and the location of anything interesting (read: dynamic) around him. The client can then render as is normal. The problem is doing this in a reasonable time when you have fifty thousand players, and possibly hundreds of thousands of interesting things.


Take a look at the mangos project to get started in WoW developement


  • 1
    \$\begingroup\$ OP said he wasn't interested in Mangos... \$\endgroup\$
    – Nate
    Commented Jun 12, 2011 at 18:47
  • \$\begingroup\$ He said he doesnt want to use / modify mangos. But it's a good startingpoint for what he has in mind. \$\endgroup\$
    – Riki
    Commented Jun 12, 2011 at 18:57

Not the answer you're looking for? Browse other questions tagged .