foki hub cracked OPENSOURCE
Key RequiredUniversal

foki hub cracked OPENSOURCE

Universal Scriptsk1dsk1d 1.2K views 315 executesUpdated Feb 17, 2026
0.0/ 5(1 votes)
010% Positive
Lua Script•1160 lines (33874 chars)
local rs = game:GetService("RunService")
local plrs = game:GetService("Players")
local uis = game:GetService("UserInputService")
local hs = game:GetService("HttpService")
local cas = game:GetService("ContextActionService")
local lit = game:GetService("Lighting")
local cg = game:GetService("CoreGui")

local lp = plrs.LocalPlayer
local cam = workspace.CurrentCamera

do
    pcall(function()
        if not getrawmetatable or not setreadonly or not newcclosure or not checkcaller then return end
        local m = getrawmetatable(game)
        local orig = m.__index
        setreadonly(m, false)
        m.__index = newcclosure(function(s, k)
            if not checkcaller() then return orig(s, k) end
            return orig(s, k)
        end)
        setreadonly(m, true)
    end)
end

local function getchar()
    return lp.Character
end

local function getroot()
    local c = getchar()
    return c and c:FindFirstChild("HumanoidRootPart")
end

local function gethum()
    local c = getchar()
    return c and c:FindFirstChildOfClass("Humanoid")
end

local function isalive()
    local h = gethum()
    return h and h.Health > 0
end

local function getwpos()
    local r = getroot()
    return r and r.Position or Vector3.new()
end

local function screenCenter()
    return Vector2.new(cam.ViewportSize.X / 2, cam.ViewportSize.Y / 2)
end

local function worldToScreen(pos)
    local s, vis = cam:WorldToViewportPoint(pos)
    return Vector2.new(s.X, s.Y), vis, s.Z
end

local function distanceTo(pos)
    return (getwpos() - pos).Magnitude
end

local function isTeammate(pl)
    pcall(function() end)
    if not lp.Team then return false end
    return pl.Team == lp.Team
end

local function hasLOS(origin, target)
    local dir = (target - origin).Unit * 999
    local rp = RaycastParams.new()
    rp.FilterDescendantsInstances = {getchar()}
    rp.FilterType = Enum.RaycastFilterType.Exclude
    local res = workspace:Raycast(origin, dir, rp)
    if not res then return true end
    local hit = res.Instance
    local inChar = false
    for _, pl in ipairs(plrs:GetPlayers()) do
        if pl ~= lp and pl.Character and hit:IsDescendantOf(pl.Character) then
            inChar = true
            break
        end
    end
    return inChar
end

local cfg = {
    aim_on = true,
    aim_fov = 120,
    aim_smooth = 10,
    aim_mode = 1,
    aim_modes = {"Mouse", "Camera"},
    aim_bone = "Head",
    wallck = true,
    npc_aim = false,
    aim_key = Enum.KeyCode.B,

    strafe_on = false,
    strafe_dist = 10,
    strafe_spd = 10,
    strafe_key = Enum.KeyCode.L,
    strafe_name = "",

    esp_on = true,
    esp_boxes = true,
    esp_tracers = true,
    esp_highlight = false,
    esp_names = true,
    esp_dist = 1000,
    teamck = false,
    npc_esp = false,
    box_col = Color3.fromRGB(255, 255, 255),
    tracer_col = Color3.fromRGB(255, 255, 255),

    alist = true,
    colormode = 1,
    color_list = {"White", "Black", "Rainbow"},

    fly_on = false,
    fly_spd = 50,
    fly_inertia = true,
    fly_inertia_pwr = 0.1,
    speed_on = false,
    wspeed = 16,
    noclip_on = false,
    freecam_on = false,
    freecam_spd = 1,
    airwalk_on = false,
    air_lvl = 0,
    wallhop_on = false,

    fps_on = false,
    stretch_on = false,
    stretch_val = 70,
    fstretch_on = false,
    fstretch_val = 65,
    trail_on = false,
    trail_col = Color3.fromRGB(255, 0, 0),
    trail_life = 1,
    chinahat_on = false,
    chinahat_col = Color3.fromRGB(255, 255, 255),
    neko_on = false,
}

local SAVE_KEY = "fhub_v2.json"

local function doSave()
    pcall(function()
        local t = {}
        for k,v in pairs(cfg) do
            local vt = type(v)
            if vt == "boolean" or vt == "number" or vt == "string" then
                t[k] = v
            elseif vt == "EnumItem" then
                t[k] = tostring(v)
            end
        end
        writefile(SAVE_KEY, hs:JSONEncode(t))
    end)
end

local function doLoad()
    if not isfile then return end
    if not isfile(SAVE_KEY) then return end
    local ok, raw = pcall(readfile, SAVE_KEY)
    if not ok then return end
    local ok2, data = pcall(hs.JSONDecode, hs, raw)
    if not ok2 or type(data) ~= "table" then return end
    for k, v in pairs(data) do
        if cfg[k] ~= nil then
            if type(cfg[k]) == "boolean" then
                cfg[k] = v == true
            elseif type(cfg[k]) == "number" then
                cfg[k] = tonumber(v) or cfg[k]
            elseif type(cfg[k]) == "string" then
                cfg[k] = tostring(v)
            elseif type(cfg[k]) == "EnumItem" and type(v) == "string" then
                pcall(function()
                    cfg[k] = Enum.KeyCode[v:match("%.(%w+)$") or v]
                end)
            end
        end
    end
