M
Description
Iddkkkkeeiiwjwjjjdjiwdijekjdijefhudghjchjjhs
GAME[FPS] Flick
UPDATEDOct 10, 2026
ACCESSKeyless
PLATFORMDesktop
Script source Luau
-- [[ BloxScripts Risk Notice ]]
-- This script has not been verified by BloxScripts.fun. Deal with caution.
--
-- Stay safe:
-- • Never log in on unofficial Roblox sites or lookalike domains.
-- • Real Roblox links use roblox.com (check the .com ending).
-- • Treat fake Roblox login / "claim reward" pages as phishing.
-- [[ End BloxScripts Risk Notice ]]
--========================================================--
-- GUBBY HUB --
-- Roblox Studio Panel --
-- SINGLE SCRIPT --
--========================================================--
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UIS = game:GetService("UserInputService")
local CAS = game:GetService("ContextActionService")
local Lighting = game:GetService("Lighting")
local TweenService = game:GetService("TweenService")
local LP = Players.LocalPlayer
local Camera = workspace.CurrentCamera
local PlayerGui = LP:WaitForChild("PlayerGui")
--========================================================--
-- SETTINGS
--========================================================--
local S = {
WalkSpeed = 16,
JumpPower = 50,
FlySpeed = 80,
SpinSpeed = 20,
Gravity = 196.2,
FOV = 70,
Aim = false,
AimFOV = 180,
AimSmooth = 0.25,
AimPart = "Head",
ESP = false,
ESPNames = true,
ESPDistance = true,
ESPHealth = true,
Noclip = false,
Fly = false,
InfiniteJump = false,
Spin = false,
Fullbright = false,
Freecam = false,
TeamCheck = false,
VisibleCheck = false,
}
local Character
local Humanoid
local Root
local function RefreshCharacter()
Character = LP.Character
if not Character then return end
Humanoid = Character:FindFirstChildOfClass("Humanoid")
Root = Character:FindFirstChild("HumanoidRootPart")
end
RefreshCharacter()
LP.CharacterAdded:Connect(function()
task.wait(0.5)
RefreshCharacter()
end)
--========================================================--
-- GUI
--========================================================--
local GUI = Instance.new("ScreenGui")
GUI.Name = "GubbyHub"
GUI.ResetOnSpawn = false
GUI.IgnoreGuiInset = true
GUI.DisplayOrder = 999
GUI.Parent = PlayerGui
local Main = Instance.new("Frame")
Main.Name = "Main"
Main.Size = UDim2.fromOffset(430, 590)
Main.Position = UDim2.new(0.5, -215, 0.5, -295)
Main.BackgroundColor3 = Color3.fromRGB(11, 15, 13)
Main.BorderSizePixel = 0
Main.Active = true
Main.Draggable = true
Main.Parent = GUI
local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 18)
MainCorner.Parent = Main
local MainStroke = Instance.new("UIStroke")
MainStroke.Color = Color3.fromRGB(67, 180, 94)
MainStroke.Thickness = 2
MainStroke.Transparency = 0.15
MainStroke.Parent = Main
--========================================================--
-- HEADER
--========================================================--
local Header = Instance.new("Frame")
Header.Size = UDim2.new(1, 0, 0, 62)
Header.BackgroundColor3 = Color3.fromRGB(17, 25, 20)
Header.BorderSizePixel = 0
Header.Parent = Main
local HeaderCorner = Instance.new("UICorner")
HeaderCorner.CornerRadius = UDim.new(0, 18)
HeaderCorner.Parent = Header
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, -100, 0, 32)
Title.Position = UDim2.fromOffset(18, 7)
Title.BackgroundTransparency = 1
Title.Text = "GUBBY HUB"
Title.TextColor3 = Color3.fromRGB(120, 255, 150)
Title.Font = Enum.Font.GothamBlack
Title.TextSize = 25
Title.TextXAlignment = Enum.TextXAlignment.Left
Title.Parent = Header
local Status = Instance.new("TextLabel")
Status.Size = UDim2.new(1, -100, 0, 20)
Status.Position = UDim2.fromOffset(19, 37)
Status.BackgroundTransparency = 1
Status.Text = "● READY"
Status.TextColor3 = Color3.fromRGB(100, 220, 120)
Status.Font = Enum.Font.Gotham
Status.TextSize = 12
Status.TextXAlignment = Enum.TextXAlignment.Left
Status.Parent = Header
local CloseButton = Instance.new("TextButton")
CloseButton.Size = UDim2.fromOffset(42, 42)
CloseButton.Position = UDim2.new(1, -52, 0, 10)
CloseButton.BackgroundColor3 = Color3.fromRGB(40, 55, 44)
CloseButton.Text = "×"
CloseButton.TextColor3 = Color3.new(1,1,1)
CloseButton.TextSize = 27
CloseButton.Font = Enum.Font.GothamBold
CloseButton.Parent = Header
Instance.new("UICorner", CloseButton).CornerRadius = UDim.new(0, 10)
--========================================================--
-- TAB BAR
--========================================================--
local TabBar = Instance.new("ScrollingFrame")
TabBar.Size = UDim2.new(1, -20, 0, 45)
TabBar.Position = UDim2.fromOffset(10, 70)
TabBar.BackgroundTransparency = 1
TabBar.BorderSizePixel = 0
TabBar.ScrollBarThickness = 0
TabBar.ScrollingDirection = Enum.ScrollingDirection.X
TabBar.Parent = Main
local TabLayout = Instance.new("UIListLayout")
TabLayout.FillDirection = Enum.FillDirection.Horizontal
TabLayout.Padding = UDim.new(0, 6)
TabLayout.Parent = TabBar
--========================================================--
-- CONTENT
--========================================================--
local Content = Instance.new("ScrollingFrame")
Content.Size = UDim2.new(1, -20, 1, -130)
Content.Position = UDim2.fromOffset(10, 120)
Content.BackgroundTransparency = 1
Content.BorderSizePixel = 0
Content.ScrollBarThickness = 5
Content.CanvasSize = UDim2.new()
Content.Parent = Main
local ContentLayout = Instance.new("UIListLayout")
ContentLayout.Padding = UDim.new(0, 8)
ContentLayout.Parent = Content
ContentLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
Content.CanvasSize = UDim2.fromOffset(
0,
ContentLayout.AbsoluteContentSize.Y + 15
)
end)
local function ClearContent()
for _, v in ipairs(Content:GetChildren()) do
if v ~= ContentLayout then
v:Destroy()
end
end
end
--========================================================--
-- UI HELPERS
--========================================================--
local function AddButton(Text, Callback)
local B = Instance.new("TextButton")
B.Size = UDim2.new(1, -5, 0, 43)
B.BackgroundColor3 = Color3.fromRGB(25, 36, 28)
B.BorderSizePixel = 0
B.Text = Text
B.TextColor3 = Color3.new(1,1,1)
B.Font = Enum.Font.GothamBold
B.TextSize = 14
B.AutoButtonColor = true
B.Parent = Content
Instance.new("UICorner", B).CornerRadius = UDim.new(0, 10)
B.MouseButton1Click:Connect(function()
Callback()
end)
return B
end
local function AddInput(Label, Value, Callback)
local B = Instance.new("TextBox")
B.Size = UDim2.new(1, -5, 0, 43)
B.BackgroundColor3 = Color3.fromRGB(20, 29, 23)
B.BorderSizePixel = 0
B.TextColor3 = Color3.new(1,1,1)
B.PlaceholderColor3 = Color3.fromRGB(150,150,150)
B.PlaceholderText = Label
B.Text = tostring(Value)
B.ClearTextOnFocus = false
B.Font = Enum.Font.Gotham
B.TextSize = 14
B.Parent = Content
Instance.new("UICorner", B).CornerRadius = UDim.new(0, 10)
B.FocusLost:Connect(function()
local Number = tonumber(B.Text)
if Number then
Callback(Number)
else
B.Text = tostring(Value)
end
end)
return B
end
local function AddToggle(Label, Setting, Callback)
local B
local function Update()
B.Text = Label .. " [" ..
(S[Setting] and "ON" or "OFF") .. "]"
B.BackgroundColor3 =
S[Setting]
and Color3.fromRGB(35, 75, 43)
or Color3.fromRGB(25, 36, 28)
end
B = AddButton("", function()
S[Setting] = not S[Setting]
Update()
if Callback then
Callback(S[Setting])
end
end)
Update()
return B
end
local function AddSection(Text)
local L = Instance.new("TextLabel")
L.Size = UDim2.new(1, -5, 0, 30)
L.BackgroundTransparency = 1
L.Text = " " .. Text
L.TextColor3 = Color3.fromRGB(110, 230, 135)
L.Font = Enum.Font.GothamBold
L.TextSize = 15
L.TextXAlignment = Enum.TextXAlignment.Left
L.Parent = Content
end
--========================================================--
-- ESP
--========================================================--
local ESP = {}
local function RemoveESP(Player)
local Data = ESP[Player]
if Data then
for _, Object in pairs(Data) do
if typeof(Object) == "Instance" then
Object:Destroy()
end
end
end
ESP[Player] = nil
end
local function CreateESP(Player)
if Player == LP then return end
if not Player.Character then return end
RemoveESP(Player)
local CharacterModel = Player.Character
local Highlight = Instance.new("Highlight")
Highlight.Name = "GubbyESP"
Highlight.FillTransparency = 0.65
Highlight.OutlineTransparency = 0
Highlight.Parent = CharacterModel
local Billboard = Instance.new("BillboardGui")
Billboard.Name = "GubbyESPInfo"
Billboard.Size = UDim2.fromOffset(180, 65)
Billboard.StudsOffset = Vector3.new(0, 3, 0)
Billboard.AlwaysOnTop = true
Billboard.Parent = CharacterModel:FindFirstChild("Head") or CharacterModel
local Info = Instance.new("TextLabel")
Info.Size = UDim2.fromScale(1,1)
Info.BackgroundTransparency = 1
Info.TextColor3 = Color3.new(1,1,1)
Info.TextStrokeTransparency = 0
Info.Font = Enum.Font.GothamBold
Info.TextSize = 13
Info.Parent = Billboard
local Head = CharacterModel:FindFirstChild("Head")
local Connection
Connection = RunService.RenderStepped:Connect(function()
if not S.ESP or not Player.Parent
or not CharacterModel.Parent
or not Head
or not Head.Parent then
if Connection then
Connection:Disconnect()
end
return
end
local Distance = 0
if Root then
Distance = math.floor(
(Root.Position - Head.Position).Magnitude
)
end
local HP = CharacterModel:FindFirstChildOfClass("Humanoid")
local Health = HP and math.floor(HP.Health) or 0
local Text = ""
if S.ESPNames then
Text ..= Player.DisplayName .. "\n"
end
if S.ESPDistance then
Text ..= Distance .. " studs"
end
if S.ESPHealth and HP then
Text ..= "\nHP: " .. Health
end
Info.Text = Text
end)
ESP[Player] = {
Highlight = Highlight,
Billboard = Billboard,
Connection = Connection
}
end
local function UpdateESP()
if not S.ESP then
for Player in pairs(ESP) do
RemoveESP(Player)
end
return
end
for _, Player in ipairs(Players:GetPlayers()) do
CreateESP(Player)
end
end
Players.PlayerAdded:Connect(function(Player)
Player.CharacterAdded:Connect(function()
task.wait(0.5)
if S.ESP then
CreateESP(Player)
end
end)
end)
Players.PlayerRemoving:Connect(function(Player)
RemoveESP(Player)
end)
--========================================================--
-- AIM ASSIST
--========================================================--
local FOVCircle = Instance.new("Frame")
FOVCircle.Name = "AimFOV"
FOVCircle.AnchorPoint = Vector2.new(0.5,0.5)
FOVCircle.BackgroundTransparency = 1
FOVCircle.Size = UDim2.fromOffset(S.AimFOV * 2, S.AimFOV * 2)
FOVCircle.Position = UDim2.fromScale(0.5,0.5)
FOVCircle.Visible = false
FOVCircle.Parent = GUI
local FOVCorner = Instance.new("UICorner")
FOVCorner.CornerRadius = UDim.new(1,0)
FOVCorner.Parent = FOVCircle
local FOVStroke = Instance.new("UIStroke")
FOVStroke.Thickness = 1
FOVStroke.Color = Color3.fromRGB(100,255,140)
FOVStroke.Transparency = 0.25
FOVStroke.Parent = FOVCircle
local function IsVisible(Target)
if not S.VisibleCheck then
return true
end
if not Root then return false end
local Origin = Camera.CFrame.Position
local Direction = Target.Position - Origin
local Params = RaycastParams.new()
Params.FilterType = Enum.RaycastFilterType.Exclude
Params.FilterDescendantsInstances = {
Character
}
local Result = workspace:Raycast(
Origin,
Direction,
Params
)
if not Result then
return true
end
return Result.Instance:IsDescendantOf(Target.Parent)
end
local function GetTarget()
local Best
local BestDistance = S.AimFOV
local Center = Vector2.new(
Camera.ViewportSize.X / 2,
Camera.ViewportSize.Y / 2
)
for _, Player in ipairs(Players:GetPlayers()) do
if Player ~= LP and Player.Character then
if S.TeamCheck and Player.Team == LP.Team then
continue
end
local Target =
Player.Character:FindFirstChild(S.AimPart)
or Player.Character:FindFirstChild("Head")
local TargetHumanoid =
Player.Character:FindFirstChildOfClass("Humanoid")
if Target and TargetHumanoid
and TargetHumanoid.Health > 0 then
local ScreenPos, Visible =
Camera:WorldToViewportPoint(Target.Position)
if Visible and IsVisible(Target) then
local Distance = (
Vector2.new(ScreenPos.X, ScreenPos.Y)
- Center
).Magnitude
if Distance < BestDistance then
BestDistance = Distance
Best = Target
end
end
end
end
end
return Best
end
RunService.RenderStepped:Connect(function()
FOVCircle.Size =
UDim2.fromOffset(S.AimFOV * 2, S.AimFOV * 2)
FOVCircle.Visible = S.Aim
if not S.Aim then return end
local Target = GetTarget()
if Target then
local Desired = CFrame.lookAt(
Camera.CFrame.Position,
Target.Position
)
Camera.CFrame =
Camera.CFrame:Lerp(
Desired,
math.clamp(S.AimSmooth, 0.01, 1)
)
end
end)
--========================================================--
-- FLY
--========================================================--
local FlyUp = false
local FlyDown = false
local function FlyAction(Action, State)
if State == Enum.UserInputState.Begin then
if Action == "FlyUp" then
FlyUp = true
elseif Action == "FlyDown" then
FlyDown = true
end
elseif State == Enum.UserInputState.End then
if Action == "FlyUp" then
FlyUp = false
elseif Action == "FlyDown" then
FlyDown = false
end
end
return Enum.ContextActionResult.Sink
end
CAS:BindAction(
"FlyUp",
FlyAction,
true,
Enum.KeyCode.Space
)
CAS:BindAction(
"FlyDown",
FlyAction,
true,
Enum.KeyCode.LeftControl
)
CAS:SetTitle("FlyUp", "UP")
CAS:SetTitle("FlyDown", "DOWN")
CAS:SetPosition(
"FlyUp",
UDim2.new(1,-140,1,-180)
)
CAS:SetPosition(
"FlyDown",
UDim2.new(1,-140,1,-110)
)
RunService.RenderStepped:Connect(function()
if not S.Fly or not Root then
return
end
local Move = Vector3.zero
if UIS:IsKeyDown(Enum.KeyCode.W) then
Move += Camera.CFrame.LookVector
end
if UIS:IsKeyDown(Enum.KeyCode.S) then
Move -= Camera.CFrame.LookVector
end
if UIS:IsKeyDown(Enum.KeyCode.A) then
Move -= Camera.CFrame.RightVector
end
if UIS:IsKeyDown(Enum.KeyCode.D) then
Move += Camera.CFrame.RightVector
end
if FlyUp then
Move += Vector3.yAxis
end
if FlyDown then
Move -= Vector3.yAxis
end
if Humanoid and Humanoid.MoveDirection.Magnitude > 0 then
Move += Humanoid.MoveDirection
end
if Move.Magnitude > 0 then
Root.AssemblyLinearVelocity =
Move.Unit * S.FlySpeed
else
Root.AssemblyLinearVelocity =
Vector3.zero
end
end)
--========================================================--
-- NOCLIP / SPIN / MOVEMENT
--========================================================--
RunService.Stepped:Connect(function()
if Character then
if S.Noclip then
for _, Object in ipairs(Character:GetDescendants()) do
if Object:IsA("BasePart") then
Object.CanCollide = false
end
end
end
end
if S.Spin and Root then
Root.CFrame *= CFrame.Angles(
0,
math.rad(S.SpinSpeed),
0
)
end
end)
RunService.Heartbeat:Connect(function()
if Humanoid then
if not S.Fly then
Humanoid.WalkSpeed = S.WalkSpeed
Humanoid.UseJumpPower = true
Humanoid.JumpPower = S.JumpPower
end
end
workspace.Gravity = S.Gravity
Camera.FieldOfView = S.FOV
end)
UIS.JumpRequest:Connect(function()
if S.InfiniteJump and Humanoid then
Humanoid:ChangeState(
Enum.HumanoidStateType.Jumping
)
end
end)
--========================================================--
-- FREECAM
--========================================================--
local FreecamConnection
local function StartFreecam()
if S.Freecam then return end
S.Freecam = true
local StartCFrame = Camera.CFrame
Camera.CameraType = Enum.CameraType.Scriptable
Camera.CFrame = StartCFrame
local Speed = 1.5
FreecamConnection =
RunService.RenderStepped:Connect(function()
local Move = Vector3.zero
if UIS:IsKeyDown(Enum.KeyCode.W) then
Move += Camera.CFrame.LookVector
end
if UIS:IsKeyDown(Enum.KeyCode.S) then
Move -= Camera.CFrame.LookVector
end
if UIS:IsKeyDown(Enum.KeyCode.A) then
Move -= Camera.CFrame.RightVector
end
if UIS:IsKeyDown(Enum.KeyCode.D) then
Move += Camera.CFrame.RightVector
end
if UIS:IsKeyDown(Enum.KeyCode.Space) then
Move += Vector3.yAxis
end
if UIS:IsKeyDown(Enum.KeyCode.LeftControl) then
Move -= Vector3.yAxis
end
if Move.Magnitude > 0 then
Camera.CFrame +=
Move.Unit * Speed
end
end)
end
local function StopFreecam()
S.Freecam = false
if FreecamConnection then
FreecamConnection:Disconnect()
FreecamConnection = nil
end
Camera.CameraType = Enum.CameraType.Custom
if Humanoid then
Camera.CameraSubject = Humanoid
end
end
--========================================================--
-- MOVEMENT TAB
--========================================================--
local function MovementTab()
ClearContent()
AddSection("MOVEMENT")
AddInput(
"WalkSpeed",
S.WalkSpeed,
function(v)
S.WalkSpeed = v
end
)
AddInput(
"JumpPower",
S.JumpPower,
function(v)
S.JumpPower = v
end
)
AddInput(
"Fly Speed",
S.FlySpeed,
function(v)
S.FlySpeed = v
end
)
AddInput(
"Gravity",
S.Gravity,
function(v)
S.Gravity = v
end
)
AddInput(
"Spin Speed",
S.SpinSpeed,
function(v)
S.SpinSpeed = v
end
)
AddToggle("FLY", "Fly")
AddToggle("NOCLIP", "Noclip")
AddToggle("INFINITE JUMP", "InfiniteJump")
AddToggle("SPIN", "Spin")
AddSection("PRESETS")
AddButton("NORMAL", function()
S.WalkSpeed = 16
S.JumpPower = 50
S.Gravity = 196.2
S.FlySpeed = 80
end)
AddButton("FAST", function()
S.WalkSpeed = 50
S.JumpPower = 75
S.FlySpeed = 150
end)
AddButton("ULTRA", function()
S.WalkSpeed = 200
S.JumpPower = 150
S.FlySpeed = 500
end)
end
--========================================================--
-- AIM TAB
--========================================================--
local function AimTab()
ClearContent()
AddSection("AIM ASSIST")
AddToggle("AIM ASSIST", "Aim")
AddInput(
"Aim FOV",
S.AimFOV,
function(v)
S.AimFOV = math.max(1,v)
end
)
AddInput(
"Aim Smooth",
S.AimSmooth,
function(v)
S.AimSmooth = math.clamp(v,0.01,1)
end
)
AddToggle("TEAM CHECK", "TeamCheck")
AddToggle("VISIBLE CHECK", "VisibleCheck")
AddSection("AIM PRESETS")
AddButton("LOW FOV", function()
S.AimFOV = 90
S.AimSmooth = 0.15
end)
AddButton("MEDIUM FOV", function()
S.AimFOV = 180
S.AimSmooth = 0.25
end)
AddButton("HIGH FOV", function()
S.AimFOV = 400
S.AimSmooth = 0.5
end)
AddButton("FAST AIM", function()
S.AimSmooth = 1
end)
end
--========================================================--
-- VISUAL TAB
--========================================================--
local function VisualTab()
ClearContent()
AddSection("PLAYER ESP")
AddToggle("PLAYER ESP", "ESP", function()
UpdateESP()
end)
AddToggle("ESP NAMES", "ESPNames")
AddToggle("ESP DISTANCE", "ESPDistance")
AddToggle("ESP HEALTH", "ESPHealth")
AddSection("CAMERA")
AddInput(
"Camera FOV",
S.FOV,
function(v)
S.FOV = v
end
)
AddButton("FOV 70", function()
S.FOV = 70
end)
AddButton("FOV 90", function()
S.FOV = 90
end)
AddButton("FOV 120", function()
S.FOV = 120
end)
AddSection("LIGHTING")
AddToggle("FULLBRIGHT", "Fullbright", function(On)
if On then
Lighting.Brightness = 3
Lighting.ClockTime = 14
Lighting.FogEnd = 100000
Lighting.GlobalShadows = false
else
Lighting.Brightness = 1
Lighting.GlobalShadows = true
end
end)
AddButton("RESET LIGHTING", function()
Lighting.Brightness = 1
Lighting.GlobalShadows = true
Lighting.FogEnd = 1000
end)
end
--========================================================--
-- PLAYER TAB
--========================================================--
local SelectedPlayer
local function FindPlayer(Name)
Name = Name:lower()
for _, Player in ipairs(Players:GetPlayers()) do
if Player ~= LP then
if Player.Name:lower():sub(1,#Name) == Name
or Player.DisplayName:lower():sub(1,#Name) == Name then
return Player
end
end
end
end
local function PlayerTab()
ClearContent()
AddSection("PLAYER SELECTOR")
local Box = Instance.new("TextBox")
Box.Size = UDim2.new(1,-5,0,43)
Box.BackgroundColor3 = Color3.fromRGB(20,29,23)
Box.BorderSizePixel = 0
Box.TextColor3 = Color3.new(1,1,1)
Box.PlaceholderText = "Enter player name..."
Box.Font = Enum.Font.Gotham
Box.TextSize = 14
Box.Parent = Content
Instance.new("UICorner",Box).CornerRadius = UDim.new(0,10)
Box.FocusLost:Connect(function()
SelectedPlayer = FindPlayer(Box.Text)
if SelectedPlayer then
Status.Text = "● SELECTED: " .. SelectedPlayer.Name
else
Status.Text = "● PLAYER NOT FOUND"
end
end)
AddButton("TELEPORT TO PLAYER", function()
if not SelectedPlayer
or not SelectedPlayer.Character
or not Root then return end
local TargetRoot =
SelectedPlayer.Character:
FindFirstChild("HumanoidRootPart")
if TargetRoot then
Root.CFrame =
TargetRoot.CFrame *
CFrame.new(3,0,0)
end
end)
AddButton("SPECTATE PLAYER", function()
if SelectedPlayer
and SelectedPlayer.Character then
local TargetHumanoid =
SelectedPlayer.Character:
FindFirstChildOfClass("Humanoid")
if TargetHumanoid then
Camera.CameraSubject = TargetHumanoid
end
end
end)
AddButton("STOP SPECTATE", function()
if Humanoid then
Camera.CameraSubject = Humanoid
end
end)
AddButton("SIT", function()
if Humanoid then
Humanoid.Sit = true
end
end)
AddButton("RESET CHARACTER", function()
if Humanoid then
Humanoid.Health = 0
end
end)
AddSection("FREECAM")
AddToggle("FREECAM", "Freecam", function(On)
if On then
StartFreecam()
else
StopFreecam()
end
end)
end
--========================================================--
-- MISC TAB
--========================================================--
local function MiscTab()
ClearContent()
AddSection("WORLD")
AddButton("SPAWN PLATFORM", function()
if not Root then return end
local Platform = Instance.new("Part")
Platform.Name = "GubbyPlatform"
Platform.Size = Vector3.new(14,1,14)
Platform.Anchored = true
Platform.CFrame =
Root.CFrame * CFrame.new(0,-4,0)
Platform.Parent = workspace
task.delay(30,function()
if Platform then
Platform:Destroy()
end
end)
end)
AddButton("SPAWN PLATFORM UNDER PLAYER", function()
if not Root then return end
local Platform = Instance.new("Part")
Platform.Size = Vector3.new(20,1,20)
Platform.Anchored = true
Platform.CFrame =
CFrame.new(
Root.Position.X,
Root.Position.Y - 5,
Root.Position.Z
)
Platform.Parent = workspace
end)
AddSection("RESET")
AddButton("RESET MOVEMENT", function()
S.WalkSpeed = 16
S.JumpPower = 50
S.FlySpeed = 80
S.SpinSpeed = 20
S.Gravity = 196.2
if Humanoid then
Humanoid.WalkSpeed = 16
Humanoid.JumpPower = 50
end
workspace.Gravity = 196.2
end)
AddButton("RESET CAMERA", function()
S.FOV = 70
Camera.FieldOfView = 70
if Humanoid then
Camera.CameraSubject = Humanoid
end
end)
AddButton("RESET EVERYTHING", function()
for Key, Value in pairs({
WalkSpeed = 16,
JumpPower = 50,
FlySpeed = 80,
SpinSpeed = 20,
Gravity = 196.2,
FOV = 70,
Aim = false,
AimFOV = 180,
AimSmooth = 0.25,
ESP = false,
Noclip = false,
Fly = false,
InfiniteJump = false,
Spin = false,
Fullbright = false,
Freecam = false,
TeamCheck = false,
VisibleCheck = false,
}) do
S[Key] = Value
end
RemoveESP()
StopFreecam()
if Humanoid then
Humanoid.WalkSpeed = 16
Humanoid.JumpPower = 50
end
workspace.Gravity = 196.2
Camera.FieldOfView = 70
end)
end
--========================================================--
-- SETTINGS TAB
--========================================================--
local function SettingsTab()
ClearContent()
AddSection("GUBBY HUB")
AddButton("HIDE PANEL", function()
Main.Visible = false
OpenButton.Visible = true
end)
AddButton("RELOAD CHARACTER", function()
RefreshCharacter()
end)
AddButton("RESET UI POSITION", function()
Main.Position =
UDim2.new(0.5,-215,0.5,-295)
end)
AddSection("KEYBINDS")
AddButton("RightShift = Open / Close", function() end)
AddButton("Q = Aim Assist", function() end)
AddButton("F = Fly", function() end)
AddButton("N = Noclip", function() end)
AddSection("INFO")
AddButton("Gubby Hub • Single Script", function() end)
AddButton("Client-side Studio panel", function() end)
end
--========================================================--
-- TABS
--========================================================--
local function CreateTab(Name, Callback)
local B = Instance.new("TextButton")
B.Size = UDim2.fromOffset(92,38)
B.BackgroundColor3 = Color3.fromRGB(25,36,28)
B.BorderSizePixel = 0
B.Text = Name
B.TextColor3 = Color3.new(1,1,1)
B.Font = Enum.Font.GothamBold
B.TextSize = 12
B.Parent = TabBar
Instance.new("UICorner",B).CornerRadius = UDim.new(0,9)
B.MouseButton1Click:Connect(function()
Callback()
for _, Tab in ipairs(TabBar:GetChildren()) do
if Tab:IsA("TextButton") then
Tab.BackgroundColor3 =
Color3.fromRGB(25,36,28)
end
end
B.BackgroundColor3 =
Color3.fromRGB(45,95,54)
end)
return B
end
CreateTab("MOVE", MovementTab)
CreateTab("AIM", AimTab)
CreateTab("VISUAL", VisualTab)
CreateTab("PLAYER", PlayerTab)
CreateTab("MISC", MiscTab)
CreateTab("SETTINGS", SettingsTab)
--========================================================--
-- OPEN BUTTON
--========================================================--
OpenButton = Instance.new("TextButton")
OpenButton.Size = UDim2.fromOffset(62,62)
OpenButton.Position = UDim2.new(0,15,0.5,-31)
OpenButton.BackgroundColor3 = Color3.fromRGB(17,25,20)
OpenButton.BorderSizePixel = 0
OpenButton.Text = "G"
OpenButton.TextColor3 = Color3.fromRGB(120,255,150)
OpenButton.TextSize = 30
OpenButton.Font = Enum.Font.GothamBlack
OpenButton.Visible = false
OpenButton.Parent = GUI
Instance.new("UICorner",OpenButton).CornerRadius = UDim.new(1,0)
local OpenStroke = Instance.new("UIStroke")
OpenStroke.Color = Color3.fromRGB(70,180,95)
OpenStroke.Thickness = 2
OpenStroke.Parent = OpenButton
CloseButton.MouseButton1Click:Connect(function()
Main.Visible = false
OpenButton.Visible = true
end)
OpenButton.MouseButton1Click:Connect(function()
Main.Visible = true
OpenButton.Visible = false
end)
--========================================================--
-- KEYBINDS
--========================================================--
UIS.InputBegan:Connect(function(Input, Processed)
if Processed then return end
if Input.KeyCode == Enum.KeyCode.RightShift then
Main.Visible = not Main.Visible
OpenButton.Visible = not Main.Visible
end
if Input.KeyCode == Enum.KeyCode.Q then
S.Aim = not S.Aim
end
if Input.KeyCode == Enum.KeyCode.F then
S.Fly = not S.Fly
end
if Input.KeyCode == Enum.KeyCode.N then
S.Noclip = not S.Noclip
end
end)
--========================================================--
-- FULLBRIGHT LOOP
--========================================================--
RunService.RenderStepped:Connect(function()
if S.Fullbright then
Lighting.Brightness = 3
Lighting.ClockTime = 14
Lighting.FogEnd = 100000
Lighting.GlobalShadows = false
end
end)
--========================================================--
-- MOBILE RESPONSIVE UI
--========================================================--
local function Resize()
local View = Camera.ViewportSize
if View.X < 600 then
Main.Size = UDim2.new(0.92,0,0.82,0)
Main.Position = UDim2.new(0.04,0,0.09,0)
else
Main.Size = UDim2.fromOffset(430,590)
Main.Position =
UDim2.new(0.5,-215,0.5,-295)
end
end
Camera:GetPropertyChangedSignal("ViewportSize"):Connect(Resize)
Resize()
--========================================================--
-- START
--========================================================--
MovementTab()
Status.Text = "● GUBBY HUB LOADED"
print("GUBBY HUB LOADED")
print("Single-script Studio panel initialized.")Review the source before using it. Executions count successful copies, capped at 10 per user and network per script in 24 hours.
Community discussion
0Start the conversation.


Your community, in one place