SlideShare a Scribd company logo
1 of 29
Download to read offline
Introduction to MMOG Architecture
Experience
Built games?
In app store?
Using game center?
Server-side architecture?
MMOG projects?
Agenda
What is Game
What is MMOG
MMOG Components
Unique About MMOG
MMOG Trends
My Background
Data center design
Marketing strategy
Mobile development
Game Loop
Receive player input
Process player actions
Calculate state changes
Apply state changes
Repeat
The Game Grows Up
single-player
multiuser domain > MUD
multiplayer online game > MOG
massively multiplayer online game > MMOG
MMOG is
session persistence    1000+ concurrents
single virtual world   multiple client support
player interaction
Build an MMOG
3rd-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?
Basic MMOG Architecture
Player client connects to Login server

Login Server provides authorization token

Copy of token goes to World Server

Player client handed off to World Server

World Server provides character data

World Server provides connection info for
Chat Server & Zone Server

Player client handed off to Zone Server

Zone Server handles gameplay in zone

World Server handles transition between
zones
Think Security
Hackers are inevitable
Spammers are inevitable
Cheaters are inevitable
Contrary to non-MMOGs

...the majority of MMOG development is
content
...the majority of MMOG development takes
place after launch
...MMOG core game logic will change
...MMOGs require massive quantities of
storage
...the majority of MMOG development is
                 content
"Content" is
Storylines (missions, quests, events)
3d areas (meshes, textures, logic)
Loot (item graphics, drop rates, item stats, etc.)
"Content" is not
Fancy graphics
Physics engines
AI
Core game rules


...which tend to make up the bulk of non-MMOGs
Rate at which players consume content
vastly 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)
...the majority of MMOG development takes
             place after launch
Most MMOGs release new content every 3-
             12 months

  Releases are large: "miniature MMOGs"
(new 3d areas, quests, items, plotlines, etc.)
Underlying technology (engine) is usually
only updated when required by a content
                change

Cutting-edge graphics are not a primary
 selling point of MMOGs, unlike non-
                MMOGs
MMOG development teams typically get
larger after launch (developing new content
  & keeping the old content still working)
...MMOG core game logic will change
Players will find a loophole and unbalance
     the game, so you have to "fix" it
Writing core logic that is easy to change
   (and deal with side effects) is more
 important than writing easy core logic
...MMOGs require massive quantities of
              storage
Progress of every player in an MMO needs
   to be independently tracked (quests
   completed, equipment they own, etc.)
30GB+ every 24 hours, all of which needs
  to be programmatically referenced
MMOG Design Considerations
How much effort is required to change an in-game item
How much effort is required to add (or remove) in-game items
How re-usable is the content
How much effort is required to re-use re-usable content
How much specialist knowledge is required to modify content and logic
How exportable is the data generated by playing the game
How analyzable is the data generated by playing the game
How much effort is required to modify core content
How much effort is required to change individual rules (and debug)
How many of the above can be made without a developer
Where can 3rd-party systems be used for server-side components
MMOG Design Rules of Thumb
Use non-proprietary databases for persistence
Use relational databases
Implement game logic as raw data rather
than compiled data
Use standard scripting languages where
possible
Intense testing during development
Even more intense testing after launch
The Future
Cloud is the hardware of choice
iPhone grows as gaming platform
Browser dwindles as gaming client
Ad-sponsored worlds
Educational worlds
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/

More Related Content

What's hot

Game Balance 1: What is Game Balance
Game Balance 1: What is Game BalanceGame Balance 1: What is Game Balance
Game Balance 1: What is Game BalanceMarc Miquel
 
Killer Design Patterns for F2P Mobile/Tablet Games
Killer Design Patterns for F2P Mobile/Tablet GamesKiller Design Patterns for F2P Mobile/Tablet Games
Killer Design Patterns for F2P Mobile/Tablet GamesHenric Suuronen
 
게임제작개론 : #6 게임 시스템 구조에 대한 이해
게임제작개론 : #6 게임 시스템 구조에 대한 이해게임제작개론 : #6 게임 시스템 구조에 대한 이해
게임제작개론 : #6 게임 시스템 구조에 대한 이해Seungmo Koo
 
