local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local Camera = workspace.CurrentCamera local LocalPlayer = Players.LocalPlayer -- Settings local AimbotEnabled = true local AimKey = Enum.KeyCode.E local FOV_RADIUS = 100 local AimbotPart = "HumanoidRootPart" -- FOV Circle Drawing local FOVCircle = Drawing.new("Circle") FOVCircle.Radius = FOV_RADIUS FOVCircle.Thickness = 1 FOVCircle.Filled = false FOVCircle.Color = Color3.fromRGB(0, 255, 0) FOVCircle.Visible = true -- Toggle Aimbot UserInputService.InputBegan:Connect(function(input, processed) if not processed and input.KeyCode == AimKey then AimbotEnabled = not AimbotEnabled print("Aimbot Enabled:", AimbotEnabled) end end) -- Find closest target based on center of screen local function getClosestPlayerInFOV() local closestPlayer = nil local shortestDistance = FOV_RADIUS local screenCenter = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2) for _, player in ipairs(Players:GetPlayers()) do if player ~= LocalPlayer and player.Character and player.Character:FindFirstChild(AimbotPart) then local part = player.Character[AimbotPart] local screenPos, onScreen = Camera:WorldToViewportPoint(part.Position) if onScreen then local distance = (Vector2.new(screenPos.X, screenPos.Y) - screenCenter).Magnitude if distance < shortestDistance then shortestDistance = distance closestPlayer = player end end end end return closestPlayer end -- Main Aimbot Loop RunService.RenderStepped:Connect(function() -- Keep FOV circle at center of screen local screenCenter = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2) FOVCircle.Position = screenCenter -- Aimbot logic if AimbotEnabled then local target = getClosestPlayerInFOV() if target and target.Character and target.Character:FindFirstChild(AimbotPart) then local targetPos = target.Character[AimbotPart].Position Camera.CFrame = CFrame.new(Camera.CFrame.Position, targetPos) end end end)