Aimbot do vj
Key RequiredUniversal

Aimbot do vj

Universal ScriptVictor_a*Victor_a* 74 views 157 executesUpdated Jun 22, 2026
Unrated
00
Lua Script•272 lines (9938 chars)
-- Serviços
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")

-- Dados básicos
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera

-- ==================================
-- CONFIGURAÇÕES
-- ==================================
local Config = {
    AtivarAimbot = false,
    AtivarESP = true,
    MirarNaCabeca = true,
    Suavidade = 0.3,
    AlcanceMax = 350,
    FOV = 150,
    EscalaMenu = 1,
    MenuVisivel = true -- Controla se o menu está aberto ou fechado
}

-- ==================================
-- CRIA O MENU
-- ==================================
local Tela = Instance.new("ScreenGui")
Tela.Name = "MenuSistemaFPS"
Tela.ResetOnSpawn = false
Tela.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
Tela.Parent = LocalPlayer:WaitForChild("PlayerGui")

-- Botão pequeno para ABRIR o menu quando estiver fechado
local BotaoAbrir = Instance.new("TextButton")
BotaoAbrir.Size = UDim2.new(0, 40, 0, 40)
BotaoAbrir.Position = UDim2.new(0.02, 0, 0.02, 0)
BotaoAbrir.BackgroundColor3 = Color3.fromRGB(30, 120, 220)
BotaoAbrir.Text = "☰"
BotaoAbrir.Font = Enum.Font.GothamBold
BotaoAbrir.TextColor3 = Color3.new(1,1,1)
BotaoAbrir.TextSize = 20
BotaoAbrir.Visible = false
BotaoAbrir.ZIndex = 100
BotaoAbrir.Parent = Tela

-- Quadro principal do menu
local Menu = Instance.new("Frame")
Menu.Size = UDim2.new(0, 230, 0, 320)
Menu.Position = UDim2.new(0.05, 0, 0.05, 0)
Menu.BackgroundColor3 = Color3.fromRGB(25, 25, 35)
Menu.BorderColor3 = Color3.fromRGB(80, 120, 255)
Menu.BorderSizePixel = 2
Menu.Active = true
Menu.Draggable = true
Menu.ZIndex = 10
Menu.Parent = Tela

-- Barra de título
local BarraTitulo = Instance.new("Frame")
BarraTitulo.Size = UDim2.new(1, 0, 0, 40)
BarraTitulo.BackgroundColor3 = Color3.fromRGB(60, 90, 220)
BarraTitulo.Parent = Menu

local Titulo = Instance.new("TextLabel")
Titulo.Size = UDim2.new(1, -110, 1, 0)
Titulo.BackgroundTransparency = 1
Titulo.Text = "SISTEMA FPS"
Titulo.Font = Enum.Font.GothamBold
Titulo.TextColor3 = Color3.new(1,1,1)
Titulo.TextSize = 16
Titulo.Parent = BarraTitulo

-- Botões da barra superior
local btnFechar = Instance.new("TextButton")
btnFechar.Size = UDim2.new(0, 35, 0, 30)
btnFechar.Position = UDim2.new(1, -35, 0, 5)
btnFechar.BackgroundColor3 = Color3.fromRGB(200, 40, 40)
btnFechar.Text = "✖"
btnFechar.Font = Enum.Font.GothamBold
btnFechar.TextColor3 = Color3.new(1,1,1)
btnFechar.TextSize = 16
btnFechar.Parent = BarraTitulo

local btnDiminuirMenu = Instance.new("TextButton")
btnDiminuirMenu.Size = UDim2.new(0, 30, 0, 30)
btnDiminuirMenu.Position = UDim2.new(1, -75, 0, 5)
btnDiminuirMenu.BackgroundColor3 = Color3.fromRGB(40, 40, 60)
btnDiminuirMenu.Text = "➖"
btnDiminuirMenu.Font = Enum.Font.GothamBold
btnDiminuirMenu.TextColor3 = Color3.new(1,1,1)
btnDiminuirMenu.TextSize = 18
btnDiminuirMenu.Parent = BarraTitulo

