About this project

Bevy Replicon is a server-authoritative replication crate designed for the Bevy game engine. It aims to simplify the implementation of multiplayer networking in games by providing a robust and highly optimized framework. ### Key Features - **Automatic World Replication**: Handles the synchronization of game worlds between server and clients. - **Remote Events and Triggers**: Allows execution of actions across the network. - **Authorization Support**: Provides built-in hooks for validating client actions. - **Client Visibility Control**: Fine-grained control over which entities and components are visible to which clients. - **ECS-Based Sync Rules**: Uses Bevy's Entity Component System (ECS) relationships to define replication rules. - **Custom Serialization**: Supports custom serialization logic, even for complex types like `Box<dyn Reflect>` that do not implement standard `serde` traits. - **Abstracted Game Logic**: Enables the same codebase to run as singleplayer, client, dedicated server, or listen server. - **No Built-in I/O**: Decoupled from specific network transport protocols, allowing integration with various messaging backends. - **Optimized and Robust**: Heavily optimized for performance, with high test coverage and support for `no_std` environments. ### Ecosystem and Integrations Replicon integrates with several messaging backends, including: - `bevy_replicon_renet` and `bevy_replicon_renet2` (for Bevy Renet) - `bevy_replicon_quinnet` (for Bevy Quinnet) - `aeronet_replicon` (for Aeronet) - `bevy_replicon_matchbox` (for Matchbox) Additionally, the ecosystem supports client-side prediction, interpolation, and rollback through libraries like `bevy_rewind` and `bevy_timewarp`. ### Compatibility The crate maintains strict semantic versioning compatibility with various Bevy engine versions, ranging from Bevy 0.10 to 0.19. ### License Released under the Apache License 2.0 or the MIT License.