Aimbot for PC No Circle Visible
Key RequiredUniversal

Aimbot for PC No Circle Visible

Universal Scriptmeymarcel23meymarcel23 1.3K views 24 executesUpdated Oct 3, 2025
5.0/ 5(1 votes)
10100% Positive
Lua Script•103 lines (3477 chars)
local fov = 45
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Players = game:GetService("Players")
local Cam = game.Workspace.CurrentCamera

-- FOV Circle (invisible)
local FOVring = Drawing.new("Circle")
FOVring.Visible = false -- biar gak kelihatan
FOVring.Thickness = 2
FOVring.Color = Color3.fromRGB(128, 0, 128)
FOVring.Filled = false
FOVring.Radius = fov
FOVring.Position = Cam.ViewportSize / 2

local function updateDrawings()
    FOVring.Position = Cam.ViewportSize / 2
end

local function lookAt(target)
    local lookVector = (target - Cam.CFrame.Position).Unit
    Cam.CFrame = CFrame.new(Cam.CFrame.Position, Cam.CFrame.Position + lookVector)
end

-- cari target baru
local function getClosestPlayerInFOV()
    local nearest = nil
    local minDist = math.huge
    local screenCenter = Cam.ViewportSize / 2

    for _, player in ipairs(Players:GetPlayers()) do
        if player ~= Players.LocalPlayer and player.Character then
            local hrp = player.Character:FindFirstChild("HumanoidRootPart")
            local humanoid = player.Character:FindFirstChild("Humanoid")
            if hrp and humanoid and humanoid.Health > 0 then
                local screenPos, visible = Cam:WorldToViewportPoint(hrp.Position)
                local dist = (Vector2.new(screenPos.X, screenPos.Y) - screenCenter).Magnitude
                if dist < fov and dist < minDist and visible then
                    minDist = dist
                    nearest = player
                end
            end
        end
    end

    return nearest
end

-- Toggle Logic
local aimbotEnabled = false
local lockedTarget = nil
local function toggleAimbot()
    aimbotEnabled = not aimbotEnabled
    if not aimbotEnabled then
        lockedTarget = nil
    end
end

-- Keybinds
UserInputService.InputBegan:Connect(function(input, gp)
    if not gp then
        if input.KeyCode == Enum.KeyCode.Delete then
            RunService:UnbindFromRenderStep("FOVUpdate")
            FOVring:Remove()
        elseif input.KeyCode == Enum.KeyCode.Q then
            lockedTarget = nil -- force unlock
        elseif input.KeyCode == Enum.KeyCode.F1 then
            toggleAimbot() -- F1 buat toggle Aimbot
        end
    end
end)

-- Loop utama
RunService.RenderStepped:Connect(function()
    updateDrawings()

    if aimbotEnabled then
        -- kalau belum ada target, cari target baru
        if not lockedTarget or not lockedTarget.Character 
           or not lockedTarget.Character:FindFirstChild("HumanoidRootPart") 
           or lockedTarget.Character:FindFirstChild("Humanoid").Health <= 0 then
            lockedTarget = getClosestPlayerInFOV()
        else
            -- cek apakah target masih di dalam FOV
            local hrp = lockedTarget.Character:FindFirstChild("HumanoidRootPart")
            if hrp then
                local screenPos, visible = Cam:WorldToViewportPoint(hrp.Position)
                local dist = (Vector2.new(screenPos.X, screenPos.Y) - (Cam.ViewportSize / 2)).Magnitude
                if not visible or dist > fov then
                    lockedTarget = nil
                end
            end
        end

        -- kalau ada target, lock terus
        if lockedTarget and lockedTarget.Character then
            local hrp = lockedTarget.Character:FindFirstChild("HumanoidRootPart")
            if hrp then
                lookAt(hrp.Position)
            end
        end
    end
end)

Features & Information

Nothing

Community Comments (1)

grabov273grabov273Oct 3, 2025

Sigmo cocojambo

More Scripts for Universal Scripts