Configuration
The world.settings table: every modifier, every visual toggle, and how the live proxy behaves.
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.
-- 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 = trueThe 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.
The full field list. Types are Luau types; table fields are the nested target profiles documented below.
| Key | Type | Description |
|---|---|---|
| useSpeed | boolean | Enable speed multiplier. |
| walkSpeed | number | Value of walk speed. |
| useJump | boolean | Enable jump power multiplier. |
| jumpPower | number | Value of jump power. |
| noclip | boolean | Noclip visual/physics mod toggle. |
| useGravity | boolean | Enable gravity multiplier. |
| gravity | number | Value of gravity. |
| useFov | boolean | Enable custom field of view. |
| fovValue | number | Value of FOV. |
| antiAfk | boolean | Prevent AFK disconnection. |
| useDesync | boolean | Desync visual clone simulation. |
| fullbright | boolean | Brighten environment visuals. |
| clearAtmosphere | boolean | Remove haze/fog/atmosphere. |
| useTimeOfDay | boolean | Override time of day toggle. |
| timeOfDay | number | Custom time value, 0-24. |
| noGrass | boolean | Disable grass rendering. |
| clearWater | boolean | Make water transparent. |
| instantPrompt | boolean | Instant proximity prompt interaction. |
| infinitePrompt | boolean | Infinite prompt interaction range. |
| infiniteClickDrag | boolean | Infinite click detector range. |
| esp_enabled | boolean | ESP master visual toggle. |
| esp_showPlayers | boolean | ESP player tags/boxes toggle. |
| esp_showParticles | boolean | ESP chams particles toggle. |
| esp_streamProof | boolean | Make overlay capture-safe. |
| esp_onlyRoblox | boolean | Only render inside the Roblox window. |
| unlockFps | boolean | Unlock FPS target cap. |
| fpsTarget | number | Target framerate value. |
| enemy | table | Nested target visuals for enemies. |
| self | table | Nested target visuals for the local player. |
| npc | table | Nested target visuals for NPCs. |
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.
| Key | Type | Description |
|---|---|---|
| enabled | boolean | Enable ESP for the target profile. |
| showBox | boolean | Draw boundary box. |
| showNames | boolean | Draw name text. |
| showChams | boolean | Draw custom chams silhouette. |
| showDistance | boolean | Draw distance to target. |
| maxDistance | number | Maximum distance range. |
| skeleton | boolean | Draw skeleton limbs. |
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 = trueSettings are not saved for you across sessions from Luau. Writing them to the workspace and reading them back on start is a few lines.
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()