# Why is it so expensive to develop an MMO? [closed]

I want to develop an MMO, like World of Warcraft, but some basic research says that it is going to take a lot of time and money. I'd like to know why.

Why is it so expensive to develop an MMO?

The first problem is that the software itself is very complicated, particularly for a new or inexperienced game developer. You have to maintain (at the very least) a client and server application while providing more content than you would expect for a "regular" multiplayer or single-player game.

Even on their own as a single player game, an RPG with the complexity of a World of Warcraft would take professional teams years to develop to the same level of polish: an enormous content investment, lots of work up front and afterward with balancing and playtesting, and some of the most complicated interactions of any game genre. These are commercial-level games, and while yours might be smaller, it will still require a lot of effort just to be a good game before you pour in the extra work to make it become a good multiplayer game.

Networked game development is not trivial; there are large obstacles to overcome in not only latency, but cheat prevention, state management and load balancing. If you're not experienced with writing a networked game, this is going to be a difficult learning exercise.

Building it shouldn't be your sole concern for manpower and money, either; also consider the costs of running it after it's developed. Even a small massively multiplayer online game will need constant improvements to its hardware/software to keep up with demand and staff to manage the game and provide support for your players.

• Hosting - Where are you going to host the servers? How will you pay for the bandwidth? How will you load balance players between servers and keep a minority of players from monopolizing the resources of the game? You'll need people to keep an eye on the condition of your hardware and software hosting the game in order to make sure that it will continue to work well.
• Technical support - Not just getting the game to run, but dealing with problems between players and handling player feedback in a way that will keep them loyal. If you're charging money (say, for a subscription), the billing system will be even more complicated (and most likely require legal assistance and possibly international representation and banking/processing fees). People who deal with these things need salaries.
• Security - Not just of their game accounts, but you have to consider cheat prevention and doing frequent repairs and community maintenance effort whenever a new exploit is discovered by players.
• In regards to security, I spoke to an MMO developer who said "we assume all players are cheaters, so we do everything server side." This severely constrained them in CPU time, because they couldn't off-load virtually anything to client side. This is why MMO AI is so dreadful. – cflewis Jul 14 '10 at 20:17
• Don't forget how incredibly expensive it would be to even gather enough users; an MMO without tens or hundreds of players in your level range isn't exactly multiplayer, so you have to get a lot of people before everyone decides your game is a ghost town. – ojrac Sep 4 '10 at 3:56
• I like this answer, but I think it neglects the complexity caused by the many users trying to access the same game state at the same time, especially in crowded areas. The multithreaded state management for that is frightening. – C. Ross Nov 3 '10 at 14:23

World of Warcraft has:

• 5,500,000 – Lines of code
• 1,500,000 – Art assets
• 70,167 – Spells
• 37,537 – NPCs (non-player characters)
• 27 – Hours of music
• 2600 – Quests in the original World of Warcraft
• 2350+ - Additional quests in WoW: Wrath of the Lich King
• 7650+ - Quests total (how many have you finished?)
• 4,449,680,399 – Achievements earned by players since their implementation (this figure is already a few days old, and therefore outdated)

Patches:

• 4.7– Petabytes (4700 terabytes) of data delivered to players through patches
• 126 – Different versions issued of every patch, including those streamed to players and issued as self-extracting executables
• Half – Of every patch’s size is audio

Servers:

• 13,250 – Server blades running WoW servers, with a total of
• 75,000 – CPU cores, and
• 112.5 – Terabytes of RAM

Support:

• 179,184 – Bugs tracked by Blizzard (most of which have been fixed, according to the presenters)
• 2,056 – Game masters
• 340 – Employees in the billing department
• 2,584 – Total customer service employees

International:

• 10 – Languages into which WoW is translated

Blizzard Online:

