local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local UserInputService = game:GetService("UserInputService")
local camera = workspace.CurrentCamera
local localPlayer = Players.LocalPlayer
local mouse = localPlayer:GetMouse()
local AimbotTab = Window:CreateTab("Aimbot", "skull")
local MAX_DISTANCE = 100
local MAX_ANGLE = 45
local aimLockEnabled = false
local lockPartName = "Head"
AimbotTab:CreateSection("Aim-Lock")
AimbotTab:CreateToggle({
Name = "Enable Aimbot",
CurrentValue = false,
Callback = function(value)
aimLockEnabled = value
end,
})
AimbotTab:CreateSlider({
Name = "Value",
Range = {10, 500},
Increment = 5,
Suffix = " studs",
CurrentValue = MAX_DISTANCE,
Callback = function(value)
MAX_DISTANCE = value
end,
})
local function getNearestTarget()
local nearest = nil
local shortestDistance = MAX_DISTANCE
for _, player in pairs(Players:GetPlayers()) do
if player ~= localPlayer and player.Character then
local humanoid = player.Character:FindFirstChildOfClass("Humanoid")
local targetPart = player.Character:FindFirstChild(lockPartName)
if humanoid and humanoid.Health > 0 and targetPart then
local direction = (targetPart.Position - camera.CFrame.Position).Unit
local angle = math.deg(math.acos(camera.CFrame.LookVector:Dot(direction)))
local distance = (targetPart.Position - camera.CFrame.Position).Magnitude
if angle <= MAX_ANGLE and distance < shortestDistance then
shortestDistance = distance
nearest = targetPart
end
end
end
end
return nearest
end
RunService.RenderStepped:Connect(function()
if aimLockEnabled then
local target = getNearestTarget()
if target then
camera.CFrame = CFrame.new(camera.CFrame.Position, target.Position)
end
end
end)
AimbotTab:CreateSection("Hitbox")
local toggleEnabled = false
local hitboxSize = 25
local function ApplyEffect()
for _, player in pairs(Players:GetPlayers()) do
if player ~= localPlayer and player.Character then
local humanoid = player.Character:FindFirstChildOfClass("Humanoid")
local rootPart = player.Character:FindFirstChild("HumanoidRootPart")
if humanoid and humanoid.Health > 0 and rootPart and rootPart:IsA("Part") then
rootPart.Size = Vector3.new(hitboxSize, hitboxSize, hitboxSize)
rootPart.Transparency = 0.5
rootPart.Color = Color3.fromRGB(100, 100, 255)
rootPart.CanCollide = false
end
end
end
end
local function ResetEffect()
for _, player in pairs(Players:GetPlayers()) do
if player ~= localPlayer and player.Character then
local rootPart = player.Character:FindFirstChild("HumanoidRootPart")
if rootPart and rootPart:IsA("Part") then
rootPart.Size = Vector3.new(2, 2, 1)
rootPart.Transparency = 0
rootPart.Color = Color3.new(1, 1, 1)
rootPart.CanCollide = true
end
end
end
end
AimbotTab:CreateToggle({
Name = "Hitbox Expander",
CurrentValue = false,
Flag = "ToggleGiant",
Callback = function(Value)
toggleEnabled = Value
if Value then ApplyEffect() else ResetEffect() end
end,
})
AimbotTab:CreateSlider({
Name = "Hitbox Multiplier",
Range = {5, 100},
Increment = 1,
Suffix = "Size",
CurrentValue = hitboxSize,
Flag = "HitboxSize",
Callback = function(Value)
hitboxSize = Value
if toggleEnabled then ApplyEffect() end
end,
})
AimbotTab:CreateSection("Feild Of View")
local aimCircleRadius = 100
local aimCircleThickness = 2
local circleColor = Color3.fromRGB(128, 0, 128)
local aimCircle = nil
local rainbowCircle = nil
local fovEnabled = false
local rainbowEnabled = false
local function createAimCircle()
aimCircle = Drawing.new("Circle")
aimCircle.Visible = true
aimCircle.Filled = false
aimCircle.Color = circleColor
aimCircle.Thickness = aimCircleThickness
end
local function createRainbowCircle()
rainbowCircle = Drawing.new("Circle")
rainbowCircle.Visible = true
rainbowCircle.Filled = false
rainbowCircle.Thickness = aimCircleThickness
end
RunService.RenderStepped:Connect(function()
if fovEnabled then
if not aimCircle then createAimCircle() end
aimCircle.Position = Vector2.new(mouse.X, mouse.Y + 40)
aimCircle.Visible = true
aimCircle.Radius = aimCircleRadius
aimCircle.Color = circleColor
elseif aimCircle then
aimCircle.Visible = false
end
if fovEnabled and rainbowEnabled then
if not rainbowCircle then createRainbowCircle() end
rainbowCircle.Position = Vector2.new(mouse.X, mouse.Y + 40)
rainbowCircle.Visible = true
rainbowCircle.Radius = aimCircleRadius
rainbowCircle.Color = Color3.fromHSV((tick() * 100) % 360 / 360, 1, 1)
elseif rainbowCircle then
rainbowCircle.Visible = false
end
end)
AimbotTab:CreateToggle({
Name = "Enable FOV Circle",
CurrentValue = false,
Callback = function(Value)
fovEnabled = Value
if fovEnabled and not aimCircle then createAimCircle() end
if not fovEnabled and rainbowCircle then rainbowCircle.Visible = false end
end,
})
AimbotTab:CreateToggle({
Name = "Rainbow Field of View",
CurrentValue = false,
Callback = function(Value)
rainbowEnabled = Value
if rainbowEnabled and not rainbowCircle then createRainbowCircle() end
if not rainbowEnabled and rainbowCircle then rainbowCircle.Visible = false end
end,
})
AimbotTab:CreateSlider({
Name = "FOV Circle Radius",
Range = {50, 500},
Increment = 10,
Suffix = "px",
CurrentValue = aimCircleRadius,
Callback = function(Value)
aimCircleRadius = Value
if aimCircle then aimCircle.Radius = aimCircleRadius end
if rainbowCircle then rainbowCircle.Radius = aimCircleRadius end
end,
})
AimbotTab:CreateColorPicker({
Name = "FOV Color Picker",
Color = circleColor,
Callback = function(Value)
circleColor = Value
if aimCircle then aimCircle.Color = circleColor end
end,
})
AimbotTab:CreateSection("Snap-Lines")
local line = Drawing.new("Line")
line.Color = Color3.new(1, 1, 1)
line.Thickness = 2
line.Transparency = 1
line.Visible = false
local AIM_RADIUS = 30
local snaplineEnabled = false
local snaplineColor = Color3.new(1, 1, 1)
local function getScreenBottomCenter()
local size = camera.ViewportSize
return Vector2.new(size.X / 2, size.Y)
end
local function getScreenCenter()
local size = camera.ViewportSize
return Vector2.new(size.X / 2, size.Y / 2)
end
local function updateSnapline()
if not snaplineEnabled then
line.Visible = false
return
end
local origin = getScreenBottomCenter()
local screenCenter = getScreenCenter()
local closestPlayer = nil
local closestDistance = AIM_RADIUS
for _, player in pairs(Players:GetPlayers()) do
if player ~= localPlayer and player.Character and player.Character:FindFirstChild("Head") and player.Character:FindFirstChild("Humanoid") and player.Character.Humanoid.Health > 0 then
local head = player.Character.Head
local screenPos, onScreen = camera:WorldToViewportPoint(head.Position)
if onScreen and screenPos.Z > 0 then
local screenPoint = Vector2.new(screenPos.X, screenPos.Y)
local distanceFromCenter = (screenPoint - screenCenter).Magnitude
if distanceFromCenter <= closestDistance then
closestDistance = distanceFromCenter
closestPlayer = player
end
end
end
end
if closestPlayer then
local headPos, onScreen = camera:WorldToViewportPoint(closestPlayer.Character.Head.Position)
if onScreen and headPos.Z > 0 then
line.Visible = true
line.Color = snaplineColor
line.From = origin
line.To = Vector2.new(headPos.X, headPos.Y)
else
line.Visible = false
end
else
line.Visible = false
end
end
RunService.RenderStepped:Connect(updateSnapline)
AimbotTab:CreateToggle({
Name = "Enable Snaplines",
CurrentValue = false,
Flag = "AimSnaplineToggle",
Callback = function(value)
snaplineEnabled = value
if not value then line.Visible = false end
end
})
AimbotTab:CreateColorPicker({
Name = "Snapline Color",
Color = Color3.new(1, 1, 1),
Flag = "SnaplineColorPicker",
Callback = function(color)
snaplineColor = color
end
})
To embed this project on your website, copy the following code and paste it into your website's HTML: