
Key RequiredUniversal

--[ GL_TPS_Hub_Optimized_2026 ]--
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Workspace = game:GetService("Workspace")
local LocalPlayer = Players.LocalPlayer
local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))()
-- ========== ESTADO GLOBAL OTIMIZADO (Substituindo _G) ==========
local GL_State = {
-- Reach
LegReach = false, HeadReach = false, TorsoReach = false, AutoCatch = false,
LegRange = 5, HeadRange = 5, TorsoRange = 5, GkRange = 5,
-- Reacts
MainReact = false, ReactKill = false, BetterReact = false, ReactKillerV2 = false, Main2React = false,
Prztx1React = false, MarsReact = false, SourenosReact = false, DreelovvReact = false,
EmreMorLeftReact = false, EmreMorRightReact = false, KamaniReact = false,
OtherReact1 = false, OtherReact2 = false, OtherReact3 = false, DribbleReact = false, BobReact = false,
-- Special Settings
BoostReactDetection = false, RemoveBallDelay = false,
NRCMagnitude = 0, NRCRemoteFires = 0,
ReactRange = 12,
-- Cache de Bolas
ActiveBalls = {}
}
-- ========== CORDENADAS ==========
local GL_Coords = {
LineGreen = CFrame.new(-0.1517, 175.2999, 161.1157),
GKGreen = CFrame.new(-0.4020, 175.2999, 65.5266),
LineBlue = CFrame.new(0.6095, 175.2999, 395.8729),
GKBlue = CFrame.new(0.7262, 175.2999, 491.6229)
}
-- ========== INTERFACE (UI) ==========
local Window = Rayfield:CreateWindow({
Name = "TPS Soccer Hub | V27 OTIMIZADO",
LoadingTitle = "Injetando Motor de Física...",
LoadingSubtitle = "GL Scripts",
ConfigurationSaving = { Enabled = false }
})
local ReachTab = Window:CreateTab("Reach")
local ReactsTab = Window:CreateTab("Reacts")
local GkTab = Window:CreateTab("Goleiro (GK)")
local TPTab = Window:CreateTab("Teleportes")
local MiscTab = Window:CreateTab("Misc")
local function CreateToggleSlider(tab, name, stateKey, rangeKey, maxRange)
tab:CreateToggle({
Name = "Ativar " .. name,
CurrentValue = false,
Callback = function(v) GL_State[stateKey] = v end
})
tab:CreateSlider({
Name = "Alcance: " .. name,
Range = {0, maxRange or 15},
Increment = 0.5,
CurrentValue = 5,
Callback = function(v) GL_State[rangeKey] = v end
})
end
ReachTab:CreateSection("Alcance Padrão")
CreateToggleSlider(ReachTab, "Leg Reach", "LegReach", "LegRange")
CreateToggleSlider(ReachTab, "Head Reach", "HeadReach", "HeadRange")
CreateToggleSlider(ReachTab, "Torso Reach", "TorsoReach", "TorsoRange")
ReactsTab:CreateSection("Configurações Principais")
ReactsTab:CreateSlider({
Name = "Alcance Global dos Reacts", Range = {5, 25}, Increment = 1, CurrentValue = 12,
Callback = function(v) GL_State.ReactRange = v end
})
local function AddReact(name, stateKey)
ReactsTab:CreateToggle({ Name = name, Callback = function(v) GL_State[stateKey] = v end })
end
ReactsTab:CreateSection("Agressivos / Killers (Alta Frequência)")
AddReact("React Kill", "ReactKill")
AddReact("React Killer v2", "ReactKillerV2")
AddReact("Mars React", "MarsReact")
ReactsTab:CreateSection("Precisão / Controle (Baixa Latência)")
AddReact("The Main React", "MainReact")
AddReact("Better React", "BetterReact")
AddReact("Main2 React", "Main2React")
AddReact("Sourenos React", "SourenosReact")
AddReact("Dreelovv React", "DreelovvReact")
AddReact("Prztx1 React", "Prztx1React")
AddReact("Kamani React", "KamaniReact")
ReactsTab:CreateSection("Específicos / Drible")
AddReact("EmreMor [Perna Esquerda]", "EmreMorLeftReact")
AddReact("EmreMor [Perna Direita]", "EmreMorRightReact")
AddReact("Dribble React (Alternado)", "DribbleReact")
AddReact("Bob React", "BobReact")
ReactsTab:CreateSection("Modificadores de Física (NRC/Delay)")
ReactsTab:CreateToggle({ Name = "Boost React Detection", Callback = function(v) GL_State.BoostReactDetection = v end })
ReactsTab:CreateToggle({ Name = "Remove Ball Delay", Callback = function(v) GL_State.RemoveBallDelay = v end })
ReactsTab:CreateSlider({ Name = "NRC Magnitude Mod", Range = {0, 10}, Increment = 0.5, CurrentValue = 0, Callback = function(v) GL_State.NRCMagnitude = v end })
ReactsTab:CreateSlider({ Name = "NRC Remote Fires", Range = {0, 5}, Increment = 1, CurrentValue = 0, Callback = function(v) GL_State.NRCRemoteFires = v end })
GkTab:CreateSection("Defesa")
CreateToggleSlider(GkTab, "Auto Catch (Mãos)", "AutoCatch", "GkRange", 20)
local function AddTP(name, coord)
TPTab:CreateButton({ Name = name, Callback = function()
if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then
LocalPlayer.Character.HumanoidRootPart.CFrame = coord
end
end})
end
TPTab:CreateSection("Time Verde") AddTP("Line Green", GL_Coords.LineGreen) AddTP("GK Green", GL_Coords.GKGreen)
TPTab:CreateSection("Time Azul") AddTP("Line Blue", GL_Coords.LineBlue) AddTP("GK Blue", GL_Coords.GKBlue)
MiscTab:CreateButton({
Name = "Destruir Interface (Panic Mode)",
Callback = function()
Rayfield:Destroy()
table.clear(GL_State) -- Desativa o loop
end,
})
-- ========== MOTOR DE BUSCA OTIMIZADO ==========
-- Substitui o loop While por eventos para evitar lag
local function CheckBall(inst)
if inst:IsA("BasePart") and (inst.Name == "PSoccerBall" or inst.Name == "ClientBallProxy_PSoccerBall" or inst.Name == "TPS") then
table.insert(GL_State.ActiveBalls, inst)
end
end
for _, v in ipairs(Workspace:GetDescendants()) do CheckBall(v) end
Workspace.DescendantAdded:Connect(CheckBall)
Workspace.DescendantRemoving:Connect(function(inst)
for i, ball in ipairs(GL_State.ActiveBalls) do
if ball == inst then table.remove(GL_State.ActiveBalls, i) break end
end
end)
-- ========== MOTOR DE TOQUE (PHYSICS STEP) ==========
-- Utiliza Heartbeat em vez de task.wait() para sincronia perfeita com a física do jogo
RunService.Heartbeat:Connect(function()
if not next(GL_State) then return end -- Verifica Panic Mode
local char = LocalPlayer.Character
if not char then return end
local root = char:FindFirstChild("HumanoidRootPart")
if not root then return end
local parts = {
R_Leg = char:FindFirstChild("Right Foot") or char:FindFirstChild("Right Leg"),
L_Leg = char:FindFirstChild("Left Foot") or char:FindFirstChild("Left Leg"),
Head = char:FindFirstChild("Head"),
Torso = char:FindFirstChild("UpperTorso") or char:FindFirstChild("Torso"),
R_Arm = char:FindFirstChild("RightHand") or char:FindFirstChild("Right Arm"),
L_Arm = char:FindFirstChild("LeftHand") or char:FindFirstChild("Left Arm")
}
local function FireTouch(part, ball, times)
if not part then return end
for _ = 1, (times or 1) do
firetouchinterest(part, ball, 0)
firetouchinterest(part, ball, 1)
end
end
for _, ball in ipairs(GL_State.ActiveBalls) do
if not ball.Parent then continue end
local dist = (root.Position - ball.Position).Magnitude
local fires = (GL_State.NRCRemoteFires > 0 and dist <= GL_State.ReactRange) and math.floor(GL_State.NRCRemoteFires) or 1
-- Reaches Independentes
if GL_State.LegReach and dist <= GL_State.LegRange then FireTouch(parts.R_Leg, ball, fires) FireTouch(parts.L_Leg, ball, fires) end
if GL_State.HeadReach and dist <= GL_State.HeadRange then FireTouch(parts.Head, ball, fires) end
if GL_State.TorsoReach and dist <= GL_State.TorsoRange then FireTouch(parts.Torso, ball, fires) end
if GL_State.AutoCatch and dist <= GL_State.GkRange then FireTouch(parts.R_Arm, ball, fires) FireTouch(parts.L_Arm, ball, fires) end
-- Lógica de Reacts Refinada (Somente no alcance global)
if dist <= GL_State.ReactRange then
-- Agressivos (Alta frequência de firetouch)
if GL_State.ReactKill or GL_State.ReactKillerV2 or GL_State.MarsReact then
FireTouch(parts.R_Leg, ball, fires + 3) -- Spam agressivo
FireTouch(parts.L_Leg, ball, fires + 1)
end
-- Precisão / Padrão (Toque duplo limpo)
if GL_State.MainReact or GL_State.BetterReact or GL_State.Main2React or GL_State.SourenosReact or GL_State.DreelovvReact or GL_State.Prztx1React or GL_State.KamaniReact then
FireTouch(parts.R_Leg, ball, fires)
end
-- Drible (Alterna pernas baseado no frame tick)
if GL_State.DribbleReact then
local activeLeg = (tick() % 0.2 < 0.1) and parts.R_Leg or parts.L_Leg
FireTouch(activeLeg, ball, fires)
end
-- Específicos
if GL_State.EmreMorLeftReact then FireTouch(parts.L_Leg, ball, fires) end
if GL_State.EmreMorRightReact then FireTouch(parts.R_Leg, ball, fires) end
if GL_State.BobReact then FireTouch(parts.Head, ball, fires) FireTouch(parts.Torso, ball, fires) end
-- Special: Remove Delay (Força o jogo a registrar o toque ignorando debounce interno)
if GL_State.RemoveBallDelay then
FireTouch(parts.R_Leg, ball, 2)
end
-- Special: Boost Detection (Ativa touch extra se a bola estiver rápida)
if GL_State.BoostReactDetection and ball.AssemblyLinearVelocity.Magnitude > 30 then
FireTouch(parts.R_Leg, ball, fires + 2)
end
-- Special: NRC Magnitude (Manipulação vetorial leve se tiver Network Ownership parcial)
if GL_State.NRCMagnitude > 0 then
local dir = (ball.Position - root.Position).Unit
-- Usa AssemblyLinearVelocity moderno no lugar de Velocity (depreciado)
ball.AssemblyLinearVelocity = ball.AssemblyLinearVelocity + (dir * GL_State.NRCMagnitude)
end
end
end
end)No comments yet for this script.