• 12,000,000+ – Battle.net accounts
• 900,000+ - Files on WorldofWarcraft.com
• Not every MMORPG needs to be the next WoW. Even "utterly flopping" with 10-100k users paying $5/month is still as much as half a million dollars a month. Sure there is hosting fees and such, but the number of people subscribing to an MMO is much higher than the number of people actually playing it at any given time. A game with 100k users would rarely get more than 10k connections at a time. How about you try showing what those numbers were at launch. Half a million a month can certainly pay for some expansion. – Stephen Belanger Nov 12 '10 at 23:15 • @StephenBelanger,$500,000 is nothing. That pays for 10 developers salary for a year (if this team of ten is your core develop team, they will certainly demand more money than that, since starting salaries for CS/SE degrees is around $65k). How many people do you plan to employ? You could easily eat up nearly all your gross income simply in paying employee wages making only$500,000 a month. What about server hosting costs? They can cost you $10,000s of dollars a month to allow 100,000 people to play or more. Do not think that because$500k is a lot for you, it is enough for a business. – kurtzbot Oct 26 '12 at 18:12
• At the same time, 10 developers is a lot. If you are employing that many people, than certainly you should be bringing in more money. But there are plenty of smaller teams doing very well for themselves. Your employee count is not a valid measure of your success--your happiness is. Also, starting salaries are only that high in big American cities. In other parts of the world, it's very common for experienced developers to make $40-50k, especially in startup mode. And if your server cost for 100k users is$10k you need to do some serious optimization. I'm serving 6 million on $800. – Stephen Belanger Oct 26 '12 at 18:38 • damn this gave me goosebumps :'( – Salman von Abbas Jan 26 '13 at 6:39 • @kurtzbot 10 developers' salary for a year... per month? So 120 developers. Quite a few developers. You don't want that many until you're the size of WoW. – user253751 Feb 5 at 5:52 The thing to remember is that an MMO is literally the most complicated piece of software one can make. Take every single problem that exists in software engineering, and you have it in an MMO. A) Every problem from a normal game. 1) Resource streaming for an open world. 2) Particle system running on 5 year old commodity hardware 3) Physics system to handle projectiles (Even if it's not havok you still need something for the characters falling from the sky.) B) Every problem that a business app would have. 4) High availability clusters 5) Billing systems 6) Massive databases 7) Customer Support back end 8) Call center support C) Every problem that 'internet companies' have 9) Latency kills 10) World wide datacenters mapping 1:1 and 1:many architecture pieces D) Some nice unique problems for MMOs only 11) Cross server object replication 12) More hackers targeting it than they would some banks. • Amazon Cloudhosting can solve much of the hardware problems mentioned here, but then there is the money issue :o) – BerggreenDK Nov 9 '10 at 3:11 • And a whole boatload of money would probably solve a lot of the probelms. Now we only need to find the money. – Kibbee Nov 9 '10 at 14:58 • @Kibbee - have you looked in between the sofa cushions? – Tor Valamo Dec 5 '10 at 20:35 • I like that last point, D-12, the most, heheh! – Randolf Richardson Jun 4 '11 at 3:46 • I think I'd like to replace hackers with script kiddies. – Parris Aug 18 '12 at 1:02 It's not so much hard to develop an MMO, as to develop another World of Warcraft. If you're willing to settle for only having a few thousand players, you can make an MMO, such as: I'm not saying that it was easy to make those games :) But it can be done by a small number of (skilled, dedicated) people. • Runescape was made by 3 people, and IMO its a bit misleading to put it here because the original version of runescape was much smaller and crappier, the current runescape happened after they got a team of hundreds of people – Click Upvote Aug 18 '10 at 23:22 • @Click, the Wiki entry only lists two people for the game creation, not the company they formed to market it, so that's what I posted. You're right that it was significantly improved, though, I'll edit that. – Cyclops Aug 19 '10 at 13:48 • Ditto, KoL is a browser-based RPG with chat and some other limited player interactions, not reeeeeally what I would call an MMO (at least not when standing next to WoW and friends). On the other hand it is awesome and everyone should try it anyway! – coderanger Sep 13 '10 at 20:42 • @coderanger, that actually illustrates my point - why does every MMO have to be compared to World of Warcraft? And KoL has gone from one person to eight full-time paid employees, which, by any reasonable standard, is a success. – Cyclops Sep 14 '10 at 21:27 • @Cyclops: because after all people will have to choose if they with to play WoW or to play your game. – o0'. Dec 6 '10 at 17:12 I'll disagree with most of the popular posts on here and say that it's really NOT that much work to create an MMO. But don't confuse MMO with WOW. Really, the idea of an MMO can be broken down into: O - Online. This is a game played over the net M - Multiplayer. Not just you. M - Massive. This implies that you are playing multiplayer with people you don't know, and it implies that the game persists past when you start/stop playing. Doing something like that wouldn't really take much work as other people here have pointed out. The rolling ball example, Runescape, Travian, etc. I think people confuse 'Why is it hard to make an MMO' with 'Why is it hard to make a huge 3D interactive world with thousands of animated monsters, weapons, spells, character classes, craploads of sound effects, music, and enough plot to fill 40 fantasy novels.' And when you phrase it like that it's pretty obvious. It makes you realize that just making a one player offline version of WOW would take almost as much time. • +1 but I think Massive would be a huge amount of playing area and can hold a lot of people (not meaning it always does) – Spooks Nov 18 '10 at 19:58 • I don't think your definition of massive is really the definition of massive. Your def sounds like an old school BBS game. Massive to me implies thousands or millions, not just "people you don't know". – Peter Recore Jan 3 '11 at 18:42 • OTOH I really like the sentence where you ask "why is it hard to make a huge 3d interactive world...." That really does make it seem obvious. – Peter Recore Jan 3 '11 at 18:43 • @Peter Recore Well, I was trying to speak to the qualities of the game rather than just the popularity. If you need a specific number of people for that extra M, then you could argue that WOW wasn't an MMO when it first launched, or you'd have to have agreed upon numbers for what constitutes 'massive'. - on the other hand I'd argue that there's a major difference between games you play with your friends, and games you play with strangers, many of whom you don't need to interact with. I think a more important adjective to argue over would be 'Persistent'. – LoveMeSomeCode Jan 3 '11 at 19:22 • For this question though, he's specifically saying he wants to make a WoW clone. – Nick Bedford May 4 '11 at 23:15 Developing an MMO is super easy. It takes no more than four hours. Developing an MMO that people want to PLAY is a very different matter. I asked myself the same question a long time ago. The best way to answer it is this: Design the simplest, dumbest MMO you can imagine. Say, each player is a little ball rolling around, doing absolutely nothing but watch other players. Use, no textures, just solid colors. No lighting, no combat, no interactions. Nothing. Simple, right? Now write it, complete it to the point where you can distribute it online and people can install it, play with it and report errors. See how that goes. This world is about 3 orders of magnitude simpler than WoW, so factor that in and you'll get your answer. Only with experience you will see what a giant time sink building games to completion is. Ask any good developer how long it took them to finish a prototype of their game that looked almost as what they imagined the final version would look like. Then ask them how long it took to finish the game. • Yeah, that's a good point. I can usually finish 90% of a game in a few days, but the final product seems to take forever. – LoveMeSomeCode Nov 11 '10 at 17:26 • I don't really agree, this seems like a recurring developer thought that game concept code is hard and somehow take a lot of time. What takes time is game content and assets. Why would a AAA game take the same amount of years for a followup using the exact same engine and game design ideas as the original release if it wasn't for the extreme effort required to create all the content... – Oskar Duveborn Sep 1 '11 at 21:25 • Evil Engel accidentally invented agar.io – user253751 Feb 5 at 5:55 Unlike most of the other posts in this thread, I'm going to go the other way and say making an MMO is actually not that hard if you make realistic goals for it. I made an MMORPG myself when I was in high school, which took about 8 months to put together. It got to the point of having just over 1000 users and an average of 80 on at a time before my ISP made me shut it down because apparently that's not allowed on residential ISPs. Oops. Compared to making a traditional RPG, the online component doesn't actually add many complications, if you are clever about it. The biggest mistake game developers tend to make in MMORPG development is to start with the client. A well-programmed MMO should actually be not that different from a VNC system--essentially all the client should do is send keyboard and mouse states to the server, render graphics and play sounds. You are much better off starting by making a basic MUD server and a simple console-based client, even telnet should work. What the players sees is mostly irrelevant to the server, and what the player does is mostly irrelevant to the client. If you think in those terms it's actually not that hard, it's mostly just syncing state changes. • Awesome answer! Have you ever considered setting up your MMORPG at a co-location centre or through a business-class connection at your home? (Most cable internet providers have a business-class service that is usually fairly reasonably priced, and as a bonus you get faster browsing too.) I wonder how many of your ~1,000 users would return? – Randolf Richardson Jun 4 '11 at 5:53 • I plan on rebuilding the game soon. It was almost 10 years ago that I made this, so it's way old at this point. Modern tech would make it much more feasible. :) – Stephen Belanger Oct 24 '11 at 2:23 • As I can see TCP/IP connection is used to the server from the client. UDP for chat only. What do you recommend? What you do when on the client side the user drag on item from his bang to bank? Send only mouse coordinates? How do you know at sever side it is dragged to the bank slot X and not outside of the bank and destoyed the item, always keep track the windows state on server side? Or just send a command to the server: item x5 from bag slot x transferred to bank position Y? How do you validate it at server ice this action? - maybe he walk away from bank 500m, whatever – matheszabi Aug 8 '13 at 7:04 • @matheszabi : Many games use networking libraries which are based on UDP only. If you have pure UDP, you don't have to maintain both protocols. For game development, TCP/IP has some limitations and UDP has some benefits. Regarding window positions: from the server perspective, there are no such things as "windows". Client sends a command - user X wants to transfer item A from his bag to bank. The server checks user's location and responds - hey, cheater, you are 100km from the bank, no way you can complete this action! I guess, you got the idea. – JustAMartin Oct 3 '13 at 17:18 • Now that it's 2020 you can rent a small server for$X/month where X is one digit – user253751 Feb 5 at 5:55