local btnAumentarMenu = Instance.new("TextButton")
btnAumentarMenu.Size = UDim2.new(0, 30, 0, 30)
btnAumentarMenu.Position = UDim2.new(1, -110, 0, 5)
btnAumentarMenu.BackgroundColor3 = Color3.fromRGB(40, 40, 60)
btnAumentarMenu.Text = "➕"
btnAumentarMenu.Font = Enum.Font.GothamBold
btnAumentarMenu.TextColor3 = Color3.new(1,1,1)
btnAumentarMenu.TextSize = 18
btnAumentarMenu.Parent = BarraTitulo

-- Função para redimensionar
local function AplicarEscala()
    local largura = 230 * Config.EscalaMenu
    local altura = 320 * Config.EscalaMenu
    TweenService:Create(Menu, TweenInfo.new(0.2), {Size = UDim2.new(0, largura, 0, altura)}):Play()
end

-- Ações dos botões
btnFechar.MouseButton1Click:Connect(function()
    Config.MenuVisivel = false
    Menu.Visible = false
    BotaoAbrir.Visible = true
end)

BotaoAbrir.MouseButton1Click:Connect(function()
    Config.MenuVisivel = true
    Menu.Visible = true
    BotaoAbrir.Visible = false
end)

btnDiminuirMenu.MouseButton1Click:Connect(function()
    Config.EscalaMenu = math.clamp(Config.EscalaMenu - 0.1, 0.6, 1.5)
    AplicarEscala()
end)

btnAumentarMenu.MouseButton1Click:Connect(function()
    Config.EscalaMenu = math.clamp(Config.EscalaMenu + 0.1, 0.6, 1.5)
    AplicarEscala()
end)

-- Função para criar botões
local function NovoBotao(texto, posY)
    local btn = Instance.new("TextButton")
    btn.Size = UDim2.new(0.9, 0, 0, 35)
    btn.Position = UDim2.new(0.05, 0, 0, posY)
    btn.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
    btn.Text = texto
    btn.Font = Enum.Font.GothamSemibold
    btn.TextColor3 = Color3.new(1,1,1)
    btn.TextSize = 14
    btn.Parent = Menu
    return btn
end

-- Botões das funções
local btnAimbot = NovoBotao("Aimbot: DESLIGADO", 50)
btnAimbot.MouseButton1Click:Connect(function()
    Config.AtivarAimbot = not Config.AtivarAimbot
    btnAimbot.Text = Config.AtivarAimbot and "Aimbot: LIGADO" or "Aimbot: DESLIGADO"
    btnAimbot.BackgroundColor3 = Config.AtivarAimbot and Color3.fromRGB(30, 120, 30) or Color3.fromRGB(40,40,50)
end)

local btnESP = NovoBotao("ESP: LIGADO", 95)
btnESP.MouseButton1Click:Connect(function()
    Config.AtivarESP = not Config.AtivarESP
    btnESP.Text = Config.AtivarESP and "ESP: LIGADO" or "ESP: DESLIGADO"
    btnESP.BackgroundColor3 = Config.AtivarESP and Color3.fromRGB(30, 120, 30) or Color3.fromRGB(40,40,50)
end)

local btnMirar = NovoBotao("Mirar: CABEÇA", 140)
btnMirar.MouseButton1Click:Connect(function()
    Config.MirarNaCabeca = not Config.MirarNaCabeca
    btnMirar.Text = Config.MirarNaCabeca and "Mirar: CABEÇA" or "Mirar: CORPO"
end)

local txtFOV = Instance.new("TextLabel")
txtFOV.Size = UDim2.new(0.9, 0, 0, 30)
txtFOV.Position = UDim2.new(0.05, 0, 0, 185)
txtFOV.BackgroundTransparency = 1
txtFOV.Text = "Tamanho do FOV: " .. Config.FOV
txtFOV.TextColor3 = Color3.new(1,1,1)
txtFOV.Font = Enum.Font.Gotham
txtFOV.TextSize = 14
txtFOV.Parent = Menu

local btnAumentarFOV = NovoBotao("⬆️ Aumentar FOV", 220)
btnAumentarFOV.MouseButton1Click:Connect(function()
    Config.FOV = math.clamp(Config.FOV + 10, 50, 400)
    txtFOV.Text = "Tamanho do FOV: " .. Config.FOV
end)

