Source Azeroth
navbar

01 - Ancient History


It all began with Skull’s wish to get his hands on World of Warcraft Alpha, which was purely internal and wasn’t supposed to get out of Blizzard itself. He tried to form a team to hack into Blizzard’s servers and grab the client that way. There were multiple problems with this however as he soon discovered. It is rumored that eventually he made a contact inside of Blizzard and got the client from them. It was never told how and exactly when, but it was out…

This message was posted nearly everywhere…

Open-source proponents, crackers, and anarchists alike rejoice as an alpha version of World of Warcraft has allegedly been secured and is now supposedly making its way around warez circles. This news comes from Skull’s Hack Site who says WarForge (infamous for their work in battle.net emulation for the War3 and TFT betas) is already working on server software for the WoW leak.

Availability for those outside of cracking groups is limited at best and the situation has just now grown past rumor, but details and screenshots can be found here and here if you wish to judge for yourself.

After this message the Alpha client started to spread thought torrents. People have been getting in great quantities, but there was no server to play on.

Blizzard’s response on leaking Alpha client…

As many of you know, we are currently conducting an internal Alpha test for World of Warcraft. Our goal for this Alpha test is to provide the best possible experience for players when the Beta launches in early 2004.

In order to accelerate the testing process, we recently allowed a small group of external testers to play the game. During this process, a collection of files was leaked to the Internet. While these files contain alpha content from the game, they are not fully playable and therefore do not convey the experience that World of Warcraft will provide when it is released.

We are currently investigating this matter and will take serious action against those involved. As always, we appreciate the interest and enthusiasm that players around the world have for World of Warcraft, and we look forward to delivering a massively multiplayer game unlike any you have ever experienced. Until then, we ask that you refrain from sharing any content that doesn’t come directly from Blizzard Entertainment.

At that time Lax started to reverse engineer World of Warcraft client with just few packet logs, it wasn’t possible to get all the features packetlogged, since there was not public Blizzard server for Alpha then he used just logs which was available in source from Alpha. He managed to code unnamed Sandbox (later released by ColdIce as StormCraft Sandbox). It was in essence an emulated server that allowed you to run around the world and explore, and there were some videos released of people running around as a character named Lax. The sandbox basically just spit the login and world entry info from those captures at the client, nothing entirely special.

Once the sandbox was released, he immediately began creating the StormCraft “Town Hall” server software. He spent a week or two developing the architecture for the server and designing how it would work. Lax kept developing that for a while and once he got the architecture ready, the team joined in for development, to start coding all the spells, pathfinding… During this time, some others released their own sandboxes and started emulating servers, but Town Hall was clearly more advanced than the others at the time. We had some public tests on ColdIce’s server hardware (http://www.stormcraft.nl) with something like 200 users at a time, all in the same little spot in the world.

Generin’s Abyss was based on the StormCraft sandbox and also from packet captures he got from Town Hall, and then he was able to start adding new stuff via the reverse engineering of WoW. But he joined StormCraft since half of his team went AWOL or something. Basically, StormCraft led the way and the others used captures from their server to implement their new features, at least at the time. So Generin, _Psycho, TheUndying, TheDamned, Alita, Cain continued to work on Lax’s work and developed emulator. It was named StormCraft and became most famous emulator of all the time (in positive way, unlike WOWEmu). Codemonkey helped them too, as he had more intimate knowledge of the WoW executable, which allowed implementation of things for what weren’t packet captures available (Taxi nodes and so). Then Lax suddenly went back to work on MacroQuest 2 and handed his work to dedicated devs who wanted to continue his code. It was a good start and he will never be forgotten.

Interview with Lax

Nivelo: How did it all really happened with you? I mean how did you meet Skull and so on?
Lax: Well, I followed WoW for a while waiting for the beta. I don’t remember how I ended up meeting Skull actually. All I remember is he put the Alpha and some packet captures in my hands, and I went to town :)

Nivelo: You went to town with few packets and alpha and made a miracle of first sandbox, right?
Lax: The sandbox itself was pretty basic stuff, all it took was figuring out how to make it use the sandbox as the wow server, and having the sandbox give the wow client exactly what it saw from the packet captures then we had to actually figure out what everything in the packets meant, so we could do more fun stuff with emulating the server. Me and like 5 other people picked through the packet captures to figure all that out. It was a lot easier having the alpha client, because we could go through it and find the names of all the packets, and basically what they were supposed to contain, then it was just a matter of starting up the server about a million times to test little things :-) We formed the team basically while I was working on the sandbox, so they mostly just waited for me to get the architecture done. Then, once that was done I let them in on the source code to start developing.

Nivelo: What was the plans for Stormcraft?
Lax: Basically we wanted to have a private server that could handle some number of people. The plan was to do it in a few major steps. The first step was to create our basic testbed, and we planned for it to handle maybe 100 users at a time, but then we would plan our next server with everything we learned, to handle maybe 500. I didn’t want to distribute the source or even the server for other people to run, because it’s kind of dumb to have a few hundred servers with 5 people on each. I’d rather see one with 500 people on it.

Nivelo: How old were you when you started to work on it and how long did you work on SC?
Lax: I was 23 when I started and I worked on it for probably 1-2 months before I went back to working on MacroQuest.

Nivelo: Have you ever thought about getting back?
Lax: Not for emulation. For modding, hacking and so, more along those lines. I stick to the legal stuff :) well, wasn’t a big loss to me, I would rather be on their server development team instead. I did send them my resume with the StormCraft project listed a while back :) Well, it’s interesting to watch but not really my thing anymore you know :)

Nivelo: How did it end up? Were you accepted?
Lax: No, they send applicants a postcard which says if they’re interested they’ll contact you in 2 weeks, and I didn’t get contacted. Even if they were, I probably wouldn’t accept the job. I wouldn’t expect them to pay enough money to pull me away from my company.

Nivelo: Do you know you are really wanted back there?
Lax: I’m sure I am, but I’m not really interested in emulating now. I run a legitimate business and I’m no longer anonymous, so it’s not really an option anyway.

Nivelo: So you really never quit toying with WoW.
Lax: Well, I played it in beta and in retail, and it’s not that I toy with WoW, but the software I write has to hide from Warden and protect others programs from Warden.

Nivelo: What did you move forward to in your life?
Lax: Well, I went back to MacroQuest, which is basically for botting EverQuest 1, and I started taking donations for that, then I started up some other projects relating to EQ1, after I saw how people were willing to donate to my projects, I turned that into my company, Lavish Software. So now I do that same kind of thing but for any DirectX game instead of just EQ1.

Spacey’s prophecy

…Once upon a time there was Lax…
…The father of WoW emulation…
…he said let there be code…
…and then it was created…
…the World of Warcraft emulation scene…
…2 years have passed since the mortal races banded together to emulate World of Warcraft…
…But the alliances have been broken and the drums of flaming thunders once again…

Write a comment!