FakeLAG Universal by xanexclub
Key RequiredUniversal

FakeLAG Universal by xanexclub

Universal Script333xnx333xnx 1.5K views 610 executesUpdated Aug 6, 2026
Unrated
00
Lua Script•329 lines (10295 chars)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer
local Workspace = game:GetService("Workspace")

local TOGGLE_KEY = Enum.KeyCode.F
local LAG_INTERVAL = 0.5

local isFakeLag = false
local isBinding = false
local ghostModel = nil
local lastLagTick = os.clock()

local connections = {}
local partMap = {}

local function removeGhost()
    if ghostModel then
        pcall(function() ghostModel:Destroy() end)
        ghostModel = nil
    end
    table.clear(partMap)
end

local function FULL_UNLOAD()
    isFakeLag = false
    isBinding = false

    pcall(function()
        setfflag("FFlagDebugSimPacketLoss", "0")
    end)
    pcall(function()
        sethiddenproperty(game:GetService("NetworkClient"), "OutgoingKBPS", 10000)
    end)
    
    local char = LocalPlayer.Character
    if char then
        local hrp = char:FindFirstChild("HumanoidRootPart")
        if hrp then
            pcall(function()
                sethiddenproperty(hrp, "NetworkIsWaitingForFinalGoal", false)
            end)
            hrp.Anchored = false
        end
        local hum = char:FindFirstChildOfClass("Humanoid")
        if hum then
            hum.PlatformStand = false
        end
    end

    removeGhost()

    for _, obj in pairs(Workspace:GetChildren()) do
        if obj.Name == "ServerGhost" then
            pcall(function() obj:Destroy() end)
        end
    end

    for _, gui in pairs(game:GetService("CoreGui"):GetChildren()) do
        if gui.Name == "StrictFakeLagGUI" then
            pcall(function() gui:Destroy() end)
        end
    end
    for _, gui in pairs(LocalPlayer:WaitForChild("PlayerGui"):GetChildren()) do
        if gui.Name == "StrictFakeLagGUI" then
            pcall(function() gui:Destroy() end)
        end
    end

    for _, conn in ipairs(connections) do
        if conn and conn.Connected then
            pcall(function() conn:Disconnect() end)
        end
    end
    table.clear(connections)

    task.spawn(function()
        for i = 1, 5 do
            collectgarbage("collect")
            task.wait(0.01)
        end
    end)
end

FULL_UNLOAD()

local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "StrictFakeLagGUI"
ScreenGui.ResetOnSpawn = false

pcall(function()
    ScreenGui.Parent = game:GetService("CoreGui")
end)
if not ScreenGui.Parent then
    ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")
end

local MainFrame = Instance.new("Frame")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.new(0, 200, 0, 134)
MainFrame.Position = UDim2.new(0.5, -100, 0.4, -67)
MainFrame.BackgroundColor3 = Color3.fromRGB(12, 12, 15)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.Parent = ScreenGui

local UICorner = Instance.new("UICorner")
UICorner.CornerRadius = UDim.new(0, 4)
UICorner.Parent = MainFrame

local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, 0, 0, 28)
Title.Text = "FakeLAG by xnx"
Title.TextColor3 = Color3.fromRGB(180, 180, 190)
Title.Font = Enum.Font.RobotoMono
Title.TextSize = 11
Title.BackgroundTransparency = 1
Title.Parent = MainFrame

local dragging, dragInput, dragStart, startPos
MainFrame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
        dragging = true
        dragStart = input.Position
        startPos = MainFrame.Position
        input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then
                dragging = false
            end
        end)
    end
end)

MainFrame.InputChanged:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
        dragInput = input
    end
end)

UserInputService.InputChanged:Connect(function(input)
    if input == dragInput and dragging then
        local delta = input.Position - dragStart
        MainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
    end
end)

local function createButton(text, pos, size, bgColor)
    local btn = Instance.new("TextButton")
    btn.Size = size
    btn.Position = pos
    btn.BackgroundColor3 = bgColor
    btn.Text = text
    btn.TextColor3 = Color3.fromRGB(220, 220, 230)
    btn.Font = Enum.Font.RobotoMono
    btn.TextSize = 10
    btn.BorderSizePixel = 0
    btn.AutoButtonColor = false
    btn.Parent = MainFrame

    local corner = Instance.new("UICorner")
    corner.CornerRadius = UDim.new(0, 3)
    corner.Parent = btn

    return btn
end

local ToggleBtn = createButton("FAKELAG [OFF]", UDim2.new(0, 10, 0, 30), UDim2.new(1, -20, 0, 26), Color3.fromRGB(120, 35, 35))
local KeybindBtn = createButton("KEYBIND [F]", UDim2.new(0, 10, 0, 60), UDim2.new(1, -20, 0, 22), Color3.fromRGB(22, 22, 28))
local UnloadBtn = createButton("UNLOAD", UDim2.new(0, 10, 0, 86), UDim2.new(1, -20, 0, 22), Color3.fromRGB(22, 22, 28))

local Watermark = Instance.new("TextLabel")
Watermark.Size = UDim2.new(1, 0, 0, 18)
Watermark.Position = UDim2.new(0, 0, 0, 112)
Watermark.Text = "t.me/xnxscript"
Watermark.TextColor3 = Color3.fromRGB(90, 90, 105)
Watermark.Font = Enum.Font.RobotoMono
Watermark.TextSize = 10
Watermark.BackgroundTransparency = 1
Watermark.Parent = MainFrame