One reason that mmos are expensive and lengthy to create is the need to have great amounts of commercial quality content such as visuals and gameplay.

Lots of reasons:

Supporting hundreds or thousands of players introduces a lot of problems. For the programmers, its essentially a giant N^2 problem. For example, imagine something as simple as updating a players position. In addition to dealing with internet latencies, once the position update reaches the server from the player's machine it now needs to be sent to all other player's machines. That's N number of messages being sent, for each player potentially 10 times a second.

Content for an MMO needs to support all these players as well, and provide enough play experience so that players don't "beat the game" after only 40 hours.

Server hardware to run an MMO as well as bandwidth costs are typically very expensive.

TLDR: MMOs are big and complex.

• Well, the position of the player only needs to be sent to the players who are close enough to be affected by that player. Players dont need to know about players (and probably shouldn't know about players) that they can't actually see or interact with. – Kibbee Nov 9 '10 at 15:08

I would like to point you to an article by Shamus Young of Twenty Sided on the issue of server population in MMOs:

http://www.shamusyoung.com/twentysidedtale/?p=6185

This is one reason. Other's are the overpopulation of MMOs(seriously, do you not see enough ads of MMOs already?) and the strain to provide a lag-free, scalar game that can be improved over and over again.

The market is difficult, the management is difficult, the users are difficult lots of times and the profit is often lackluster (P2P or the usual market that uses real money for premium items a la Atlantica Online).

• +1 for the good link (well, linking Shamus Young is pretty much guaranteed to be a good link) – o0'. Dec 1 '10 at 14:15

Ugh. Did I miss an As-Seen-On-TV ad?
Any game is a lot of work to make. Not just an MMO. Most console titles take somewhere from 18-30 months and from 30 to 200 people working on it, and that is generally with the basic infrastructure already in place (render engine, content framework, core libraries) and people with background in game development joining together years of experience.
With an MMO you throw some extra ingredients in the mix, like scalability, networking, lots of playtesting, and (generally) even more content.
Yeah, I'm fairly sure that if you'd try to do that by yourself you'd indeed need a couple of months....

The problems with an MMO can be broken down into 4 major groups. All of which can be solved. Or at least reduced somewhat. However, you'll have to sacrifice your personal vision of the game to do it, in most cases.

Content

There are many ways to solve the Content problem. The obvious one is collecting a ton of talented people and paying them to make the content. However, this isn't the only way. It can be done on the cheap/slow through various channels. The most elegant is the user-generated model. Some examples of user-generated content in MMOs are the recent lego universe MMO (however in very limited scope) and, of course, second life.

But you can take this much further. Kingdom of loathing is a fine example of a system that would lend itself well to user-generated content. (they chose not to do that) Enemies consist of a static hand-drawn image, and various stats and attacks that come from a pool of possible attacks. Each of these elements could be user generated. Finding unique ways to get the users to make your weapons, armor, spells, enemies, cities, countryside, attacks, and even quests and NPCs is a perfectly viable way to source your content. You simply need to bear in mind that this content will never be particularly on-point with a story. It will be what the users want it to be.

For 3D? Look towards games like Spore.

Billing

Yes, billing can be a terribly expensive proposition. However, there are ways to make this easier. Such as paypal. Yes, you'll be asking your users to all have paypal to play, but it certainly doesn't have to stay as paypal only if the game takes off.

Programming

The trick with any MMO is to build systems that accept any data. Don't program spells. Program a universal spell system that accepts data from a database or file to create spells. Don't program quests, program the tools you use to make quests.

Start very simple. Get the core mechanics in place. Consider using an already existing platform. But go about it smartly.

Maybe open source?

Hosting

No matter what, this will cost you. But it doesn't have to start costing you right away. If you are willing to languish in obscurity for a few years, you can slowly build a passionate following and use the money you do make to upgrade. Keep the game simple. Don't ask too much from your hardware. And push off as much as you can to the users.

Pioneer something in bit-torrent and validate through multiple peers responding. You might be able to eliminate the server entirely. Or at least relegate it only doing very important things. However, I don't know of anyone out there doing this.

Even "simple" indie games take months for a small team to make. This goes into design, programming, art, audio, business, marketing, etc. With MMOs, the complexity is greater -- you need a rock-solid (ideally, exploit-proof) game client and server, plus a billing system, a back-end database that can handle a large number of players, etc. These take time to make, test, debug, and sometimes remake from scratch.

The fact that games cost money to make comes mainly from the fact that people need to eat (and developers are people). Even with a team of three, you need a few thousand dollars a month for housing, food, and other necessities.

The cost is related most intensely to the labor required for developing assets. The cost of most tools pale in comparison to what it costs to pay people to use them and produce assets.

Consider that the cost of one fulltime developer can be anywhere between 20k - 100k+. This already equates to very high budgets for normal games, but MMOs require significantly more assets to create. This longer development time means more cost paying the workers, and significantly higher overhead.

That wouldn't really be all that bad though, but until recently, the 'wheel' so to speak wasn't readily available. So each group that has had to create a MMO has had to essentially create their own. Flying blind means alot of work that may be unnecessary gets created, and things that later on are discovered to be very necessary are overlooked.

The process of wasting time on things that you don't need, and having to painfully go back and create things where you should have before (introducing further complexity in the form of bugs and whatever else) becomes very expensive.

That's how it is for most big teams. But Indie/hobbiest teams also run into a few more issues. Usually the big one is not looking at it realistically. People have the tendency of looking at finished, (sometimes) polished work and dramatically underestimating the work that went into creating it. Indie teams usually fail because they do just that, they believe that reaching X level of status would be easy, even with all of their other potential commitments (as most Indies aren't fulltime).

