lightyear
lightyear copied to clipboard
A networking library to make multiplayer games for the Bevy game engine
Fixes https://github.com/cBournhonesque/lightyear/issues/127 This PR adds delta-compression, which means that instead of serializing the entire component we only serialize a diff between two component states. It's only enabled for components currently....
- excluding unnecessary fields from replication (would either be unavailable or defaulted at the receiver end) -> this is already available, it is possible via the Replicate component to specify...
Let's say we have a ` ReplicationUpdate` message for a given `ReplicationGroup` E1 and message id M1. We try to send it at tick 12, but there's no bandwidth left,...
The main functionality was merged here: https://github.com/cBournhonesque/lightyear/pull/371 But some things could be improved: - have more granular control over the interval. At a minimum make it configurable at start. Maybe...
The server should be able to run some logic to accept or deny a connection. This could be useful to deny connection to banned users, or to temporarily throttle a...
The DeniedPacket contains no data right now (as per the netcode standard), but we might want to return some custom data, for example a deny reason
Unreal does this with NetUpdateFrequency: https://docs.unrealengine.com/4.27/en-US/InteractiveExperiences/Networking/Actors/ReplicationFlow/ - How to reconcile this with the server's server_update_interval?
For example what if a user only wants to replicate one component?
According to https://caniuse.com/webtransport, FF 124 is supported? On Firefox 124, MacOS (Silicon), I get a vague WebTransport connection rejected error. I tried connecting from `[::1]:8080`, `localhost:8080`, and `127.0.0.1:8080` with Trunk,...
- if other players are interpolated in the past, and current player is in the present, we need lag compensation to register hits - I believe that lag compensation only...