Skip to main content

RemoteEvent

Remote event wrapper adding additional functionality and compatibility with Cradle.

Functions

new

This item only works when running on the server. Server
RemoteEvent.new() → RemoteEvent

Creates a new RemoteEvent instance, this is used to replicate events across the server and client. This event is reliable, meaning that it is guaranteed to be received by the client. However, it is slower than UnreliableRemoteEvent, and should be used for events that are critical to the game's functionality.

Connect

This item only works when running on the client. ClientThis item only works when running on the server. Server
RemoteEvent:Connect(funcfunction) → RBXScriptConnection

Connects a function to the RemoteEvent's OnServerEvent event.

Usage
local remoteEvent = RemoteEvent.new()

-- Server
remoteEvent:Connect(function(player, ...)
	print(player, ...)
end)

-- Client
remoteEvent:Connect(function(...)
	print(...)
end)

FireClient

This item only works when running on the server. Server
RemoteEvent:FireClient(
playerPlayer,
...any
) → nil

Fires the RemoteEvent's OnClientEvent event for a specific player.

Usage
local remoteEvent = RemoteEvent.new()
remoteEvent:FireClient(player, "Hello World!")

FireAllClients

This item only works when running on the server. Server
RemoteEvent:FireAllClients(...any) → nil

Fires the RemoteEvent's OnClientEvent event for all players.

Usage
local remoteEvent = RemoteEvent.new()
remoteEvent:FireAllClients("Hello World!")

FireClientsList

This item only works when running on the server. Server
RemoteEvent:FireClientsList(
playerListtable,
...any
) → nil

Fires the RemoteEvent's OnClientEvent event for a list of players.

Usage
local remoteEvent = RemoteEvent.new()
remoteEvent:FireClientsList({ player1, player2 }, "Hello World!")

FireAllClientsExcept

This item only works when running on the server. Server
RemoteEvent:FireAllClientsExcept(
exceptionPlayerOrListPlayer | table,
...any
) → nil

Fires the RemoteEvent's OnClientEvent event for all players except for the specified player(s).

Usage
local remoteEvent = RemoteEvent.new()
remoteEvent:FireAllClientsExcept(player, "Hello World!")
remoteEvent:FireAllClientsExcept({ player1, player2 }, "Hello World!")

AddMiddleware

This item only works when running on the server. Server
RemoteEvent:AddMiddleware(
prioritynumber,
funcfunction
) → nil

Adds a middleware function to the RemoteEvent. This function will be called before the OnServerEvent function, and can be used to modify the arguments passed to the OnServerEvent function.

Usage
local remoteEvent = RemoteEvent.new()
remoteEvent:AddMiddleware(1, function(remote, player, ...)
	-- Code here
	print(player, ...)
end)

FireServer

This item only works when running on the client. Client
RemoteEvent:FireServer(...any) → nil

Fires the RemoteEvent's OnServerEvent event.

