>_ scriptsbin
Brookhaven RP icon

Brookhaven RP Scripts  — all 17 in one page

13 working 12 keyless 5 key required 1 failing checked 12 Nov 2026 roleplay & avatar sim
loaders
17
collapsed dupes
2
hosts
9
game update
11 Nov 2026

Brookhaven RP is not a grind game, which is why its scripts are troll and utility tools rather than farmers: kill all, bring player, fling, admin panels, money-bag givers, fly, freecam, map ESP. Nineteen blocks sit on this page and the split is wide — SP Hub, Hexagon and Torium are the long-running keyless loaders people actually keep installed, while Lunar and Bloom are the smaller keyed ones.

Because Brookhaven never really patches against scripts, age is a weaker signal here than on a combat game. What goes stale is the feature set, not the loader: a hub from two years ago still attaches and still kills everyone, but it will not know the newest vehicles or jobs. Read the feature list before you install one, not just the date.

The most-used pattern on this page is a single admin panel — kill all, bring, fling, ESP — used to mess with one specific player in a roleplay session. If that is what you want, the top two keyless blocks cover it; everything below them is a variation on the same panel with a different skin.

Note. Kill all and bring player are visible to everyone in the server, so warn the lobby before you use them or you will spend the next ten minutes explaining what happened.

Best Brookhaven RP scripts right now

Comparison