Deterministic Simulation - What modern online games can learn from the Game B...
Deterministic Simulation - What modern online games can learn from the Game B...Deterministic Simulation - What modern online games can learn from the Game B...
Deterministic Simulation - What modern online games can learn from the Game B...David Salz
 
Idle Clicker Games Presentation (Casual Connect USA 2017)
Idle Clicker Games Presentation (Casual Connect USA 2017)Idle Clicker Games Presentation (Casual Connect USA 2017)
Idle Clicker Games Presentation (Casual Connect USA 2017)David Piao Chiu
 
게임제작개론: #1 게임 구성 요소의 이해
게임제작개론: #1 게임 구성 요소의 이해게임제작개론: #1 게임 구성 요소의 이해
게임제작개론: #1 게임 구성 요소의 이해Seungmo Koo
 
Player Traversal Mechanics in the Vast World of Horizon Zero Dawn
Player Traversal Mechanics in the Vast World of Horizon Zero DawnPlayer Traversal Mechanics in the Vast World of Horizon Zero Dawn
Player Traversal Mechanics in the Vast World of Horizon Zero DawnGuerrilla
 
게임제작개론 : #0 과목소개
게임제작개론 : #0 과목소개게임제작개론 : #0 과목소개
게임제작개론 : #0 과목소개Seungmo Koo
 
프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법Lee Sangkyoon (Kay)
 
LiveOps 101 | Andrew Munden
LiveOps 101 | Andrew MundenLiveOps 101 | Andrew Munden
LiveOps 101 | Andrew MundenJessica Tams
 
게임제작개론 : #5 플레이어에 대한 이해
게임제작개론 : #5 플레이어에 대한 이해게임제작개론 : #5 플레이어에 대한 이해
게임제작개론 : #5 플레이어에 대한 이해Seungmo Koo
 
Python과 Git으로 만드는 모바일 게임 패치 시스템
Python과 Git으로 만드는 모바일 게임 패치 시스템Python과 Git으로 만드는 모바일 게임 패치 시스템
Python과 Git으로 만드는 모바일 게임 패치 시스템Youngtaek Oh
 
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1Simon Hade
 
06. Game Architecture
06. Game Architecture06. Game Architecture
06. Game ArchitectureAmin Babadi
 
게임 기획 튜토리얼 (2015 개정판)
게임 기획 튜토리얼 (2015 개정판)게임 기획 튜토리얼 (2015 개정판)
게임 기획 튜토리얼 (2015 개정판)Lee Sangkyoon (Kay)
 
Effective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesEffective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesJames Gwertzman
 
게임제작개론: #2 세부 디자인 요소
게임제작개론: #2 세부 디자인 요소게임제작개론: #2 세부 디자인 요소
게임제작개론: #2 세부 디자인 요소Seungmo Koo
 
기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까Han Je Sung
 
모바일/온라인 게임의 매출시뮬레이션
모바일/온라인 게임의 매출시뮬레이션모바일/온라인 게임의 매출시뮬레이션
모바일/온라인 게임의 매출시뮬레이션Sunnyrider
 
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しようDaisuke Masubuchi
 

What's hot (20)

Game Balance 1: What is Game Balance
Game Balance 1: What is Game BalanceGame Balance 1: What is Game Balance
Game Balance 1: What is Game Balance
 
Killer Design Patterns for F2P Mobile/Tablet Games
Killer Design Patterns for F2P Mobile/Tablet GamesKiller Design Patterns for F2P Mobile/Tablet Games
Killer Design Patterns for F2P Mobile/Tablet Games
 
게임제작개론 : #6 게임 시스템 구조에 대한 이해
게임제작개론 : #6 게임 시스템 구조에 대한 이해게임제작개론 : #6 게임 시스템 구조에 대한 이해
게임제작개론 : #6 게임 시스템 구조에 대한 이해
 
