univarsal script hub
Key RequiredUniversal

univarsal script hub

Universal Scriptpjvhubpjvhub 2.2K views 967 executesUpdated Jan 21, 2026
5.0/ 5(2 votes)
20100% Positive
Lua Scriptβ€’285 lines (9093 chars)
--// SERVICES
local Players = game:GetService("Players")
local UIS = game:GetService("UserInputService")
local RunService = game:GetService("RunService")

--// PLAYER
local lp = Players.LocalPlayer
local char = lp.Character or lp.CharacterAdded:Wait()
local hum = char:WaitForChild("Humanoid")
local root = char:WaitForChild("HumanoidRootPart")

lp.CharacterAdded:Connect(function(c)
	char = c
	hum = c:WaitForChild("Humanoid")
	root = c:WaitForChild("HumanoidRootPart")
end)

--// STATE
local flying=false; local noclip=false; local invis=false
local spectating=false; local spin=false; local fakeLag=false
local spinSpeed=5; local flySpeed=60
local bv,bg; local spectateTarget=nil
local ctrl={F=0,B=0,L=0,R=0,U=0,D=0}

--// UI BASE
local gui=Instance.new("ScreenGui",lp.PlayerGui)
gui.Name="NeonHub"; gui.ResetOnSpawn=false

local main=Instance.new("Frame",gui)
main.Size=UDim2.fromScale(0.28,0.45)
main.Position=UDim2.fromScale(0.05,0.28)
main.BackgroundColor3=Color3.fromRGB(14,16,26)
main.Active=true; main.Draggable=true
Instance.new("UICorner",main).CornerRadius=UDim.new(0,14)
local stroke=Instance.new("UIStroke",main)
stroke.Color=Color3.fromRGB(0,170,255); stroke.Thickness=2

local title=Instance.new("TextLabel",main)
title.Size=UDim2.fromScale(1,0.12)
title.BackgroundTransparency=1
title.Text="NEON CONTROL HUB"
title.Font=Enum.Font.GothamBold
title.TextScaled=true
title.TextColor3=Color3.fromRGB(0,200,255)

local list=Instance.new("UIListLayout",main)
list.Padding=UDim.new(0,8)
list.HorizontalAlignment=Enum.HorizontalAlignment.Center
list.VerticalAlignment=Enum.VerticalAlignment.Top
list.FillDirection=Enum.FillDirection.Vertical
list.SortOrder=Enum.SortOrder.LayoutOrder
list:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
	main.CanvasSize=UDim2.fromOffset(0,list.AbsoluteContentSize.Y+20)
end)

-- spacer
local function spacer(h)
	local f=Instance.new("Frame",main)
	f.Size=UDim2.fromScale(1,h)
	f.BackgroundTransparency=1
end
spacer(0.14)

--// BUTTON MAKER
local function btn(txt)
	local b=Instance.new("TextButton",main)
	b.Size=UDim2.fromScale(0.9,0.08)
	b.Text=txt
	b.Font=Enum.Font.GothamBold
	b.TextScaled=true
	b.BackgroundColor3=Color3.fromRGB(24,28,44)
	b.TextColor3=Color3.fromRGB(230,230,230)
	Instance.new("UICorner",b).CornerRadius=UDim.new(0,10)
	return b
end

--// DROPDOWN
local function dropdown()
	local f=Instance.new("Frame",main)
	f.Size=UDim2.fromScale(0.9,0.08)
	f.BackgroundColor3=Color3.fromRGB(24,28,44)
	Instance.new("UICorner",f).CornerRadius=UDim.new(0,10)
	local t=Instance.new("TextLabel",f)
	t.Size=UDim2.fromScale(0.7,1)
	t.BackgroundTransparency=1
	t.Text="Select Player"
	t.Font=Enum.Font.Gotham
	t.TextScaled=true
	t.TextColor3=Color3.fromRGB(200,200,200)
	local b=Instance.new("TextButton",f)
	b.Position=UDim2.fromScale(0.7,0)
	b.Size=UDim2.fromScale(0.3,1)
	b.Text=">"
	b.Font=Enum.Font.GothamBold
	b.TextScaled=true
	b.BackgroundTransparency=1
	return f,t,b
end