script access status needs best for
SP Hub | BEST Keyless Brookhaven Script with… keyless working loadstring Teleports, ESP
Hexagon Hub | OP Keyless Script keyless working loadstring —
Kill All, Bring Player, Fling Player & More key working loadstring —
Sander XY Brookhaven script Orginal keyless working loadstring —
Torium Brookhaven 🏡RP v2 • Updated for the … keyless working firetouchinterest, setclipboard Auto farm, Teleports
Sapphire hub Brookhaven 🏡RP Script keyless working loadstring —
Roblox || Brookhaven Script Fe (Noting Panel… keyless working loadstring —
KAISER_VERSION_1 💥 [Brookhaven RP] keyless working gethui —

Requirements are read off the loader body: an executor missing one of those calls throws before the menu opens.

1 failing since a patch — try these last

ESP (4)

13

CARNAGE | Brookhaven - Ride Speed, Ride Fly, Quick Travel, Map ESP

working key system Brookhaven - Ride SpeedRide FlyQuick TravelMap ESP

needs gethui · clipboard · file IO — runs on Swift

🔑 FREE KEY: Enjoy a wide range of free features! Additional features for specific games are available with a premium key. Get your key, updates & support in our Discord → https://discord.gg/pCyDyctwhQ

loadstring(game:HttpGet("https://carnage-lua-api.carnage.workers.dev/lx"))()
carnage-lua-api.carnage.workers.dev unchanged since 12 Nov 2026 151 views 2 loader source ↗
15

Axon Hub | ESP, Fly & Infinite Jump

working 1 key step · luarmor mobile ESPFly & Infinite Jump

Axon Hub is a Brookhaven script built for auto farm, ESP, combat, movement and easier grinding.

loadstring(game:HttpGet("https://api.luarmor.net/files/v3/loaders/97c3f6db55a2cf72141537a85458e5a7.lua"))()
api.luarmor.net unchanged since 12 Nov 2026 117 views 3 loader source ↗
16

Auto farm Candy esp Anti AFK New

working keyless

No Ban Ko Kick working on all Executor

loadstring(game:HttpGet("https://raw.githubusercontent.com/HexHubX/Main/refs/heads/main/AutoFarm%20Brookhaven.lua"))()
raw.githubusercontent.com unchanged since 12 Nov 2026 94 views 3 loader source ↗
09

Teleports • Roleplay • Vehicles • Fly • ESP • Freecam

blocked keyless Movement — Speed & JumpTeleports — Location/Player Teleports and WaypointsWorld — FullBright and NoFogRoleplay — Full Roleplay Tab

Teleports — Location/Player Teleports and Waypoints

loadstring(game:HttpGet("https://jnkie.com/loaders/westwell"))()
jnkie.com loader changed 12 Nov 2026 507 views 3 loader source ↗

Teleports (2)

01

SP Hub | BEST Keyless Brookhaven Script with Regular Updates (KILL ALL, FE TROLL, ADMIN COMMANDS)

working keyless mobile Kill any Player and Auto KillTroll tab with FE functionsFE Visual Avatar ChangesGet ANY Item, Any Clothing and Any Vehicle

One of the BEST and Oldest Scripts for Roblox Brookhaven RP that is still regularly updated by the SP Hub team!

loadstring(game:HttpGet("https://raw.githubusercontent.com/as6cd0/SP_Hub/refs/heads/main/Brookhaven"))()
by SP Hub raw.githubusercontent.com unchanged since 12 Nov 2026 8.9k views 20 loader source ↗
17

Lunar Hub | Couch Fling, Copy Avatar, Anti Kick, House TP

blocked key system Couch FlingCopy AvatarAnti KickHouse TP

Lunar Hub Brookhaven RP script with Couch Fling, Copy Avatar, Anti Kick, House TP, Spectate and more. Get the key and join Discord at https://discord.gg/lunarhub Website https://lunarhub.net

loadstring(game:HttpGet("https://api.jnkie.com/api/v1/luascripts/public/4b18d970c2d9f8dd0d1d0af2062dbd15bd34d1b801eca581c9a456016683ca47/download"))()
api.jnkie.com loader changed 12 Nov 2026 81 views 2 loader source ↗

Auto farm (1)

Kill aura (1)

14

Snowy Hub | Auto Job, Fling, Kill Aura, Car speed & More

working key system mobile Auto JobFlingKill AuraCar speed & More

Fly (WASD + Space/Ctrl): Smooth directional flight with full keyboard controls.Fly Speed: Adjust your flight speed with a customizable slider.NoClip: Walk through walls, doors, and other obstacles.Infinite Jump: Jump endlessly without touching the ground.Walk Speed: Customize your movement speed.Lock Walk Speed: Consta

loadstring(game:HttpGet("https://flowauth.net/v1/ui/a87f00d9adf63658655fcd02ab86a4ef.lua"))()
flowauth.net unchanged since 12 Nov 2026 156 views 1 loader source ↗

Speed (1)

10

SAGAZX HUB - Brookhaven RP Script (Speed, Jump, Gravity & More)

dead keyless mobile

Enhance your Brookhaven RP experience with SAGAZX HUB! This script features customizable Speed, Jump Power, and Gravity, plus Infinite Jump, Float, Spin Character, RGB options, and more.

loadstring(game:HttpGet("https://rawscripts.net/raw/Brookhaven-RP-SAGAZx-222796"))()
by SAGAZx rawscripts.net unchanged since 12 Nov 2026 458 views 2 loader source ↗

General tools (8)

02

Hexagon Hub | OP Keyless Script

working keyless mobile OP Keyless Script
loadstring(game:HttpGet("https://raw.githubusercontent.com/nxvap/Hexagon/refs/heads/main/brookhaven"))()
by rip_arfa0102 raw.githubusercontent.com unchanged since 12 Nov 2026 3.5k views 17 loader source ↗
03

Kill All, Bring Player, Fling Player & More

working key system mobile

🔪 Kill Player (Player Dropdown)💀 Kill All🧲 Bring Player (Player Dropdown)🌪️ Fling🚀 Teleport To Player⚡ Instant Proximity Prompts🕴️ Infinite Jumps👻 Noclip🏃 Walk Speed Modifier🦘 Jump Power Modifier📏 Hip Height Modifier

loadstring(game:HttpGet("https://overflow.cx/loader.html"))()
overflow.cx unchanged since 12 Nov 2026 2.8k views 12 loader source ↗
04

Sander XY Brookhaven script Orginal

working keyless same loader as 1 listing

Sander XY is a new project from Sander Team. It has many cool features and a lot of original script. It is OP and the owner is very cool. He does it himself so I have a lot of respect for him.THE BEST SCRIPT FOR BROOKHAVEN________DROP ITEMSPROPS TRAILSBUILD TEXTKILL ALLCOPY AVATARCOPY SKINSMUSICKILL ALLFLING ALLBAN ALL

loadstring(game:HttpGet("https://raw.githubusercontent.com/kigredns/testUIDK/refs/heads/main/panel.lua"))()
raw.githubusercontent.com unchanged since 12 Nov 2026 1.8k views 11 loader source ↗
06

Sapphire hub Brookhaven 🏡RP Script

working keyless mobile same loader as 1 listing

IDK WHY I CANT COPY AND PASTE STUFF PLS STAFF TEAM FIX IT BUT IT HAS MUCH STUFF PLSSSSSSS FIX ITTTTTTTTTTTTT PLSSSSS but in the scrennshot you can see and no thats not everything

loadstring(game:HttpGet("https://rscripts.net/api/telemetry/v2/client.lua?s=6aa33616b7254cb28fabd686"))()
rscripts.net unchanged since 12 Nov 2026 801 views 8 loader source ↗
11

KAISER_VERSION_1 💥 [Brookhaven RP]

working keyless mobile

needs gethui — runs on Xeno

A feature-rich Brookhaven RP utility script featuring:

loadstring(game:HttpGet("https://raw.githubusercontent.com/SUPREMEAURA350/KAISER-VERSION-2-/refs/heads/main/Kaiserspam"))()
raw.githubusercontent.com unchanged since 12 Nov 2026 401 views 7 loader source ↗
12

KAISER_V3 SPAMMER [BROOKHAVEN 🏡RP]

working keyless mobile

KAISER_V3 SPAMMER script created by KING_KAISER. Target specific player names to start or stop spamming functionality directly in-game.

loadstring(game:HttpGet("https://raw.githubusercontent.com/SUPREMEAURA350/KAISER-VERSION-Xg/refs/heads/main/Kaiser%20bgh"))()
raw.githubusercontent.com unchanged since 12 Nov 2026 341 views 3 loader source ↗
08

KIRA-HUB brookhaven Safe version

inline code keyless mobile

This is a script for the Arabic version. Everything you need is here, so please support my Roblox account by following me. Thank you.

-- K-HUB | V1.0 (Official Launch)
inline unchanged since 12 Nov 2026 497 views 5
full source (19150 chars)
-- K-HUB | V1.0 (Official Launch)
local ts = game:GetService("TweenService")
local rs = game:GetService("RunService")
local plrs = game:GetService("Players")
local lp = plrs.LocalPlayer
local gui = Instance.new("ScreenGui", game:GetService("CoreGui"))
gui.Name = "K-HUB_V1"

-- INTRO
local introFrame = Instance.new("Frame", gui)
introFrame.Size = UDim2.new(0, 320, 0, 140)
introFrame.Position = UDim2.new(0.5, -160, 0.5, -70)
introFrame.BackgroundColor3 = Color3.fromRGB(12, 12, 12)
introFrame.BorderSizePixel = 0
Instance.new("UICorner", introFrame).CornerRadius = UDim.new(0, 12)

local introTitle = Instance.new("TextLabel", introFrame)
introTitle.Size = UDim2.new(1, 0, 0, 40)
introTitle.Position = UDim2.new(0, 0, 0, 15)
introTitle.Text = "🔥 WELCOME TO K-HUB V1 🔥"
introTitle.TextColor3 = Color3.fromRGB(0, 255, 150)
introTitle.Font = Enum.Font.GothamBold
introTitle.TextSize = 18
introTitle.BackgroundTransparency = 1

local startBtn = Instance.new("TextButton", introFrame)
startBtn.Size = UDim2.new(0, 200, 0, 40)
startBtn.Position = UDim2.new(0.5, -100, 0, 70)
startBtn.Text = "تشغيل السكربت 🚀"
startBtn.BackgroundColor3 = Color3.fromRGB(0, 180, 100)
startBtn.TextColor3 = Color3.new(1, 1, 1)
startBtn.Font = Enum.Font.SourceSansBold
startBtn.TextSize = 16
Instance.new("UICorner", startBtn).CornerRadius = UDim.new(0, 8)

local introSound = Instance.new("Sound", gui)
introSound.SoundId = "rbxassetid://9069609268"
introSound.Volume = 1.5
introSound:Play()

-- MAIN GUI
local main = Instance.new("Frame", gui)
main.Size = UDim2.new(0, 500, 0, 420)
main.Position = UDim2.new(0.5, -250, 1.5, 0)
main.BackgroundColor3 = Color3.fromRGB(15, 15, 15)
main.Visible = false
Instance.new("UICorner", main).CornerRadius = UDim.new(0, 10)

startBtn.MouseButton1Click:Connect(function()
    ts:Create(introFrame, TweenInfo.new(0.3), {Size = UDim2.new(0,0,0,0)}):Play()
    task.wait(0.3)
    introFrame:Destroy()
    main.Visible = true
    ts:Create(main, TweenInfo.new(0.4), {Position = UDim2.new(0.5, -250, 0.5, -210)}):Play()
end)

local side = Instance.new("Frame", main)
side.Size = UDim2.new(0, 110, 1, 0)
side.BackgroundColor3 = Color3.fromRGB(22, 22, 22)
Instance.new("UICorner", side).CornerRadius = UDim.new(0, 10)

local pages = {
    Player = Instance.new("Frame", main),
    ANTI = Instance.new("Frame", main),
    Cars = Instance.new("Frame", main),
    TP = Instance.new("Frame", main),
    Somla = Instance.new("Frame", main)
}

for name, p in pairs(pages) do
    p.Size = UDim2.new(0, 390, 1, 0) p.Position = UDim2.new(0, 110, 0, 0)
    p.BackgroundTransparency = 1 p.Visible = (name == "Player")
end

local function switch(name) for n, p in pairs(pages) do p.Visible = (n == name) end end

local function mkTab(n, y, pageName)
    local b = Instance.new("TextButton", side)
    b.Size = UDim2.new(1, 0, 0, 35) b.Position = UDim2.new(0, 0, 0, y)
    b.Text = n b.BackgroundTransparency = 1 b.TextColor3 = Color3.new(1, 1, 1)
    b.Font = Enum.Font.SourceSansBold b.TextSize = 15
    b.MouseButton1Click:Connect(function() switch(pageName or n) end)
end

mkTab("Player", 10, "Player") 
mkTab("ANTI", 50, "ANTI") 
mkTab("Cars", 90, "Cars") 
mkTab("TP", 130, "TP") 
mkTab("صمله", 170, "Somla")

local function mk(p, t, pos)
    local b = Instance.new("TextButton", p)
    b.Size = UDim2.new(0, 340, 0, 32) b.Position = pos
    b.Text = t b.BackgroundColor3 = Color3.fromRGB(30, 30, 30) b.TextColor3 = Color3.new(1, 1, 1)
    b.Font = Enum.Font.SourceSansSemibold b.TextSize = 14
    Instance.new("UICorner", b).CornerRadius = UDim.new(0, 8)
    return b
end

-- CARS
local carSpeedBtn = mk(pages.Cars, "Car Speed 100: OFF", UDim2.new(0, 25, 0, 10))
local carNitroBtn = mk(pages.Cars, "Car Nitro Push: OFF", UDim2.new(0, 25, 0, 50))
local rainbowCarBtn = mk(pages.Cars, "Rainbow Car: OFF", UDim2.new(0, 25, 0, 90))
local unlockCarsBtn = mk(pages.Cars, "Unlock Gamepass Cars", UDim2.new(0, 25, 0, 130))

local carSpeed, carNitro, rainbowCar = false, false, false

carSpeedBtn.MouseButton1Click:Connect(function()
    carSpeed = not carSpeed
    carSpeedBtn.Text = carSpeed and "Car Speed 100: ON" or "Car Speed 100: OFF"
    task.spawn(function()
        while carSpeed do
            pcall(function()
                local seat = lp.Character.Humanoid.SeatPart
                if seat and seat:IsA("VehicleSeat") then seat.MaxSpeed = 100 end
            end)
            task.wait(0.2)
        end
    end)
end)

carNitroBtn.MouseButton1Click:Connect(function()
    carNitro = not carNitro
    carNitroBtn.Text = carNitro and "Car Nitro Push: ON" or "Car Nitro Push: OFF"
    task.spawn(function()
        while carNitro do
            pcall(function()
                local seat = lp.Character.Humanoid.SeatPart
                if seat and seat:IsA("VehicleSeat") then seat.AssemblyLinearVelocity = seat.CFrame.LookVector * 120 end
            end)
            task.wait(0.1)
        end
    end)
end)

rainbowCarBtn.MouseButton1Click:Connect(function()
    rainbowCar = not rainbowCar
    rainbowCarBtn.Text = rainbowCar and "Rainbow Car: ON" or "Rainbow Car: OFF"
    task.spawn(function()
        while rainbowCar do
            pcall(function()
                local seat = lp.Character.Humanoid.SeatPart
                if seat then
                    local model = seat.Parent
                    while model and not model:IsA("Model") do model = model.Parent end
                    for _, part in pairs(model:GetDescendants()) do
                        if part:IsA("BasePart") and part.Name:lower():find("body") then
                            part.Color = Color3.fromHSV(tick() % 3 / 3, 1, 1)
                        end
                    end
                end
            end)
            task.wait(0.1)
        end
    end)
end)

unlockCarsBtn.MouseButton1Click:Connect(function()
    pcall(function()
        for _, v in pairs(lp:FindFirstChild("PlayerGui"):GetDescendants()) do
            if v:IsA("BoolValue") and (v.Name:find("Vehicle") or v.Name:find("Pass")) then v.Value = true end
        end
    end)
    unlockCarsBtn.Text = "Cars Unlocked! ✅" task.wait(1.5) unlockCarsBtn.Text = "Unlock Gamepass Cars"
end)

-- SOMLA
local targetBox = Instance.new("TextBox", pages.Somla)
targetBox.Size = UDim2.new(0, 340, 0, 32) targetBox.Position = UDim2.new(0, 25, 0, 5)
targetBox.PlaceholderText = "اكتب اسم الخصم هنا..." targetBox.Text = ""
targetBox.BackgroundColor3 = Color3.fromRGB(25, 25, 25) targetBox.TextColor3 = Color3.new(1, 1, 1)
targetBox.Font = Enum.Font.SourceSansSemibold targetBox.TextSize = 14
Instance.new("UICorner", targetBox).CornerRadius = UDim.new(0, 8)

local targetTimerLabel = Instance.new("TextLabel", pages.Somla)
targetTimerLabel.Size = UDim2.new(0, 340, 0, 20) targetTimerLabel.Position = UDim2.new(0, 25, 0, 40)
targetTimerLabel.Text = "وقت الخصم: 00:00 | النقاط: 0" targetTimerLabel.TextColor3 = Color3.fromRGB(0, 255, 120)
targetTimerLabel.BackgroundTransparency = 1 targetTimerLabel.Font = Enum.Font.SourceSansBold targetTimerLabel.TextSize = 14

local bangBtn = mk(pages.Somla, "Bang Player: OFF", UDim2.new(0, 25, 0, 65))
local flingBtn = mk(pages.Somla, "Fling Target (تطير الخصم): OFF", UDim2.new(0, 25, 0, 102))
local viewBtn = mk(pages.Somla, "View Target (مراقبة الخصم): OFF", UDim2.new(0, 25, 0, 139))
local sofaBtn = mk(pages.Somla, "طيران الكنبة (sofa fly)", UDim2.new(0, 25, 0, 176))
local busBtn = mk(pages.Somla, "طيران الباص (bus fly)", UDim2.new(0, 25, 0, 213))
local shipBtn = mk(pages.Somla, "طيران السفينة (ship fly)", UDim2.new(0, 25, 0, 250))

local somlaPoints = 0
local flyVehicle = false
local bangActive, flingActive, viewingTarget = false, false, false
local targetTimeStart = nil

local soundLeave = Instance.new("Sound", gui) soundLeave.SoundId = "rbxassetid://4590662763" soundLeave.Volume = 2
local soundJoin = Instance.new("Sound", gui) soundJoin.SoundId = "rbxassetid://1053296915" soundJoin.Volume = 2

viewBtn.MouseButton1Click:Connect(function()
    viewingTarget = not viewingTarget
    viewBtn.Text = viewingTarget and "View Target: ON" or "View Target: OFF"
    if not viewingTarget then workspace.CurrentCamera.CameraSubject = lp.Character.Humanoid end
end)

task.spawn(function()
    while task.wait(0.5) do
        local nameText = targetBox.Text:lower()
        if nameText ~= "" then
            local found = nil
            for _, p in pairs(plrs:GetPlayers()) do
                if p ~= lp and (p.Name:lower():find(nameText) or p.DisplayName:lower():find(nameText)) then found = p break end
            end
            if found then
                if not targetTimeStart then targetTimeStart = os.time() end
                local elapsed = os.time() - targetTimeStart
                targetTimerLabel.Text = string.format("الخصم (%s): %02d:%02d | النقاط: %d", found.DisplayName, math.floor(elapsed/60), elapsed%60, somlaPoints)
                
                if viewingTarget and found.Character and found.Character:FindFirstChild("Humanoid") then
                    workspace.CurrentCamera.CameraSubject = found.Character.Humanoid
                end
                
                if found.Character and not found.Character:FindFirstChild("TargetHighlight") then
                    local hl = Instance.new("Highlight", found.Character)
                    hl.Name = "TargetHighlight" hl.FillColor = Color3.fromRGB(255, 0, 0) hl.OutlineColor = Color3.fromRGB(255, 255, 255)
                end
            else
                targetTimeStart = nil
                targetTimerLabel.Text = string.format("الخصم غير موجود | النقاط: %d", somlaPoints)
                workspace.CurrentCamera.CameraSubject = lp.Character.Humanoid
            end
        else
            targetTimeStart = nil
            targetTimerLabel.Text = string.format("وقت الخصم: 00:00 | النقاط: %d", somlaPoints)
            if viewingTarget then workspace.CurrentCamera.CameraSubject = lp.Character.Humanoid end
        end
    end
end)

plrs.PlayerRemoving:Connect(function(player)
    local nameText = targetBox.Text:lower()
    if nameText ~= "" and (player.Name:lower():find(nameText) or player.DisplayName:lower():find(nameText)) then
        somlaPoints = somlaPoints + 1 soundLeave:Play()
    end
end)

plrs.PlayerAdded:Connect(function(player)
    local nameText = targetBox.Text:lower()
    if nameText ~= "" and (player.Name:lower():find(nameText) or player.DisplayName:lower():find(nameText)) then soundJoin:Play() end
end)

bangBtn.MouseButton1Click:Connect(function()
    bangActive = not bangActive
    bangBtn.Text = bangActive and "Bang Player: ON" or "Bang Player: OFF"
    if bangActive then
        task.spawn(function()
            while bangActive do
                pcall(function()
                    local nameText = targetBox.Text:lower()
                    for _, p in pairs(plrs:GetPlayers()) do
                        if p ~= lp and (p.Name:lower():find(nameText) or p.DisplayName:lower():find(nameText)) then
                            lp.Character.HumanoidRootPart.CFrame = p.Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, 1.2)
                        end
                    end
                end)
                task.wait(0.03)
            end
        end)
    end
end)

