Run it
Copy the script and paste it into your executor.
Players = :()
UserInputService = :()
RunService = :()
player = Players.LocalPlayer
mouse = player:()
camera = .CurrentCamera
settings = {
fovRadius = ,
fovCircleColor = .(, , ),
fovCircleTransparency = ,
lockOnTextColor = .(, , ),
lockOnTextSize = ,
wallCheckEnabled = ,
guiOnRespawn = ,
hitParts = {, , },
}
aimAssistEnabled =
fovCircle, lockOnLabel
()
existingGui = player:()
existingGui
existingGui:()
screenGui = .()
screenGui.Name =
screenGui.Parent = player:()
fovCircle = .()
fovCircle.Size = .(, settings.fovRadius * , , settings.fovRadius * )
fovCircle.Position = .(, -settings.fovRadius, , -settings.fovRadius)
fovCircle.BackgroundColor3 = settings.fovCircleColor
fovCircle.BackgroundTransparency = settings.fovCircleTransparency
fovCircle.BorderSizePixel =
fovCircle.Parent = screenGui
uicorner = .()
uicorner.CornerRadius = .(, )
uicorner.Parent = fovCircle
lockOnLabel = .()
lockOnLabel.Size = .(, , , )
lockOnLabel.Position = .(, , , )
lockOnLabel.BackgroundTransparency =
lockOnLabel.Text =
lockOnLabel.TextColor3 = settings.lockOnTextColor
lockOnLabel.TextScaled =
lockOnLabel.TextSize = settings.lockOnTextSize
lockOnLabel.TextStrokeTransparency =
lockOnLabel.Visible =
lockOnLabel.Parent = screenGui
screenGui
(part)
screenPoint, onScreen = camera:(part.Position)
targetPosition = .(screenPoint.X, screenPoint.Y)
fovCenter = .(fovCircle.AbsolutePosition.X + settings.fovRadius, fovCircle.AbsolutePosition.Y + settings.fovRadius)
distanceToFOVCenter = (targetPosition - fovCenter).Magnitude
distanceToFOVCenter <= settings.fovRadius
(targetCharacter)
rayOrigin = camera.CFrame.Position
targetPart = targetCharacter:(settings.hitParts[])
targetPart
rayDirection = (targetPart.Position - rayOrigin).unit * (rayOrigin - targetPart.Position).magnitude
ray = Ray.(rayOrigin, rayDirection)
part, position = :(ray, player.Character)
part part:(targetCharacter)
()
closestPlayer =
closestHitPart =
shortestDistance = .huge
_, targetPlayer (Players:())
targetPlayer ~= player targetPlayer.Character
character = targetPlayer.Character
closestPart =
closestPartDistance = .huge
_, partName (settings.hitParts)
part = character:(partName)
part
(part)
screenPoint, onScreen = camera:(part.Position)
distanceToCrosshair = (.(screenPoint.X, screenPoint.Y) - .(mouse.X, mouse.Y)).Magnitude
distanceToCrosshair < closestPartDistance onScreen
closestPart = part
closestPartDistance = distanceToCrosshair
closestPart
settings.wallCheckEnabled (character)
closestPartDistance < shortestDistance
closestPlayer = targetPlayer
closestHitPart = closestPart
shortestDistance = closestPartDistance
closestPlayer, closestHitPart
RunService.RenderStepped:(()
aimAssistEnabled
targetPlayer, targetPart = ()
targetPlayer targetPart
lockOnLabel.TextSize = settings.lockOnTextSize
lockOnLabel.Visible =
lockOnLabel.Text = .. targetPlayer.Name
targetPart
targetPosition = targetPart.Position
aimDirection = (targetPosition - camera.CFrame.Position).unit
camera.CFrame = .(camera.CFrame.Position, camera.CFrame.Position + aimDirection)
lockOnLabel.Visible =
lockOnLabel.Visible =
)
UserInputService.InputBegan:((input)
input.KeyCode == .KeyCode.E
aimAssistEnabled =
)
UserInputService.InputEnded:((input)
input.KeyCode == .KeyCode.E
aimAssistEnabled =
)
(character)
settings.guiOnRespawn
()
player.CharacterAdded:(onCharacterAdded)
player.Character
()

Universal