cs4344 lecture 10: player dynamics

95
Characterizing Virtual Population in Games 1

Upload: wei-tsang-ooi

Post on 27-Jun-2015

600 views

Category:

Technology


5 download

TRANSCRIPT

Page 1: CS4344 Lecture 10: Player Dynamics

Characterizing Virtual Population in Games

1

Page 2: CS4344 Lecture 10: Player Dynamics

World of Warcraft

2

Page 3: CS4344 Lecture 10: Player Dynamics

Use an add-on written in Lua

3

Page 4: CS4344 Lecture 10: Player Dynamics

monitor 1100 random players

over 71 days

4

Page 5: CS4344 Lecture 10: Player Dynamics

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

5

Page 6: CS4344 Lecture 10: Player Dynamics

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

6

Page 7: CS4344 Lecture 10: Player Dynamics

sufficiently long session length good for P2P games

7

Page 8: CS4344 Lecture 10: Player Dynamics

8

Page 9: CS4344 Lecture 10: Player Dynamics

can use level to predict session length?

9

Page 10: CS4344 Lecture 10: Player Dynamics

CDF of median downtimes andmedian session length of each player

10

Page 11: CS4344 Lecture 10: Player Dynamics

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

11

Page 12: CS4344 Lecture 10: Player Dynamics

12

Page 13: CS4344 Lecture 10: Player Dynamics

13

Page 14: CS4344 Lecture 10: Player Dynamics

monitor 3 locations

Stormwind CityStanglehorn ValeBurning Steppes

14

Page 15: CS4344 Lecture 10: Player Dynamics

15

Page 16: CS4344 Lecture 10: Player Dynamics

can use zone to predict session length?

16

Page 17: CS4344 Lecture 10: Player Dynamics

density: num of players* in a zone

*: out of 1100 players tracked

17

Page 18: CS4344 Lecture 10: Player Dynamics

Mean Location density of 117 locations

18

Page 19: CS4344 Lecture 10: Player Dynamics

Difference in Density between Dec and Feb

19

Page 20: CS4344 Lecture 10: Player Dynamics

20

Page 21: CS4344 Lecture 10: Player Dynamics

dynamic load balancing not needed?

21

Page 22: CS4344 Lecture 10: Player Dynamics

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

22

Page 23: CS4344 Lecture 10: Player Dynamics

256x256 m regions.

23

Page 24: CS4344 Lecture 10: Player Dynamics

24

Page 25: CS4344 Lecture 10: Player Dynamics

25

Page 26: CS4344 Lecture 10: Player Dynamics

26

Page 27: CS4344 Lecture 10: Player Dynamics

27

Page 28: CS4344 Lecture 10: Player Dynamics

avatar mobility:who is where, when

28

Page 29: CS4344 Lecture 10: Player Dynamics

why do we care?

29

Page 30: CS4344 Lecture 10: Player Dynamics

research in systems support for NVE

30

Page 31: CS4344 Lecture 10: Player Dynamics

31

Page 32: CS4344 Lecture 10: Player Dynamics

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

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

32

Page 33: CS4344 Lecture 10: Player Dynamics

33

Page 34: CS4344 Lecture 10: Player Dynamics

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

34

Page 35: CS4344 Lecture 10: Player Dynamics

35

Page 36: CS4344 Lecture 10: Player Dynamics

AoI-based scheme

36

Page 37: CS4344 Lecture 10: Player Dynamics

How many connections?

How stable are the connections?

37

Page 38: CS4344 Lecture 10: Player Dynamics

supernode-based scheme

38

Page 39: CS4344 Lecture 10: Player Dynamics

How to pick supernodes?

How stable are the supernodes?

39

Page 40: CS4344 Lecture 10: Player Dynamics

how to simulate avatar mobility?

40

Page 41: CS4344 Lecture 10: Player Dynamics

random walkrandom waypoint

clustered movement:

41

Page 42: CS4344 Lecture 10: Player Dynamics

or, small-scale

implementation

42

Page 43: CS4344 Lecture 10: Player Dynamics

no large-scale NVE available until recently

43

Page 44: CS4344 Lecture 10: Player Dynamics

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

44

Page 45: CS4344 Lecture 10: Player Dynamics

secondlife.com/whatis/economy-graphs.php

45

Page 46: CS4344 Lecture 10: Player Dynamics

• collect mobility traces of avatars in Second Life

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

46

Page 47: CS4344 Lecture 10: Player Dynamics

collecting traces

47

Page 48: CS4344 Lecture 10: Player Dynamics

how do avatars move inside a distributed

virtual environment?

48

Page 49: CS4344 Lecture 10: Player Dynamics

how are avatars distributed within a

