Intro to Massively Multiplayer Online Game (MMOG) Design

3,311 views

Published on

Presentation on MMOG architecture given to several app development groups interested in moving into the game design world. Much of this content was inspired by t-machine.org.

Intro to Massively Multiplayer Online Game (MMOG) Design

  1. 1. Introduction to MMOG Architecture
  2. 2. ExperienceBuilt games?In app store?Using game center?Server-side architecture?MMOG projects?
  3. 3. AgendaWhat is GameWhat is MMOGMMOG ComponentsUnique About MMOGMMOG Trends
  4. 4. My BackgroundData center designMarketing strategyMobile development
  5. 5. Game LoopReceive player inputProcess player actionsCalculate state changesApply state changesRepeat
  6. 6. The Game Grows Upsingle-playermultiuser domain > MUDmultiplayer online game > MOGmassively multiplayer online game > MMOG
  7. 7. MMOG issession persistence 1000+ concurrentssingle virtual world multiple client supportplayer interaction
  8. 8. Build an MMOG3rd-party engine or in-house?Self-hosted or gaming provider?In-house servers or cloud?Shared or dedicated hardware?Shard or not-to-shard?udp or tcp?Peer-to-peer or server-client?Virtualization or metal?Client or server-side logic?Chat or VoIP?Windows or Linux?MySQL or SQL Server?
  9. 9. Basic MMOG ArchitecturePlayer client connects to Login serverLogin Server provides authorization tokenCopy of token goes to World ServerPlayer client handed off to World ServerWorld Server provides character dataWorld Server provides connection info forChat Server & Zone ServerPlayer client handed off to Zone ServerZone Server handles gameplay in zoneWorld Server handles transition betweenzones
  10. 10. Think SecurityHackers are inevitableSpammers are inevitableCheaters are inevitable
  11. 11. Contrary to non-MMOGs...the majority of MMOG development iscontent...the majority of MMOG development takesplace after launch...MMOG core game logic will change...MMOGs require massive quantities ofstorage
  12. 12. ...the majority of MMOG development is content
  13. 13. "Content" isStorylines (missions, quests, events)3d areas (meshes, textures, logic)Loot (item graphics, drop rates, item stats, etc.)
  14. 14. "Content" is notFancy graphicsPhysics enginesAICore game rules...which tend to make up the bulk of non-MMOGs
  15. 15. Rate at which players consume contentvastly exceeds the rate at which developers generate it eg. 50 developers generating content & 500,000 consuming it (and users are sharing discoveries so consumption is exponential)
  16. 16. ...the majority of MMOG development takes place after launch
  17. 17. Most MMOGs release new content every 3- 12 months Releases are large: "miniature MMOGs"(new 3d areas, quests, items, plotlines, etc.)
  18. 18. Underlying technology (engine) is usuallyonly updated when required by a content changeCutting-edge graphics are not a primary selling point of MMOGs, unlike non- MMOGs
  19. 19. MMOG development teams typically getlarger after launch (developing new content & keeping the old content still working)
  20. 20. ...MMOG core game logic will change
  21. 21. Players will find a loophole and unbalance the game, so you have to "fix" it
  22. 22. Writing core logic that is easy to change (and deal with side effects) is more important than writing easy core logic
  23. 23. ...MMOGs require massive quantities of storage
  24. 24. Progress of every player in an MMO needs to be independently tracked (quests completed, equipment they own, etc.)
  25. 25. 30GB+ every 24 hours, all of which needs to be programmatically referenced
  26. 26. MMOG Design ConsiderationsHow much effort is required to change an in-game itemHow much effort is required to add (or remove) in-game itemsHow re-usable is the contentHow much effort is required to re-use re-usable contentHow much specialist knowledge is required to modify content and logicHow exportable is the data generated by playing the gameHow analyzable is the data generated by playing the gameHow much effort is required to modify core contentHow much effort is required to change individual rules (and debug)How many of the above can be made without a developerWhere can 3rd-party systems be used for server-side components
  27. 27. MMOG Design Rules of ThumbUse non-proprietary databases for persistenceUse relational databasesImplement game logic as raw data ratherthan compiled dataUse standard scripting languages wherepossibleIntense testing during developmentEven more intense testing after launch
  28. 28. The FutureCloud is the hardware of choiceiPhone grows as gaming platformBrowser dwindles as gaming clientAd-sponsored worldsEducational worlds
  29. 29. The End References http://www.ibm.com/developerworks/library/ar-powerup1/http://t-machine.org/index.php/2007/09/03/entity-systems-are-the-future-of-mmog-development-part-1/

×