#memory.is_enabled() → boolean
Returns whether the calling thread holds the Memory ScriptPermission. Equivalent to rbxcli.is_permission_granted("Memory").
isenabledTyped read, write, scan and watch operations against the target process address space. Disabled at runtime via the Configuration tab; every call fails when disabled.
Returns whether the calling thread holds the Memory ScriptPermission. Equivalent to rbxcli.is_permission_granted("Memory").
isenabledWrites the contents of a buffer to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| data | buffer | Buffer whose contents to write. |
Attempts to write a string to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| string | string | The string to write to the C++ string. |
Writes an unsigned 8-bit integer to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | number | Value to write. |
Writes a boolean to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | boolean | Value to write. |
Writes an unsigned 16-bit integer to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | number | Value to write. |
Writes an unsigned 32-bit integer to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | number | Value to write. |
Writes a signed 8-bit integer to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | number | Value to write. |
Writes a signed 16-bit integer to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | number | Value to write. |
Writes a signed 32-bit integer to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | number | Value to write. |
Writes a 32-bit float to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | number | Value to write. |
Writes a 64-bit double to address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to write to. |
| value | number | Value to write. |
Reads size bytes from address into a buffer. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
| size | number | Number of bytes to read. |
Reads an unsigned 8-bit integer from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads a boolean from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads an unsigned 16-bit integer from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads an unsigned 32-bit integer from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads a signed 8-bit integer from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads a signed 16-bit integer from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads a signed 32-bit integer from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads a 32-bit float from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads a 64-bit double from address. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Address to read from. |
Reads a pointer-sized unsigned integer from address. Requires the Memory Library to be enabled in the Configuration Tab.
readpointer| address | number | Address to read from. |
Reads a string from address. Pass true for isCxx to read a C++ std::string, false for a null-terminated C string. Requires the Memory Library to be enabled in the Configuration Tab.
readstring| address | number | Address to read from. |
| isCxx | boolean | Whether to read a C++ std::string (true) or a null-terminated C string (false). |
| readCount | number? | Maximum characters to read (C string only). |
| readExactly | boolean | Whether to read exactly |
Scans Roblox memory for an AOB signature, yielding until it completes. Optionally restricts the scan to the range [start, end]. Requires the Memory Library to be enabled in the Configuration Tab.
scansignature| signature | string | AOB signature string to search for. |
| start | number? | Start address of the scan range (optional). |
| end | number? | End address of the scan range (optional). |
Returns all memory addresses whose first pointer matches vtableAddress. Requires the Memory Library to be enabled in the Configuration Tab.
scaninstances| vtableAddress | number | VTable address to scan for. |
Returns whether address points to a valid, readable page in the Roblox process. Requires the Memory Library to be enabled in the Configuration Tab.
isvalidaddress| address | number | Address to validate. |
Looks up a vtable by its mangled name and returns its address, or nil if not found. Requires the Memory Library to be enabled in the Configuration Tab.
scanvtable| name | string | Mangled vtable name to look up. |
Returns the base address of the Roblox executable module. Requires the Memory Library to be enabled in the Configuration Tab.
getbaseaddressRegisters a deferred watch on width bytes at address. The returned Event fires (old: buffer, new: buffer) whenever the polled snapshot diffs against the previous one. Polling cadence is refresh_rate_in_ms (min 1ms, max width 4096). Deferred firing schedules the handler on the Luau VM thread, so it does not block the polling worker. Watches are dropped on engine reset.
| address | number | Remote address to watch. |
| width | number | Number of bytes to read per tick. |
| refresh_rate_in_ms | number | Poll interval in milliseconds. |
width must be in [1, 4096].refresh_rate_in_ms is below the minimum poll interval.Same as memory.watch but the handler runs inline on the polling thread while holding the VM lock. Use only for performance-critical paths where the deferred dispatch latency is too high; the handler will block further polling until it returns.
immediatewatch| address | number | Remote address to watch. |
| width | number | Number of bytes to read per tick. |
| refresh_rate_in_ms | number | Poll interval in milliseconds. |
width must be in [1, 4096].refresh_rate_in_ms is below the minimum poll interval.Creates a stateful write-loop bound to address with the supplied buffer payload. The loop is created stopped; call :start() to begin writing. mode selects the thread model: "shared" (default) reuses a single background worker shared by every Shared loop, while "exclusive" dedicates a thread to this loop. The buffer can be swapped at any time via :set_buffer(buf) without recreating the loop. Requires the Memory Library to be enabled in the Configuration Tab.
| address | number | Remote address to write to. |
| buffer | buffer | Payload bytes to write every tick. |
| mode | string? |
|