A look and some stats on how our favourite MMORG’s gears grind behind the scenesBy slith June 8, 2011 Follow Author
Gamedev.net user ApochPiQ is a back end server developer at ArenaNet and has written a blog post entitled ‘Why You Shouldn’t Be Making an MMO’
Whats interesting to us is it provides some insight of the massiveness of the GW and GW2 projects and whats involved on both the business and technical side to allow us to play 24/7 with millions of players uninterrupted.
It also shows that we should be so grateful for a great free game.
Ive taken a few excepts of interest and highlighted the important figures so we can all get a idea of the massiveness of the project.
The GW2 juggernaut employs over 250 people. The GW2 codebase is several million lines of code (I don’t have an exact count yet; I might get around to running a full scan of the code and put together a snapshot of how big the codebase is later on). There are hundreds of gigabytes of assets, ranging from artwork to music to design documents to configuration files.
Internet hosting and server costs alone can be in the tens of thousands of dollars a month range. Buying all the hardware you need to run the game up-front can be well into the millions. You need a dedicated datacenter for the endeavor, with redundant power, fire safety systems, industrial cooling, and hundreds of miles of both copper cabling and fiber optics. A single network switch capable of running an MMO backbone can cost ten grand by itself. And if you want a global reach, you’d better roll out a datacenter on every major continent, at the very least. Three or four per continent is more like it.
I’ve spent a grand total of two days with my head buried in the guts of the Guild Wars 2 server code, and I can say this much: there’s more going on here than any one brain can keep track of. The GW legacy includes some truly brilliant, genius-level programmers, and even they didn’t pretend to know all about the entire system. Sure, most of the veterans on the team have a good high-level picture of how it all fits together, but the details? Forget it.
It takes half a dozen dedicated programmers just to write the servers for Guild Wars 2 – and that doesn’t include the people who wrote some of the legacy code we inherited and modified from GW1, or the people working on auxiliary support features like web sites, forums, wikis, and so on. It doesn’t even include the network admins who build the hardware and maintain it, or the community managers who take care of ensuring that the experience is enjoyable for all the players.
Code must run continuously for years at a time. One-byte memory leaks are show-stopper, can’t-ship-the-game-like-this bugs – because that one byte will kill you when it leaks constantly for eight months. Microseconds of sloppily implemented code turn into milliseconds of delay when scaled across thousands of players, which adds up to lag – the number one evil of an MMO.
ApochPiQ then goes on with more details about some of the game client requirements such as physics, pretty GFX and sound. He also goes into depth with some advanced programming techniques to optimise everything to a tea.