-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. 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 Rscripts Risk Notice ]] --========================================================-- -- VECTOR HUB: SOCCER EDITION -- -- Target Game: FIFA Super Soccer -- --========================================================-- local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local RunService = game:GetService("RunService") local VirtualInputManager = game:GetService("VirtualInputManager") local Workspace = game:GetService("Workspace") local LocalPlayer = Players.LocalPlayer local Camera = Workspace.CurrentCamera ------------------------------------------------------------ -- HUB CONFIGURATION & STATES ------------------------------------------------------------ local Config = { PlayerESP = false, PlayerTracers = false, NameTags = false, ChamsMode = false, HighlightColor = Color3.fromRGB(75, 125, 255), TracerColor = Color3.fromRGB(255, 255, 255), NameTagColor = Color3.fromRGB(255, 255, 255), SpeedBoost = false, WalkSpeedValue = 24, AutoSprint = false, HitboxExpansion = false, HitboxSize = 6, HitboxHeight = 3, HitboxBoxColor = Color3.fromRGB(0, 255, 170) } local Highlights = {} local Tracers = {} local NameTags = {} local OriginalRootSize = Vector3.new(2, 2, 1) local OriginalHipHeight = 2 local PlayerHitboxBox = nil local PlayerHitboxWire = nil ------------------------------------------------------------ -- VISUAL CLEANUP HELPERS ------------------------------------------------------------ local function ClearPlayerVisuals(player) if Highlights[player] then pcall(function() Highlights[player]:Destroy() end) Highlights[player] = nil end if Tracers[player] then pcall(function() Tracers[player]:Remove() end) Tracers[player] = nil end if NameTags[player] then pcall(function() NameTags[player]:Destroy() end) NameTags[player] = nil end end Players.PlayerRemoving:Connect(ClearPlayerVisuals) ------------------------------------------------------------ -- SAFE HITBOX CONTROLLER ------------------------------------------------------------ local function ApplyPlayerHitbox() local char = LocalPlayer.Character if not char or not char:IsDescendantOf(Workspace) then return end local root = char:FindFirstChild("HumanoidRootPart") local hum = char:FindFirstChildOfClass("Humanoid") if not root or not hum or not root:IsA("BasePart") then return end if Config.HitboxExpansion then local newHeight = math.clamp(Config.HitboxHeight, 2, 5) local newSize = Vector3.new(Config.HitboxSize, newHeight, Config.HitboxSize) -- Safely expand root part root.Size = newSize root.Transparency = 1 root.CanCollide = false hum.HipHeight = OriginalHipHeight - ((newHeight - 2) / 2) -- Safely handle tackle hitboxes for _, part in ipairs(char:GetChildren()) do if part:IsA("BasePart") and part ~= root then local lowerName = string.lower(part.Name) if string.find(lowerName, "tackle") or string.find(lowerName, "reach") or string.find(lowerName, "slide") then part.Size = newSize part.Transparency = 1 part.CanCollide = false end end end -- Visual Box Overlays if not PlayerHitboxBox or PlayerHitboxBox.Parent ~= root then if PlayerHitboxBox then pcall(function() PlayerHitboxBox:Destroy() end) end if PlayerHitboxWire then pcall(function() PlayerHitboxWire:Destroy() end) end PlayerHitboxBox = Instance.new("BoxHandleAdornment") PlayerHitboxBox.Name = "VectorHub_HitboxFill" PlayerHitboxBox.Color3 = Config.HitboxBoxColor PlayerHitboxBox.Transparency = 0.82 PlayerHitboxBox.AlwaysOnTop = false PlayerHitboxBox.ZIndex = 1 PlayerHitboxBox.Adornee = root PlayerHitboxBox.Parent = root PlayerHitboxWire = Instance.new("SelectionBox") PlayerHitboxWire.Name = "VectorHub_HitboxOutline" PlayerHitboxWire.Color3 = Config.HitboxBoxColor PlayerHitboxWire.LineThickness = 0.035 PlayerHitboxWire.SurfaceTransparency = 1 PlayerHitboxWire.Adornee = root PlayerHitboxWire.Parent = root end if PlayerHitboxBox then PlayerHitboxBox.Size = root.Size end else root.Size = OriginalRootSize root.Transparency = 1 root.CanCollide = true hum.HipHeight = OriginalHipHeight if PlayerHitboxBox then pcall(function() PlayerHitboxBox:Destroy() end) PlayerHitboxBox = nil end if PlayerHitboxWire then pcall(function() PlayerHitboxWire:Destroy() end) PlayerHitboxWire = nil end end end ------------------------------------------------------------ -- ENGINE LOOPS ------------------------------------------------------------ -- Physics, Speed & Auto-Sprint Loop RunService.Stepped:Connect(function() local char = LocalPlayer.Character if char and char:IsDescendantOf(Workspace) then local humanoid = char:FindFirstChildOfClass("Humanoid") -- Speed Boost Engine if Config.SpeedBoost and humanoid then if humanoid.WalkSpeed ~= Config.WalkSpeedValue then humanoid.WalkSpeed = Config.WalkSpeedValue end end -- Auto Sprint Engine if Config.AutoSprint and humanoid then if humanoid.MoveDirection.Magnitude > 0 then VirtualInputManager:SendKeyEvent(true, Enum.KeyCode.LeftShift, false, game) end end -- Scaled Hitbox Maintainer if Config.HitboxExpansion then local root = char:FindFirstChild("HumanoidRootPart") if root and (root.Size.X ~= Config.HitboxSize or root.Size.Y ~= Config.HitboxHeight) then ApplyPlayerHitbox() end end end end) -- Visuals Loop RunService.RenderStepped:Connect(function() local localChar = LocalPlayer.Character local localRoot = localChar and localChar:FindFirstChild("HumanoidRootPart") for _, player in ipairs(Players:GetPlayers()) do if player ~= LocalPlayer then local char = player.Character local root = char and char:FindFirstChild("HumanoidRootPart") if char and root and char:IsDescendantOf(Workspace) then -- 1. HIGHLIGHTS & CHAMS if Config.PlayerESP or Config.ChamsMode then if not Highlights[player] or Highlights[player].Parent ~= char then if Highlights[player] then pcall(function() Highlights[player]:Destroy() end) end local hl = Instance.new("Highlight") hl.Name = "VectorHub_PlayerESP" hl.FillColor = Config.HighlightColor hl.OutlineColor = Config.HighlightColor hl.FillTransparency = Config.ChamsMode and 0.4 or 0.6 hl.DepthMode = Config.ChamsMode and Enum.HighlightDepthMode.AlwaysOnTop or Enum.HighlightDepthMode.Occluded hl.Parent = char Highlights[player] = hl else Highlights[player].DepthMode = Config.ChamsMode and Enum.HighlightDepthMode.AlwaysOnTop or Enum.HighlightDepthMode.Occluded Highlights[player].FillTransparency = Config.ChamsMode and 0.4 or 0.6 end else if Highlights[player] then pcall(function() Highlights[player]:Destroy() end) Highlights[player] = nil end end -- 2. TRACERS if Config.PlayerTracers and Camera then local screenPos, onScreen = Camera:WorldToViewportPoint(root.Position) if onScreen then if not Tracers[player] then local success, line = pcall(function() return Drawing.new("Line") end) if success and line then line.Thickness = 1.5 line.Transparency = 0.8 line.Color = Config.TracerColor Tracers[player] = line end end if Tracers[player] then Tracers[player].From = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y) Tracers[player].To = Vector2.new(screenPos.X, screenPos.Y) Tracers[player].Visible = true end else if Tracers[player] then Tracers[player].Visible = false end end else if Tracers[player] then pcall(function() Tracers[player]:Remove() end) Tracers[player] = nil end end -- 3. NAME TAGS if Config.NameTags then local dist = localRoot and math.floor((root.Position - localRoot.Position).Magnitude) or 0 if not NameTags[player] or NameTags[player].Parent ~= root then if NameTags[player] then pcall(function() NameTags[player]:Destroy() end) end local bb = Instance.new("BillboardGui") bb.Name = "VectorHub_NameTag" bb.Size = UDim2.fromOffset(120, 30) bb.StudsOffset = Vector3.new(0, 3, 0) bb.AlwaysOnTop = true local txt = Instance.new("TextLabel") txt.Name = "TagLabel" txt.Size = UDim2.fromScale(1, 1) txt.BackgroundTransparency = 1 txt.TextColor3 = Config.NameTagColor txt.Font = Enum.Font.GothamBold txt.TextSize = 11 txt.TextStrokeTransparency = 0.4 txt.Parent = bb bb.Parent = root NameTags[player] = bb end local label = NameTags[player]:FindFirstChild("TagLabel") if label then label.Text = string.format("%s [%dm]", player.DisplayName, dist) end else if NameTags[player] then pcall(function() NameTags[player]:Destroy() end) NameTags[player] = nil end end else ClearPlayerVisuals(player) end end end end) -- Safe Character Respawn Handler LocalPlayer.CharacterAdded:Connect(function(char) task.defer(function() local hum = char:WaitForChild("Humanoid", 5) local root = char:WaitForChild("HumanoidRootPart", 5) if hum and root then OriginalHipHeight = hum.HipHeight task.wait(0.2) ApplyPlayerHitbox() end end) end) ------------------------------------------------------------ -- UI FRAMEWORK SETUP ------------------------------------------------------------ local GUI = Instance.new("ScreenGui") GUI.Name = "VectorHubSoccer" GUI.ResetOnSpawn = false GUI.IgnoreGuiInset = true GUI.Parent = LocalPlayer:WaitForChild("PlayerGui") local Main = Instance.new("Frame") Main.Name = "Main" Main.Size = UDim2.fromOffset(420, 430) Main.Position = UDim2.new(0.5, -210, 0.5, -215) Main.BackgroundColor3 = Color3.fromRGB(15, 16, 22) Main.BorderSizePixel = 0 Main.ClipsDescendants = true Main.Parent = GUI local MainCorner = Instance.new("UICorner") MainCorner.CornerRadius = UDim.new(0, 14) MainCorner.Parent = Main local MainStroke = Instance.new("UIStroke") MainStroke.Color = Color3.fromRGB(40, 42, 54) MainStroke.Thickness = 1.5 MainStroke.Parent = Main -- Top Bar local TopBar = Instance.new("Frame") TopBar.Size = UDim2.new(1, 0, 0, 50) TopBar.BackgroundColor3 = Color3.fromRGB(20, 22, 30) TopBar.BorderSizePixel = 0 TopBar.Parent = Main local Title = Instance.new("TextLabel") Title.Size = UDim2.new(0, 200, 1, 0) Title.Position = UDim2.fromOffset(16, 0) Title.BackgroundTransparency = 1 Title.Text = "VECTOR SOCCER" Title.RichText = true Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.TextSize = 15 Title.Font = Enum.Font.GothamBold Title.TextXAlignment = Enum.TextXAlignment.Left Title.Parent = TopBar -- Controls local MinimizeBtn = Instance.new("TextButton") MinimizeBtn.Size = UDim2.fromOffset(28, 28) MinimizeBtn.Position = UDim2.new(1, -68, 0, 11) MinimizeBtn.BackgroundColor3 = Color3.fromRGB(30, 32, 42) MinimizeBtn.Text = "—" MinimizeBtn.TextColor3 = Color3.fromRGB(180, 185, 200) MinimizeBtn.Font = Enum.Font.GothamBold MinimizeBtn.Parent = TopBar local CloseBtn = Instance.new("TextButton") CloseBtn.Size = UDim2.fromOffset(28, 28) CloseBtn.Position = UDim2.new(1, -34, 0, 11) CloseBtn.BackgroundColor3 = Color3.fromRGB(30, 32, 42) CloseBtn.Text = "✕" CloseBtn.TextColor3 = Color3.fromRGB(180, 185, 200) CloseBtn.Font = Enum.Font.GothamBold CloseBtn.Parent = TopBar Instance.new("UICorner", MinimizeBtn).CornerRadius = UDim.new(0, 6) Instance.new("UICorner", CloseBtn).CornerRadius = UDim.new(0, 6) local IsCollapsed = false MinimizeBtn.MouseButton1Click:Connect(function() IsCollapsed = not IsCollapsed TweenService:Create(Main, TweenInfo.new(0.25), { Size = IsCollapsed and UDim2.fromOffset(420, 50) or UDim2.fromOffset(420, 430) }):Play() end) CloseBtn.MouseButton1Click:Connect(function() Main.Visible = false end) -- Sidebar Tabs local Sidebar = Instance.new("Frame") Sidebar.Size = UDim2.new(0, 110, 1, -50) Sidebar.Position = UDim2.fromOffset(0, 50) Sidebar.BackgroundColor3 = Color3.fromRGB(18, 19, 26) Sidebar.BorderSizePixel = 0 Sidebar.Parent = Main local TabContainer = Instance.new("Frame") TabContainer.Size = UDim2.new(1, -125, 1, -60) TabContainer.Position = UDim2.fromOffset(118, 55) TabContainer.BackgroundTransparency = 1 TabContainer.Parent = Main local Tabs = {} local TabButtons = {} local function CreateTab(Name) local TabFrame = Instance.new("ScrollingFrame") TabFrame.Size = UDim2.new(1, 0, 1, 0) TabFrame.BackgroundTransparency = 1 TabFrame.BorderSizePixel = 0 TabFrame.ScrollBarThickness = 2 TabFrame.Visible = false TabFrame.Parent = TabContainer local Layout = Instance.new("UIListLayout") Layout.Padding = UDim.new(0, 8) Layout.Parent = TabFrame local TabBtn = Instance.new("TextButton") TabBtn.Size = UDim2.new(1, -16, 0, 32) TabBtn.Position = UDim2.fromOffset(8, #TabButtons * 38 + 10) TabBtn.BackgroundColor3 = Color3.fromRGB(24, 26, 36) TabBtn.Text = Name TabBtn.TextColor3 = Color3.fromRGB(140, 145, 165) TabBtn.Font = Enum.Font.GothamMedium TabBtn.TextSize = 11 TabBtn.Parent = Sidebar Instance.new("UICorner", TabBtn).CornerRadius = UDim.new(0, 6) TabBtn.MouseButton1Click:Connect(function() for _, t in pairs(Tabs) do t.Visible = false end for _, b in pairs(TabButtons) do b.BackgroundColor3 = Color3.fromRGB(24, 26, 36) b.TextColor3 = Color3.fromRGB(140, 145, 165) end TabFrame.Visible = true TabBtn.BackgroundColor3 = Color3.fromRGB(75, 125, 255) TabBtn.TextColor3 = Color3.fromRGB(255, 255, 255) end) table.insert(Tabs, TabFrame) table.insert(TabButtons, TabBtn) return TabFrame end local VisualsTab = CreateTab("Visuals") local GameplayTab = CreateTab("Gameplay") Tabs[1].Visible = true TabButtons[1].BackgroundColor3 = Color3.fromRGB(75, 125, 255) TabButtons[1].TextColor3 = Color3.fromRGB(255, 255, 255) ------------------------------------------------------------ -- UI CONTROLS BUILDERS ------------------------------------------------------------ local function AddToggle(Parent, Name, Default, Callback) local Row = Instance.new("Frame") Row.Size = UDim2.new(1, -5, 0, 42) Row.BackgroundColor3 = Color3.fromRGB(22, 24, 32) Row.Parent = Parent Instance.new("UICorner", Row).CornerRadius = UDim.new(0, 8) local Label = Instance.new("TextLabel") Label.Size = UDim2.new(1, -50, 1, 0) Label.Position = UDim2.fromOffset(10, 0) Label.BackgroundTransparency = 1 Label.Text = Name Label.TextColor3 = Color3.fromRGB(220, 225, 240) Label.TextSize = 11 Label.Font = Enum.Font.GothamMedium Label.TextXAlignment = Enum.TextXAlignment.Left Label.Parent = Row local Toggle = Instance.new("TextButton") Toggle.Size = UDim2.fromOffset(36, 18) Toggle.Position = UDim2.new(1, -44, 0.5, -9) Toggle.BackgroundColor3 = Default and Color3.fromRGB(75, 125, 255) or Color3.fromRGB(40, 42, 54) Toggle.Text = "" Toggle.Parent = Row Instance.new("UICorner", Toggle).CornerRadius = UDim.new(1, 0) local State = Default Toggle.MouseButton1Click:Connect(function() State = not State Toggle.BackgroundColor3 = State and Color3.fromRGB(75, 125, 255) or Color3.fromRGB(40, 42, 54) Callback(State) end) end local function AddSlider(Parent, Name, Min, Max, Default, Callback) local Row = Instance.new("Frame") Row.Size = UDim2.new(1, -5, 0, 52) Row.BackgroundColor3 = Color3.fromRGB(22, 24, 32) Row.Parent = Parent Instance.new("UICorner", Row).CornerRadius = UDim.new(0, 8) local Label = Instance.new("TextLabel") Label.Size = UDim2.new(1, -70, 0, 24) Label.Position = UDim2.fromOffset(10, 2) Label.BackgroundTransparency = 1 Label.Text = Name Label.TextColor3 = Color3.fromRGB(220, 225, 240) Label.TextSize = 11 Label.Font = Enum.Font.GothamMedium Label.TextXAlignment = Enum.TextXAlignment.Left Label.Parent = Row local ValueLabel = Instance.new("TextLabel") ValueLabel.Size = UDim2.new(0, 50, 0, 24) ValueLabel.Position = UDim2.new(1, -60, 0, 2) ValueLabel.BackgroundTransparency = 1 ValueLabel.Text = tostring(Default) ValueLabel.TextColor3 = Color3.fromRGB(75, 125, 255) ValueLabel.TextSize = 11 ValueLabel.Font = Enum.Font.GothamBold ValueLabel.TextXAlignment = Enum.TextXAlignment.Right ValueLabel.Parent = Row local SliderTrack = Instance.new("Frame") SliderTrack.Size = UDim2.new(1, -20, 0, 6) SliderTrack.Position = UDim2.fromOffset(10, 34) SliderTrack.BackgroundColor3 = Color3.fromRGB(40, 42, 54) SliderTrack.Parent = Row Instance.new("UICorner", SliderTrack).CornerRadius = UDim.new(1, 0) local SliderFill = Instance.new("Frame") local startScale = (Default - Min) / (Max - Min) SliderFill.Size = UDim2.new(startScale, 0, 1, 0) SliderFill.BackgroundColor3 = Color3.fromRGB(75, 125, 255) SliderFill.Parent = SliderTrack Instance.new("UICorner", SliderFill).CornerRadius = UDim.new(1, 0) local Sliding = false local function UpdateInput(input) local mousePos = input.Position.X local trackPos = SliderTrack.AbsolutePosition.X local trackWidth = SliderTrack.AbsoluteSize.X local relativeX = math.clamp(mousePos - trackPos, 0, trackWidth) local scale = relativeX / trackWidth local val = math.floor(Min + (Max - Min) * scale) SliderFill.Size = UDim2.new(scale, 0, 1, 0) ValueLabel.Text = tostring(val) Callback(val) end SliderTrack.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then Sliding = true UpdateInput(input) end end) UserInputService.InputChanged:Connect(function(input) if Sliding and input.UserInputType == Enum.UserInputType.MouseMovement then UpdateInput(input) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then Sliding = false end end) end ------------------------------------------------------------ -- POPULATE CONTROLS ------------------------------------------------------------ -- Visuals Tab AddToggle(VisualsTab, "Player ESP", Config.PlayerESP, function(v) Config.PlayerESP = v end) AddToggle(VisualsTab, "Player Tracers", Config.PlayerTracers, function(v) Config.PlayerTracers = v end) AddToggle(VisualsTab, "Name & Distance Tags", Config.NameTags, function(v) Config.NameTags = v end) AddToggle(VisualsTab, "Chams Mode (Through Walls)", Config.ChamsMode, function(v) Config.ChamsMode = v end) -- Gameplay Tab AddToggle(GameplayTab, "Enable Speed Boost", Config.SpeedBoost, function(v) Config.SpeedBoost = v if not v and LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid") then LocalPlayer.Character:FindFirstChildOfClass("Humanoid").WalkSpeed = 16 end end) AddSlider(GameplayTab, "Player Speed", 16, 80, Config.WalkSpeedValue, function(val) Config.WalkSpeedValue = val end) AddToggle(GameplayTab, "Auto Sprint", Config.AutoSprint, function(v) Config.AutoSprint = v if not v then VirtualInputManager:SendKeyEvent(false, Enum.KeyCode.LeftShift, false, game) end end) AddToggle(GameplayTab, "Expand Hitbox & Tackle", Config.HitboxExpansion, function(v) Config.HitboxExpansion = v ApplyPlayerHitbox() end) AddSlider(GameplayTab, "Hitbox Size", 2, 20, Config.HitboxSize, function(val) Config.HitboxSize = val ApplyPlayerHitbox() end) AddSlider(GameplayTab, "Hitbox Height", 2, 5, Config.HitboxHeight, function(val) Config.HitboxHeight = val ApplyPlayerHitbox() end) ------------------------------------------------------------ -- WINDOW DRAGGING & KEYBIND ------------------------------------------------------------ local Dragging, DragStart, StartPos TopBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then Dragging = true DragStart = input.Position StartPos = Main.Position end end) UserInputService.InputChanged:Connect(function(input) if Dragging and input.UserInputType == Enum.UserInputType.MouseMovement then local delta = input.Position - DragStart Main.Position = UDim2.new(StartPos.X.Scale, StartPos.X.Offset + delta.X, StartPos.Y.Scale, StartPos.Y.Offset + delta.Y) end end) TopBar.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then Dragging = false end end) UserInputService.InputBegan:Connect(function(input, processed) if not processed and input.KeyCode == Enum.KeyCode.RightShift then Main.Visible = not Main.Visible end end)