end

doLoad()

local themes = {
    {
        bg   = Color3.fromRGB(12, 12, 12),
        side = Color3.fromRGB(18, 18, 18),
        elem = Color3.fromRGB(22, 22, 22),
        toff = Color3.fromRGB(40, 40, 40),
        ton  = Color3.fromRGB(255, 255, 255),
        txt  = Color3.fromRGB(235, 235, 235),
        name = "Dark",
    },
    {
        bg   = Color3.fromRGB(242, 242, 242),
        side = Color3.fromRGB(220, 220, 220),
        elem = Color3.fromRGB(205, 205, 205),
        toff = Color3.fromRGB(40, 40, 40),
        ton  = Color3.fromRGB(255, 255, 255),
        txt  = Color3.fromRGB(35, 35, 35),
        name = "Light",
    },
    {
        bg   = Color3.fromRGB(10, 10, 12),
        side = Color3.fromRGB(4, 4, 6),
        elem = Color3.fromRGB(30, 30, 35),
        toff = Color3.fromRGB(40, 40, 40),
        ton  = Color3.fromRGB(255, 255, 255),
        txt  = Color3.fromRGB(255, 255, 255),
        name = "Glass",
    },
}
local tidx = 1
local thm = themes[tidx]

local txt_pool = {}
local elem_pool = {}

