Server API
Port
Named isolated pipelines. Each port gets its own RemoteEvent, Router, and TokenBucket — high-frequency combat requests can't starve inventory requests.
-- Server: app:Listen("portName", callback, settings?) -- Client: RoExpress("Network", "portName")isolation
Creating Ports
Register a named port on the server. The callback receives a full App-like instance with its own Router and TokenBucket.
app:Listen(name, cb, settings?)
→
client
Using Ports
Access a port from the client with Network or Listener. The call signature is identical to the main channel.
RoExpress("Network", "portName") · RoExpress("Listener", "portName")
→
config
Port Settings
Per-port rate limiting via TokenBucket settings. Tune maxTokens, refillRate, startTokens, and cost independently per port.
maxTokens · refillRate · startTokens · cost
→
See also
App | the main pipeline ports are attached to · TokenBucket | per-port rate limiting config · Router | route syntax used inside ports · Request Pipeline | ports run an identical pipeline · Combat Guide | isolation by weapon type · Gun Example | combat port in full context