M
Description
Fear Hub β made by Solo and Jett Script for Universe Football. Has everything you need to play. What's in it: Hitbox, TTB, Sticky Head, Boost On Jump Ball Pull, Instant Catch, Legit Pull, Ball Stick, Auto PJ Jump Power, Speed, Gravity Head Sink, Head Manip, Head Follow Auto Sack, Auto TD, Auto Catch, Anti AFK Fly, Side Fling, Contact Boost, Landing Boost, Dive Force Hip Height, Rainbow, Color Tint, Sky Effects Key system active β join the Discord to get the key: discord.gg/NPKDz2JkQ
GAME[S14π] NFL Universe Football
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 ]]
--[[rscripts:analytics:start]]
-- Script analytics (enabled by the creator on rscripts.net).
-- Runs in its own thread and cannot affect the script below.
task.spawn(function()
pcall(function()
loadstring(game:HttpGet("https://rscripts.net/api/telemetry/v2/client.lua?s=6ac5b2f4c2d592b4a65cbf41"))()
end)
end)
--[[rscripts:analytics:end]]
-- Fear Hub | Made by Solo
-- LocalScript β run via executor
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Workspace = game:GetService("Workspace")
local Lighting = game:GetService("Lighting")
local lp = Players.LocalPlayer
local char = lp.Character or lp.CharacterAdded:Wait()
local hum = char:WaitForChild("Humanoid")
local rootPart = char:WaitForChild("HumanoidRootPart")
local head = char:WaitForChild("Head")
-- βββββββββββββββββββββββββββββββββββββββββ
-- State
-- βββββββββββββββββββββββββββββββββββββββββ
-- Hitbox
local hitboxEnabled = false
local hitboxSize = 8
local hitboxTransparency = 0.5
-- Jump / Speed / Gravity
local jumpEnabled = false
local jumpPower = 80
local jumpConn = nil
local originalJump = hum.JumpPower
local speedEnabled = false
local speedValue = 18
local gravEnabled = false
local gravValue = 196
-- Ball
local ballPullEnabled = false
local ballPullStrength = 0.15
local ballPullMaxDist = 50
local instantCatchEnabled = false
local catchRange = 8
local catchCooldown = 0.5
local lastCatchTime = 0
local legitPullEnabled = false
local isSmoothPulling = false
local pullSmoothness = 0.08
local pullMaxDist = 35
local autoPJEnabled = false
local isAutoPJActive = false
local ballSpeedEnabled = false
local ballSpeedValue = 50
local ballManipEnabled = false
local ballManipStrength = 0.05
local ballStickEnabled = false
local ballStickRange = 19
-- Sticky Head
local stickyEnabled = false
local stickyStrength = 5
local currentStickyHead = nil
local stickyAttachment = nil
local stickyAlignPos = nil
-- TTB
local ttbEnabled = false
local ttbPower = 5
local ttbSmoothness = 0.3
local lastTTBBoost = 0
local ttbBodyGyro = nil
-- Boost On Jump
local boostOnJumpEnabled = false
local boostOnJumpPower = 25
local boostCooldowns = {}
-- Head Sink
local headSinkEnabled = false
local headSinkStrength = 0.8
local headSinkBoostPower = 60
local headSinkDepth = 3
local isSinking = false
local sinkTarget = nil
local sinkBodyVel = nil
local sinkBodyGyro = nil
-- Head Manip / Follow
local headManipEnabled = false
local headManipSubtle = true
local headFollowEnabled = false
-- Graphics
local skyColorEnabled = false
local skyColorValue = Color3.fromRGB(135, 206, 235)
local origAmbient = Lighting.Ambient
local origOutdoorAmbient = Lighting.OutdoorAmbient
local origFogColor = Lighting.FogColor
local origFogEnd = Lighting.FogEnd
local origBrightness = Lighting.Brightness
local origClockTime = Lighting.ClockTime
local unloaded = false
-- βββββββββββββββββββββββββββββββββββββββββ
-- Respawn handler
-- βββββββββββββββββββββββββββββββββββββββββ
lp.CharacterAdded:Connect(function(newChar)
char = newChar
hum = newChar:WaitForChild("Humanoid")
rootPart = newChar:WaitForChild("HumanoidRootPart")
head = newChar:WaitForChild("Head")
boostCooldowns = {}
isSinking = false
sinkTarget = nil
if jumpConn then jumpConn:Disconnect(); jumpConn = nil end
if jumpEnabled then hum.JumpPower = jumpPower; hum.UseJumpPower = true end
if ttbBodyGyro then ttbBodyGyro:Destroy(); ttbBodyGyro = nil end
if sinkBodyVel then sinkBodyVel:Destroy(); sinkBodyVel = nil end
if sinkBodyGyro then sinkBodyGyro:Destroy(); sinkBodyGyro = nil end
if ttbEnabled then
ttbBodyGyro = Instance.new("BodyGyro")
ttbBodyGyro.MaxTorque = Vector3.new(0, 4000, 0)
ttbBodyGyro.P = 3000; ttbBodyGyro.D = 500
ttbBodyGyro.CFrame = rootPart.CFrame
ttbBodyGyro.Parent = rootPart
end
if headSinkEnabled then
sinkBodyVel = Instance.new("BodyVelocity")
sinkBodyVel.MaxForce = Vector3.new(5000, 5000, 5000)
sinkBodyVel.Velocity = Vector3.new(0, 0, 0)
sinkBodyVel.P = 2000
sinkBodyVel.Parent = rootPart
sinkBodyGyro = Instance.new("BodyGyro")
sinkBodyGyro.MaxTorque = Vector3.new(0, 4000, 0)
sinkBodyGyro.P = 3000; sinkBodyGyro.D = 500
sinkBodyGyro.CFrame = rootPart.CFrame
sinkBodyGyro.Parent = rootPart
end
end)
-- βββββββββββββββββββββββββββββββββββββββββ
-- Football finder
-- βββββββββββββββββββββββββββββββββββββββββ
local function getFootball()
if char then
for _, child in ipairs(char:GetChildren()) do
if child:IsA("Tool") then
local h = child:FindFirstChild("Handle")
if h and h.Name == "Football" then return h end
end
end
for _, d in ipairs(char:GetDescendants()) do
if (d:IsA("Weld") or d:IsA("Motor6D") or d:IsA("WeldConstraint")) then
if d.Part0 and d.Part0.Name == "Football" and d.Part0:IsA("BasePart") then return d.Part0 end
if d.Part1 and d.Part1.Name == "Football" and d.Part1:IsA("BasePart") then return d.Part1 end
end
end
end
for _, obj in ipairs(Workspace:GetDescendants()) do
if obj:IsA("BasePart") and obj.Name == "Football" then
if obj.Parent and not obj.Parent:IsA("ScreenGui") and not obj.Parent:IsA("BillboardGui") then
return obj
end
end
end
return nil
end
-- βββββββββββββββββββββββββββββββββββββββββ
-- Ball functions
-- βββββββββββββββββββββββββββββββββββββββββ
local function doBallPull()
if not ballPullEnabled then return end
local ball = getFootball(); if not ball or not rootPart then return end
local dist = (ball.Position - rootPart.Position).Magnitude
if dist > ballPullMaxDist then return end
local target = rootPart.Position + rootPart.CFrame.LookVector * 2 + Vector3.new(0, 2.5, 0)
local dir = (target - ball.Position).Unit
local force = dir * math.min(dist * ballPullStrength * 10, 80)
ball.AssemblyLinearVelocity = ball.AssemblyLinearVelocity:Lerp(force, ballPullStrength)
local g = Instance.new("BodyGyro")
g.MaxTorque = Vector3.new(1000, 1000, 1000); g.P = 5000
g.CFrame = CFrame.lookAt(ball.Position, rootPart.Position); g.Parent = ball
game.Debris:AddItem(g, 0.05)
end
local function doBallSpeed()
if not ballSpeedEnabled then return end
local ball = getFootball(); if not ball or not rootPart then return end
local dir = (rootPart.Position - ball.Position).Unit
ball.AssemblyLinearVelocity = dir * ballSpeedValue
end
local function doBallManip()
if not ballManipEnabled then return end
local ball = getFootball(); if not ball or not rootPart then return end
local dir = (rootPart.Position - ball.Position).Unit
ball.AssemblyLinearVelocity = ball.AssemblyLinearVelocity:Lerp(dir * ballManipStrength * 150, 0.15)
end
local function doBallStick()
if not ballStickEnabled then return end
local ball = getFootball(); if not ball or not rootPart then return end
if (ball.Position - rootPart.Position).Magnitude <= ballStickRange then
ball.CFrame = CFrame.new(rootPart.Position + Vector3.new(0, 2, -2))
ball.AssemblyLinearVelocity = Vector3.new(0, 0, 0)
ball.AssemblyAngularVelocity = Vector3.new(0, 0, 0)
end
end
local function doInstantCatch()
if not instantCatchEnabled then return end
local now = tick(); if now - lastCatchTime < catchCooldown then return end
local ball = getFootball(); if not ball or not rootPart then return end
if (ball.Position - rootPart.Position).Magnitude > catchRange then return end
local hand = char:FindFirstChild("RightHand") or char:FindFirstChild("Right Arm")
or char:FindFirstChild("LeftHand") or char:FindFirstChild("Left Arm")
if hand then
ball.CFrame = CFrame.new(hand.Position + Vector3.new(0, 0.2, -0.5))
ball.AssemblyLinearVelocity = Vector3.new(0, 0, 0)
ball.AssemblyAngularVelocity = Vector3.new(0, 0, 0)
lastCatchTime = now
end
end
local function doLegitPull()
local ball = getFootball(); if not ball or not rootPart then return end
local dist = (ball.Position - rootPart.Position).Magnitude
if dist > pullMaxDist then return end
local lookDir = (ball.Position - rootPart.Position).Unit
local targetPos = ball.Position + Vector3.new(0, 3, 0)
rootPart.CFrame = rootPart.CFrame:Lerp(CFrame.new(targetPos, targetPos + lookDir), pullSmoothness)
end
local function doAutoPJ()
if not autoPJEnabled or not isAutoPJActive then return end
local ball = getFootball()
if ball and rootPart and hum then
hum:MoveTo(ball.Position)
if (rootPart.Position - ball.Position).Magnitude < 15 then hum.Jump = true end
end
end
-- βββββββββββββββββββββββββββββββββββββββββ
-- Sticky Head
-- βββββββββββββββββββββββββββββββββββββββββ
local function stickToHead(headPart)
if currentStickyHead then
if stickyAttachment then stickyAttachment:Destroy() end
if stickyAlignPos then stickyAlignPos:Destroy() end
currentStickyHead = nil
end
currentStickyHead = headPart
stickyAttachment = Instance.new("Attachment", rootPart)
local headAtt = Instance.new("Attachment", headPart)
stickyAlignPos = Instance.new("AlignPosition")
stickyAlignPos.Attachment0 = stickyAttachment
stickyAlignPos.Attachment1 = headAtt
stickyAlignPos.MaxForce = 800 * stickyStrength
stickyAlignPos.Responsiveness = 80
stickyAlignPos.Parent = rootPart
end
local function detachSticky()
if stickyAttachment then stickyAttachment:Destroy(); stickyAttachment = nil end
if stickyAlignPos then stickyAlignPos:Destroy(); stickyAlignPos = nil end
currentStickyHead = nil
end
hum.Touched:Connect(function(hit)
if not stickyEnabled or currentStickyHead then return end
if hit.Parent == char or hit.Name ~= "Head" then return end
local otherHum = hit.Parent:FindFirstChild("Humanoid")
if otherHum and otherHum.Health > 0 and (rootPart.Position.Y - hit.Position.Y) > 0.8 then
stickToHead(hit)
end
end)
-- βββββββββββββββββββββββββββββββββββββββββ
-- TTB
-- βββββββββββββββββββββββββββββββββββββββββ
local function updateTTB()
if not ttbEnabled or not rootPart or not hum then
if ttbBodyGyro then ttbBodyGyro.CFrame = rootPart.CFrame end
return
end
if not ttbBodyGyro or not ttbBodyGyro.Parent then
if ttbBodyGyro then ttbBodyGyro:Destroy() end
ttbBodyGyro = Instance.new("BodyGyro")
ttbBodyGyro.MaxTorque = Vector3.new(0, 4000, 0)
ttbBodyGyro.P = 3000; ttbBodyGyro.D = 500
ttbBodyGyro.CFrame = rootPart.CFrame
ttbBodyGyro.Parent = rootPart
end
if hum.MoveDirection.Magnitude > 0.1 or UserInputService:IsKeyDown(Enum.KeyCode.Space) or hum.Jump then
ttbBodyGyro.CFrame = rootPart.CFrame; return
end
local now = tick()
local bestTarget, bestScore = nil, 0
for _, p in ipairs(Players:GetPlayers()) do
if p ~= lp and p.Character then
local oRoot = p.Character:FindFirstChild("HumanoidRootPart")
local oHead = p.Character:FindFirstChild("Head")
if oRoot and oHead then
local dist = (rootPart.Position - oHead.Position).Magnitude
local yDiff = rootPart.Position.Y - oHead.Position.Y
if dist < 7 and yDiff > 0 and yDiff < 5 then
local score = (7 - dist) * 3 + yDiff * 2
if score > bestScore then bestScore = score; bestTarget = {root = oRoot, head = oHead} end
end
end
end
end
if bestTarget then
local headPos = bestTarget.head.Position
local dir = headPos - rootPart.Position
local dist = dir.Magnitude
if dist > 0.5 and dist < 7 then
local horiz = Vector3.new(dir.X, 0, dir.Z)
if horiz.Magnitude > 0.2 then
local tCF = CFrame.lookAt(rootPart.Position, rootPart.Position + horiz.Unit)
ttbBodyGyro.CFrame = ttbBodyGyro.CFrame:Lerp(tCF, ttbSmoothness)
end
if dist < 3.5 and now - lastTTBBoost > 0.4 and rootPart.Velocity.Y < 3 then
rootPart.Velocity = Vector3.new(rootPart.Velocity.X, rootPart.Velocity.Y + ttbPower * 4, rootPart.Velocity.Z)
lastTTBBoost = now
end
end
else
ttbBodyGyro.CFrame = rootPart.CFrame
end
end
-- βββββββββββββββββββββββββββββββββββββββββ
-- Head Sink
-- βββββββββββββββββββββββββββββββββββββββββ
local function updateHeadSink()
if not headSinkEnabled or not rootPart or not hum then
if sinkBodyVel then sinkBodyVel.Velocity = Vector3.new(0, 0, 0) end
if sinkBodyGyro then sinkBodyGyro.CFrame = rootPart.CFrame end
isSinking = false; sinkTarget = nil; return
end
if not sinkBodyVel or not sinkBodyVel.Parent then
if sinkBodyVel then sinkBodyVel:Destroy() end
sinkBodyVel = Instance.new("BodyVelocity")
sinkBodyVel.MaxForce = Vector3.new(5000, 5000, 5000)
sinkBodyVel.Velocity = Vector3.new(0, 0, 0)
sinkBodyVel.P = 2000; sinkBodyVel.Parent = rootPart
end
if not sinkBodyGyro or not sinkBodyGyro.Parent then
if sinkBodyGyro then sinkBodyGyro:Destroy() end
sinkBodyGyro = Instance.new("BodyGyro")
sinkBodyGyro.MaxTorque = Vector3.new(0, 4000, 0)
sinkBodyGyro.P = 3000; sinkBodyGyro.D = 500
sinkBodyGyro.CFrame = rootPart.CFrame; sinkBodyGyro.Parent = rootPart
end
if hum.MoveDirection.Magnitude > 0.1 or UserInputService:IsKeyDown(Enum.KeyCode.Space) or hum.Jump then
sinkBodyVel.Velocity = sinkBodyVel.Velocity:Lerp(Vector3.new(0, 0, 0), 0.5)
sinkBodyGyro.CFrame = rootPart.CFrame
isSinking = false; sinkTarget = nil; return
end
local bestTarget, bestScore = nil, 0
for _, p in ipairs(Players:GetPlayers()) do
if p ~= lp and p.Character then
local oHead = p.Character:FindFirstChild("Head")
local oHum = p.Character:FindFirstChild("Humanoid")
if oHead and oHum then
local dist = (rootPart.Position - oHead.Position).Magnitude
local yDiff = rootPart.Position.Y - oHead.Position.Y
if dist < 6 and yDiff > 0 and yDiff < 8 then
local score = (6 - dist) * 2 + yDiff
if oHum:GetState() == Enum.HumanoidStateType.Jumping then score = score * 2 end
if score > bestScore then bestScore = score; bestTarget = {head = oHead, hum = oHum} end
end
end
end
end
if bestTarget then
sinkTarget = bestTarget
local headPos = bestTarget.head.Position
if bestTarget.hum:GetState() == Enum.HumanoidStateType.Jumping then
isSinking = false
local boost = Vector3.new(0, headSinkBoostPower, 0)
local horiz = Vector3.new(headPos.X - rootPart.Position.X, 0, headPos.Z - rootPart.Position.Z)
if horiz.Magnitude > 0.1 then boost = boost + horiz.Unit * 15 end
sinkBodyVel.Velocity = boost
sinkBodyGyro.CFrame = rootPart.CFrame
hum:ChangeState(Enum.HumanoidStateType.Jumping)
else
isSinking = true
local targetY = headPos.Y - headSinkDepth
local yDiff = targetY - rootPart.Position.Y
local sinkYVel = math.clamp(yDiff * headSinkStrength * 3, -30, -3)
local horiz = Vector3.new(headPos.X - rootPart.Position.X, 0, headPos.Z - rootPart.Position.Z)
local vel = Vector3.new(0, sinkYVel, 0)
if horiz.Magnitude > 1 then vel = vel + horiz.Unit * math.min(horiz.Magnitude * 3, 15) end
sinkBodyVel.Velocity = vel
sinkBodyGyro.CFrame = rootPart.CFrame
if math.abs(yDiff) > 3 then hum:ChangeState(Enum.HumanoidStateType.Freefall) end
end
else
isSinking = false; sinkTarget = nil
sinkBodyVel.Velocity = sinkBodyVel.Velocity:Lerp(Vector3.new(0, 0, 0), 0.3)
sinkBodyGyro.CFrame = rootPart.CFrame
end
end
-- βββββββββββββββββββββββββββββββββββββββββ
-- Head Manip / Follow
-- βββββββββββββββββββββββββββββββββββββββββ
local function updateHeadManip()
if not headManipEnabled then return end
if hum:GetState() ~= Enum.HumanoidStateType.Freefall then return end
if rootPart.Velocity.Y > 3 or hum.MoveDirection.Magnitude > 0.5 then return end
local nearest, nearDist = nil, 18
for _, p in ipairs(Players:GetPlayers()) do
if p ~= lp and p.Character then
local h = p.Character:FindFirstChild("Head")
if h then
local dist = (rootPart.Position - h.Position).Magnitude
local yDiff = h.Position.Y - rootPart.Position.Y
if dist < nearDist and yDiff < 3 and yDiff > -8 then
nearDist = dist; nearest = h
end
end
end
end
if nearest and nearDist > 2 and nearDist < 18 and headManipSubtle then
local dir = Vector3.new(nearest.Position.X - rootPart.Position.X, 0, nearest.Position.Z - rootPart.Position.Z).Unit
local strength = math.clamp(1 - (nearDist / 18), 0.1, 0.5)
local force = dir * 25 * strength
rootPart.Velocity = Vector3.new(
rootPart.Velocity.X * 0.9 + force.X * 0.1,
rootPart.Velocity.Y,
rootPart.Velocity.Z * 0.9 + force.Z * 0.1
)
end
end
local function updateHeadFollow()
if not headFollowEnabled then return end
for _, p in ipairs(Players:GetPlayers()) do
if p ~= lp and p.Character then
local oRoot = p.Character:FindFirstChild("HumanoidRootPart")
local oHum = p.Character:FindFirstChild("Humanoid")
if oRoot and oHum and oHum:GetState() == Enum.HumanoidStateType.Jumping then
local dist = (rootPart.Position - oRoot.Position).Magnitude
if dist < 25 then
local dir = (oRoot.Position + Vector3.new(0, 3, 0) - rootPart.Position).Unit
local force = dir * 100
rootPart.Velocity = Vector3.new(
rootPart.Velocity.X * 0.4 + force.X * 0.6,
rootPart.Velocity.Y,
rootPart.Velocity.Z * 0.4 + force.Z * 0.6
)
break
end
end
end
end
end
-- βββββββββββββββββββββββββββββββββββββββββ
-- Main loops
-- βββββββββββββββββββββββββββββββββββββββββ
RunService.RenderStepped:Connect(function()
if unloaded then return end
if isSmoothPulling then doLegitPull() end
doBallPull()
doBallSpeed()
doBallManip()
doBallStick()
if isAutoPJActive then doAutoPJ() end
end)
RunService.Heartbeat:Connect(function()
if unloaded then return end
if speedEnabled then hum.WalkSpeed = speedValue end
if jumpEnabled then hum.JumpPower = jumpPower; hum.UseJumpPower = true end
Workspace.Gravity = gravEnabled and gravValue or 196.2
if hitboxEnabled then
for _, p in ipairs(Players:GetPlayers()) do
if p ~= lp and p.Character then
local hrp = p.Character:FindFirstChild("HumanoidRootPart")
if hrp then
hrp.Size = Vector3.new(hitboxSize, hitboxSize, hitboxSize)
hrp.Transparency = hitboxTransparency
end
end
end
end
if stickyEnabled and currentStickyHead then
local moving = hum.MoveDirection.Magnitude > 0.2
local jumping = UserInputService:IsKeyDown(Enum.KeyCode.Space) or hum.Jump
if moving or jumping or not currentStickyHead.Parent
or (rootPart.Position - currentStickyHead.Position).Magnitude > 15 then
detachSticky()
end
end
if headSinkEnabled then updateHeadSink() end
if not isSinking then updateTTB() end
if boostOnJumpEnabled then
for _, p in ipairs(Players:GetPlayers()) do
if p ~= lp and p.Character then
local oHum = p.Character:FindFirstChild("Humanoid")
local oRoot = p.Character:FindFirstChild("HumanoidRootPart")
if oHum and oRoot and oHum:GetState() == Enum.HumanoidStateType.Jumping then
local dist = (rootPart.Position - oRoot.Position).Magnitude
local yDiff = rootPart.Position.Y - oRoot.Position.Y
if dist < 5 and yDiff > 1.5 and yDiff < 5 then
local last = boostCooldowns[p.Name]
if not last or tick() - last > 1 then
local bv = Instance.new("BodyVelocity")
bv.MaxForce = Vector3.new(0, math.huge, 0)
bv.Velocity = Vector3.new(0, boostOnJumpPower, 0)
bv.Parent = rootPart
boostCooldowns[p.Name] = tick()
task.delay(0.3, function() if bv and bv.Parent then bv:Destroy() end end)
end
end
end
end
end
end
updateHeadManip()
updateHeadFollow()
if skyColorEnabled then
Lighting.Ambient = skyColorValue
Lighting.OutdoorAmbient = skyColorValue
Lighting.Brightness = 2
Lighting.FogEnd = 100000
Lighting.ClockTime = 14
end
end)
UserInputService.InputBegan:Connect(function(input, gp)
if gp then return end
if input.UserInputType == Enum.UserInputType.MouseButton1 and legitPullEnabled then
isSmoothPulling = true
end
if input.KeyCode == Enum.KeyCode.R or input.KeyCode == Enum.KeyCode.ButtonR1 then
if autoPJEnabled then isAutoPJActive = true end
end
if input.KeyCode == Enum.KeyCode.E or input.KeyCode == Enum.KeyCode.ButtonY then
doInstantCatch()
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then isSmoothPulling = false end
if input.KeyCode == Enum.KeyCode.R or input.KeyCode == Enum.KeyCode.ButtonR1 then isAutoPJActive = false end
end)
-- βββββββββββββββββββββββββββββββββββββββββ
-- Rayfield
-- βββββββββββββββββββββββββββββββββββββββββ
local Rayfield = loadstring(game:HttpGet("https://sirius.menu/rayfield"))()
local Window = Rayfield:CreateWindow({
Name = "Fear Hub",
Icon = 0,
LoadingTitle = "Fear Hub",
LoadingSubtitle = "made by solo",
Theme = "Default",
DisableRayfieldPrompts = false,
DisableBuildWarnings = false,
ConfigurationSaving = {
Enabled = true,
FolderName = "FearHub",
FileName = "FearHub"
},
Discord = { Enabled = false, Invite = "noinvitelink", RememberJoins = true },
KeySystem = true,
KeySettings = {
Title = "Fear Hub",
Subtitle = "Key System",
Note = "Join the Discord for the key: discord.gg/NPKDz2JkQ",
FileName = "FearHubKey",
SaveKey = true,
GrabKeyFromSite = false,
Key = {"fH@9$xZq#2mLv!Rp"}
}
})
-- ββ Tab: Combat βββββββββββββββββββββββββ
local CombatTab = Window:CreateTab("Combat", 4483362458)
CombatTab:CreateSection("Hitbox")
CombatTab:CreateToggle({ Name = "Hitbox Expander", CurrentValue = false, Flag = "HitboxToggle",
Callback = function(v) hitboxEnabled = v end })
CombatTab:CreateSlider({ Name = "Hitbox Size", Range = {2, 30}, Increment = 1, CurrentValue = 8, Flag = "HitboxSize",
Callback = function(v) hitboxSize = v end })
CombatTab:CreateSlider({ Name = "Hitbox Transparency", Range = {0, 1}, Increment = 0.05, CurrentValue = 0.5, Flag = "HitboxAlpha",
Callback = function(v) hitboxTransparency = v end })
CombatTab:CreateSection("TTB")
CombatTab:CreateToggle({ Name = "TTB", CurrentValue = false, Flag = "TTB",
Callback = function(v)
ttbEnabled = v
if v then
if ttbBodyGyro then ttbBodyGyro:Destroy() end
ttbBodyGyro = Instance.new("BodyGyro")
ttbBodyGyro.MaxTorque = Vector3.new(0, 4000, 0)
ttbBodyGyro.P = 3000; ttbBodyGyro.D = 500
ttbBodyGyro.CFrame = rootPart.CFrame; ttbBodyGyro.Parent = rootPart
else
if ttbBodyGyro then ttbBodyGyro:Destroy(); ttbBodyGyro = nil end
end
end })
CombatTab:CreateSlider({ Name = "TTB Power", Range = {1, 10}, Increment = 1, CurrentValue = 5, Flag = "TTBPow",
Callback = function(v) ttbPower = v end })
CombatTab:CreateSlider({ Name = "TTB Smoothness", Range = {0.05, 1}, Increment = 0.05, CurrentValue = 0.3, Flag = "TTBSmooth",
Callback = function(v) ttbSmoothness = v end })
CombatTab:CreateLabel("Move or Jump to release TTB")
CombatTab:CreateSection("Sticky Head")
CombatTab:CreateToggle({ Name = "Sticky Head", CurrentValue = false, Flag = "StickyHead",
Callback = function(v) stickyEnabled = v; if not v then detachSticky() end end })
CombatTab:CreateSlider({ Name = "Sticky Strength", Range = {1, 10}, Increment = 1, CurrentValue = 5, Flag = "StickyStr",
Callback = function(v) stickyStrength = v end })
CombatTab:CreateSection("Boost On Jump")
CombatTab:CreateToggle({ Name = "Boost On Jump", CurrentValue = false, Flag = "BoostJump",
Callback = function(v) boostOnJumpEnabled = v end })
CombatTab:CreateSlider({ Name = "Boost Height", Range = {10, 100}, Increment = 1, CurrentValue = 25, Flag = "BoostPow",
Callback = function(v) boostOnJumpPower = v end })
-- ββ Tab: Ball ββββββββββββββββββββββββββββ
local BallTab = Window:CreateTab("Ball", 4483362458)
BallTab:CreateSection("Ball Pull To Me")
BallTab:CreateToggle({ Name = "Ball Pull To Me", CurrentValue = false, Flag = "BallPull",
Callback = function(v) ballPullEnabled = v end })
BallTab:CreateSlider({ Name = "Pull Strength", Range = {0.05, 1}, Increment = 0.01, CurrentValue = 0.15, Flag = "BallPullStr",
Callback = function(v) ballPullStrength = v end })
BallTab:CreateSlider({ Name = "Max Distance", Range = {10, 200}, Increment = 5, Suffix = " studs", CurrentValue = 50, Flag = "BallPullDist",
Callback = function(v) ballPullMaxDist = v end })
BallTab:CreateSection("Instant Catch")
BallTab:CreateToggle({ Name = "Instant Catch (E / Y)", CurrentValue = false, Flag = "InstantCatch",
Callback = function(v) instantCatchEnabled = v end })
BallTab:CreateSlider({ Name = "Catch Range", Range = {3, 25}, Increment = 1, Suffix = " studs", CurrentValue = 8, Flag = "CatchRange",
Callback = function(v) catchRange = v end })
BallTab:CreateSlider({ Name = "Catch Cooldown", Range = {0, 2}, Increment = 0.1, Suffix = " sec", CurrentValue = 0.5, Flag = "CatchCD",
Callback = function(v) catchCooldown = v end })
BallTab:CreateLabel("Press E (Keyboard) or Y (Controller) to catch")
BallTab:CreateLabel("Ball snaps to hand β you don't move!")
BallTab:CreateSection("Legit Pull V")
BallTab:CreateToggle({ Name = "Legit Pull V (Hold LMB)", CurrentValue = false, Flag = "LegitPull",
Callback = function(v) legitPullEnabled = v; if not v then isSmoothPulling = false end end })
BallTab:CreateSlider({ Name = "Pull Smoothness", Range = {0.01, 1}, Increment = 0.01, CurrentValue = 0.08, Flag = "LegitSmooth",
Callback = function(v) pullSmoothness = v end })
BallTab:CreateSlider({ Name = "Max Range", Range = {1, 100}, Increment = 1, Suffix = " studs", CurrentValue = 35, Flag = "LegitDist",
Callback = function(v) pullMaxDist = v end })
BallTab:CreateSection("Ball Tweaks")
BallTab:CreateToggle({ Name = "Auto PJ (Hold R / R1)", CurrentValue = false, Flag = "AutoPJ",
Callback = function(v) autoPJEnabled = v end })
BallTab:CreateToggle({ Name = "Ball Speed (Away)", CurrentValue = false, Flag = "BallSpeed",
Callback = function(v) ballSpeedEnabled = v end })
BallTab:CreateSlider({ Name = "Speed Value", Range = {10, 200}, Increment = 1, CurrentValue = 50, Flag = "BallSpeedVal",
Callback = function(v) ballSpeedValue = v end })
BallTab:CreateToggle({ Name = "Ball Manip (Toward)", CurrentValue = false, Flag = "BallManip",
Callback = function(v) ballManipEnabled = v end })
BallTab:CreateSlider({ Name = "Manip Strength", Range = {0.01, 1}, Increment = 0.01, CurrentValue = 0.05, Flag = "BallManipStr",
Callback = function(v) ballManipStrength = v end })
BallTab:CreateToggle({ Name = "Ball Stick", CurrentValue = false, Flag = "BallStick",
Callback = function(v) ballStickEnabled = v end })
BallTab:CreateSlider({ Name = "Stick Range", Range = {5, 50}, Increment = 1, Suffix = " studs", CurrentValue = 19, Flag = "BallStickRange",
Callback = function(v) ballStickRange = v end })
-- ββ Tab: Movement ββββββββββββββββββββββββ
local MoveTab = Window:CreateTab("Movement", 4483362458)
MoveTab:CreateSection("Jump")
MoveTab:CreateToggle({ Name = "Jump Power", CurrentValue = false, Flag = "JumpToggle",
Callback = function(v)
jumpEnabled = v
if v then
hum.JumpPower = jumpPower; hum.UseJumpPower = true
if jumpConn then jumpConn:Disconnect() end
jumpConn = hum.Jumping:Connect(function()
if jumpEnabled and rootPart then
rootPart.Velocity = Vector3.new(rootPart.Velocity.X, jumpPower, rootPart.Velocity.Z)
end
end)
else
hum.JumpPower = originalJump
if jumpConn then jumpConn:Disconnect(); jumpConn = nil end
end
end })
MoveTab:CreateSlider({ Name = "Jump Power Value", Range = {50, 500}, Increment = 1, CurrentValue = 80, Flag = "JumpPow",
Callback = function(v) jumpPower = v; if jumpEnabled then hum.JumpPower = v end end })
MoveTab:CreateSection("Speed")
MoveTab:CreateToggle({ Name = "Loop Speed", CurrentValue = false, Flag = "SpeedToggle",
Callback = function(v) speedEnabled = v; if not v then hum.WalkSpeed = 17 end end })
MoveTab:CreateSlider({ Name = "Walk Speed", Range = {1, 100}, Increment = 1, CurrentValue = 18, Flag = "SpeedVal",
Callback = function(v) speedValue = v end })
MoveTab:CreateSection("Gravity")
MoveTab:CreateToggle({ Name = "Custom Gravity", CurrentValue = false, Flag = "GravToggle",
Callback = function(v) gravEnabled = v; Workspace.Gravity = v and gravValue or 196.2 end })
MoveTab:CreateSlider({ Name = "Gravity Value", Range = {10, 400}, Increment = 1, CurrentValue = 196, Flag = "GravVal",
Callback = function(v) gravValue = v; if gravEnabled then Workspace.Gravity = v end end })
-- ββ Tab: Head Tech βββββββββββββββββββββββ
local HeadTab = Window:CreateTab("Head Tech", 4483362458)
HeadTab:CreateSection("Head Sink")
HeadTab:CreateToggle({ Name = "Head Sink", CurrentValue = false, Flag = "HeadSink",
Callback = function(v)
headSinkEnabled = v
if v then
if sinkBodyVel then sinkBodyVel:Destroy() end
sinkBodyVel = Instance.new("BodyVelocity")
sinkBodyVel.MaxForce = Vector3.new(5000, 5000, 5000)
sinkBodyVel.Velocity = Vector3.new(0, 0, 0); sinkBodyVel.P = 2000; sinkBodyVel.Parent = rootPart
if sinkBodyGyro then sinkBodyGyro:Destroy() end
sinkBodyGyro = Instance.new("BodyGyro")
sinkBodyGyro.MaxTorque = Vector3.new(0, 4000, 0)
sinkBodyGyro.P = 3000; sinkBodyGyro.D = 500
sinkBodyGyro.CFrame = rootPart.CFrame; sinkBodyGyro.Parent = rootPart
else
if sinkBodyVel then sinkBodyVel:Destroy(); sinkBodyVel = nil end
if sinkBodyGyro then sinkBodyGyro:Destroy(); sinkBodyGyro = nil end
isSinking = false; sinkTarget = nil
end
end })
HeadTab:CreateLabel("Stand on player β sink into them")
HeadTab:CreateLabel("Move / Jump β free movement")
HeadTab:CreateLabel("They jump β you boost high!")
HeadTab:CreateSlider({ Name = "Sink Strength", Range = {0.1, 2}, Increment = 0.05, CurrentValue = 0.8, Flag = "SinkStr", Callback = function(v) headSinkStrength = v end })
HeadTab:CreateSlider({ Name = "Sink Depth", Range = {1, 6}, Increment = 0.5, CurrentValue = 3, Flag = "SinkDepth", Callback = function(v) headSinkDepth = v end })
HeadTab:CreateSlider({ Name = "Boost Power", Range = {30, 150}, Increment = 5, CurrentValue = 60, Flag = "SinkBoost", Callback = function(v) headSinkBoostPower = v end })
HeadTab:CreateSection("Head Manipulation")
HeadTab:CreateToggle({ Name = "Head Manipulation", CurrentValue = false, Flag = "HeadManip",
Callback = function(v) headManipEnabled = v end })
HeadTab:CreateToggle({ Name = "Subtle Mode", CurrentValue = true, Flag = "HeadSubtle",
Callback = function(v) headManipSubtle = v end })
HeadTab:CreateLabel("Only activates while falling near players")
HeadTab:CreateToggle({ Name = "Head Follow", CurrentValue = false, Flag = "HeadFollow",
Callback = function(v) headFollowEnabled = v end })
HeadTab:CreateLabel("Tracks jumping players nearby")
-- ββ Tab: Graphics ββββββββββββββββββββββββ
local GraphTab = Window:CreateTab("Graphics", 4483362458)
GraphTab:CreateSection("Sky")
GraphTab:CreateToggle({ Name = "Sky Color Changer", CurrentValue = false, Flag = "SkyToggle",
Callback = function(v) skyColorEnabled = v end })
GraphTab:CreateColorPicker({ Name = "Sky Color", Color = Color3.fromRGB(135, 206, 235),
Callback = function(v) skyColorValue = v end })
GraphTab:CreateButton({ Name = "Gray Sky", Callback = function()
skyColorEnabled = true
Lighting.Ambient = Color3.fromRGB(80, 80, 80); Lighting.Brightness = 0; Lighting.FogEnd = 100000
local s = Lighting:FindFirstChildOfClass("Sky"); if s then s:Destroy() end
end })
GraphTab:CreateButton({ Name = "Red Sky", Callback = function()
skyColorEnabled = true
Lighting.Ambient = Color3.fromRGB(120, 10, 10); Lighting.Brightness = 0.3
Lighting.FogEnd = 500; Lighting.FogColor = Color3.fromRGB(100, 0, 0)
local s = Lighting:FindFirstChildOfClass("Sky"); if s then s:Destroy() end
end })
GraphTab:CreateSection("Optimization")
GraphTab:CreateButton({ Name = "Potato Graphics", Callback = function()
settings().Rendering.QualityLevel = Enum.QualityLevel.Level01
Lighting.GlobalShadows = false; Lighting.FogEnd = 9e9; Lighting.Brightness = 0
for _, e in pairs(Lighting:GetChildren()) do
if e:IsA("BlurEffect") then e.Size = 4
elseif e:IsA("SunRaysEffect") or e:IsA("ColorCorrectionEffect")
or e:IsA("BloomEffect") or e:IsA("DepthOfFieldEffect") then e.Enabled = false end
end
local t = Workspace.Terrain
t.WaterWaveSize = 0; t.WaterWaveSpeed = 0; t.WaterReflectance = 0; t.WaterTransparency = 0
for _, o in pairs(Workspace:GetDescendants()) do
if o:IsA("Part") or o:IsA("MeshPart") then o.Material = Enum.Material.Plastic; o.Reflectance = 0
elseif o:IsA("ParticleEmitter") or o:IsA("Trail") or o:IsA("Smoke") or o:IsA("Fire") or o:IsA("Sparkles") then o.Enabled = false end
end
end })
-- ββ Tab: Credits βββββββββββββββββββββββββ
local CreditsTab = Window:CreateTab("Credits", 4483362458)
CreditsTab:CreateSection("Theme")
CreditsTab:CreateDropdown({
Name = "Hub Theme",
Options = {
"Default",
"Serenity",
"Ocean",
"Amethyst",
"Bloom",
"Pastel Pink",
"Green",
"Red",
"Dark Red",
"Dark Blue",
"Midnight",
"Frost",
},
CurrentOption = {"Default"},
Flag = "HubTheme",
Callback = function(selected)
local theme = selected[1] or selected
Rayfield:SetTheme(theme)
end,
})
CreditsTab:CreateSection("Info")
CreditsTab:CreateLabel("Fear Hub β made by solo")
CreditsTab:CreateLabel("Combat: Hitbox Β· TTB Β· Sticky Head Β· Boost On Jump")
CreditsTab:CreateLabel("Ball: Pull Β· Catch Β· Legit Pull Β· Stick Β· Manip Β· Auto PJ")
CreditsTab:CreateLabel("Movement: Jump Β· Speed Β· Gravity")
CreditsTab:CreateLabel("Head Tech: Head Sink Β· Head Manip Β· Head Follow")
CreditsTab:CreateSection("Unload")
CreditsTab:CreateButton({ Name = "Unload Script", Callback = function()
unloaded = true
hitboxEnabled = false; jumpEnabled = false; speedEnabled = false; gravEnabled = false
ballPullEnabled = false; instantCatchEnabled = false; legitPullEnabled = false
autoPJEnabled = false; ballSpeedEnabled = false; ballManipEnabled = false; ballStickEnabled = false
stickyEnabled = false; ttbEnabled = false; boostOnJumpEnabled = false
headSinkEnabled = false; headManipEnabled = false; headFollowEnabled = false; skyColorEnabled = false
isSmoothPulling = false; isAutoPJActive = false; isSinking = false; sinkTarget = nil
Workspace.Gravity = 196.2; hum.WalkSpeed = 17; hum.JumpPower = originalJump
Lighting.Ambient = origAmbient; Lighting.OutdoorAmbient = origOutdoorAmbient
Lighting.FogColor = origFogColor; Lighting.FogEnd = origFogEnd
Lighting.Brightness = origBrightness; Lighting.ClockTime = origClockTime
if jumpConn then jumpConn:Disconnect() end
if ttbBodyGyro then ttbBodyGyro:Destroy() end
if sinkBodyVel then sinkBodyVel:Destroy() end
if sinkBodyGyro then sinkBodyGyro:Destroy() end
detachSticky()
for _, p in ipairs(Players:GetPlayers()) do
if p ~= lp and p.Character then
local hrp = p.Character:FindFirstChild("HumanoidRootPart")
if hrp then hrp.Size = Vector3.new(2, 2, 1); hrp.Transparency = 1 end
end
end
Rayfield:Destroy()
end })
CreditsTab:CreateButton({ Name = "Server Hop", Callback = function()
task.wait(1.5)
game:GetService("TeleportService"):Teleport(game.PlaceId)
end })
-- ββ Tab: Fly βββββββββββββββββββββββββββββ
local FlyTab = Window:CreateTab("Fly", 4483362458)
local flyEnabled = false
local flySpeed = 50
local flyBV = nil
local flyBG = nil
local flyConn = nil
FlyTab:CreateSection("Fly")
FlyTab:CreateToggle({ Name = "Enable Fly (WASD + Space/Shift)", CurrentValue = false, Flag = "FlyToggle",
Callback = function(v)
flyEnabled = v
if v then
local c = lp.Character; if not c then return end
local root2 = c:FindFirstChild("HumanoidRootPart")
local hum2 = c:FindFirstChildOfClass("Humanoid")
if root2 and hum2 then
hum2.PlatformStand = true
flyBV = Instance.new("BodyVelocity")
flyBV.MaxForce = Vector3.new(1e6, 1e6, 1e6)
flyBV.Velocity = Vector3.zero
flyBV.Parent = root2
flyBG = Instance.new("BodyGyro")
flyBG.MaxTorque = Vector3.new(1e6, 1e6, 1e6)
flyBG.P = 9e4
flyBG.Parent = root2
flyConn = RunService.RenderStepped:Connect(function()
if not flyEnabled then return end
local cam = workspace.CurrentCamera
local dir = Vector3.zero
if UserInputService:IsKeyDown(Enum.KeyCode.W) then dir = dir + cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then dir = dir - cam.CFrame.LookVector end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then dir = dir - cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then dir = dir + cam.CFrame.RightVector end
if UserInputService:IsKeyDown(Enum.KeyCode.Space) then dir = dir + Vector3.new(0,1,0) end
if UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then dir = dir - Vector3.new(0,1,0) end
if dir.Magnitude > 0 then dir = dir.Unit end
if flyBV then flyBV.Velocity = dir * flySpeed end
if flyBG then flyBG.CFrame = cam.CFrame end
end)
end
else
if flyConn then flyConn:Disconnect(); flyConn = nil end
if flyBV then flyBV:Destroy(); flyBV = nil end
if flyBG then flyBG:Destroy(); flyBG = nil end
local hum2 = lp.Character and lp.Character:FindFirstChildOfClass("Humanoid")
if hum2 then hum2.PlatformStand = false end
end
end })
FlyTab:CreateSlider({ Name = "Fly Speed", Range = {10, 300}, Increment = 5, CurrentValue = 50, Flag = "FlySpeed",
Callback = function(v) flySpeed = v end })
FlyTab:CreateSection("CFrame Speed")
local cfSpeedEnabled = false
local cfMult = 2
FlyTab:CreateToggle({ Name = "CFrame Speed (WASD boost)", CurrentValue = false, Flag = "CFSpeed",
Callback = function(v) cfSpeedEnabled = v end })
FlyTab:CreateSlider({ Name = "Speed Multiplier", Range = {1, 10}, Increment = 0.5, CurrentValue = 2, Flag = "CFMult",
Callback = function(v) cfMult = v end })
RunService.RenderStepped:Connect(function(dt)
if not cfSpeedEnabled then return end
local c = lp.Character; if not c then return end
local root2 = c:FindFirstChild("HumanoidRootPart")
local hum2 = c:FindFirstChildOfClass("Humanoid")
if root2 and hum2 and hum2.MoveDirection.Magnitude > 0 then
root2.CFrame = root2.CFrame + (hum2.MoveDirection.Unit * hum2.WalkSpeed * cfMult * dt)
end
end)
-- ββ Tab: Extras βββββββββββββββββββββββββββ
local ExtrasTab = Window:CreateTab("Extras", 4483362458)
-- Fast Fall
ExtrasTab:CreateSection("Fast Fall")
local fastFallEnabled = false
ExtrasTab:CreateToggle({ Name = "Fast Fall", CurrentValue = false, Flag = "FastFall",
Callback = function(v)
fastFallEnabled = v
Workspace.Gravity = v and 400 or 196.2
end })
ExtrasTab:CreateLabel("Toggles gravity to 400 while active")
-- Side Fling
ExtrasTab:CreateSection("Side Fling")
local flingEnabled = false
local flingPower = 300
local flingUp = 55
local flingCD = 0.5
local canFling = true
ExtrasTab:CreateToggle({ Name = "Side Fling (Fling On Touch)", CurrentValue = false, Flag = "SideFling",
Callback = function(v) flingEnabled = v end })
ExtrasTab:CreateSlider({ Name = "Fling Power", Range = {50, 800}, Increment = 10, CurrentValue = 300, Flag = "FlingPow",
Callback = function(v) flingPower = v end })
ExtrasTab:CreateSlider({ Name = "Up Power", Range = {0, 200}, Increment = 5, CurrentValue = 55, Flag = "FlingUp",
Callback = function(v) flingUp = v end })
ExtrasTab:CreateSlider({ Name = "Fling Cooldown", Range = {0.1, 3}, Increment = 0.1, Suffix = " sec", CurrentValue = 0.5, Flag = "FlingCD",
Callback = function(v) flingCD = v end })
local function doSideFling(dir)
if not flingEnabled or not canFling then return end
local c = lp.Character; local root2 = c and c:FindFirstChild("HumanoidRootPart"); if not root2 then return end
canFling = false
local old = root2:FindFirstChild("SideFling"); if old then old:Destroy() end
local bv = Instance.new("BodyVelocity")
bv.Name = "SideFling"
bv.MaxForce = Vector3.new(1e6, 1e6, 1e6)
bv.Velocity = dir * flingPower + Vector3.new(0, flingUp, 0)
bv.Parent = root2
task.delay(0.25, function() if bv and bv.Parent then bv:Destroy() end end)
task.delay(flingCD, function() canFling = true end)
end
hum.Touched:Connect(function(hit)
if not flingEnabled then return end
local model = hit:FindFirstAncestorOfClass("Model")
if not model or model == char then return end
if not model:FindFirstChild("Humanoid") then return end
doSideFling(rootPart.CFrame.RightVector)
end)
-- Contact Boost
ExtrasTab:CreateSection("Contact Boost")
local boostEnabled = false
local contactBoost = 66
local contactBoostCD = 0.15
local boostArmed = false
local contactBoostCooldowns = {}
ExtrasTab:CreateToggle({ Name = "Contact Boost (R key)", CurrentValue = false, Flag = "ContactBoost",
Callback = function(v) boostEnabled = v end })
ExtrasTab:CreateSlider({ Name = "Boost Power", Range = {10, 200}, Increment = 5, CurrentValue = 66, Flag = "ContactPow",
Callback = function(v) contactBoost = v end })
ExtrasTab:CreateSlider({ Name = "Boost Cooldown", Range = {0, 2}, Increment = 0.05, Suffix = " sec", CurrentValue = 0.15, Flag = "ContactCD",
Callback = function(v) contactBoostCD = v end })
ExtrasTab:CreateLabel("Press R then land on an enemy head")
UserInputService.InputBegan:Connect(function(input, gp)
if gp then return end
if input.KeyCode == Enum.KeyCode.R and boostEnabled then boostArmed = true end
end)
hum.Touched:Connect(function(hit)
if not boostEnabled or not boostArmed then return end
boostArmed = false
local model = hit.Parent
local op = Players:GetPlayerFromCharacter(model)
if op and op ~= lp then
local enemyHead = model:FindFirstChild("Head")
if enemyHead and enemyHead.CanCollide then
local last = contactBoostCooldowns[op.Name]
if not last or tick() - last > contactBoostCD then
local bv = Instance.new("BodyVelocity")
bv.MaxForce = Vector3.new(9e9, 9e9, 9e9)
bv.Velocity = Vector3.new(hum.MoveDirection.X * 5, contactBoost, hum.MoveDirection.Z * 5)
bv.Parent = rootPart
contactBoostCooldowns[op.Name] = tick()
task.delay(0.1, function() if bv and bv.Parent then bv:Destroy() end end)
end
end
end
end)
-- Landing Boost
ExtrasTab:CreateSection("Landing Boost")
local landingBoostEnabled = false
local landingBoostPower = 90
local lastLandingBoost = 0
ExtrasTab:CreateToggle({ Name = "Landing Boost (Land on Enemy)", CurrentValue = false, Flag = "LandBoost",
Callback = function(v) landingBoostEnabled = v end })
ExtrasTab:CreateSlider({ Name = "Boost Power", Range = {20, 220}, Increment = 5, CurrentValue = 90, Flag = "LandPow",
Callback = function(v) landingBoostPower = v end })
hum.Touched:Connect(function(hit)
if not landingBoostEnabled then return end
local model = hit.Parent
if not model or model == char then return end
if not model:FindFirstChildOfClass("Humanoid") then return end
if tick() - lastLandingBoost < 0.25 then return end
local v = rootPart.AssemblyLinearVelocity
if v.Y > -2 then return end
lastLandingBoost = tick()
rootPart.AssemblyLinearVelocity = Vector3.new(v.X, landingBoostPower, v.Z)
end)
-- Dive Force
ExtrasTab:CreateSection("Dive Force")
local diveForceEnabled = false
local diveForcePower = 50
ExtrasTab:CreateToggle({ Name = "Dive Force (E key)", CurrentValue = false, Flag = "DiveForce",
Callback = function(v) diveForceEnabled = v end })
ExtrasTab:CreateSlider({ Name = "Dive Power", Range = {10, 150}, Increment = 5, CurrentValue = 50, Flag = "DivePow",
Callback = function(v) diveForcePower = v end })
UserInputService.InputBegan:Connect(function(input, gp)
if gp then return end
if (input.KeyCode == Enum.KeyCode.E or input.KeyCode == Enum.KeyCode.ButtonX) and diveForceEnabled then
local lv = rootPart.CFrame.LookVector
local cur = rootPart.AssemblyLinearVelocity
rootPart.AssemblyLinearVelocity = Vector3.new(lv.X * diveForcePower, cur.Y, lv.Z * diveForcePower)
end
end)
-- ββ Tab: Automation βββββββββββββββββββββββ
local AutoTab = Window:CreateTab("Automation", 4483362458)
-- Helpers
local function isWall()
local games = Workspace:FindFirstChild("Games")
if not games then return true end
for _, g in pairs(games:GetChildren()) do
local rep = g:FindFirstChild("Replicated")
if rep then
local sl = rep:FindFirstChild("ScrimmageLine")
if sl and sl:FindFirstChild("ScrimmageWall") then
if sl.ScrimmageWall.CanCollide == false then return false end
end
end
end
return true
end
local function isEnemy(p)
local myRep = lp:FindFirstChild("Replicated")
local theirRep = p:FindFirstChild("Replicated")
if not myRep or not theirRep then return false end
local myTeam = myRep:FindFirstChild("TeamID")
local theirTeam = theirRep:FindFirstChild("TeamID")
if not myTeam or not theirTeam then return false end
return myTeam.Value ~= theirTeam.Value
end
local function hasBall()
if not lp.Character then return false end
if lp.Character:FindFirstChild("Football") then return true end
local pf = Workspace:FindFirstChild(lp.Name)
return pf and pf:FindFirstChild("GAMEOBJECTS") and pf.GAMEOBJECTS:FindFirstChild("Football") ~= nil
end
-- Auto Sack
AutoTab:CreateSection("Auto Sack")
local autoSackEnabled = false
AutoTab:CreateToggle({ Name = "Auto Sack (TP to QB)", CurrentValue = false, Flag = "AutoSack",
Callback = function(v) autoSackEnabled = v end })
AutoTab:CreateLabel("Teleports you to enemy QB when the wall drops")
RunService.Heartbeat:Connect(function()
if not autoSackEnabled or isWall() then return end
for _, p in ipairs(Players:GetPlayers()) do
if p ~= lp and isEnemy(p) and p.Character and p.Character:FindFirstChild("Football") then
local hrp2 = p.Character:FindFirstChild("HumanoidRootPart")
if hrp2 and rootPart then rootPart.CFrame = CFrame.new(hrp2.Position) end
break
end
end
end)
-- Auto Touchdown
AutoTab:CreateSection("Auto Touchdown")
local autoTDEnabled = false
local EZ1 = Vector3.new(161, 4, -2)
local EZ2 = Vector3.new(-166, 4, 0)
local lastTD = 0
AutoTab:CreateToggle({ Name = "Auto Touchdown", CurrentValue = false, Flag = "AutoTD",
Callback = function(v) autoTDEnabled = v end })
AutoTab:CreateLabel("When you have ball β auto TP to endzone")
AutoTab:CreateButton({ Name = "TP to Endzone 1", Callback = function()
if rootPart then rootPart.CFrame = CFrame.new(EZ1) end
end })
AutoTab:CreateButton({ Name = "TP to Endzone 2", Callback = function()
if rootPart then rootPart.CFrame = CFrame.new(EZ2) end
end })
RunService.Heartbeat:Connect(function()
if not autoTDEnabled then return end
if tick() - lastTD < 2 then return end
if hasBall() and rootPart then
rootPart.CFrame = CFrame.new(EZ1)
task.delay(1, function() if rootPart then rootPart.CFrame = CFrame.new(EZ2) end end)
lastTD = tick()
end
end)
-- Auto Catch
AutoTab:CreateSection("Auto Catch")
local autoCatchEnabled = false
local autoCatchRadius = 15
AutoTab:CreateToggle({ Name = "Auto Catch", CurrentValue = false, Flag = "AutoCatch",
Callback = function(v) autoCatchEnabled = v end })
AutoTab:CreateSlider({ Name = "Catch Radius", Range = {3, 40}, Increment = 1, Suffix = " studs", CurrentValue = 15, Flag = "AutoCatchRadius",
Callback = function(v) autoCatchRadius = v end })
RunService.Heartbeat:Connect(function()
if not autoCatchEnabled or not rootPart then return end
local ball = getFootball()
if not ball then return end
if (ball.Position - rootPart.Position).Magnitude <= autoCatchRadius then
pcall(function()
local sp, onScreen = workspace.CurrentCamera:WorldToViewportPoint(ball.Position)
if onScreen then
local vim = game:GetService("VirtualInputManager")
vim:SendMouseButtonEvent(sp.X, sp.Y, 0, true, game, 0)
task.wait(0.05)
vim:SendMouseButtonEvent(sp.X, sp.Y, 0, false, game, 0)
end
end)
end
end)
-- Misc
AutoTab:CreateSection("Misc")
AutoTab:CreateToggle({ Name = "Anti AFK", CurrentValue = false, Flag = "AntiAFK",
Callback = function(v)
if v then
pcall(function()
local VU = game:GetService("VirtualUser")
lp.Idled:Connect(function()
VU:CaptureController()
VU:ClickButton2(Vector2.new())
end)
end)
end
end })
local antiBlockEnabled = false
AutoTab:CreateToggle({ Name = "Anti Block (No Collide)", CurrentValue = false, Flag = "AntiBlock",
Callback = function(v) antiBlockEnabled = v end })
RunService.Stepped:Connect(function()
if not antiBlockEnabled then return end
local c = lp.Character; if not c then return end
for _, p in ipairs(c:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = true end
end
end)
local tpFwdEnabled = false
AutoTab:CreateToggle({ Name = "TP Forward (Z key)", CurrentValue = false, Flag = "TPFwd",
Callback = function(v) tpFwdEnabled = v end })
UserInputService.InputBegan:Connect(function(input, gp)
if gp then return end
if input.KeyCode == Enum.KeyCode.Z and tpFwdEnabled and rootPart then
rootPart.CFrame = rootPart.CFrame + rootPart.CFrame.LookVector * 3
end
end)
AutoTab:CreateButton({ Name = "Remove Textures (FPS Boost)", Callback = function()
for _, obj in pairs(Workspace:GetDescendants()) do
if obj:IsA("Decal") or obj:IsA("Texture") then obj.Transparency = 1
elseif obj:IsA("BasePart") then obj.Material = Enum.Material.SmoothPlastic end
end
end })
-- ββ Tab: Hip Height βββββββββββββββββββββββ
local HipTab = Window:CreateTab("Hip Height", 4483362458)
HipTab:CreateSection("Hip Height")
HipTab:CreateLabel("Adjust your character's elevation off the ground")
local hipEnabled = false
local hipValue = 2
local hipConn2 = nil
HipTab:CreateToggle({ Name = "Enable Custom Hip Height", CurrentValue = false, Flag = "HipToggle",
Callback = function(v)
hipEnabled = v
if v then
hum.HipHeight = hipValue
if not hipConn2 then
hipConn2 = RunService.Heartbeat:Connect(function()
if hipEnabled and hum then hum.HipHeight = hipValue end
end)
end
else
if hipConn2 then hipConn2:Disconnect(); hipConn2 = nil end
if hum then hum.HipHeight = 0 end
end
end })
HipTab:CreateSlider({ Name = "Hip Height Value", Range = {0, 20}, Increment = 0.5, CurrentValue = 2, Flag = "HipVal",
Callback = function(v) hipValue = v; if hipEnabled and hum then hum.HipHeight = v end end })
HipTab:CreateLabel("Default: 0 | High = floating")
HipTab:CreateSection("Quick Presets")
local hipPresets = {
{"Ground (0)", 0}, {"Slight (2)", 2}, {"Hover (5)", 5}, {"Float (10)", 10}, {"Sky (20)", 20}
}
for _, pr in ipairs(hipPresets) do
local val = pr[2]; local label = pr[1]
HipTab:CreateButton({ Name = label, Callback = function()
hipValue = val; if hipEnabled and hum then hum.HipHeight = val end
end })
end
lp.CharacterAdded:Connect(function(c)
hum = c:WaitForChild("Humanoid")
if hipEnabled then hum.HipHeight = hipValue end
end)
-- ββ Tab: Character ββββββββββββββββββββββββ
local CharTab = Window:CreateTab("Character", 4483362458)
CharTab:CreateSection("Rainbow")
local rainbowEnabled = false
local rainbowHue = 0
local rainbowSpeed = 2.5
local origColors = {}
for _, p in pairs(char:GetDescendants()) do
if p:IsA("BasePart") then origColors[p] = {col = p.Color, mat = p.Material} end
end
local function restoreChar()
for p, d in pairs(origColors) do
if p and p.Parent then p.Color = d.col; p.Material = d.mat end
end
end
CharTab:CreateToggle({ Name = "Rainbow Character", CurrentValue = false, Flag = "Rainbow",
Callback = function(v) rainbowEnabled = v; if not v then restoreChar() end end })
CharTab:CreateSlider({ Name = "Rainbow Speed", Range = {0.5, 10}, Increment = 0.5, CurrentValue = 2.5, Flag = "RainbowSpeed",
Callback = function(v) rainbowSpeed = v end })
RunService.RenderStepped:Connect(function(dt)
if not rainbowEnabled then return end
local c = lp.Character; if not c then return end
rainbowHue = (rainbowHue + dt * rainbowSpeed) % 1
for _, p in pairs(c:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then
p.Color = Color3.fromHSV(rainbowHue, 1, 1)
p.Material = Enum.Material.Neon
end
end
end)
CharTab:CreateSection("Color Tint")
local tintEnabled = false
local tintHue = 0
local tintSat = 0.8
CharTab:CreateToggle({ Name = "Custom Color Tint", CurrentValue = false, Flag = "TintToggle",
Callback = function(v) tintEnabled = v; if not v then restoreChar() end end })
CharTab:CreateSlider({ Name = "Tint Hue", Range = {0, 1}, Increment = 0.01, CurrentValue = 0, Flag = "TintHue",
Callback = function(v)
tintHue = v
if tintEnabled then
local c = lp.Character; if not c then return end
for _, p in pairs(c:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then
p.Color = Color3.fromHSV(tintHue, tintSat, 1); p.Material = Enum.Material.Neon
end
end
end
end })
CharTab:CreateSlider({ Name = "Tint Saturation", Range = {0, 1}, Increment = 0.01, CurrentValue = 0.8, Flag = "TintSat",
Callback = function(v)
tintSat = v
if tintEnabled then
local c = lp.Character; if not c then return end
for _, p in pairs(c:GetDescendants()) do
if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then
p.Color = Color3.fromHSV(tintHue, tintSat, 1)
end
end
end
end })
-- βββββββββββββββββββββββββββββββββββββββββ
-- Load saved config & notify
-- βββββββββββββββββββββββββββββββββββββββββ
Rayfield:LoadConfiguration()
Rayfield:Notify({
Title = "Fear Hub",
Content = "Loaded β made by solo",
Duration = 5,
Image = 4483362458,
})
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