local function reg_t(o) txt_pool[#txt_pool+1] = o end
local function reg_e(o) elem_pool[#elem_pool+1] = o end

local function push_theme(t)
    thm = t
    for _, o in ipairs(txt_pool)  do if o.Parent then o.TextColor3 = t.txt  end end
    for _, o in ipairs(elem_pool) do if o.Parent then o.BackgroundColor3 = t.elem end end
end

local tw_info = TweenInfo.new(0.18, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)

local function tw_pos(f, p)
    f:TweenPosition(p, Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.18, true)
end

local function mkround(p, r)
    local c = Instance.new("UICorner")
    c.CornerRadius = UDim.new(0, r or 7)
    c.Parent = p
    return c
end

local function mkpad(p, px, py)
    local pad = Instance.new("UIPadding")
    pad.PaddingLeft   = UDim.new(0, px or 4)
    pad.PaddingRight  = UDim.new(0, px or 4)
    pad.PaddingTop    = UDim.new(0, py or 2)
    pad.PaddingBottom = UDim.new(0, py or 2)
    pad.Parent = p
end

local function mkToggle(par, init, on_fn, off_fn)
    local wrap = Instance.new("TextButton")
    wrap.Size = UDim2.new(0, 34, 0, 18)
    wrap.Position = UDim2.new(1, -42, 0.5, -9)
    wrap.Text = ""
    wrap.AutoButtonColor = false
    mkround(wrap, 9)
    wrap.Parent = par

    local knob = Instance.new("Frame")
    knob.Size = UDim2.new(0, 13, 0, 13)
    mkround(knob, 7)
    knob.Parent = wrap

    local ON_P  = UDim2.new(1, -15, 0.5, -6)
    local OFF_P = UDim2.new(0, 2, 0.5, -6)

    local st = init

    local function redraw()
        if st then
            wrap.BackgroundColor3 = thm.ton
            knob.BackgroundColor3 = Color3.fromRGB(28, 28, 28)
            tw_pos(knob, ON_P)
        else
            wrap.BackgroundColor3 = thm.toff
            knob.BackgroundColor3 = Color3.fromRGB(190, 190, 190)
            tw_pos(knob, OFF_P)
        end
    end
    redraw()

    wrap.MouseButton1Click:Connect(function()
        st = not st
        redraw()
        if st then if on_fn then on_fn() end
        else if off_fn then off_fn() end end
        doSave()
    end)
    return wrap, knob
end

local function mkRow(par, lbl_text, key, on_fn, off_fn)
    local row = Instance.new("Frame")
    row.Size = UDim2.new(1, -4, 0, 34)
    row.BackgroundColor3 = Color3.fromRGB(17, 17, 17)
    mkround(row, 6)
    reg_e(row)
    row.Parent = par

    local lbl = Instance.new("TextLabel")
    lbl.Text = "  " .. lbl_text
    lbl.Size = UDim2.new(0.72, 0, 1, 0)
    lbl.TextColor3 = Color3.fromRGB(205, 205, 205)
    lbl.BackgroundTransparency = 1
    lbl.TextXAlignment = Enum.TextXAlignment.Left
    lbl.Font = Enum.Font.GothamMedium
    lbl.TextSize = 12
    reg_t(lbl)
    lbl.Parent = row

    mkToggle(row, cfg[key],
        function() cfg[key] = true;  if on_fn  then on_fn()  end end,
        function() cfg[key] = false; if off_fn then off_fn() end end
    )
    return row
end

local function mkSlide(par, lbl_text, key, lo, hi)
    local v = tonumber(cfg[key]) or lo

    local wrap = Instance.new("Frame")
    wrap.Size = UDim2.new(1, -4, 0, 46)
    wrap.BackgroundTransparency = 1
    wrap.Parent = par

    local lbl = Instance.new("TextLabel")
    lbl.Text = string.format("  %s: %s", lbl_text, tostring(v))
    lbl.Size = UDim2.new(1, 0, 0, 17)
    lbl.TextColor3 = Color3.fromRGB(145, 145, 145)
    lbl.BackgroundTransparency = 1
    lbl.Font = Enum.Font.Gotham
    lbl.TextSize = 11
    lbl.TextXAlignment = Enum.TextXAlignment.Left
    reg_t(lbl)
    lbl.Parent = wrap

    local track = Instance.new("Frame")
    track.Size = UDim2.new(1, -12, 0, 4)
    track.Position = UDim2.new(0, 6, 0, 32)
    track.BackgroundColor3 = Color3.fromRGB(32, 32, 38)
    mkround(track, 2)
    track.Parent = wrap

    local fill = Instance.new("Frame")
    fill.Size = UDim2.new(math.clamp((v - lo) / (hi - lo), 0, 1), 0, 1, 0)
    fill.BackgroundColor3 = Color3.fromRGB(220, 220, 220)
    mkround(fill, 2)
    fill.Parent = track

    local hitbox = Instance.new("TextButton")
    hitbox.Size = UDim2.new(1, 0, 4, 0)
    hitbox.Position = UDim2.new(0, 0, -1.5, 0)
    hitbox.BackgroundTransparency = 1
    hitbox.Text = ""
    hitbox.Parent = track

    local dragging = false

    local function setVal(inp)
        local raw = (inp.Position.X - track.AbsolutePosition.X) / math.max(track.AbsoluteSize.X, 1)
        local ratio = math.clamp(raw, 0, 1)
        local nv = math.floor(lo + ratio * (hi - lo))
        cfg[key] = nv
        fill.Size = UDim2.new(ratio, 0, 1, 0)
        lbl.Text = string.format("  %s: %s", lbl_text, tostring(nv))
        doSave()
    end

    hitbox.InputBegan:Connect(function(i)
        if i.UserInputType == Enum.UserInputType.MouseButton1 then
            dragging = true
            setVal(i)
        end
    end)
    hitbox.InputEnded:Connect(function(i)
        if i.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end
    end)
    uis.InputChanged:Connect(function(i)
        if dragging and i.UserInputType == Enum.UserInputType.MouseMovement then setVal(i) end
    end)

    return wrap
end

local function mkCycle(par, prefix, opts, key)
    local idx = tonumber(cfg[key]) or 1

    local btn = Instance.new("TextButton")
    btn.Size = UDim2.new(1, -4, 0, 30)
    btn.Text = prefix .. (opts[idx] or "?")
    btn.BackgroundColor3 = Color3.fromRGB(22, 22, 22)
    btn.TextColor3 = Color3.fromRGB(220, 220, 220)
    btn.Font = Enum.Font.GothamMedium
    btn.TextSize = 11
    btn.AutoButtonColor = false
    mkround(btn, 6)
    reg_t(btn)
    reg_e(btn)
    btn.Parent = par

    btn.MouseButton1Click:Connect(function()
        idx = idx % #opts + 1
        cfg[key] = idx
        btn.Text = prefix .. opts[idx]
        doSave()
    end)
    return btn
end

local function mkBind(par, prefix, key)
    local kc = cfg[key]

    local btn = Instance.new("TextButton")
    btn.Size = UDim2.new(1, -4, 0, 30)
    btn.Text = prefix .. (type(kc) == "EnumItem" and kc.Name or tostring(kc))
    btn.BackgroundColor3 = Color3.fromRGB(22, 22, 22)
    btn.TextColor3 = Color3.fromRGB(220, 220, 220)
    btn.Font = Enum.Font.GothamMedium
    btn.TextSize = 11
    btn.AutoButtonColor = false
    mkround(btn, 6)
    reg_t(btn)
    reg_e(btn)
    btn.Parent = par

    local wait_key = false
    btn.MouseButton1Click:Connect(function()
        if wait_key then return end
        wait_key = true
        btn.Text = "[ press key ]"
    end)
    uis.InputBegan:Connect(function(i)
        if not wait_key then return end
        if i.UserInputType ~= Enum.UserInputType.Keyboard then return end
        wait_key = false
        cfg[key] = i.KeyCode
        btn.Text = prefix .. i.KeyCode.Name
        doSave()
    end)
    return btn
end

local scr = Instance.new("ScreenGui")
scr.Name = "fh_" .. tostring(math.random(10000, 99999))
scr.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
scr.ResetOnSpawn = false
scr.Parent = cg

local earL = Instance.new("ImageLabel")
earL.Name = "el"
earL.Size = UDim2.new(0, 118, 0, 118)
earL.AnchorPoint = Vector2.new(0.5, 0.5)
earL.BackgroundTransparency = 1
earL.Image = "rbxassetid://113169948724698"
earL.ZIndex = 99
earL.Visible = false
earL.Parent = scr

local earR = Instance.new("ImageLabel")
earR.Name = "er"
earR.Size = UDim2.new(0, 118, 0, 118)
earR.AnchorPoint = Vector2.new(0.5, 0.5)
earR.BackgroundTransparency = 1
earR.Image = "rbxassetid://94760042824701"
earR.ZIndex = 99
earR.Visible = false
earR.Parent = scr

local tail = Instance.new("ImageLabel")
tail.Name = "tl"
tail.Size = UDim2.new(0, 128, 0, 165)
tail.AnchorPoint = Vector2.new(0.5, 0.5)
tail.BackgroundTransparency = 1
tail.Image = "rbxassetid://114951759498089"
tail.ZIndex = 99
tail.Visible = false
tail.Parent = scr

local win = Instance.new("Frame")
win.Size = UDim2.new(0, 448, 0, 378)
win.Position = UDim2.new(0.5, -224, 0.5, -189)
win.BackgroundColor3 = Color3.fromRGB(9, 9, 9)
win.BorderSizePixel = 0
mkround(win, 8)
win.Parent = scr

local wstroke = Instance.new("UIStroke")
wstroke.Color = Color3.fromRGB(70, 70, 75)
wstroke.Thickness = 1.5
wstroke.Parent = win

local sidebar = Instance.new("Frame")
sidebar.Size = UDim2.new(0, 108, 1, 0)
sidebar.BackgroundColor3 = Color3.fromRGB(14, 14, 14)
sidebar.BorderSizePixel = 0
mkround(sidebar, 8)
sidebar.Parent = win

local title = Instance.new("TextLabel")
title.Text = "FOKI HUB"
title.Size = UDim2.new(0, 108, 0, 44)
title.Position = UDim2.new(0, 0, 0, 0)
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.Font = Enum.Font.GothamBold
title.TextSize = 15
title.BackgroundTransparency = 1
reg_t(title)
title.Parent = win

local topbar = Instance.new("Frame")
topbar.Size = UDim2.new(0, 64, 0, 30)
topbar.Position = UDim2.new(1, -70, 0, 8)
topbar.BackgroundTransparency = 1
topbar.Parent = win

local function mkCtrl(txt, x)
    local b = Instance.new("TextButton")
    b.Text = txt
    b.Size = UDim2.new(0, 26, 0, 22)
    b.Position = UDim2.new(0, x, 0, 3)
    b.Font = Enum.Font.GothamBold
    b.TextSize = 15
    b.AutoButtonColor = false
    mkround(b, 5)
    reg_e(b)
    reg_t(b)
    b.Parent = topbar
    return b
end

local minBtn = mkCtrl("-", 0)
local xBtn   = mkCtrl("x", 34)

local isMin = false
minBtn.MouseButton1Click:Connect(function()
    isMin = not isMin
    if isMin then
        win:TweenSize(UDim2.new(0, 448, 0, 44), Enum.EasingDirection.Out, Enum.EasingStyle.Quart, 0.25, true)
        sidebar.Visible = false
    else
        win:TweenSize(UDim2.new(0, 448, 0, 378), Enum.EasingDirection.Out, Enum.EasingStyle.Quart, 0.25, true)
        sidebar.Visible = true
    end
end)

xBtn.MouseButton1Click:Connect(function()
    win.Visible = false
end)

do
    local dragging_win = false
    local drag_offset = Vector2.new()

    win.InputBegan:Connect(function(i)
        if i.UserInputType == Enum.UserInputType.MouseButton1 then
            local mp = uis:GetMouseLocation()
            if mp.Y - win.AbsolutePosition.Y < 46 then
                dragging_win = true
                drag_offset = mp - Vector2.new(win.AbsolutePosition.X, win.AbsolutePosition.Y)
            end
        end
    end)
    win.InputEnded:Connect(function(i)
        if i.UserInputType == Enum.UserInputType.MouseButton1 then dragging_win = false end
    end)
    uis.InputChanged:Connect(function(i)
        if dragging_win and i.UserInputType == Enum.UserInputType.MouseMovement then
            local mp = uis:GetMouseLocation()
            local np = mp - drag_offset
            win.Position = UDim2.new(0, np.X, 0, np.Y)
        end
    end)
end

local tabbox = Instance.new("Frame")
tabbox.Size = UDim2.new(1, 0, 1, -54)
tabbox.Position = UDim2.new(0, 0, 0, 48)
tabbox.BackgroundTransparency = 1
tabbox.Parent = sidebar

local tablist = Instance.new("UIListLayout")
tablist.HorizontalAlignment = Enum.HorizontalAlignment.Center
tablist.Padding = UDim.new(0, 4)
tablist.SortOrder = Enum.SortOrder.LayoutOrder
tablist.Parent = tabbox

local pghold = Instance.new("Frame")
pghold.Size = UDim2.new(1, -132, 1, -58)
pghold.Position = UDim2.new(0, 122, 0, 50)
pghold.BackgroundTransparency = 1
pghold.Parent = win

local function mkPage()
    local p = Instance.new("ScrollingFrame")
    p.Size = UDim2.new(1, 0, 1, 0)
    p.BackgroundTransparency = 1
    p.Visible = false
    p.ScrollBarThickness = 0
    p.AutomaticCanvasSize = Enum.AutomaticSize.Y
    p.Parent = pghold
    local ll = Instance.new("UIListLayout")
    ll.Padding = UDim.new(0, 7)
    ll.SortOrder = Enum.SortOrder.LayoutOrder
    ll.Parent = p
    return p
end

local pg_combat   = mkPage()
local pg_visuals  = mkPage()
local pg_move     = mkPage()
local pg_misc     = mkPage()

local all_pages = {pg_combat, pg_visuals, pg_move, pg_misc}
pg_combat.Visible = true

local function swapPage(tgt)
    for _, p in ipairs(all_pages) do
        p.Visible = (p == tgt)
    end
end

local tab_names = {"Combat", "Visuals", "Move", "Misc"}
local tab_pages = {pg_combat, pg_visuals, pg_move, pg_misc}

for i = 1, #tab_names do
    local tb = Instance.new("TextButton")
    tb.LayoutOrder = i
    tb.Size = UDim2.new(0.88, 0, 0, 30)
    tb.Text = tab_names[i]
    tb.Font = Enum.Font.GothamMedium
    tb.TextSize = 11
    tb.AutoButtonColor = false
    mkround(tb, 5)
    reg_e(tb)
    reg_t(tb)
    tb.Parent = tabbox
    local page = tab_pages[i]
    tb.MouseButton1Click:Connect(function()
        swapPage(page)
    end)
end

mkRow(pg_combat, "Aimbot",         "aim_on")
mkSlide(pg_combat, "FOV",          "aim_fov",      1, 576)
mkSlide(pg_combat, "Smoothness",   "aim_smooth",   1, 99)
mkCycle(pg_combat, "Mode: ",       {"Mouse","Camera"}, "aim_mode")
mkCycle(pg_combat, "Bone: ",       {"Head","Torso","HumanoidRootPart"}, "aim_bone")
mkRow(pg_combat, "Wall Check",     "wallck")
mkRow(pg_combat, "NPC Aim",        "npc_aim")
mkBind(pg_combat, "Aim key: ",     "aim_key")
mkRow(pg_combat, "Target Strafe",  "strafe_on")
mkSlide(pg_combat, "Strafe Dist",  "strafe_dist",  1, 50)
mkSlide(pg_combat, "Strafe Speed", "strafe_spd",   1, 50)
mkBind(pg_combat, "Strafe key: ",  "strafe_key")

do
    local box = Instance.new("TextBox")
    box.Size = UDim2.new(1, -4, 0, 30)
    box.PlaceholderText = "focus target name..."
    box.Text = cfg.strafe_name or ""
    box.Font = Enum.Font.Gotham
    box.TextSize = 11
    box.BackgroundColor3 = Color3.fromRGB(17, 17, 17)
    box.TextColor3 = Color3.fromRGB(205, 205, 205)
    box.PlaceholderColor3 = Color3.fromRGB(80, 80, 80)
    box.ClearTextOnFocus = false
    mkround(box, 6)
    reg_e(box)
    box.Parent = pg_combat
    box.FocusLost:Connect(function()
        cfg.strafe_name = box.Text
        doSave()
    end)
end

mkRow(pg_visuals, "ESP",            "esp_on")
mkRow(pg_visuals, "Boxes",          "esp_boxes")
mkRow(pg_visuals, "Tracers",        "esp_tracers")
mkRow(pg_visuals, "Names",          "esp_names")
mkRow(pg_visuals, "Highlight",      "esp_highlight")
mkSlide(pg_visuals, "ESP Dist",     "esp_dist",    100, 5000)
mkRow(pg_visuals, "Team Check",     "teamck")
mkRow(pg_visuals, "NPC ESP",        "npc_esp")

do
    local btn = Instance.new("TextButton")
    btn.Size = UDim2.new(1, -4, 0, 30)
    btn.Text = "Theme: " .. themes[tidx].name
    btn.BackgroundColor3 = Color3.fromRGB(22, 22, 22)
    btn.TextColor3 = Color3.fromRGB(220, 220, 220)
    btn.Font = Enum.Font.GothamMedium
    btn.TextSize = 11
    btn.AutoButtonColor = false
    mkround(btn, 6)
    reg_t(btn)
    reg_e(btn)
    btn.Parent = pg_visuals
    btn.MouseButton1Click:Connect(function()
        tidx = tidx % #themes + 1
        push_theme(themes[tidx])
        btn.Text = "Theme: " .. themes[tidx].name
    end)
end

mkCycle(pg_visuals, "Color: ",      cfg.color_list, "colormode")
mkRow(pg_visuals, "ArrayList",      "alist")
mkRow(pg_visuals, "Player Trail",   "trail_on")
mkRow(pg_visuals, "China Hat",      "chinahat_on")
mkRow(pg_visuals, "FOV Ring",       "stretch_on")
mkSlide(pg_visuals, "FOV Value",    "stretch_val",  10, 120)

mkRow(pg_move, "Fly",               "fly_on")
mkSlide(pg_move, "Fly Speed",       "fly_spd",      1, 200)
mkRow(pg_move, "Fly Inertia",       "fly_inertia")
mkRow(pg_move, "Speed",             "speed_on",
    function()
        local h = gethum()
        if h then h.WalkSpeed = cfg.wspeed end
    end,
    function()
        local h = gethum()
        if h then h.WalkSpeed = 16 end
    end
)
mkSlide(pg_move, "Speed Val",       "wspeed",       16, 500)
mkRow(pg_move, "No-Clip",           "noclip_on")
mkRow(pg_move, "FreeCam",           "freecam_on",
    function() cas:UnbindAction("DisableInputs") end,
    function() cas:UnbindAction("DisableInputs") end
)
mkSlide(pg_move, "FreeCam Speed",   "freecam_spd",  1, 20)
mkRow(pg_move, "Air Walk",          "airwalk_on")
mkRow(pg_move, "Wall Hop",          "wallhop_on")

mkRow(pg_misc, "FPS Boost", "fps_on",
    function()
        lit.GlobalShadows = false
        for _, p in ipairs(workspace:GetDescendants()) do
            if p:IsA("BasePart") then
                pcall(function() p.Material = Enum.Material.SmoothPlastic end)
            end
        end
    end,
    function()
        lit.GlobalShadows = true
    end
)
mkRow(pg_misc, "Frame Stretch",     "fstretch_on")
mkSlide(pg_misc, "Stretch Val",     "fstretch_val", 1, 99)
mkRow(pg_misc, "Neko Mode",         "neko_on",
    function()
        earL.Visible = true
        earR.Visible = true
        tail.Visible = true
    end,
    function()
        earL.Visible = false
        earR.Visible = false
        tail.Visible = false
    end
)

do
    local sv = Instance.new("TextButton")
    sv.Size = UDim2.new(1, -4, 0, 30)
    sv.Text = "Save Config"
    sv.BackgroundColor3 = Color3.fromRGB(22, 22, 22)
    sv.TextColor3 = Color3.fromRGB(220, 220, 220)
    sv.Font = Enum.Font.GothamMedium
    sv.TextSize = 11
    sv.AutoButtonColor = false
    mkround(sv, 6)
    reg_t(sv)
    reg_e(sv)
    sv.Parent = pg_misc
    sv.MouseButton1Click:Connect(function()
        doSave()
        sv.Text = "Saved"
        task.delay(1.2, function() sv.Text = "Save Config" end)
    end)

    local lv = Instance.new("TextButton")
    lv.Size = UDim2.new(1, -4, 0, 30)
    lv.Text = "Load Config"
    lv.BackgroundColor3 = Color3.fromRGB(22, 22, 22)
    lv.TextColor3 = Color3.fromRGB(220, 220, 220)
    lv.Font = Enum.Font.GothamMedium
    lv.TextSize = 11
    lv.AutoButtonColor = false
    mkround(lv, 6)
    reg_t(lv)
    reg_e(lv)
    lv.Parent = pg_misc
    lv.MouseButton1Click:Connect(function()
        doLoad()
        lv.Text = "Loaded"
        task.delay(1.2, function() lv.Text = "Load Config" end)
    end)
end

local alist_gui = Instance.new("ScreenGui")
alist_gui.Name = "fh_al_" .. tostring(math.random(1000, 9999))
alist_gui.ResetOnSpawn = false
alist_gui.Parent = cg

local al_frame = Instance.new("Frame")
al_frame.Size = UDim2.new(0, 195, 1, 0)
al_frame.Position = UDim2.new(1, -205, 0, 10)
al_frame.BackgroundTransparency = 1
al_frame.Parent = alist_gui

local al_layout = Instance.new("UIListLayout")
al_layout.HorizontalAlignment = Enum.HorizontalAlignment.Right
al_layout.Padding = UDim.new(0, 2)
al_layout.Parent = al_frame

local al_features = {
    {"aim_on",        "Aimbot"},
    {"strafe_on",     "Strafe"},
    {"esp_on",        "ESP"},
    {"esp_boxes",     "Boxes"},
    {"esp_tracers",   "Tracers"},
    {"esp_names",     "Names"},
    {"esp_highlight", "Highlight"},
    {"fly_on",        "Fly"},
    {"speed_on",      "Speed"},
    {"noclip_on",     "NoClip"},
    {"freecam_on",    "FreeCam"},
    {"airwalk_on",    "AirWalk"},
    {"wallhop_on",    "WallHop"},
    {"fps_on",        "FPS Boost"},
    {"fstretch_on",   "FStretch"},
    {"stretch_on",    "FOV Ring"},
    {"trail_on",      "Trail"},
    {"chinahat_on",   "ChinaHat"},
    {"neko_on",       "Neko"},
    {"npc_aim",       "NPC Aim"},
    {"npc_esp",       "NPC ESP"},
}

local al_lbls = {}
local al_last = 0

rs.Heartbeat:Connect(function()
    al_frame.Visible = cfg.alist
    if not cfg.alist then return end
    if tick() - al_last < 0.09 then return end
    al_last = tick()
    for _, l in ipairs(al_lbls) do l:Destroy() end
    al_lbls = {}
    for _, e in ipairs(al_features) do
        local k, disp = e[1], e[2]
        if cfg[k] == true then
            local lbl = Instance.new("TextLabel")
            lbl.Text = disp
            lbl.Size = UDim2.new(0, 195, 0, 17)
            lbl.TextColor3 = Color3.fromRGB(235, 235, 235)
            lbl.BackgroundColor3 = Color3.fromRGB(13, 13, 13)
            lbl.BackgroundTransparency = 0.35
            lbl.Font = Enum.Font.GothamMedium
            lbl.TextSize = 11
            lbl.TextXAlignment = Enum.TextXAlignment.Right
            lbl.Parent = al_frame
            al_lbls[#al_lbls + 1] = lbl
        end
    end
end)

rs.Stepped:Connect(function()
    if not cfg.noclip_on then return end
    local c = getchar()
    if not c then return end
    for _, p in ipairs(c:GetDescendants()) do
        if p:IsA("BasePart") then
            p.CanCollide = false
        end
    end
end)

rs:BindToRenderStep("fh_wh", Enum.RenderPriority.Character.Value + 1, function()
    if not cfg.wallhop_on then return end
    local h = gethum()
    if h and h:GetState() == Enum.HumanoidStateType.Freefall then
        h:ChangeState(Enum.HumanoidStateType.Jumping)
    end
end)

rs.Heartbeat:Connect(function()
    if not cfg.speed_on then return end
    local h = gethum()
    if h then
        h.WalkSpeed = cfg.wspeed
    end
end)

local esp_objects = {}

local function destroyESP(pl)
    if esp_objects[pl] then
        for _, o in pairs(esp_objects[pl]) do
            pcall(function() o:Destroy() end)
        end
        esp_objects[pl] = nil
    end
end

local function buildESP(pl)
    destroyESP(pl)
    esp_objects[pl] = {}

    local box = Instance.new("SelectionBox")
    box.Color3 = cfg.box_col
    box.LineThickness = 0.03
    box.SurfaceTransparency = 1
    box.SurfaceColor3 = Color3.new(0,0,0)
    box.Parent = cg
    esp_objects[pl].box = box

    if cfg.esp_highlight then
        local hl = Instance.new("Highlight")
        hl.FillTransparency = 0.7
        hl.OutlineTransparency = 0
        hl.OutlineColor = cfg.box_col
        hl.FillColor = cfg.box_col
        hl.Parent = cg
        esp_objects[pl].highlight = hl
    end

    if cfg.esp_names then
        local bb = Instance.new("BillboardGui")
        bb.AlwaysOnTop = true
        bb.Size = UDim2.new(0, 100, 0, 24)
        bb.StudsOffset = Vector3.new(0, 2.5, 0)
        bb.Parent = cg

        local nl = Instance.new("TextLabel")
        nl.Size = UDim2.new(1, 0, 1, 0)
        nl.BackgroundTransparency = 1
        nl.Font = Enum.Font.GothamBold
        nl.TextSize = 13
        nl.TextColor3 = cfg.box_col
        nl.Text = pl.Name
        nl.Parent = bb
        esp_objects[pl].bb  = bb
        esp_objects[pl].nml = nl
    end

    if cfg.esp_tracers then
        local line = Instance.new("SelectionBox")
        line.Color3 = cfg.tracer_col
        line.LineThickness = 0.02
        line.SurfaceTransparency = 1
        line.Parent = cg
        esp_objects[pl].tracer = line
    end
end

local function updateESP()
    for _, pl in ipairs(plrs:GetPlayers()) do
        if pl == lp then
            destroyESP(pl)
        elseif not cfg.esp_on then
            destroyESP(pl)
        elseif cfg.teamck and isTeammate(pl) then
            destroyESP(pl)
        else
            local c = pl.Character
            local root = c and c:FindFirstChild("HumanoidRootPart")
            if not root then
                destroyESP(pl)
            else
                local dist = distanceTo(root.Position)
                if dist > cfg.esp_dist then
                    destroyESP(pl)
                else
                    if not esp_objects[pl] then buildESP(pl) end
                    local obj = esp_objects[pl]
                    if obj.box then
                        obj.box.Adornee = cfg.esp_boxes and c or nil
                    end
                    if obj.highlight then
                        obj.highlight.Adornee = cfg.esp_highlight and c or nil
                    end
                    if obj.bb then
                        obj.bb.Adornee = root
                        if obj.nml then obj.nml.Text = pl.Name end
                    end
                end
            end
        end
    end
end

plrs.PlayerRemoving:Connect(function(pl)
    destroyESP(pl)
end)

rs.Heartbeat:Connect(function()
    updateESP()
end)

local aim_active = false
uis.InputBegan:Connect(function(i, g)
    if g then return end
    if i.KeyCode == cfg.aim_key then aim_active = true end
end)
uis.InputEnded:Connect(function(i)
    if i.KeyCode == cfg.aim_key then aim_active = false end
end)

local function getTarget()
    if not cfg.aim_on or not aim_active then return nil end
    if not isalive() then return nil end

    local best_pl   = nil
    local best_dist = cfg.aim_fov
    local sc        = screenCenter()

    for _, pl in ipairs(plrs:GetPlayers()) do
        if pl ~= lp then
            if cfg.teamck and isTeammate(pl) then continue end
            local c = pl.Character
            if not c then continue end
            local part = c:FindFirstChild(cfg.aim_bone) or c:FindFirstChild("Head")
            if not part then continue end

            local hm = c:FindFirstChildOfClass("Humanoid")
            if not hm or hm.Health <= 0 then continue end

            local spos, vis = worldToScreen(part.Position)
            if not vis then continue end

            local rootp = c:FindFirstChild("HumanoidRootPart")
            if cfg.wallck and rootp and not hasLOS(getwpos(), rootp.Position) then continue end

            local d = (spos - sc).Magnitude
            if d < best_dist then
                best_dist = d
                best_pl   = part
            end
        end
    end
    return best_pl
end

rs.Heartbeat:Connect(function()
    local t = getTarget()
    if not t then return end

    local spos = worldToScreen(t.Position)
    local sc   = screenCenter()

    if cfg.aim_mode == 1 then
        local cur = uis:GetMouseLocation()
        local dir = (spos - cur)
        local sm  = math.clamp(cfg.aim_smooth / 100, 0.01, 1)
        mousemoverel(dir.X * sm, dir.Y * sm)
    elseif cfg.aim_mode == 2 then
        local sm = math.clamp(cfg.aim_smooth / 100, 0.01, 1)
        local cr = cam.CFrame
        local tr = CFrame.new(cam.CFrame.Position, t.Position)
        cam.CFrame = cr:Lerp(tr, sm)
    end
end)

local strafe_angle = 0
rs.Heartbeat:Connect(function(dt)
    if not cfg.strafe_on then return end
    if not isalive() then return end
    local tgt_pl = plrs:FindFirstChild(cfg.strafe_name)
    if not tgt_pl then return end
    local tc = tgt_pl.Character
    local tr = tc and tc:FindFirstChild("HumanoidRootPart")
    if not tr then return end
    local myroot = getroot()
    if not myroot then return end

    strafe_angle = strafe_angle + cfg.strafe_spd * dt
    local dist = cfg.strafe_dist
    local tx = tr.Position.X + math.cos(strafe_angle) * dist
    local tz = tr.Position.Z + math.sin(strafe_angle) * dist
    local ty = tr.Position.Y

    local h = gethum()
    if h then
        h:MoveTo(Vector3.new(tx, ty, tz))
    end
end)

local fly_vel = Vector3.new()
local fly_active = false

uis.InputBegan:Connect(function(i, g)
    if g then return end
    if i.KeyCode == Enum.KeyCode.F then
        if not cfg.fly_on then return end
        fly_active = not fly_active
        local c = getchar()
        local h = gethum()
        local r = getroot()
        if not c or not h or not r then fly_active = false return end
        if fly_active then
            h.PlatformStand = true
        else
            h.PlatformStand = false
            fly_vel = Vector3.new()
        end
    end
end)

rs.Heartbeat:Connect(function(dt)
    if not cfg.fly_on then
        if fly_active then
            fly_active = false
            local h = gethum()
            if h then h.PlatformStand = false end
        end
        return
    end
    if not fly_active then return end
    local r = getroot()
    if not r then return end

    local mv = Vector3.new()
    if uis:IsKeyDown(Enum.KeyCode.W) then mv = mv + cam.CFrame.LookVector end
    if uis:IsKeyDown(Enum.KeyCode.S) then mv = mv - cam.CFrame.LookVector end
    if uis:IsKeyDown(Enum.KeyCode.A) then mv = mv - cam.CFrame.RightVector end
    if uis:IsKeyDown(Enum.KeyCode.D) then mv = mv + cam.CFrame.RightVector end
    if uis:IsKeyDown(Enum.KeyCode.Space) then mv = mv + Vector3.new(0,1,0) end
    if uis:IsKeyDown(Enum.KeyCode.LeftShift) then mv = mv - Vector3.new(0,1,0) end

    if mv.Magnitude > 0 then
        mv = mv.Unit * cfg.fly_spd
    end

    if cfg.fly_inertia then
        fly_vel = fly_vel:Lerp(mv, cfg.fly_inertia_pwr)
    else
        fly_vel = mv
    end

    r.Velocity = fly_vel
    r.CFrame = CFrame.new(r.Position + fly_vel * dt, r.Position + fly_vel * dt + cam.CFrame.LookVector)
end)

local noclip_conn
rs.Stepped:Connect(function()
    if not cfg.noclip_on then return end
    local c = getchar()
    if not c then return end
    for _, p in ipairs(c:GetDescendants()) do
        if p:IsA("BasePart") then p.CanCollide = false end
    end
end)

push_theme(thm)

Features & Information

aimbot, esp, etc *some features may be buggy due to the trash script*
#cracked#deobfuscated#dumped#leaked#op

Community Comments (4)

textboxtextboxFeb 17, 2026

you this * jsut crack a scirpt in 3 second when it was posted

kyziwkyziwFeb 17, 2026

W

FokiFokiFeb 17, 2026

90% of the functions do not work , only the menu works xD

Replying to @Foki
textboxtextboxFeb 20, 2026

@Foki fr

More Scripts for Universal Scripts