Consistency Maintenance in Multiplayer Games - PowerPoint PPT Presentation

1 / 36
About This Presentation
Title:

Consistency Maintenance in Multiplayer Games

Description:

Violent Action Game. Violent Action Game. Adventure Game. Adventure Game. Dress Up Games ... do exist, however in games they are prohibitively expensive. ... – PowerPoint PPT presentation

Number of Views:80
Avg rating:3.0/5.0
Slides: 37
Provided by: emilyadki
Category:

less

Transcript and Presenter's Notes

Title: Consistency Maintenance in Multiplayer Games


1
Consistency Maintenance in Multiplayer Games
  • Rob Fletcher
  • CISC 897
  • November 15, 2006

2
Outline
  • The Problem
  • Our Solution
  • Why Our Solution Works

3
The Problem
  • What is consistency maintenance?
  • Why is it important?
  • Why is it hard?
  • What are the considerations?

4
Consistency Maintenance
  • Consistency maintenance deals with keeping sets
    of replicated data equivalent
  • In client-server games, the canonical worlds
    game state is stored on the server
  • Some or all of the game state is replicated on
    each of the clients in order to be rendered and
    represented to the player

5
Consistency Maintenance
  • Players interact with their replicas of the game
    world
  • Any changes to the game world are sent back to
    the server
  • Server then updates all the client replicas with
    these new changes

6
Why is it Important?
  • Consider the following scenarios

7
Violent Action Game
8
Violent Action Game
9
Adventure Game
10
Adventure Game
11
Dress Up Games
12
Its Hard
  • Many cheats in multiplayer games exploit
    consistency maintenance flaws
  • Object duplication (duping)
  • Perfect consistency algorithms do exist, however
    in games they are prohibitively expensive.
  • If you dont get consistency maintenance right,
    players get angry, leave.

13
Its Hard
  • Concurrency and Consistency maintenance
    algorithms (such as those using locking) ensure
    that all data stays the same
  • Imagine if every movement you made in an FPS
    required several exchanges between the client and
    server
  • Slower transactions are acceptable in a trading
    situation, inappropriate in high feedback
    interactions

14
Aspects of the Player Experience
  • Choice of consistency maintenance scheme affects
    player experience
  • Some of these aspects are fidelity, feedback,
    rate of animation, and warping.

15
Fidelity
16
Feedback
17
Rate of Animation
18
Warping
19
Trading off Aspects of the Player Experience
  • In action games, you want very fast feedback
  • You can trade fidelity for feedback by using
    predictive algorithms
  • Predictive approaches are optimistic algorithms

20
Trade-Offs
  • When high fidelity is required (such as in
    trading situations) you can exchange feedback for
    fidelity
  • These are usually referred to as pessimistic or
    conservative algorithms

21
Previous Work
  • There is a lot of research into consistency
    maintenance approaches
  • Particularly in groupware research
  • Multi-user collaborative drawing programs
  • Multi-user collaborative text editors
  • They understand trading off aspects of the user
    experience

22
Previous Work
  • Pessimistic algorithms using locking
  • Optimistic algorithms
  • Rollback
  • Operation Transform (Ellis and Gibbs)
  • Timewarp (Edwards and Mynatt)

23
Our Solution
  • Plug-replaceable consistency maintenance
  • Workspace model provides us with the
    infrastructure
  • Separate game logic and consistency maintenance
  • Lets us quickly benchmark a handful of different
    consistency maintenance schemes

24
Quick Introduction to Workspace
  • Proud product of the EQUIS lab
  • Allows for a high level, diagrammatic definition
    of the intended behaviour of a distributed
    groupware system
  • Refines it to an implementation level
    architecture at runtime based on available
    resources

25
Conceptual Level Architecture
26
Possible Replicated Refinement
27
CCCM
  • Consistency and Concurrency Control Module
  • Intercepts all calls to synchronized components
  • Communicates with fellow CCCMs
  • Embodies a consistency maintenance scheme

28
Many CCCMs
  • We can create a handful of different CCCMs, each
    using a different consistency maintenance scheme
  • Through the use of refinement hints, we can
    choose which CCCM to use for each set of data
  • We can switch between them without recompiling to
    compare their behaviour

29
Why Our Solution Works
  • We conducted a case study on a very simple game
  • This game required a villager to traverse a
    series of waypoints
  • Villager movement was controlled by the server,
    client simply observed
  • Measured fidelity, rate of animation, and warping

30
Our Game
31
Controlled Variables
  • We ran the experiment nine times, 15 minutes each
    time
  • We used 3 different CCCMs under 3 different
    latency situations
  • No Latency (0 ? 0ms)
  • Low Latency (100 ? 10ms)
  • Medium Latency (500 ? 100ms)
  • Server sends update every 500ms

32
Our CCCMs
  • Non-Predictive CCCM
  • Client updates every message from server
  • Client does not attempt to extrapolate villager
    position

33
Our CCCMs
  • Two predictive CCCMs
  • Extrapolates position between server messages
  • Optimized Predictive CCCM estimates latency as
    well for higher fidelity

34
(No Transcript)
35
Conclusion
  • Plug-replaceable CCCMs provide many advantages in
    game development
  • Separation of concerns between consistency
    maintenance and game logic
  • Ability to quickly compare various approaches
  • Facilitates the development of a library of
    reusable CCCM components

36
References, Further Information and Questions
  • R. D. S. Fletcher, T. C. N. Graham and C. Wolfe.
    Plug-Replaceable Consistency Maintenance for
    Multiplayer Games, in NetGames 06 Proceedings
    of the 5th Workshop on Network and System Support
    for Games, pages TBA, New York, NY, USA, 2006.
    ACM Press.
  • fletcher_at_cs.queensu.ca
Write a Comment
User Comments (0)
About PowerShow.com