Run it
Copy the script and paste it into your executor.
Players = :()
Lighting = :()
UserInputService = :()
Workspace = :()
Teams = :()
RunService = :()
LocalPlayer = Players.LocalPlayer
ScreenGui = .()
ScreenGui.Name =
ScreenGui.ResetOnSpawn =
ScreenGui.ZIndexBehavior = .ZIndexBehavior.Sibling
(()
ScreenGui.Parent = .CoreGui
)
ScreenGui.Parent
ScreenGui.Parent = LocalPlayer:()
MainFrame = .()
MainFrame.Size = .(, , , )
MainFrame.Position = .(, , , )
MainFrame.BackgroundColor3 = .(, , )
MainFrame.BorderSizePixel =
MainFrame.Active =
MainFrame.Draggable =
MainFrame.Parent = ScreenGui
UICorner = .()
UICorner.CornerRadius = .(, )
UICorner.Parent = MainFrame
DragArea = .()
DragArea.Size = .(, , , )
DragArea.BackgroundColor3 = .(, , )
DragArea.BorderSizePixel =
DragArea.Active =
DragArea.Parent = MainFrame
DragCorner = .()
DragCorner.CornerRadius = .(, )
DragCorner.Parent = DragArea
Title = .()
Title.Size = .(, , , )
Title.Position = .(, , , )
Title.BackgroundTransparency =
Title.Text =
Title.TextColor3 = .(, , )
Title.Font = .Font.SourceSansBold
Title.TextSize =
Title.TextXAlignment = .TextXAlignment.Left
Title.Parent = DragArea
ExpandButton = .()
ExpandButton.Size = .(, , , )
ExpandButton.Position = .(, -, , )
ExpandButton.BackgroundColor3 = .(, , )
ExpandButton.BorderSizePixel =
ExpandButton.Text =
ExpandButton.TextColor3 = .(, , )
ExpandButton.Font = .Font.SourceSansBold
ExpandButton.TextSize =
ExpandButton.Parent = DragArea
ExpandCorner = .()
ExpandCorner.CornerRadius = .(, )
ExpandCorner.Parent = ExpandButton
ContentFrame = .()
ContentFrame.Size = .(, , , )
ContentFrame.Position = .(, , , )
ContentFrame.BackgroundColor3 = .(, , )
ContentFrame.BorderSizePixel =
ContentFrame.ClipsDescendants =
ContentFrame.Parent = MainFrame
TabButtons = .()
TabButtons.Size = .(, , , )
TabButtons.BackgroundTransparency =
TabButtons.Parent = ContentFrame
VisionTab = .()
VisionTab.Size = .(, , , )
VisionTab.BackgroundColor3 = .(, , )
VisionTab.BorderSizePixel =
VisionTab.Text =
VisionTab.TextColor3 = .(, , )
VisionTab.Font = .Font.SourceSans
VisionTab.TextSize =
VisionTab.Parent = TabButtons
HealthTab = .()
HealthTab.Size = .(, , , )
HealthTab.Position = .(, , , )
HealthTab.BackgroundColor3 = .(, , )
HealthTab.BorderSizePixel =
HealthTab.Text =
HealthTab.TextColor3 = .(, , )
HealthTab.Font = .Font.SourceSans
HealthTab.TextSize =
HealthTab.Parent = TabButtons
VisionFrame = .()
VisionFrame.Size = .(, , , )
VisionFrame.Position = .(, , , )
VisionFrame.BackgroundTransparency =
VisionFrame.Visible =
VisionFrame.Parent = ContentFrame
HealthFrame = .()
HealthFrame.Size = .(, , , )
HealthFrame.Position = .(, , , )
HealthFrame.BackgroundTransparency =
HealthFrame.Visible =
HealthFrame.Parent = ContentFrame
(text, order, parent)
btn = .()
btn.Size = .(, , , )
btn.Position = .(, , , + (order * ))
btn.BackgroundColor3 = .(, , )
btn.BorderSizePixel =
btn.Text = text ..
btn.TextColor3 = .(, , )
btn.Font = .Font.SourceSans
btn.TextSize =
btn.Parent = parent
corner = .()
corner.CornerRadius = .(, )
corner.Parent = btn
btn
NightVisionToggle = (, , VisionFrame)
PlayerHeatToggle = (, , VisionFrame)
NPCHeatToggle = (, , VisionFrame)
PlayerHealthToggle = (, , HealthFrame)
NPCHealthToggle = (, , HealthFrame)
PlayerNamesToggle = (, , HealthFrame)
NPCNamesToggle = (, , HealthFrame)
TeamCheckToggle = (, , HealthFrame)
StatusLabelHealth = .()
StatusLabelHealth.Size = .(, , , )
StatusLabelHealth.Position = .(, , , )
StatusLabelHealth.BackgroundColor3 = .(, , )
StatusLabelHealth.BorderSizePixel =
StatusLabelHealth.Text =
StatusLabelHealth.TextColor3 = .(, , )
StatusLabelHealth.Font = .Font.SourceSans
StatusLabelHealth.TextSize =
StatusLabelHealth.TextWrapped =
StatusLabelHealth.Parent = HealthFrame
StatusCornerH = .()
StatusCornerH.CornerRadius = .(, )
StatusCornerH.Parent = StatusLabelHealth
StatusLabelVision = .()
StatusLabelVision.Size = .(, , , )
StatusLabelVision.Position = .(, , , )
StatusLabelVision.BackgroundColor3 = .(, , )
StatusLabelVision.BorderSizePixel =
StatusLabelVision.Text =
StatusLabelVision.TextColor3 = .(, , )
StatusLabelVision.Font = .Font.SourceSans
StatusLabelVision.TextSize =
StatusLabelVision.TextWrapped =
StatusLabelVision.Parent = VisionFrame
StatusCornerV = .()
StatusCornerV.CornerRadius = .(, )
StatusCornerV.Parent = StatusLabelVision
Settings = {
NightVision = ,
PlayerHeat = ,
NPCHeat = ,
PlayerHealth = ,
NPCHealth = ,
PlayerNames = ,
NPCNames = ,
TeamCheck = ,
GuiExpanded =
}
Cache = {
PlayerHighlights = {},
NPCHighlights = {},
PlayerHealthBars = {},
NPCHealthBars = {},
NPCNameTags = {},
OriginalLighting = {},
OriginalAtmosphere = {},
VisionEffects = {},
NPCData = {},
TrackedNPCs = {}
}
npcMonitorConnection =
playerConnections = {}
()
#Teams:() >
(player)
Settings.TeamCheck
player == LocalPlayer
()
player.Team LocalPlayer.Team
player.Team ~= LocalPlayer.Team
(model)
model model:()
Players:(model)
humanoid = model:()
humanoid
(model:() model:())
()
Cache.OriginalLighting.Stored
Cache.OriginalLighting = {
Ambient = Lighting.Ambient,
Brightness = Lighting.Brightness,
FogEnd = Lighting.FogEnd,
FogStart = Lighting.FogStart,
GlobalShadows = Lighting.GlobalShadows,
FogColor = Lighting.FogColor,
Stored =
}
Lighting.Ambient = .(, , )
Lighting.Brightness =
Lighting.FogEnd =
Lighting.FogStart =
Lighting.GlobalShadows =
_, effect (Lighting:())
effect:()
Cache.OriginalAtmosphere.Stored
Cache.OriginalAtmosphere = {
Effect = effect,
Density = effect.Density,
Offset = effect.Offset,
Glare = effect.Glare,
Haze = effect.Haze,
Stored =
}
effect.Density =
effect.Offset =
effect.Glare =
effect.Haze =
Cache.VisionEffects.NightVision
cc = .()
cc.Name =
cc.TintColor = .(, , )
cc.Saturation = -
cc.Brightness =
cc.Parent = Lighting
Cache.VisionEffects.NightVision = cc
()
Cache.OriginalLighting.Stored
Lighting.Ambient = Cache.OriginalLighting.Ambient
Lighting.Brightness = Cache.OriginalLighting.Brightness
Lighting.FogEnd = Cache.OriginalLighting.FogEnd
Lighting.FogStart = Cache.OriginalLighting.FogStart
Lighting.GlobalShadows = Cache.OriginalLighting.GlobalShadows
Lighting.FogColor = Cache.OriginalLighting.FogColor
Cache.OriginalAtmosphere.Stored Cache.OriginalAtmosphere.Effect
atm = Cache.OriginalAtmosphere.Effect
atm.Parent
atm.Density = Cache.OriginalAtmosphere.Density
atm.Offset = Cache.OriginalAtmosphere.Offset
atm.Glare = Cache.OriginalAtmosphere.Glare
atm.Haze = Cache.OriginalAtmosphere.Haze
Cache.VisionEffects.NightVision
Cache.VisionEffects.NightVision:()
Cache.VisionEffects.NightVision =
Cache.OriginalLighting = {}
Cache.OriginalAtmosphere = {}
(model, color, isNPC)
model model.Parent
existingHL = model:()
existingHL existingHL.Name ==
existingHL:()
highlight = .()
highlight.Name =
highlight.FillColor = color
highlight.OutlineColor = color
highlight.FillTransparency =
highlight.OutlineTransparency =
highlight.DepthMode = .HighlightDepthMode.AlwaysOnTop
highlight.Parent = model
isNPC
Cache.NPCHighlights[model] = highlight
Cache.PlayerHighlights[model] = highlight
highlight
(character, isNPC, teamColor)
character character.Parent
humanoid = character:()
humanoid
existingHB = character:()
existingHB
existingHB:()
bb = .()
bb.Name =
bb.Size = .(, , , )
bb.StudsOffset = .(, , )
bb.AlwaysOnTop =
bb.Adornee = character:() character.PrimaryPart
bb.Parent = character
healthText = .()
healthText.Size = .(, , , )
healthText.BackgroundTransparency =
healthText.Text = .(humanoid.Health) .. .. .(humanoid.MaxHealth)
healthText.TextColor3 = teamColor .(, , )
healthText.TextStrokeTransparency =
healthText.Font = .Font.SourceSansBold
healthText.TextSize =
healthText.Parent = bb
frame = .()
frame.Size = .(, , , )
frame.Position = .(, , , )
frame.BackgroundColor3 = .(, , )
frame.BorderSizePixel =
frame.Parent = bb
bar = .()
bar.Size = .(.(humanoid.Health / humanoid.MaxHealth, , ), , , )
teamColor
bar.BackgroundColor3 = teamColor
bar.BackgroundColor3 = isNPC .(, , ) .(, , )
bar.BorderSizePixel =
bar.Parent = frame
conn = humanoid.HealthChanged:((health)
(()
bar bar.Parent
percent = .(health / humanoid.MaxHealth, , )
bar.Size = .(percent, , , )
healthText.Text = .(health) .. .. .(humanoid.MaxHealth)
teamColor
bar.BackgroundColor3 = teamColor
percent >
bar.BackgroundColor3 = isNPC .(, , ) .(, , )
percent >
bar.BackgroundColor3 = .(, , )
bar.BackgroundColor3 = .(, , )
)
)
isNPC
Cache.NPCHealthBars[character] = {Gui = bb, Connection = conn}
Cache.PlayerHealthBars[character] = {Gui = bb, Connection = conn}
(character, isNPC, teamColor)
character character.Parent
existingNT = character:()
existingNT
existingNT:()
bb = .()
bb.Name =
bb.Size = .(, , , )
bb.StudsOffset = .(, , )
bb.AlwaysOnTop =
bb.Adornee = character:() character.PrimaryPart
bb.Parent = character
label = .()
label.Size = .(, , , )
label.BackgroundTransparency =
label.Text = character.Name
teamColor
label.TextColor3 = teamColor
label.TextColor3 = isNPC .(, , ) .(, , )
label.TextStrokeTransparency =
label.Font = .Font.SourceSansBold
label.TextSize =
label.Parent = bb
isNPC
Cache.NPCNameTags[character] = bb
(player)
player == LocalPlayer player.Character
(player)
char = player.Character
playerTeamColor =
player.Team
playerTeamColor = player.Team.TeamColor.Color
Settings.PlayerHeat
color = playerTeamColor .(, , )
(char, color, )
Settings.PlayerHealth
(char, , playerTeamColor)
Settings.PlayerNames
(char, , playerTeamColor)
(npc)
npc npc.Parent
(npc)
Cache.TrackedNPCs[npc] =
Cache.NPCData[npc]
Cache.NPCData[npc] = {
Connections = {},
LastCheck = ()
}
Settings.NPCHeat
(npc, .(, , ), )
Settings.NPCHealth
(npc, , )
Settings.NPCNames
(npc, , )
(player)
player.Character
char = player.Character
Cache.PlayerHighlights[char]
(() Cache.PlayerHighlights[char]:() )
Cache.PlayerHighlights[char] =
Cache.PlayerHealthBars[char]
Cache.PlayerHealthBars[char].Connection
(() Cache.PlayerHealthBars[char].Connection:() )
Cache.PlayerHealthBars[char].Gui
(() Cache.PlayerHealthBars[char].Gui:() )
Cache.PlayerHealthBars[char] =
(()
nameTag = char:()
nameTag nameTag:()
)
(npc)
Cache.NPCHighlights[npc]
(() Cache.NPCHighlights[npc]:() )
Cache.NPCHighlights[npc] =
Cache.NPCHealthBars[npc]
Cache.NPCHealthBars[npc].Connection
(() Cache.NPCHealthBars[npc].Connection:() )
Cache.NPCHealthBars[npc].Gui
(() Cache.NPCHealthBars[npc].Gui:() )
Cache.NPCHealthBars[npc] =
Cache.NPCNameTags[npc]
(() Cache.NPCNameTags[npc]:() )
Cache.NPCNameTags[npc] =
Cache.NPCData[npc]
_, conn (Cache.NPCData[npc].Connections)
(() conn:() )
Cache.NPCData[npc] =
()
Settings.NPCHeat Settings.NPCHealth Settings.NPCNames
()
npcMonitorConnection
npcMonitorConnection:()
()
lastFullScan = ()
npcMonitorConnection = RunService.Heartbeat:(()
now = ()
now - lastFullScan >
lastFullScan = now
_, obj (Workspace:())
obj:() (obj)
Cache.TrackedNPCs[obj]
(obj)
npc, _ (Cache.TrackedNPCs)
npc npc.Parent
Settings.NPCHeat npc:()
(npc, .(, , ), )
Settings.NPCHealth npc:()
(npc, , )
Settings.NPCNames npc:()
(npc, , )
Cache.TrackedNPCs[npc] =
(npc)
)
()
npcMonitorConnection
npcMonitorConnection:()
npcMonitorConnection =
()
_, player (Players:())
(player)
player ~= LocalPlayer player.Character
(player)
()
npc (Cache.TrackedNPCs)
(npc)
Cache.TrackedNPCs = {}
()
()
()
()
active = {}
k, v (Settings)
v == k ~=
.(active, k:(, ):())
statusText = #active == .(active, )
StatusLabelVision.Text = statusText
StatusLabelHealth.Text = statusText
(btn, key, color)
btn.MouseButton1Click:(()
Settings[key] = Settings[key]
baseText = btn.Text:()
btn.Text = baseText .. .. (Settings[key] )
btn.BackgroundColor3 = Settings[key] color .(, , )
key ==
Settings[key]
()
()
key:() key ==
()
key:()
()
()
)
(NightVisionToggle, , .(, , ))
(PlayerHeatToggle, , .(, , ))
(NPCHeatToggle, , .(, , ))
(PlayerHealthToggle, , .(, , ))
(NPCHealthToggle, , .(, , ))
(PlayerNamesToggle, , .(, , ))
(NPCNamesToggle, , .(, , ))
(TeamCheckToggle, , .(, , ))
ExpandButton.MouseButton1Click:(()
Settings.GuiExpanded = Settings.GuiExpanded
Settings.GuiExpanded
Title.Text =
ExpandButton.Text =
targetHeight = VisionFrame.Visible
ContentFrame.Size = .(, , , targetHeight)
MainFrame.Size = .(, , , + targetHeight)
Title.Text =
ExpandButton.Text =
ContentFrame.Size = .(, , , )
MainFrame.Size = .(, , , )
)
VisionTab.MouseButton1Click:(()
VisionFrame.Visible =
HealthFrame.Visible =
VisionTab.BackgroundColor3 = .(, , )
HealthTab.BackgroundColor3 = .(, , )
Settings.GuiExpanded
ContentFrame.Size = .(, , , )
MainFrame.Size = .(, , , )
)
HealthTab.MouseButton1Click:(()
VisionFrame.Visible =
HealthFrame.Visible =
VisionTab.BackgroundColor3 = .(, , )
HealthTab.BackgroundColor3 = .(, , )
Settings.GuiExpanded
ContentFrame.Size = .(, , , )
MainFrame.Size = .(, , , )
)
dragging =
dragInput
dragStart
startPos
DragArea.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1 input.UserInputType == .UserInputType.Touch
dragging =
dragStart = input.Position
startPos = MainFrame.Position
input.Changed:(()
input.UserInputState == .UserInputState.End
dragging =
)
)
DragArea.InputChanged:((input)
input.UserInputType == .UserInputType.MouseMovement input.UserInputType == .UserInputType.Touch
dragInput = input
)
UserInputService.InputChanged:((input)
input == dragInput dragging
delta = input.Position - dragStart
MainFrame.Position = .(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
)
(player)
player == LocalPlayer
playerConnections[player]
_, conn (playerConnections[player])
conn:()
playerConnections[player] = {}
charAddedConn = player.CharacterAdded:((char)
.()
(player)
)
charRemovingConn = player.CharacterRemoving:(()
(player)
)
teamChangedConn = player:():(()
.()
(player)
player.Character
(player)
)
.(playerConnections[player], charAddedConn)
.(playerConnections[player], charRemovingConn)
.(playerConnections[player], teamChangedConn)
player.Character
.(() (player) )
_, player (Players:())
(player)
Players.PlayerAdded:((player)
(player)
)
Players.PlayerRemoving:((player)
(player)
playerConnections[player]
_, conn (playerConnections[player])
conn:()
playerConnections[player] =
)
Workspace.DescendantAdded:((obj)
()
obj:()
model = obj.Parent
.()
model model.Parent (model) Cache.TrackedNPCs[model]
(model)
obj:()
.()
obj.Parent (obj) Cache.TrackedNPCs[obj]
(obj)
)
ScreenGui.Destroying:(()
()
Settings.NightVision
()
_, player (Players:())
(player)
npc (Cache.TrackedNPCs)
(npc)
player, connections (playerConnections)
_, conn (connections)
conn:()
)
Universal