local function createGhost()
    removeGhost()
    local char = LocalPlayer.Character
    if not char then return end

    char.Archivable = true
    ghostModel = char:Clone()
    char.Archivable = false

    ghostModel.Name = "ServerGhost"

    for _, obj in pairs(ghostModel:GetDescendants()) do
        if obj:IsA("Script") or obj:IsA("LocalScript") or obj:IsA("Animator") or obj:IsA("Weld") or obj:IsA("WeldConstraint") or obj:IsA("Motor6D") then
            obj:Destroy()
        elseif obj:IsA("BasePart") then
            obj.CanCollide = false
            obj.Anchored = true
            obj.Transparency = 0.7
            obj.Material = Enum.Material.SmoothPlastic
            obj.Color = Color3.fromRGB(140, 140, 160)
        end
    end

    for _, charPart in pairs(char:GetDescendants()) do
        if charPart:IsA("BasePart") then
            if charPart.Parent == char then
                local ghostPart = ghostModel:FindFirstChild(charPart.Name)
                if ghostPart and ghostPart:IsA("BasePart") then
                    partMap[charPart] = ghostPart
                end
            elseif charPart.Parent:IsA("Accessory") or charPart.Parent:IsA("Accoutrement") or charPart.Parent:IsA("Tool") then
                local parentName = charPart.Parent.Name
                local ghostParent = ghostModel:FindFirstChild(parentName)
                if ghostParent then
                    local ghostPart = ghostParent:FindFirstChild(charPart.Name)
                    if ghostPart and ghostPart:IsA("BasePart") then
                        partMap[charPart] = ghostPart
                    end
                end
            end
        end
    end

    ghostModel.Parent = Workspace
end

local function updateGhostPosition()
    for charPart, ghostPart in pairs(partMap) do
        if charPart and charPart.Parent and ghostPart and ghostPart.Parent then
            ghostPart.CFrame = charPart.CFrame
        end
    end
end

local function resetNetwork()
    pcall(function()
        setfflag("FFlagDebugSimPacketLoss", "0")
    end)
    pcall(function()
        sethiddenproperty(game:GetService("NetworkClient"), "OutgoingKBPS", 10000)
    end)
    local char = LocalPlayer.Character
    if char and char:FindFirstChild("HumanoidRootPart") then
        pcall(function()
            sethiddenproperty(char.HumanoidRootPart, "NetworkIsWaitingForFinalGoal", false)
        end)
    end
end

local function toggleFakeLag()
    isFakeLag = not isFakeLag
    if isFakeLag then
        ToggleBtn.Text = "FAKELAG [ON]"
        ToggleBtn.BackgroundColor3 = Color3.fromRGB(35, 120, 50)
        lastLagTick = os.clock()
        createGhost()
    else
        ToggleBtn.Text = "FAKELAG [OFF]"
        ToggleBtn.BackgroundColor3 = Color3.fromRGB(120, 35, 35)
        resetNetwork()
        removeGhost()
    end
end

ToggleBtn.MouseButton1Click:Connect(toggleFakeLag)

KeybindBtn.MouseButton1Click:Connect(function()
    if isBinding then return end
    isBinding = true
    KeybindBtn.Text = "PRESS KEY..."
    KeybindBtn.BackgroundColor3 = Color3.fromRGB(45, 45, 60)
end)

table.insert(connections, UserInputService.InputBegan:Connect(function(input, gameProcessed)
    if isBinding then
        if input.UserInputType == Enum.UserInputType.Keyboard then
            if input.KeyCode ~= Enum.KeyCode.Unknown and input.KeyCode ~= Enum.KeyCode.Escape then
                TOGGLE_KEY = input.KeyCode
                KeybindBtn.Text = "KEYBIND [" .. string.upper(input.KeyCode.Name) .. "]"
            else
                KeybindBtn.Text = "KEYBIND [" .. string.upper(TOGGLE_KEY.Name) .. "]"
            end
            KeybindBtn.BackgroundColor3 = Color3.fromRGB(22, 22, 28)
            task.defer(function()
                isBinding = false
            end)
        end
        return
    end

    if gameProcessed then return end
    if input.KeyCode == TOGGLE_KEY then
        toggleFakeLag()
    end
end))

table.insert(connections, RunService.Heartbeat:Connect(function()
    if not isFakeLag then return end

    local char = LocalPlayer.Character
    if not char or not char:FindFirstChild("HumanoidRootPart") then return end

    local now = os.clock()
    if now - lastLagTick >= LAG_INTERVAL then
        lastLagTick = now
        resetNetwork()
        updateGhostPosition()
    else
        pcall(function()
            setfflag("FFlagDebugSimPacketLoss", "100")
        end)
        pcall(function()
            sethiddenproperty(game:GetService("NetworkClient"), "OutgoingKBPS", 1)
        end)
        pcall(function()
            sethiddenproperty(char.HumanoidRootPart, "NetworkIsWaitingForFinalGoal", true)
        end)
    end
end))

table.insert(connections, LocalPlayer.CharacterAdded:Connect(function()
    if isFakeLag then
        task.wait(0.5)
        createGhost()
    end
end))

UnloadBtn.MouseButton1Click:Connect(FULL_UNLOAD)

Features & Information

FakeLAG

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts