
Key RequiredUniversal

-- ============================================
-- HUB AIMBOT COMPLETO - Para Jogos de Tiro
-- Funcionalidades: Aimbot + ESP + Invisibilidade
-- ============================================
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local Camera = workspace.CurrentCamera
local TweenService = game:GetService("TweenService")
-- ========== CONFIGURAÇÕES GLOBAIS ==========
local UserSettings = {
Aimbot = {
Enabled = false,
Key = Enum.KeyCode.Q,
Smoothing = 0.3,
FieldOfView = 120,
TargetPart = "Head"
},
ESP = {
Enabled = false,
ShowName = true,
ShowDistance = true,
ShowHealth = true,
BoxColor = Color3.fromRGB(255, 50, 50)
},
Invisibility = {
Enabled = false,
Transparency = 0.8,
Effect = "Ghost",
HideNameTag = true
}
}
-- ========== VARIÁVEIS DO SISTEMA ==========
local espObjects = {}
local targetPlayer = nil
local aimbotConnection = nil
local espConnection = nil
local invisibilityConnection = nil
local originalProperties = {}
local hubMinimized = false
local hubOriginalSize = UDim2.new(0, 320, 0, 520)
local hubMinimizedSize = UDim2.new(0, 60, 0, 60)
-- ========== SISTEMA ESP (VISION) ==========
local function createESP(player)
if espObjects[player] then return end
local character = player.Character
if not character then return end
local box = Drawing.new("Square")
box.Visible = false
box.Color = UserSettings.ESP.BoxColor
box.Thickness = 2
box.Filled = false
local nameLabel = Drawing.new("Text")
nameLabel.Visible = false
nameLabel.Color = Color3.fromRGB(255, 255, 255)
nameLabel.Size = 14
nameLabel.Center = true
nameLabel.Outline = true
local infoLabel = Drawing.new("Text")
infoLabel.Visible = false
infoLabel.Color = Color3.fromRGB(200, 200, 200)
infoLabel.Size = 12
infoLabel.Center = true
infoLabel.Outline = true
espObjects[player] = {box = box, name = nameLabel, info = infoLabel}
end
local function updateESP()
for player, drawings in pairs(espObjects) do
if player == LocalPlayer or not player.Character then
drawings.box.Visible = false
drawings.name.Visible = false
drawings.info.Visible = false
goto continue
end
local character = player.Character
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
local humanoid = character:FindFirstChild("Humanoid")
if humanoidRootPart then
local position, onScreen = Camera:WorldToViewportPoint(humanoidRootPart.Position)
if onScreen then
local boxSize = Vector2.new(1000 / position.Z, 1500 / position.Z)
drawings.box.Position = Vector2.new(position.X, position.Y) - boxSize/2
drawings.box.Size = boxSize
drawings.box.Visible = UserSettings.ESP.Enabled
drawings.name.Position = Vector2.new(position.X, position.Y - boxSize.Y/2 - 20)
drawings.name.Text = player.Name
drawings.name.Visible = UserSettings.ESP.Enabled and UserSettings.ESP.ShowName
local distance = (LocalPlayer.Character.HumanoidRootPart.Position - humanoidRootPart.Position).Magnitude
local infoText = ""
if UserSettings.ESP.ShowDistance then
infoText = string.format("%.1f studs", distance)
end
if UserSettings.ESP.ShowHealth and humanoid then
infoText = infoText .. string.format("\nHP: %d/%d", humanoid.Health, humanoid.MaxHealth)
end
drawings.info.Position = Vector2.new(position.X, position.Y + boxSize.Y/2 + 10)
drawings.info.Text = infoText
drawings.info.Visible = UserSettings.ESP.Enabled and (UserSettings.ESP.ShowDistance or UserSettings.ESP.ShowHealth)
else
drawings.box.Visible = false
drawings.name.Visible = false
drawings.info.Visible = false
end
end
::continue::
end
end
-- ========== SISTEMA AIMBOT ==========
local function findTarget()
local closestDistance = UserSettings.Aimbot.FieldOfView
local closestPlayer = nil
local mousePos = UserInputService:GetMouseLocation()
for _, player in pairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character then
local character = player.Character
local targetPart = character:FindFirstChild(UserSettings.Aimbot.TargetPart)
if targetPart then
local position, onScreen = Camera:WorldToViewportPoint(targetPart.Position)
if onScreen then
local distance = (Vector2.new(mousePos.X, mousePos.Y) - Vector2.new(position.X, position.Y)).Magnitude
if distance < closestDistance then
closestDistance = distance
closestPlayer = player
end
end
end
end
end
return closestPlayer
end
local function aimAtTarget(target)
if not target or not target.Character then return end
local character = target.Character
local targetPart = character:FindFirstChild(UserSettings.Aimbot.TargetPart)
if not targetPart then return end
local camera = workspace.CurrentCamera
local currentCFrame = camera.CFrame
local targetPosition = targetPart.Position
local newCFrame = CFrame.new(currentCFrame.Position, targetPosition)
camera.CFrame = currentCFrame:Lerp(newCFrame, UserSettings.Aimbot.Smoothing)
end
-- ========== SISTEMA INVISIBILIDADE ==========
local function saveOriginalProperties(character)
originalProperties = {}
for _, part in pairs(character:GetDescendants()) do
if part:IsA("BasePart") then
originalProperties[part] = {
Transparency = part.Transparency,
Material = part.Material,
Color = part.Color,
CanCollide = part.CanCollide
}
end
end
end
local function applyInvisibilityEffect(character)
if not character then return end
local effect = UserSettings.Invisibility.Effect
for _, part in pairs(character:GetDescendants()) do
if part:IsA("BasePart") then
if effect == "Ghost" then
part.Transparency = UserSettings.Invisibility.Transparency
part.Material = Enum.Material.Glass
part.CanCollide = false
elseif effect == "Chameleon" then
local ray = Ray.new(part.Position, Vector3.new(0, -10, 0))
local hit = workspace:FindPartOnRay(ray, character)
if hit then
part.Color = hit.Color
end
part.Transparency = 0.4
elseif effect == "Shadow" then
part.Transparency = 0.6
part.Color = Color3.new(0.1, 0.1, 0.1)
part.Material = Enum.Material.Slate
end
if UserSettings.Invisibility.HideNameTag then
local humanoid = character:FindFirstChild("Humanoid")
if humanoid then
humanoid.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None
end
end
end
end
end
local function restoreOriginalProperties(character)
if not character then return end
for part, properties in pairs(originalProperties) do
if part and part.Parent then
part.Transparency = properties.Transparency or 0
part.Material = properties.Material or Enum.Material.Plastic
part.Color = properties.Color or Color3.new(1, 1, 1)
part.CanCollide = properties.CanCollide or true
end
end
local humanoid = character:FindFirstChild("Humanoid")
if humanoid then
humanoid.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.Viewer
end
originalProperties = {}
end
local function toggleInvisibility()
local character = LocalPlayer.Character
if not character then
return
end
if UserSettings.Invisibility.Enabled then
saveOriginalProperties(character)
applyInvisibilityEffect(character)
invisibilityConnection = RunService.Heartbeat:Connect(function()
if not UserSettings.Invisibility.Enabled or not character then
if invisibilityConnection then
invisibilityConnection:Disconnect()
end
return
end
applyInvisibilityEffect(character)
end)
else
if invisibilityConnection then
invisibilityConnection:Disconnect()
end
restoreOriginalProperties(character)
end
end
-- ========== INTERFACE DO HUB ==========
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")
screenGui.Name = "ShooterAimbotHub"
local mainFrame = Instance.new("Frame")
mainFrame.Size = hubOriginalSize
mainFrame.Position = UDim2.new(0.5, -160, 0.5, -260)
mainFrame.BackgroundColor3 = Color3.fromRGB(15, 15, 25)
mainFrame.BorderSizePixel = 0
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Parent = screenGui
-- Título
local title = Instance.new("TextLabel")
title.Text = "🎯 HUB SHOTER PRO"
title.Size = UDim2.new(1, 0, 0, 40)
title.TextColor3 = Color3.fromRGB(255, 50, 50)
title.Font = Enum.Font.SourceSansBold
title.TextSize = 20
title.BackgroundTransparency = 1
title.Parent = mainFrame
-- Botão minimizar
local minimizeButton = Instance.new("TextButton")
minimizeButton.Size = UDim2.new(0, 30, 0, 30)
minimizeButton.Position = UDim2.new(1, -35, 0, 5)
minimizeButton.Text = "—"
minimizeButton.TextColor3 = Color3.fromRGB(255, 255, 255)
minimizeButton.Font = Enum.Font.SourceSansBold
minimizeButton.TextSize = 20
minimizeButton.BackgroundColor3 = Color3.fromRGB(60, 60, 100)
minimizeButton.BorderSizePixel = 0
minimizeButton.ZIndex = 10
minimizeButton.Parent = mainFrame
-- Conteúdo principal
local contentFrame = Instance.new("Frame")
contentFrame.Size = UDim2.new(1, -20, 1, -100)
contentFrame.Position = UDim2.new(0, 10, 0, 50)
contentFrame.BackgroundTransparency = 1
contentFrame.Parent = mainFrame
-- Função para criar toggles
local function createToggle(name, yPos, settingCategory, color)
local frame = Instance.new("Frame")
frame.Size = UDim2.new(1, 0, 0, 30)
frame.Position = UDim2.new(0, 0, 0, yPos)
frame.BackgroundTransparency = 1
frame.Parent = contentFrame
local label = Instance.new("TextLabel")
label.Text = name
label.Size = UDim2.new(0.7, 0, 1, 0)
label.TextColor3 = Color3.fromRGB(220, 220, 220)
label.Font = Enum.Font.SourceSans
label.TextSize = 14
label.TextXAlignment = Enum.TextXAlignment.Left
label.BackgroundTransparency = 1
label.Parent = frame
local toggle = Instance.new("TextButton")
toggle.Size = UDim2.new(0, 50, 0, 25)
toggle.Position = UDim2.new(1, -55, 0.5, -12.5)
toggle.Text = "OFF"
toggle.TextColor3 = Color3.fromRGB(255, 255, 255)
toggle.Font = Enum.Font.SourceSans
toggle.TextSize = 12
toggle.BackgroundColor3 = Color3.fromRGB(80, 80, 80)
toggle.Parent = frame
toggle.MouseButton1Click:Connect(function()
local currentState = UserSettings[settingCategory].Enabled
UserSettings[settingCategory].Enabled = not currentState
toggle.Text = currentState and "OFF" or "ON"
toggle.BackgroundColor3 = currentState and Color3.fromRGB(80, 80, 80) or color
if settingCategory == "ESP" then
if UserSettings.ESP.Enabled then
espConnection = RunService.RenderStepped:Connect(updateESP)
for _, player in pairs(Players:GetPlayers()) do
createESP(player)
end
elseif espConnection then
espConnection:Disconnect()
for _, drawings in pairs(espObjects) do
drawings.box:Remove()
drawings.name:Remove()
drawings.info:Remove()
end
espObjects = {}
end
end
if settingCategory == "Aimbot" then
if UserSettings.Aimbot.Enabled then
aimbotConnection = RunService.RenderStepped:Connect(function()
if UserInputService:IsKeyDown(UserSettings.Aimbot.Key) then
targetPlayer = findTarget()
if targetPlayer then
aimAtTarget(targetPlayer)
end
end
end)
elseif aimbotConnection then
aimbotConnection:Disconnect()
end
end
if settingCategory == "Invisibility" then
toggleInvisibility()
end
end)
return frame
end
-- Criar toggles
createToggle("Aimbot", 0, "Aimbot", Color3.fromRGB(50, 180, 50))
createToggle("ESP Vision", 40, "ESP", Color3.fromRGB(180, 50, 50))
createToggle("Invisibilidade", 80, "Invisibility", Color3.fromRGB(100, 50, 180))
-- Configurações de Aimbot
local aimSettingsFrame = Instance.new("Frame")
aimSettingsFrame.Size = UDim2.new(1, 0, 0, 60)
aimSettingsFrame.Position = UDim2.new(0, 0, 0, 130)
aimSettingsFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 35)
aimSettingsFrame.BackgroundTransparency = 0.3
aimSettingsFrame.Parent = contentFrame
local targetLabel = Instance.new("TextLabel")
targetLabel.Text = "Alvo: Head"
targetLabel.Size = UDim2.new(0.5, 0, 0, 25)
targetLabel.Position = UDim2.new(0, 5, 0, 5)
targetLabel.TextColor3 = Color3.fromRGB(220, 220, 220)
targetLabel.Font = Enum.Font.SourceSans
targetLabel.TextSize = 12
targetLabel.BackgroundTransparency = 1
targetLabel.Parent = aimSettingsFrame
local parts = {"Head", "HumanoidRootPart", "Torso"}
local partIndex = 1
local targetBtn = Instance.new("TextButton")
targetBtn.Text = "Mudar"
targetBtn.Size = UDim2.new(0.4, 0, 0, 25)
targetBtn.Position = UDim2.new(0.55, 0, 0, 5)
targetBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
targetBtn.Font = Enum.Font.SourceSans
targetBtn.TextSize = 12
targetBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 80)
targetBtn.Parent = aimSettingsFrame
targetBtn.MouseButton1Click:Connect(function()
partIndex = (partIndex % #parts) + 1
UserSettings.Aimbot.TargetPart = parts[partIndex]
targetLabel.Text = "Alvo: " .. parts[partIndex]
end)
-- Configurações de ESP
local espSettingsFrame = Instance.new("Frame")
espSettingsFrame.Size = UDim2.new(1, 0, 0, 60)
espSettingsFrame.Position = UDim2.new(0, 0, 0, 200)
espSettingsFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 35)
espSettingsFrame.BackgroundTransparency = 0.3
espSettingsFrame.Parent = contentFrame
-- Status
local statusFrame = Instance.new("Frame")
statusFrame.Size = UDim2.new(1, 0, 0, 80)
statusFrame.Position = UDim2.new(0, 0, 1, -85)
statusFrame.BackgroundColor3 = Color3.fromRGB(10, 10, 20)
statusFrame.BackgroundTransparency = 0.5
statusFrame.Parent = contentFrame
local statusLabel = Instance.new("TextLabel")
statusLabel.Size = UDim2.new(1, -10, 1, -10)
statusLabel.Position = UDim2.new(0, 5, 0, 5)
statusLabel.Text = "Status: Iniciando..."
statusLabel.TextColor3 = Color3.fromRGB(180, 230, 255)
statusLabel.Font = Enum.Font.SourceSans
statusLabel.TextSize = 11
statusLabel.TextXAlignment = Enum.TextXAlignment.Left
statusLabel.TextYAlignment = Enum.TextYAlignment.Top
statusLabel.BackgroundTransparency = 1
statusLabel.Parent = statusFrame
-- ========== SISTEMA DE MINIMIZAÇÃO ==========
local function toggleHubContent(visible)
contentFrame.Visible = visible
minimizeButton.Text = visible and "—" or "+"
if visible then
title.Text = "🎯 HUB SHOTER PRO"
title.TextSize = 20
else
title.Text = "🎯"
title.TextSize = 30
end
end
local function toggleHubMinimization()
hubMinimized = not hubMinimized
if hubMinimized then
mainFrame.Size = hubMinimizedSize
mainFrame.BackgroundTransparency = 0.7
toggleHubContent(false)
else
mainFrame.Size = hubOriginalSize
mainFrame.BackgroundTransparency = 0
toggleHubContent(true)
end
end
minimizeButton.MouseButton1Click:Connect(toggleHubMinimization)
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if not gameProcessed and input.KeyCode == Enum.KeyCode.M then
toggleHubMinimization()
elseif not gameProcessed and input.KeyCode == Enum.KeyCode.I then
UserSettings.Invisibility.Enabled = not UserSettings.Invisibility.Enabled
toggleInvisibility()
end
end)
-- Atualizar status
spawn(function()
while true do
local targetCount = 0
for _, player in pairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character then
targetCount = targetCount + 1
end
end
local statusText = string.format([[
Status: %s
Jogadores: %d
Aimbot: %s (Tecla: %s)
ESP: %s
Invis: %s
Hub: %s
]],
"ATIVO",
targetCount,
UserSettings.Aimbot.Enabled and "ON" or "OFF",
UserSettings.Aimbot.Key.Name,
UserSettings.ESP.Enabled and "ON" : "OFF",
UserSettings.Invisibility.Enabled and "ON" : "OFF",
hubMinimized and "MINI" : "NORMAL"
)
statusLabel.Text = statusText
wait(1)
end
end)
-- Inicializar
Players.PlayerAdded:Connect(function(player)
createESP(player)
end)
Players.PlayerRemoving:Connect(function(player)
if espObjects[player] then
espObjects[player].box:Remove()
espObjects[player].name:Remove()
espObjects[player].info:Remove()
espObjects[player] = nil
end
end)
for _, player in pairs(Players:GetPlayers()) do
createESP(player)
end
print("==========================================")
print("🎯 HUB SHOTER PRO CARREGADO!")
print("==========================================")
print("FUNCIONALIDADES:")
print("• Aimbot (Tecla Q) com 3 alvos diferentes")
print("• ESP Vision com nome, distância e vida")
print("• Invisibilidade com 3 efeitos")
print("• Sistema de minimização")
print("==========================================")
print("ATALHOS:")
print("• M = Minimizar/Restaurar Hub")
print("• I = Ativar/Desativar Invisibilidade")
print("• Q = Segurar para usar Aimbot")
print("==========================================")
print("TESTE EM JOGOS COMO:")
print("• Arsenal")
print("• Phantom Forces")
print("• Bad Business")
print("• Counter Blox")
print("==========================================")



Copie o script todo para funciona, até as partes que não fazem parte do script
Qualquer dúvida é só fala nos comentários
Posso cria scripts para alguns jogos que vcs escolherem
Galera Perdão
Testei O Script E Ele Não Executa
Mais Consertei E Vou Atualizar Ele
Atualizando
OK
@vincent009 I said the script wasn't working anymore, but now I've updated it and it's working. And if you want, I can create scripts of your choosing.
@vincent009 What script for a game?
@vincent009 ok
@vincent009 Can we partner up?
@vincent009 We're going to spread the word, but forget about giving up on the idea, plus we're from different countries.