M
Description
IF U HAVE BALL THEN IT WILL SCORE FOR U. THE NAME SAYS IT ALL LOL! I FOUND THE REASON WHY THIS SCRIPT IS BANNABLE, BECAUSE IF U SCORE TOO FAST THE GAME CONSIDER YOU AS GOAL FARMING... :)
GAME[Yukimiya] Blue Lock: Skibidi
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 ]]
--[[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=6aa7f3ff69ea4aa57bf49e6b"))()
end)
end)
--[[rscripts:analytics:end]]
--========================================================--
-- AUTO GOAL CONTROLLER --
--========================================================--
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local BALL_NAME = "Ball"
local MIN_SPEED = 1
local MAX_SPEED = 1000
local SHOOT_FORCE = 100
--========================================================--
-- STATE
--========================================================--
local State = {
autoGoalEnabled = false,
isExecuting = false
}
--========================================================--
-- SHOOT REMOTE (EXACT LOGIC & STRUCTURE FROM ORIGINAL)
--========================================================--
local shootBallRemote
local shootRemoteReady = false
local function resolveShootRemotes()
local ok, remote = pcall(function()
local events = ReplicatedStorage:FindFirstChild("Events")
return events and events:FindFirstChild("ShootBall")
end)
shootBallRemote = ok and remote or nil
shootRemoteReady = shootBallRemote ~= nil and shootBallRemote:IsA("RemoteEvent")
return shootBallRemote
end
resolveShootRemotes()
local function fireShootRemote(direction, force, thirdArg)
if not shootRemoteReady or not shootBallRemote then resolveShootRemotes() end
if not shootRemoteReady or not shootBallRemote then
return false
end
if typeof(direction) ~= "Vector3" or direction.Magnitude < 0.001 then return false end
direction = direction.Unit
force = math.clamp(tonumber(force) or MIN_SPEED, MIN_SPEED, MAX_SPEED)
return pcall(function()
shootBallRemote:FireServer(direction, force, thirdArg == nil and false or thirdArg)
end)
end
--========================================================--
-- BALL & GOAL HELPERS
--========================================================--
local function scanCharacterForBall(plr)
if not plr or not plr.Character then return nil end
local found = plr.Character:FindFirstChild(BALL_NAME, true)
if found and found:IsA("BasePart") then
return found
end
return nil
end
local function localHasBall()
return scanCharacterForBall(player) ~= nil
end
local function findFreeBall()
local direct = workspace:FindFirstChild(BALL_NAME)
if direct and direct:IsA("BasePart") then return direct end
for _, obj in ipairs(workspace:GetChildren()) do
if obj:IsA("BasePart") and string.lower(obj.Name) == string.lower(BALL_NAME) then
return obj
end
end
return nil
end
local function getTeamIsHome()
return player.Team and string.lower(player.Team.Name) == "home"
end
local function resolveGoalHitboxForTeam(homeSide)
local map = workspace:FindFirstChild("Map")
if not map then return nil end
local goalName = homeSide and "PlayerOneGoal" or "PlayerTwoGoal"
local goalModel = map:FindFirstChild(goalName)
if not goalModel then return nil end
local score = goalModel:FindFirstChild("ScoreHitbox") or goalModel:FindFirstChild("Score")
if score and score:IsA("BasePart") then return score end
local hitbox = goalModel:FindFirstChild("ScoreHitbox", true)
if hitbox and hitbox:IsA("BasePart") then return hitbox end
return goalModel:FindFirstChildWhichIsA("BasePart", true)
end
local function resolveOpponentGoalHitbox()
local isHome = getTeamIsHome()
return resolveGoalHitboxForTeam(not isHome)
end
--========================================================--
-- NOTIFICATION SYSTEM
--========================================================--
local notificationHolder
local function notify(titleText, bodyText, duration)
duration = duration or 2.0
if not notificationHolder or not notificationHolder.Parent then return end
local card = Instance.new("Frame")
card.Size = UDim2.fromOffset(240, 50)
card.Position = UDim2.new(0.5, -120, 0, -60)
card.BackgroundColor3 = Color3.fromRGB(25, 25, 32)
card.BorderSizePixel = 0
card.Parent = notificationHolder
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 8)
corner.Parent = card
local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(60, 60, 75)
stroke.Transparency = 0.2
stroke.Parent = card
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -16, 0, 20)
title.Position = UDim2.fromOffset(8, 4)
title.BackgroundTransparency = 1
title.Text = tostring(titleText)
title.Font = Enum.Font.GothamBold
title.TextSize = 12
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.TextXAlignment = Enum.TextXAlignment.Left
title.Parent = card
local body = Instance.new("TextLabel")
body.Size = UDim2.new(1, -16, 0, 20)
body.Position = UDim2.fromOffset(8, 22)
body.BackgroundTransparency = 1
body.Text = tostring(bodyText)
body.Font = Enum.Font.Gotham
body.TextSize = 11
body.TextColor3 = Color3.fromRGB(180, 180, 190)
body.TextXAlignment = Enum.TextXAlignment.Left
body.Parent = card
TweenService:Create(card, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
Position = UDim2.new(0.5, -120, 0, 10)
}):Play()
task.delay(duration, function()
if not card.Parent then return end
TweenService:Create(card, TweenInfo.new(0.2, Enum.EasingStyle.Quad), {
Position = UDim2.new(0.5, -120, 0, -60)
}):Play()
task.delay(0.22, function()
if card.Parent then card:Destroy() end
end)
end)
end
--========================================================--
-- CORE AUTO GOAL ACTION
--========================================================--
local function executeGoalShot()
if State.isExecuting then return end
State.isExecuting = true
local heldBall = scanCharacterForBall(player)
if not heldBall then
State.isExecuting = false
notify("AUTO GOAL", "Ball not in possession!", 1.2)
return false
end
local goalHitbox = resolveOpponentGoalHitbox()
if not goalHitbox then
State.isExecuting = false
notify("AUTO GOAL", "Opponent goal not found!", 1.5)
return false
end
-- 1. Tự động dùng Remote sút bóng ra khỏi người trước
local camera = workspace.CurrentCamera
local shootDir = camera and camera.CFrame.LookVector or Vector3.new(0, 0, -1)
fireShootRemote(shootDir, SHOOT_FORCE, false)
-- 2. Delay ngắn để Server giải phóng Weld/Hold
task.wait(0.05)
-- 3. Dịch chuyển bóng trực tiếp vào khung thành đối phương
local targetBall = findFreeBall() or heldBall
if targetBall and targetBall:IsA("BasePart") then
targetBall.CFrame = goalHitbox.CFrame
targetBall.AssemblyLinearVelocity = Vector3.zero
end
notify("AUTO GOAL", "Goal Action Executed!", 1.2)
task.wait(0.3)
State.isExecuting = false
return true
end
--========================================================--
-- GUI BUILD
--========================================================--
local gui = Instance.new("ScreenGui")
gui.Name = "AutoGoalController"
gui.ResetOnSpawn = false
gui.IgnoreGuiInset = true
gui.Parent = playerGui
notificationHolder = Instance.new("Frame")
notificationHolder.Name = "Notifications"
notificationHolder.Size = UDim2.fromOffset(260, 200)
notificationHolder.Position = UDim2.new(0.5, -130, 0, 0)
notificationHolder.BackgroundTransparency = 1
notificationHolder.Parent = gui
local main = Instance.new("Frame")
main.Name = "MainFrame"
main.Size = UDim2.fromOffset(260, 160)
main.Position = UDim2.new(0.5, -130, 0.4, -80)
main.BackgroundColor3 = Color3.fromRGB(20, 20, 26)
main.BorderSizePixel = 0
main.Parent = gui
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 10)
corner.Parent = main
local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(55, 55, 70)
stroke.Transparency = 0.2
stroke.Parent = main
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -20, 0, 30)
title.Position = UDim2.fromOffset(10, 5)
title.BackgroundTransparency = 1
title.Text = "⚽ AUTO GOAL"
title.Font = Enum.Font.GothamBold
title.TextSize = 15
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.TextXAlignment = Enum.TextXAlignment.Left
title.Parent = main
local toggleBtn = Instance.new("TextButton")
toggleBtn.Size = UDim2.new(1, -20, 0, 42)
toggleBtn.Position = UDim2.fromOffset(10, 45)
toggleBtn.BackgroundColor3 = Color3.fromRGB(38, 38, 48)
toggleBtn.BorderSizePixel = 0
toggleBtn.Text = "AUTO GOAL: OFF"
toggleBtn.TextColor3 = Color3.fromRGB(220, 220, 230)
toggleBtn.Font = Enum.Font.GothamBold
toggleBtn.TextSize = 13
toggleBtn.Parent = main
local toggleCorner = Instance.new("UICorner")
toggleCorner.CornerRadius = UDim.new(0, 8)
toggleCorner.Parent = toggleBtn
local actionBtn = Instance.new("TextButton")
actionBtn.Size = UDim2.new(1, -20, 0, 42)
actionBtn.Position = UDim2.fromOffset(10, 97)
actionBtn.BackgroundColor3 = Color3.fromRGB(45, 90, 180)
actionBtn.BorderSizePixel = 0
actionBtn.Text = "SCORE GOAL (ONCE)"
actionBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
actionBtn.Font = Enum.Font.GothamBold
actionBtn.TextSize = 13
actionBtn.Parent = main
local actionCorner = Instance.new("UICorner")
actionCorner.CornerRadius = UDim.new(0, 8)
actionCorner.Parent = actionBtn
-- DRAGGABLE UI
local dragging, dragStart, startPos
title.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
dragStart = input.Position
startPos = main.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then dragging = false end
end)
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)
--========================================================--
-- BUTTON EVENTS
--========================================================--
local function updateUI()
if State.autoGoalEnabled then
toggleBtn.Text = "AUTO GOAL: ON"
toggleBtn.BackgroundColor3 = Color3.fromRGB(40, 160, 80)
else
toggleBtn.Text = "AUTO GOAL: OFF"
toggleBtn.BackgroundColor3 = Color3.fromRGB(38, 38, 48)
end
end
toggleBtn.MouseButton1Click:Connect(function()
State.autoGoalEnabled = not State.autoGoalEnabled
updateUI()
notify("AUTO GOAL", State.autoGoalEnabled and "Auto Mode Enabled" or "Auto Mode Disabled", 1.2)
end)
actionBtn.MouseButton1Click:Connect(function()
executeGoalShot()
end)
--========================================================--
-- AUTOMATIC LOOP
--========================================================--
RunService.Heartbeat:Connect(function()
if State.autoGoalEnabled and not State.isExecuting then
if localHasBall() then
executeGoalShot()
end
end
end)
notify("AUTO GOAL", "Loaded successfully", 1.5)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