- WebRTC Server implementation
- Native / Wasm Client implementation
- Heartbeats
- Host timeout detection
- Basic DoS mitigation
- Connection / Disconnection events
- Customizable Client authentication
- Unguaranteed & guaranteed, ordered & unordered Messaging
- Entities & their Components sync with Clients when "in scope"
- Rooms restrict syncing to their contained Users & Entities
- Customizable scoping function for advanced usage
- RTT estimations
- Client Tick events
- Synced Tick between Server/Client
- Bitwise (as opposed to current "Bytewise") reading/writing of messages, to save bandwidth
This list is not sorted by order of priority
- Integration & Unit Tests
- Better error handling
- Load Testing & Benchmarks
- Congestion Control
- Custom Property read/write implementation
- "Deep" Replica property syncing
- Update Priority (indicates certain updates should be sent earlier than others)
- Dynamic Update Priority based on scope evaluation (conditionally raise priority)
- Set independent Entity/Component update rate
- Horizontally scale Servers
- Support Debugging / Logging / Metrics visualizations
- File-like API for streaming assets / caching on client
These planned changes for naia-socket will bring new features to naia as well.
- Integration & Unit Tests
- Better error handling
- Load Testing & Benchmarks
- Android-compatible Client Socket
- iOS-compatible Client Socket