Deterministic Simulation - What modern online games can learn from the Game B...
Deterministic Simulation - What modern online games can learn from the Game B...Deterministic Simulation - What modern online games can learn from the Game B...
Deterministic Simulation - What modern online games can learn from the Game B...
 
Idle Clicker Games Presentation (Casual Connect USA 2017)
Idle Clicker Games Presentation (Casual Connect USA 2017)Idle Clicker Games Presentation (Casual Connect USA 2017)
Idle Clicker Games Presentation (Casual Connect USA 2017)
 
게임제작개론: #1 게임 구성 요소의 이해
게임제작개론: #1 게임 구성 요소의 이해게임제작개론: #1 게임 구성 요소의 이해
게임제작개론: #1 게임 구성 요소의 이해
 
Player Traversal Mechanics in the Vast World of Horizon Zero Dawn
Player Traversal Mechanics in the Vast World of Horizon Zero DawnPlayer Traversal Mechanics in the Vast World of Horizon Zero Dawn
Player Traversal Mechanics in the Vast World of Horizon Zero Dawn
 
게임제작개론 : #0 과목소개
게임제작개론 : #0 과목소개게임제작개론 : #0 과목소개
게임제작개론 : #0 과목소개
 
프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법프로그래머에게 사랑받는 게임 기획서 작성법
프로그래머에게 사랑받는 게임 기획서 작성법
 
LiveOps 101 | Andrew Munden
LiveOps 101 | Andrew MundenLiveOps 101 | Andrew Munden
LiveOps 101 | Andrew Munden
 
게임제작개론 : #5 플레이어에 대한 이해
게임제작개론 : #5 플레이어에 대한 이해게임제작개론 : #5 플레이어에 대한 이해
게임제작개론 : #5 플레이어에 대한 이해
 
Python과 Git으로 만드는 모바일 게임 패치 시스템
Python과 Git으로 만드는 모바일 게임 패치 시스템Python과 Git으로 만드는 모바일 게임 패치 시스템
Python과 Git으로 만드는 모바일 게임 패치 시스템
 
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
Space Ape's Live Ops Stack: Engineering Mobile Games for Live Ops from Day 1
 
06. Game Architecture
06. Game Architecture06. Game Architecture
06. Game Architecture
 
게임 기획 튜토리얼 (2015 개정판)
게임 기획 튜토리얼 (2015 개정판)게임 기획 튜토리얼 (2015 개정판)
게임 기획 튜토리얼 (2015 개정판)
 
Effective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P GamesEffective LiveOps Strategies for F2P Games
Effective LiveOps Strategies for F2P Games
 
게임제작개론: #2 세부 디자인 요소
게임제작개론: #2 세부 디자인 요소게임제작개론: #2 세부 디자인 요소
게임제작개론: #2 세부 디자인 요소
 
기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까기획자의 포트폴리오는 어떻게 써야 할까
기획자의 포트폴리오는 어떻게 써야 할까
 
모바일/온라인 게임의 매출시뮬레이션
모바일/온라인 게임의 매출시뮬레이션모바일/온라인 게임의 매출시뮬레이션
모바일/온라인 게임의 매출시뮬레이션
 
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
個人からトリプル A タイトルのゲーム開発者まで。Azure PlayFab で LiveOps しよう
 

Viewers also liked

Next-generation MMORPG service architecture
Next-generation MMORPG service architectureNext-generation MMORPG service architecture
Next-generation MMORPG service architectureJongwon Kim
 
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and SecuritySeungmin Shin
 
A Practical Architecture Design for MMO Casual Game
A Practical Architecture Design for MMO Casual GameA Practical Architecture Design for MMO Casual Game
A Practical Architecture Design for MMO Casual Gameaction.vn
 
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버Heungsub Lee
 
NASA' Use of Immersive Environments
NASA' Use of Immersive EnvironmentsNASA' Use of Immersive Environments
NASA' Use of Immersive EnvironmentsPeter Brantley
 
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012devCAT Studio, NEXON
 