flingBtn.MouseButton1Click:Connect(function()
    flingActive = not flingActive
    flingBtn.Text = flingActive and "Fling Target: ON" or "Fling Target: OFF"
    if flingActive then
        task.spawn(function()
            while flingActive do
                pcall(function()
                    local nameText = targetBox.Text:lower()
                    for _, p in pairs(plrs:GetPlayers()) do
                        if p ~= lp and (p.Name:lower():find(nameText) or p.DisplayName:lower():find(nameText)) then
                            local hrp = lp.Character.HumanoidRootPart
                            hrp.CFrame = p.Character.HumanoidRootPart.CFrame
                            hrp.Velocity = Vector3.new(10000, 10000, 10000)
                            hrp.RotVelocity = Vector3.new(10000, 10000, 10000)
                        end
                    end
                end)
                task.wait(0.02)
            end
        end)
    end
end)

local function toggleVehicleFly(btn, name)
    flyVehicle = not flyVehicle
    btn.Text = flyVehicle and (name .. ": ON") or (name .. ": OFF")
    task.spawn(function()
        while flyVehicle do
            pcall(function()
                local seat = lp.Character.Humanoid.SeatPart
                if seat then
                    local model = seat.Parent
                    while model and not model:IsA("Model") do model = model.Parent end
                    if model then (model.PrimaryPart or seat).AssemblyLinearVelocity = Vector3.new(0, 50, 0) + (workspace.CurrentCamera.CFrame.LookVector * 100) end
                end
            end)
            task.wait(0.05)
        end
    end)
