
KeylessUniversal

--[[
Headshot Aimbot + Kill Aura (INFINITE RANGE)
Features:
• RMB Hold to Aim (Locks to HEAD)
• Kill Aura - Instantly kills ANY player on the map
• Headshot Priority
• Prediction & Smooth Tracking
• Team Check
• FOV Circle
]]
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 Settings = {
Enabled = false,
TeamCheck = true,
FOV = 120,
Range = 1000,
Smoothness = 0.15,
Prediction = 0.165,
CircleColor = Color3.fromRGB(255, 0, 0),
CircleThickness = 1.5,
HeadPriority = true,
WallCheck = true,
-- Kill Aura Settings
KillAura = false,
KillRange = 999999, -- INFINITE RANGE (practically)
KillCooldown = 0.01, -- Faster kills
AutoKill = true -- Always auto kill
}
-- Variables
local FOVCircle = nil
local IsAiming = false
local CurrentTarget = nil
local LastTargetPosition = nil
local TargetVelocity = Vector3.new(0, 0, 0)
local LastKillTime = 0
-- Create FOV Circle
local function CreateFOVCircle()
if FOVCircle then
FOVCircle:Remove()
FOVCircle = nil
end
FOVCircle = Drawing.new("Circle")
FOVCircle.Transparency = 1
FOVCircle.Color = Settings.CircleColor
FOVCircle.Thickness = Settings.CircleThickness
FOVCircle.Radius = Settings.FOV
FOVCircle.Filled = false
FOVCircle.Visible = Settings.Enabled
FOVCircle.NumSides = 64
FOVCircle.Position = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
end
CreateFOVCircle()
-- Update circle
RunService.RenderStepped:Connect(function()
if FOVCircle and Settings.Enabled then
FOVCircle.Position = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
FOVCircle.Visible = true
FOVCircle.Radius = Settings.FOV
FOVCircle.Color = Settings.CircleColor
FOVCircle.Thickness = Settings.CircleThickness
elseif FOVCircle then
FOVCircle.Visible = false
end
end)
-- Raycast for wall check
local function IsVisible(targetPart)
if not Settings.WallCheck then return true end
local origin = Camera.CFrame.Position
local direction = (targetPart.Position - origin).Unit * (targetPart.Position - origin).Magnitude
local raycastParams = RaycastParams.new()
raycastParams.FilterDescendantsInstances = {LocalPlayer.Character, targetPart.Parent}
raycastParams.FilterType = Enum.RaycastFilterType.Blacklist
local result = workspace:Raycast(origin, direction, raycastParams)
if result then
return false
end
return true
end
-- Get head position or fallback to HRP
local function GetAimPoint(character)
if Settings.HeadPriority then
local head = character:FindFirstChild("Head")
if head then
local headPos, headVisible = Camera:WorldToViewportPoint(head.Position)
if headVisible and IsVisible(head) then
return head.Position, head
end
end
end
local hrp = character:FindFirstChild("HumanoidRootPart")
if hrp and IsVisible(hrp) then
return hrp.Position, hrp
end
return nil, nil
end
-- Get closest player to crosshair (for aimbot)
local function GetClosestPlayer()
local ClosestPlayer = nil
local ClosestPart = nil
local ClosestDistance = Settings.FOV + 1
local CenterPos = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
for _, Player in pairs(Players:GetPlayers()) do
if Player ~= LocalPlayer and Player.Character then
local Humanoid = Player.Character:FindFirstChild("Humanoid")
if Humanoid and Humanoid.Health > 0 then
if Settings.TeamCheck and Player.Team == LocalPlayer.Team then
continue
end
local aimPoint, aimPart = GetAimPoint(Player.Character)
if not aimPoint then continue end
local Distance = (aimPoint - Camera.CFrame.Position).Magnitude
if Distance > Settings.Range then
continue
end
local ScreenPos, OnScreen = Camera:WorldToViewportPoint(aimPoint)
if OnScreen then
local TargetPos = Vector2.new(ScreenPos.X, ScreenPos.Y)
local ScreenDistance = (CenterPos - TargetPos).Magnitude
if aimPart and aimPart.Name == "Head" then
ScreenDistance = ScreenDistance * 0.7
end
if ScreenDistance <= Settings.FOV then
if ScreenDistance < ClosestDistance then
ClosestDistance = ScreenDistance
ClosestPlayer = Player
ClosestPart = aimPart
end
end
end
end
end
end
return ClosestPlayer, ClosestPart
end
-- Get closest player by DISTANCE (INFINITE RANGE VERSION)
local function GetClosestPlayerByDistance()
local ClosestPlayer = nil
local ClosestDistance = math.huge -- Infinite distance
for _, Player in pairs(Players:GetPlayers()) do
if Player ~= LocalPlayer and Player.Character then
local Humanoid = Player.Character:FindFirstChild("Humanoid")
local HRP = Player.Character:FindFirstChild("HumanoidRootPart")
if Humanoid and Humanoid.Health > 0 and HRP then
if Settings.TeamCheck and Player.Team == LocalPlayer.Team then
continue
end
-- Get distance if you want closest, or just return first valid player
local LocalHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
if LocalHRP then
local Distance = (HRP.Position - LocalHRP.Position).Magnitude
if Distance < ClosestDistance then
ClosestDistance = Distance
ClosestPlayer = Player
end
else
-- If no local character, just kill anyone
ClosestPlayer = Player
break
end
end
end
end
return ClosestPlayer
end
-- Kill Player Function (INSTANT)
local function KillPlayer(player)
if not player or not player.Character then return end
local character = player.Character
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid and humanoid.Health > 0 then
humanoid.Health = 0
print("Killed: " .. player.Name)
end
end
-- RMB Controls
UserInputService.InputBegan:Connect(function(Input, GameProcessed)
if GameProcessed then return end
if Input.UserInputType == Enum.UserInputType.MouseButton2 and Settings.Enabled then
IsAiming = true
local target, part = GetClosestPlayer()
CurrentTarget = target
if part then
LastTargetPosition = part.Position
end
end
end)
UserInputService.InputEnded:Connect(function(Input)
if Input.UserInputType == Enum.UserInputType.MouseButton2 then
IsAiming = false
CurrentTarget = nil
LastTargetPosition = nil
TargetVelocity = Vector3.new(0, 0, 0)
end
end)
-- Main loop - AIMBOT + INFINITE RANGE KILL AURA
RunService.Heartbeat:Connect(function()
local CurrentTime = tick()
-- Kill Aura (Auto - Infinite Range)
if Settings.KillAura then
if CurrentTime - LastKillTime >= Settings.KillCooldown then
local target = GetClosestPlayerByDistance()
if target then
KillPlayer(target)
LastKillTime = CurrentTime
end
end
end
-- Aimbot
if Settings.Enabled and IsAiming then
if CurrentTarget then
local Character = CurrentTarget.Character
if not Character then
CurrentTarget = nil
return
end
local Humanoid = Character:FindFirstChild("Humanoid")
if not Humanoid or Humanoid.Health <= 0 then
CurrentTarget = nil
return
end
local aimPoint, aimPart = GetAimPoint(Character)
if not aimPoint then
CurrentTarget = nil
return
end
if LastTargetPosition then
TargetVelocity = (aimPoint - LastTargetPosition) * 60
end
LastTargetPosition = aimPoint
local predictedPos = aimPoint + (TargetVelocity * Settings.Prediction)
local ScreenPos, OnScreen = Camera:WorldToViewportPoint(predictedPos)
if OnScreen then
local MousePos = UserInputService:GetMouseLocation()
local Distance = (aimPoint - Camera.CFrame.Position).Magnitude
local DynamicSmooth = Settings.Smoothness
if Distance < 50 then
DynamicSmooth = Settings.Smoothness * 0.3
elseif Distance < 100 then
DynamicSmooth = Settings.Smoothness * 0.6
end
local DeltaX = (ScreenPos.X - MousePos.X) * DynamicSmooth
local DeltaY = (ScreenPos.Y - MousePos.Y) * DynamicSmooth
if math.abs(DeltaX) > 0.5 or math.abs(DeltaY) > 0.5 then
mousemoverel(DeltaX, DeltaY)
end
else
CurrentTarget = nil
end
else
CurrentTarget, _ = GetClosestPlayer()
end
end
end)
-- UI
local UI = Instance.new("ScreenGui")
UI.Name = "HeadshotAimbot"
UI.Parent = game.CoreGui
UI.ResetOnSpawn = false
local Main = Instance.new("Frame")
Main.Size = UDim2.new(0, 300, 0, 380)
Main.Position = UDim2.new(0.5, -150, 0.5, -190)
Main.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
Main.BorderSizePixel = 0
Main.Active = true
Main.Draggable = true
Main.Parent = UI
local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 8)
MainCorner.Parent = Main
-- Header
local Header = Instance.new("Frame")
Header.Size = UDim2.new(1, 0, 0, 35)
Header.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
Header.BorderSizePixel = 0
Header.Parent = Main
local HeaderCorner = Instance.new("UICorner")
HeaderCorner.CornerRadius = UDim.new(0, 8)
HeaderCorner.Parent = Header
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, -40, 1, 0)
Title.Position = UDim2.new(0, 10, 0, 0)
Title.BackgroundTransparency = 1
Title.Text = "Headshot Aimbot + INF Kill"
Title.TextColor3 = Color3.fromRGB(255, 0, 0)
Title.Font = Enum.Font.GothamBold
Title.TextSize = 14
Title.TextXAlignment = Enum.TextXAlignment.Left
Title.Parent = Header
local Close = Instance.new("TextButton")
Close.Size = UDim2.new(0, 25, 0, 25)
Close.Position = UDim2.new(1, -30, 0.5, -12.5)
Close.BackgroundColor3 = Color3.fromRGB(60, 20, 20)
Close.Text = "X"
Close.TextColor3 = Color3.fromRGB(255, 255, 255)
Close.Font = Enum.Font.GothamBold
Close.TextSize = 14
Close.Parent = Header
local CloseCorner = Instance.new("UICorner")
CloseCorner.CornerRadius = UDim.new(0, 4)
CloseCorner.Parent = Close
Close.MouseButton1Click:Connect(function()
if FOVCircle then
FOVCircle:Remove()
end
UI:Destroy()
end)
-- Content
local Content = Instance.new("Frame")
Content.Size = UDim2.new(1, -20, 1, -45)
Content.Position = UDim2.new(0, 10, 0, 40)
Content.BackgroundTransparency = 1
Content.Parent = Main
local Y = 0
-- Toggle
local function CreateToggle(Text, Default, Callback)
local Frame = Instance.new("Frame")
Frame.Size = UDim2.new(1, 0, 0, 35)
Frame.Position = UDim2.new(0, 0, 0, Y)
Frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
Frame.Parent = Content
local FrameCorner = Instance.new("UICorner")
FrameCorner.CornerRadius = UDim.new(0, 6)
FrameCorner.Parent = Frame
local Label = Instance.new("TextLabel")
Label.Size = UDim2.new(1, -60, 1, 0)
Label.Position = UDim2.new(0, 10, 0, 0)
Label.BackgroundTransparency = 1
Label.Text = Text
Label.TextColor3 = Color3.fromRGB(255, 255, 255)
Label.Font = Enum.Font.Gotham
Label.TextSize = 13
Label.TextXAlignment = Enum.TextXAlignment.Left
Label.Parent = Frame
local Button = Instance.new("TextButton")
Button.Size = UDim2.new(0, 45, 0, 25)
Button.Position = UDim2.new(1, -55, 0.5, -12.5)
Button.BackgroundColor3 = Default and Color3.fromRGB(200, 0, 0) or Color3.fromRGB(60, 60, 60)
Button.Text = Default and "ON" or "OFF"
Button.TextColor3 = Color3.fromRGB(255, 255, 255)
Button.Font = Enum.Font.GothamBold
Button.TextSize = 12
Button.Parent = Frame
local ButtonCorner = Instance.new("UICorner")
ButtonCorner.CornerRadius = UDim.new(0, 4)
ButtonCorner.Parent = Button
local State = Default
Button.MouseButton1Click:Connect(function()
State = not State
Button.Text = State and "ON" or "OFF"
Button.BackgroundColor3 = State and Color3.fromRGB(200, 0, 0) or Color3.fromRGB(60, 60, 60)
Callback(State)
end)
Y = Y + 40
end
-- Slider
local function CreateSlider(Text, Min, Max, Default, Callback)
local Frame = Instance.new("Frame")
Frame.Size = UDim2.new(1, 0, 0, 45)
Frame.Position = UDim2.new(0, 0, 0, Y)
Frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
Frame.Parent = Content
local FrameCorner = Instance.new("UICorner")
FrameCorner.CornerRadius = UDim.new(0, 6)
FrameCorner.Parent = Frame
local Label = Instance.new("TextLabel")
Label.Size = UDim2.new(1, -20, 0, 20)
Label.Position = UDim2.new(0, 10, 0, 5)
Label.BackgroundTransparency = 1
Label.Text = Text .. ": " .. Default
Label.TextColor3 = Color3.fromRGB(255, 0, 0)
Label.Font = Enum.Font.Gotham
Label.TextSize = 13
Label.TextXAlignment = Enum.TextXAlignment.Left
Label.Parent = Frame
local Track = Instance.new("Frame")
Track.Size = UDim2.new(1, -40, 0, 4)
Track.Position = UDim2.new(0, 20, 0, 30)
Track.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
Track.BorderSizePixel = 0
Track.Parent = Frame
local TrackCorner = Instance.new("UICorner")
TrackCorner.CornerRadius = UDim.new(0, 2)
TrackCorner.Parent = Track
local Knob = Instance.new("TextButton")
Knob.Size = UDim2.new(0, 14, 0, 14)
local Rel = (Default - Min) / (Max - Min)
Knob.Position = UDim2.new(Rel, -7, 0, -5)
Knob.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
Knob.Text = ""
Knob.BorderSizePixel = 0
Knob.Parent = Track
local KnobCorner = Instance.new("UICorner")
KnobCorner.CornerRadius = UDim.new(0, 7)
KnobCorner.Parent = Knob
local Dragging = false
local Value = Default
Knob.MouseButton1Down:Connect(function()
Dragging = true
end)
UserInputService.InputEnded:Connect(function(Input)
if Input.UserInputType == Enum.UserInputType.MouseButton1 then
Dragging = false
end
end)
RunService.Heartbeat:Connect(function()
if Dragging then
local MousePos = UserInputService:GetMouseLocation()
local TrackX = Track.AbsolutePosition.X
local TrackW = Track.AbsoluteSize.X
local RelX = (MousePos.X - TrackX) / TrackW
RelX = math.clamp(RelX, 0, 1)
Value = math.floor(Min + (RelX * (Max - Min)))
Label.Text = Text .. ": " .. Value
Knob.Position = UDim2.new(RelX, -7, 0, -5)
Callback(Value)
end
end)
Y = Y + 50
end
-- Create UI Elements
CreateToggle("Aimbot", false, function(State)
Settings.Enabled = State
if FOVCircle then
FOVCircle.Visible = State
end
if not State then
IsAiming = false
CurrentTarget = nil
end
end)
CreateToggle("Team Check", true, function(State)
Settings.TeamCheck = State
end)
CreateToggle("Kill Aura (INF Range)", false, function(State)
Settings.KillAura = State
end)
CreateSlider("FOV", 10, 300, 120, function(Value)
Settings.FOV = Value
if FOVCircle then
FOVCircle.Radius = Value
end
end)
-- Notification
game:GetService("StarterGui"):SetCore("SendNotification", {
Title = "Headshot Aimbot + INF Kill",
Text = "Kill Aura has INFINITE range!",
Duration = 3
})
print("Script Loaded - Kill Aura has INFINITE range")No comments yet for this script.



