Typed, buffer-based networking for Roblox—with packets for events and queries for request/response calls.
- Typed buffer serialization for compact network payloads
- Reliable and unreliable packets
- Client-to-server queries with typed responses
- Frame-batched packet traffic
- Composable schemas for Roblox and Luau values
[dependencies]
ByteNetMax = "elitriare/bytenet-max@0.2.7"Check the Wally package for the latest published version.
Important
The shared namespace ModuleScript must be required on both the server and client, with the server initializing first. See Required initialization.
Define networking once in a shared ModuleScript:
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ByteNetMax = require(ReplicatedStorage.Packages.ByteNetMax)
return ByteNetMax.defineNamespace("Game", function()
return {
packets = {
Announcement = ByteNetMax.definePacket({
value = ByteNetMax.string,
}),
},
queries = {
GetCoins = ByteNetMax.defineQuery({
request = ByteNetMax.nothing,
response = ByteNetMax.uint32,
}),
},
}
end)Require that shared module on both the server and client. See the getting started guide for the complete setup.
The dedicated documentation covers:
ByteNet Max is available under the MIT License.