Gui Hub
Key RequiredUniversal

Gui Hub

Universal Scriptfabinhopsci279fabinhopsci279 639 views 716 executesUpdated Apr 27, 2026
Unrated
00
Lua Script•355 lines (9612 chars)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UIS = game:GetService("UserInputService")

local player = Players.LocalPlayer

--------------------------------------------------
-- CHARACTER FIX
--------------------------------------------------
local char, root

local function setupCharacter(c)
	char = c
	root = c:WaitForChild("HumanoidRootPart")
end

if player.Character then setupCharacter(player.Character) end
player.CharacterAdded:Connect(setupCharacter)

--------------------------------------------------
-- GUI
--------------------------------------------------
local gui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui"))
gui.Name = "HUB_FINAL"
gui.ResetOnSpawn = false

--------------------------------------------------
-- LOADING
--------------------------------------------------
local load = Instance.new("Frame", gui)
load.Size = UDim2.new(1,0,1,0)
load.BackgroundColor3 = Color3.new(0,0,0)

local txt = Instance.new("TextLabel", load)
txt.Size = UDim2.new(1,0,0,50)
txt.Position = UDim2.new(0,0,0.5,0)
txt.BackgroundTransparency = 1
txt.TextScaled = true
txt.TextColor3 = Color3.new(1,1,1)

for i=1,100 do
	txt.Text = "Loading "..i.."%"
	task.wait(0.01)
end

load:Destroy()

--------------------------------------------------
-- FRAMES
--------------------------------------------------
local frame1 = Instance.new("Frame", gui)
frame1.Size = UDim2.new(0,260,0,360)
frame1.Position = UDim2.new(0.05,0,0.2,0)

local frame2 = Instance.new("Frame", gui)
frame2.Size = UDim2.new(0,260,0,260)
frame2.Position = UDim2.new(0.35,0,0.2,0)

--------------------------------------------------
-- MINIMIZAR
--------------------------------------------------
local minimizeBtn = Instance.new("TextButton", gui)
minimizeBtn.Size = UDim2.new(0,120,0,35)
minimizeBtn.Position = UDim2.new(0.05,0,0.15,0)
minimizeBtn.Text = "Minimizar"

local openBtn = Instance.new("TextButton", gui)
openBtn.Size = UDim2.new(0,120,0,35)
openBtn.Position = UDim2.new(0.05,0,0.05,0)
openBtn.Text = "Abrir"
openBtn.Visible = false

minimizeBtn.MouseButton1Click:Connect(function()
	frame1.Visible=false
	frame2.Visible=false
	minimizeBtn.Visible=false
	openBtn.Visible=true
end)

openBtn.MouseButton1Click:Connect(function()
	frame1.Visible=true
	frame2.Visible=true
	minimizeBtn.Visible=true
	openBtn.Visible=false
end)

--------------------------------------------------
-- BOTÃO
--------------------------------------------------
local function createButton(parent,text,y)
	local b = Instance.new("TextButton", parent)
	b.Size = UDim2.new(0,220,0,35)
	b.Position = UDim2.new(0,20,0,y)
	b.Text = text
	return b
end

--------------------------------------------------
-- FLY
--------------------------------------------------
local flying=false
local flyBtn=createButton(frame1,"Fly: OFF",20)
local flyForce
local flySpeed=60

flyBtn.MouseButton1Click:Connect(function()
	flying=not flying
	flyBtn.Text="Fly: "..(flying and "ON" or "OFF")

	if flying and root then
		flyForce=Instance.new("BodyVelocity",root)
		flyForce.MaxForce=Vector3.new(999999,999999,999999)
	else
		if flyForce then flyForce:Destroy() end
	end
end)

--------------------------------------------------
-- WASD
--------------------------------------------------
local keys={W=false,A=false,S=false,D=false,Space=false,Shift=false}

