Multiplayer Game Programming Architecting Networked Games

by ;
Edition: 1st
Format: Paperback
Pub. Date: 2015-11-19
Publisher(s): Addison-Wesley Professional
  • Free Shipping Icon

    This Item Qualifies for Free Shipping!*

    *Excludes marketplace orders.

List Price: $62.99

Rent Book

Select for Price
There was a problem. Please try again later.

Rent Digital

Rent Digital Options
Online:1825 Days access
Downloadable:Lifetime Access
$69.59
$69.59

New Book

We're Sorry
Sold Out

Used Book

We're Sorry
Sold Out

Summary

The Practical Guide to Building Reliable Networked Multiplayer Games

 

Networked multiplayer games are a multibillion dollar business: some games now attract tens of millions of players. In this practical, code-rich guide, Joshua Glazer and Sanjay Madhav guide you through every aspect of engineering them. Drawing on their immense experience as both game developers and instructors, the authors lead you through building a robust multiplayer architecture, and creating every engine-level system. You’ll learn through in-depth working code examples for two complete games: an action game and a real time strategy (RTS) game.

 

First, Madhav and Glazer review the essentials of networking and network programming from the standpoint of game developers. Next, they walk through managing game data transmission, updating game objects across the network, and organizing the devices that join your game. You’ll learn how to ensure reliable performance despite the Internet’s inherent inconsistencies, and how to design game code for maximum security and scalability. The authors conclude by addressing two increasingly crucial issues: incorporating gamer services and hosting your games in the cloud.

 

This guide’s content has been extensively tested through the authors’ multiplayer game programming courses at USC. It is equally valuable both to students and to working game programmers moving into networked games.

 

Coverage includes

  • How games have evolved to meet the challenges of networked environments
  • Using Internet communication protocols and standards in game development
  • Working with Berkeley Socket, the most widely used networking construct in multiplayer gaming
  • Formatting game data for efficient Internet transmission
  • Synchronizing states so all players share the same world
  • Organizing networking topologies for large-scale games
  • Overcoming latency and jitter problems that cause delays or lost data
  • Scaling games without compromising performance
  • Combating security vulnerabilities and software cheats
  • Leveraging the networking functionality of the popular Unreal 4 and Unity game engines
  • Integrating gamer services such as matchmaking, achievements, and leaderboards
  • Running game servers in the cloud

About the Website C++ source code for all examples is available at github.com/MultiplayerBook . Instructors will also find a full set of PowerPoint slides and a sample syllabus.

 

 

Author Biography

Joshua Glazer is CTO and Cofounder of Naked Sky Entertainment, where he has shipped titles for Xbox360, PS3, PC, Mac IOS and Android. He also teaches "Multiplayer Game Programming" at the University Of Southern California.  In the past he has contracted for Intel, Electronic Arts, Activision, Epic, Sony, Paramount Pictures, Microsoft and Riot Games.  Games he has worked on include RoboBlitz, Unreal Tournament III, DarkSpore, Star Trek D.A.C. and League of Legends.

 

Sanjay Madhav teaches several courses in video game programming at University of Southern California, where he has taught since 2008. Before joining USC, he worked at several game companies including Electronic Arts, Neversoft, and Pandemic Studios. His credits include "Medal of Honor: Pacific Assault", "Tony Hawk's Project 8", "Lord of the Rings: Conquest", and "The Saboteur".

Table of Contents

Chapter 1- Very Brief History of Multiplayer Games

Chapter 2 – The Internet

Chapter 3 – The Berkeley Socket API

Chapter 4 – Serialization

Chapter 5 – Object Replication

Chapter 6 – Network Topologies and Models

Chapter 7 – The Real World

Chapter 8 – Scalability

Chapter 9 – Improved Latency Handling

Chapter 10 – Security

Chapter 11 – Real World Engines

Chapter 12 – Online Gamer Service Overview

Chapter 13 - Implementation of Gamer Services for Desktop, Console and Mobile

Appendix – C++ Refresher

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.