end

sofaBtn.MouseButton1Click:Connect(function() toggleVehicleFly(sofaBtn, "طيران الكنبة") end)
busBtn.MouseButton1Click:Connect(function() toggleVehicleFly(busBtn, "طيران الباص") end)
shipBtn.MouseButton1Click:Connect(function() toggleVehicleFly(shipBtn, "طيران السفينة") end)

-- PLAYER & ANTI & TP
local clean, speed, fly, noclip, antiLag, rainbow, espActive, antiFlingActive = false, false, false, false, false, false, false, false

local sBtn = mk(pages.Player, "speed: off", UDim2.new(0, 25, 0, 10))
local fBtn = mk(pages.Player, "fly: off", UDim2.new(0, 25, 0, 50))
local nBtn = mk(pages.Player, "noclip: off", UDim2.new(0, 25, 0, 90))
local rBtn = mk(pages.Player, "rainbow name: off", UDim2.new(0, 25, 0, 130))
local espBtn = mk(pages.Player, "Player ESP (كاشف أماكن): OFF", UDim2.new(0, 25, 0, 170))

sBtn.MouseButton1Click:Connect(function() speed = not speed sBtn.Text = speed and "speed: on" or "speed: off" lp.Character.Humanoid.WalkSpeed = speed and 50 or 16 end)
fBtn.MouseButton1Click:Connect(function() 
    fly = not fly fBtn.Text = fly and "fly: on" or "fly: off"
    local h = lp.Character.HumanoidRootPart
    if fly then local bv = Instance.new("BodyVelocity", h) bv.Name="K-Fly" bv.MaxForce=Vector3.new(1e5,1e5,1e5) else if h:FindFirstChild("K-Fly") then h["K-Fly"]:Destroy() end end
end)
nBtn.MouseButton1Click:Connect(function() noclip = not noclip nBtn.Text = noclip and "noclip: on" or "noclip: off" end)
rBtn.MouseButton1Click:Connect(function()
    rainbow = not rainbow rBtn.Text = rainbow and "rainbow name: on" or "rainbow name: off"
    if rainbow then
        local bill = Instance.new("BillboardGui", lp.Character.Head) bill.Name = "KiraTag" bill.Size = UDim2.new(0, 200, 0, 50) bill.StudsOffset = Vector3.new(0, 2, 0) bill.AlwaysOnTop = true
        local txt = Instance.new("TextLabel", bill) txt.Size = UDim2.new(1,0,1,0) txt.BackgroundTransparency = 1 txt.Text = "Kira | DRK HUB" txt.Font = Enum.Font.GothamBold txt.TextScaled = true
        task.spawn(function() while rainbow and lp.Character and lp.Character:FindFirstChild("Head") do txt.TextColor3 = Color3.fromHSV(tick() % 5 / 5, 1, 1) task.wait(0.1) end bill:Destroy() end)
    else if lp.Character and lp.Character.Head:FindFirstChild("KiraTag") then lp.Character.Head.KiraTag:Destroy() end end
end)

