Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Feature Matrix

Replication

FeatureNotes
Entity replicationPer-field deltas through Property<T>
Static entitiesFull snapshot on scope entry, no per-tick diff tracking
Replicated resourcesSingleton values carried by hidden replicated entities
Client-authoritative entitiesOpt-in via Protocol::enable_client_authoritative_entities()
Entity publicationClient-owned Private, Public, and Delegated states
Reconnect correctnessRe-sends in-scope entities and resources after reconnect

Authority

FeatureNotes
Server-owned default modelOrdinary server-spawned entities/resources are server-owned
Authority delegationClients can request temporary authority over delegated entities/resources
Server authority controlServer can grant, deny, revoke, and reclaim authority
Scope-aware authorityAuthority operations respect scope and delegated status

Interest And Bandwidth

FeatureNotes
RoomsCoarse interest groups
UserScopeFine-grained per-user visibility
Scope exit policyDespawn or persist/freeze when leaving scope
Priority-weighted bandwidthPer-entity/per-user gain with token-bucket send loop
Per-connection bandwidth budgetsTarget bytes per second
Message backpressureReliable channel queue limits return errors instead of silently growing forever

Messaging And Time

FeatureNotes
Typed messagesReliable/unreliable, ordered/unordered, sequenced, and tick-buffered modes
Typed request/responseRequest trait associates each request with its response
Tick synchronizationServer/client ticks, RTT-aware timing, interpolation fractions
Prediction primitivesTickBuffered, CommandHistory, local duplicate patterns
Lag compensationHistorian snapshot buffer, including component-kind filtering

Transports

FeatureNotes
WebRTC transportNative and Wasm clients; DTLS; recommended production path
UDP transportNative plaintext transport for dev/trusted/custom-secured deployments
Local transportIn-process deterministic tests and harnesses
Link conditioningLoss, latency, and jitter presets for supported transports

Adapters And Tooling

FeatureNotes
Bevy adapterServer, client, shared protocol helpers, replicated resources
Macroquad/core pathUses naia-client directly with mquad support
Custom world integrationImplement WorldMutType and WorldRefType
Metrics integrationnaia-metrics and naia-bevy-metrics
Contract test harnessScenario/spec coverage for replication, authority, scope, and transport behavior
Benchmarks and fuzzingCriterion/iai-callgrind benches and protocol/serde fuzz targets

Serialization

FeatureNotes
Bit-level serializationCompact bit-packing
Quantized numeric typesFixed-width and variable-width integer/float helpers
zstd compressionOptional default, custom dictionary, and dictionary-training modes
Enum messagesSupported by #[derive(Message)]