Eventually not being able to completely objectively look at the project discourages them, and they fall apart.

In addition to the technical and logistics reasons mentioned above there is another huge one:

MMOs are designed to satisfy a large and diverse set of people. To get an MMO going you need to satisfy at least several of the types of players from the Bartle Test. So you're game is going to need to include some social features, some exploration features such as art, and probably some competition features.

Much like the audience for an MMO, the creative team needed to build an MMO has to be very diverse. They have to include some really strong engineers to solve the technical issues above. You need some great artists to make a living, breathing world. You need some designers who can both crank out tons of content and make it engaging over long periods of time. You need a full QA and CSR architecture to deal with player feedback and the tons of bugs that will result. Very likely, all of these creators will be interested in the design direction of the project and will either like or dislike whatever direction is chosen. Put all that together and you need a creative team with the ability to drive that diverse collection of people towards a common goal.

There's simply no way to make an MMO of any scale with an "indie" style team. As your team scales up various creative and personal issues tend to spiral out and the rigors of running a business can really get in the way of building a game. Even if you have all the components above it's very difficult to bring it all together to make a successful, launched MMO.

• Not saying you're wrong, but some companies have tried to succeed with only one player-type, such as killers in Darkfall, a pvp-only game. – Cyclops Jul 14 '10 at 23:12
• Yeah, you can try that but it does limit your audience somewhat, making the financial constraints even more inhibiting. My comment is more about why a traditional MMO is hard to make, there are many hybrid styles that I think would be easier to develop – Ben Zeigler Jul 15 '10 at 8:11