espBtn.MouseButton1Click:Connect(function()
    espActive = not espActive
    espBtn.Text = espActive and "Player ESP: ON" or "Player ESP: OFF"
    task.spawn(function()
        while espActive do
            for _, plr in pairs(plrs:GetPlayers()) do
                if plr ~= lp and plr.Character and plr.Character:FindFirstChild("Head") then
                    if not plr.Character.Head:FindFirstChild("ESP_Tag") then
                        local bbg = Instance.new("BillboardGui", plr.Character.Head)
                        bbg.Name = "ESP_Tag" bbg.Size = UDim2.new(0, 150, 0, 30) bbg.StudsOffset = Vector3.new(0, 2, 0) bbg.AlwaysOnTop = true
                        local lbl = Instance.new("TextLabel", bbg)
                        lbl.Size = UDim2.new(1,0,1,0) lbl.BackgroundTransparency = 1 lbl.Text = plr.DisplayName
                        lbl.TextColor3 = Color3.fromRGB(255, 255, 0) lbl.Font = Enum.Font.SourceSansBold lbl.TextSize = 14
                    end
                end
            end
            task.wait(1)
        end
        if not espActive then
            for _, plr in pairs(plrs:GetPlayers()) do
                if plr.Character and plr.Character:FindFirstChild("Head") and plr.Character.Head:FindFirstChild("ESP_Tag") then
                    plr.Character.Head.ESP_Tag:Destroy()
                end
            end
        end
    end)
end)

