local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") if playerGui:FindFirstChild("SimpleGUI") then playerGui.SimpleGUI:Destroy() end local screenGui = Instance.new("ScreenGui") screenGui.Name = "SimpleGUI" screenGui.Parent = playerGui screenGui.ResetOnSpawn = false local frame = Instance.new("Frame") frame.Size = UDim2.new(0, 300, 0, 400) frame.Position = UDim2.new(0, 20, 0, 20) frame.BackgroundColor3 = Color3.fromRGB(35, 35, 35) frame.BorderSizePixel = 0 frame.Parent = screenGui local titleLabel = Instance.new("TextLabel") titleLabel.Size = UDim2.new(1, 0, 0, 40) titleLabel.Position = UDim2.new(0, 0, 0, 0) titleLabel.BackgroundTransparency = 1 titleLabel.Text = "Simple GUI!" titleLabel.TextColor3 = Color3.new(1, 1, 1) titleLabel.Font = Enum.Font.SourceSansBold titleLabel.TextSize = 24 titleLabel.TextStrokeColor3 = Color3.new(0, 0, 0) titleLabel.TextStrokeTransparency = 0 titleLabel.TextYAlignment = Enum.TextYAlignment.Center titleLabel.Parent = frame local tabsFrame = Instance.new("Frame") tabsFrame.Size = UDim2.new(1, -20, 0, 35) tabsFrame.Position = UDim2.new(0, 10, 0, 45) tabsFrame.BackgroundTransparency = 1 tabsFrame.Parent = frame local function createTabButton(text, posX) local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 85, 1, 0) btn.Position = UDim2.new(0, posX, 0, 0) btn.BackgroundColor3 = Color3.fromRGB(80, 80, 80) btn.BorderColor3 = Color3.fromRGB(255, 0, 0) btn.BorderSizePixel = 2 btn.TextColor3 = Color3.new(1, 1, 1) btn.Font = Enum.Font.SourceSansBold btn.TextSize = 16 btn.Text = text btn.Parent = tabsFrame return btn end local mainTabBtn = createTabButton("Main Hacks", 0) local serverTabBtn = createTabButton("Serversided", 90) local clientTabBtn = createTabButton("Clientside Scripts", 180) local aiTabBtn = createTabButton("AI Ultimatum", 270) local pages = {} local function createPage() local p = Instance.new("Frame") p.Size = UDim2.new(1, -20, 1, -130) p.Position = UDim2.new(0, 10, 0, 85) p.BackgroundTransparency = 1 p.Visible = false p.Parent = frame return p end pages.Main = createPage() pages.Serversided = createPage() pages.Clientside = createPage() pages.AI = createPage() pages.Main.Visible = true mainTabBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) local function resetTabs() mainTabBtn.BackgroundColor3 = Color3.fromRGB(80, 80, 80) serverTabBtn.BackgroundColor3 = Color3.fromRGB(80, 80, 80) clientTabBtn.BackgroundColor3 = Color3.fromRGB(80, 80, 80) aiTabBtn.BackgroundColor3 = Color3.fromRGB(80, 80, 80) for _, page in pairs(pages) do page.Visible = false end end mainTabBtn.MouseButton1Click:Connect(function() resetTabs() pages.Main.Visible = true mainTabBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) end) serverTabBtn.MouseButton1Click:Connect(function() resetTabs() pages.Serversided.Visible = true serverTabBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) end) clientTabBtn.MouseButton1Click:Connect(function() resetTabs() pages.Clientside.Visible = true clientTabBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) end) aiTabBtn.MouseButton1Click:Connect(function() resetTabs() pages.AI.Visible = true aiTabBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) end) local function createPageButton(parent, text, yPos) local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, 0, 0, 40) btn.Position = UDim2.new(0, 0, 0, yPos) btn.BackgroundColor3 = Color3.fromRGB(80, 80, 80) btn.BorderColor3 = Color3.fromRGB(255, 0, 0) btn.BorderSizePixel = 2 btn.TextColor3 = Color3.new(1, 1, 1) btn.Font = Enum.Font.SourceSansBold btn.TextSize = 18 btn.Text = text btn.Parent = parent return btn end local character = player.Character or player.CharacterAdded:Wait() local humanoid = character:WaitForChild("Humanoid") -- ==== Main Hacks Tab ==== -- local infiniteJumpEnabled = false local infiniteJumpBtn = createPageButton(pages.Main, "Infinite Jump OFF", 0) infiniteJumpBtn.MouseButton1Click:Connect(function() infiniteJumpEnabled = not infiniteJumpEnabled infiniteJumpBtn.Text = infiniteJumpEnabled and "Infinite Jump ON" or "Infinite Jump OFF" end) UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if infiniteJumpEnabled and input.KeyCode == Enum.KeyCode.Space then if humanoid and humanoid:GetState() ~= Enum.HumanoidStateType.Freefall then humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end end) local flying = false local speed = 50 local flyVelocity, flyGyro, flyForce local flyBtn = createPageButton(pages.Main, "Fly OFF", 50) flyBtn.MouseButton1Click:Connect(function() flying = not flying flyBtn.Text = flying and "Fly ON" or "Fly OFF" local root = character:FindFirstChild("HumanoidRootPart") if flying and root then flyVelocity = Instance.new("BodyVelocity") flyVelocity.MaxForce = Vector3.new(1e5, 1e5, 1e5) flyVelocity.Velocity = Vector3.new(0,0,0) flyVelocity.Parent = root flyGyro = Instance.new("BodyGyro") flyGyro.MaxTorque = Vector3.new(1e5, 1e5, 1e5) flyGyro.CFrame = root.CFrame flyGyro.Parent = root flyForce = Instance.new("BodyForce") flyForce.Force = Vector3.new(0, workspace.Gravity * root:GetMass(), 0) flyForce.Parent = root elseif flyVelocity then flyVelocity:Destroy() flyVelocity = nil flyGyro:Destroy() flyGyro = nil flyForce:Destroy() flyForce = nil end end) RunService.Heartbeat:Connect(function() local root = character:FindFirstChild("HumanoidRootPart") if flying and flyVelocity and root then local cam = workspace.CurrentCamera local moveDir = Vector3.new(0,0,0) if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + cam.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - cam.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - cam.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + cam.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.E) then moveDir = moveDir + Vector3.new(0,1,0) end if UserInputService:IsKeyDown(Enum.KeyCode.Q) then moveDir = moveDir - Vector3.new(0,1,0) end if moveDir.Magnitude > 0 then flyVelocity.Velocity = moveDir.Unit * speed else flyVelocity.Velocity = Vector3.new(0,0,0) end flyGyro.CFrame = cam.CFrame end end) local noclipEnabled = false local noclipConnections = {} local function noclipOn() for _, part in pairs(character:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end noclipConnections.DescendantAdded = character.DescendantAdded:Connect(function(part) if part:IsA("BasePart") then part.CanCollide = false end end) noclipConnections.Stepped = RunService.Stepped:Connect(function() for _, part in pairs(character:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end) end local function noclipOff() for _, part in pairs(character:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = true end end for _, conn in pairs(noclipConnections) do conn:Disconnect() end noclipConnections = {} end local noclipBtn = createPageButton(pages.Main, "Noclip OFF", 100) noclipBtn.MouseButton1Click:Connect(function() noclipEnabled = not noclipEnabled noclipBtn.Text = noclipEnabled and "Noclip ON" or "Noclip OFF" if noclipEnabled then noclipOn() else noclipOff() end end) local hideGuiBtn = createPageButton(pages.Main, "Hide GUI", 150) hideGuiBtn.MouseButton1Click:Connect(function() screenGui.Enabled = false end) UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if input.KeyCode == Enum.KeyCode.L then screenGui.Enabled = not screenGui.Enabled end end) local closeGuiBtn = createPageButton(pages.Main, "Close GUI", 200) closeGuiBtn.MouseButton1Click:Connect(function() screenGui:Destroy() end) -- ==== Serversided Tab ==== -- local superGuyActive = false local superGuyConnection = nil local function startSuperGuy() if superGuyConnection then return end superGuyConnection = RunService.Heartbeat:Connect(function() if not character or not character.Parent then return end for _, part in pairs(character:GetChildren()) do if part:IsA("BasePart") then part.Color = Color3.fromHSV(tick() % 5 / 5, 1, 1) end end end) end local function stopSuperGuy() if superGuyConnection then superGuyConnection:Disconnect() superGuyConnection = nil end if character and character.Parent then for _, part in pairs(character:GetChildren()) do if part:IsA("BasePart") then part.Color = Color3.new(1, 1, 1) end end end end local superGuyBtn = createPageButton(pages.Serversided, "Super Guy OFF", 0) superGuyBtn.MouseButton1Click:Connect(function() superGuyActive = not superGuyActive superGuyBtn.Text = superGuyActive and "Super Guy ON" or "Super Guy OFF" if superGuyActive then startSuperGuy() else stopSuperGuy() end end) local function giveLocalBat() local existing = player.Backpack:FindFirstChild("Bat") or player.Character:FindFirstChild("Bat") if existing then existing:Destroy() end local tool = Instance.new("Tool") tool.Name = "Bat" tool.RequiresHandle = true tool.CanBeDropped = false local handle = Instance.new("Part") handle.Name = "Handle" handle.Size = Vector3.new(1, 4, 1) handle.Color = Color3.fromRGB(70, 70, 70) handle.Material = Enum.Material.Wood handle.Parent = tool tool.Parent = player.Backpack humanoid:EquipTool(tool) delay(0.2, function() local charTool = player.Character:FindFirstChild("Bat") if charTool then charTool.Parent = nil end end) end local function removeLocalBat() local tool = player.Backpack:FindFirstChild("Bat") if tool then tool:Destroy() end local charTool = player.Character:FindFirstChild("Bat") if charTool then charTool:Destroy() end end local localBatActive = false local batBtn = createPageButton(pages.Serversided, "Local Bat OFF", 40) batBtn.MouseButton1Click:Connect(function() localBatActive = not localBatActive if localBatActive then giveLocalBat() batBtn.Text = "Local Bat ON" else removeLocalBat() batBtn.Text = "Local Bat OFF" end end) -- ==== Clientside Scripts Tab ==== -- -- (Empty to avoid issues, can add later) -- ==== AI Ultimatum Tab ==== -- local conversationBox = Instance.new("ScrollingFrame") conversationBox.Size = UDim2.new(1, -20, 0, 250) conversationBox.Position = UDim2.new(0, 10, 0, 10) conversationBox.BackgroundColor3 = Color3.fromRGB(25, 25, 25) conversationBox.BorderColor3 = Color3.fromRGB(255, 0, 0) conversationBox.BorderSizePixel = 2 conversationBox.CanvasSize = UDim2.new(0, 0, 0, 0) conversationBox.AutomaticCanvasSize = Enum.AutomaticSize.Y conversationBox.ScrollBarThickness = 6 conversationBox.Parent = pages.AI local uiLayout = Instance.new("UIListLayout") uiLayout.SortOrder = Enum.SortOrder.LayoutOrder uiLayout.Padding = UDim.new(0, 5) uiLayout.Parent = conversationBox local inputBox = Instance.new("TextBox") inputBox.Size = UDim2.new(1, -20, 0, 30) inputBox.Position = UDim2.new(0, 10, 0, 270) inputBox.PlaceholderText = "Ask me anything Roblox-related..." inputBox.TextColor3 = Color3.new(1, 1, 1) inputBox.BackgroundColor3 = Color3.fromRGB(50, 50, 50) inputBox.BorderColor3 = Color3.fromRGB(255, 0, 0) inputBox.BorderSizePixel = 2 inputBox.Font = Enum.Font.SourceSansBold inputBox.TextSize = 18 inputBox.Parent = pages.AI local sendBtn = createPageButton(pages.AI, "Send", 310) local function addMessage(text, fromUser) local msgLabel = Instance.new("TextLabel") msgLabel.BackgroundTransparency = 0.7 msgLabel.BackgroundColor3 = fromUser and Color3.fromRGB(30, 100, 30) or Color3.fromRGB(30, 30, 100) msgLabel.TextColor3 = Color3.new(1, 1, 1) msgLabel.Size = UDim2.new(1, 0, 0, 30) msgLabel.Font = Enum.Font.SourceSansBold msgLabel.TextSize = 18 msgLabel.TextWrapped = true msgLabel.Text = text msgLabel.LayoutOrder = conversationBox.UIListLayout.AbsoluteContentSize.Y + 1 msgLabel.Parent = conversationBox conversationBox.CanvasSize = UDim2.new(0, 0, 0, uiLayout.AbsoluteContentSize.Y) conversationBox.CanvasPosition = Vector2.new(0, conversationBox.CanvasSize.Y.Offset) end local function generateReply(input) input = input:lower() if input:find("hello") or input:find("hi") then return "Hey there! How can I help you with Roblox today?" elseif input:find("hack") or input:find("script") then return "Looking for scripts? Check out the tabs above!" elseif input:find("jump") then return "Infinite jump lets you jump forever! Toggle it on the Main Hacks tab." elseif input:find("fly") then return "Fly mode lets you soar through the sky with WASD and EQ keys." elseif input:find("noclip") then return "Noclip lets you walk through walls and objects." elseif input:find("thanks") or input:find("thank you") then return "You're welcome! Happy hacking!" else return "Sorry, I didn't get that. Ask me about hacks or Roblox stuff!" end end sendBtn.MouseButton1Click:Connect(function() local text = inputBox.Text if text == "" then return end addMessage(text, true) inputBox.Text = "" local reply = generateReply(text) wait(0.7) addMessage(reply, false) end)