If you're going to independently develop an MMO, you will likely be using pre-existing libraries and API's and engines instead of creating your own from scratch, which is what takes a good deal of time for developers like Blizzard.

However, it's unlikely that you are going to find your own custom-built MMO Engine online all ready for you to take and use yourself.

It requires massive amounts of architecture and design. Have you ever tried programming a simple game? If you have, I doubt that you would be asking this question.

Once you have that down, there is the question of art design. Artists cost money. And if you are going to do the art yourself, it'll take time. Lots of time. Imagine drawing everything in WoW from scratch -- every single item, character, every detail of the world. Art itself is what will take a large portion of the time.

Of course, you don't need art. You can just release a wireframe game. But good luck getting people to play your game then.

With Blizzard, especially, there is the fine-tuning of gameplay. Blizzard has to test and run through and explore every single possibility of their gameplay for months and months just to make sure that it's fair. That nobody can find some exploit and ruin the game for everybody else; that things are balanced and fun to play. And even with all that playtesting, things can still slip through. You can't possibly know how the player's full gaming experience will be, once they are interacting with thousands of other players, with just a few weeks of testing.

In addition, it takes a lot of money to run a server that is powerful enough to host your MMO.

If you want to make a MMORPG like WoW, of course it will be long and hard, but the main reasons for that are the content making, the server/network knowledge required to set up a smooth game, and also a team and a good set of tools to maintain the whole game running with as few problem as possible.

