if not game.Players.LocalPlayer.PlayerScripts:FindFirstChild("Loaded") then local data = Instance.new("NumberValue") data.Name = "Loaded" data.Parent = game.Players.LocalPlayer.PlayerScripts print("Brookhaven Script Loaded") local Rayfield = loadstring(game:HttpGet("https://sirius.menu/rayfield"))() local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local ReplicatedStorage = game:GetService("ReplicatedStorage") local player = Players.LocalPlayer local character = player.Character or player.CharacterAdded:Wait() local humanoid = character:WaitForChild("Humanoid") local humanoidRootPart = character:WaitForChild("HumanoidRootPart") local noclip = false local fly = false local speed = 16 local jumppower = 50 local infjump = false local esp = false local clicktp = false local gunmods = false local autorespawn = false local Window = Rayfield:CreateWindow({ Name = "Xen Hub | Brookhaven", LoadingTitle = "Xen Hub Loading...", LoadingSubtitle = "Enhanced Brookhaven Experience", ConfigurationSaving = { Enabled = true, FolderName = "XenHub", FileName = "Brookhaven" }, Discord = { Enabled = false, Invite = "", RememberJoins = true }, KeySystem = false }) Rayfield:Notify({ Title = "Welcome", Content = "Brookhaven script loaded successfully!", Duration = 3 }) local MovementTab = Window:CreateTab("Movement", 4483362458) local PlayerTab = Window:CreateTab("Player", 4483362458) local WeaponsTab = Window:CreateTab("Weapons", 4483362458) local TeleportTab = Window:CreateTab("Teleport", 4483362458) local VehiclesTab = Window:CreateTab("Vehicles", 4483362458) local MiscTab = Window:CreateTab("Misc", 4483362458) local teleportLocations = { ["Hospital"] = CFrame.new(714, 23, -970), ["Police Station"] = CFrame.new(-267, 22, -1472), ["Fire Station"] = CFrame.new(-857, 22, -1470), ["School"] = CFrame.new(-653, 23, -1667), ["Airport"] = CFrame.new(-2471, 16, 1770), ["Bank"] = CFrame.new(-441, 40, -286), ["Church"] = CFrame.new(736, 66, -1061), ["Movie Theater"] = CFrame.new(343, 17, -1227), ["Gas Station"] = CFrame.new(-533, 5, -546), ["Grocery Store"] = CFrame.new(-440, 6, -148), ["Dealership"] = CFrame.new(-1435, 4, -707), ["Salon"] = CFrame.new(-206, 5, -98), ["Ice Cream Shop"] = CFrame.new(-894, 5, -71), ["Agency"] = CFrame.new(-1773, 3, 1125), ["Jail"] = CFrame.new(-919, 96, -2379), ["Park"] = CFrame.new(-76, 4, 94), ["Mall"] = CFrame.new(-424, 22, -298), ["Beach"] = CFrame.new(-1847, 3, -1044), ["Spawn"] = CFrame.new(-119, 4, -89) } local houseLocations = { ["Starter House"] = CFrame.new(-119, 4, -89), ["Modern House"] = CFrame.new(-319, 4, -225), ["Family House"] = CFrame.new(-745, 4, -225), ["Mansion"] = CFrame.new(-1200, 4, -400), ["Beach House"] = CFrame.new(-1847, 4, -800) } MovementTab:CreateSlider({ Name = "Speed", Range = {16, 500}, Increment = 1, Suffix = "Speed", CurrentValue = 16, Flag = "UserSpeed", Callback = function(Value) speed = Value if player.Character and player.Character:FindFirstChild("Humanoid") then player.Character.Humanoid.WalkSpeed = Value end end, }) local Toggle = MovementTab:CreateToggle({ Name = "Noclip", CurrentValue = false, Flag = "Noclipping", Callback = function(Value) noclip = Value end, }) local Toggle = MovementTab:CreateToggle({ Name = "Fly", CurrentValue = false, Flag = "Flying", Callback = function(Value) fly = Value if Value then local bodyVelocity = Instance.new("BodyVelocity") bodyVelocity.MaxForce = Vector3.new(9e4, 9e4, 9e4) bodyVelocity.Velocity = Vector3.new(0, 0, 0) bodyVelocity.Parent = player.Character.HumanoidRootPart player.Character.Humanoid.PlatformStand = true else if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then for _, obj in pairs(player.Character.HumanoidRootPart:GetChildren()) do if obj:IsA("BodyVelocity") then obj:Destroy() end end player.Character.Humanoid.PlatformStand = false end end end, }) MovementTab:CreateSlider({ Name = "Jump Power", Range = {50, 500}, Increment = 1, Suffix = "Power", CurrentValue = 50, Flag = "JumpPower", Callback = function(Value) jumppower = Value if player.Character and player.Character:FindFirstChild("Humanoid") then player.Character.Humanoid.JumpPower = Value end end, }) local Toggle = MovementTab:CreateToggle({ Name = "Infinite Jump", CurrentValue = false, Flag = "InfJump", Callback = function(Value) infjump = Value end, }) PlayerTab:CreateButton({ Name = "Reset Character", Callback = function() if player.Character then player.Character:BreakJoints() end end }) PlayerTab:CreateButton({ Name = "Respawn", Callback = function() player:LoadCharacter() end }) local Toggle = PlayerTab:CreateToggle({ Name = "Auto Respawn", CurrentValue = false, Flag = "AutoRespawn", Callback = function(Value) autorespawn = Value end, }) local Toggle = PlayerTab:CreateToggle({ Name = "Click Teleport", CurrentValue = false, Flag = "ClickTeleport", Callback = function(Value) clicktp = Value if Value then Rayfield:Notify({ Title = "Click Teleport", Content = "Hold CTRL and click to teleport", Duration = 3 }) end end, }) local Toggle = PlayerTab:CreateToggle({ Name = "Player ESP", CurrentValue = false, Flag = "PlayerESP", Callback = function(Value) esp = Value if Value then for _, p in pairs(Players:GetPlayers()) do if p ~= player and p.Character then local highlight = Instance.new("Highlight") highlight.FillColor = Color3.new(1, 0, 0) highlight.OutlineColor = Color3.new(1, 1, 1) highlight.Parent = p.Character end end else for _, p in pairs(Players:GetPlayers()) do if p.Character then local highlight = p.Character:FindFirstChild("Highlight") if highlight then highlight:Destroy() end end end end end, }) local Toggle = WeaponsTab:CreateToggle({ Name = "Gun Modifications", CurrentValue = false, Flag = "GunMods", Callback = function(Value) gunmods = Value if Value then Rayfield:Notify({ Title = "Gun Mods Active", Content = "Guns now deal lethal damage", Duration = 3 }) end end, }) WeaponsTab:CreateButton({ Name = "Kill All Players", Callback = function() for _, p in pairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("Humanoid") then p.Character.Humanoid.Health = 0 end end end }) for locationName, cframe in pairs(teleportLocations) do TeleportTab:CreateButton({ Name = "TP to " .. locationName, Callback = function() if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then local tween = TweenService:Create( player.Character.HumanoidRootPart, TweenInfo.new(1.5, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {CFrame = cframe} ) tween:Play() Rayfield:Notify({ Title = "Teleporting", Content = "Going to " .. locationName, Duration = 2 }) end end, }) end TeleportTab:CreateButton({ Name = "TP to Random Player", Callback = function() local players = {} for _, p in pairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then table.insert(players, p) end end if #players > 0 then local randomPlayer = players[math.random(1, #players)] if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then player.Character.HumanoidRootPart.CFrame = randomPlayer.Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, 5) Rayfield:Notify({ Title = "Teleporting", Content = "Going to " .. randomPlayer.DisplayName, Duration = 2 }) end else Rayfield:Notify({ Title = "No Players", Content = "No players found to teleport to", Duration = 2 }) end end, }) for houseName, cframe in pairs(houseLocations) do TeleportTab:CreateButton({ Name = "TP to " .. houseName, Callback = function() if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then local tween = TweenService:Create( player.Character.HumanoidRootPart, TweenInfo.new(1.5, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {CFrame = cframe} ) tween:Play() Rayfield:Notify({ Title = "Teleporting", Content = "Going to " .. houseName, Duration = 2 }) end end, }) end VehiclesTab:CreateButton({ Name = "Spawn Car", Callback = function() local args = { [1] = "spawnVehicle", [2] = "Car" } if ReplicatedStorage:FindFirstChild("RE") then ReplicatedStorage.RE:FireServer(unpack(args)) end end, }) VehiclesTab:CreateButton({ Name = "Spawn Helicopter", Callback = function() local args = { [1] = "spawnVehicle", [2] = "Helicopter" } if ReplicatedStorage:FindFirstChild("RE") then ReplicatedStorage.RE:FireServer(unpack(args)) end end, }) VehiclesTab:CreateButton({ Name = "Remove All Vehicles", Callback = function() local args = { [1] = "removeVehicles" } if ReplicatedStorage:FindFirstChild("RE") then ReplicatedStorage.RE:FireServer(unpack(args)) end end, }) MiscTab:CreateButton({ Name = "Remove All GUIs", Callback = function() for _, gui in pairs(player.PlayerGui:GetChildren()) do if gui.Name ~= "Chat" and gui.Name ~= "XenHub" then gui:Destroy() end end Rayfield:Notify({ Title = "GUIs Removed", Content = "All GUIs except chat removed", Duration = 2 }) end, }) MiscTab:CreateButton({ Name = "Rejoin Server", Callback = function() game:GetService("TeleportService"):Teleport(game.PlaceId, player) end, }) local function renderLoop() local char = player.Character if not char then return end for _, v in pairs(char:GetDescendants()) do if v:IsA("BasePart") then if noclip then v.CanCollide = false end end end if char:FindFirstChild("Humanoid") then char.Humanoid.WalkSpeed = speed char.Humanoid.JumpPower = jumppower end if fly and char:FindFirstChild("HumanoidRootPart") then local bodyVel = char.HumanoidRootPart:FindFirstChild("BodyVelocity") if bodyVel then local camera = workspace.CurrentCamera local moveVector = Vector3.new(0, 0, 0) if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveVector = moveVector + camera.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveVector = moveVector - camera.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveVector = moveVector - camera.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveVector = moveVector + camera.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.Space) then moveVector = moveVector + Vector3.new(0, 1, 0) end if UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then moveVector = moveVector - Vector3.new(0, 1, 0) end if moveVector ~= Vector3.new(0, 0, 0) then bodyVel.Velocity = moveVector.Unit * speed else bodyVel.Velocity = Vector3.new(0, 0, 0) end end end end RunService.RenderStepped:Connect(renderLoop) UserInputService.JumpRequest:Connect(function() if infjump and player.Character and player.Character:FindFirstChild("Humanoid") then player.Character.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end) player:GetMouse().Button1Down:Connect(function() if clicktp and UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then local hit = player:GetMouse().Hit if hit and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then player.Character.HumanoidRootPart.CFrame = CFrame.new(hit.Position + Vector3.new(0, 3, 0)) end end end) player.CharacterAdded:Connect(function(char) character = char humanoid = char:WaitForChild("Humanoid") humanoidRootPart = char:WaitForChild("HumanoidRootPart") if autorespawn then humanoid.Died:Connect(function() wait(0.5) player:LoadCharacter() end) end if gunmods then for _, tool in pairs(char:GetChildren()) do if tool:IsA("Tool") and (tool.Name:lower():find("gun") or tool.Name:lower():find("pistol")) then tool.Activated:Connect(function() for _, p in pairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("Humanoid") then local distance = (p.Character.HumanoidRootPart.Position - humanoidRootPart.Position).Magnitude if distance <= 100 then p.Character.Humanoid.Health = 0 end end end end) end end end end) Players.PlayerAdded:Connect(function(p) p.CharacterAdded:Connect(function() wait(1) if esp and p ~= player and p.Character then local highlight = Instance.new("Highlight") highlight.FillColor = Color3.new(1, 0, 0) highlight.OutlineColor = Color3.new(1, 1, 1) highlight.Parent = p.Character end end) end) end