Crate rbrb

Source
Expand description

A library for building RoBust RollBack-based networked games.

rbrb is heavily inspired by GGPO and GGRS, but aims to be more reliable and capable.

§Assumptions

This library assumes your game is a deterministic Fn(&State, Set<Input>) -> State. We (will) have an additional testing mode that will spend extra cycles on checking that the state is consitent between players and deterministic on the same logical update.

§Roadmap

§Core Functionality

  • Multi-party sync
  • Consistent disconnection
  • Reconnect disconnected player

§Robustness

  • Determinism checks
  • Checksum propagation
  • Debugging failed checks
  • Fake a bad network
  • Confirmation state

§Features

  • In-game replays
  • Out of game replays
    • Headless
  • Spectators
    • Drop in/out

§Performance

  • Input delta encoding
  • Hub and spoke network