Programming a game like WoW is of course a complex work, but the most problematic challenge of such a game is to think about a good architecture for it, in terms of "which data is where, where events happens on which machine would it be a client or a server and what data can be omitted and what cannot" etc, and at the end, benchmark the system to see how a server can handle a certain quantity of players, and when it start to be "laggy".

Technically speaking, WoW is a good product, but don't forget it is very much optimized in term of network and server load.

Now if you want to make a MMORPG, you have to ask yourself if you would make a game as massive as WoW: it is impossible to make content as good as the one WoW features: it's coherent, artistically beautiful, and has not too many polygons.

Personally I wouldn't think about making such good content: you have good artists or you don't have them. I think the bigger problem in a MMORPG like WoW is the bandwidth: 5000 players at the same time costs a lot of bandwidth, and I'm sure some day when the internet is a little faster, the server will be able to manage less traffic thanks to p2p protocols... but that's just an idea...

Do not listen to them!

You do not have to recreate WoW in 7 days. That's BS. As is BS everyone who says a motivated person can't do something.

One good example, done in 48 hours ... yes, HOURS:

http://www.startupmonkeys.com/2010/09/building-a-scrabble-mmo-in-48-hours/

Learn from that, add some weeks to create a basic 3D client, and you're on.

Have fun.

• The question specifically mentioned WoW, and a few answers point out that something smaller is possible in a few months (weeks if you're really good). The scrabble MMO example you posted had about 3-4 people working on it, and had 3 meetups prior to the development time to work out details. Plus it used libraries and other tools to speed up development. You could certainly put together a 'simple MMO' using Unity in about a month if you worked on it full time. But there's more to a good MMO than a 3d client and decentralized system. – thedaian May 25 '11 at 20:30

Its not very difficult if you are not planning to clone WoW or something very similar in terms of number of game mechanics, chars, skills, quests etc., WoW has (and I assume you are not).

But its moderately difficult to develop MMO for sure because it has two overheads (online, massive players) involved when compared to standalone games.

And yes, the cost in terms of money and time is gonna depend on how big and good game you are going to create.

You can cut down time to some extent if you consider buying assets, and using existing game engines/APIs

developers are not cheap

• Actually, some are, and their cheapness is particularly annoying!! – Randolf Richardson Jun 21 '11 at 1:20