local cBtn = mk(pages.ANTI, "anti prop: off", UDim2.new(0, 25, 0, 10))
local lBtn = mk(pages.ANTI, "anti lag: off", UDim2.new(0, 25, 0, 50))
local aFlingBtn = mk(pages.ANTI, "Anti-Fling (حماية من التطير): OFF", UDim2.new(0, 25, 0, 90))
local rejoinBtn = mk(pages.ANTI, "Rejoin Server (إعادة الاتصال)", UDim2.new(0, 25, 0, 130))

cBtn.MouseButton1Click:Connect(function() clean = not clean cBtn.Text = clean and "anti prop: on" or "anti prop: off" end)
lBtn.MouseButton1Click:Connect(function() antiLag = not antiLag lBtn.Text = antiLag and "anti lag: on" or "anti lag: off" end)
aFlingBtn.MouseButton1Click:Connect(function() antiFlingActive = not antiFlingActive aFlingBtn.Text = antiFlingActive and "Anti-Fling: ON" or "Anti-Fling: OFF" end)
rejoinBtn.MouseButton1Click:Connect(function() game:GetService("TeleportService"):TeleportToPlaceInstance(game.PlaceId, game.JobId, lp) end)

local function tp(cf) if lp.Character and lp.Character:FindFirstChild("HumanoidRootPart") then lp.Character.HumanoidRootPart.CFrame = cf end end
mk(pages.TP, "Spawn", UDim2.new(0, 25, 0, 10)).MouseButton1Click:Connect(function() tp(CFrame.new(0, 10, 0)) end)
mk(pages.TP, "Hospital", UDim2.new(0, 25, 0, 50)).MouseButton1Click:Connect(function() tp(CFrame.new(200, 10, 200)) end)
mk(pages.TP, "Police", UDim2.new(0, 25, 0, 90)).MouseButton1Click:Connect(function() tp(CFrame.new(-150, 10, 50)) end)
mk(pages.TP, "Bank", UDim2.new(0, 25, 0, 130)).MouseButton1Click:Connect(function() tp(CFrame.new(300, 10, -100)) end)

