local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local ReplicatedStorage = game:GetService("ReplicatedStorage") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local eventsFolder = ReplicatedStorage:WaitForChild("EventsFolder") local generateAttackEvent = eventsFolder:WaitForChild("GenerateAttack") local updateAttackEvent = eventsFolder:WaitForChild("UpdateAttack") local currentAttackValue = 0 local updateConnection = updateAttackEvent.OnClientEvent:Connect(function(arg1, arg2, arg3) if type(arg2) == "number" then currentAttackValue = arg2 elseif type(arg3) == "number" then currentAttackValue = arg3 end end) local screenGui = Instance.new("ScreenGui") screenGui.Name = "AdvancedMultiSectionGui" screenGui.ResetOnSpawn = false screenGui.Parent = playerGui local mainFrame = Instance.new("Frame") mainFrame.Name = "MainFrame" mainFrame.Size = UDim2.new(0, 320, 0, 280) mainFrame.Position = UDim2.new(0.1, 0, 0.1, 0) mainFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 20) mainFrame.BorderSizePixel = 0 mainFrame.Parent = screenGui local mainCorner = Instance.new("UICorner") mainCorner.CornerRadius = UDim.new(0, 10) mainCorner.Parent = mainFrame local topBar = Instance.new("Frame") topBar.Size = UDim2.new(1, 0, 0, 32) topBar.BackgroundTransparency = 1 topBar.Parent = mainFrame local titleLabel = Instance.new("TextLabel") titleLabel.Size = UDim2.new(1, -70, 1, 0) titleLabel.Position = UDim2.new(0, 10, 0, 0) titleLabel.BackgroundTransparency = 1 titleLabel.Text = "Hub - Auto Farm & Player" titleLabel.TextColor3 = Color3.fromRGB(255, 255, 255) titleLabel.TextSize = 13 titleLabel.Font = Enum.Font.SourceSansBold titleLabel.TextXAlignment = Enum.TextXAlignment.Left titleLabel.Parent = topBar local closeButton = Instance.new("TextButton") closeButton.Name = "CloseButton" closeButton.Size = UDim2.new(0, 22, 0, 22) closeButton.Position = UDim2.new(1, -28, 0, 5) closeButton.BackgroundColor3 = Color3.fromRGB(200, 50, 50) closeButton.Text = "X" closeButton.TextColor3 = Color3.fromRGB(255, 255, 255) closeButton.TextSize = 11 closeButton.Font = Enum.Font.SourceSansBold closeButton.AutoButtonColor = false closeButton.Parent = topBar local closeCorner = Instance.new("UICorner") closeCorner.CornerRadius = UDim.new(0, 5) closeCorner.Parent = closeButton local minimizeButton = Instance.new("TextButton") minimizeButton.Name = "MinimizeButton" minimizeButton.Size = UDim2.new(0, 22, 0, 22) minimizeButton.Position = UDim2.new(1, -54, 0, 5) minimizeButton.BackgroundColor3 = Color3.fromRGB(70, 70, 70) minimizeButton.Text = "-" minimizeButton.TextColor3 = Color3.fromRGB(255, 255, 255) minimizeButton.TextSize = 13 minimizeButton.Font = Enum.Font.SourceSansBold minimizeButton.AutoButtonColor = false minimizeButton.Parent = topBar local minCorner = Instance.new("UICorner") minCorner.CornerRadius = UDim.new(0, 5) minCorner.Parent = minimizeButton local contentWrapper = Instance.new("Frame") contentWrapper.Size = UDim2.new(1, 0, 1, -32) contentWrapper.Position = UDim2.new(0, 0, 0, 32) contentWrapper.BackgroundTransparency = 1 contentWrapper.Parent = mainFrame local categoryScroll = Instance.new("ScrollingFrame") categoryScroll.Name = "CategoryScroll" categoryScroll.Size = UDim2.new(0, 105, 1, -10) categoryScroll.Position = UDim2.new(0, 5, 0, 5) categoryScroll.BackgroundColor3 = Color3.fromRGB(28, 28, 28) categoryScroll.BorderSizePixel = 0 categoryScroll.CanvasSize = UDim2.new(0, 0, 0, 0) categoryScroll.AutomaticCanvasSize = Enum.AutomaticSize.Y categoryScroll.ScrollBarThickness = 3 categoryScroll.Parent = contentWrapper local catScrollCorner = Instance.new("UICorner") catScrollCorner.CornerRadius = UDim.new(0, 6) catScrollCorner.Parent = categoryScroll local catLayout = Instance.new("UIListLayout") catLayout.SortOrder = Enum.SortOrder.LayoutOrder catLayout.Padding = UDim.new(0, 5) catLayout.Parent = categoryScroll local catPad = Instance.new("UIPadding") catPad.PaddingTop = UDim.new(0, 5) catPad.PaddingLeft = UDim.new(0, 5) catPad.PaddingRight = UDim.new(0, 5) catPad.Parent = categoryScroll local toggleArea = Instance.new("Frame") toggleArea.Name = "ToggleArea" toggleArea.Size = UDim2.new(1, -120, 1, -10) toggleArea.Position = UDim2.new(0, 115, 0, 5) toggleArea.BackgroundColor3 = Color3.fromRGB(28, 28, 28) toggleArea.BorderSizePixel = 0 toggleArea.Parent = contentWrapper local toggleAreaCorner = Instance.new("UICorner") toggleAreaCorner.CornerRadius = UDim.new(0, 6) toggleAreaCorner.Parent = toggleArea local isMinimized = false minimizeButton.MouseButton1Click:Connect(function() isMinimized = not isMinimized if isMinimized then minimizeButton.Text = "+" contentWrapper.Visible = false mainFrame.Size = UDim2.new(0, 320, 0, 32) else minimizeButton.Text = "-" contentWrapper.Visible = true mainFrame.Size = UDim2.new(0, 320, 0, 280) end end) local scriptRunning = true local desyncTpwalking = false local loopTpwalking = false local function stopDesyncTPWalk() desyncTpwalking = false end local function stopLoopTPWalk() loopTpwalking = false end closeButton.MouseButton1Click:Connect(function() scriptRunning = false stopDesyncTPWalk() stopLoopTPWalk() if updateConnection then updateConnection:Disconnect() end if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then player.Character.HumanoidRootPart.Anchored = false end screenGui:Destroy() end) local categories = {} local activeCategoryName = nil local function addCategory(name) local catButton = Instance.new("TextButton") catButton.Name = name .. "Btn" catButton.Size = UDim2.new(1, 0, 0, 30) catButton.BackgroundColor3 = Color3.fromRGB(40, 40, 40) catButton.Text = name catButton.TextColor3 = Color3.fromRGB(200, 200, 200) catButton.TextSize = 11 catButton.Font = Enum.Font.SourceSansBold catButton.AutoButtonColor = false catButton.Parent = categoryScroll local btnCorner = Instance.new("UICorner") btnCorner.CornerRadius = UDim.new(0, 5) btnCorner.Parent = catButton local togglesScroll = Instance.new("ScrollingFrame") togglesScroll.Name = name .. "ToggleScroll" togglesScroll.Size = UDim2.new(1, -10, 1, -10) togglesScroll.Position = UDim2.new(0, 5, 0, 5) togglesScroll.BackgroundTransparency = 1 togglesScroll.BorderSizePixel = 0 togglesScroll.CanvasSize = UDim2.new(0, 0, 0, 0) togglesScroll.AutomaticCanvasSize = Enum.AutomaticSize.Y togglesScroll.ScrollBarThickness = 3 togglesScroll.Visible = false togglesScroll.Parent = toggleArea local tLayout = Instance.new("UIListLayout") tLayout.SortOrder = Enum.SortOrder.LayoutOrder tLayout.Padding = UDim.new(0, 6) tLayout.Parent = togglesScroll local tPad = Instance.new("UIPadding") tPad.PaddingTop = UDim.new(0, 5) tPad.PaddingBottom = UDim.new(0, 5) tPad.PaddingLeft = UDim.new(0, 5) tPad.PaddingRight = UDim.new(0, 5) tPad.Parent = togglesScroll categories[name] = { Button = catButton, Container = togglesScroll } catButton.MouseButton1Click:Connect(function() for catName, data in pairs(categories) do data.Container.Visible = false data.Button.BackgroundColor3 = Color3.fromRGB(40, 40, 40) data.Button.TextColor3 = Color3.fromRGB(200, 200, 200) end togglesScroll.Visible = true catButton.BackgroundColor3 = Color3.fromRGB(46, 204, 113) catButton.TextColor3 = Color3.fromRGB(255, 255, 255) activeCategoryName = name end) if not activeCategoryName then togglesScroll.Visible = true catButton.BackgroundColor3 = Color3.fromRGB(46, 204, 113) catButton.TextColor3 = Color3.fromRGB(255, 255, 255) activeCategoryName = name end return togglesScroll end local function createToggle(catScroll, name, labelText, callback) local container = Instance.new("Frame") container.Name = name .. "Container" container.Size = UDim2.new(1, 0, 0, 28) container.BackgroundTransparency = 1 container.Parent = catScroll local label = Instance.new("TextLabel") label.Size = UDim2.new(1, -40, 1, 0) label.BackgroundTransparency = 1 label.Text = labelText label.TextColor3 = Color3.fromRGB(220, 220, 220) label.TextSize = 11 label.Font = Enum.Font.SourceSansBold label.TextXAlignment = Enum.TextXAlignment.Left label.Parent = container local button = Instance.new("TextButton") button.Name = name .. "Button" button.Size = UDim2.new(0, 34, 0, 18) button.Position = UDim2.new(1, -34, 0.5, -9) button.BackgroundColor3 = Color3.fromRGB(50, 50, 50) button.Text = "" button.AutoButtonColor = false button.Parent = container local btnCorner = Instance.new("UICorner") btnCorner.CornerRadius = UDim.new(1, 0) btnCorner.Parent = button local indicator = Instance.new("Frame") indicator.Name = "Indicator" indicator.Size = UDim2.new(0, 14, 0, 14) indicator.Position = UDim2.new(0, 2, 0.5, -7) indicator.BackgroundColor3 = Color3.fromRGB(200, 200, 200) indicator.Parent = button local indCorner = Instance.new("UICorner") indCorner.CornerRadius = UDim.new(1, 0) indCorner.Parent = indicator local state = false button.MouseButton1Click:Connect(function() state = not state if state then button.BackgroundColor3 = Color3.fromRGB(46, 204, 113) indicator:TweenPosition(UDim2.new(1, -16, 0.5, -7), Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.2, true) else button.BackgroundColor3 = Color3.fromRGB(50, 50, 50) indicator:TweenPosition(UDim2.new(0, 2, 0.5, -7), Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.2, true) end if callback then task.spawn(callback, state) end end) return { GetState = function() return state end, SetState = function(val) if state ~= val then state = val if state then button.BackgroundColor3 = Color3.fromRGB(46, 204, 113) indicator:TweenPosition(UDim2.new(1, -16, 0.5, -7), Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.2, true) else button.BackgroundColor3 = Color3.fromRGB(50, 50, 50) indicator:TweenPosition(UDim2.new(0, 2, 0.5, -7), Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.2, true) end if callback then task.spawn(callback, state) end end end } end local function createSlider(catScroll, name, labelText, minVal, maxVal, defaultVal) local container = Instance.new("Frame") container.Name = name .. "SliderContainer" container.Size = UDim2.new(1, 0, 0, 44) container.BackgroundTransparency = 1 container.Parent = catScroll local label = Instance.new("TextLabel") label.Size = UDim2.new(1, -28, 0, 18) label.Position = UDim2.new(0, 0, 0, 0) label.BackgroundTransparency = 1 label.Text = labelText .. ": " .. tostring(defaultVal) label.TextColor3 = Color3.fromRGB(220, 220, 220) label.TextSize = 11 label.Font = Enum.Font.SourceSansBold label.TextXAlignment = Enum.TextXAlignment.Left label.Parent = container local foldBtn = Instance.new("TextButton") foldBtn.Name = "FoldButton" foldBtn.Size = UDim2.new(0, 18, 0, 18) foldBtn.AnchorPoint = Vector2.new(1, 0) foldBtn.Position = UDim2.new(1, -5, 0, 0) foldBtn.BackgroundColor3 = Color3.fromRGB(50, 50, 50) foldBtn.Text = "-" foldBtn.TextColor3 = Color3.fromRGB(220, 220, 220) foldBtn.TextSize = 13 foldBtn.Font = Enum.Font.SourceSansBold foldBtn.AutoButtonColor = false foldBtn.Parent = container local foldCorner = Instance.new("UICorner") foldCorner.CornerRadius = UDim.new(0, 4) foldCorner.Parent = foldBtn local sliderBar = Instance.new("Frame") sliderBar.Name = "SliderBar" sliderBar.Size = UDim2.new(1, -10, 0, 6) sliderBar.Position = UDim2.new(0, 5, 0, 26) sliderBar.BackgroundColor3 = Color3.fromRGB(50, 50, 50) sliderBar.BorderSizePixel = 0 sliderBar.Parent = container local barCorner = Instance.new("UICorner") barCorner.CornerRadius = UDim.new(1, 0) barCorner.Parent = sliderBar local fillBar = Instance.new("Frame") fillBar.Name = "FillBar" fillBar.Size = UDim2.new((defaultVal - minVal) / (maxVal - minVal), 0, 1, 0) fillBar.BackgroundColor3 = Color3.fromRGB(46, 204, 113) fillBar.BorderSizePixel = 0 fillBar.Parent = sliderBar local fillCorner = Instance.new("UICorner") fillCorner.CornerRadius = UDim.new(1, 0) fillCorner.Parent = fillBar local thumb = Instance.new("TextButton") thumb.Name = "Thumb" thumb.Size = UDim2.new(0, 14, 0, 14) thumb.AnchorPoint = Vector2.new(0.5, 0.5) thumb.Position = UDim2.new((defaultVal - minVal) / (maxVal - minVal), 0, 0.5, 0) thumb.BackgroundColor3 = Color3.fromRGB(255, 255, 255) thumb.Text = "" thumb.AutoButtonColor = false thumb.Parent = sliderBar local thumbCorner = Instance.new("UICorner") thumbCorner.CornerRadius = UDim.new(1, 0) thumbCorner.Parent = thumb local isFolded = false foldBtn.MouseButton1Click:Connect(function() isFolded = not isFolded if isFolded then foldBtn.Text = "+" sliderBar.Visible = false container.Size = UDim2.new(1, 0, 0, 18) else foldBtn.Text = "-" sliderBar.Visible = true container.Size = UDim2.new(1, 0, 0, 44) end end) local currentValue = defaultVal local sliding = false local function updateValue(inputPos) local barPos = sliderBar.AbsolutePosition.X local barSize = sliderBar.AbsoluteSize.X local relativeX = math.clamp(inputPos - barPos, 0, barSize) local percentage = relativeX / barSize currentValue = math.floor(minVal + (maxVal - minVal) * percentage) fillBar.Size = UDim2.new(percentage, 0, 1, 0) thumb.Position = UDim2.new(percentage, 0, 0.5, 0) label.Text = labelText .. ": " .. tostring(currentValue) end thumb.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then sliding = true end end) sliderBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then sliding = true updateValue(input.Position.X) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then sliding = false end end) UserInputService.InputChanged:Connect(function(input) if sliding and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then updateValue(input.Position.X) end end) return { GetValue = function() return currentValue end } end local autoFarmScroll = addCategory("Auto Farm") local playerScroll = addCategory("Player") local mainToggle = createToggle(autoFarmScroll, "MainAttack", "Auto Roll") local disabler5 = createToggle(autoFarmScroll, "Disable5", "Disable if 5+") local disabler100 = createToggle(autoFarmScroll, "Disable100", "Disable if 100+") local disabler250 = createToggle(autoFarmScroll, "Disable250", "Disable if 250+") local disabler500 = createToggle(autoFarmScroll, "Disable500", "Disable if 500+") local disabler1000 = createToggle(autoFarmScroll, "Disable1000", "Disable if 1000+") local loopTpwalkToggle local loopSpeedSlider local selfFreezeToggle local desyncToggle local desyncSpeedSlider local function startLoopTPWalk() if loopTpwalking then return end loopTpwalking = true task.spawn(function() while loopTpwalking and scriptRunning do local delta = RunService.Heartbeat:Wait() local char = player.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if char and hum and hum.Parent and hum.Health > 0 then local speed = loopSpeedSlider.GetValue() if hum.MoveDirection.Magnitude > 0 then pcall(function() char:TranslateBy(hum.MoveDirection * speed * delta * 10) end) end end end end) end local function startDesyncTPWalk() if desyncTpwalking then return end desyncTpwalking = true local char = player.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if not hum then return end task.spawn(function() while desyncTpwalking and scriptRunning and char and hum and hum.Parent do local delta = RunService.Heartbeat:Wait() local speed = desyncSpeedSlider.GetValue() if hum.MoveDirection.Magnitude > 0 then pcall(function() char:TranslateBy(hum.MoveDirection * speed * delta * 10) end) end if not player.Character or player.Character ~= char then desyncTpwalking = false if desyncToggle then desyncToggle.SetState(false) end end end end) end loopTpwalkToggle = createToggle(playerScroll, "LoopTPWalk", "Loop TPWalk Speed", function(state) if state then startLoopTPWalk() else stopLoopTPWalk() end end) loopSpeedSlider = createSlider(playerScroll, "LoopSpeedSlider", "Loop TPWalk Speed", 1, 25, 4) selfFreezeToggle = createToggle(playerScroll, "SelfFreeze", "Self Freeze") desyncToggle = createToggle(playerScroll, "Desync", "Server-sided Desync", function(state) if state then startDesyncTPWalk() else stopDesyncTPWalk() end end) desyncSpeedSlider = createSlider(playerScroll, "DesyncSpeedSlider", "Desync Speed", 1, 25, 4) player.CharacterAdded:Connect(function() stopDesyncTPWalk() if desyncToggle then desyncToggle.SetState(false) end end) local dragging = false local 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) 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) task.spawn(function() while scriptRunning do local delta = RunService.Heartbeat:Wait() local character = player.Character local humanoid = character and character:FindFirstChildOfClass("Humanoid") local rootPart = character and character:FindFirstChild("HumanoidRootPart") if (selfFreezeToggle.GetState() or desyncToggle.GetState()) and rootPart and humanoid and humanoid.Health > 0 then rootPart.Anchored = true if selfFreezeToggle.GetState() then humanoid.PlatformStand = true end else if rootPart then rootPart.Anchored = false end if humanoid and humanoid.Health > 0 then humanoid.PlatformStand = false end end task.wait(0.1) if mainToggle.GetState() then if humanoid and humanoid.Health > 0 then local val = currentAttackValue if disabler1000.GetState() and val >= 1000 then mainToggle.SetState(false) elseif disabler500.GetState() and val >= 500 then mainToggle.SetState(false) elseif disabler250.GetState() and val >= 250 then mainToggle.SetState(false) elseif disabler100.GetState() and val >= 100 then mainToggle.SetState(false) elseif disabler5.GetState() and val >= 5 then mainToggle.SetState(false) end if mainToggle.GetState() then pcall(function() generateAttackEvent:FireServer("Random", nil, nil) end) end else currentAttackValue = 0 end end end end)