UIS.InputBegan:Connect(function(i,gp)
	if gp then return end
	if i.KeyCode==Enum.KeyCode.W then keys.W=true end
	if i.KeyCode==Enum.KeyCode.A then keys.A=true end
	if i.KeyCode==Enum.KeyCode.S then keys.S=true end
	if i.KeyCode==Enum.KeyCode.D then keys.D=true end
	if i.KeyCode==Enum.KeyCode.Space then keys.Space=true end
	if i.KeyCode==Enum.KeyCode.LeftShift then keys.Shift=true end
end)

UIS.InputEnded:Connect(function(i)
	if i.KeyCode==Enum.KeyCode.W then keys.W=false end
	if i.KeyCode==Enum.KeyCode.A then keys.A=false end
	if i.KeyCode==Enum.KeyCode.S then keys.S=false end
	if i.KeyCode==Enum.KeyCode.D then keys.D=false end
	if i.KeyCode==Enum.KeyCode.Space then keys.Space=false end
	if i.KeyCode==Enum.KeyCode.LeftShift then keys.Shift=false end
end)

RunService.RenderStepped:Connect(function()
	if flying and flyForce and root then
		local cam=workspace.CurrentCamera
		local dir=Vector3.new()

		if keys.W then dir+=cam.CFrame.LookVector end
		if keys.S then dir-=cam.CFrame.LookVector end
		if keys.A then dir-=cam.CFrame.RightVector end
		if keys.D then dir+=cam.CFrame.RightVector end
		if keys.Space then dir+=cam.CFrame.UpVector end
		if keys.Shift then dir-=cam.CFrame.UpVector end

		if dir.Magnitude>0 then
			flyForce.Velocity=dir.Unit*flySpeed
		else
			flyForce.Velocity=Vector3.new()
		end
	end
end)

--------------------------------------------------
-- SPEED
--------------------------------------------------
local input=Instance.new("TextBox",frame1)
input.Size=UDim2.new(0,220,0,30)
input.Position=UDim2.new(0,20,0,70)
input.PlaceholderText="escreve um número aqui!"

local applyBtn=createButton(frame1,"Aplicar Speed",110)
local status=Instance.new("TextLabel",frame1)
status.Size=UDim2.new(0,220,0,20)
status.Position=UDim2.new(0,20,0,150)

applyBtn.MouseButton1Click:Connect(function()
	local num=tonumber(input.Text)
	if num then
		flySpeed=num
		status.Text="Done!"
	else
		status.Text="Erro!"
	end
end)

--------------------------------------------------
-- NOCLIP
--------------------------------------------------
local noclip=false
local noclipBtn=createButton(frame1,"Noclip: OFF",180)

noclipBtn.MouseButton1Click:Connect(function()
	noclip=not noclip
	noclipBtn.Text="Noclip: "..(noclip and "ON" or "OFF")
end)

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

--------------------------------------------------
-- TELEPORT
--------------------------------------------------
local tpInput=Instance.new("TextBox",frame1)
tpInput.Size=UDim2.new(0,220,0,30)
tpInput.Position=UDim2.new(0,20,0,220)
tpInput.PlaceholderText="Nome do jogador"

local tpBtn=createButton(frame1,"Teleportar",260)

local tpStatus=Instance.new("TextLabel",frame1)
tpStatus.Size=UDim2.new(0,220,0,20)
tpStatus.Position=UDim2.new(0,20,0,300)

tpBtn.MouseButton1Click:Connect(function()
	local name=tpInput.Text
	local target=nil

	for _,p in pairs(Players:GetPlayers()) do
		if string.lower(p.Name):find(string.lower(name)) then
			target=p
			break
		end
	end

	if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") and root then
		root.CFrame=target.Character.HumanoidRootPart.CFrame+Vector3.new(2,0,0)
		tpStatus.Text="Teleportado!"
	else
		tpStatus.Text="Erro!"
	end
end)

