Course details
Server Side Game Developer
Learn what a multiplayer game server actually does and how its messages cross the internet. You will size a tick loop, pick TCP or UDP for each kind of message, reason about IP, latency and bandwidth, and read the socket code underneath — all on one online kite-fighting game.
Course curriculum
Server-Side Development4 lessons
Meet the authoritative server, the tick loop that drives it, the delays every player feels, and the snapshots and deltas that keep sixteen screens showing the same match.
TCP — The Reliable Stream4 lessons
Follow the lobby server's TCP connections from the three-way handshake through segment headers, acknowledgments and retransmission, to the receive window that caps how fast a download can go.
UDP — The Fast Datagram4 lessons
Use UDP datagrams for the live match, read their tiny header, build your own acknowledgments for the messages that must arrive, and slow down on your own when the network is struggling.
TCP vs UDP3 lessons
Sort game messages into reliable, unreliable, ordered and sequenced channels, compare TCP's heavy stream with UDP's light datagrams, and defend the server against floods, spoofing and hijacking.
IP — The Layer Underneath4 lessons
Look under TCP and UDP at IP itself: how addresses and DNS find the server, how routers forward each packet hop by hop, what IP does not promise, and how bandwidth and MTU limit what a game can send.
Socket Programming4 lessons
Read the BSD socket calls both servers make, keep the tick loop from ever blocking on a descriptor, convert addresses between text and binary, and pack kite state into exact bytes in network byte order.
