Run it
Copy the script and paste it into your executor.
TweenService = :()
Players = :()
UserInputService = :()
RunService = :()
LocalPlayer = Players.LocalPlayer
Camera = .CurrentCamera
playerGui = LocalPlayer:()
IMAGE_ID =
MESSAGE_DURATION =
TWEEN_TIME =
FRAME_WIDTH =
FRAME_HEIGHT =
IMAGE_SIZE =
FOV_RADIUS =
AIM_KEY = .KeyCode.E
SELF_DESTRUCT_KEY = .KeyCode.RightControl
TARGET_PART_NAME =
SMOOTHNESS =
SmoothnessEnabled =
NPC_ENABLED =
PREDICTION_ENABLED =
PREDICTION_OFFSET =
MANUAL_OVERRIDE_THRESHOLD =
FOV_COLOR = .(, , )
effectiveSmoothness = SMOOTHNESS
effectiveSmoothness <=
effectiveSmoothness =
messageGui = .()
messageGui.Name =
messageGui.ResetOnSpawn =
messageGui.Parent = playerGui
messageFrame = .()
messageFrame.Name =
messageFrame.Size = .(, FRAME_WIDTH, , FRAME_HEIGHT)
messageFrame.AnchorPoint = .(, )
messageFrame.Position = .(, , , -)
messageFrame.BackgroundColor3 = .(, , )
messageFrame.BackgroundTransparency =
messageFrame.Parent = messageGui
uiCorner = .()
uiCorner.CornerRadius = .(, )
uiCorner.Parent = messageFrame
imageLabel = .()
imageLabel.Name =
imageLabel.Size = .(, IMAGE_SIZE, , IMAGE_SIZE)
imageLabel.Position = .(, , , (FRAME_HEIGHT - IMAGE_SIZE) / )
imageLabel.Image = IMAGE_ID
imageLabel.BackgroundTransparency =
imageLabel.Parent = messageFrame
titleLabel = .()
titleLabel.Name =
titleLabel.Size = .(, -IMAGE_SIZE - , , )
titleLabel.Position = .(, IMAGE_SIZE + , , )
titleLabel.BackgroundTransparency =
titleLabel.Text =
titleLabel.TextColor3 = .(, , )
titleLabel.TextScaled =
titleLabel.Font = .Font.SourceSansBold
titleLabel.Parent = messageFrame
subtitleLabel = .()
subtitleLabel.Name =
subtitleLabel.Size = .(, -IMAGE_SIZE - , , )
subtitleLabel.Position = .(, IMAGE_SIZE + , , )
subtitleLabel.BackgroundTransparency =
subtitleLabel.Text =
subtitleLabel.TextColor3 = .(, , )
subtitleLabel.TextScaled =
subtitleLabel.Font = .Font.SourceSans
subtitleLabel.Parent = messageFrame
targetInPosition = .(, -, , -)
tweenInfoIn = TweenInfo.(TWEEN_TIME, .EasingStyle.Quad, .EasingDirection.Out)
tweenIn = TweenService:(messageFrame, tweenInfoIn, {Position = targetInPosition})
tweenIn:()
(TWEEN_TIME + MESSAGE_DURATION, ()
targetOutPosition = .(, , , -)
tweenOut = TweenService:(messageFrame, tweenInfoIn, {Position = targetOutPosition})
tweenOut:()
tweenOut.Completed:(()
messageGui:()
)
)
(p1, p2)
(p1 - p2).Magnitude
()
mousePos = UserInputService:()
closestTarget =
shortestDistance = FOV_RADIUS
_, player (Players:())
player ~= LocalPlayer player.Character
character = player.Character
targetPart = character:(TARGET_PART_NAME)
targetPart character:()
humanoid = character.Humanoid
humanoid.Health >
screenPos, onScreen = Camera:(targetPart.Position)
onScreen
dist = (.(mousePos.X, mousePos.Y), .(screenPos.X, screenPos.Y))
dist <= shortestDistance
shortestDistance = dist
closestTarget = player
NPC_ENABLED
npcFolder = :()
npcFolder
_, npc (npcFolder:())
npc:()
humanoid = npc:()
targetPart = npc:(TARGET_PART_NAME)
humanoid targetPart humanoid.Health >
screenPos, onScreen = Camera:(targetPart.Position)
onScreen
dist = (.(mousePos.X, mousePos.Y), .(screenPos.X, screenPos.Y))
dist <= shortestDistance
shortestDistance = dist
closestTarget = npc
_, obj (:())
obj:() Players:(obj)
humanoid = obj:()
targetPart = obj:(TARGET_PART_NAME)
humanoid targetPart humanoid.Health >
screenPos, onScreen = Camera:(targetPart.Position)
onScreen
dist = (.(mousePos.X, mousePos.Y), .(screenPos.X, screenPos.Y))
dist <= shortestDistance
shortestDistance = dist
closestTarget = obj
closestTarget
aimTarget =
isAiming =
()
isAiming
isAiming =
aimTarget =
target = ()
target
isAiming =
aimTarget = target
fovCircle = .()
fovCircle.Visible =
fovCircle.NumSides =
fovCircle.Radius = FOV_RADIUS
fovCircle.Color = FOV_COLOR
fovCircle.Thickness =
fovCircle.Transparency =
inputBeganConnection =
renderSteppedConnection =
()
inputBeganConnection
inputBeganConnection:()
renderSteppedConnection
renderSteppedConnection:()
fovCircle
(()
fovCircle:()
)
fovCircle =
messageGui = .()
messageGui.Name =
messageGui.ResetOnSpawn =
messageGui.Parent = playerGui
messageFrame = .()
messageFrame.Name =
messageFrame.Size = .(, FRAME_WIDTH, , FRAME_HEIGHT)
messageFrame.AnchorPoint = .(, )
messageFrame.Position = .(, , , -)
messageFrame.BackgroundColor3 = .(, , )
messageFrame.BackgroundTransparency =
messageFrame.Parent = messageGui
uiCorner = .()
uiCorner.CornerRadius = .(, )
uiCorner.Parent = messageFrame
imageLabel = .()
imageLabel.Name =
imageLabel.Size = .(, IMAGE_SIZE, , IMAGE_SIZE)
imageLabel.Position = .(, , , (FRAME_HEIGHT - IMAGE_SIZE) / )
imageLabel.Image = IMAGE_ID
imageLabel.BackgroundTransparency =
imageLabel.Parent = messageFrame
titleLabel = .()
titleLabel.Name =
titleLabel.Size = .(, -IMAGE_SIZE - , , )
titleLabel.Position = .(, IMAGE_SIZE + , , )
titleLabel.BackgroundTransparency =
titleLabel.Text =
titleLabel.TextColor3 = .(, , )
titleLabel.TextScaled =
titleLabel.Font = .Font.SourceSansBold
titleLabel.Parent = messageFrame
subtitleLabel = .()
subtitleLabel.Name =
subtitleLabel.Size = .(, -IMAGE_SIZE - , , )
subtitleLabel.Position = .(, IMAGE_SIZE + , , )
subtitleLabel.BackgroundTransparency =
subtitleLabel.Text =
subtitleLabel.TextColor3 = .(, , )
subtitleLabel.TextScaled =
subtitleLabel.Font = .Font.SourceSans
subtitleLabel.Parent = messageFrame
targetInPosition = .(, -, , -)
tweenInfoIn = TweenInfo.(TWEEN_TIME, .EasingStyle.Quad, .EasingDirection.Out)
tweenIn = TweenService:(messageFrame, tweenInfoIn, {Position = targetInPosition})
tweenIn:()
(TWEEN_TIME + MESSAGE_DURATION, ()
targetOutPosition = .(, , , -)
tweenOut = TweenService:(messageFrame, tweenInfoIn, {Position = targetOutPosition})
tweenOut:()
tweenOut.Completed:(()
messageGui:()
)
)
:()
inputBeganConnection = UserInputService.InputBegan:((input, gameProcessed)
gameProcessed
input.KeyCode == SELF_DESTRUCT_KEY
()
input.KeyCode == AIM_KEY
()
)
renderSteppedConnection = RunService.RenderStepped:((dt)
mousePos = UserInputService:()
fovCircle.Position = mousePos
mouseDelta = UserInputService:()
mouseDelta.Magnitude > MANUAL_OVERRIDE_THRESHOLD
isAiming aimTarget
character =
aimTarget:()
character = aimTarget.Character
aimTarget:()
character = aimTarget
character
isAiming =
aimTarget =
humanoid = character:()
humanoid humanoid.Health <=
isAiming =
aimTarget =
targetPart = character:(TARGET_PART_NAME)
targetPart
camPos = Camera.CFrame.Position
targetPosition = targetPart.Position
PREDICTION_ENABLED aimTarget:()
hrp = character:()
hrp
velocity = hrp.Velocity
velocity = .(velocity.X, , velocity.Z)
velocity.Magnitude >
rightVector = hrp.CFrame.RightVector
sideSpeed = velocity:(rightVector)
sideSpeed ~=
offsetDirection = sideSpeed < -rightVector rightVector
targetPosition = targetPosition + offsetDirection.Unit * PREDICTION_OFFSET
targetCFrame = .(camPos, targetPosition)
SmoothnessEnabled
lerpFactor = .(dt / effectiveSmoothness, , )
Camera.CFrame = Camera.CFrame:(targetCFrame, lerpFactor)
Camera.CFrame = targetCFrame
)

Universal