-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] --[[ ██████╗ █████╗ ██████╗ ██████╗ ███╗ ██╗ ███████╗██╗ ██╗██████╗ ██████╗████████╗ ██╔══██╗██╔══██╗██╔════╝██╔═══██╗████╗ ██║ ██╔════╝██║ ██║██╔══██╗██╔════╝╚══██╔══╝ ██████╔╝███████║██║ ██║ ██║██╔██╗ ██║ ███████╗██║ ██║██████╔╝██║ ██║ ██╔══██╗██╔══██║██║ ██║ ██║██║╚██╗██║ ╚════██║██║ ██║██╔══██╗██║ ██║ ██████╔╝██║ ██║╚██████╗╚██████╔╝██║ ╚████║ ███████║╚██████╔╝██║ ██║╚██████╗ ██║ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ make by tiktok huy.nguyn.bacon • Bacon Script Theme ]] if not game:IsLoaded() then game.Loaded:Wait() end -- Roblox Services local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local ReplicatedStorage = game:GetService("ReplicatedStorage") local CoreGui = game:GetService("CoreGui") local Lighting = game:GetService("Lighting") local StarterGui = game:GetService("StarterGui") local LocalPlayer = Players.LocalPlayer -- Safe Startup Notification task.spawn(function() pcall(function() StarterGui:SetCore("SendNotification", { Title = "BACON SCRIPT", Text = "Script is loading, please wait...", Icon = "rbxassetid://6023426926", Duration = 2 }) task.wait(2) StarterGui:SetCore("SendNotification", { Title = "SUCCESS ✔", Text = "Premium Status: ACTIVE ⚡\nWelcome NGUYN.HUY.BACON!", Icon = "rbxassetid://6023456100", Duration = 3 }) end) end) -- Global Variables getgenv().AutoFarmActive = false getgenv().NoclipActive = false local IsLagging = false local SAFE_FARM_POSITION = Vector3.new(0, 3000, 0) -- Evade Emote IDs local ID_BROOM = "11254311029" local ID_ROCKIN = "12686575749" -- Safe Parent for Executor local function GetSafeParent() if gethui then local success, parent = pcall(gethui) if success and parent then return parent end end if CoreGui then local success, parent = pcall(function() return CoreGui end) if success and parent then return parent end end return LocalPlayer:WaitForChild("PlayerGui") end local ParentTarget = GetSafeParent() -- Remove Old GUI for _, child in pairs(ParentTarget:GetChildren()) do if child.Name == "BaconScriptGUI" then pcall(function() child:Destroy() end) end end -- Anti-AFK pcall(function() LocalPlayer.Idled:Connect(function() local VirtualUser = game:GetService("VirtualUser") VirtualUser:CaptureController() VirtualUser:ClickButton2(Vector2.new(0, 0)) end) end) -- Create ScreenGui local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "BaconScriptGUI" ScreenGui.ResetOnSpawn = false ScreenGui.IgnoreGuiInset = true if syn and syn.protect_gui then pcall(function() syn.protect_gui(ScreenGui) end) elseif protectgui then pcall(function() protectgui(ScreenGui) end) end ScreenGui.Parent = ParentTarget -- Main Frame local MainFrame = Instance.new("Frame") MainFrame.Name = "MainFrame" MainFrame.Size = UDim2.new(0, 310, 0, 400) MainFrame.Position = UDim2.new(0.5, -155, 0.5, -200) MainFrame.BackgroundColor3 = Color3.fromRGB(10, 10, 12) MainFrame.BorderSizePixel = 0 MainFrame.Active = true MainFrame.ClipsDescendants = true MainFrame.BackgroundTransparency = 1 MainFrame.Parent = ScreenGui local MainCorner = Instance.new("UICorner") MainCorner.CornerRadius = UDim.new(0, 14) MainCorner.Parent = MainFrame local MainStroke = Instance.new("UIStroke") MainStroke.Color = Color3.fromRGB(0, 255, 140) MainStroke.Thickness = 0 MainStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border MainStroke.Transparency = 1 MainStroke.Parent = MainFrame -- Title Bar local TitleBar = Instance.new("Frame") TitleBar.Name = "TitleBar" TitleBar.Size = UDim2.new(1, 0, 0, 45) TitleBar.BackgroundTransparency = 1 TitleBar.Parent = MainFrame local Title = Instance.new("TextLabel") Title.Name = "Title" Title.Size = UDim2.new(1, -50, 1, 0) Title.Position = UDim2.new(0, 18, 0, 2) Title.BackgroundTransparency = 1 Title.Text = "BACON SCRIPT" Title.RichText = true Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.TextSize = 18 Title.Font = Enum.Font.GothamBold Title.TextXAlignment = Enum.TextXAlignment.Left Title.TextTransparency = 1 Title.Parent = TitleBar -- Close Button local CloseBtn = Instance.new("TextButton") CloseBtn.Name = "CloseButton" CloseBtn.Size = UDim2.new(0, 26, 0, 26) CloseBtn.Position = UDim2.new(1, -38, 0, 10) CloseBtn.BackgroundColor3 = Color3.fromRGB(200, 40, 40) CloseBtn.BackgroundTransparency = 1 CloseBtn.BorderSizePixel = 0 CloseBtn.Text = "✕" CloseBtn.TextColor3 = Color3.fromRGB(255, 255, 255) CloseBtn.TextSize = 14 CloseBtn.Font = Enum.Font.GothamBold CloseBtn.TextTransparency = 1 CloseBtn.AutoButtonColor = false CloseBtn.Parent = TitleBar local CloseCorner = Instance.new("UICorner") CloseCorner.CornerRadius = UDim.new(0, 6) CloseCorner.Parent = CloseBtn CloseBtn.MouseEnter:Connect(function() TweenService:Create(CloseBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(255, 80, 80)}):Play() end) CloseBtn.MouseLeave:Connect(function() TweenService:Create(CloseBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(200, 40, 40)}):Play() end) -- Restore Physics Function local function ForceRestorePhysics() pcall(function() local Char = LocalPlayer.Character local Humanoid = Char and Char:FindFirstChildOfClass("Humanoid") if Humanoid then Humanoid.AutoRotate = true end if Char then for _, part in pairs(Char:GetChildren()) do if part:IsA("BasePart") then part.CanCollide = true end end end end) end CloseBtn.MouseButton1Click:Connect(function() getgenv().AutoFarmActive = false getgenv().NoclipActive = false IsLagging = false ForceRestorePhysics() TweenService:Create(MainStroke, TweenInfo.new(0.2), {Transparency = 1}):Play() local closeTween = TweenService:Create(MainFrame, TweenInfo.new(0.25, Enum.EasingStyle.Back, Enum.EasingDirection.In), { Size = UDim2.new(0, 0, 0, 0), BackgroundTransparency = 1 }) closeTween:Play() closeTween.Completed:Wait() ScreenGui:Destroy() end) local BindInfo = Instance.new("TextLabel") BindInfo.Name = "BindInfo" BindInfo.Size = UDim2.new(1, -30, 0, 15) BindInfo.Position = UDim2.new(0, 18, 0, 36) BindInfo.BackgroundTransparency = 1 BindInfo.Text = "[V] Toggle | [Hold Q] Lag | [5] Broom | [6] Rockin" BindInfo.TextColor3 = Color3.fromRGB(120, 120, 130) BindInfo.TextSize = 8 BindInfo.Font = Enum.Font.GothamMedium BindInfo.TextXAlignment = Enum.TextXAlignment.Left BindInfo.TextTransparency = 1 BindInfo.Parent = MainFrame local Divider = Instance.new("Frame") Divider.Name = "Divider" Divider.Size = UDim2.new(1, -36, 0, 1) Divider.Position = UDim2.new(0, 18, 0, 56) Divider.BackgroundColor3 = Color3.fromRGB(25, 25, 30) Divider.BorderSizePixel = 0 Divider.BackgroundTransparency = 1 Divider.Parent = MainFrame -- Toggle Button Constructor local function CreateToggleButton(name, defaultState, yPos, callback) local btn = Instance.new("TextButton") btn.Name = name .. "Button" btn.Size = UDim2.new(1, -36, 0, 36) btn.Position = UDim2.new(0, 18, 0, yPos) btn.BackgroundColor3 = defaultState and Color3.fromRGB(8, 26, 18) or Color3.fromRGB(16, 16, 20) btn.BorderSizePixel = 0 btn.Text = "" btn.AutoButtonColor = false btn.BackgroundTransparency = 1 btn.Parent = MainFrame local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 8) corner.Parent = btn local stroke = Instance.new("UIStroke") stroke.Color = defaultState and Color3.fromRGB(0, 255, 140) or Color3.fromRGB(28, 28, 35) stroke.Thickness = 1.2 stroke.Transparency = 1 stroke.Parent = btn local activeState = defaultState local label = Instance.new("TextLabel") label.Size = UDim2.new(1, -15, 1, 0) label.Position = UDim2.new(0, 12, 0, 0) label.BackgroundTransparency = 1 label.Text = name .. " [ " .. (activeState and "ON" or "OFF") .. " ]" label.TextColor3 = activeState and Color3.fromRGB(0, 255, 140) or Color3.fromRGB(120, 120, 130) label.TextSize = 12 label.Font = Enum.Font.GothamBold label.TextXAlignment = Enum.TextXAlignment.Left label.TextTransparency = 1 label.Parent = btn local function updateVisual(state) activeState = state if activeState then TweenService:Create(btn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(8, 26, 18)}):Play() TweenService:Create(stroke, TweenInfo.new(0.2), {Color = Color3.fromRGB(0, 255, 140)}):Play() label.TextColor3 = Color3.fromRGB(0, 255, 140) label.Text = name .. " [ ON ]" else TweenService:Create(btn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(16, 16, 20)}):Play() TweenService:Create(stroke, TweenInfo.new(0.2), {Color = Color3.fromRGB(28, 28, 35)}):Play() label.TextColor3 = Color3.fromRGB(120, 120, 130) label.Text = name .. " [ OFF ]" end end btn.MouseButton1Click:Connect(function() updateVisual(not activeState) callback(activeState) end) return btn, stroke, label, updateVisual end -- Action Button Constructor local function CreateActionButton(name, yPos, callback) local btn = Instance.new("TextButton") btn.Name = name .. "Button" btn.Size = UDim2.new(1, -36, 0, 36) btn.Position = UDim2.new(0, 18, 0, yPos) btn.BackgroundColor3 = Color3.fromRGB(16, 16, 20) btn.BorderSizePixel = 0 btn.Text = "" btn.AutoButtonColor = false btn.BackgroundTransparency = 1 btn.Parent = MainFrame local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 8) corner.Parent = btn local stroke = Instance.new("UIStroke") stroke.Color = Color3.fromRGB(28, 28, 35) stroke.Thickness = 1.2 stroke.Transparency = 1 stroke.Parent = btn local label = Instance.new("TextLabel") label.Size = UDim2.new(1, -15, 1, 0) label.Position = UDim2.new(0, 12, 0, 0) label.BackgroundTransparency = 1 label.Text = name label.TextColor3 = Color3.fromRGB(0, 255, 140) label.TextSize = 12 label.Font = Enum.Font.GothamBold label.TextXAlignment = Enum.TextXAlignment.Left label.TextTransparency = 1 label.Parent = btn btn.MouseButton1Click:Connect(function() TweenService:Create(btn, TweenInfo.new(0.1), {BackgroundColor3 = Color3.fromRGB(8, 26, 18)}):Play() task.delay(0.15, function() TweenService:Create(btn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(16, 16, 20)}):Play() end) callback() end) return btn, stroke, label end -- Initialize Buttons (English UI) local bhopEnabled = false local bhopBtn, bhopStroke, bhopLabel = CreateToggleButton("BUNNYHOP", bhopEnabled, 64, function(state) bhopEnabled = state end) local farmBtn, farmStroke, farmLabel = CreateToggleButton("AUTO FARM (3000M)", getgenv().AutoFarmActive, 106, function(state) getgenv().AutoFarmActive = state end) local noclipBtn, noclipStroke, noclipLabel = CreateToggleButton("NOCLIP (HEAD & LEGS)", getgenv().NoclipActive, 148, function(state) getgenv().NoclipActive = state if not state then ForceRestorePhysics() end end) local lagBtn, lagStroke, lagLabel = CreateToggleButton("LAG SWITCH [HOLD Q]", false, 190, function(state) end) -- Light Boost Button local lightBoostBtn, lightBoostStroke, lightBoostLabel = CreateActionButton("LIGHT BOOST (MAX BRIGHTNESS)", 232, function() pcall(function() Lighting.GlobalShadows = false Lighting.Brightness = 3 Lighting.ClockTime = 14 Lighting.FogEnd = 9e9 for _, v in pairs(Lighting:GetChildren()) do if v:IsA("Atmosphere") then v.Density = 0.1 elseif v:IsA("PostEffect") then v.Enabled = false end end lightBoostLabel.Text = "LIGHT BOOST [ MAXIMUM ]" task.delay(2.5, function() lightBoostLabel.Text = "LIGHT BOOST (MAX BRIGHTNESS)" end) end) end) -- Fix Lag Button local fixLagBtn, fixLagStroke, fixLagLabel = CreateActionButton("FIX LAG (BOOST FPS)", 274, function() pcall(function() Lighting.GlobalShadows = false Lighting.FogEnd = 9e9 Lighting.Brightness = 1 Lighting.Technology = Enum.Technology.Compatibility for _, v in pairs(Lighting:GetChildren()) do if v:IsA("PostEffect") or v:IsA("Atmosphere") or v:IsA("Sky") or v:IsA("Clouds") or v:IsA("SunRaysEffect") then v:Destroy() end end for _, obj in pairs(workspace:GetDescendants()) do if obj:IsA("BasePart") then obj.Material = Enum.Material.SmoothPlastic obj.Reflectance = 0 obj.CastShadow = false elseif obj:IsA("Decal") or obj:IsA("Texture") then obj:Destroy() elseif obj:IsA("ParticleEmitter") or obj:IsA("Trail") or obj:IsA("Fire") or obj:IsA("Smoke") or obj:IsA("Sparkles") or obj:IsA("Beam") then obj:Destroy() elseif obj:IsA("MeshPart") then obj.TextureID = "" end end fixLagLabel.Text = "FIX LAG [ OPTIMIZED ]" task.delay(2.5, function() fixLagLabel.Text = "FIX LAG (BOOST FPS)" end) end) end) local ExtraFeaturesInfo = Instance.new("TextLabel") ExtraFeaturesInfo.Name = "ExtraFeaturesInfo" ExtraFeaturesInfo.Size = UDim2.new(1, -36, 0, 30) ExtraFeaturesInfo.Position = UDim2.new(0, 18, 0, 320) ExtraFeaturesInfo.BackgroundTransparency = 1 ExtraFeaturesInfo.Text = "[5] Broom of Doom | [6] Rockin' Stride" ExtraFeaturesInfo.TextColor3 = Color3.fromRGB(0, 255, 140) ExtraFeaturesInfo.TextSize = 10 ExtraFeaturesInfo.Font = Enum.Font.GothamBold ExtraFeaturesInfo.TextXAlignment = Enum.TextXAlignment.Left ExtraFeaturesInfo.TextTransparency = 1 ExtraFeaturesInfo.Parent = MainFrame -- Dragging Functionality local dragging, dragStart, startPos TitleBar.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) UserInputService.InputChanged:Connect(function(input) if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) 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) -- Intro Animation task.spawn(function() task.wait(0.1) TweenService:Create(MainFrame, TweenInfo.new(0.6, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Position = UDim2.new(0.5, -155, 0.5, -200), BackgroundTransparency = 0 }):Play() TweenService:Create(MainStroke, TweenInfo.new(0.4), {Thickness = 1.5, Transparency = 0}):Play() TweenService:Create(Title, TweenInfo.new(0.4), {TextTransparency = 0}):Play() TweenService:Create(CloseBtn, TweenInfo.new(0.4), {TextTransparency = 0, BackgroundTransparency = 0}):Play() TweenService:Create(BindInfo, TweenInfo.new(0.4), {TextTransparency = 0}):Play() TweenService:Create(Divider, TweenInfo.new(0.4), {BackgroundTransparency = 0}):Play() for _, ui in ipairs({ {bhopBtn, bhopStroke, bhopLabel}, {farmBtn, farmStroke, farmLabel}, {noclipBtn, noclipStroke, noclipLabel}, {lagBtn, lagStroke, lagLabel}, {lightBoostBtn, lightBoostStroke, lightBoostLabel}, {fixLagBtn, fixLagStroke, fixLagLabel} }) do TweenService:Create(ui[1], TweenInfo.new(0.3), {BackgroundTransparency = 0}):Play() TweenService:Create(ui[2], TweenInfo.new(0.3), {Transparency = 0}):Play() if ui[3] then TweenService:Create(ui[3], TweenInfo.new(0.3), {TextTransparency = 0}):Play() end end TweenService:Create(ExtraFeaturesInfo, TweenInfo.new(0.4), {TextTransparency = 0}):Play() end) -- Bunnyhop RunService.PreRender:Connect(function() if not bhopEnabled or not ScreenGui.Parent then return end local character = LocalPlayer.Character if not character then return end local humanoid = character:FindFirstChildOfClass("Humanoid") local rootPart = character:FindFirstChild("HumanoidRootPart") if humanoid and rootPart and UserInputService:IsKeyDown(Enum.KeyCode.Space) then local hipHeight = humanoid.HipHeight local detectionRange = (hipHeight > 0 and (hipHeight + 2.0)) or 3.3 local params = RaycastParams.new() params.FilterType = Enum.RaycastFilterType.Exclude params.FilterDescendantsInstances = {character} local raycastResult = workspace:Raycast(rootPart.Position, Vector3.new(0, -detectionRange, 0), params) if raycastResult or humanoid.FloorMaterial ~= Enum.Material.Air then if rootPart.AssemblyLinearVelocity.Y <= 2 then humanoid.Jump = true humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end end end) -- Auto Farm (3000m) RunService.Heartbeat:Connect(function() if getgenv().AutoFarmActive and ScreenGui.Parent then pcall(function() local Char = LocalPlayer.Character local RootPart = Char and Char:FindFirstChild("HumanoidRootPart") if RootPart then RootPart.CFrame = CFrame.new(SAFE_FARM_POSITION) RootPart.AssemblyLinearVelocity = Vector3.new(0, 0, 0) RootPart.AssemblyAngularVelocity = Vector3.new(0, 0, 0) end end) end end) -- Noclip (Head & Legs) RunService.Stepped:Connect(function() if getgenv().NoclipActive and ScreenGui.Parent then pcall(function() local Char = LocalPlayer.Character if Char then local ignoredParts = { "Head", "LeftLeg", "RightLeg", "LeftUpperLeg", "RightUpperLeg", "LeftLowerLeg", "RightLowerLeg", "LeftFoot", "RightFoot" } for _, partName in ipairs(ignoredParts) do local part = Char:FindFirstChild(partName) if part and part:IsA("BasePart") then part.CanCollide = false end end end end) end end) -- Lag Switch Loop (Hold Q) task.spawn(function() while true do if not ScreenGui.Parent then break end if IsLagging then local startTime = os.clock() while (os.clock() - startTime) < 0.15 do for i = 1, 100000 do local _ = math.sin(i) * math.cos(i) end end end task.wait() end end) local function SetLagState(state) IsLagging = state pcall(function() if state then lagLabel.Text = "LAG SWITCH [ LAGGING ]" lagLabel.TextColor3 = Color3.fromRGB(255, 60, 60) else lagLabel.Text = "LAG SWITCH [HOLD Q]" lagLabel.TextColor3 = Color3.fromRGB(120, 120, 130) end end) end -- Visual Emote Evade local function PlayEvadeEmote(targetAnimID) if not ScreenGui.Parent then return end pcall(function() local Char = LocalPlayer.Character if not Char then return end local Humanoid = Char:FindFirstChildOfClass("Humanoid") local Animator = Humanoid and Humanoid:FindFirstChildOfClass("Animator") if Animator then local animationObject = Instance.new("Animation") animationObject.AnimationId = "rbxassetid://" .. tostring(targetAnimID) for _, track in ipairs(Animator:GetPlayingAnimationTracks()) do if track.Animation.AnimationId:find("rbxassetid://") then track:Stop(0.1) end end local loadedTrack = Animator:LoadAnimation(animationObject) loadedTrack.Priority = Enum.AnimationPriority.Action4 loadedTrack:Play() end local chatEvent = ReplicatedStorage:FindFirstChild("DefaultChatSystemChatEvents") if chatEvent and chatEvent:FindFirstChild("SayMessageRequest") then chatEvent.SayMessageRequest:FireServer("/e dance", "All") end end) end -- Keybinds Handling (Q for Lag Switch) UserInputService.InputBegan:Connect(function(input, gameProcessed) if input.KeyCode == Enum.KeyCode.Q then SetLagState(true) end if gameProcessed or not ScreenGui.Parent then return end if input.KeyCode == Enum.KeyCode.Five or input.KeyCode == Enum.KeyCode.KeypadFive then task.spawn(PlayEvadeEmote, ID_BROOM) -- Broom of Doom (Key 5) elseif input.KeyCode == Enum.KeyCode.Six or input.KeyCode == Enum.KeyCode.KeypadSix then task.spawn(PlayEvadeEmote, ID_ROCKIN) -- Rockin' Stride (Key 6) end end) UserInputService.InputEnded:Connect(function(input) if input.KeyCode == Enum.KeyCode.Q then SetLagState(false) end end) -- Toggle Menu (Key V) local menuVisible = true local isTweening = false local originalSize = UDim2.new(0, 310, 0, 400) UserInputService.InputBegan:Connect(function(input, gameProcessed) if not gameProcessed and input.KeyCode == Enum.KeyCode.V and ScreenGui.Parent then if isTweening then return end isTweening = true if menuVisible then TweenService:Create(MainStroke, TweenInfo.new(0.18), {Transparency = 1}):Play() local closeTween = TweenService:Create(MainFrame, TweenInfo.new(0.18), { Size = UDim2.new(0, 310, 0, 0), BackgroundTransparency = 1 }) closeTween:Play() closeTween.Completed:Wait() MainFrame.Visible = false menuVisible = false else MainFrame.Visible = true TweenService:Create(MainStroke, TweenInfo.new(0.18), {Transparency = 0}):Play() local openTween = TweenService:Create(MainFrame, TweenInfo.new(0.35, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Size = originalSize, BackgroundTransparency = 0 }) openTween:Play() openTween.Completed:Wait() menuVisible = true end isTweening = false end end)