MMO Engine Design

Started by
2 comments, last by janta 17 years, 1 month ago
Hi everyone, My team and I are currently thinking about converting our multiplayer game to MMO. Unfortunately I cannot find too many technical details. There is a lot of information about MMO games on the web, but almost all of it is non-technical. If anyone knows of a development resource about the design of MMO games please let me know. Thanks, Ali Khan.
Advertisement
Development of an MMO is a monumental job, and not many teams have the resources or skills to pull it off. As such, there's really not much market for documentation on how it is done; it's one of those paradoxes of learning, in that the teams who are really equipped to do an MMO generally can do it without needing documentation to guide them.

This is not to say that your team's goal is futile. I will warn you that it's a huge job and probably more work than it seems, but if you're willing to tackle it, then more power to you.


That said - it's not likely you'll find much in the way of technical resources for building MMOs in particular. However, a lot of lessons from other fields can be applied to great effect in the MMO space. Are there any particular areas you're unsure of, or any specific questions you have?

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

If you're going about MMO, then this will usually imply clustering. An MMO, running of a single box can have same engine as multiplayer game, as long as its tweaked to handle more users.

But the whole point of Massive in MMO is about having a scalable number of players, and means to accomodate that. Since you soon run into brick walls, clustering is only reliable way to achieve that.

This implies determining cluster design, either message passing system or RMI, object migration between servers, distributed client connection handling, synchronization of data across cluster nodes, load balancing, conflict resolution, latency issues, node failures, etc. And the funny thing is, none of these even matter to the game, it's just the minimal infrastructure necessary to support it. Logic comes after that.

There are no standards in MMOs, but most tend to follow one of few distinctive designs. Multiverse platform might be a good start to see how things work. The other, although not free (I think) is Turbine, ZeroC's Ice might be worth a look as well, CORBA even.

There are also a few research papers written on general problems, try googling for Area of Interest management, distributed systems, publish/subscribe, and anything to go from there.

But overall, there are no tutorials and there are no bullet lists of how to do it. Just about every MMO out there is custom designed for particular game and architecture.

Perhaps the greatest difference between simple multiplayer game and true MMOs would be exactly in clustering. And that is a big topic.
I cant tell you which one, but I believe one of the latest "Game programming gems" has some info about MMO servers. Might be GPG 5 of 6... Check it out.

JA

This topic is closed to new replies.

Advertisement