[NDC2016] TERA 서버의 Modern C++ 활용기
[NDC2016] TERA 서버의 Modern C++ 활용기[NDC2016] TERA 서버의 Modern C++ 활용기
[NDC2016] TERA 서버의 Modern C++ 활용기Sang Heon Lee
 
Real Time Software Design in Software Engineering SE13
Real Time Software Design in Software Engineering SE13Real Time Software Design in Software Engineering SE13
Real Time Software Design in Software Engineering SE13koolkampus
 
Iocp 기본 구조 이해
Iocp 기본 구조 이해Iocp 기본 구조 이해
Iocp 기본 구조 이해Nam Hyeonuk
 
게임서버프로그래밍 #1 - IOCP
게임서버프로그래밍 #1 - IOCP게임서버프로그래밍 #1 - IOCP
게임서버프로그래밍 #1 - IOCPSeungmo Koo
 
Volleyball Powerpoint
Volleyball PowerpointVolleyball Powerpoint
Volleyball Powerpointnucampusrec
 
Valves presentation
Valves presentationValves presentation
Valves presentationmohdalaamri
 
Scalability, Availability & Stability Patterns
Scalability, Availability & Stability PatternsScalability, Availability & Stability Patterns
Scalability, Availability & Stability PatternsJonas Bonér
 
HPLC Principle,Instrumentation and Application
HPLC Principle,Instrumentation and ApplicationHPLC Principle,Instrumentation and Application
HPLC Principle,Instrumentation and ApplicationAlakesh Pradhan
 

Viewers also liked (15)

Next-generation MMORPG service architecture
Next-generation MMORPG service architectureNext-generation MMORPG service architecture
Next-generation MMORPG service architecture
 
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security[KGC 2012] Online Game Server Architecture Case Study Performance and Security
[KGC 2012] Online Game Server Architecture Case Study Performance and Security
 
A Practical Architecture Design for MMO Casual Game
A Practical Architecture Design for MMO Casual GameA Practical Architecture Design for MMO Casual Game
A Practical Architecture Design for MMO Casual Game
 
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
 
NASA' Use of Immersive Environments
NASA' Use of Immersive EnvironmentsNASA' Use of Immersive Environments
NASA' Use of Immersive Environments
 
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
 
[NDC2016] TERA 서버의 Modern C++ 활용기
[NDC2016] TERA 서버의 Modern C++ 활용기[NDC2016] TERA 서버의 Modern C++ 활용기
[NDC2016] TERA 서버의 Modern C++ 활용기
 
Real Time Software Design in Software Engineering SE13
Real Time Software Design in Software Engineering SE13Real Time Software Design in Software Engineering SE13
Real Time Software Design in Software Engineering SE13
 
Iocp 기본 구조 이해
Iocp 기본 구조 이해Iocp 기본 구조 이해
Iocp 기본 구조 이해
 
게임서버프로그래밍 #1 - IOCP
게임서버프로그래밍 #1 - IOCP게임서버프로그래밍 #1 - IOCP
게임서버프로그래밍 #1 - IOCP
 
Volleyball Powerpoint
Volleyball PowerpointVolleyball Powerpoint
Volleyball Powerpoint
 
Basic Server PPT (THDC)
Basic Server PPT (THDC)Basic Server PPT (THDC)
Basic Server PPT (THDC)
 
Valves presentation
Valves presentationValves presentation
Valves presentation
 
Scalability, Availability & Stability Patterns
Scalability, Availability & Stability PatternsScalability, Availability & Stability Patterns
Scalability, Availability & Stability Patterns
 
HPLC Principle,Instrumentation and Application
HPLC Principle,Instrumentation and ApplicationHPLC Principle,Instrumentation and Application
HPLC Principle,Instrumentation and Application
 

Similar to Intro to Massively Multiplayer Online Game (MMOG) Design

Designing a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesiFunFactory Inc.
 
