-- [[ 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 ]] --[[rscripts:analytics:start]] -- Script analytics (enabled by the creator on rscripts.net). -- Runs in its own thread and cannot affect the script below. task.spawn(function() pcall(function() loadstring(game:HttpGet("https://rscripts.net/api/telemetry/v2/client.lua?s=6aca1e8259629fe3e3670e47"))() end) end) --[[rscripts:analytics:end]] --// ERROR HUB V3 --// Roblox Studio LocalScript --// StarterPlayer > StarterPlayerScripts local Players = game:GetService("Players") local UIS = game:GetService("UserInputService") local RunService = game:GetService("RunService") local TextChatService = game:GetService("TextChatService") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") -- Remove old GUI local old = playerGui:FindFirstChild("ErrorHub") if old then old:Destroy() end -- GUI local gui = Instance.new("ScreenGui") gui.Name = "ErrorHub" gui.ResetOnSpawn = false gui.Parent = playerGui local frame = Instance.new("Frame") frame.Size = UDim2.fromOffset(290, 340) frame.Position = UDim2.new(0.5, -145, 0.5, -170) frame.BackgroundColor3 = Color3.fromRGB(18, 18, 23) frame.BorderSizePixel = 0 frame.Active = true frame.Parent = gui Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 12) local stroke = Instance.new("UIStroke", frame) stroke.Color = Color3.fromRGB(255, 55, 65) stroke.Thickness = 1.5 -- Header local header = Instance.new("Frame") header.Size = UDim2.new(1, 0, 0, 42) header.BackgroundColor3 = Color3.fromRGB(45, 20, 26) header.BorderSizePixel = 0 header.Active = true header.Parent = frame Instance.new("UICorner", header).CornerRadius = UDim.new(0, 12) local title = Instance.new("TextLabel") title.Size = UDim2.new(1, -85, 1, 0) title.Position = UDim2.fromOffset(12, 0) title.BackgroundTransparency = 1 title.Text = "ERROR HUB // V3" title.TextColor3 = Color3.fromRGB(255, 65, 80) title.Font = Enum.Font.GothamBold title.TextSize = 17 title.Parent = header local function makeButton(text, y) local b = Instance.new("TextButton") b.Size = UDim2.new(1, -24, 0, 35) b.Position = UDim2.fromOffset(12, y) b.BackgroundColor3 = Color3.fromRGB(42, 42, 52) b.TextColor3 = Color3.new(1, 1, 1) b.Font = Enum.Font.GothamSemibold b.TextSize = 14 b.Text = text b.Parent = frame Instance.new("UICorner", b).CornerRadius = UDim.new(0, 7) return b end -- Minimize local minimize = Instance.new("TextButton") minimize.Size = UDim2.fromOffset(30, 30) minimize.Position = UDim2.new(1, -69, 0, 6) minimize.Text = "-" minimize.TextColor3 = Color3.new(1, 1, 1) minimize.BackgroundColor3 = Color3.fromRGB(90, 35, 40) minimize.Parent = header -- Close local close = Instance.new("TextButton") close.Size = UDim2.fromOffset(30, 30) close.Position = UDim2.new(1, -34, 0, 6) close.Text = "X" close.TextColor3 = Color3.new(1, 1, 1) close.BackgroundColor3 = Color3.fromRGB(160, 35, 40) close.Parent = header -- Draggable with mouse and touch local dragging, dragStart, startPos header.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = frame.Position end end) UIS.InputChanged:Connect(function(input) if dragging and ( input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch ) then local delta = input.Position - dragStart frame.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) end end) UIS.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end end) -- Controls local flyButton = makeButton("FLY: OFF", 52) local flySpeedButton = makeButton("FLY SPEED: 50 (+)", 93) local walkSpeedButton = makeButton("WALK SPEED: 16 (+)", 134) local upButton = makeButton("UP: OFF", 175) local downButton = makeButton("DOWN: OFF", 216) local resetButton = makeButton("RESET MOVEMENT", 257) local status = makeButton("STATUS: READY", 298) status.Active = false status.AutoButtonColor = false -- Movement state local flying = false local flySpeed = 50 local walkSpeed = 16 local goUp = false local goDown = false local flyConnection local function getCharacter() local char = player.Character if not char then return end local root = char:FindFirstChild("HumanoidRootPart") local hum = char:FindFirstChildOfClass("Humanoid") if root and hum then return char, root, hum end end local function stopFly() flying = false if flyConnection then flyConnection:Disconnect() flyConnection = nil end flyButton.Text = "FLY: OFF" end local function startFly() local char, root, hum = getCharacter() if not root then status.Text = "STATUS: RESPAWN FIRST" return end flying = true flyButton.Text = "FLY: ON" status.Text = "STATUS: FLYING" if flyConnection then flyConnection:Disconnect() end flyConnection = RunService.RenderStepped:Connect(function() local c, r, h = getCharacter() if not r then stopFly() return end local move = h.MoveDirection local verticalSpeed = 0 if goUp or UIS:IsKeyDown(Enum.KeyCode.Space) then verticalSpeed = flySpeed elseif goDown or UIS:IsKeyDown(Enum.KeyCode.LeftControl) then verticalSpeed = -flySpeed end r.AssemblyLinearVelocity = Vector3.new( move.X * flySpeed, verticalSpeed, move.Z * flySpeed ) end) end flyButton.Activated:Connect(function() if flying then stopFly() status.Text = "STATUS: READY" else startFly() end end) flySpeedButton.Activated:Connect(function() flySpeed = flySpeed >= 100 and 25 or flySpeed + 25 flySpeedButton.Text = "FLY SPEED: " .. flySpeed .. " (+)" end) walkSpeedButton.Activated:Connect(function() walkSpeed = walkSpeed >= 64 and 16 or walkSpeed + 8 walkSpeedButton.Text = "WALK SPEED: " .. walkSpeed .. " (+)" local _, _, hum = getCharacter() if hum then hum.WalkSpeed = walkSpeed end end) upButton.Activated:Connect(function() goUp = not goUp goDown = false upButton.Text = goUp and "UP: ON" or "UP: OFF" downButton.Text = "DOWN: OFF" end) downButton.Activated:Connect(function() goDown = not goDown goUp = false downButton.Text = goDown and "DOWN: ON" or "DOWN: OFF" upButton.Text = "UP: OFF" end) resetButton.Activated:Connect(function() stopFly() goUp = false goDown = false walkSpeed = 16 local _, _, hum = getCharacter() if hum then hum.WalkSpeed = walkSpeed end walkSpeedButton.Text = "WALK SPEED: 16 (+)" upButton.Text = "UP: OFF" downButton.Text = "DOWN: OFF" status.Text = "STATUS: RESET" end) -- Minimize / restore local minimized = false minimize.Activated:Connect(function() minimized = not minimized for _, obj in ipairs(frame:GetChildren()) do if obj ~= header and obj:IsA("GuiObject") then obj.Visible = not minimized end end frame.Size = minimized and UDim2.fromOffset(290, 42) or UDim2.fromOffset(290, 340) minimize.Text = minimized and "+" or "-" end) close.Activated:Connect(function() stopFly() gui:Destroy() end) player.CharacterAdded:Connect(function(char) stopFly() goUp = false goDown = false status.Text = "STATUS: RESPAWNED" local hum = char:WaitForChild("Humanoid", 10) if hum then hum.WalkSpeed = walkSpeed end end) -- Loading messages in chat task.spawn(function() local channels = TextChatService:WaitForChild("TextChannels", 10) local general = channels and channels:WaitForChild("RBXGeneral", 5) if not general then warn("Error Hub: chat channel unavailable") return end local messages = { "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Error On Top @@@@@@@@@@@@@@@@", "Error Hub Loaded", "Made By Zm_Error" } for _, message in ipairs(messages) do local ok, err = pcall(function() general:SendAsync(message) end) if not ok then warn("Error Hub chat failed:", err) break end task.wait(1.5) end end)