3 releases
Uses new Rust 2024
new 0.1.2 | Apr 21, 2025 |
---|---|
0.1.1 | Apr 20, 2025 |
0.1.0 | Apr 20, 2025 |
#5 in #sustenet
206 downloads per month
Used in sustenet
40KB
836 lines
sustenet-client
sustenet-client
is the official client crate for Sustenet's networking solution. It connects to the master or cluster servers, manages server discovery, and handles communication for multiplayer games. The client is designed to work seamlessly with Sustenet's master and client servers, supporting scalable and secure networking for game engines.
Sustenet is a networking solution for game engines. It's made to primarily be used for MMO or large-scale multiplayer games in Godot Engine but can also be used in Unity and Unreal Engine. Support for other engines will continue to grow over time.
Features
- Server Discovery: Connects to the master server to discover available clusters.
- Cluster Connection: Connects to cluster servers for gameplay sessions.
- Data Transfer: Handles sending and receiving data to/from servers.
- Configurable: Reads settings from a TOML configuration file.
- Logging: Unified logging macros for debugging and monitoring.
- Security: Integrates with shared security primitives for encryption and key management.
Modules
main.rs
: Entry point for the client, handles startup and shutdown.lib.rs
: Core logic for client operation, including server discovery, connection management, and data transfer.
Usage
Plugin support coming soon.
Add sustenet-client
to your project and call the main entry point:
use sustenet_client::{ cleanup, start };
#[tokio::main]
async fn main() {
start().await;
cleanup().await;
}
License
This project is licensed under the MIT license.
Dependencies
~8–17MB
~236K SLoC