Title: Revealed
1Jaysheel D Bhavsar
- Revealed
- Presented by Jaysheel D Bhavsar
2Game Taxonomy
- MOG (Multi-player Online Games)
- No persistent environment
- Game server all over the place
- E.G Half Life (counter strike), Call of Duty,
Halo - MMOG (Massively Multi-player Online Games)
- Role Playing Games (WoW, LoTR)
- First Person Shooter (WW-II online, PlanetSide)
- Real Time Strategy (Mankind, Dreamloads)
- Social Games (SecondLife)
Jaysheel D Bhavsar
3MMOG Market share
Jaysheel D Bhavsar
4World of MMO
customized FTP/HTTP server that allow connections
from a game client which is then updated as
required
takes the user name and password from game
clients and authenticates the account against the
entries in the database
The world/zone servers are the boxes that handle
the actual player data for specific areas of the
game world, including load balancing
customized to optimize the data stream between
the database and the auth/world servers for
player data parsing
Jaysheel D Bhavsar
5What is World of Warcraft?
Jaysheel D Bhavsar
6Jaysheel D Bhavsar
7The Game client
- The program installed on a personal computer is
the client. It has four primary duties. - decodes and displays the data that make up the
game world, as well as the user interface (UI)
and any associated add-ons. - receives input from user and from a remote server
and changes the game display accordingly. - gives feedback to user and the server, based on
what's happening in the game. - keeps up with any changes user make to game's
layout and settings (mods).
Jaysheel D Bhavsar
8Game play
Jaysheel D Bhavsar
9What do we know so far?
- MMORPGs are real time games, and have highly
interactive environment - Gamers/Clients interact with each other, and
computer AIs via server node - So far we have been told that UDP is the choice
of protocol for most real time environments. Let
review why so.
Jaysheel D Bhavsar
10Basic Analysis
- WoW and other MMORPGs use TCPwhy???
- Analysis of TCP stream shows that PSH bit is set
in almost all PDUs transmittedwhy???
Jaysheel D Bhavsar
11Basic Analysis
Jaysheel D Bhavsar
12Basic Analysis
Jaysheel D Bhavsar
13Main Screen
14Time line main screen
Open TCP connection, and use HTTP protocol to
download background, music, patch
open TCP connection to port 3724 (blizwow). Get
server ids, and server IP ads
Open TCP connection and use HTTP protocol to
download news and info
Time
Jaysheel D Bhavsar
15Dash board
16Time line dashboard
open TCP connection to port 3724 (blizwow).
Authenticate user
open TCP connection and use HTTP protocol to
download game character information
open TCP connection to port 3724 (blizwow). To
the realm of selected user.
Time
17Game Play
18Time line in game
Same connection used to interact between user and
server
open TCP connection and use HTTP protocol to get
gamers data from DB server.
Time
Jaysheel D Bhavsar
19Acknowledgment
- Dr. K. E. Wommack
- Dr. P. Amer
- Blizzard Entertainment
- http//www.mmogchart.com/
- Philipp Svoboda, Wolfgang Karner, Markus Rupp
Institute of Communications and Radio-Frequency
Engineering Vienna University of Technology,
Austria - A little fun (http//www.southparkstudios.com/epis
odes/103797) explicit content
Jaysheel D Bhavsar
20Misc Slides
Jaysheel D Bhavsar
21Play-by-play analysis
Jaysheel D Bhavsar
22Play-by-play cont
- After pulling data from the archives stored on
the computer's hard drive, the client creates a
representation of Aragon's surroundings. - The client informs the server of Aragon's
position and receives information about
stationary and mobile objects, or mobs, around
Aragon. A mob is essentially any wandering object
in the world, but it's most often used to
describe attackable enemies. - When Aragon tries to pick up the stone, the
client tells the server what Aragon is doing.
Server also displays a status bar, showing the
player how long it will take for Aragon to
retrieve the stone.
Jaysheel D Bhavsar
23Play-by-play cont
- The client receives information about the
goblin's attack from the server. Server
interrupts Aragon's stone collection when the
goblin hits Aragon. The client sends information
to the server about how Aragon defends himself,
and server receives information about the
goblin's actions and the progression of the
fight. - Once Aragon kills the goblin and finishes
collecting the stone, the client stops displaying
the stone on the ground and instead displays an
icon representing the stone in Aragon's
inventory. Client informs the server that Aragon
has collected the stone, so other players will no
longer see it in the game world.
Jaysheel D Bhavsar