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 Architecture and Programming
Game Architecture and ProgrammingGame Architecture and Programming
Game Architecture and Programming
Sumit Jain
 
게임제작개론 8
게임제작개론 8게임제작개론 8
게임제작개론 8
Seokmin No
 

What's hot (20)

Game Architecture and Programming
Game Architecture and ProgrammingGame Architecture and Programming
Game Architecture and Programming
 
Game Design Principle
Game Design PrincipleGame Design Principle
Game Design Principle
 
게임제작개론 : #7 팀 역할과 게임 리소스에 대한 이해
게임제작개론 : #7 팀 역할과 게임 리소스에 대한 이해게임제작개론 : #7 팀 역할과 게임 리소스에 대한 이해
게임제작개론 : #7 팀 역할과 게임 리소스에 대한 이해
 
[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법
[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법
[IGC2018] 펄어비스 김광삼 - 대면 커뮤니케이션 주도의 게임 디자인과 게임 개발법
 
NHN NEXT 게임 전공 소개
NHN NEXT 게임 전공 소개NHN NEXT 게임 전공 소개
NHN NEXT 게임 전공 소개
 
KGC 2016: HTTPS 로 모바일 게임 서버 구축한다는 것 - Korea Games Conference
KGC 2016: HTTPS 로 모바일 게임 서버 구축한다는 것 - Korea Games ConferenceKGC 2016: HTTPS 로 모바일 게임 서버 구축한다는 것 - Korea Games Conference
KGC 2016: HTTPS 로 모바일 게임 서버 구축한다는 것 - Korea Games Conference
 
3-Game Graphics (Game Design and Development)
3-Game Graphics (Game Design and Development)3-Game Graphics (Game Design and Development)
3-Game Graphics (Game Design and Development)
 
(GAM402) Deploying a Low-Latency Multiplayer Game Globally: Loadout | AWS re:...
(GAM402) Deploying a Low-Latency Multiplayer Game Globally: Loadout | AWS re:...(GAM402) Deploying a Low-Latency Multiplayer Game Globally: Loadout | AWS re:...
(GAM402) Deploying a Low-Latency Multiplayer Game Globally: Loadout | AWS re:...
 
Game Development Step by Step
Game Development Step by StepGame Development Step by Step
Game Development Step by Step
 
게임 분산 서버 구조
게임 분산 서버 구조게임 분산 서버 구조
게임 분산 서버 구조
 
06. Game Architecture
06. Game Architecture06. Game Architecture
06. Game Architecture
 
마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건
 
Game Engine Architecture
Game Engine ArchitectureGame Engine Architecture
Game Engine Architecture
 
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
 
게임제작개론 : #6 게임 시스템 구조에 대한 이해
게임제작개론 : #6 게임 시스템 구조에 대한 이해게임제작개론 : #6 게임 시스템 구조에 대한 이해
게임제작개론 : #6 게임 시스템 구조에 대한 이해
 
Cloud Gaming
Cloud GamingCloud Gaming
Cloud Gaming
 
Game development
Game developmentGame development
Game development
 
게임제작개론 8
게임제작개론 8게임제작개론 8
게임제작개론 8
 

Viewers also liked

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
action.vn
 
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
devCAT Studio, NEXON
 
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
koolkampus
 
Volleyball Powerpoint
Volleyball PowerpointVolleyball Powerpoint
Volleyball Powerpoint
nucampusrec
 

Viewers also liked (16)

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
 
Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Inv...
Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Inv...Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Inv...
Building a World in the Clouds: MMO Architecture on AWS (MBL304) | AWS re:Inv...
 
[야생의 땅: 듀랑고] 서버 아키텍처 - 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

Dedicated Game Servers
Dedicated Game ServersDedicated Game Servers
Dedicated Game Servers
webhostingguy
 
PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game Engine
Diksha Bhargava
 

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

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

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

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/