--// SLIDER
local function slider(label,min,max,default,cb)
	local f=Instance.new("Frame",main)
	f.Size=UDim2.fromScale(0.9,0.1)
	f.BackgroundColor3=Color3.fromRGB(24,28,44)
	Instance.new("UICorner",f).CornerRadius=UDim.new(0,10)
	local t=Instance.new("TextLabel",f)
	t.Size=UDim2.fromScale(1,0.45)
	t.BackgroundTransparency=1
	t.Text=label..": "..default
	t.Font=Enum.Font.Gotham
	t.TextScaled=true
	t.TextColor3=Color3.fromRGB(200,200,200)
	local bar=Instance.new("Frame",f)
	bar.Position=UDim2.fromScale(0.05,0.6)
	bar.Size=UDim2.fromScale(0.9,0.15)
	bar.BackgroundColor3=Color3.fromRGB(40,40,60)
	Instance.new("UICorner",bar).CornerRadius=UDim.new(1,0)
	local fill=Instance.new("Frame",bar)
	fill.Size=UDim2.fromScale((default-min)/(max-min),1)
	fill.BackgroundColor3=Color3.fromRGB(0,170,255)
	Instance.new("UICorner",fill).CornerRadius=UDim.new(1,0)
	local drag=false
	bar.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 then drag=true end end)
	bar.InputEnded:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 then drag=false end end)
	UIS.InputChanged:Connect(function(i)
		if drag and i.UserInputType==Enum.UserInputType.MouseMovement then
			local x=math.clamp((i.Position.X-bar.AbsolutePosition.X)/bar.AbsoluteSize.X,0,1)
			fill.Size=UDim2.fromScale(x,1)
			local v=math.floor(min+(max-min)*x)
			t.Text=label..": "..v
			cb(v)
		end
	end)
end

--// FLY
local function flyOn()
	flying=true; hum.PlatformStand=true
	bv=Instance.new("BodyVelocity",root); bv.MaxForce=Vector3.new(9e9,9e9,9e9)
	bg=Instance.new("BodyGyro",root); bg.MaxTorque=Vector3.new(9e9,9e9,9e9); bg.P=9e4
end
local function flyOff()
	flying=false; hum.PlatformStand=false
	if bv then bv:Destroy() end; if bg then bg:Destroy() end
end

--// CONTROLS
UIS.InputBegan:Connect(function(i,g)
	if g then return end
	if i.KeyCode==Enum.KeyCode.W then ctrl.F=1 end
	if i.KeyCode==Enum.KeyCode.S then ctrl.B=-1 end
	if i.KeyCode==Enum.KeyCode.A then ctrl.L=-1 end
	if i.KeyCode==Enum.KeyCode.D then ctrl.R=1 end
	if i.KeyCode==Enum.KeyCode.Space then ctrl.U=1 end
	if i.KeyCode==Enum.KeyCode.LeftShift then ctrl.D=-1 end
end)
UIS.InputEnded:Connect(function(i)
	if i.KeyCode==Enum.KeyCode.W then ctrl.F=0 end
	if i.KeyCode==Enum.KeyCode.S then ctrl.B=0 end
	if i.KeyCode==Enum.KeyCode.A then ctrl.L=0 end
	if i.KeyCode==Enum.KeyCode.D then ctrl.R=0 end
	if i.KeyCode==Enum.KeyCode.Space then ctrl.U=0 end
	if i.KeyCode==Enum.KeyCode.LeftShift then ctrl.D=0 end
end)

RunService.RenderStepped:Connect(function(dt)
	if flying and bv and bg then
		local cam=workspace.CurrentCamera
		bg.CFrame=cam.CFrame
		bv.Velocity=(cam.CFrame.LookVector*(ctrl.F+ctrl.B)
			+cam.CFrame.RightVector*(ctrl.R+ctrl.L)
			+Vector3.new(0,ctrl.U+ctrl.D,0))*flySpeed
	end
	if noclip then
		for _,p in ipairs(char:GetDescendants()) do
			if p:IsA("BasePart") then p.CanCollide=false end
		end
	end
	if spin then root.CFrame=root.CFrame*CFrame.Angles(0,math.rad(spinSpeed),0) end
end)

--// FAKE LAG (visual)
task.spawn(function()
	while true do
		if fakeLag then task.wait(0.12) else task.wait() end
	end
end)

--// UI ELEMENTS
local flyBtn=btn("Fly : OFF")
flyBtn.MouseButton1Click:Connect(function()
	if flying then flyOff(); flyBtn.Text="Fly : OFF" else flyOn(); flyBtn.Text="Fly : ON" end
end)

