@hackage / alpaca-netcode

Rollback/replay NetCode for realtime, deterministic, multiplayer games.

Latest0.1.0.0

About

Metadata

  • Last updated , by DavidEichmann
  • License Apache-2.0
  • Categories Network Development, Game Development
  • Maintained by: davide@well-typed.com

  • Lottery factor: 0

Links

Installation

Readme

A rollback/replay client-server system for realtime multiplayer games. The API only requires you to express your game as a pure, deterministic function.

See Alpaca.NetCode to get started.

Advantages

  • Simple code. Your game logic contains no NetCode.

  • Low bandwidth. Only inputs are shared.

  • Zero latency. Player's own inputs affect their game immediatly.

  • UDP based. Unordered and using redundancy to mitigate packet loss.

  • Lightweight server. The server does not run the game logic, it only relays and tracks user inputs.

  • Cheating. Only inputs are shared which eliminates a whole class state manipulation cheats.

Disadvantages

  • Increased CPU usage. Rollback/replay means that clients must run the game step function multiple times per frame.

  • Not suitable for large numbers of players. Tens of players is likey reasonable.

Disclaimer

This is an initial release with minimal functionality and still very experimental. Use at your own risk.