characterizing virtual population in gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility:...

95
Characterizing Virtual Population in Games 1

Upload: others

Post on 20-Mar-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Characterizing Virtual Population in Games

1

Page 2: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

World of Warcraft

2

Page 3: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Use an add-on written in Lua

3

Page 4: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

monitor 1100 random players

over 71 days

4

Page 5: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

median num of players per poll vs time of the day polled

5

Page 6: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

CDF of all session length, and median session length of each player

6

Page 7: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

sufficiently long session length good for P2P games

7

Page 8: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

8

Page 9: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

can use level to predict session length?

9

Page 10: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

CDF of median downtimes andmedian session length of each player

10

Page 11: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Availability of players (time online/total time)in February 2007

11

Page 12: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

12

Page 13: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

13

Page 14: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

monitor 3 locations

Stormwind CityStanglehorn ValeBurning Steppes

14

Page 15: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

15

Page 16: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

can use zone to predict session length?

16

Page 17: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

density: num of players* in a zone

*: out of 1100 players tracked

17

Page 18: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Mean Location density of 117 locations

18

Page 19: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Difference in Density between Dec and Feb

19

Page 20: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

20

Page 21: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

dynamic load balancing not needed?

21

Page 22: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

“My life is so great that I literally wanted a second one!”- Dwight Schrute, The Office

22

Page 23: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

256x256 m regions.

23

Page 24: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

24

Page 25: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

25

Page 26: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

26

Page 27: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

27

Page 28: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

avatar mobility:who is where, when

28

Page 29: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

why do we care?

29

Page 30: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

research in systems support for NVE

30

Page 31: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

31

Page 32: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

How to partition a world into regions and assign regions to servers considering

- communication cost- hand-over rate- balancing server load :

32

Page 33: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

33

Page 34: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

How to predict avatar movement (end therefore what a user will see next)?

34

Page 35: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

35

Page 36: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

AoI-based scheme

36

Page 37: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

How many connections?

How stable are the connections?

37

Page 38: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

supernode-based scheme

38

Page 39: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

How to pick supernodes?

How stable are the supernodes?

39

Page 40: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

how to simulate avatar mobility?

40

Page 41: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

random walkrandom waypoint

clustered movement:

41

Page 42: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

or, small-scale

implementation

42

Page 43: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

no large-scale NVE available until recently

43

Page 44: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

482,594residents logged in between 2-9 June 2008

44

Page 45: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

secondlife.com/whatis/economy-graphs.php

45

Page 46: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

• collect mobility traces of avatars in Second Life

• what it means w.r.t. systems design for NVEs?

46

Page 47: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

collecting traces

47

Page 48: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

how do avatars move inside a distributed

virtual environment?

48

Page 49: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

how are avatars distributed within a

region?

49

Page 50: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

how long do they stay at a location?

50

Page 51: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

do they move in groups?

51

Page 52: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

etc.

52

Page 53: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

FPS MMORPG NVE

53

Page 54: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Linden, can we get access to the server traces?

No.

54

Page 55: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

• Wrote our own client

• Parses packets using libsecondlife

• Insert bots into regions

• Log positions of avatars every 10s

55

Page 56: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

difficulties

56

Page 57: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

running out of memory

57

Page 58: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

anti-bots policy

58

Page 59: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

over crowded region

59

Page 60: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

inter-region tracking

60

Page 61: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

• Wrote our own client

• Parses packets using libsecondlife

• Insert bots into regions

• Log positions of avatars every 10s

61

Page 62: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

who is where, when

(doing what)

62

Page 63: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

63

Page 64: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Freebies

64

Page 65: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

The Pharm

65

Page 66: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Isis

66

Page 67: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Ross

67

Page 68: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Mobility Patterns

68

Page 69: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Freebies: number of visits to a cell

69

Page 70: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Freebies: average pause time in a cell

70

Page 71: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Freebies: average speed in a cell

71

Page 72: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Isis: number of visits to a cell

72

Page 73: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

caching/prefetching based on popularity of

locations?

73

Page 74: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Isis: average pause time in a cell

74

Page 75: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

pick supernodes from sticky location?

75

Page 76: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Isis: average speed in a cell

76

Page 77: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

mobility model:random walk +

pathway ?

77

Page 78: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

churn rate

78

Page 79: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

79

Page 80: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

80

Page 81: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Reasonably high churn (up to 6/min)

81

Page 82: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

1 min 10 min

1 hr 2 hr

Highly skewed. Some stay for hours.

82

Page 83: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

cannot pick supernodes uniformly

83

Page 84: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

clustering of avatars

84

Page 85: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

meeting: encounter between two avatars

(within each other AoI)

85

Page 86: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Meet many different avatars.

86

Page 87: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

1 min

10 min

1 hr

2 hr

Most meetings are short.

87

Page 88: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Meeting size is large.

88

Page 89: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

high overhead in maintaining AoI

neighbors

89

Page 90: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

meeting stability:

avg meeting sizeover

num of avatars met

90

Page 91: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

Wide range of stability

91

Page 92: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

other tidbits

92

Page 93: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

little temporal variations

can use historical information to predict future

93

Page 94: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

rotate 18% of the time

Second Life’s prefetching is wasteful

94

Page 95: Characterizing Virtual Population in Gamesooiwt/cs4344/4344-leca-avatars.pdf · avatar mobility: who is where, when 28. why do we care? 29. research in systems support for NVE 30

25-35% revisits the same region in a day

region-based caching?

95