
KeylessUniversal

local Settings = {
Enabled = false,
Key = "Q", -- default (now stored as Enum.KeyCode.Name string)
Prediction = 0.135,
AimPart = "Head",
FOV = 180,
OffsetX = 0,
OffsetY = 58,
Smoothness = 5,
TeamCheck = true,
FovVisible = true,
WallCheck = true,
AimNPCs = false,
MaxDistance = 500,
InfDistance = false,
TeamWhitelist = {},
ESPOpposite = false
}
-- normalize key to uppercase Enum.KeyCode name format
Settings.Key = tostring(Settings.Key):upper()
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Camera = workspace.CurrentCamera
local Mouse = Players.LocalPlayer:GetMouse()
local LocalPlayer = Players.LocalPlayer
local Target = nil
local RightClick = false
local displayParts = {"Head", "Torso", "HumanoidRootPart", "Right Arm", "Left Arm", "Right Leg", "Left Leg", "Right Hand"}
local actualParts = {"Head", "Torso", "HumanoidRootPart", "RightUpperArm", "LeftUpperArm", "RightUpperLeg", "LeftUpperLeg", "RightHand"}
local currentPartIndex = 1
local okDrawing, Drawing = pcall(function() return Drawing end)
if not okDrawing then
Drawing = nil
end
local FOVCircle, CenterDot
if Drawing then
FOVCircle = Drawing.new("Circle")
FOVCircle.Radius = Settings.FOV
FOVCircle.Color = Color3.new(1,1,1)
FOVCircle.Thickness = 1.5
FOVCircle.Filled = false
FOVCircle.Transparency = 1
FOVCircle.Visible = false
CenterDot = Drawing.new("Circle")
CenterDot.Radius = 2
CenterDot.Color = Color3.new(1,1,1)
CenterDot.Filled = true
CenterDot.Transparency = 1
CenterDot.Visible = false
end
-- Create a storage folder in CoreGui for highlights (safer and easier cleanup)
local CoreGui = game:GetService("CoreGui")
local STORAGE_NAME = "Highlight_Storage_AIMBOT"
local storage = CoreGui:FindFirstChild(STORAGE_NAME)
if not storage then
storage = Instance.new("Folder")
storage.Name = STORAGE_NAME
storage.Parent = CoreGui
end
local Gui = Instance.new("ScreenGui")
Gui.Name = "AimbotGUI"
Gui.ResetOnSpawn = false
Gui.Parent = game:GetService("CoreGui")
local Frame = Instance.new("Frame")
Frame.Size = UDim2.new(0, 200, 0, 550)
Frame.Position = UDim2.new(0, 10, 0.5, -275)
Frame.BackgroundColor3 = Color3.fromRGB(30,30,30)
Frame.BorderSizePixel = 2
Frame.BorderColor3 = Color3.fromRGB(100,100,100)
Frame.Active = true
Frame.Draggable = true
Frame.Visible = true
Frame.Parent = Gui
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1,0,0,25)
Title.BackgroundTransparency = 1
Title.Text = "Aimbot Settings"
Title.TextColor3 = Color3.new(1,1,1)
Title.Font = Enum.Font.SourceSansBold
Title.TextSize = 16
Title.Parent = Frame
-- Key bind button (placed top-right of frame, does not overlap existing labels)
local KeyBindButton = Instance.new("TextButton")
KeyBindButton.Size = UDim2.new(0, 80, 0, 20)
KeyBindButton.Position = UDim2.new(1, -90, 0, 4)
KeyBindButton.BackgroundColor3 = Color3.fromRGB(60,60,60)
KeyBindButton.TextColor3 = Color3.new(1,1,1)
KeyBindButton.Font = Enum.Font.SourceSans
KeyBindButton.TextSize = 14
KeyBindButton.Text = "Key: " .. (Settings.Key or "Q")
KeyBindButton.Parent = Frame
local keyCapturing = false
KeyBindButton.MouseButton1Click:Connect(function()
if keyCapturing then return end
keyCapturing = true
KeyBindButton.Text = "Press a key..."
-- temporary capture connection
local conn
conn = UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.UserInputType == Enum.UserInputType.Keyboard then
local name = input.KeyCode and input.KeyCode.Name
if name and name ~= "" then
Settings.Key = tostring(name):upper()
KeyBindButton.Text = "Key: " .. Settings.Key
end
keyCapturing = false
conn:Disconnect()
end
end)
end)
local function CreateLabel(text, posY)
local l = Instance.new("TextLabel")
l.Size = UDim2.new(1,0,0,20)
l.Position = UDim2.new(0,0,0,posY)
l.BackgroundTransparency = 1
l.Text = text
l.TextColor3 = Color3.new(1,1,1)
l.Font = Enum.Font.SourceSans
l.TextSize = 14
l.Parent = Frame
return l
end
local YLabel = CreateLabel("Up/Down: 58", 25)
local XLabel = CreateLabel("Left/Right: 0", 70)
local FOVLabel = CreateLabel("FOV: 180", 115)
local SLabel = CreateLabel("Smooth: 5", 160)
local DLabel = CreateLabel("Max Dist: 500", 205)
local PLabel = CreateLabel("Predict: 0.135", 250)
local function CreateSlider(posY, fillColor)
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(1,-20,0,20)
btn.Position = UDim2.new(0,10,0,posY)
btn.BackgroundColor3 = Color3.fromRGB(60,60,60)
btn.Text = ""
btn.BorderSizePixel = 0
btn.Parent = Frame
local fill = Instance.new("Frame")
fill.Size = UDim2.new(0.5,0,1,0)
fill.BackgroundColor3 = fillColor
fill.BorderSizePixel = 0
fill.Parent = btn
return btn, fill
end
local YSlider, YFill = CreateSlider(45, Color3.fromRGB(0,170,255))
local XSlider, XFill = CreateSlider(90, Color3.fromRGB(0,170,255))
local FOVSlider, FOVFill = CreateSlider(135, Color3.fromRGB(0,170,255))
local SSlider, SFill = CreateSlider(180, Color3.fromRGB(0,255,0))
local DSlider, DFill = CreateSlider(225, Color3.fromRGB(255,100,100))
local PSlider, PFill = CreateSlider(270, Color3.fromRGB(255,200,0))
local AimPartLabel = CreateLabel("Aim Part: Head", 295)
local AimPartToggle = Instance.new("TextButton")
AimPartToggle.Size = UDim2.new(1,-20,0,20)
AimPartToggle.Position = UDim2.new(0,10,0,315)
AimPartToggle.BackgroundColor3 = Color3.fromRGB(60,60,60)
AimPartToggle.Text = "Aim Part: Head"
AimPartToggle.TextColor3 = Color3.new(1,1,1)
AimPartToggle.Font = Enum.Font.SourceSans
AimPartToggle.TextSize = 14
AimPartToggle.BorderSizePixel = 0
AimPartToggle.Parent = Frame
AimPartToggle.MouseButton1Click:Connect(function()
currentPartIndex = currentPartIndex + 1
if currentPartIndex > #displayParts then currentPartIndex = 1 end
Settings.AimPart = actualParts[currentPartIndex]
AimPartToggle.Text = "Aim Part: " .. displayParts[currentPartIndex]
AimPartLabel.Text = "Aim Part: " .. displayParts[currentPartIndex]
end)
local WhitelistLabel = CreateLabel("Whitelist Teams: None", 340)
local TeamNameBox = Instance.new("TextBox")
TeamNameBox.Size = UDim2.new(0.6,0,0,20)
TeamNameBox.Position = UDim2.new(0,10,0,360)
TeamNameBox.BackgroundColor3 = Color3.fromRGB(60,60,60)
TeamNameBox.PlaceholderText = "Team name (e.g., Blue)"
TeamNameBox.TextColor3 = Color3.new(1,1,1)
TeamNameBox.Font = Enum.Font.SourceSans
TeamNameBox.TextSize = 14
TeamNameBox.BorderSizePixel = 0
TeamNameBox.Parent = Frame
local AddTeamButton = Instance.new("TextButton")
AddTeamButton.Size = UDim2.new(0.4,0,0,20)
AddTeamButton.Position = UDim2.new(0.6,0,0,360)
AddTeamButton.BackgroundColor3 = Color3.fromRGB(0,170,0)
AddTeamButton.Text = "Add"
AddTeamButton.TextColor3 = Color3.new(1,1,1)
AddTeamButton.Font = Enum.Font.SourceSans
AddTeamButton.TextSize = 14
AddTeamButton.BorderSizePixel = 0
AddTeamButton.Parent = Frame
local ClearWhitelistButton = Instance.new("TextButton")
ClearWhitelistButton.Size = UDim2.new(1,-20,0,20)
ClearWhitelistButton.Position = UDim2.new(0,10,0,380)
ClearWhitelistButton.BackgroundColor3 = Color3.fromRGB(200,60,60)
ClearWhitelistButton.Text = "Clear"
ClearWhitelistButton.TextColor3 = Color3.new(1,1,1)
ClearWhitelistButton.Font = Enum.Font.SourceSans
ClearWhitelistButton.TextSize = 14
ClearWhitelistButton.BorderSizePixel = 0
ClearWhitelistButton.Parent = Frame
local TeamCheckToggle = Instance.new("TextButton")
TeamCheckToggle.Size = UDim2.new(1,-20,0,20)
TeamCheckToggle.Position = UDim2.new(0,10,0,410)
TeamCheckToggle.BackgroundColor3 = Color3.fromRGB(60,60,60)
TeamCheckToggle.Text = "Team Check: ON"
TeamCheckToggle.TextColor3 = Color3.new(1,1,1)
TeamCheckToggle.Font = Enum.Font.SourceSans
TeamCheckToggle.TextSize = 14
TeamCheckToggle.BorderSizePixel = 0
TeamCheckToggle.Parent = Frame
local FovVisibleToggle = Instance.new("TextButton")
FovVisibleToggle.Size = UDim2.new(1,-20,0,20)
FovVisibleToggle.Position = UDim2.new(0,10,0,435)
FovVisibleToggle.BackgroundColor3 = Color3.fromRGB(60,60,60)
FovVisibleToggle.Text = "FOV Visible: ON"
FovVisibleToggle.TextColor3 = Color3.new(1,1,1)
FovVisibleToggle.Font = Enum.Font.SourceSans
FovVisibleToggle.TextSize = 14
FovVisibleToggle.BorderSizePixel = 0
FovVisibleToggle.Parent = Frame
local ESPToggle = Instance.new("TextButton")
ESPToggle.Size = UDim2.new(1,-20,0,20)
ESPToggle.Position = UDim2.new(0,10,0,460)
ESPToggle.BackgroundColor3 = Color3.fromRGB(60,60,60)
ESPToggle.Text = "ESP Opposite: OFF"
ESPToggle.TextColor3 = Color3.new(1,1,1)
ESPToggle.Font = Enum.Font.SourceSans
ESPToggle.TextSize = 14
ESPToggle.BorderSizePixel = 0
ESPToggle.Parent = Frame
local WallCheckToggle = Instance.new("TextButton")
WallCheckToggle.Size = UDim2.new(1,-20,0,20)
WallCheckToggle.Position = UDim2.new(0,10,0,485)
WallCheckToggle.BackgroundColor3 = Color3.fromRGB(60,60,60)
WallCheckToggle.Text = "Wall Check: ON"
WallCheckToggle.TextColor3 = Color3.new(1,1,1)
WallCheckToggle.Font = Enum.Font.SourceSans
WallCheckToggle.TextSize = 14
WallCheckToggle.BorderSizePixel = 0
WallCheckToggle.Parent = Frame
local AimNPCsToggle = Instance.new("TextButton")
AimNPCsToggle.Size = UDim2.new(1,-20,0,20)
AimNPCsToggle.Position = UDim2.new(0,10,0,510)
AimNPCsToggle.BackgroundColor3 = Color3.fromRGB(60,60,60)
AimNPCsToggle.Text = "Aim NPCs: OFF"
AimNPCsToggle.TextColor3 = Color3.new(1,1,1)
AimNPCsToggle.Font = Enum.Font.SourceSans
AimNPCsToggle.TextSize = 14
AimNPCsToggle.BorderSizePixel = 0
AimNPCsToggle.Parent = Frame
local InfDistanceToggle = Instance.new("TextButton")
InfDistanceToggle.Size = UDim2.new(1,-20,0,20)
InfDistanceToggle.Position = UDim2.new(0,10,0,535)
InfDistanceToggle.BackgroundColor3 = Color3.fromRGB(60,60,60)
InfDistanceToggle.Text = "Inf Dist: OFF"
InfDistanceToggle.TextColor3 = Color3.new(1,1,1)
InfDistanceToggle.Font = Enum.Font.SourceSans
InfDistanceToggle.TextSize = 14
InfDistanceToggle.BorderSizePixel = 0
InfDistanceToggle.Parent = Frame
TeamCheckToggle.MouseButton1Click:Connect(function()
Settings.TeamCheck = not Settings.TeamCheck
TeamCheckToggle.Text = "Team Check: " .. (Settings.TeamCheck and "ON" or "OFF")
RefreshESP()
end)
FovVisibleToggle.MouseButton1Click:Connect(function()
Settings.FovVisible = not Settings.FovVisible
FovVisibleToggle.Text = "FOV Visible: " .. (Settings.FovVisible and "ON" or "OFF")
if Drawing and FOVCircle and CenterDot then
FOVCircle.Visible = Settings.FovVisible and Settings.Enabled
CenterDot.Visible = Settings.FovVisible and Settings.Enabled
end
end)
-- ESP storage/tracking
local ESPInstances = {} -- key: model -> Highlight instance
local function destroyHighlightForModel(model)
if not model then return end
local hl = ESPInstances[model]
if hl and hl.Parent then hl:Destroy() end
ESPInstances[model] = nil
end
local function createHighlightForModel(model, fillColor)
if not model or not model:IsA("Model") then return end
-- avoid duplicates
destroyHighlightForModel(model)
local ok, Highlight = pcall(Instance.new, "Highlight")
if not ok or not Highlight then return end
Highlight.Name = "ESP_Highlight"
Highlight.Adornee = model
Highlight.FillColor = fillColor or Color3.new(1, 0, 0)
-- default transparency; can be updated by slider later
Highlight.FillTransparency = 0.7
Highlight.OutlineColor = Color3.new(0, 0, 0)
Highlight.OutlineTransparency = 0.5
Highlight.Enabled = true
-- parent to storage for easier cleanup / visibility isolation
Highlight.Parent = storage
ESPInstances[model] = Highlight
end
-- Clear all tracked highlights safely
local function ClearAllESP()
-- snapshot keys to avoid modifying table while iterating
local keys = {}
for model, _ in pairs(ESPInstances) do keys[#keys+1] = model end
for _, model in ipairs(keys) do
destroyHighlightForModel(model)
end
end
local function shouldHighlightPlayerModel(model)
if not model then return false end
local plr = Players:GetPlayerFromCharacter(model)
if not plr or plr == LocalPlayer then return false end
if plr.Team and table.find(Settings.TeamWhitelist, plr.Team.Name) then return false end
if Settings.TeamCheck and LocalPlayer.Team and plr.Team == LocalPlayer.Team then return false end
return true
end
function RefreshESP()
-- remove highlights for models that are no longer valid or no longer should be highlighted
local keys = {}
for model, _ in pairs(ESPInstances) do keys[#keys+1] = model end
for _, model in ipairs(keys) do
if not model or not model.Parent then
destroyHighlightForModel(model)
else
-- if ESPOpposite disabled, clear everything
if not Settings.ESPOpposite then
destroyHighlightForModel(model)
else
-- if model no longer should be highlighted, remove
if not shouldHighlightPlayerModel(model) then
destroyHighlightForModel(model)
end
end
end
end
if not Settings.ESPOpposite then return end
-- create highlights for eligible players
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= LocalPlayer and plr.Character and plr.Character.Parent then
if shouldHighlightPlayerModel(plr.Character) then
local col = (plr.Team and plr.Team.TeamColor and plr.Team.TeamColor.Color) or Color3.new(1, 0, 0)
createHighlightForModel(plr.Character, col)
else
destroyHighlightForModel(plr.Character)
end
end
end
end
ESPToggle.MouseButton1Click:Connect(function()
Settings.ESPOpposite = not Settings.ESPOpposite
ESPToggle.Text = "ESP Opposite: " .. (Settings.ESPOpposite and "ON" or "OFF")
if Settings.ESPOpposite then
RefreshESP()
else
-- ensure all highlights are removed when disabling ESP
ClearAllESP()
end
end)
WallCheckToggle.MouseButton1Click:Connect(function()
Settings.WallCheck = not Settings.WallCheck
WallCheckToggle.Text = "Wall Check: " .. (Settings.WallCheck and "ON" or "OFF")
end)
AimNPCsToggle.MouseButton1Click:Connect(function()
Settings.AimNPCs = not Settings.AimNPCs
AimNPCsToggle.Text = "Aim NPCs: " .. (Settings.AimNPCs and "ON" or "OFF")
end)
InfDistanceToggle.MouseButton1Click:Connect(function()
Settings.InfDistance = not Settings.InfDistance
InfDistanceToggle.Text = "Inf Dist: " .. (Settings.InfDistance and "ON" or "OFF")
end)
AddTeamButton.MouseButton1Click:Connect(function()
local teamName = TeamNameBox.Text
if teamName ~= "" and not table.find(Settings.TeamWhitelist, teamName) then
table.insert(Settings.TeamWhitelist, teamName)
WhitelistLabel.Text = "Whitelist Teams: " .. table.concat(Settings.TeamWhitelist, ", ")
TeamNameBox.Text = ""
RefreshESP()
end
end)
ClearWhitelistButton.MouseButton1Click:Connect(function()
Settings.TeamWhitelist = {}
WhitelistLabel.Text = "Whitelist Teams: None"
RefreshESP()
end)
YFill.Size = UDim2.new((Settings.OffsetY + 100)/200, 0, 1, 0)
XFill.Size = UDim2.new((Settings.OffsetX + 100)/200, 0, 1, 0)
FOVFill.Size = UDim2.new(math.clamp(Settings.FOV / 500, 0, 1), 0, 1, 0)
SFill.Size = UDim2.new((Settings.Smoothness - 1)/19, 0, 1, 0)
DFill.Size = UDim2.new(Settings.MaxDistance / 1000, 0, 1, 0)
PFill.Size = UDim2.new(Settings.Prediction / 0.5, 0, 1, 0)
local dragging = nil
YSlider.MouseButton1Down:Connect(function() dragging = "Y" end)
XSlider.MouseButton1Down:Connect(function() dragging = "X" end)
FOVSlider.MouseButton1Down:Connect(function() dragging = "F" end)
SSlider.MouseButton1Down:Connect(function() dragging = "S" end)
DSlider.MouseButton1Down:Connect(function() dragging = "D" end)
PSlider.MouseButton1Down:Connect(function() dragging = "P" end)
UserInputService.InputEnded:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then dragging = nil end
end)
RunService.RenderStepped:Connect(function()
if not dragging then return end
if not Mouse then return end
local mx = Mouse.X
local slider = dragging == "Y" and YSlider or dragging == "X" and XSlider or dragging == "S" and SSlider or dragging == "D" and DSlider or dragging == "P" and PSlider or dragging == "F" and FOVSlider
local fill = dragging == "Y" and YFill or dragging == "X" and XFill or dragging == "S" and SFill or dragging == "D" and DFill or dragging == "P" and PFill or dragging == "F" and FOVFill
local label = dragging == "Y" and YLabel or dragging == "X" and XLabel or dragging == "S" and SLabel or dragging == "D" and DLabel or dragging == "P" and PLabel or dragging == "F" and FOVLabel
if not slider then return end
local sx = slider.AbsolutePosition.X
local w = slider.AbsoluteSize.X
local rel = math.clamp((mx - sx) / w, 0, 1)
fill.Size = UDim2.new(rel, 0, 1, 0)
if dragging == "Y" then
Settings.OffsetY = math.floor(rel * 200 - 100)
YLabel.Text = "Up/Down: " .. Settings.OffsetY
elseif dragging == "X" then
Settings.OffsetX = math.floor(rel * 200 - 100)
XLabel.Text = "Left/Right: " .. Settings.OffsetX
elseif dragging == "S" then
Settings.Smoothness = math.max(1, math.floor(rel * 19 + 1))
SLabel.Text = "Smooth: " .. Settings.Smoothness
elseif dragging == "D" then
Settings.MaxDistance = math.floor(rel * 1000)
DLabel.Text = "Max Dist: " .. Settings.MaxDistance
elseif dragging == "F" then
Settings.FOV = math.max(0, math.floor(rel * 500))
FOVLabel.Text = "FOV: " .. Settings.FOV
if Drawing and FOVCircle then FOVCircle.Radius = Settings.FOV end
else
Settings.Prediction = rel * 0.5
PLabel.Text = "Predict: " .. string.format("%.3f", Settings.Prediction)
end
end)
local function IsInRange(aimPart)
if Settings.InfDistance then return true end
if not aimPart then return false end
return (Camera.CFrame.Position - aimPart.Position).Magnitude <= Settings.MaxDistance
end
local function IsVisible(aimPart)
if not Settings.WallCheck then return true end
if not aimPart then return false end
local origin = Camera.CFrame.Position
local dir = (aimPart.Position - origin)
local ray = Ray.new(origin, dir.Unit * dir.Magnitude)
local hit = workspace:FindPartOnRayWithIgnoreList(ray, {LocalPlayer.Character})
return hit and (hit:IsDescendantOf(aimPart.Parent) or hit == aimPart)
end
Players.PlayerAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function() task.wait(0.1); RefreshESP() end)
plr:GetPropertyChangedSignal("Team"):Connect(RefreshESP)
end)
Players.PlayerRemoving:Connect(function(plr)
destroyHighlightForModel(plr.Character)
RefreshESP()
end)
LocalPlayer:GetPropertyChangedSignal("Team"):Connect(RefreshESP)
local function IsPlayerCharacter(model)
return Players:GetPlayerFromCharacter(model) ~= nil
end
local function GetClosestTarget()
local best = nil
local bestDist = Settings.FOV
local cx = Mouse.X + Settings.OffsetX
local cy = Mouse.Y + Settings.OffsetY
for _, plr in pairs(Players:GetPlayers()) do
if plr == LocalPlayer or not plr.Character then continue end
if Settings.TeamCheck and plr.Team == LocalPlayer.Team then continue end
if plr.Team and table.find(Settings.TeamWhitelist, plr.Team.Name) then continue end
local char = plr.Character
local aimPart = char:FindFirstChild(Settings.AimPart)
local hum = char:FindFirstChild("Humanoid")
if aimPart and hum and hum.Health > 0 and IsInRange(aimPart) then
local pos, onScreen = Camera:WorldToViewportPoint(aimPart.Position)
if onScreen then
local dist = (Vector2.new(pos.X, pos.Y) - Vector2.new(cx, cy)).Magnitude
if dist < bestDist and IsVisible(aimPart) then
best = char
bestDist = dist
end
end
end
end
if Settings.AimNPCs then
for _, model in pairs(workspace:GetDescendants()) do
if not model:IsA("Model") or model == LocalPlayer.Character or IsPlayerCharacter(model) then continue end
local hum = model:FindFirstChild("Humanoid")
local aimPart = model:FindFirstChild(Settings.AimPart)
if hum and aimPart and hum.Health > 0 and IsInRange(aimPart) then
local pos, onScreen = Camera:WorldToViewportPoint(aimPart.Position)
if onScreen then
local dist = (Vector2.new(pos.X, pos.Y) - Vector2.new(cx, cy)).Magnitude
if dist < bestDist and IsVisible(aimPart) then
best = model
bestDist = dist
end
end
end
end
end
return best
end
-- Use Settings.Key (Enum.KeyCode.Name string) for toggling aimbot
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.UserInputType == Enum.UserInputType.Keyboard and input.KeyCode and input.KeyCode.Name == Settings.Key then
Settings.Enabled = not Settings.Enabled
if Settings.Enabled then
Target = GetClosestTarget()
if Drawing and Settings.FovVisible then
FOVCircle.Visible = true
CenterDot.Visible = true
end
else
Target = nil
if Drawing and FOVCircle and CenterDot then
FOVCircle.Visible = false
CenterDot.Visible = false
end
end
end
end)
if Mouse then
Mouse.Button2Down:Connect(function() RightClick = true end)
Mouse.Button2Up:Connect(function() RightClick = false end)
end
RunService.Heartbeat:Connect(function()
local cx = Mouse.X + Settings.OffsetX
local cy = Mouse.Y + Settings.OffsetY
if Drawing and FOVCircle and CenterDot then
FOVCircle.Position = Vector2.new(cx, cy)
CenterDot.Position = Vector2.new(cx, cy)
FOVCircle.Radius = Settings.FOV
FOVCircle.Visible = Settings.Enabled and Settings.FovVisible
CenterDot.Visible = Settings.Enabled and Settings.FovVisible
end
if Settings.ESPOpposite then
RefreshESP()
end
if not Settings.Enabled or RightClick then return end
if not Target or not Target:FindFirstChild(Settings.AimPart) then
Target = GetClosestTarget()
if not Target then return end
end
local aimPart = Target:FindFirstChild(Settings.AimPart)
local hum = Target:FindFirstChild("Humanoid")
local pos, onScreen = Camera:WorldToViewportPoint(aimPart.Position)
if not hum or hum.Health <= 0 or not onScreen or not IsInRange(aimPart) then
Target = GetClosestTarget()
if not Target then return end
aimPart = Target:FindFirstChild(Settings.AimPart)
hum = Target:FindFirstChild("Humanoid")
pos, onScreen = Camera:WorldToViewportPoint(aimPart.Position)
if not onScreen or not hum or hum.Health <= 0 then return end
end
if Settings.WallCheck and not IsVisible(aimPart) then return end
local pred = aimPart.Position
if Settings.Prediction > 0 then
local velocity = aimPart.AssemblyLinearVelocity or aimPart.Velocity or Vector3.new()
pred = aimPart.Position + velocity * Settings.Prediction
end
local scr = Camera:WorldToScreenPoint(pred)
local deltaX = math.round((scr.X - Mouse.X) / Settings.Smoothness)
local deltaY = math.round((scr.Y - Mouse.Y) / Settings.Smoothness)
if type(mousemoverel) == "function" then
mousemoverel(deltaX, deltaY)
end
end)
Players.PlayerRemoving:Connect(function(p)
if Target and Target == p.Character then Target = nil end
destroyHighlightForModel(p.Character)
end)
-- ensure no stale highlights remain at load
ClearAllESP()



is this made by paid grok?
@longtycoon71 yes
yo make new one that works for all executors