跳转到内容
可用Combat

Vibe code hub (Esp, Aimbot)

FLFluffyBlox412 次浏览Universal2026年7月25日
分享
Vibe code hub (Esp, Aimbot)

脚本代码

Lua
-- Drag red title bar to move GUI | Hold E to aim | INSERT = Show/Hide GUI | F2 = Unload

local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")

local AimbotEnabled = true
local ESPEnabled = true
local AimKey = Enum.KeyCode.E
local AimPart = "Head"
local Smoothness = 0.28
local FOVRadius = 110
local MaxDistance = 850

local ESP = {}
local FOVCircle = nil
local ScreenGui = nil
local ScriptLoaded = true
local CurrentTarget = nil

wait(0.8)

local function SafeUnload()
    ScriptLoaded = false
    CurrentTarget = nil
    for _, data in pairs(ESP) do 
        pcall(function() 
            data.Box:Remove() 
            data.Name:Remove() 
        end) 
    end
    if FOVCircle then pcall(function() FOVCircle:Remove() end) end
    if ScreenGui then pcall(function() ScreenGui:Destroy() end) end
    print("✅ Unloaded")
end

local function HideAllESP()
    for _, data in pairs(ESP) do
        pcall(function()
            if data.Box then data.Box.Visible = false end
            if data.Name then data.Name.Visible = false end
        end)
    end
end

local function CreateFOVCircle()
    if FOVCircle then pcall(FOVCircle.Remove, FOVCircle) end
    FOVCircle = Drawing.new("Circle")
    FOVCircle.Thickness = 1.5
    FOVCircle.Filled = false
    FOVCircle.Transparency = 0.75
    FOVCircle.Color = Color3.fromRGB(0, 255, 100)
    FOVCircle.Radius = FOVRadius
    FOVCircle.Position = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2)
    FOVCircle.Visible = true
end

local function RemoveESP(plr)
    if ESP[plr] then
        pcall(function()
            ESP[plr].Box:Remove()
            ESP[plr].Name:Remove()
        end)
        ESP[plr] = nil
    end
end

local function CreateESP(plr)
    if plr == LocalPlayer then return end
    RemoveESP(plr)
    local box = Drawing.new("Square")
    box.Thickness = 2
    box.Filled = false
    box.Transparency = 1
    box.Color = Color3.fromRGB(255, 0, 0)
    local name = Drawing.new("Text")
    name.Size = 15
    name.Center = true
    name.Outline = true
    name.Color = Color3.fromRGB(255, 255, 0)
    ESP[plr] = {Box = box, Name = name}
end

local function UpdateESP()
    if not ESPEnabled or not ScriptLoaded then 
        HideAllESP()
        return 
    end
    for plr, data in pairs(ESP) do
        pcall(function()
            local char = plr.Character
            if char and char:FindFirstChild("HumanoidRootPart") then
                local hum = char:FindFirstChild("Humanoid")
                if hum and hum.Health > 0 then
                    local root = char.HumanoidRootPart
                    local head = char:FindFirstChild("Head") or root
                    local _, onScreen = Camera:WorldToViewportPoint(root.Position)
                    if onScreen then
                        local top = Camera:WorldToViewportPoint(head.Position + Vector3.new(0,2.5,0))
                        local bottom = Camera:WorldToViewportPoint(root.Position - Vector3.new(0,3,0))
                        local h = bottom.Y - top.Y
                        
                        data.Box.Size = Vector2.new(h*0.6, h)
                        data.Box.Position = Vector2.new(top.X - h*0.3, top.Y)
                        data.Box.Visible = true
                        
                        data.Name.Text = plr.Name
                        data.Name.Position = Vector2.new(top.X, top.Y - 20)
                        data.Name.Visible = true
                    else
                        data.Box.Visible = false
                        data.Name.Visible = false
                    end
                else
                    data.Box.Visible = false
                    data.Name.Visible = false
                end
            else
                data.Box.Visible = false
                data.Name.Visible = false
            end
        end)
    end
end

local function IsInFOV(target)
    if not target or not target.Character then return false end
    local screenPos, onScreen = Camera:WorldToViewportPoint(target.Character[AimPart].Position)
    if not onScreen then return false end
    local center = Camera.ViewportSize / 2
    return (Vector2.new(screenPos.X, screenPos.Y) - center).Magnitude <= FOVRadius
end

local function GetBestTarget()
    local best, minDist = nil, math.huge
    for _, plr in ipairs(Players:GetPlayers()) do
        if plr ~= LocalPlayer and plr.Character then
            local hum = plr.Character:FindFirstChild("Humanoid")
            if hum and hum.Health > 0 and plr.Character:FindFirstChild(AimPart) and IsInFOV(plr) then
                local dist = (Camera.CFrame.Position - plr.Character[AimPart].Position).Magnitude
                if dist < minDist then
                    minDist = dist
                    best = plr
                end
            end
        end
    end
    return best
end