Usage
local remoteEvent = RemoteEvent.new()
remoteEvent:FireServer("Hello World!")
Show raw api
{
    "functions": [
        {
            "name": "new",
            "desc": "Creates a new RemoteEvent instance, this is used to replicate events across the server and client.\nThis event is reliable, meaning that it is guaranteed to be received by the client.\nHowever, it is slower than UnreliableRemoteEvent, and should be used for events that are critical to the game's functionality.\n\t",
            "params": [],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "RemoteEvent"
                }
            ],
            "function_type": "static",
            "realm": [
                "Server"
            ],
            "source": {
                "line": 53,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "Connect",
            "desc": "Connects a function to the RemoteEvent's OnServerEvent event.\n\n:::note Usage\n```lua\nlocal remoteEvent = RemoteEvent.new()\n\n-- Server\nremoteEvent:Connect(function(player, ...)\n\tprint(player, ...)\nend)\n\n-- Client\nremoteEvent:Connect(function(...)\n\tprint(...)\nend)\n```\n\t",
            "params": [
                {
                    "name": "func",
                    "desc": "",
                    "lua_type": "function"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "RBXScriptConnection"
                }
            ],
            "function_type": "method",
            "realm": [
                "Client",
                "Server"
            ],
            "source": {
                "line": 94,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "FireClient",
            "desc": "Fires the RemoteEvent's OnClientEvent event for a specific player.\n\n:::note Usage\n```lua\nlocal remoteEvent = RemoteEvent.new()\nremoteEvent:FireClient(player, \"Hello World!\")\n```\n:::\n\t",
            "params": [
                {
                    "name": "player",
                    "desc": "",
                    "lua_type": "Player"
                },
                {
                    "name": "...",
                    "desc": "",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "nil"
                }
            ],
            "function_type": "method",
            "realm": [
                "Server"
            ],
            "source": {
                "line": 115,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "FireAllClients",
            "desc": "Fires the RemoteEvent's OnClientEvent event for all players.\n\n:::note Usage\n```lua\nlocal remoteEvent = RemoteEvent.new()\nremoteEvent:FireAllClients(\"Hello World!\")\n```\n:::\n\t",
            "params": [
                {
                    "name": "...",
                    "desc": "",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "nil"
                }
            ],
            "function_type": "method",
            "realm": [
                "Server"
            ],
            "source": {
                "line": 135,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "FireClientsList",
            "desc": "Fires the RemoteEvent's OnClientEvent event for a list of players.\n\n:::note Usage\n```lua\nlocal remoteEvent = RemoteEvent.new()\nremoteEvent:FireClientsList({ player1, player2 }, \"Hello World!\")\n```\n:::\n\t",
            "params": [
                {
                    "name": "playerList",
                    "desc": "",
                    "lua_type": "table"
                },
                {
                    "name": "...",
                    "desc": "",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "nil"
                }
            ],
            "function_type": "method",
            "realm": [
                "Server"
            ],
            "source": {
                "line": 156,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "FireAllClientsExcept",
            "desc": "Fires the RemoteEvent's OnClientEvent event for all players except for the specified player(s).\n\n:::note Usage\n```lua\nlocal remoteEvent = RemoteEvent.new()\nremoteEvent:FireAllClientsExcept(player, \"Hello World!\")\nremoteEvent:FireAllClientsExcept({ player1, player2 }, \"Hello World!\")\n```\n:::\n\t",
            "params": [
                {
                    "name": "exceptionPlayerOrList",
                    "desc": "",
                    "lua_type": "Player | table"
                },
                {
                    "name": "...",
                    "desc": "",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "nil"
                }
            ],
            "function_type": "method",
            "realm": [
                "Server"
            ],
            "source": {
                "line": 180,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "AddMiddleware",
            "desc": "Adds a middleware function to the RemoteEvent. This function will be called before the OnServerEvent function, and can be used to modify the arguments passed to the OnServerEvent function.\n\n:::note Usage\n```lua\nlocal remoteEvent = RemoteEvent.new()\nremoteEvent:AddMiddleware(1, function(remote, player, ...)\n\t-- Code here\n\tprint(player, ...)\nend)\n```\n:::\n\t",
            "params": [
                {
                    "name": "priority",
                    "desc": "",
                    "lua_type": "number"
                },
                {
                    "name": "func",
                    "desc": "",
                    "lua_type": "function"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "nil"
                }
            ],
            "function_type": "method",
            "realm": [
                "Server"
            ],
            "source": {
                "line": 219,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "new",
            "desc": "Connects to an existing RemoteEvent instance, this is used to replicate events across the server and client.\n\n:::warning\nThis only to be used internally to link to an existing RemoteEvent instance, creating a new RemoteEvent instance on the client is not possible.\n:::\n\t",
            "params": [
                {
                    "name": "inst",
                    "desc": "",
                    "lua_type": "Instance"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "RemoteEvent"
                }
            ],
            "function_type": "static",
            "realm": [
                "Client"
            ],
            "private": true,
            "source": {
                "line": 239,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "Connect",
            "desc": "Connects a function to the RemoteEvent's OnClientEvent event.\n\n:::note Usage\n```lua\nlocal remoteEvent = RemoteEvent.new()\nremoteEvent:Connect(function(...)\n\tprint(...)\nend)\n```\n:::\n\t",
            "params": [
                {
                    "name": "func",
                    "desc": "",
                    "lua_type": "function"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "RBXScriptConnection"
                }
            ],
            "function_type": "method",
            "realm": [
                "Client"
            ],
            "ignore": true,
            "source": {
                "line": 266,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        },
        {
            "name": "FireServer",
            "desc": "Fires the RemoteEvent's OnServerEvent event.\n\n:::note Usage\n```lua\nlocal remoteEvent = RemoteEvent.new()\nremoteEvent:FireServer(\"Hello World!\")\n```\n:::\n\t",
            "params": [
                {
                    "name": "...",
                    "desc": "",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "nil"
                }
            ],
            "function_type": "method",
            "realm": [
                "Client"
            ],
            "source": {
                "line": 286,
                "path": "src/Util/RemoteComm/_RemoteEvent.lua"
            }
        }
    ],
    "properties": [],
    "types": [],
    "name": "RemoteEvent",
    "desc": "Remote event wrapper adding additional functionality and compatibility with Cradle.",
    "source": {
        "line": 34,
        "path": "src/Util/RemoteComm/_RemoteEvent.lua"
    }
}