-- FLOATING TOGGLE
local opn = Instance.new("ImageButton", gui)
opn.Size = UDim2.new(0, 50, 0, 50) opn.Position = UDim2.new(0, 20, 0.5, 0)
opn.Image = "rbxassetid://129517373389346" opn.Draggable = true
opn.MouseButton1Click:Connect(function()
    local target = main.Visible and UDim2.new(0.5, -250, 1.5, 0) or UDim2.new(0.5, -250, 0.5, -210)
    if not main.Visible then main.Visible = true end
    ts:Create(main, TweenInfo.new(0.3), {Position = target}):Play()
    if target.Y.Scale > 1 then task.wait(0.3) main.Visible = false end
end)

rs.Stepped:Connect(function()
    if noclip and lp.Character then for _,p in pairs(lp.Character:GetChildren()) do if p:IsA("BasePart") then p.CanCollide = false end end end
    if antiLag then for _,v in pairs(workspace:GetDescendants()) do if v:IsA("ParticleEmitter") or v:IsA("Sparkles") or v:IsA("Decal") then v:Destroy() end end end
    if antiFlingActive and lp.Character and lp.Character:FindFirstChild("HumanoidRootPart") then
        lp.Character.HumanoidRootPart.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
    end
end)

How to run these Brookhaven RP scripts

  1. 1. Install an executor from the executor list. Delta or CodeX on mobile, Swift or Wave on PC.
  2. 2. Join Brookhaven RP and wait until you are fully loaded into the server.
  3. 3. Attach the executor, paste one loader above, press Execute.
  4. 4. The in-game menu opens — usually on the left edge or under a small circle. Toggle features there.

