Releases: projectharmonia/bevy_replicon
Releases · projectharmonia/bevy_replicon
Bevy Replicon 0.19.0
Added
renet_serde
feature which reexportsserde
feature frombevy_renet
.ClientSet::Reset
which can be disabled by external users.ServerEntityMap::remove_by_client()
for manual client cleanup.BufferedUpdates
,ServerEntityTicks
to public API.
Changed
- Move the client reset system to
PreUpdate
to let clients react more promptly to resets. - Replace
Ignored<T>
withCommandDontReplicateExt::dont_replicate
. Replication
entities with no replicated components will now be spawned on the client anyway.
Bevy Replicon 0.18.2
Changed
- Fix missing removals and despawns caused by events cleanup.
Bevy Replicon 0.18.1
Changed
- Cache replicated archetypes for faster iteration.
- Fix crash caused by registering the same type for client and server events.
- Fix replication for entities when
Replication
component is added after spawn.
Bevy Replicon 0.18.0
Changed
- Send all component mappings, inserts, removals and despawns over reliable channel in form of deltas and component updates over unreliable channel packed by packet size. This significantly reduces the possibility of packet loss.
- Replace
REPLICATION_CHANNEL_ID
withReplicationChannel
enum. The previous constant corresponded to the unreliable channel. - Server events use tick with the last change instead of waiting for replication message without changes.
- Fix replication of removals that happened after replication on the same frame.
- Include despawns before removals to optimize space for case where despawns are presents and removals aren't.
TickPolicy::EveryFrame
andTickPolicy::MaxTickRate
now increment tick only ifRenetServer
exists.ServerSet::Send
now always runs. Replication sending system still runs onRepliconTick
change.ClientMapping
no longer containstick
field.- Use
EntityHashMap
instead ofHashMap
with entities as keys. - Use
Cursor<&[u8]>
instead ofCursor<Bytes>
. - Replace
LastRepliconTick
withRepliconTick
on client. - Move
ClientMapper
andServerEntityMap
toclient_mapper
submodule. - Fix missing reset of
RepliconTick
on server disconnect. - Rename
replicate_into_scene
intoreplicate_into
and move it toscene
module. - Derive
Debug
forReplication
andIgnored<T>
.
Removed
AckedTicks
resource.TicksMap
resource.
Bevy Replicon 0.17.0
Added
- Tracing for replication messages.
Debug
derive forLastRepliconTick
.
Changed
- Update to Bevy 0.12.
Bevy Replicon 0.16.0
Added
- API to configure max channel usage bytes in
NetworkChannels
.
Changed
- Rename
SendPolicy
intoEventType
. - Rename
NetworkChannels::server_channels
intoNetworkChannels::get_server_configs
. - Rename
NetworkChannels::client_channels
intoNetworkChannels::get_client_configs
.
Bevy Replicon 0.15.1
Changed
- Register
Replication
type and add#[reflect(Component)]
.
Bevy Replicon 0.15.0
Added
network_event::server_event::send
helper for server events in custom sending functions.- Optional
ClientDiagnosticsPlugin
, which writes diagnostics every second. Reflect
derive forReplication
.
Changed
- Optimize despawn tracking.
- Hide
id
field inEventChannel
and addClone
andCopy
impls for it. - Remove special functions for reflect events and advise users to write them manually instead. Reflect events are easier now because sometimes you can directly use reflect serializers from Bevy instead of manually writing serde traits.
- Do no trigger server events before world update arrival.
Removed
Debug
requirement for events.
Bevy Replicon 0.14.0
Added
- The ability to pre-spawn entities on client.
Changed
- Rename
NetworkEntityMap
toServerEntityMap
.
Bevy Replicon 0.13.0
Added
- The ability to set custom despawn and component removal functions.
TickPolicy::EveryFrame
to updateRepliconTick
every frame.
Changed
- Use more compact varint encoding for entities.
- Now all replication functions accept
RepliconTick
. - Rename
NetworkTick
intoRepliconTick
and move it intoserver
module. - Fix crash with several entities spawned and updated.
- Rename
LastTick
intoLastRepliconTick
. - Fix the entire world was always sent instead of changes.
Removed
derive_more
dependency.