David Aldridge Programming .pdf
Original filename: David_Aldridge_Programming.pdf
Title: Gameplay Networking of Halo: Reach
This PDF 1.5 document has been generated by Microsoft® PowerPoint® 2010, and has been sent on pdf-archive.com on 31/07/2015 at 00:00, from IP address 75.162.x.x.
The current document download page has been viewed 546 times.
File size: 5.6 MB (101 pages).
Privacy: public file
Download original PDF file
I S h o t Yo u F i r s t !
Gameplay Networking in Halo: Reach
Who am I?
• David Aldridge, Lead Networking Engineer at Bungie
• Spent three years working on
Halo: Reach networking
• I’ve been making games for a
What is Halo: Reach?
• A proven architecture for scalable gameplay
• How to design solid networking for your game
• How to measure and optimize your networking
What is this talk NOT about?
• Halo’s Campaign or Firefight networking
• Sockets/low level networking
• High level networking
– Rating & ranking systems
– Creating and curating an online ecosystem
BUNGIE’S GAMEPLAY NETWORKING
What is gameplay networking?
• Communicating sufficient information to maintain a
perceptually shared reality, while minimizing both
bandwidth use and perceived violations of the
integrity of the simulation (artifacts)
• OR: Technology to help multiple players sustain the
belief that they are playing a fun game together
Common simplifying approaches
• 1. Lockstep (a.k.a. deterministic, input-passing)
– Common for games with a strict split between input and simulation
(e.g. RTS), so input latency issues can be bypassed
– Also common for ports of classic games (avoids game alterations)
• 2. Reliable transport protocols (TCP or homegrown)
– Requires high bandwidth or simple networked state
– TCP requires high latency tolerance
• 3. Send all networked state as a single blob (atomically)
– E.g. Quake 3 model
– Works very well as long as the total networked state is not too large
Halo has to solve the hard problem
Highly competitive multiplayer action game
16 players, vehicles, hundreds of replicated objects
No dedicated servers
Game is expected to work regardless of connection
• For N players, O(N2) data needs to be networked