Run it
Copy the script and paste it into your executor.
Players = :()
RunService = :()
UserInputService = :()
Camera = .CurrentCamera
LocalPlayer = Players.LocalPlayer
ESP = {}
TEAM_CHECK =
MAX_STUCK_TIME =
TOGGLE_KEY = .KeyCode.RightAlt
ESP_ENABLED =
(, props)
obj = .()
k,v (props)
obj[k] = v
obj
(ui)
ui.Box.Visible =
ui.Tracer.Visible =
ui.Health.Visible =
ui.Name.Visible =
()
_,ui (ESP)
(ui)
UserInputService.InputBegan:((input, gameProcessed)
gameProcessed
input.KeyCode == TOGGLE_KEY
ESP_ENABLED = ESP_ENABLED
ESP_ENABLED
()
()
()
)
(player)
player == LocalPlayer
ESP[player]
ESP[player] = {
Player = player,
Box = (, {
Thickness = ,
Filled = ,
Color = .(,,),
Visible =
}),
Tracer = (, {
Thickness = ,
Color = .(,,),
Visible =
}),
Health = (, {
Thickness = ,
Visible =
}),
Name = (, {
Size = ,
Center = ,
Outline = ,
Font = ,
Visible =
}),
LastPosition = ,
StuckTime =
}
_,player (Players:())
(player)
Players.PlayerAdded:(createESP)
(player)
_,model (:())
model:() model.Name == player.Name
hum = model:()
root = model:()
hum root
model, hum, root
(character)
cf, size = character:()
top = cf.Position + .(, size.Y/, )
bottom = cf.Position - .(, size.Y/, )
topPos, vis1 = Camera:(top)
bottomPos, vis2 = Camera:(bottom)
vis1 vis2
height = .(topPos.Y - bottomPos.Y)
width = height /
.(topPos.X - width/, topPos.Y), width, height
RunService.RenderStepped:((dt)
ESP_ENABLED
player,ui (ESP)
TEAM_CHECK player.Team == LocalPlayer.Team
(ui)
character, humanoid, root = (player)
character humanoid humanoid.Health <=
(ui)
ui.LastPosition =
ui.StuckTime =
pos, width, height = (character)
pos
(ui)
ui.LastPosition =
ui.StuckTime =
ui.LastPosition
(ui.LastPosition - pos).Magnitude <
ui.StuckTime += dt
ui.StuckTime =
ui.StuckTime >= MAX_STUCK_TIME
(ui)
ui.LastPosition =
ui.StuckTime =
ui.LastPosition = pos
ui.Box.Size = .(width, height)
ui.Box.Position = pos
ui.Box.Visible =
hp = humanoid.Health / humanoid.MaxHealth
healthHeight = height * hp
ui.Health.From = .(pos.X - , pos.Y + height)
ui.Health.To = .(pos.X - , pos.Y + height - healthHeight)
ui.Health.Color = .(
- (*hp),
*hp,
)
ui.Health.Visible =
ui.Tracer.From = .(Camera.ViewportSize.X/, Camera.ViewportSize.Y)
ui.Tracer.To = .(pos.X + width/, pos.Y)
ui.Tracer.Visible =
myRoot = LocalPlayer.Character LocalPlayer.Character:()
myRoot
dist = (myRoot.Position - root.Position).Magnitude
ui.Name.Text = player.Name .. .. .(dist) ..
ui.Name.Text = player.Name
ui.Name.Position = .(pos.X + width/, pos.Y - )
ui.Name.Visible =
)open source esp