raknet.OnPacketReceive:Connect Synchronous

  • RakNet.OnPacketReceive:Connect
  • RakNet.OnPacketReceive:connect
  • raknet.OnPacketReceive:connect

Connect a listener to incoming packet events. Keep the returned connection if the observer should be removed when a panel or task closes.

Syntax
Luau
raknet.OnPacketReceive:Connect(callback: (RakNetPacket) -> ()) -> RakNetConnection

Parameters

Call this method with a raknet.OnPacketReceive receiver. The colon supplies self implicitly; a dot call must pass the receiver explicitly.

Function parameters
ParameterTypeDescription
callback(RakNetPacket) -> ()Function called with a temporary RakNetPacket for each incoming packet.

Argument fields

RakNetPacket fields
Luau
RakNetPacket = {
  Data: buffer, AsArray: {number}, AsBuffer: buffer, AsString: string,
  Size: number, PacketId: number, ID: number, Id: number, PacketID: number, Priority: number,
  Reliability: number, OrderingChannel: number,
  SystemIdentifier: string, Broadcast: boolean, ForceReceiptNumber: number
}

Returns

RakNetConnection

A RakNetConnection with Connected and Disconnect members.

RakNetConnection fields
Luau
RakNetConnection = {Connected: boolean, Disconnect: Function, disconnect: Function}

Usage notes

The RakNet library must be enabled in Environment settings and connected to an active game generation.

Callbacks must not yield. If a callback raises, Kawaii reports a warning and continues dispatching.

The RakNetPacket view is valid only during its callback. Save fields or copy Data inside the callback if you need them later.

Availability

RakNet is disabled by default. RakNet and raknet are removed when the setting is off; retained references can still call is_enabled().

Example

Example
Luau
if raknet.is_enabled() then
    local connection = raknet.OnPacketReceive:Connect(function(packet)
        print("Incoming ID:", packet.ID)
    end)
    task.delay(5, function() connection:Disconnect() end)
end
Kawaii documentation