Multiplayer games on networks
potential and tradeoffs
COSC 4126 network games
Brief history of real-time networking
approximately...1980’s (US) military simulations1990’s distributive / collaborative virtual
environments2000’s multiplayer gamesbut
1980 1990 2000
MUD Amaze DoomUltima Online
Battle.net
COSC 4126 network games
Analyzing constraints on network games*
design constraints at three levels physical: cabling and hardware -
bandwidth, latency, processing logical: architectures for communication
(e.g., peer-to-peer, client/server), data and control (e.g., centralized, distributed, replicated)
application: interpretation (data meaning), integrity control (legal state), transferring (computation shared among nodes)
*Smed, Kaukoranta & Hakonen, 2003
COSC 4126 network games
Resource management – physical and logical influence on experience
resource requirements in distributed application: f(info sent, info received, processing rate)
IPE Information Principle Equation: Singal &Zyda, 1999
M: number of messagesH: average number of destination nodesB: bandwidth required for message to one destinationT: delayP: number of processor cycles to receive, process a
message
PTBHMresources
COSC 4126 network games
IPE
product is a measure of“quality of experience”
reducing a factor reduces resource requirements but also reduces experience
factors can be traded off against each other
COSC 4126 network games
IPE exampleM: number of
messagesH: average number of
destination nodesB: bandwidth required
for message to one destination
T: delayP: number of
processor cycles to receive, process a message
PTBHMresources
packet aggregation M decreased B increased P increased T increaseddesign question – is
tradeoff valuable?
COSC 4126 network games
Quality of experiencein networked game
consistency: similarity of view to actual data in the nodes of the network – “absolute consistency” is perfect data view match among nodes
responsiveness: – delay for an update event to be applied to game data
in database applications – consistency takes precedence over responsiveness
in game applications – responsiveness is more important and consistency may be compromised
COSC 4126 network games
Data and control architectures
centralized distributed replicated
process relay data store network
COSC 4126 network games
Consistency, responsivenessand architecture
high consistency processes on remote nodes tightly coupled
high responsiveness processes loosely coupled
COSC 4126 network games
Relay
local input
global output
global input
local output
networknode
2 – way relay assures consistency in combination with distributed or centralized architecture BUT responsiveness is vulnerable to network
COSC 4126 network games
Relay
short-circuit relay assures high responsiveness but local data can become inconsistent with other nodes
local input
global output
global input
local output
networknode
COSC 4126 network games
Resolving inconsistencies
games require responsiveness inconsistencies will occur mechanism for resolving
inconsistencies must be provided
COSC 4126 network games
Application level influence on experience
scalability – adapting to resource changes
persistence – effect of players leaving and entering
collaboration – consistency and sharing
COSC 4126 network games
Scalability
game server issues allocation of non-player computation
among nodes parallelism & concurrent computation model each node burdens network but increases
computation power ( H up, P down)
COSC 4126 network games
Persistence
relationship of node to application initializing state of node when player joins on-going consistency maintaining state when node leaves game abrupt disruption – reallocation of
responsibilities
COSC 4126 network games
Collaboration
teams acting together communication among team members
prioritized messages / dedicated channel ‘interest management’ based on
application-based closeness or ‘collaboration distance’
COSC 4126 network games
Reducing resource requirements
Architecture level packet compression
internal – data compression within packet suits UDP
external – data compression bsed on assumed receiver state
packet aggregation merging removes some headers but adds
delay to data waiting for packetizing timeout or quorum-based aggregation tradeoffs
COSC 4126 network games
Reducing resource requirements
Application level interest management
premise – most packets only of interest to minority of nodes
transmit only to those, not all nodes nodes ‘express interest’ in subset of
information M down, B down, P up
COSC 4126 network games
Interest management
area of interest – ‘aura’ application based – correlates to sensory
capabilities of node system (typically character)
aura = focus(perception) + nimbus(perceptibility)
when focus intersects nimbus, nodes communicate
COSC 4126 network games
Nimbus and Focus Smed et al,
2003
COSC 4126 network games
Interest management
area of interest – ‘aura’ ‘subscription manager’ server manages
state, interest info for each node subscription manager receives messages
about state and retransmits to interested nodes
nodes submit changes of state and interest to the subscription manager
COSC 4126 network games
Improving responsiveness
e.g., with less frequent packets due to aggregation
game state extrapolation techniques to continue response without input ‘dead reckoning’ based on predicting
state changes and correcting when info arrives
COSC 4126 network games
dead reckoning example Smed et al, 2003based on recent
positions, compute velocity, maybe acceleration and extrapolate
when update arrives, plot ‘smooth’ convergence