--[[ WARNING: Heads don't copy at your own risk REBRANDED & UPGRADED TO: RUBO PANEL ]] local Players = game:GetService("Players") local TextChatService = game:GetService("TextChatService") local RunService = game:GetService("RunService") local TweenService = game:GetService("TweenService") local player = Players.LocalPlayer -------------------------------------------------- -- SETTINGS -------------------------------------------------- local saying = false local targetName = "TMX" local delayTime = 1 local pattern = "_" local allowedPlayer = nil -- Loop controller for movement commands if _G.RuboMovementLoop then _G.RuboMovementLoop:Disconnect() end -------------------------------------------------- -- RO MESSAGE LIST (TMX ROASTS) -------------------------------------------------- local roMessages = { "TMX MEH FIRE πŸ”₯","FYTER BNEGA?🀣","BCHE RUBO ON TOPπŸ‘‘","TMX MEH Rocket πŸš€", "TMX MEH electricity ⚑","TMX meh SURF πŸ˜†","Leave marde 🀣","mera beta ON TOP BOL πŸ”₯", "TMX MEH BOOK πŸ“š","Pil gya itni jaldi 🀣","Itna lallu fyter🀧","Cvr bye RuboπŸ‘‘", "Tmx meh petroleum","Dffn?πŸ˜”","Bhag ja bache😹","Tmx meh dino 😈", "TMX MEH MAJDOOR","TMX MEH SCRIPT","TMX MEH TREE🌴","TMX MEH CLIP", "Tmx AlluπŸ₯”","TMX MEH GOAT","TMX MEH BLAZE","TMX MEH SALT", "TMX MEH ROD","TMX MEH UNIVERSE","TMX MEH SOFA", "TMX MEH KEYBOARD","TMX MEH SNIPER","this script ON TOPπŸ‘‘", "TMX MEH MONITOR","TMX MEH TABLE","TMX MEH GALAXLY", "TMX MEH MUSHROOM","TMX MEH STONE","TMX MEH BOT", "TMX MEH TAB","TMX MEH CYLINDER","TMX MEH KING", "TMX MEH VOID","TMX MEH REAPER","TMX MEH GOD", "TMX MEH MASTER","TMX MEH NOVA","TMX MEH BEAST", "TMX MEH LEGEND","TMX MEH GHOST","TMX MEH NINJA", "TMX MEH STAR","TMX MEH MOON","TMX MEH NEON", "TMX MEH OMEGA","TMX MEH STICK","TMX MEH PAPER", "TMX MEH STYLE","TMX MEH ALPHA","TMX MEH FISH" } -------------------------------------------------- -- GENERATE LINE -------------------------------------------------- local function generateLine() local result = "" while #result < 150 do result = result .. pattern end return string.sub(result, 1, 150) end -------------------------------------------------- -- SPAM SYSTEM -------------------------------------------------- local function startROSpam() if saying then return end saying = true task.spawn(function() while saying do local msgText = roMessages[math.random(1, #roMessages)] local msg = generateLine().."\n"..targetName.."\n"..msgText TextChatService.TextChannels.RBXGeneral:SendAsync(msg) task.wait(delayTime) end end) end local function stopAll() saying = false if _G.RuboMovementLoop then _G.RuboMovementLoop:Disconnect() _G.RuboMovementLoop = nil end end -------------------------------------------------- -- COMMAND SYSTEM -------------------------------------------------- local function handleCommand(speaker, message) if allowedPlayer and speaker.Name ~= allowedPlayer then return end local args = message:split(" ") local cmd = args[1]:lower() local commander = Players:FindFirstChild(speaker.Name) local commanderChar = commander and commander.Character local myChar = player.Character if cmd == "!ro" then if args[2] then targetName = args[2] end startROSpam() end if cmd == "!say" then if #args > 1 then local text = message:sub(6) TextChatService.TextChannels.RBXGeneral:SendAsync(text) end end if cmd == "!bot" then local msg = generateLine().."\nH1 RUBO RULER πŸ‘‘" TextChatService.TextChannels.RBXGeneral:SendAsync(msg) end if cmd == "!stop" then stopAll() end if cmd == "!delay" then local n = tonumber(args[2]) if n then delayTime = n end end if cmd == "!pattern" then if args[2] then pattern = args[2] end end -- NEW COMMAND: !assemble if cmd == "!assemble" then if commanderChar and commanderChar:FindFirstChild("HumanoidRootPart") and myChar and myChar:FindFirstChild("HumanoidRootPart") then stopAll() -- Stop other loops -- Get the index of this bot to calculate equal gapping local bots = {} for _, p in pairs(Players:GetPlayers()) do table.insert(bots, p.Name) end table.sort(bots) local myIndex = 1 for i, v in ipairs(bots) do if v == player.Name then myIndex = i break end end -- Position linearly behind commander (Z is back, X is left/right) local gap = 4 local startX = -((#bots * gap) / 2) local offsetX = startX + (myIndex * gap) myChar.HumanoidRootPart.CFrame = commanderChar.HumanoidRootPart.CFrame * CFrame.new(offsetX, 0, 5) end end -- NEW COMMAND: !Ravan if cmd == "!ravan" then if commanderChar and commanderChar:FindFirstChild("Head") and myChar and myChar:FindFirstChild("HumanoidRootPart") then stopAll() local bots = {} for _, p in pairs(Players:GetPlayers()) do table.insert(bots, p.Name) end table.sort(bots) local myIndex = 1 for i, v in ipairs(bots) do if v == player.Name then myIndex = i break end end _G.RuboMovementLoop = RunService.RenderStepped:Connect(function() if commanderChar and commanderChar:FindFirstChild("Head") and myChar and myChar:FindFirstChild("HumanoidRootPart") then local angle = (myIndex * (math.pi * 2 / #bots)) + (tick() * 3) -- Orbit speed local x = math.cos(angle) * 3 local z = math.sin(angle) * 3 myChar.HumanoidRootPart.CFrame = commanderChar.Head.CFrame * CFrame.new(x, 0, z) else stopAll() end end) end end -- NEW COMMAND: !rubo if cmd == "!rubo" then if commanderChar and commanderChar:FindFirstChild("HumanoidRootPart") and myChar and myChar:FindFirstChild("HumanoidRootPart") then stopAll() _G.RuboMovementLoop = RunService.RenderStepped:Connect(function() if commanderChar and commanderChar:FindFirstChild("HumanoidRootPart") and myChar and myChar:FindFirstChild("HumanoidRootPart") then -- Random teleport glitch around the commander if math.random(1, 5) > 3 then local rx = math.random(-25, 25) local ry = math.random(-5, 20) local rz = math.random(-25, 25) myChar.HumanoidRootPart.CFrame = commanderChar.HumanoidRootPart.CFrame * CFrame.new(rx, ry, rz) end else stopAll() end end) end end -- NEW COMMAND: !Ruboking if cmd == "!ruboking" then player:Kick("ban by Rubo") end end -------------------------------------------------- -- CHAT LISTENER -------------------------------------------------- for _, plr in pairs(Players:GetPlayers()) do plr.Chatted:Connect(function(msg) handleCommand(plr, msg) end) end Players.PlayerAdded:Connect(function(plr) plr.Chatted:Connect(function(msg) handleCommand(plr, msg) end) end) -------------------------------------------------- -- GUI CREATION -------------------------------------------------- local gui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui")) gui.Name = "RuboGUI" gui.IgnoreGuiInset = true -------------------------------------------------- -- CINEMATIC INTRO -------------------------------------------------- local introFrame = Instance.new("Frame", gui) introFrame.Size = UDim2.new(1, 0, 1, 0) introFrame.BackgroundColor3 = Color3.fromRGB(5, 5, 5) introFrame.BackgroundTransparency = 0 introFrame.ZIndex = 999 introFrame.BorderSizePixel = 0 local introText = Instance.new("TextLabel", introFrame) introText.Size = UDim2.new(1, 0, 1, 0) introText.BackgroundTransparency = 1 introText.Text = "R U B O" introText.Font = Enum.Font.GothamBlack introText.TextSize = 60 introText.TextColor3 = Color3.fromRGB(200, 30, 30) introText.TextTransparency = 1 introText.ZIndex = 1000 local introSub = Instance.new("TextLabel", introFrame) introSub.Size = UDim2.new(1, 0, 1, 80) introSub.BackgroundTransparency = 1 introSub.Text = "THE RULER HAS ARRIVED" introSub.Font = Enum.Font.Gotham introSub.TextSize = 20 introSub.TextColor3 = Color3.fromRGB(150, 150, 150) introSub.TextTransparency = 1 introSub.ZIndex = 1000 -- Cinematic Sound local introSound = Instance.new("Sound", gui) introSound.SoundId = "rbxassetid://4809574295" -- Deep bass drop/cinematic hit introSound.Volume = 2 introSound:Play() -- Intro Animations local tweenInfo = TweenInfo.new(1.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) TweenService:Create(introText, tweenInfo, {TextTransparency = 0}):Play() task.wait(1) TweenService:Create(introSub, tweenInfo, {TextTransparency = 0}):Play() task.wait(2.5) local fadeOutInfo = TweenInfo.new(1, Enum.EasingStyle.Quad, Enum.EasingDirection.In) TweenService:Create(introText, fadeOutInfo, {TextTransparency = 1}):Play() TweenService:Create(introSub, fadeOutInfo, {TextTransparency = 1}):Play() TweenService:Create(introFrame, fadeOutInfo, {BackgroundTransparency = 1}):Play() task.wait(1) introFrame:Destroy() -------------------------------------------------- -- FLOATING BALLS ANIMATION -------------------------------------------------- local balls = {} local ballColors = { Color3.fromRGB(200, 30, 30), Color3.fromRGB(220, 50, 50), Color3.fromRGB(150, 20, 20), Color3.fromRGB(255, 60, 60), Color3.fromRGB(100, 10, 10) } local function createFloatingBall(parent, xPos, yPos, size, color) local ball = Instance.new("Frame", parent) ball.Size = UDim2.new(0, size, 0, size) ball.Position = UDim2.new(0, xPos, 0, yPos) ball.BackgroundColor3 = color ball.BackgroundTransparency = 0.3 ball.BorderSizePixel = 0 local corner = Instance.new("UICorner", ball) corner.CornerRadius = UDim.new(1, 0) local glow = Instance.new("Frame", ball) glow.Size = UDim2.new(1.5, 0, 1.5, 0) glow.Position = UDim2.new(-0.25, 0, -0.25, 0) glow.BackgroundColor3 = color glow.BackgroundTransparency = 0.7 glow.BorderSizePixel = 0 local glowCorner = Instance.new("UICorner", glow) glowCorner.CornerRadius = UDim.new(1, 0) return ball end local function animateBalls() for _, ball in pairs(balls) do task.spawn(function() local startPos = ball.Position local amplitude = math.random(20, 50) local speed = math.random(2, 5) local time = 0 while ball and ball.Parent do time = time + 0.016 local newY = startPos.Y.Offset + math.sin(time * speed) * amplitude ball.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset, startPos.Y.Scale, newY) RunService.Heartbeat:Wait() end end) end end -------------------------------------------------- -- MAIN PANEL (MODERN RED/DARK THEME) -------------------------------------------------- local frame = Instance.new("Frame", gui) frame.Size = UDim2.new(0, 350, 0, 530) frame.Position = UDim2.new(0, 80, 0.5, -265) frame.BackgroundColor3 = Color3.fromRGB(30, 10, 10) frame.BackgroundTransparency = 0.05 frame.BorderSizePixel = 0 frame.Visible = true frame.Active = true frame.Draggable = true local frameCorner = Instance.new("UICorner", frame) frameCorner.CornerRadius = UDim.new(0, 15) local frameShadow = Instance.new("Frame", frame) frameShadow.Size = UDim2.new(1, 15, 1, 15) frameShadow.Position = UDim2.new(0, -7, 0, -7) frameShadow.BackgroundColor3 = Color3.fromRGB(0, 0, 0) frameShadow.BackgroundTransparency = 0.25 frameShadow.BorderSizePixel = 0 frameShadow.ZIndex = -1 local frameShadowCorner = Instance.new("UICorner", frameShadow) frameShadowCorner.CornerRadius = UDim.new(0, 18) -- Toggle button (floating) local toggle = Instance.new("TextButton", gui) toggle.Size = UDim2.new(0, 55, 0, 55) toggle.Position = UDim2.new(0, 20, 0.5, -27) toggle.Text = "πŸ‘‘" toggle.TextSize = 28 toggle.BackgroundColor3 = Color3.fromRGB(150, 20, 20) toggle.BackgroundTransparency = 0.05 toggle.BorderSizePixel = 0 toggle.Visible = true toggle.Active = true toggle.Draggable = true local toggleCorner = Instance.new("UICorner", toggle) toggleCorner.CornerRadius = UDim.new(1, 0) local titleBar = Instance.new("Frame", frame) titleBar.Size = UDim2.new(1, 0, 0, 60) titleBar.Position = UDim2.new(0, 0, 0, 0) titleBar.BackgroundColor3 = Color3.fromRGB(150, 20, 20) titleBar.BackgroundTransparency = 0.1 titleBar.BorderSizePixel = 0 local titleBarCorner = Instance.new("UICorner", titleBar) titleBarCorner.CornerRadius = UDim.new(0, 15) local titleMain = Instance.new("TextLabel", titleBar) titleMain.Size = UDim2.new(1, 0, 1, 0) titleMain.Text = "πŸ‘‘ RUBO PANEL" titleMain.TextColor3 = Color3.new(1, 1, 1) titleMain.BackgroundTransparency = 1 titleMain.Font = Enum.Font.GothamBold titleMain.TextSize = 22 local targetLabel = Instance.new("TextLabel", frame) targetLabel.Size = UDim2.new(1, 0, 0, 35) targetLabel.Position = UDim2.new(0, 0, 0, 70) targetLabel.Text = "🎯 COMMANDS TO: NONE" targetLabel.TextColor3 = Color3.fromRGB(255, 80, 80) targetLabel.BackgroundTransparency = 1 targetLabel.Font = Enum.Font.GothamBold targetLabel.TextSize = 15 local cmdSection = Instance.new("Frame", frame) cmdSection.Size = UDim2.new(1, -20, 0, 190) cmdSection.Position = UDim2.new(0, 10, 0, 115) cmdSection.BackgroundColor3 = Color3.fromRGB(20, 5, 5) cmdSection.BackgroundTransparency = 0.15 cmdSection.BorderSizePixel = 0 local cmdSectionCorner = Instance.new("UICorner", cmdSection) cmdSectionCorner.CornerRadius = UDim.new(0, 10) local cmdTitle = Instance.new("TextLabel", cmdSection) cmdTitle.Size = UDim2.new(1, 0, 0, 30) cmdTitle.Position = UDim2.new(0, 0, 0, 0) cmdTitle.Text = "πŸ“ COMMANDS" cmdTitle.TextColor3 = Color3.fromRGB(255, 100, 100) cmdTitle.BackgroundTransparency = 1 cmdTitle.Font = Enum.Font.GothamBold cmdTitle.TextSize = 14 local cmdText = Instance.new("TextLabel", cmdSection) cmdText.Size = UDim2.new(1, -20, 1, -40) cmdText.Position = UDim2.new(0, 10, 0, 35) cmdText.Text = "!ro - Start RO spam\n!assemble - Line up bots behind you\n!Ravan - Hover bot heads on you\n!rubo - Bots TP randomly around\n!Ruboking - Kicks the bot\n!stop - Stop spam & loops\n!say - Say something" cmdText.TextColor3 = Color3.fromRGB(220, 200, 200) cmdText.BackgroundTransparency = 1 cmdText.Font = Enum.Font.Gotham cmdText.TextSize = 13 cmdText.TextXAlignment = Enum.TextXAlignment.Left cmdText.TextYAlignment = Enum.TextYAlignment.Top local playerSection = Instance.new("Frame", frame) playerSection.Size = UDim2.new(1, -20, 0, 200) playerSection.Position = UDim2.new(0, 10, 0, 315) playerSection.BackgroundColor3 = Color3.fromRGB(20, 5, 5) playerSection.BackgroundTransparency = 0.15 playerSection.BorderSizePixel = 0 local playerSectionCorner = Instance.new("UICorner", playerSection) playerSectionCorner.CornerRadius = UDim.new(0, 10) local playerTitle = Instance.new("TextLabel", playerSection) playerTitle.Size = UDim2.new(1, 0, 0, 30) playerTitle.Position = UDim2.new(0, 0, 0, 0) playerTitle.Text = "πŸ‘₯ PLAYERS" playerTitle.TextColor3 = Color3.fromRGB(255, 100, 100) playerTitle.BackgroundTransparency = 1 playerTitle.Font = Enum.Font.GothamBold playerTitle.TextSize = 14 local scroll = Instance.new("ScrollingFrame", playerSection) scroll.Size = UDim2.new(1, -10, 1, -40) scroll.Position = UDim2.new(0, 5, 0, 35) scroll.BackgroundTransparency = 1 scroll.BorderSizePixel = 0 scroll.ScrollBarThickness = 6 scroll.ScrollBarImageColor3 = Color3.fromRGB(150, 20, 20) local function loadPlayers() scroll:ClearAllChildren() local y = 0 for _, plr in pairs(Players:GetPlayers()) do local btn = Instance.new("TextButton", scroll) btn.Size = UDim2.new(1, -10, 0, 35) btn.Position = UDim2.new(0, 5, 0, y) btn.Text = "πŸ‘€ " .. plr.Name btn.BackgroundColor3 = Color3.fromRGB(150, 20, 20) btn.BackgroundTransparency = 0.2 btn.TextColor3 = Color3.new(1, 1, 1) btn.Font = Enum.Font.Gotham btn.TextSize = 14 btn.BorderSizePixel = 0 local btnCorner = Instance.new("UICorner", btn) btnCorner.CornerRadius = UDim.new(0, 6) btn.MouseEnter:Connect(function() btn.BackgroundTransparency = 0.05 end) btn.MouseLeave:Connect(function() btn.BackgroundTransparency = 0.2 end) btn.MouseButton1Click:Connect(function() allowedPlayer = plr.Name targetLabel.Text = "🎯 COMMANDS TO: " .. allowedPlayer end) y = y + 40 end scroll.CanvasSize = UDim2.new(0, 0, 0, y) end loadPlayers() Players.PlayerAdded:Connect(loadPlayers) Players.PlayerRemoving:Connect(loadPlayers) toggle.MouseButton1Click:Connect(function() frame.Visible = not frame.Visible end) local mainBallPositions = { {30, 40, 25, 1}, {300, 35, 22, 2}, {25, 480, 28, 3}, {310, 490, 24, 4}, {175, 20, 20, 5}, {175, 500, 20, 6} } for _, pos in ipairs(mainBallPositions) do local ball = createFloatingBall(frame, pos[1], pos[2], pos[3], ballColors[math.random(1, #ballColors)]) table.insert(balls, ball) end animateBalls()