[READ] Guide to developing an MMO

Post your questions, suggestions and experiences regarding game design, integration of external libraries here. For irrEdit, irrXML and irrKlang, see the
ambiera forums
Panther
Posts: 34
Joined: Tue Jun 06, 2006 1:05 am

Tips for MMO Creators

Post by Panther »

Mel wrote:
What do you think? What would you tell a guy who comes and starts asking how to do a MMO game?
I'm one of those guys who got seduced into the "make your own MMO". I guess I prefer to be a Dungeon Master rather than a Player. I spent two years (so far) trying to design, code, create art, and story -- by myself. I don't have a finished game yet. But I have learned a lot. My advice is:

1. Don't try to do it alone. You will need help. Other people help keep you motivated and accountable. If you do try to do it alone, are you prepared to:
- How's your creative writing? Learn how to write compelling plot lines, characters, and story arcs. Join CritiqueCircle.com so others can laugh at your creative writing (but you'll improve). Write a fantasy book (or at least a novella or short story) set in your game world. That will give it some history and help you define the style and mood.
- How's your fine art degree coming along? Learn how to do concept art, and static fantasy art for websites, posters, and in-game art. Don't forget to drop $3000 on Photoshop (per license/seat). No more pirated warez for you - otherwise your company and you will get sued! Drop another $1000 on a Wacom tablet (one for each artist on your team!). Better join artSIG.com so others can laugh at your "art" (but you'll improve).
- Now that you have your Master's of Fine Art, time to start learning 3D art. Drop $3000 on Maya, and start learning 3D modeling, texturing, and animating. Sell your 3D models on TurboSquid (to help finance the rest of your game).
- So you're good at C++. Don't count on using that for everything! How's your web coding (Java, HTML, CSS, etc), Perl, and Python. Also learn Flash for sprucing up that website!
- Read books on game design.
- How's your music performance and composition skills? Got a full Korg keyboard, and recording studio? If not, better start browsing royalty-free music at Shockwave-Sound.com. Be prepared to pay $600+ per song (depending on license). Also, snag some sound effects on soundsnap.com. If you're composing your own game music, better go on a music critique site, to make sure it's good quality!
- If you can't/won't learn all of the above, you'll have to pay someone to do it. Fortunately there's TurboSquid, Rent-A-Coder, etc. You'll need lots of $$$ though!

2. Don't count on your motivation lasting for years. Most people get bored and drop the idea after several months. To counter this, make something small as a "prototype" first, then expand on it. It's better to have a small working prototype after 6 months, than a large pile of unfinished code.

3. If you're a programmer, you probably think it's all coding. But from my experience, based on man hours, your game effort will roughly be 10% design/misc, 10% coding, and about 80% art. Hard to believe? It's true. Rendering, texturing, animating, etc take a lot of time.

4. Get into playing board games. Yes, I'm not joking. And I'm not talking Monopoly and Risk. I'm talking the brainy ones like Settlers of Catan, Citadels, Colossal Arena, and other games you've never heard of. Buy the top ten games on thoughthammer.com. Play them with family and friends. Then (listen now...) make your MMO as a board game. That will force you to keep it simple and concise. Play this game with your friends, and listen when they pick it apart. Revise, and recreate it. Then transmogrify it into a computer game.

5. Don't do it to make money, or to try to make a living. Don't do it to show off to your friends. Do it only if you really love it, and enjoy working on it. It's a journey, not a destination.

6. Okay, this one's going to be "flame bait" for sure. There are tools out there (like RealmCrafter and TGEA). Do not use them. "Why?" you ask. "Am I crazy?" you ask. "Those tools will save me hundreds/thousands of hours!" you say. They will - kind-of. But what happens when you discover big bugs in that tool? How are you going to fix it? YOU CAN'T! HAH! Screwed. You'll have to beg the developers on their forum to fix it. Without the source code, it is actually impossible. "But it's open source" you say. Well, if it's a truly open source tool, and you're very good at understanding other people's code, then maybe. Irrlicht is definitely okay. But if it's written in BlitzBasic... gimme a break! My advice: write the game from scratch yourself (you and your team). If you want to use free code, use snippets from developers like on the Irrlicht forums.
I have one exception to the "don't use MMO turn-key tools". That is, if you decide to, your game won't work, but you will learn a whole lot. And that will make your second attempt much easier (this is what happened to me).

7. Keep it simple. I know I already said that in #4 above, but it's worth saying twice. Your prototype needs to be mind-numbingly simple! Two races! Two cities. Put water somewhere. Add 2-3 monsters. Less than ten items (that includes weapons, armor, magic items, and treasure!). Nothing fancy - no deformable terrains, advanced physics, random character generators, or questing systems. Don't get hung up on polishing details for your prototype. You can polish once it is working and playable. One plot line: "rescue princess from dragon" or similar. Once you do this, then do a simple website, then go back and flesh out your game. Learn what the word "episodic" means (just create one "episode" of a game, a brief taste). Hopefully your game is unique and not just another WoW.

8. Learn and use Stackless Python as your server side language. Why? EVE Online did it. You can have one PC with 100,000 people on it, rather than limited to 2000, like every other language (including C++). The reason? Every thread has a lot of memory overhead. Stackless only requires a few Kb for each thread. Yes, it's an interpreted language. But it's pretty fast, readable, maintainable, and you won't have to take your server down and rebuild for most game bug fixes and tweaks.

Hope that helps all you budding MMO creators out there! Good luck to you! :D

Ariejan wrote:
Maybe I'll do a write up about how to start MMO development and the common pit falls. Say 'aye' if you want that post!
Ariejan, I'd love to read that post! "Aye!".
Daniel FF
Posts: 53
Joined: Tue Feb 19, 2008 7:15 pm

Post by Daniel FF »

Pretty expert guy says : "Since Python is written in C, C can do anything Python can."

And i think WoW is full c++
wowdevver24
Posts: 26
Joined: Mon Jan 04, 2010 8:02 pm

Post by wowdevver24 »

Actually WoW is C++, C & asm as most commercial engines are, I wholely disagree btw that graphics are the main part of an MMO seeing as I consult in the creative field of IT I think I know a little about project management. a good creative team would plan through concept art and work out common textures to work with, shaders to have made etc and then they will re-use these over a variety of different terrains.

The problem is that creatives or "idea people" are 10 a penny, people that can plan an MMO are also 10 a penny, myself included and in-fact blizzard included, having looked into their engine unnoficially for a few years I must say it's just as hacked togethr as you would expect from some college intern, the problem being that as MMO's are relatively new what else would you expect, the best MMO I have ever played was freelancer by microsoft.

My point being that this article will never materialise (in spirit, im sure someone will try) as the fundamental needs of community gaming continue to grow each and every day.

I also disagree one person cannot do this on their own, maybe I cannot and the poster could not but that does not mean there is not a linus torvald sitting round the corner waiting to give WoW a run for their money.

I am particularly interested in this field however so anyone that wants to discuss my progress and their own please feel free to PM me as irrlicht is just the latest "unit test" for my MMO plans
Remember all information is contextual and if I do not understand the context I cannot gras the information
Ulf
Posts: 281
Joined: Mon Jun 15, 2009 8:53 am
Location: Australia

Post by Ulf »

Panther wrote: But from my experience, based on man hours, your game effort will roughly be 10% design/misc, 10% coding, and about 80% art
Which games have you made?

What about testing/debugging?
Don't you do that?
Shouldn't that be about 50 - 80% ? I don't know cause I haven't made a game, but I know how it is to try making a game engine.
I can hear birds chirping
:twisted:

I live in the Eye of Insanity.
wowdevver24
Posts: 26
Joined: Mon Jan 04, 2010 8:02 pm

Post by wowdevver24 »

if you count testing, which your right we should then over 2/3 of any good project is debugging & bug fixing, sadly I do not think you will get a credible reply to the games made request
Remember all information is contextual and if I do not understand the context I cannot gras the information
Post Reply