Skip to content

Release v0.25.0 !

Latest

Choose a tag to compare

@connorcarpenter connorcarpenter released this 12 May 17:36

v0.25.0

New Observability Crates

naia-metrics and naia-bevy-metrics — observability support for naia applications. Drop in any metrics-compatible exporter (Prometheus, StatsD, etc.) and naia will automatically emit per-connection
gauges: RTT (p50 + p99), jitter, packet loss, and send/receive bandwidth. Bevy users get a zero-boilerplate plugin:

app.add_plugins(NaiaServerMetricsPlugin);

Non-Bevy users can call emit_server_connection_stats / emit_client_connection_stats directly after send_all_packets.

Performance

  • ~14% reduction in wire size on typical game-state packets from optimized message-type tag encoding. No API changes required.
  • Priority-weighted bandwidth is now fully implemented. Assign a priority gain per entity to control how often it is replicated relative to others — useful for giving player-owned entities higher update frequency and deprioritizing off-screen objects.

Documentation

The Naia Book is now available — a full documentation site covering installation, Bevy quick start, core concepts (entity replication, messages, rooms, tick synchronization), authority delegation, client-side prediction, lag compensation, transports, and more.

Extensive Test Coverage

Applied absolutely comprehensive BDD-style test coverage over all of naia and adapters to make sure behavior follows the guaranteed documented contract.

Extensive Benchmark Suite

No published stats (yet), but feel free to run the suite yourself. I'm actively using this to further optimize naia's performance.