Skip to content

projectharmonia/bevy_replicon

Repository files navigation

Bevy Replicon

crates.io docs.rs license codecov

A replication crate for the Bevy game engine.

If you are new to networking, see glossary and What kind of networking should X game use?.

Features

  • Automatic world replication.
  • Remote events and triggers.
  • Control over client visibility of entities and events.
  • Replication into scene to save server state.
  • Customizable serialization and deserialization even for types that don't implement serde traits (like Box<dyn Reflect>).
  • Abstracts game logic to support singleplayer, client, dedicated server, and listen server configurations simultaneously.
  • No builtin I/O, can be used with any messaging library. See messaging backends for already available integrations.
  • Heavily optimized.
  • Hackable. See ecosystem.

Getting Started

Check out the quick start guide.

For examples navigate to the bevy_replicon_example_backend (because you need I/O in order to run them).

You can also:

Have any questions? Feel free to ask in the dedicated bevy_replicon channel in Bevy's Discord server.

Ecosystem

Depending on your game, you may need additional features. We provide an API that allows external crates to integrate with Replicon or to be built on top of it.

Warning

Ensure that your bevy_replicon version is compatible with the used crate according to semantic versioning.

Messaging backends

Interpolation and/or rollback

Visibility

  • bevy_replicon_attributes - adds ergonomic visibility control through client attributes and entity/event visibility conditions. An extension of this crate's raw client visibility API.

Miscellaneous

Unmaintained

Bevy compatibility

bevy bevy_replicon
0.15.0 0.29-0.32
0.14.0 0.27-0.28
0.13.0 0.23-0.26
0.12.1 0.18-0.22
0.11.0 0.6-0.17
0.10.1 0.2-0.6
0.10.0 0.1

License

Licensed under either of Apache License, Version 2.0 or MIT License at your option.