local ncBtn=btn("Noclip : OFF")
ncBtn.MouseButton1Click:Connect(function()
	noclip=not noclip; ncBtn.Text="Noclip : "..(noclip and "ON" or "OFF")
end)

local invBtn=btn("Invisible : OFF")
invBtn.MouseButton1Click:Connect(function()
	invis=not invis
	for _,p in ipairs(char:GetDescendants()) do
		if p:IsA("BasePart") or p:IsA("Decal") then
			p.LocalTransparencyModifier=invis and 1 or 0
		end
	end
	invBtn.Text="Invisible : "..(invis and "ON" or "OFF")
end)

local dd,ddText,ddBtn=dropdown()
local idx=1
local function getPlayers()
	local t={}
	for _,pl in ipairs(Players:GetPlayers()) do
		if pl~=lp then table.insert(t,pl) end
	end
	return t
end
ddBtn.MouseButton1Click:Connect(function()
	local p=getPlayers()
	if #p==0 then ddText.Text="No players"; return end
	idx=idx%#p+1
	spectateTarget=p[idx]
	ddText.Text=spectateTarget.Name
end)

local specBtn=btn("Spectate : OFF")
specBtn.MouseButton1Click:Connect(function()
	if spectating then
		workspace.CurrentCamera.CameraSubject=hum
		spectating=false; specBtn.Text="Spectate : OFF"
	elseif spectateTarget and spectateTarget.Character then
		workspace.CurrentCamera.CameraSubject=spectateTarget.Character:FindFirstChildOfClass("Humanoid")
		spectating=true; specBtn.Text="Spectate : ON"
	end
end)

local tpBtn=btn("TP To Player")
tpBtn.MouseButton1Click:Connect(function()
	if spectateTarget and spectateTarget.Character and spectateTarget.Character:FindFirstChild("HumanoidRootPart") then
		root.CFrame=spectateTarget.Character.HumanoidRootPart.CFrame*CFrame.new(0,0,-3)
	end
end)

local flingBtn=btn("TP Fling")
flingBtn.MouseButton1Click:Connect(function()
	if spectateTarget and spectateTarget.Character and spectateTarget.Character:FindFirstChild("HumanoidRootPart") then
		root.CFrame=spectateTarget.Character.HumanoidRootPart.CFrame
		root.Velocity=Vector3.new(0,120,0)
	end
end)

local spinBtn=btn("Spin : OFF")
spinBtn.MouseButton1Click:Connect(function()
	spin=not spin; spinBtn.Text="Spin : "..(spin and "ON" or "OFF")
end)

slider("Spin Speed",1,25,spinSpeed,function(v) spinSpeed=v end)

local lagBtn=btn("Fake Lag : OFF")
lagBtn.MouseButton1Click:Connect(function()
	fakeLag=not fakeLag; lagBtn.Text="Fake Lag : "..(fakeLag and "ON" or "OFF")
end)

--// MINIMIZE
local min=btn("MINIMIZE")
local mini=Instance.new("TextButton",gui)
mini.Size=UDim2.fromScale(0.12,0.07)
mini.Position=UDim2.fromScale(0.05,0.28)
mini.Text="NEON"
mini.Font=Enum.Font.GothamBold
mini.TextScaled=true
mini.BackgroundColor3=Color3.fromRGB(14,16,26)
mini.TextColor3=Color3.fromRGB(0,200,255)
mini.Visible=false
Instance.new("UICorner",mini).CornerRadius=UDim.new(0,14)
Instance.new("UIStroke",mini).Color=Color3.fromRGB(0,170,255)

min.MouseButton1Click:Connect(function()
	main.Visible=false; mini.Visible=true
end)
mini.MouseButton1Click:Connect(function()
	main.Visible=true; mini.Visible=false
end)

Features & Information

✨ Features πŸš€ Fly (WASD + Space / Shift) 🧊 Noclip toggle πŸ‘» Invisible (local transparency) πŸ‘οΈ Spectate selected player πŸ“ TP to selected player πŸŒ€ Spin with speed slider 🎭 Fake lag (client visual) πŸ’₯ TP-Fling (touch fling) βž– Minimize / Restore UI 🎨 Neon / futuristic look

Community Comments (3)

pjvhubpjvhubJan 21, 2026

pls tell me if it works and if it has bugs i will fix it

bruhhhhhhhbruhhhhhhhJan 22, 2026

oke

Vsunita1507Vsunita1507Apr 6, 2026

What in the script open

More Scripts for Universal Scripts