local btnDiminuirFOV = NovoBotao("⬇️ Diminuir FOV", 260)
btnDiminuirFOV.MouseButton1Click:Connect(function()
    Config.FOV = math.clamp(Config.FOV - 10, 50, 400)
    txtFOV.Text = "Tamanho do FOV: " .. Config.FOV
end)

-- ==================================
-- DESENHAR CÍRCULO DO FOV
-- ==================================
local function DesenharCirculo(raio, cor)
    local centro = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
    local linhas = {}
    for i = 1, 36 do
        local angulo = math.rad(i * 10)
        local ponto = centro + Vector2.new(math.cos(angulo) * raio, math.sin(angulo) * raio)
        local linha = Instance.new("Frame")
        linha.AnchorPoint = Vector2.new(0.5, 0.5)
        linha.Position = UDim2.new(0, ponto.X, 0, ponto.Y)
        linha.Size = UDim2.new(0, 2, 0, 2)
        linha.BackgroundColor3 = cor
        linha.BorderSizePixel = 0
        linha.ZIndex = 9
        linha.Parent = Tela
        table.insert(linhas, linha)
    end
    return linhas
end

-- ==================================
-- LOOP PRINCIPAL (ESP CORRIGIDO + AIMBOT)
-- ==================================
RunService.RenderStepped:Connect(function()
    -- Atualizar FOV
    for _, l in pairs(linhasFOV or {}) do l:Destroy() end
    linhasFOV = DesenharCirculo(Config.FOV, Color3.new(1,0,0))

    local melhorAlvo = nil
    local menorAngulo = math.huge

    -- Procurar todos os jogadores
    for _, jogador in pairs(Players:GetPlayers()) do
        if jogador ~= LocalPlayer and jogador.Character then
            local char = jogador.Character
            local Humanoide = char:FindFirstChildOfClass("Humanoid")
            local Parte = char:FindFirstChild(Config.MirarNaCabeca and "Head" or "HumanoidRootPart")

            -- ✅ Verificações corretas para o ESP funcionar
            if Humanoide and Humanoide.Health > 0 and Parte then
                local posTela, visivel = Camera:WorldToViewportPoint(Parte.Position)
                local distancia = (Camera.CFrame.Position - Parte.Position).Magnitude

                -- Só desenha se estiver visível e dentro do alcance
                if visivel and distancia < Config.AlcanceMax and posTela.Z > 0 then
                    
                    -- ✅ ESP CORRIGIDO: Agora aparece e fica visível
                    if Config.AtivarESP then
                        local textoESP = Instance.new("TextLabel")
                        textoESP.Size = UDim2.new(0, 150, 0, 22)
                        textoESP.Position = UDim2.new(0, posTela.X - 75, 0, posTela.Y - 25)
                        textoESP.BackgroundTransparency = 1
                        textoESP.Text = string.format("%s | %.0fm", jogador.Name, distancia)
                        textoESP.TextColor3 = Color3.new(0, 1, 0) -- Verde bem visível
                        textoESP.Font = Enum.Font.GothamBold
                        textoESP.TextSize = 14
                        textoESP.ZIndex = 10
                        textoESP.Parent = Tela
                        -- Remove o texto antigo para não acumular
                        task.delay(0.01, function() textoESP:Destroy() end)
                    end

                    -- Verifica se está dentro do FOV para o aimbot
                    local centro = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2)
                    local distTela = (Vector2.new(posTela.X, posTela.Y) - centro).Magnitude
                    if distTela < Config.FOV and distTela < menorAngulo then
                        menorAngulo = distTela
                        melhorAlvo = Parte
                    end
                end
            end
        end
    end

    -- Aplicar mira automática
    if Config.AtivarAimbot and melhorAlvo then
        local alvoCF = CFrame.lookAt(Camera.CFrame.Position, melhorAlvo.Position)
        Camera.CFrame = Camera.CFrame:Lerp(alvoCF, Config.Suavidade)
    end
end)

Features & Information

Script desenvolvido para testes meus amores♡

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts