brookhaven
Key RequiredUniversal

brookhaven

Universal Scriptnoob39050noob39050 57.3K views 355 executesUpdated Jul 23, 2025
Unrated
00
Lua Script•312 lines (9592 chars)
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local UIS = game:GetService("UserInputService")
local RunService = game:GetService("RunService")

-- Create ScreenGui
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "SkibidiHub"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = player:WaitForChild("PlayerGui")

-- Main Frame
local mainFrame = Instance.new("Frame")
mainFrame.Size = UDim2.new(0, 380, 0, 480)
mainFrame.Position = UDim2.new(0.5, -190, 0.5, -240)
mainFrame.BackgroundColor3 = Color3.fromRGB(25, 0, 40)
mainFrame.BorderSizePixel = 0
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Parent = ScreenGui

-- Title
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 40)
title.Position = UDim2.new(0, 0, 0, 0)
title.BackgroundTransparency = 1
title.TextColor3 = Color3.fromRGB(200, 150, 255)
title.Font = Enum.Font.SourceSansBold
title.TextSize = 28
title.Text = "Skibidi Hub"
title.Parent = mainFrame

-- Close Button
local closeBtn = Instance.new("TextButton")
closeBtn.Size = UDim2.new(0, 60, 0, 30)
closeBtn.Position = UDim2.new(1, -70, 0, 5)
closeBtn.BackgroundColor3 = Color3.fromRGB(150, 30, 180)
closeBtn.TextColor3 = Color3.new(1,1,1)
closeBtn.Font = Enum.Font.SourceSansBold
closeBtn.TextSize = 18
closeBtn.Text = "Close"
closeBtn.AutoButtonColor = false
closeBtn.Parent = mainFrame

-- Show Button
local showBtn = Instance.new("TextButton")
showBtn.Size = UDim2.new(0, 110, 0, 40)
showBtn.Position = UDim2.new(0.5, -55, 0.85, 0)
showBtn.BackgroundColor3 = Color3.fromRGB(100, 20, 120)
showBtn.TextColor3 = Color3.new(1,1,1)
showBtn.Font = Enum.Font.SourceSansBold
showBtn.TextSize = 20
showBtn.Text = "Show Script"
showBtn.Visible = false
showBtn.Parent = ScreenGui

closeBtn.MouseButton1Click:Connect(function()
    mainFrame.Visible = false
    showBtn.Visible = true
end)

showBtn.MouseButton1Click:Connect(function()
    mainFrame.Visible = true
    showBtn.Visible = false
end)

-- Developer Message
local devMsg = Instance.new("TextLabel")
devMsg.Size = UDim2.new(0, 360, 0, 40)
devMsg.Position = UDim2.new(0.5, -180, 0, 440)
devMsg.BackgroundColor3 = Color3.fromRGB(10, 80, 10)
devMsg.BackgroundTransparency = 0.3
devMsg.TextColor3 = Color3.fromRGB(200, 255, 200)
devMsg.Font = Enum.Font.SourceSansBold
devMsg.TextSize = 18
devMsg.Text = "Thanks for using Skibidi Hub! For any issues contact 3bodkaa#1234 on Discord."
devMsg.Parent = mainFrame

-- Sections Frame (Left panel)
local sectionsFrame = Instance.new("Frame")
sectionsFrame.Size = UDim2.new(0, 120, 0, 380)
sectionsFrame.Position = UDim2.new(0, 10, 0, 50)
sectionsFrame.BackgroundColor3 = Color3.fromRGB(50, 0, 70)
sectionsFrame.Parent = mainFrame

-- Content Frame (Right panel)
local contentFrame = Instance.new("ScrollingFrame")
contentFrame.Size = UDim2.new(0, 240, 0, 380)
contentFrame.Position = UDim2.new(0, 135, 0, 50)
contentFrame.BackgroundColor3 = Color3.fromRGB(40, 0, 60)
contentFrame.ScrollBarThickness = 6
contentFrame.Parent = mainFrame

