πŸŽ‰ Netcode for Entities v1.13.0 is now publicly available

:package: Netcode for Entities 1.13.0 is now live! :package:

This release focuses on critical bug fixes for prediction and interpolation, alongside continued integration of experimental GameObject-side functionality.ation, alongside continued integration of experimental GameObject-side functionality.

Added
  • Internal changes required for a GhostField type usable in monobehaviour to access replicated state.
  • Internal changes required for GameObject side prediction update.
  • Internal changes required for GameObject side input management for prediction.
Changed
  • [Potential Breaking Change] NetcodeProtocolVersion.k_NetCodeVersion is now private, use NetcodeProtocolVersion.DefaultNetCodeVersion instead to get the builtin netcode version.
  • Behaviour-Breaking Change: The GhostUpdateSystem’s predicted ghost history backup lookup failure case now only attempts to rollback to the snapshot if said rollback isn’t too severe. This change marginally worsens correctness in exceptional cases, but prevents egregiously large rollbacks.
Fixed
  • Extraordinarily rare correctness bug introduced with the static ghost early-out optimisation, where the early-out would be applied even when new snapshot data arrived, but only if said snapshot arrived so late that it was older than the lastInterpolationTick.
  • Issue where prediction switching a static, unchanging ghost (to predicted) would cause massive 64-tick rollbacks.
  • Issue where the GhostUpdateSystem’s predicted ghost history backup lookups were failing whenever other entities within the chunk were deleted (which caused the cached entityIndexInChunk to be incorrect).
  • The GhostUpdateSystem’s snapshot rollback is now constrained below 64 ticks typically, massively reducing the severity of rollbacks in some esoteric cases, at the cost of minor misprediction issues (which will get resolved by eventual consistency).
  • Interpolated static ghosts will now wait until the interpolation timeline reaches new snapshot data before applying any new snapshot. This fixes jittery movement on static interpolated ghosts when new snapshots arrive after a static ghost had stopped moving for a few frames.

Let us know if you have any questions or feedback!
Happy Netcoding!

10 Likes

Some necessary fixes, lets see know how it performs.

A patch version Netcode for Entities 1.13.1 is now live!

Key Updates in this Release

Netcode for Entities 1.13.1 comes with several bug fixes.

Let us know if you have any questions or feedback!

Happy Netcoding!

Fixed
  • Obscure error messages when the RpcCollection.DynamicAssemblyList value is not configured the same way between client and server.

  • Fixed a niche null reference exception when editing the lists in Project Settings > Multiplayer > Build immediately after adding the Netcode for Entities package.

  • Add missing profiler marker for GhostReceiveSystem