Admin panel
Key RequiredUniversal

Admin panel

Universal Scriptdif240121dif240121 1.1K views 85.6K executesUpdated Sep 5, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•230 lines (6131 chars)
--// CONFIGURACIÓN
local DEFAULT_SPEED = 16
local DEFAULT_JUMP = 50

--// SERVICIOS
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")

local player = Players.LocalPlayer

--// PERSONAJE
local character
local humanoid

local function setupCharacter(char)
	character = char
	humanoid = char:WaitForChild("Humanoid")

	humanoid.WalkSpeed = DEFAULT_SPEED
	humanoid.UseJumpPower = true
	humanoid.JumpPower = DEFAULT_JUMP
end

if player.Character then
	setupCharacter(player.Character)
end

player.CharacterAdded:Connect(setupCharacter)

--// GUI
local gui = Instance.new("ScreenGui")
gui.Name = "AdminControlGUI"
gui.ResetOnSpawn = false
gui.Parent = player:WaitForChild("PlayerGui")

--// BOTÓN PRINCIPAL
local openButton = Instance.new("TextButton")
openButton.Size = UDim2.fromOffset(55, 55)
openButton.Position = UDim2.new(0, 20, 0.5, -25)
openButton.Text = "MENU"
openButton.TextScaled = true
openButton.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
openButton.TextColor3 = Color3.new(1, 1, 1)
openButton.Parent = gui

Instance.new("UICorner", openButton).CornerRadius = UDim.new(0, 12)

--// VENTANA
local frame = Instance.new("Frame")
frame.Size = UDim2.fromOffset(280, 330)
frame.Position = UDim2.new(0.5, -140, 0.5, -165)
frame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
frame.Visible = true
frame.Parent = gui

Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 15)

--// TÍTULO
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 45)
title.BackgroundTransparency = 1
title.Text = "⚙️ CONTROLES"
title.TextColor3 = Color3.new(1, 1, 1)
title.TextScaled = true
title.Parent = frame

--// CREAR CAJA
local function createBox(text, y)
	local label = Instance.new("TextLabel")
	label.Size = UDim2.new(1, -30, 0, 25)
	label.Position = UDim2.fromOffset(15, y)
	label.BackgroundTransparency = 1
	label.Text = text
	label.TextColor3 = Color3.new(1, 1, 1)
	label.TextXAlignment = Enum.TextXAlignment.Left
	label.Parent = frame

	local box = Instance.new("TextBox")
	box.Size = UDim2.new(1, -30, 0, 35)
	box.Position = UDim2.fromOffset(15, y + 25)
	box.BackgroundColor3 = Color3.fromRGB(45, 45, 45)
	box.TextColor3 = Color3.new(1, 1, 1)
	box.PlaceholderText = "Escribe un número"
	box.Text = ""
	box.ClearTextOnFocus = false
	box.Parent = frame

	Instance.new("UICorner", box).CornerRadius = UDim.new(0, 8)

	return box
end

local speedBox = createBox("⚡ Velocidad", 55)
local jumpBox = createBox("🦘 Salto", 120)

--// BOTÓN NOCLIP
local noclipButton = Instance.new("TextButton")
noclipButton.Size = UDim2.new(1, -30, 0, 40)
noclipButton.Position = UDim2.fromOffset(15, 190)
noclipButton.Text = "👻 Noclip: OFF"
noclipButton.TextScaled = true
noclipButton.BackgroundColor3 = Color3.fromRGB(170, 50, 50)
noclipButton.TextColor3 = Color3.new(1, 1, 1)
noclipButton.Parent = frame

Instance.new("UICorner", noclipButton).CornerRadius = UDim.new(0, 8)

--// BOTÓN APLICAR
local applyButton = Instance.new("TextButton")
applyButton.Size = UDim2.new(1, -30, 0, 40)
applyButton.Position = UDim2.fromOffset(15, 240)
applyButton.Text = "✅ Aplicar"
applyButton.TextScaled = true
applyButton.BackgroundColor3 = Color3.fromRGB(50, 150, 80)
applyButton.TextColor3 = Color3.new(1, 1, 1)
applyButton.Parent = frame

Instance.new("UICorner", applyButton).CornerRadius = UDim.new(0, 8)

--// SALDO
local moneyButton = Instance.new("TextButton")
moneyButton.Size = UDim2.new(1, -30, 0, 35)
moneyButton.Position = UDim2.fromOffset(15, 285)
moneyButton.Text = "💰 Añadir saldo de prueba"
moneyButton.TextScaled = true
moneyButton.BackgroundColor3 = Color3.fromRGB(180, 140, 30)
moneyButton.TextColor3 = Color3.new(1, 1, 1)
moneyButton.Parent = frame

Instance.new("UICorner", moneyButton).CornerRadius = UDim.new(0, 8)

--// APLICAR VELOCIDAD Y SALTO
applyButton.MouseButton1Click:Connect(function()
	if not humanoid then return end

	local speed = tonumber(speedBox.Text)
	local jump = tonumber(jumpBox.Text)

	if speed then
		humanoid.WalkSpeed = math.clamp(speed, 0, 500)
	end

	if jump then
		humanoid.JumpPower = math.clamp(jump, 0, 500)
	end
end)

--// NOCLIP
local noclip = false

noclipButton.MouseButton1Click:Connect(function()
	noclip = not noclip

	if noclip then
		noclipButton.Text = "👻 Noclip: ON"
		noclipButton.BackgroundColor3 = Color3.fromRGB(50, 170, 80)
	else
		noclipButton.Text = "👻 Noclip: OFF"
		noclipButton.BackgroundColor3 = Color3.fromRGB(170, 50, 50)
	end
end)

RunService.Stepped:Connect(function()
	if noclip and character then
		for _, part in ipairs(character:GetDescendants()) do
			if part:IsA("BasePart") then
				part.CanCollide = false
			end
		end
	end
end)

--// ABRIR / CERRAR GUI
openButton.MouseButton1Click:Connect(function()
	frame.Visible = not frame.Visible
end)

--// HACER OBJETO ARRASTRABLE
local function makeDraggable(object)
	local dragging = false
	local dragStart
	local startPosition

	object.InputBegan:Connect(function(input)
		if input.UserInputType == Enum.UserInputType.MouseButton1
			or input.UserInputType == Enum.UserInputType.Touch then

			dragging = true
			dragStart = input.Position
			startPosition = object.Position

			input.Changed:Connect(function()
				if input.UserInputState == Enum.UserInputState.End then
					dragging = false
				end
			end)
		end
	end)

	UserInputService.InputChanged:Connect(function(input)
		if not dragging then return end

		if input.UserInputType == Enum.UserInputType.MouseMovement
			or input.UserInputType == Enum.UserInputType.Touch then

			local delta = input.Position - dragStart

			object.Position = UDim2.new(
				startPosition.X.Scale,
				startPosition.X.Offset + delta.X,
				startPosition.Y.Scale,
				startPosition.Y.Offset + delta.Y
			)
		end
	end)
end

makeDraggable(frame)
makeDraggable(openButton)

--// SALDO DE PRUEBA
-- IMPORTANTE:
-- Este botón NO puede cambiar de forma segura el dinero real
-- del servidor desde un LocalScript.
-- Conecta aquí un RemoteEvent de TU propio sistema de dinero.

moneyButton.MouseButton1Click:Connect(function()
	print("Botón de saldo de prueba pulsado.")
end)

Features & Information

Velocidad saltó infinito noclip y otras cosas
#Admin panel

Community Comments (1)

MrXQS_lol55MrXQS_lol55Sep 13, 2026

Bad

More Scripts for Universal Scripts