7 releases

0.0.17-dev Oct 24, 2024
0.0.16 Oct 22, 2024
0.0.12-dev Sep 23, 2024

#1777 in Game dev

23 downloads per month
Used in 4 crates (2 directly)

MIT license

98KB
1.5K SLoC

🎮 Nimble Client Logic

Crates.io Documentation

nimble-client-logic is a robust Rust crate designed to manage client-side logic for multiplayer game sessions using the Nimble protocol messages. It facilitates seamless communication between the client and host, ensuring synchronized game states and smooth gameplay experiences.

✨ Features

  • 🔗 Connection Management: Establish and manage connections with the host, ensuring protocol compatibility and handling connection states.
  • 🕹ī¸ Game State Handling: Download and maintain the complete game state from the host, ensuring consistency across all clients.
  • đŸ‘Ĩ Participant Management: Dynamically add and remove players from the game session.
  • ⚡ Step Prediction & Reconciliation: Send predicted player steps to the host and reconcile them with authoritative steps received, ensuring responsive gameplay.
  • đŸ“Ļ Blob Streaming: Efficiently handle large game state transfers using blob streaming.
  • 📈 Metrics Tracking: Monitor server buffer delta ticks to optimize performance and synchronization.

đŸ“Ļ Installation

Add nimble-client-logic to your project's Cargo.toml:

[dependencies]
nimble-client-logic = "0.0.17-dev"

License

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

Dependencies

~285–385KB