Executor Functions
Complete reference of 79executor functions tested under the sUNC (senS' Unified Naming Convention) standard. Organized by library with signatures and descriptions.
Closures
11 functionsInspection, modification, and creation of Luau closures — one of the most powerful tools for hooking functions and modifying game logic.
| Function | Description |
|---|---|
hookfunction | Hook a function with another function, returning the original unhooked function. |
hookmetamethod | Hook a specific metamethod on any Luau object with a metatable. |
restorefunction | Restore a hooked function back to the very first original, even after multiple hooks. |
clonefunction | Create a new function with the exact same behaviour as the passed function. |
newcclosure | Wrap any Luau function into a C closure. |
checkcaller | Check if the current function was invoked from the executor's own thread. |
iscclosure | Check whether a given function is a C closure. |
islclosure | Check whether a given function is a Luau closure. |
isexecutorclosure | Check whether a function is a closure of the executor (includes loadstring and getscriptclosure). |
getfunctionhash | Get the SHA384 hash of a function's instructions and constants. |
loadstring | Compile a string of Luau code and return it as a runnable function. |
Debug
10 functionsPowerful tools for inspecting and modifying Luau functions at a bytecode level — constants, upvalues, stack frames, and protos.
| Function | Description |
|---|---|
debug.getconstant | Get the constant at a specific index from a Luau function's bytecode. |
debug.getconstants | Get all constants used within a Luau function's bytecode. |
debug.setconstant | Modify a constant at a specific index in a Luau function's bytecode. |
debug.getupvalue | Get the upvalue at a specific index from a Luau function's closure. |
debug.getupvalues | Get all upvalues captured by a Luau function (external variables from surrounding scope). |
debug.setupvalue | Replace an upvalue at a specific index in a Luau function with a new value. |
debug.getproto | Get a specific function prototype from a Luau function by index. |
debug.getprotos | Get all function prototypes defined within a Luau function. |
debug.getstack | Retrieve values from the stack at a specific call level. |
debug.setstack | Replace a value in a specified stack frame. |
Filesystem
11 functionsAccess to the executor's virtual file system — reading, writing, creating, and deleting files and folders.
| Function | Description |
|---|---|
readfile | Retrieve the contents of a file at the specified path as a string. |
writefile | Write data to a file. Overwrites if it already exists. |
appendfile | Append string content to the end of a file. Creates the file if it doesn't exist. |
delfile | Delete the file at the specified path if it exists. |
loadfile | Compile Luau source code from a file and return the resulting function. |
listfiles | Return all files and folders within the specified directory. |
makefolder | Create a folder at the specified path if one doesn't already exist. |
delfolder | Delete the folder at the specified path if it exists. |
isfile | Check whether a given path exists and refers to a file. |
isfolder | Check whether a given path exists and refers to a folder. |
getcustomasset | Return a content ID (e.g. rbxasset://) for loading audio, meshes, UI images, and other asset types. |
Instances
9 functionsDirect access to and manipulation of Instance objects — listing, referencing, and firing Roblox-native interactions.
| Function | Description |
|---|---|
getinstances | Retrieve every Instance from the registry, including those parented to nil. |
getnilinstances | Return unparented Instance objects that exist in memory but are no longer in the DataModel hierarchy. |
gethui | Return a hidden Instance container for safely storing UI elements (designed to avoid detection). |
cloneref | Return a reference clone of an Instance that behaves identically but is not strictly equal (==) to it. |
compareinstances | Check if two Instances are equal. |
getcallbackvalue | Retrieve the assigned callback property on an Instance, such as OnInvoke. |
fireclickdetector | Trigger a ClickDetector event (defaults to MouseClick). |
fireproximityprompt | Instantly trigger a ProximityPrompt, bypassing HoldDuration and activation distance. |
firetouchinterest | Simulate a physical touch event between two BasePart objects. |
Signals
3 functionsInspecting and manipulating RBXScriptSignal and RBXScriptConnection objects.
| Function | Description |
|---|---|
getconnections | Retrieve all Connection objects currently attached to an RBXScriptSignal. |
firesignal | Invoke all Luau connections connected to a given RBXScriptSignal. |
replicatesignal | Replicate a signal to the server with the provided arguments. |
Scripts
9 functionsInspect and interact with script objects — bytecode analysis, closure retrieval, environment access, and script simulation.
| Function | Description |
|---|---|
getscripts | Return all Script, LocalScript, and ModuleScript instances present. |
getrunningscripts | Return all running scripts in the caller's global state (excluding CoreScripts by default). |
getloadedmodules | Return all ModuleScript instances that have been loaded (require'd). |
getcallingscript | Return the Script/LocalScript/ModuleScript that triggered the current code execution. |
getscriptfromthread | Return the script associated with a given Luau thread. |
getscriptclosure | Create and return a Luau function closure from a script's compiled bytecode. |
getscriptbytecode | Retrieve the bytecode of a Script, LocalScript, or ModuleScript. |
getscripthash | Return a SHA-384 hash of the raw bytecode for a given script. |
getsenv | Return the global environment table of a given Script, LocalScript, or ModuleScript. |
Metatable
5 functionsAdvanced interaction with metatables — direct access to core metamethods and internal table behaviours.
| Function | Description |
|---|---|
getrawmetatable | Return the raw metatable of an object, even if a __metatable field is set. |
setrawmetatable | Forcibly set the metatable of a value, bypassing __metatable protection. |
getnamecallmethod | Return the name of the method that invoked the __namecall metamethod. |
isreadonly | Check whether a table is currently set as readonly. |
setreadonly | Set whether a table is readonly (true) or writable (false). |
Reflection
6 functionsAccess hidden or non-scriptable properties of Instances and internal execution context.
| Function | Description |
|---|---|
gethiddenproperty | Retrieve a hidden or non-scriptable property from an Instance. |
sethiddenproperty | Assign a value to a hidden or non-scriptable property of an Instance. |
isscriptable | Check whether a property of an Instance is scriptable. |
setscriptable | Toggle the scriptability of a hidden or non-scriptable property on an Instance. |
getthreadidentity | Retrieve the thread's identity of the running Luau thread. |
setthreadidentity | Set the current Luau thread identity and capabilities. |
Encoding
4 functionsBinary transformation operations — Base64 and LZ4 encoding, decoding, compression, and decompression.
| Function | Description |
|---|---|
base64encode | Encode a string with Base64 encoding. |
base64decode | Decode a Base64-encoded string back into its original form. |
lz4compress | Compress a string with the LZ4 compression algorithm. |
lz4decompress | Decompress a string that was encoded using LZ4 back to regular data. |
Environment
5 functionsAccess and inspection of the executor and Roblox environments — global tables, registry, and garbage collector.
| Function | Description |
|---|---|
getgenv | Return the executor's global environment table, shared across all executor-made threads. |
getrenv | Return the Roblox global environment used by the entire game. |
getreg | Return the Luau registry table used internally for threads, functions, and userdata. |
getgc | Return non-dead garbage-collectable values — functions, userdatas, and optionally tables. |
filtergc | Retrieve specific garbage-collected values using fine-tuned filters. |
Drawing
4 functionsClient-only 2D rendering primitives — creating and manipulating graphical objects on the screen.
| Function | Description |
|---|---|
isrenderobj | Check whether a given value is a valid Drawing object. |
getrenderproperty | Retrieve the value of a property from a Drawing object. |
setrenderproperty | Assign a value to a property of a Drawing object. |
cleardrawcache | Remove all active drawing objects created with Drawing.new. |
Miscellaneous
2 functionsUtility functions that don't belong to a specific category — executor identification and HTTP requests.
| Function | Description |
|---|---|
identifyexecutor | Return the name and version of the currently running executor. |
request | Send an HTTP request with a configuration table. Yields until complete and returns a structured response. |
Function data sourced from the sUNC Documentation Metadata API. sUNC evolves over time — some functions may be deprecated or added. Always refer to the official docs for the latest information.