Code Monkey home page Code Monkey logo

bevy_replicon's Introduction

Bevy Replicon

crates.io docs.rs codecov

ECS-focused high-level networking crate for the Bevy game engine.

Features

  • Automatic component-oriented world state replication.
  • Events-based messaging API with different guarantees (reliable, reliable unordered, and unreliable).
  • Control over client visibility of entities and events.
  • Replication into scene to save server state.
  • Support for client and server both in one App and in separate.
  • Customizable serialization and deserialization even for types that don't implement serde traits (like Box<dyn Reflect>).
  • No builtin I/O. Use it with any messaging library. We provide a first-party integration with renet via bevy_replicon_renet.
  • API focused on writing logic once that automatically works for singleplayer, client, server, and listen server (when server is also a player).

Prediction and interpolation are not implemented in this crate and are considered out of scope. But the idea of the crate is to provide an extensible core, so if your game needs something, you can implement it on top. Also check out related crates.

Getting Started

Check out the quick start guide.

See also examples.

Related Crates

  • bevy_replicon_snap - adds snapshot interpolation and client-side prediction.
  • 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.
  • bevy_replicon_repair - preserves replicated client state across reconnects.
  • bevy_timewarp - a rollback library that buffers component state. See this instruction about how to integrate.

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

Bevy compatibility

bevy bevy_replicon bevy_replicon_renet
0.13.0 0.23-0.24 0.1
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

bevy_replicon's People

Contributors

shatur avatar ukoehb avatar dependabot[bot] avatar rj avatar aceeri avatar bendzae avatar jonastar avatar vixenka avatar umatriz avatar chatalot1 avatar rsrasmu2 avatar randomexplosion avatar pitibouchon avatar paul-hansen avatar noahshomette avatar dgsantana avatar actuallyhappening avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.