Game networking is a subset of computer networking that commonly covers data replication, state synchronization, snapshot interpolation, client-side prediction, lag compensation, anti cheating, load balancing, bandwidth optimization
— and many more techniques involved in multiplayer online game programming.
Please feel free to contribute your awesome resource after reading contribution guidelines, thank you!
- Ethernet vs. WiFi - Internet connection over WiFi vs Ethernet metrics comparison by Viscarious from Riot Games.
- Explaining Delay-based and Rollback Netcode - In-depth article on rollback netcode for fighting games by Ricky Pusch.
- Fast-Paced Multiplayer - Gabriel Gambetta's client-side prediction, entity interpolation, lag compensation articles.
- Gaffer on Games - Glenn Fiedler's reliable-UDP protocol and game network development articles.
- Game Server Architecture - Matthew Walker's multiplayer game server architecture blog.
- High Performance Browser Networking - A fantastic free online book about modern web protocols by Ilya Grigorik.
- How a Shooter Shoots - Armin Ronacher's analysis on Battlefield 3's shooting mechanism in multiplayer.
- Impact Of Latency In Wireless Networks For Real-time Multiplayer Games On Mobile Devices - An academic paper.
- IT Hare on Network Programming - Detailed network programming articles from IT Hare team.
- NAT Punch-through for Multiplayer Games - Brief summary of NAT and P2P connectivity by Keith Johnston.
- Netcode Explained - Basic game networking concepts with examples by Chris "Battle(non)sense" on PC Gamer.
- Networked Physics in Virtual Reality - Networking a stack of cubes with Unity and PhysX by Glenn Fiedler at Oculus.
- Network Protocols - A brief yet detailed overview of low-level network protocols stack from Destroy All Software.
- Photon Unity Networking - Official PUN multiplayer online game networking framework documentation wiki.
- Quake 3 Network Model - Fabien Sanglard's source code review about Quake 3's networking model.
- Real Time Multiplayer in HTML5 - Sven Bergström's multiplayer game development guide using web technologies.
- Replication in Networked Games - Mikola Lysenko's replication articles for JavaScript-based multiplayer games.
- Source Multiplayer Networking - Valve's Source engine wiki that includes advanced game networking topics.
- Tech-Stack of the Ultima Online Servers - A brief summary about UO tech-stack by Raph Koster and Brian Crowder.
- The Case of the Quake Cheats - Security lessons learned about client-server model from Quake 1 by id Software.
- The DOOM III Network Architecture - Improvements upon previous network architectures used in Quake III Arena.
- The Poor Man's Netcode - Project code and detailed blog post about networking challenges by Evan Todd.
- The TRIBES Engine Networking Model - Tribes I & II's networking model paper by Mark Frohnmayer and Tim Gift.
- Tick Based Lag Compensation in Unity - Case scenario on shooting with better accuracy by Albin Corén.
- Unity Physics and Client-Side Prediction - Demo project and detailed how-to blog post by Joe Best-Rotheray.
- Unity UNET HLAPI and Steam P2P Networking - Example project and detailed blog post by Justin Rempel.
- Unreal Engine 1 Netcode - Historical paper on netcode in UE1 (Unreal, Unreal Tournament), by Tim Sweeney.
- Unreal Engine 3 Networking & Replication - Historical but still valuable UE3 game networking documentation wiki.
- Unreal Engine 4 Framework & Network - Brief look into Unreal's gameplay networking framework by Nuno Afonso.
- Unreal Engine 4 Network Compendium - Detailed summary of UE4 networking with examples by Cedric Neukirchen.
- Unreal Engine 4 Networking and Multiplayer - Official UE4 gameplay networking framework documentation wiki.
- RU Как мы писали сетевой код мобильного PvP шутера - Pixonic о клиенте в быстром шутере.
- Game Developers Conference
- 2000 / Half-Life and Team Fortress Networking - Game networking in details by Yahn Bernier from Valve.
- 2010 / Building the Server Software for ELIMINATE - Talk by Stephen Detwiler and James Marr from ngmoco:).
- 2011 / Crysis 2 Multiplayer - A Programmer's Postmortem by Peter Hall from Crytek.
- 2011 / I Shot You First - Gameplay networking in Halo: Reach by David Aldridge from Bungie.
- 2012 / Writing Server and Network Code for Your Online Game - Talk by Patrick Wyatt from En Masse Ent.
- 2013 / Network Serialization and Routing in World of Warcraft - Talk by Joe Rumsey from Blizzard.
- 2015 / Game Networking for Physics Programmers - Talk by Glenn Fiedler from Respawn Entertainment.
- 2015 / Networking Gameplay and AI in Assassin's Creed Unity - Talk by Charles Lefebvre from Ubisoft.
- 2015 / Stop, Copy/Paste Networking & Innovate - High level design approaches by Claire Blackshaw from Sony.
- 2016 / Fighting Latency on Call of Duty Black Ops III - Detailed techniques by Benjamin Goyette from Activision.
- 2017 / Overwatch Gameplay Architecture and Netcode - Simulation, determinism, responsiveness and precision.
- 2017 / Replicating Chaos: Vehicle Replication in Watch Dogs 2 - Replicating vehicle movement in P2P simulations.
- 2018 / 8 Frames in 16ms - Rollback Networking in Mortal Kombat and Injustice 2 by Michael Stallone.
- 2018 / It IS Rocket Science! - The physics and networking of Rocket League in details by Jared Cone.
- 2019 / Quantum Deep Dive - Photon Quantum Deterministic Network Engine for Unity by Eric from Exit Games.
- Unreal Engine Livestream
- Replication Graph - Epic's dev-team demonstrates UE 4.20's new Replication Graph feature.
- Server Optimizations - Ryan Gerleve and Dave Ratti to discuss server optimization techniques in UE4.
- Unreal Fest
- EU 2019 / Replication Graph For Optimizing RTS Games - Talk by Nick Prühs from Deadalic Entertainment.
- Unity Unite
- EU 2016 / Building a PvP focused MMO - Albion MMO architecture by David Salz from Sandbox Interactive.
- EU 2017 / Photon vs UNet - Multiplayer architecture comparison by Christof Wegmann from Exit Games.
- LA 2018 / Deep-Dive Into Networking for Unity's FPS Sample - Netcode talk by Peter Andreasen from Unity.
- EU 2019 / Intro to DOTS and Netcode - Dive deep into the networked future of Unity using DOTS by Tim Johansson.
- Other
- HandmadeCon 2015 / Pat Wyatt - Chat about networking of Guild Wars, Diablo, StarCraft by Pat Wyatt.
- Overwatch / Let's Talk Netcode - Tim Ford and Philip Orwig from Blizzard on Overwatch's netcode.
- Unreal Engine
- Authoritative Networked Character Movement - Introduction to implementing networked movement features.
- Blueprint Multiplayer - Blueprint multiplayer game development tutorial series by Wes Bunn from Epic Games.
- Create Multiplayer Games - (Paid) C++ multiplayer game development tutorial series by Tom Looman.
- Online Game Development - (Paid) C++ online game development tutorial series by Sam Pattuzzi.
- Steam Multiplayer - Steam-backed blueprint multiplayer tutorial by Maik Hilfer.
- Unity
- Bouncy Ball Networking - Making of a simple networked bouncy ball using DarkRift2 from MateriaGame.
- Making a Multiplayer FPS - UNET-based multiplayer FPS game development tutorials by Asbjørn Thirslund.
- Multiplayer and Networking - Official UNET-based multiplayer game networking tutorials by Unity.
- C / C++
- ENet - Simple and robust reliable UDP networking library.
- GameNetworkingSockets - Valve's internal (Steam) network transport layer for games.
- RakNet - Full-featured and mature reliable UDP networking engine.
- TNL2 - (Inactive) Torque Networking Library 2 which is quite familiar to TRIBES Engine Networking Model.
- yojimbo - Reliable UDP networking library for client/server games with dedicated servers.
- C#
- Barebones Master Server - Backend framework with auth, profile, lobby, chat features for Unity.
- DarkRift Networking - Unity focused multi-threaded multiplayer networking solution.
- Forge Networking - Unity focused real-time multiplayer networking solution.
- Lidgren.Network - Reliable UDP networking library (.NET).
- LiteNetLib - Lite reliable UDP networking library (.NET/Mono).
- MLAPI - Mix and match networking library with lots of built-in features for Unity.
- Photon Engine - Hybrid multiplayer game networking platform (SaaS, Cloud).
- SocketWeaver - Multiplayer cloud services designed for the Unity engine (SaaS).
- Java
- SmartFoxServer - Massive multiplayer game server with advanced built-in features.
- JavaScript
- Colyseus - Authoritative multiplayer game server backend framework.
- SocketCluster - Scalable multi-process HTTP & real-time server framework.
- Unreal Engine
- CharacterMovementReplication - Project that adds sprint ability to the CharacterMovementComponent.
- CoopHordeShooter - 3rd-person co-op multiplayer horde shooter game tutorial project.
- EpicSurvivalGame - 3rd-person multiplayer zombie survival game tutorial project.
- GASDocumentation - 3rd-person multiplayer shooter with detailed Gameplay Ability System documentation.
- Unity
- AuthoritativeMovementExample - Server authoritative movement project using Forge Networking for Unity.
- Angry Bots Multiplayer - Photon PUN-based multiplayer top-down shooter project.
- ArenaGame - Forge Networking-based multiplayer FPS game as an example project.
- Entitas Sync Framework - Network framework for Entitas ECS targeting turn-based or slow-paced games.
- FPSSample - An official Multiplayer FPS project sample from Unity using new networking package and ECS.
- Gambetta Networked Demo - Gabriel Gambetta's network architecture implementation in Unity using Lidgren.
- MultiplayerFPS - UNET-based simple multiplayer 1st-person shooter tutorial project.
- SmartFoxServer2X Multiplayer - SFS2X-based multiplayer project examples.
- TANKS! Networking - UNET-based multiplayer tank shooter project.
- UNet-Controller - UNET-based networked 1st-person and 3rd-person player controller with advanced features.
- CapAnalysis - Web visual tool to analyze captured network traffic. (Ubuntu, Debian)
- clumsy - Network condition simulation utility. (Windows)
- Fiddler - Web debugging proxy server. (Windows, macOS, Linux)
- netem - Network emulation for testing protocols. (Linux)
- Network Link Conditioner - Network environment simulation utility. (macOS, iOS)
- Network Protocol Analyzer - Tool for analysing, debugging, maintaining and monitoring connections. (Windows)
- Network Simulator (ns) - Network simulator targeting research and educational use. (macOS, Linux)
- Postman - Web API debugging client. (Windows, macOS, Linux)
- Wireshark - Network traffic analyzer tool. (Windows, macOS, Linux)
To the extent possible under law, M. Fatih MAR has waived all copyright and related or neighboring rights to this work.