Book description
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.
Table of contents
- About This E-Book
- Title Page
- Copyright Page
- Dedication Page
- Contents
- Preface
- Acknowledgments
- About the Authors
- Chapter 1. Overview of Networked Games
- Chapter 2. The Internet
- Chapter 3. Berkeley Sockets
- Chapter 4. Object Serialization
- Chapter 5. Object Replication
- Chapter 6. Network Topologies and Sample Games
- Chapter 7. Latency, Jitter, and Reliability
- Chapter 8. Improved Latency Handling
- Chapter 9. Scalability
- Chapter 10. Security
- Chapter 11. Real-World Engines
- Chapter 12. Gamer Services
- Chapter 13. Cloud Hosting Dedicated Servers
- Appendix A. A Modern C++ Primer
- Index
- Code Snippets
Product information
- Title: Multiplayer Game Programming: Architecting Networked Games,
- Author(s):
- Release date: December 2015
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780134034355
You might also like
book
Building Multiplayer Games in Unity: Using Mirror Networking
Take a deep dive into creating large-scale, multiplayer games with Unity 3D, using Mirror Networking and …
book
Developing 2D Games with Unity: Independent Game Programming with C#
Follow a walkthrough of the Unity Engine and learn important 2D-centric lessons in scripting, working with …
book
Programming 2D Games
A First Course in Game ProgrammingMost of today's commercial games are written in C++ and are …
book
Unity Networking Fundamentals: Creating Multiplayer Games with Unity
Learn the fundamentals of networking with Unity and C#. This book covers a variety of topics, …