yojimbo is a network library for client/server games written in C++.
It's designed around the networking requirements of competitive multiplayer games like first person shooters.
It has the following features:
- Cryptographically secure authentication via connect tokens
- Client/server connection management and timeouts
- Encrypted and signed packets sent over UDP
- Packet fragmentation and reassembly
- Reliable-ordered messages and data blocks
- Estimates of packet loss, latency and bandwidth usage
yojimbo is stable and production ready.
You can get the latest source code by cloning it from github:
git clone https://github.com/networkprotocol/yojimbo.git
After cloning, make sure to run this command to populate the netcode.io and reliable.io submodules:
git submodule update --init --recursive
Alternatively, you can download one of the latest releases
The author of this library is Glenn Fiedler.
Other open source libraries by the same author include: netcode and reliable
Glenn is now the founder and CEO of Network Next. Network Next is a radically new way to link networks together, it's a new internet for games, one where networks compete on performance and price to carry your game's traffic. Check it out at https://networknext.com
yojimbo was generously sponsored by:
-
Gold Sponsors
-
Silver Sponsors
-
Bronze Sponsors
And by individual supporters on Patreon. Thank you. You made this possible!