local function Aimbot()
    if not AimbotEnabled or not UserInputService:IsKeyDown(AimKey) then
        CurrentTarget = nil
        return
    end

    if not CurrentTarget or not CurrentTarget.Character or not CurrentTarget.Character:FindFirstChild("Humanoid") or CurrentTarget.Character.Humanoid.Health <= 0 or not IsInFOV(CurrentTarget) then
        CurrentTarget = GetBestTarget()
    end

    if CurrentTarget and CurrentTarget.Character and CurrentTarget.Character:FindFirstChild(AimPart) then
        local targetPos = CurrentTarget.Character[AimPart].Position
        local current = Camera.CFrame
        local targetCF = CFrame.lookAt(current.Position, targetPos)
        Camera.CFrame = current:Lerp(targetCF, Smoothness)
    end
end

-- Draggable GUI
local function CreateGUI()
    if ScreenGui then pcall(function() ScreenGui:Destroy() end) end
    
    ScreenGui = Instance.new("ScreenGui")
    ScreenGui.ResetOnSpawn = false
    ScreenGui.IgnoreGuiInset = true
    
    pcall(function() ScreenGui.Parent = game:GetService("CoreGui") end)
    if not ScreenGui.Parent then
        pcall(function() ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui") end)
    end
    
    local Main = Instance.new("Frame")
    Main.Size = UDim2.new(0, 300, 0, 260)
    Main.Position = UDim2.new(0.5, -150, 0.35, 0)
    Main.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
    Main.BorderSizePixel = 4
    Main.BorderColor3 = Color3.fromRGB(255, 0, 0)
    Main.Parent = ScreenGui
    
    local Title = Instance.new("TextLabel")
    Title.Size = UDim2.new(1,0,0,50)
    Title.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
    Title.Text = "vibe code hub by vfxlaber"
    Title.TextColor3 = Color3.new(1,1,1)
    Title.TextScaled = true
    Title.Parent = Main
    
    -- Draggable
    local dragging = false
    local dragStart, startPos
    Title.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)
    UserInputService.InputEnded:Connect(function(input)
        if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end
    end)
    
    local aimBtn = Instance.new("TextButton")
    aimBtn.Size = UDim2.new(0.9,0,0,45)
    aimBtn.Position = UDim2.new(0.05,0,0,70)
    aimBtn.BackgroundColor3 = Color3.fromRGB(0, 180, 0)
    aimBtn.Text = "Aimbot: ON"
    aimBtn.TextScaled = true
    aimBtn.Parent = Main
    aimBtn.MouseButton1Click:Connect(function()
        AimbotEnabled = not AimbotEnabled
        aimBtn.Text = "Aimbot: " .. (AimbotEnabled and "ON" or "OFF")
    end)
    
    local espBtn = Instance.new("TextButton")
    espBtn.Size = UDim2.new(0.9,0,0,45)
    espBtn.Position = UDim2.new(0.05,0,0,130)
    espBtn.BackgroundColor3 = Color3.fromRGB(0, 180, 0)
    espBtn.Text = "ESP: ON"
    espBtn.TextScaled = true
    espBtn.Parent = Main
    espBtn.MouseButton1Click:Connect(function()
        ESPEnabled = not ESPEnabled
        espBtn.Text = "ESP: " .. (ESPEnabled and "ON" or "OFF")
        if not ESPEnabled then HideAllESP() end
    end)
    
end

-- Setup
CreateFOVCircle()
CreateGUI()

for _, plr in ipairs(Players:GetPlayers()) do CreateESP(plr) end
Players.PlayerAdded:Connect(CreateESP)
Players.PlayerRemoving:Connect(RemoveESP)

RunService.RenderStepped:Connect(function()
    if not ScriptLoaded then return end
    UpdateESP()
    Aimbot()
    if FOVCircle then
        FOVCircle.Position = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2)
    end
end)

UserInputService.InputBegan:Connect(function(input, gp)
    if gp then return end
    if input.KeyCode == Enum.KeyCode.Insert then
        if ScreenGui then ScreenGui.Enabled = not ScreenGui.Enabled end
    elseif input.KeyCode == Enum.KeyCode.F2 then
        SafeUnload()
    end
end)

描述

Basically loads a gui that has esp and aimbot, pretty sure you can change fov circle settings in code and aimbot settings. It's all open source so I don't care what people do with the code this was just for fun and a little project. HOLD E TO LOCK ON WITH AIMBOT.

评论 (0)

登录以参与讨论

  • 成为第一个评论的人。

常见问题

如何使用 Vibe code hub (Esp, Aimbot) 脚本?
复制上方的脚本代码,在 Roblox 中进入 Universal,然后将代码粘贴到你的执行器中并执行。脚本运行后功能会立即生效。
Vibe code hub (Esp, Aimbot) 还能用吗?
可以 — Vibe code hub (Esp, Aimbot) 目前标记为可用(最近更新:2026年10月5日)。如果在 Roblox 更新后失效,请稍后回来查看修复版本。
哪个执行器兼容 Vibe code hub (Esp, Aimbot)?
此脚本兼容大多数热门 Roblox 执行器。查看我们的执行器页面,为你的设备找到可信的免费或付费执行器。