Unknown
ESP Bypass VAC(RAC) on 18.04(still ud by RAC on 02.09.25)
- Views
- 10K
- Likes
- 0
- Dislikes
- 0
- Added
Script
-- Stealth ESP with Visibility Toggle
--test
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera
-- Configuration
local ESP = {
Enabled = true,
TeamCheck = true,
BoxColor = Color3.fromRGB(255, 70, 70),
TextColor = Color3.fromRGB(255, 255, 255),
BoxThickness = 1,
TextSize = 14,
MaxDistance = 8000,
VisibilityCheck = false, -- Toggle for raycast checks
UpdateInterval = 0.01,
UseRandomOffset = true -- Makes patterns less detectable
}
-- Storage
local ESPStore = {}
local LastUpdate = 0
-- Create stealthy ESP elements
local function CreateStealthESP(player)
if ESPStore[player] then return end
local drawings = {
box = Drawing.new("Quad"),
name = Drawing.new("Text"),
health = Drawing.new("Text"),
lastSeen = 0,
lastPos = Vector3.new()
}
-- Configure elements to look natural
drawings.box.Thickness = ESP.BoxThickness
drawings.box.Filled = false
drawings.box.ZIndex = 2
drawings.name.Size = ESP.TextSize
drawings.name.Center = true
drawings.name.Outline = true
drawings.name.ZIndex = 3
drawings.health.Size = ESP.TextSize - 2
drawings.health.Center = true
drawings.health.ZIndex = 3
ESPStore[player] = drawings
end
-- Check if player is visible
local function IsVisible(character, origin)
if not ESP.VisibilityCheck then return true end
local params = RaycastParams.new()
params.FilterDescendantsInstances = {character, LocalPlayer.Character}
params.FilterType = Enum.RaycastFilterType.Blacklist
local result = workspace:Raycast(origin, (character.HumanoidRootPart.Position - origin).Unit * 1000, params)
return result and result.Instance:IsDescendantOf(character)
end
-- Update ESP elements with random variations
local function UpdateStealthESP()
if not ESP.Enabled then
for _, drawings in pairs(ESPStore) do
drawings.box.Visible = false
drawings.name.Visible = false
drawings.health.Visible = false
end
return
end
local currentTime = tick()
local cameraPos = Camera.CFrame.Position
for player, drawings in pairs(ESPStore) do
if player and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
local character = player.Character
local rootPart = character.HumanoidRootPart
local humanoid = character:FindFirstChildOfClass("Humanoid")
-- Skip teammates if TeamCheck enabled
if ESP.TeamCheck and player.Team == LocalPlayer.Team then
drawings.box.Visible = false
drawings.name.Visible = false
drawings.health.Visible = false
continue
end
-- Distance check
local distance = (rootPart.Position - cameraPos).Magnitude
if distance > ESP.MaxDistance then
drawings.box.Visible = false
drawings.name.Visible = false
drawings.health.Visible = false
continue
end
-- Visibility check
local visible = IsVisible(character, cameraPos)
local onScreen = true
-- Position calculations with random offset
if ESP.UseRandomOffset then
drawings.lastPos = rootPart.Position + Vector3.new(
math.random() * 0.2 - 0.1,
math.random() * 0.2 - 0.1,
math.random() * 0.2 - 0.1
)
else
drawings.lastPos = rootPart.Position
end
local rootPos, onScreen = Camera:WorldToViewportPoint(drawings.lastPos)
if onScreen and (visible or not ESP.VisibilityCheck) then
-- Update box
local headPos = character:FindFirstChild("Head") and Camera:WorldToViewportPoint(character.Head.Position) or rootPos
local boxSize = Vector2.new(
math.abs(headPos.X - rootPos.X) * 2.2,
math.abs(headPos.Y - rootPos.Y) * 3.5
)
drawings.box.PointA = Vector2.new(rootPos.X - boxSize.X/2, rootPos.Y - boxSize.Y/2)
drawings.box.PointB = Vector2.new(rootPos.X + boxSize.X/2, rootPos.Y - boxSize.Y/2)
drawings.box.PointC = Vector2.new(rootPos.X + boxSize.X/2, rootPos.Y + boxSize.Y/2)
drawings.box.PointD = Vector2.new(rootPos.X - boxSize.X/2, rootPos.Y + boxSize.Y/2)
drawings.box.Color = ESP.BoxColor
drawings.box.Visible = true
-- Update name
drawings.name.Text = player.Name
drawings.name.Position = Vector2.new(rootPos.X, rootPos.Y - boxSize.Y/2 - 18)
drawings.name.Color = ESP.TextColor
drawings.name.Visible = true
-- Update health
if humanoid then
drawings.health.Text = math.floor(humanoid.Health) .. " HP"
drawings.health.Position = Vector2.new(rootPos.X, rootPos.Y + boxSize.Y/2 + 5)
drawings.health.Color = Color3.fromHSV(humanoid.Health/humanoid.MaxHealth * 0.3, 1, 1)
drawings.health.Visible = true
end
drawings.lastSeen = currentTime
else
drawings.box.Visible = false
drawings.name.Visible = false
drawings.health.Visible = false
end
else
drawings.box.Visible = false
drawings.name.Visible = false
drawings.health.Visible = false
end
end
end
-- Initialize
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
CreateStealthESP(player)
end
end
-- Player management
Players.PlayerAdded:Connect(function(player)
CreateStealthESP(player)
end)
Players.PlayerRemoving:Connect(function(player)
if ESPStore[player] then
ESPStore[player].box:Remove()
ESPStore[player].name:Remove()
ESPStore[player].health:Remove()
ESPStore[player] = nil
end
end)
-- Optimized update loop
RunService.Heartbeat:Connect(function()
if tick() - LastUpdate > ESP.UpdateInterval then
UpdateStealthESP()
LastUpdate = tick()
end
end)
-- Control interface
return {
Toggle = function(state)
ESP.Enabled = state
end,
SetVisibilityCheck = function(state)
ESP.VisibilityCheck = state
end,
Destroy = function()
for _, drawings in pairs(ESPStore) do
drawings.box:Remove()
drawings.name:Remove()
drawings.health:Remove()
end
ESPStore = {}
end
}