A C++ network library for client/server games with secure authentication, reliable messaging, and competitive multiplayer features.
Yojimbo is a network library for client/server games written in C++. It provides secure authentication, encrypted communication, reliable messaging, and network metrics specifically designed for competitive multiplayer games like first person shooters. It solves the problem of implementing robust, low-latency networking in custom game engines.
Game developers working on custom C++ game engines who need to implement client/server networking for competitive multiplayer games, particularly first person shooters and other real-time titles.
Developers choose Yojimbo because it's specifically designed for the demanding networking requirements of competitive multiplayer games, offering production-ready features like secure authentication, encrypted UDP communication, and comprehensive network metrics out of the box.
A network library for client/server games written in C++
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses cryptographically secure connect tokens based on the netcode standard, ensuring safe client authentication as highlighted in the README.
Provides encrypted and signed packets sent over UDP, essential for protecting game data without sacrificing latency, a core feature for competitive games.
Supports both unreliable-unordered messages for time-sensitive data and reliable-ordered messages with aggressive resend, catering to diverse game networking needs.
Estimates latency, jitter, packet loss, and bandwidth per connection, helping developers optimize performance and debug network issues.
Focused solely on C++ and UDP, lacking support for other languages or protocols like TCP or WebSockets, which might be required for certain game features or platforms.
Built on multiple underlying libraries (netcode, reliable, serialize), making setup and integration more involved than a self-contained solution, as noted in the dependencies.
Highly tailored for competitive multiplayer games, so it may be over-engineered for simpler or non-game applications, with features that add unnecessary overhead.