-- SERVICES local Players = game:GetService("Players") local RunService = game:GetService("RunService") local TweenService = game:GetService("TweenService") local player = Players.LocalPlayer -- WAIT FOR PLAYERGUI local playerGui = player:WaitForChild("PlayerGui") -- CHARACTER local char = player.Character or player.CharacterAdded:Wait() local hrp = char:WaitForChild("HumanoidRootPart") -- VARIABLES local activeConnections = {} ------------------------------- -- FUNCTION: GET WORLD PARTS ------------------------------- local function getWorldParts() local parts = {} for _, p in ipairs(workspace:GetDescendants()) do if p:IsA("BasePart") and not p.Anchored then local inPlayer = false for _, plr in ipairs(Players:GetPlayers()) do if plr.Character and p:IsDescendantOf(plr.Character) then inPlayer = true break end end if not inPlayer then table.insert(parts, p) end end end return parts end ------------------------------- -- FUNCTION: CLEAR EFFECTS ------------------------------- local function clearEffects() for _,c in ipairs(activeConnections) do c:Disconnect() end activeConnections = {} end ------------------------------- -- MAIN ULTIMATE GUI ------------------------------- local gui = Instance.new("ScreenGui") gui.Name = "UltimatePartController" gui.ResetOnSpawn = false gui.DisplayOrder = 10 gui.Enabled = false -- starts hidden gui.Parent = playerGui -- MAIN PANEL local mainFrame = Instance.new("Frame", gui) mainFrame.Size = UDim2.fromScale(0.95,0.4) mainFrame.Position = UDim2.fromScale(0.025,0.55) mainFrame.BackgroundColor3 = Color3.fromRGB(20,20,20) mainFrame.BackgroundTransparency = 0.05 mainFrame.BorderSizePixel = 0 mainFrame.ClipsDescendants = true Instance.new("UICorner", mainFrame).CornerRadius = UDim.new(0,20) -- HEADER local header = Instance.new("TextLabel", mainFrame) header.Size = UDim2.fromScale(1,0.15) header.BackgroundTransparency = 1 header.Text = "Ultimate Part Controller" header.Font = Enum.Font.GothamBold header.TextScaled = true header.TextColor3 = Color3.fromRGB(255,255,255) header.TextStrokeTransparency = 0.6 ------------------------------- -- CATEGORY FRAME CREATOR ------------------------------- local function createCategory(title, posScale) local frame = Instance.new("Frame", mainFrame) frame.Size = UDim2.fromScale(0.32,0.7) frame.Position = posScale frame.BackgroundColor3 = Color3.fromRGB(30,30,30) frame.BackgroundTransparency = 0.05 Instance.new("UICorner", frame).CornerRadius = UDim.new(0,15) local label = Instance.new("TextLabel", frame) label.Size = UDim2.fromScale(1,0.15) label.Position = UDim2.fromScale(0,0) label.BackgroundTransparency = 1 label.Text = title label.Font = Enum.Font.GothamBold label.TextScaled = true label.TextColor3 = Color3.fromRGB(255,255,255) local buttonContainer = Instance.new("Frame", frame) buttonContainer.Size = UDim2.fromScale(1,0.85) buttonContainer.Position = UDim2.fromScale(0,0.15) buttonContainer.BackgroundTransparency = 1 return buttonContainer end local movementCategory = createCategory("Movement", UDim2.fromScale(0.02,0.2)) local chaosCategory = createCategory("Chaos", UDim2.fromScale(0.34,0.2)) local collisionCategory = createCategory("Collision", UDim2.fromScale(0.66,0.2)) ------------------------------- -- BUTTON CREATOR ------------------------------- local function createButton(parent, text, color) local b = Instance.new("TextButton", parent) b.Size = UDim2.fromScale(0.9,0.25) b.Position = UDim2.fromScale(0.05,#parent:GetChildren()/1.5) b.Text = text b.TextScaled = true b.Font = Enum.Font.GothamBold b.TextColor3 = Color3.new(1,1,1) b.BackgroundColor3 = color or Color3.fromRGB(50,50,50) b.BorderSizePixel = 0 Instance.new("UICorner", b).CornerRadius = UDim.new(0,15) -- Hover effect b.MouseEnter:Connect(function() TweenService:Create(b, TweenInfo.new(0.15), {BackgroundTransparency = 0.3}):Play() end) b.MouseLeave:Connect(function() TweenService:Create(b, TweenInfo.new(0.15), {BackgroundTransparency = 0}):Play() end) return b end ------------------------------- -- MOVEMENT BUTTONS ------------------------------- createButton(movementCategory,"Lift",Color3.fromRGB(70,130,180)).MouseButton1Click:Connect(function() clearEffects() local con = RunService.RenderStepped:Connect(function() for _,p in ipairs(getWorldParts()) do p.AssemblyLinearVelocity = Vector3.new(0,12,0) end end) table.insert(activeConnections,con) end) createButton(movementCategory,"Orbit",Color3.fromRGB(0,200,150)).MouseButton1Click:Connect(function() clearEffects() local t = 0 local con = RunService.RenderStepped:Connect(function(dt) t += dt*2 for _,p in ipairs(getWorldParts()) do local offset = Vector3.new(math.cos(t)*6,3,math.sin(t)*6) p.AssemblyLinearVelocity = (hrp.Position+offset - p.Position)*6 end end) table.insert(activeConnections,con) end) createButton(movementCategory,"Throw",Color3.fromRGB(220,100,50)).MouseButton1Click:Connect(function() for _,p in ipairs(getWorldParts()) do p.AssemblyLinearVelocity = hrp.CFrame.LookVector*150 + Vector3.new(0,40,0) end end) ------------------------------- -- CHAOS BUTTONS ------------------------------- createButton(chaosCategory,"Spin",Color3.fromRGB(180,0,180)).MouseButton1Click:Connect(function() for _,p in ipairs(getWorldParts()) do p.AssemblyAngularVelocity = Vector3.new(25,25,25) end end) createButton(chaosCategory,"Chaos",Color3.fromRGB(200,0,0)).MouseButton1Click:Connect(function() clearEffects() local con = RunService.RenderStepped:Connect(function() for _,p in ipairs(getWorldParts()) do p.AssemblyLinearVelocity = Vector3.new(math.random(-40,40),math.random(10,60),math.random(-40,40)) end end) table.insert(activeConnections,con) end) createButton(chaosCategory,"Freeze",Color3.fromRGB(0,200,200)).MouseButton1Click:Connect(function() for _,p in ipairs(getWorldParts()) do p.AssemblyLinearVelocity = Vector3.zero p.AssemblyAngularVelocity = Vector3.zero end end) ------------------------------- -- COLLISION BUTTONS ------------------------------- createButton(collisionCategory,"No Collide",Color3.fromRGB(255,165,0)).MouseButton1Click:Connect(function() for _,p in ipairs(getWorldParts()) do p.CanCollide = false end end) createButton(collisionCategory,"Collide",Color3.fromRGB(0,255,0)).MouseButton1Click:Connect(function() for _,p in ipairs(getWorldParts()) do p.CanCollide = true end end) createButton(collisionCategory,"Stop All",Color3.fromRGB(255,50,50)).MouseButton1Click:Connect(function() clearEffects() end) ------------------------------- -- TOGGLE / SPAWN GUI ------------------------------- local toggleGui = Instance.new("ScreenGui") toggleGui.Name = "ToggleRA_GUI" toggleGui.ResetOnSpawn = false toggleGui.DisplayOrder = 11 toggleGui.Parent = playerGui -- FRAME local toggleFrame = Instance.new("Frame", toggleGui) toggleFrame.Size = UDim2.fromScale(0.3,0.1) toggleFrame.Position = UDim2.fromScale(0.35,0.85) toggleFrame.BackgroundColor3 = Color3.fromRGB(30,30,30) toggleFrame.BackgroundTransparency = 0.1 toggleFrame.BorderSizePixel = 0 toggleFrame.ClipsDescendants = true Instance.new("UICorner", toggleFrame).CornerRadius = UDim.new(0,15) -- BUTTON CREATOR local function createSmallButton(parent,text,color,pos) local b = Instance.new("TextButton", parent) b.Size = UDim2.fromScale(0.45,0.8) b.Position = pos b.Text = text b.TextScaled = true b.Font = Enum.Font.GothamBold b.TextColor3 = Color3.new(1,1,1) b.BackgroundColor3 = color or Color3.fromRGB(50,50,50) b.BorderSizePixel = 0 Instance.new("UICorner", b).CornerRadius = UDim.new(0,12) return b end local toggleBtn = createSmallButton(toggleFrame,"Toggle GUI",Color3.fromRGB(70,130,180),UDim2.fromScale(0.02,0.1)) local spawnBtn = createSmallButton(toggleFrame,"Spawn RA",Color3.fromRGB(220,100,50),UDim2.fromScale(0.53,0.1)) -- TOGGLE MAIN GUI toggleBtn.MouseButton1Click:Connect(function() gui.Enabled = not gui.Enabled end) -- SPAWN RA PART spawnBtn.MouseButton1Click:Connect(function() local raPart = Instance.new("Part") raPart.Size = Vector3.new(4,4,4) raPart.Anchored = false raPart.Position = player.Character and player.Character.HumanoidRootPart.Position + Vector3.new(0,10,0) or Vector3.new(0,10,0) raPart.Color = Color3.fromRGB(255,0,0) raPart.Name = "RA_Part" raPart.Parent = workspace end)