7 releases

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

#550 in Game dev

Download history 313/week @ 2024-09-19 60/week @ 2024-09-26 11/week @ 2024-10-03 101/week @ 2024-10-10 484/week @ 2024-10-17

684 downloads per month
Used in 3 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