NetRay Compile is an IDL compiler written in Luau.
Plugin | Documentation | GitHub
Features
Blink-style syntax support
Roblox Studio plugin for easy authoring and compilation
Two-way communication on a single remote (send + receive), instead of maintaining separate events with different From settings
Supports events, unreliable, remote functions, and namespaces/scopes
Passthrough, allowing you to send data outside the buffer, for example, instances and unsupported types
Compared to Roblox
~2.7–6.2x faster than Roblox remotes
Up to 1000x lower bandwidth usage than Roblox remotes
Benchmarks
Compared to Blink (average/median):
~4% lower bandwidth usage
~66.7% faster
About NetRay Compile
NetRay Compiler aims to deliver similar or better bandwidth performance than Blink, while improving execution speed.
Support, feedback, and pull requests are highly appreciated.
Beta Note
NetRay Compiler is currently in beta.
It was started very recently (8/2/2026), and not all features are fully supported or rigorously tested yet.
The project is inspired by Blink/Zap, with thanks to their creators.
Benchmark
Benchmark Summary (240 FPS, Studio, empty baseplate):
- Blink and NetRay achieve identical throughput (~12k msgs/sec) and identical RTT (~21–22 ms, scheduler-bound).
- NetRay consistently uses ~2% less bandwidth and ~43% less client CPU per message (418 ns vs 737 ns).
- Roblox Performance Stats corroborate the bandwidth difference (≈253 KB/s vs ≈268 KB/s).
- NetRay uses ~5–6% less bandwidth than Blink according to Roblox Performance Stats, while delivering identical throughput and latency.
Benchmark Tested Entities struct
- 50 Fires Per Frame
- 3,000 Frames
Benchmark also includes 200 fires per step for 8 second test function (you must change the code to use it)
Benchmark.rbxl (77.1 KB)
If there is anything wrong with the Benchmark Place, let me know!