Modern Data Stack for Game Analytics / Dmitry Anoshin (Microsoft Gaming, The ...
Modern Data Stack for Game Analytics / Dmitry Anoshin (Microsoft Gaming, The ...Modern Data Stack for Game Analytics / Dmitry Anoshin (Microsoft Gaming, The ...
Modern Data Stack for Game Analytics / Dmitry Anoshin (Microsoft Gaming, The ...DevGAMM Conference
 
Introduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsIntroduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsPouya Pournasir
 
Windows 8 and MonoGame Presentation at Staffordshire University
Windows 8 and MonoGame Presentation at Staffordshire UniversityWindows 8 and MonoGame Presentation at Staffordshire University
Windows 8 and MonoGame Presentation at Staffordshire UniversityLee Stott
 
Dedicated Game Servers
Dedicated Game ServersDedicated Game Servers
Dedicated Game Serverswebhostingguy
 
PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game EngineDiksha Bhargava
 
My Presentation.ppt
My Presentation.pptMy Presentation.ppt
My Presentation.pptFake474384
 
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...DevClub_lv
 
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3D
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3DJS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3D
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3DJSFestUA
 
Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Jun Okumura
 
The tech. behind RoboBlastPlanet
The tech. behind RoboBlastPlanetThe tech. behind RoboBlastPlanet
The tech. behind RoboBlastPlanetJavier Abud
 
Game software development trends
Game software development trendsGame software development trends
Game software development trends_veronika_
 
Behind the Scenes: Deploying a Low-Latency Multiplayer Game Globally
Behind the Scenes: Deploying a Low-Latency Multiplayer Game GloballyBehind the Scenes: Deploying a Low-Latency Multiplayer Game Globally
Behind the Scenes: Deploying a Low-Latency Multiplayer Game GloballyJames Gwertzman
 
Choosing A Game Engine - More Than Frames Per Second
Choosing A Game Engine - More Than Frames Per SecondChoosing A Game Engine - More Than Frames Per Second
Choosing A Game Engine - More Than Frames Per SecondNoam Gat
 
Online games: a real-time problem for the network
Online games: a real-time problem for the networkOnline games: a real-time problem for the network
Online games: a real-time problem for the networkJose Saldana
 
The Future is Operations: Why Mobile Games Need Backends
The Future is Operations: Why Mobile Games Need BackendsThe Future is Operations: Why Mobile Games Need Backends
The Future is Operations: Why Mobile Games Need BackendsJames Gwertzman
 
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...gamifi.cc
 

Similar to Intro to Massively Multiplayer Online Game (MMOG) Design (20)

Designing a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile games
 
Modern Data Stack for Game Analytics / Dmitry Anoshin (Microsoft Gaming, The ...
Modern Data Stack for Game Analytics / Dmitry Anoshin (Microsoft Gaming, The ...Modern Data Stack for Game Analytics / Dmitry Anoshin (Microsoft Gaming, The ...
Modern Data Stack for Game Analytics / Dmitry Anoshin (Microsoft Gaming, The ...
 
Introduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsIntroduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & Components
 
Windows 8 and MonoGame Presentation at Staffordshire University
Windows 8 and MonoGame Presentation at Staffordshire UniversityWindows 8 and MonoGame Presentation at Staffordshire University
Windows 8 and MonoGame Presentation at Staffordshire University
 
Dedicated Game Servers
Dedicated Game ServersDedicated Game Servers
Dedicated Game Servers
 
Power point
Power pointPower point
Power point
 
PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game Engine
 
My Presentation.ppt
My Presentation.pptMy Presentation.ppt
My Presentation.ppt
 
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...
AAA 3D GRAPHICS ON THE WEB WITH REACTJS + BABYLONJS + UNITY3D by Denis Radin ...
 
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3D
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3DJS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3D
JS Fest 2019. Денис Радин. AAA 3D графика в Web с ReactJS, BabylonJS и Unity3D
 
Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)
 
The tech. behind RoboBlastPlanet
The tech. behind RoboBlastPlanetThe tech. behind RoboBlastPlanet
The tech. behind RoboBlastPlanet
 
HTML5 Game Development frameworks overview
HTML5 Game Development frameworks overviewHTML5 Game Development frameworks overview
HTML5 Game Development frameworks overview
 
Presentation3
Presentation3Presentation3
Presentation3
 
Game software development trends
Game software development trendsGame software development trends
Game software development trends
 
Behind the Scenes: Deploying a Low-Latency Multiplayer Game Globally
Behind the Scenes: Deploying a Low-Latency Multiplayer Game GloballyBehind the Scenes: Deploying a Low-Latency Multiplayer Game Globally
Behind the Scenes: Deploying a Low-Latency Multiplayer Game Globally
 
Choosing A Game Engine - More Than Frames Per Second
Choosing A Game Engine - More Than Frames Per SecondChoosing A Game Engine - More Than Frames Per Second
Choosing A Game Engine - More Than Frames Per Second
 
Online games: a real-time problem for the network
Online games: a real-time problem for the networkOnline games: a real-time problem for the network
Online games: a real-time problem for the network
 
The Future is Operations: Why Mobile Games Need Backends
The Future is Operations: Why Mobile Games Need BackendsThe Future is Operations: Why Mobile Games Need Backends
The Future is Operations: Why Mobile Games Need Backends
 
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
 

More from Christopher Mohritz

Cutting Through the Hype - What Artificial Intelligence Looks Like in Real Wo...
Cutting Through the Hype - What Artificial Intelligence Looks Like in Real Wo...Cutting Through the Hype - What Artificial Intelligence Looks Like in Real Wo...
Cutting Through the Hype - What Artificial Intelligence Looks Like in Real Wo...Christopher Mohritz
 
What Happens When Computers Can Have a Natural Conversation?
What Happens When Computers Can Have a Natural Conversation?What Happens When Computers Can Have a Natural Conversation?
What Happens When Computers Can Have a Natural Conversation?Christopher Mohritz
 
Computers Are Opening Their Eyes - And They're Already Better at Seeing Than ...
Computers Are Opening Their Eyes - And They're Already Better at Seeing Than ...Computers Are Opening Their Eyes - And They're Already Better at Seeing Than ...
Computers Are Opening Their Eyes - And They're Already Better at Seeing Than ...Christopher Mohritz
 
How to Build Legendary Customer Relationships With Artificial Intelligence
How to Build Legendary Customer Relationships With Artificial IntelligenceHow to Build Legendary Customer Relationships With Artificial Intelligence
How to Build Legendary Customer Relationships With Artificial IntelligenceChristopher Mohritz
 
How Can Artificial Intelligence Make Business More Human?
How Can Artificial Intelligence Make Business More Human?How Can Artificial Intelligence Make Business More Human?
How Can Artificial Intelligence Make Business More Human?Christopher Mohritz
 
How to Build a Self-Driving Business
How to Build a Self-Driving BusinessHow to Build a Self-Driving Business
How to Build a Self-Driving BusinessChristopher Mohritz
 
A.I. Makes Your Business More Human
A.I. Makes Your Business More HumanA.I. Makes Your Business More Human
A.I. Makes Your Business More HumanChristopher Mohritz
 
The Creative Side of Artificial Intelligence
The Creative Side of Artificial IntelligenceThe Creative Side of Artificial Intelligence
The Creative Side of Artificial IntelligenceChristopher Mohritz
 
Connecting Up an Intel Edison Device on AWS IoT
Connecting Up an Intel Edison Device on AWS IoTConnecting Up an Intel Edison Device on AWS IoT
Connecting Up an Intel Edison Device on AWS IoTChristopher Mohritz
 
Virtual Reality is Here and it's Real
Virtual Reality is Here and it's RealVirtual Reality is Here and it's Real
Virtual Reality is Here and it's RealChristopher Mohritz
 
Immersive Environments Powered by IoT
Immersive Environments Powered by IoTImmersive Environments Powered by IoT
Immersive Environments Powered by IoTChristopher Mohritz
 
Building a Conversational Speech Interface
Building a Conversational Speech InterfaceBuilding a Conversational Speech Interface
Building a Conversational Speech InterfaceChristopher Mohritz
 
Removing the Friction of Technology
Removing the Friction of TechnologyRemoving the Friction of Technology
Removing the Friction of TechnologyChristopher Mohritz
 
Exploring the Opportunities of Machine Learning
Exploring the Opportunities of Machine LearningExploring the Opportunities of Machine Learning
Exploring the Opportunities of Machine LearningChristopher Mohritz
 
Entering an Era of Perfect Information
Entering an Era of Perfect InformationEntering an Era of Perfect Information
Entering an Era of Perfect InformationChristopher Mohritz
 
Building a Visual Recognition Service
Building a Visual Recognition ServiceBuilding a Visual Recognition Service
Building a Visual Recognition ServiceChristopher Mohritz
 
Machine Learning & Self-Driving Cars
Machine Learning & Self-Driving CarsMachine Learning & Self-Driving Cars
Machine Learning & Self-Driving CarsChristopher Mohritz
 

More from Christopher Mohritz (20)

Cutting Through the Hype - What Artificial Intelligence Looks Like in Real Wo...
Cutting Through the Hype - What Artificial Intelligence Looks Like in Real Wo...Cutting Through the Hype - What Artificial Intelligence Looks Like in Real Wo...
Cutting Through the Hype - What Artificial Intelligence Looks Like in Real Wo...
 
What Happens When Computers Can Have a Natural Conversation?
What Happens When Computers Can Have a Natural Conversation?What Happens When Computers Can Have a Natural Conversation?
What Happens When Computers Can Have a Natural Conversation?
 
Computers Are Opening Their Eyes - And They're Already Better at Seeing Than ...
Computers Are Opening Their Eyes - And They're Already Better at Seeing Than ...Computers Are Opening Their Eyes - And They're Already Better at Seeing Than ...
Computers Are Opening Their Eyes - And They're Already Better at Seeing Than ...
 
How to Build Legendary Customer Relationships With Artificial Intelligence
How to Build Legendary Customer Relationships With Artificial IntelligenceHow to Build Legendary Customer Relationships With Artificial Intelligence
How to Build Legendary Customer Relationships With Artificial Intelligence
 
How Can Artificial Intelligence Make Business More Human?
How Can Artificial Intelligence Make Business More Human?How Can Artificial Intelligence Make Business More Human?
How Can Artificial Intelligence Make Business More Human?
 
How to Build a Self-Driving Business
How to Build a Self-Driving BusinessHow to Build a Self-Driving Business
How to Build a Self-Driving Business
 
A.I. Makes Your Business More Human
A.I. Makes Your Business More HumanA.I. Makes Your Business More Human
A.I. Makes Your Business More Human
 
Let's Build a Chatbot!
Let's Build a Chatbot!Let's Build a Chatbot!
Let's Build a Chatbot!
 
The Creative Side of Artificial Intelligence
The Creative Side of Artificial IntelligenceThe Creative Side of Artificial Intelligence
The Creative Side of Artificial Intelligence
 
Every Business Needs a Chatbot
Every Business Needs a ChatbotEvery Business Needs a Chatbot
Every Business Needs a Chatbot
 
Connecting Up an Intel Edison Device on AWS IoT
Connecting Up an Intel Edison Device on AWS IoTConnecting Up an Intel Edison Device on AWS IoT
Connecting Up an Intel Edison Device on AWS IoT
 
Virtual Reality is Here and it's Real
Virtual Reality is Here and it's RealVirtual Reality is Here and it's Real
Virtual Reality is Here and it's Real
 
Immersive Environments Powered by IoT
Immersive Environments Powered by IoTImmersive Environments Powered by IoT
Immersive Environments Powered by IoT
 
Voice Control for IoT Devices
Voice Control for IoT DevicesVoice Control for IoT Devices
Voice Control for IoT Devices
 
Building a Conversational Speech Interface
Building a Conversational Speech InterfaceBuilding a Conversational Speech Interface
Building a Conversational Speech Interface
 
Removing the Friction of Technology
Removing the Friction of TechnologyRemoving the Friction of Technology
Removing the Friction of Technology
 
Exploring the Opportunities of Machine Learning
Exploring the Opportunities of Machine LearningExploring the Opportunities of Machine Learning
Exploring the Opportunities of Machine Learning
 
Entering an Era of Perfect Information
Entering an Era of Perfect InformationEntering an Era of Perfect Information
Entering an Era of Perfect Information
 
Building a Visual Recognition Service
Building a Visual Recognition ServiceBuilding a Visual Recognition Service
Building a Visual Recognition Service
 
Machine Learning & Self-Driving Cars
Machine Learning & Self-Driving CarsMachine Learning & Self-Driving Cars
Machine Learning & Self-Driving Cars
 

Recently uploaded

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 

Recently uploaded (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 

Intro to Massively Multiplayer Online Game (MMOG) Design

  • 1. Introduction to MMOG Architecture
  • 2. Experience Built games? In app store? Using game center? Server-side architecture? MMOG projects?
  • 3. Agenda What is Game What is MMOG MMOG Components Unique About MMOG MMOG Trends
  • 4. My Background Data center design Marketing strategy Mobile development
  • 5. Game Loop Receive player input Process player actions Calculate state changes Apply state changes Repeat
  • 6. The Game Grows Up single-player multiuser domain > MUD multiplayer online game > MOG massively multiplayer online game > MMOG
  • 7. MMOG is session persistence 1000+ concurrents single virtual world multiple client support player interaction
  • 8. Build an MMOG 3rd-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. Basic MMOG Architecture Player client connects to Login server Login Server provides authorization token Copy of token goes to World Server Player client handed off to World Server World Server provides character data World Server provides connection info for Chat Server & Zone Server Player client handed off to Zone Server Zone Server handles gameplay in zone World Server handles transition between zones
  • 10. Think Security Hackers are inevitable Spammers are inevitable Cheaters are inevitable
  • 11. Contrary to non-MMOGs ...the majority of MMOG development is content ...the majority of MMOG development takes place after launch ...MMOG core game logic will change ...MMOGs require massive quantities of storage
  • 12. ...the majority of MMOG development is content
  • 13. "Content" is Storylines (missions, quests, events) 3d areas (meshes, textures, logic) Loot (item graphics, drop rates, item stats, etc.)
  • 14. "Content" is not Fancy graphics Physics engines AI Core game rules ...which tend to make up the bulk of non-MMOGs
  • 15. Rate at which players consume content vastly 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. ...the majority of MMOG development takes place after launch
  • 17. Most MMOGs release new content every 3- 12 months Releases are large: "miniature MMOGs" (new 3d areas, quests, items, plotlines, etc.)
  • 18. Underlying technology (engine) is usually only updated when required by a content change Cutting-edge graphics are not a primary selling point of MMOGs, unlike non- MMOGs
  • 19. MMOG development teams typically get larger after launch (developing new content & keeping the old content still working)
  • 20. ...MMOG core game logic will change
  • 21. Players will find a loophole and unbalance the game, so you have to "fix" it
  • 22. Writing core logic that is easy to change (and deal with side effects) is more important than writing easy core logic
  • 23. ...MMOGs require massive quantities of storage
  • 24. Progress of every player in an MMO needs to be independently tracked (quests completed, equipment they own, etc.)
  • 25. 30GB+ every 24 hours, all of which needs to be programmatically referenced
  • 26. MMOG Design Considerations How much effort is required to change an in-game item How much effort is required to add (or remove) in-game items How re-usable is the content How much effort is required to re-use re-usable content How much specialist knowledge is required to modify content and logic How exportable is the data generated by playing the game How analyzable is the data generated by playing the game How much effort is required to modify core content How much effort is required to change individual rules (and debug) How many of the above can be made without a developer Where can 3rd-party systems be used for server-side components
  • 27. MMOG Design Rules of Thumb Use non-proprietary databases for persistence Use relational databases Implement game logic as raw data rather than compiled data Use standard scripting languages where possible Intense testing during development Even more intense testing after launch
  • 28. The Future Cloud is the hardware of choice iPhone grows as gaming platform Browser dwindles as gaming client Ad-sponsored worlds Educational worlds
  • 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/