GGRS LOGO

crates.io GitHub Workflow Status

P2P Rollback Networking in Rust

GGRS (good game rollback system) is a reimagination of the GGPO network SDK written in 100% safe Rust 🦀. The callback-style API from the original library has been replaced with a much saner, simpler control flow. Instead of registering callback functions, GGRS returns a list of requests for the user to fulfill.

If you are interested in integrating rollback networking into your game or just want to chat with other rollback developers (not limited to Rust), check out the GGPO Developers Discord!

Getting Started

To get started with GGRS, check out the following resources:

Development Status

GGRS is in an early stage, but the main functionality for multiple players and spectators should be quite stable. See the Changelog for the latest changes, even those yet unreleased on crates.io! If you want to contribute, check out existing issues, as well as the contribution guide!

Bevy Plugin

GGRS has a Bevy plugin currently in development. Check it out!

Other Rollback Implementations in Rust

Also take a look at the awesome backroll-rs!

Licensing

GGRS is dual-licensed under either

at your option.