World External · Luau VM

Configuration

The world.settings table: every modifier, every visual toggle, and how the live proxy behaves.

A live proxy

world.settings is not a snapshot. It is a proxy onto the running application: assigning a field updates the GUI and the active modification immediately, and reading one gives you the current value, including changes made in the UI since you last looked.

Reading and writing settings
-- Read the current value, then change it.
print(world.settings.walkSpeed)

world.settings.useSpeed = true
world.settings.walkSpeed = 64

-- Toggle a visual and see it apply at once.
world.settings.fullbright = true

The use* flags gate the value

Setting walkSpeed on its own does nothing while useSpeed is false. The pairs — useSpeed/walkSpeed, useJump/jumpPower, useGravity/gravity, useFov/fovValue, useTimeOfDay/timeOfDay — always travel together.

Available settings

The full field list. Types are Luau types; table fields are the nested target profiles documented below.

KeyTypeDescription
useSpeedbooleanEnable speed multiplier.
walkSpeednumberValue of walk speed.
useJumpbooleanEnable jump power multiplier.
jumpPowernumberValue of jump power.
noclipbooleanNoclip visual/physics mod toggle.
useGravitybooleanEnable gravity multiplier.
gravitynumberValue of gravity.
useFovbooleanEnable custom field of view.
fovValuenumberValue of FOV.
antiAfkbooleanPrevent AFK disconnection.
useDesyncbooleanDesync visual clone simulation.
fullbrightbooleanBrighten environment visuals.
clearAtmospherebooleanRemove haze/fog/atmosphere.
useTimeOfDaybooleanOverride time of day toggle.
timeOfDaynumberCustom time value, 0-24.
noGrassbooleanDisable grass rendering.
clearWaterbooleanMake water transparent.
instantPromptbooleanInstant proximity prompt interaction.
infinitePromptbooleanInfinite prompt interaction range.
infiniteClickDragbooleanInfinite click detector range.
esp_enabledbooleanESP master visual toggle.
esp_showPlayersbooleanESP player tags/boxes toggle.
esp_showParticlesbooleanESP chams particles toggle.
esp_streamProofbooleanMake overlay capture-safe.
esp_onlyRobloxbooleanOnly render inside the Roblox window.
unlockFpsbooleanUnlock FPS target cap.
fpsTargetnumberTarget framerate value.
enemytableNested target visuals for enemies.
selftableNested target visuals for the local player.
npctableNested target visuals for NPCs.

Target visual fields

enemy, self and npc are three independent profiles with the same shape, so you can draw boxes on other players, a skeleton on yourself and nothing at all on NPCs.

KeyTypeDescription
enabledbooleanEnable ESP for the target profile.
showBoxbooleanDraw boundary box.
showNamesbooleanDraw name text.
showChamsbooleanDraw custom chams silhouette.
showDistancebooleanDraw distance to target.
maxDistancenumberMaximum distance range.
skeletonbooleanDraw skeleton limbs.
Configuring one profile
for _, profile in ipairs({ "enemy", "self", "npc" }) do
    world.settings[profile].enabled = false
end

world.settings.enemy.enabled = true
world.settings.enemy.showBox = true
world.settings.enemy.showDistance = true
world.settings.enemy.maxDistance = 750
world.settings.enemy.skeleton = true

Persisting a config

Settings are not saved for you across sessions from Luau. Writing them to the workspace and reading them back on start is a few lines.

config.lua
local KEYS = { "useSpeed", "walkSpeed", "fullbright", "esp_enabled" }

local function save()
    local out = {}
    for _, key in ipairs(KEYS) do
        out[#out + 1] = key .. "=" .. tostring(world.settings[key])
    end
    writefile("config.txt", table.concat(out, "\n"))
end

local function load()
    if not isfile("config.txt") then return end
    for line in readfile("config.txt"):gmatch("[^\n]+") do
        local key, value = line:match("^(%w+)=(.+)$")
        if key then
            world.settings[key] = value == "true" and true
                or value == "false" and false
                or tonumber(value) or value
        end
    end
end

load()