Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
A Measurement Study of Virtual Populations in
MMOGSDaniel Pittman and Chris GauthierDickey
Roadmap
• Introduction
• Methodology: What we did and how
• Results: What our results show
• Conclusion: Interesting trends and where we’re headed
2
Roadmap
! Introduction and Background
• Methodology: What we did and how
• Results: What our results show
• Conclusion: Interesting trends and where we’re headed
3
Game Recognition?
4
Image copyright Blizzard Inc.
Introduction
• Research Interests
• P2P Networking
• Scalable MMO architectures
• Networks and Games!
5
MMOG Measurements
• Why measure MMOGs?
• MMOGs are the largest, interactive networked application on the net
• Measurements are essential for designing scalable architectures
• Modern architectures have scalability issues
6
State of the Art MMOG Models
• Looking at past research, prior MMOG models:
• Assume a uniform distribution of players
• Assume a random waypoint mobility model
• Assume players perform actions (eat, fight, move) randomly
• Assume session times are uniformly distributed
7
What’s been measured?
• In the past, we’ve seen research measuring:
• Network patterns for FPS games [Chambers et al., ‘05]
• Packet sizes, RTTs, session times and inter-packet arrival rates [Kim et al.,‘05]
• Mobility models in FPS games [Tan et al.,‘05]
• Session characteristics of Eve Online [Previous presentation!]
8
Stormwind
Elwynn Forest
Westfall
Darkshire
Redridge Mountains
Understanding WoW
• WoW has over 9 million subscribers
• WoW is divided by realms (one cluster per realm)
• Each realm has 4-6k players
• Each realm is divided into zones, which form a graph where edges indicate paths between zones
9
Roadmap
• Introduction
• Background: Prior measurement work
! Methodology: What we did and how
• Results: What our results show
• Conclusion: Interesting trends and where we’re headed
10
Methodology
• World of Warcraft is scriptable using LUA and the WoW scripting interface.
• We modified an AddOn called CensusPlus and wrote an AddOn called PlayerMonitor
• Using the WoW scripting interface, we could query the server about population characteristics
11
Taking a Census (or who’s playing?)
• WoW provides a ‘who’ interface:
• Allows you to query who is currently online
• Only returns 50 results
• Queries can be focused by simple expressions
• who is in a particular zone
• who is of a particular class, level, race
• who has a name that begins with ‘a’
12
Who are all the players?
• who 65-70
• who 70-70
• who c-’Warrior’ 70-70
• who r-’Dwarf’ c-’Warrior’ 70-70
• who z-’Ironforge’ r-’Dwarf’ c-’Warrior’ 70-70
• who n-’a’ z-’Ironforge’ r-’Dwarf’ c-’Warrior’ 70-70
13
Methodology continued...
• A single measurement is not sufficient to understand who is on:
• The population changes while we measure!
• We perform two measurements, back-to-back
• The set-difference indicates the amount of churn in the system (joins + leaves)
14
Monitoring your friends
• Unfortunately, querying the whole database takes too long for some things:
• How long a session is
• How many zones were visited
• How long a player remained in a given zone
• WoW lets us track 50 of our closest friends!
15
The Friends List
• After a complete census, we randomly choose 50 players
• We add them to the friends list and record their location every 10 seconds
• WoW notifies us when they log off
• After every census, we add new friends to our list to fill the empty spots
16
Fine-grained Tracking
• The friends list allows us to track a random subset of players at a much finer level than the census
• Because players are added after they are seen in a census, we can determine their session length and zone durations more accurately
17
Roadmap
• Introduction
• Background: Prior measurement work
• Methodology: What we did and how
! Results: What our results show
• Conclusion: Interesting trends and where we’re headed
18
Average Population
19
0
200
400
600
800
1000
1200
1400
1600
0 2 4 6 8 10 12 14 16 18 20 22
Popula
tion
Time (hour)
MonTue
WedThu
FriSat
Sun
Arrival Rate
20
0
500
1000
1500
2000
2500
3000
3500
4000
4500
5000
0 2 4 6 8 10 12 14 16 18 20 22
Arr
iva
ls
Time (hour)
MonTue
WedThu
FriSat
Sun
Departure Rate
21
0
1000
2000
3000
4000
5000
6000
0 2 4 6 8 10 12 14 16 18 20 22
Depart
ure
s
Time (hour)
MonTue
WedThu
FriSat
Sun
Session Time
22
0
200
400
600
800
1000
1200
1400
1600
0 5000 10000 15000 20000 25000 30000 35000
Sessio
n tim
e (
min
ute
s)
Ranking
0
0.2
0.4
0.6
0.8
1
0 200 400 600 800 1000 1200 1400 1600
Pro
ba
bili
ty
Session time (minutes)
Players Per Zone
23
0
0.2
0.4
0.6
0.8
1
0 10 20 30 40 50 60 70 80
Pro
babili
ty
Average Zone Population
0
10
20
30
40
50
60
70
80
20 40 60 80 100 120
Avera
ge P
opula
tion
Zone rank
Number of Zones Visited
24
0
0.2
0.4
0.6
0.8
1
0 10 20 30 40 50 60 70
Pro
babili
ty
Number of zones visited
Zone Duration
25
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 10 20 30 40 50 60
Pro
babili
ty
Average time spent in zone (minutes)
Conclusions
• Our results show that prior modeling assumptions for MMOGs similar to WoW are not correct
• General populations follow a diurnal pattern
• MMOGs must be concerned with the problem of churn
• Session times and the number of players per zone appear to follow a power-law (heavy tailed?) distribution
26