nimble-assent

Crates.ionimble-assent
lib.rsnimble-assent
version0.0.17-dev
sourcesrc
created_at2024-01-30 21:42:46.517998
updated_at2024-10-24 10:25:57.793727
descriptionAuthoritative state
homepage
repositoryhttps://github.com/nimble-rust
max_upload_size
id1120739
size11,905
Peter Bjorklund (piot)

documentation

README

🎮 Nimble Assent

Crates.io Documentation

Nimble Assent is a Rust library for deterministic simulation of game logic based on player inputs (called steps). It ensures that all participants in a multiplayer game process the same input in the same order, leading to identical results.

🤔 What is "Assent"?

The name "Assent" was chosen because it means agreement, in this context that assent makes sure that the deterministic simulation is updated so all clients agree on the same deterministic simulation.

✨ Features

Nimble Assent's primary structure is the Assent struct, which manages the deterministic application of authoritative player steps over game ticks. It provides:

  • Step queueing based on tick IDs
  • Synchronized step processing to keep all participants on the same page
  • Limiting the number of ticks processed per update to prevent overloads

📦 Installation

Add this to your Cargo.toml:

[dependencies]
nimble-assent = "0.0.17-dev"

License

This project is licensed under the MIT License - see the LICENSE file for details.

Commit count: 0

cargo fmt