region?

49

Page 50: CS4344 Lecture 10: Player Dynamics

how long do they stay at a location?

50

Page 51: CS4344 Lecture 10: Player Dynamics

do they move in groups?

51

Page 52: CS4344 Lecture 10: Player Dynamics

etc.

52

Page 53: CS4344 Lecture 10: Player Dynamics

FPS MMORPG NVE

53

Page 54: CS4344 Lecture 10: Player Dynamics

Linden, can we get access to the server traces?

No.

54

Page 55: CS4344 Lecture 10: Player Dynamics

• Wrote our own client

• Parses packets using libsecondlife

• Insert bots into regions

• Log positions of avatars every 10s

55

Page 56: CS4344 Lecture 10: Player Dynamics

difficulties

56

Page 57: CS4344 Lecture 10: Player Dynamics

running out of memory

57

Page 58: CS4344 Lecture 10: Player Dynamics

anti-bots policy

58

Page 59: CS4344 Lecture 10: Player Dynamics

over crowded region

59

Page 60: CS4344 Lecture 10: Player Dynamics

inter-region tracking

60

Page 61: CS4344 Lecture 10: Player Dynamics

• Wrote our own client

• Parses packets using libsecondlife

• Insert bots into regions

• Log positions of avatars every 10s

61

Page 62: CS4344 Lecture 10: Player Dynamics

who is where, when

(doing what)

62

Page 63: CS4344 Lecture 10: Player Dynamics

63

Page 64: CS4344 Lecture 10: Player Dynamics

Freebies

64

Page 65: CS4344 Lecture 10: Player Dynamics

The Pharm

65

Page 66: CS4344 Lecture 10: Player Dynamics

Isis

66

Page 67: CS4344 Lecture 10: Player Dynamics

Ross

67

Page 68: CS4344 Lecture 10: Player Dynamics

Mobility Patterns

68

Page 69: CS4344 Lecture 10: Player Dynamics

Freebies: number of visits to a cell

69

Page 70: CS4344 Lecture 10: Player Dynamics

Freebies: average pause time in a cell

70

Page 71: CS4344 Lecture 10: Player Dynamics

Freebies: average speed in a cell

71

Page 72: CS4344 Lecture 10: Player Dynamics

Isis: number of visits to a cell

72

Page 73: CS4344 Lecture 10: Player Dynamics

caching/prefetching based on popularity of

locations?

73

Page 74: CS4344 Lecture 10: Player Dynamics

Isis: average pause time in a cell

74

Page 75: CS4344 Lecture 10: Player Dynamics

pick supernodes from sticky location?

75

Page 76: CS4344 Lecture 10: Player Dynamics

Isis: average speed in a cell

76

Page 77: CS4344 Lecture 10: Player Dynamics

mobility model:random walk +

pathway ?

77

Page 78: CS4344 Lecture 10: Player Dynamics

churn rate

78

Page 79: CS4344 Lecture 10: Player Dynamics

79

Page 80: CS4344 Lecture 10: Player Dynamics

80

Page 81: CS4344 Lecture 10: Player Dynamics

Reasonably high churn (up to 6/min)

81

Page 82: CS4344 Lecture 10: Player Dynamics

1 min 10 min

1 hr 2 hr

Highly skewed. Some stay for hours.

82

Page 83: CS4344 Lecture 10: Player Dynamics

cannot pick supernodes uniformly

83

Page 84: CS4344 Lecture 10: Player Dynamics

clustering of avatars

84

Page 85: CS4344 Lecture 10: Player Dynamics

meeting: encounter between two avatars

(within each other AoI)

85

Page 86: CS4344 Lecture 10: Player Dynamics

Meet many different avatars.

86

Page 87: CS4344 Lecture 10: Player Dynamics

1 min

10 min

1 hr

2 hr

Most meetings are short.

87

Page 88: CS4344 Lecture 10: Player Dynamics

Meeting size is large.

88

Page 89: CS4344 Lecture 10: Player Dynamics

high overhead in maintaining AoI

neighbors

89

Page 90: CS4344 Lecture 10: Player Dynamics

meeting stability:

avg meeting sizeover

num of avatars met

90

Page 91: CS4344 Lecture 10: Player Dynamics

Wide range of stability

91

Page 92: CS4344 Lecture 10: Player Dynamics

other tidbits

92

Page 93: CS4344 Lecture 10: Player Dynamics

little temporal variations

can use historical information to predict future

93

Page 94: CS4344 Lecture 10: Player Dynamics

rotate 18% of the time

Second Life’s prefetching is wasteful

94

Page 95: CS4344 Lecture 10: Player Dynamics

25-35% revisits the same region in a day

region-based caching?

95