NetKit - Networking primitives for s&box. Every common multiplayer networking task in one line.
What's included:
NetRequest - Async request/response over RPCs. Client awaits a typed response from the host. No more fire-and-forget.
NetChannel - Typed event bus. Push events to specific clients or broadcast to all. No more JSON + FilterInclude ceremony.
NetCooldown - Shared per-player cooldowns with client-side countdown. No more per-feature TimeSince fields.
NetTransaction - Optimistic client prediction. Apply changes instantly, rollback if the host rejects.
NetState<T> - Replicated state machines. Synced enum with transition events, timing, and previous-state tracking.
NetVisibility - Declarative network visibility. Distance-based, owner-only, or custom filter. Drop the component and configure.
Why NetKit?
s&box gives you the building blocks: RPCs, Sync, NetList. But every time I made something new, I had to rebuild the same patterns on top: request/response, event broadcasting, cooldowns, rate limiting. NetKit is the missing layer. Drop it in, make your life easier.
Quick example:
Register a handler on the host:
NetRequest.Handle<BuyReq, BuyRes>((caller, req) => new BuyRes { Success = true });
Client sends and awaits:
var res = await NetRequest.Ask<BuyReq, BuyRes>(new BuyReq { ItemId = "sword" });
No boilerplate RPCs. No JSON serialization. No request ID management. Typed, async, one line.
Support: Discord - callowayisweird
Source: github.com/CallowayIsWeird/netkit