Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
Signed-off-by: Glenn Fiedler <glenn@networknext.com>
  • Loading branch information
gafferongames authored Jan 30, 2025
1 parent 4398d61 commit ea1d763
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@

# Design

Real-time multiplayer games typically use UDP instead of TCP, because reliable-ordered delivery holds the most recent packets hostage while it waits for older, out of date packets to be resent. This is not helpful for real-time games because most of the time they only care about the most recent data, and can skip over any missing data that wasn't received.
Real-time multiplayer games typically use UDP instead of TCP, because reliable-ordered delivery holds the most recent packets hostage while it waits for older, out of date packets to be resent. This is undesirable for real-time games because most of the time they need only the most recent data, and can skip over any missing data that wasn't received.

*netcode* fixes this by providing the simplest possible connection-oriented approach on top of UDP so you can build your own custom UDP-based protocol on top. In netcode, the server manages n slots for clients to connect to, while allowing clients and servers to exchange unreliable unordered packets. It also provides security feature like encrypted and signed packets, and a novel 'connect token' system that only allows authenticated clients to connect to your server.
*netcode* fixes this by providing the simplest possible connection-oriented approach on top of UDP so you can exchange unreliable, unordered packets, while still having the convenience of a connection oriented protocol. In netcode, the server manages n slots for clients to connect to, while also provides security feature like encrypted and signed packets, and a novel 'connect token' system that only allows authenticated clients to connect to your server.

Building and testing all these features yourself on top of UDP is complex and error prone. So if you are thinking of building your own game network protocol from scratch, netcode can be a really good choice. You get client slots, encryption/decryption of packets, connect tokens and other security features already built, and you can send unreliable unordered packets between the client and server just like UDP!
Building and testing all these features yourself on top of UDP is complex and error prone. So if you are thinking of building your own game network protocol from scratch, netcode can be a really good starting point. You get client slots, encryption/decryption of packets, connect tokens and other security features already built, and you can still send unreliable unordered packets between the client and server just like UDP!

# Features

Expand Down

0 comments on commit ea1d763

Please sign in to comment.