if it fails

  • Nothing happens. The loader 404s or the game renamed what it hooks. Check the status chip — a dead one will not come back.
  • An error naming a function. Your executor is missing a call listed under needs. Switch executor; the error is not the script's fault.
  • Menu opens, nothing works. The game shipped an update after the loader did. Compare the update date in the sidebar against the loader-changed line.
  • Key page loops. Clear the site cookies and use the loader's own key link, not one from a repost.

is it safe

Loaders here run whatever the developer's host serves, at the URL printed under each block. Nothing is repackaged — the host is shown so you can see when a loader moved off GitHub onto a stranger's domain.

The realistic risk is not a ban wave, it is a key logger bolted onto an otherwise fine hub. Any loader that asks for your Roblox cookie outside the executor is doing its own login flow; check what host it is on.

Brookhaven RP — questions

? Are Brookhaven scripts detectable?

There is no meaningful anti-cheat in Brookhaven — the risk is social, not technical. Other players can see kill-all fire and report you, and Roblox's own detection has never concentrated on roleplay games.

? Which Brookhaven script has admin commands?

SP Hub and Hexagon both ship an admin panel with kill all, bring and fling. Both are keyless and near the top of the page.

? Why does a Brookhaven hub fail to load?

Almost always the executor, not the script. These hubs are GUI-heavy and need a decent loadstring implementation — a low-coverage executor like Solara will attach and then die on the first require.

Other games

All 19 games with scripts · 410 loaders indexed ... what changed this week