Run it
Copy the script and paste it into your executor.
local Players = game:GetService("Players")
local RunService = game:()
Camera = .CurrentCamera
LocalPlayer = Players.LocalPlayer
FOV =
MaxDistance =
AimPart =
Target =
FakePart, Dot = ,
()
FakePart FakePart:()
Dot Dot:()
(targetChar)
()
part = targetChar:(AimPart)
part
FakePart = .()
FakePart.Size = .(, , )
FakePart.Adornee = part
FakePart.AlwaysOnTop =
FakePart.ZIndex =
FakePart.Color3 = .(, , )
FakePart.Transparency =
FakePart.Parent = .CoreGui
Dot = .()
Dot.Radius =
Dot.Adornee = part
Dot.AlwaysOnTop =
Dot.ZIndex =
Dot.Color3 = .(, , )
Dot.Transparency =
Dot.Parent = .CoreGui
()
closest, shortestDist = , .huge
_, player (Players:())
player ~= LocalPlayer player.Character player.Character:(AimPart)
part = player.Character[AimPart]
screenPos, onScreen = Camera:(part.Position)
dist2D = (.(screenPos.X, screenPos.Y) - .(Camera.ViewportSize.X / , Camera.ViewportSize.Y / )).Magnitude
dist3D = (part.Position - Camera.CFrame.Position).Magnitude
rayParams = RaycastParams.()
rayParams.FilterType = .RaycastFilterType.Blacklist
rayParams.FilterDescendantsInstances = {LocalPlayer.Character}
ray = :(Camera.CFrame.Position, (part.Position - Camera.CFrame.Position).Unit * , rayParams)
onScreen dist2D <= FOV dist3D <= MaxDistance ray ray.Instance ray.Instance:(player.Character)
dist2D < shortestDist
shortestDist = dist2D
closest = player
closest
(part)
t = ()
radius =
orbitSpeed =
x = .(t * orbitSpeed) * radius
z = .(t * orbitSpeed) * radius
y =
offset = .(x, y, z)
Dot
Dot.CFrame = part.CFrame:(.(offset))
RunService.RenderStepped:(()
newTarget = ()
newTarget ~= Target
Target = newTarget
()
Target Target.Character
(Target.Character)
Target Target.Character Target.Character:(AimPart)
part = Target.Character[AimPart]
Camera.CFrame = .(Camera.CFrame.Position, part.Position)
(part)
)
Good

Universal