local UIListLayout = Instance.new("UIListLayout")
UIListLayout.Padding = UDim.new(0, 10)
UIListLayout.Parent = contentFrame

-- Player Info Label
local playerInfo = Instance.new("TextLabel")
playerInfo.Size = UDim2.new(1, -20, 0, 80)
playerInfo.Position = UDim2.new(0, 10, 0, 0)
playerInfo.BackgroundColor3 = Color3.fromRGB(35, 10, 50)
playerInfo.TextColor3 = Color3.new(1, 1, 1)
playerInfo.Font = Enum.Font.SourceSansBold
playerInfo.TextSize = 18
playerInfo.TextWrapped = true
playerInfo.Parent = contentFrame

local function updatePlayerInfo()
    local plrName = player.Name
    local humanoid = player.Character and player.Character:FindFirstChildOfClass("Humanoid")
    local plrHealth = humanoid and math.floor(humanoid.Health) or "N/A"
    local plrTeam = player.Team and player.Team.Name or "No Team"
    local plrLanguage = "English"

    playerInfo.Text = string.format("Player: %s\nHealth: %s\nTeam: %s\nLanguage: %s", plrName, plrHealth, plrTeam, plrLanguage)
end

updatePlayerInfo()

spawn(function()
    while true do
        wait(3)
        if playerInfo and playerInfo.Parent then
            updatePlayerInfo()
        else
            break
        end
    end
end)

-- Clear content helper
local function clearContent()
    for _, child in pairs(contentFrame:GetChildren()) do
        if not (child:IsA("UIListLayout") or child == playerInfo) then
            child:Destroy()
        end
    end
end

-- Button creation helper
local function createButton(text)
    local btn = Instance.new("TextButton")
    btn.Size = UDim2.new(1, 0, 0, 40)
    btn.BackgroundColor3 = Color3.fromRGB(120, 30, 150)
    btn.TextColor3 = Color3.new(1,1,1)
    btn.Font = Enum.Font.SourceSansBold
    btn.TextSize = 18
    btn.Text = text
    btn.AutoButtonColor = false
    btn.Parent = contentFrame
    return btn
end

-- Ability functions (placeholders, customize for your game)
local function fly()
    local char = player.Character
    if not char then return end
    local humanoid = char:FindFirstChildOfClass("Humanoid")
    local root = char:FindFirstChild("HumanoidRootPart")
    if humanoid and root then
        humanoid.PlatformStand = true
        local flying = true
        local speed = 50
        local conn
        conn = RunService.Heartbeat:Connect(function(dt)
            if not flying or not root or not humanoid then
                conn:Disconnect()
                humanoid.PlatformStand = false
                return
            end
            if UIS:IsKeyDown(Enum.KeyCode.W) then
                root.CFrame = root.CFrame * CFrame.new(0, 0, -speed * dt)
            end
            if UIS:IsKeyDown(Enum.KeyCode.S) then
                root.CFrame = root.CFrame * CFrame.new(0, 0, speed * dt)
            end
            if UIS:IsKeyDown(Enum.KeyCode.A) then
                root.CFrame = root.CFrame * CFrame.new(-speed * dt, 0, 0)
            end
            if UIS:IsKeyDown(Enum.KeyCode.D) then
                root.CFrame = root.CFrame * CFrame.new(speed * dt, 0, 0)
            end
        end)
        wait(10)
        flying = false
    end
end

local function wallhack()
    for _, plr in pairs(Players:GetPlayers()) do
        if plr ~= player and plr.Character then
            for _, part in pairs(plr.Character:GetChildren()) do
                if part:IsA("BasePart") then
                    part.LocalTransparencyModifier = 0.3
                end
            end
        end
    end
end