--------------------------------------------------
-- ESP PERFEITO
--------------------------------------------------
local espOn=false
local espMode="Todos"
local espType="Todos"

local espBtn=createButton(frame2,"ESP: OFF",20)
local modeBtn=createButton(frame2,"Modo: Todos",80)
local typeBtn=createButton(frame2,"Tipo: Todos",140)

local function clearESP(c)
	if c:FindFirstChild("HL") then c.HL:Destroy() end
	if c:FindFirstChild("Bill") then c.Bill:Destroy() end
	if c:FindFirstChild("Tracer") then c.Tracer:Destroy() end
end

local function applyESP(p)
	if p==player then return end

	local function setup(c)
		task.wait(0.3)
		clearESP(c)
		if not espOn then return end

		if espType=="Caixa" or espType=="Todos" then
			Instance.new("Highlight",c).Name="HL"
		end

		if espType=="Linha" or espType=="Todos" then
			local r1=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
			local r2=c:FindFirstChild("HumanoidRootPart")

			if r1 and r2 then
				local a0=Instance.new("Attachment",r1)
				local a1=Instance.new("Attachment",r2)

				local beam=Instance.new("Beam")
				beam.Name="Tracer"
				beam.Attachment0=a0
				beam.Attachment1=a1
				beam.Parent=c
			end
		end

		local head=c:FindFirstChild("Head")
		if head then
			local bill=Instance.new("BillboardGui",c)
			bill.Name="Bill"
			bill.Adornee=head

			local t=Instance.new("TextLabel",bill)
			t.Size=UDim2.new(1,0,1,0)
			t.BackgroundTransparency=1
			t.TextScaled=true

			local text=""
			if espMode=="Nome" or espMode=="Todos" then text..=p.Name.."\n" end
			if espMode=="Vida" or espMode=="Todos" then
				local h=c:FindFirstChild("Humanoid")
				if h then text..="HP: "..math.floor(h.Health).."\n" end
			end
			if espMode=="Team" or espMode=="Todos" then text..=tostring(p.Team) end

			t.Text=text
		end
	end

	if p.Character then setup(p.Character) end
	p.CharacterAdded:Connect(setup)
end

for _,p in pairs(Players:GetPlayers()) do
	applyESP(p)
end

Players.PlayerAdded:Connect(function(p)
	applyESP(p)
end)

espBtn.MouseButton1Click:Connect(function()
	espOn=not espOn
	espBtn.Text="ESP: "..(espOn and "ON" or "OFF")

	for _,p in pairs(Players:GetPlayers()) do
		if p.Character then
			clearESP(p.Character)
			if espOn then applyESP(p) end
		end
	end
end)

modeBtn.MouseButton1Click:Connect(function()
	espMode=(espMode=="Nome" and "Vida") or (espMode=="Vida" and "Team") or (espMode=="Team" and "Todos") or "Nome"
	modeBtn.Text="Modo: "..espMode

	if espOn then
		for _,p in pairs(Players:GetPlayers()) do
			if p.Character then
				clearESP(p.Character)
				applyESP(p)
			end
		end
	end
end)

typeBtn.MouseButton1Click:Connect(function()
	espType=(espType=="Caixa" and "Linha") or (espType=="Linha" and "Todos") or "Caixa"
	typeBtn.Text="Tipo: "..espType

	if espOn then
		for _,p in pairs(Players:GetPlayers()) do
			if p.Character then
				clearESP(p.Character)
				applyESP(p)
			end
		end
	end
end)

Features & Information

here credit do you tap start now is loading! - Fly ESP mode esp noclip Brazil : tipo ESP Teleport bug fixed : nothing fixeded : Fly Noclip ESP or ESP Mode on ESP tipo New Update : Teleport
#Gui hub#New

Community Comments (1)

fabinhopsci279fabinhopsci279Apr 27, 2026

@gelaylauyw nice meet you do you say w not problem :D thanks for commenting

More Scripts for Universal Scripts