pragmascript / yojimbo

A network library for client/server games with dedicated servers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Travis Build Status Coverity Scan Build Status

yojimbo

yojimbo is a network library for client/server games with dedicated servers.

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
  • Reliable-ordered messages and data blocks
  • Packet fragmentation and reassembly
  • Estimates of packet loss, latency and bandwidth usage

yojimbo is stable and well tested having been used in AAA game projects for over 2 years now.

Source Code

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

Author

The author of this library is Glenn Fiedler.

Glenn is now focusing on his new startup Network Next.

Sponsors

yojimbo was generously sponsored by:

And by individual supporters on Patreon. Thank you. You made this possible!

License

BSD 3-Clause license.

About

A network library for client/server games with dedicated servers

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:C 62.0%Language:C++ 36.5%Language:Lua 0.8%Language:Go 0.5%Language:Dockerfile 0.2%Language:Batchfile 0.0%