local function speed()
    local char = player.Character
    if not char then return end
    local humanoid = char:FindFirstChildOfClass("Humanoid")
    if humanoid then
        humanoid.WalkSpeed = 70
    end
end

local function jumpBoost()
    local char = player.Character
    if not char then return end
    local humanoid = char:FindFirstChildOfClass("Humanoid")
    if humanoid then
        humanoid.JumpPower = 100
    end
end

local function antiAFK()
    local vu = game:GetService("VirtualUser")
    RunService.Idled:Connect(function()
        vu:Button2Down(Vector2.new(0,0),workspace.CurrentCamera.CFrame)
        wait(1)
        vu:Button2Up(Vector2.new(0,0),workspace.CurrentCamera.CFrame)
    end)
end

local function dummyFunc()
    print("Feature activated!")
end

local abilities = {
    ["Abilities"] = {
        {"Fly", fly},
        {"Wallhack", wallhack},
        {"Speed Boost", speed},
        {"Jump Boost", jumpBoost},
        {"Anti AFK", antiAFK},
        {"Damage Boost", dummyFunc},
        {"Invisibility", dummyFunc},
        {"Double Jump", dummyFunc},
        {"High Jump", dummyFunc},
        {"Skin Copy", dummyFunc},
    },
    ["Protection"] = {
        {"Anti Ban", dummyFunc},
        {"Anti Fling", dummyFunc},
        {"Safe Login", dummyFunc},
        {"Activity Monitor", dummyFunc},
        {"Shield", dummyFunc},
    },
    ["Animations"] = {
        {"Dance", dummyFunc},
        {"Wave", dummyFunc},
        {"Jump Animation", dummyFunc},
        {"Run Animation", dummyFunc},
        {"Idle Animation", dummyFunc},
    }
}

local sections = {"Abilities", "Protection", "Animations"}

local function showAbilities(section)
    clearContent()
    playerInfo.Parent = contentFrame
    contentFrame.CanvasPosition = Vector2.new(0, 0)

    for _, ability in pairs(abilities[section]) do
        local name, func = ability[1], ability[2]
        local btn = createButton(name)
        btn.MouseButton1Click:Connect(func)
    end
end

-- Create section buttons
for i, secName in ipairs(sections) do
    local btn = Instance.new("TextButton")
    btn.Size = UDim2.new(1, -10, 0, 45)
    btn.Position = UDim2.new(0, 5, 0, (i-1)*50)
    btn.BackgroundColor3 = Color3.fromRGB(90, 20, 140)
    btn.TextColor3 = Color3.new(1,1,1)
    btn.Font = Enum.Font.SourceSansBold
    btn.TextSize = 20
    btn.Text = secName
    btn.Parent = sectionsFrame

    btn.MouseButton1Click:Connect(function()
        showAbilities(secName)
    end)
end

-- Show first section by default
showAbilities(sections[1])

-- Welcome message (green, disappears after 3 seconds)
local welcomeLabel = Instance.new("TextLabel")
welcomeLabel.Size = UDim2.new(0, 250, 0, 30)
welcomeLabel.Position = UDim2.new(0.5, -125, 0, 45)
welcomeLabel.BackgroundColor3 = Color3.fromRGB(0, 150, 0)
welcomeLabel.BackgroundTransparency = 0.7
welcomeLabel.TextColor3 = Color3.new(1,1,1)
welcomeLabel.Font = Enum.Font.SourceSansBold
welcomeLabel.TextSize = 18
welcomeLabel.Text = "Welcome to Skibidi Hub!"
welcomeLabel.Parent = mainFrame

delay(3, function()
    if welcomeLabel and welcomeLabel.Parent then
        welcomeLabel:Destroy()
    end
end)

Features & Information

It’s so good script

Community Comments (1)

8n_128n_12Jul 24, 2025

Bro, I will tell you about the improvements first. The whole script is not working, so try to get the latest codes and the latest interface.❤

More Scripts for Universal Scripts