KeylessUniversal
BR3X ESP
Run it
Copy the script and paste it into your executor.
BR3X ESP.lua · 1,147 lines
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Workspace = game:GetService("Workspace")
local UserInputService = game:GetService("UserInputService")
local SoundService = game:GetService("SoundService")
local LocalPlayer = Players.LocalPlayer
local Camera = Workspace.CurrentCamera
local IS_MOBILE = UserInputService.TouchEnabled and not UserInputService.KeyboardEnabled
local LOGO_ASSET_ID = 87261193955877
local MUSIC_URL = "https://raw.githubusercontent.com/robloxgamelol1/BR3XALITY-HUB-UNOFFICIAL/main/do%20not%20delete%20%F0%9F%93%B1%F0%9F%93%B1%F0%9F%93%B1.mp3"
local CACHE_DIR = "BR3XALITY"
local MUSIC_CACHE = "BR3XALITY/music.mp3"
local Config = {
Enabled = false,
BatMode = false,
FPS = 60,
MaxDistance = 500,
TeamCheck = false,
ForceFFA = false,
SkeletonEnabled = true,
SkeletonColor = Color3.fromRGB(0, 220, 255),
SkeletonThickness = 1.5,
SkeletonTransparency = 0.15,
SkeletonRainbow = false,
SkeletonRainbowSpeed = 1,
BoxEnabled = false,
BoxColor = Color3.fromRGB(255, 255, 255),
BoxThickness = 1,
BoxTransparency = 0.3,
BoxFill = false,
BoxFillTransparency = 0.85,
BoxRainbow = false,
Tracers = false,
TracerOrigin = "Bottom",
TracerColor = Color3.fromRGB(255, 255, 255),
TracerThickness = 1.5,
TracerTransparency = 0.15,
NameEnabled = false,
NameColor = Color3.fromRGB(255, 255, 255),
NameSize = 14,
NameOutline = true,
DistanceEnabled = false,
DistanceColor = Color3.fromRGB(200, 200, 200),
DistanceSize = 12,
HealthEnabled = false,
HealthWidth = 3,
HealthOffset = 6,
HealthBackground = true,
ToolEnabled = false,
ToolColor = Color3.fromRGB(255, 200, 100),
ToolSize = 12,
HeadDotEnabled = false,
HeadDotColor = Color3.fromRGB(255, 255, 255),
HeadDotSize = 4,
HeadDotFilled = true,
AimbotEnabled = false,
AimbotKey = Enum.KeyCode.L,
AimbotFOV = 90,
AimbotSmoothness = 0.25,
AimbotJitter = 0.015,
AimbotWallCheck = true,
AimbotPart = "Head",
AimbotStickyTime = 0.35,
AimbotDeadzone = 3,
AimbotPrediction = 0.135,
AimbotVisibleOnly = true,
MusicEnabled = false,
MusicVolume = 1,
MusicLooped = true,
}
local FPSOptions = {"30", "60", "90", "120"}
local RangeOptions = {"100", "250", "500", "750", "1000", "Unlimited"}
local RangeValues = {
["100"] = 100, ["250"] = 250, ["500"] = 500,
["750"] = 750, ["1000"] = 1000, ["Unlimited"] = math.huge,
}
local R6Bones = {
{"top:Head", "joint:Neck"}, {"joint:Neck", "center:Torso"},
{"center:Torso", "joint:Left Shoulder"}, {"joint:Left Shoulder", "bottom:Left Arm"},
{"center:Torso", "joint:Right Shoulder"}, {"joint:Right Shoulder", "bottom:Right Arm"},
{"center:Torso", "joint:Left Hip"}, {"joint:Left Hip", "bottom:Left Leg"},
{"center:Torso", "joint:Right Hip"}, {"joint:Right Hip", "bottom:Right Leg"},
}
local R15Bones = {
{"top:Head", "joint:Neck"}, {"joint:Neck", "joint:Waist"},
{"joint:Neck", "joint:LeftShoulder"}, {"joint:LeftShoulder", "joint:LeftElbow"},
{"joint:LeftElbow", "joint:LeftWrist"}, {"joint:LeftWrist", "center:LeftHand"},
{"joint:Neck", "joint:RightShoulder"}, {"joint:RightShoulder", "joint:RightElbow"},
{"joint:RightElbow", "joint:RightWrist"}, {"joint:RightWrist", "center:RightHand"},
{"joint:Waist", "joint:LeftHip"}, {"joint:LeftHip", "joint:LeftKnee"},
{"joint:LeftKnee", "joint:LeftAnkle"}, {"joint:LeftAnkle", "center:LeftFoot"},
{"joint:Waist", "joint:RightHip"}, {"joint:RightHip", "joint:RightKnee"},
{"joint:RightKnee", "joint:RightAnkle"}, {"joint:RightAnkle", "center:RightFoot"},
}
local useDrawing = (typeof(Drawing) == "table") and (typeof(Drawing.new) == "function")
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")
local OVERLAY_NAME = "BR3XALITY_SkeletonOverlay"
local oldOverlay = PlayerGui:FindFirstChild(OVERLAY_NAME)
if oldOverlay then oldOverlay:Destroy() end
local Gui = Instance.new("ScreenGui")
Gui.Name = OVERLAY_NAME
Gui.IgnoreGuiInset = true
Gui.ResetOnSpawn = false
Gui.DisplayOrder = 10
Gui.ZIndexBehavior = Enum.ZIndexBehavior.Global
Gui.Parent = PlayerGui
local Veil = Instance.new("Frame")
Veil.Name = "BatModeOverlay"
Veil.Size = UDim2.fromScale(1, 1)
Veil.BackgroundColor3 = Color3.new(0, 0, 0)
Veil.BackgroundTransparency = 0
Veil.BorderSizePixel = 0
Veil.Visible = false
Veil.Active = false
Veil.ZIndex = 1
Veil.Parent = Gui
local TeamCache = {}
local function getTeamAttribute(plr)
return plr:GetAttribute("Team")
or plr:GetAttribute("TeamName")
or plr:GetAttribute("team")
end
local function getTeamStandard(plr)
return plr.Team and plr.Team.Name or nil
end
local function getTeamFolder(plr)
local char = plr.Character
if not char then return nil end
local parent = char.Parent
if parent and parent ~= Workspace then
return parent.Name
end
return nil
end
local function resolveTeam(plr)
local cached = TeamCache[plr]
if cached ~= nil then return cached end
local t = getTeamFolder(plr) or getTeamAttribute(plr) or getTeamStandard(plr)
TeamCache[plr] = t
return t
end
local function isTeammate(plr)
if Config.ForceFFA then return false end
local a = resolveTeam(plr)
local b = resolveTeam(LocalPlayer)
if not a or not b then return false end
return a == b
end
Players.PlayerAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function() TeamCache[plr] = nil end)
plr:GetPropertyChangedSignal("Team"):Connect(function() TeamCache[plr] = nil end)
end)
Players.PlayerRemoving:Connect(function(plr) TeamCache[plr] = nil end)
LocalPlayer.CharacterAdded:Connect(function()
TeamCache[LocalPlayer] = nil
task.wait(0.5)
TeamCache[LocalPlayer] = nil
end)
LocalPlayer:GetPropertyChangedSignal("Team"):Connect(function() TeamCache[LocalPlayer] = nil end)
local rainbowHue = 0
local function healthColor(ratio)
if ratio > 0.66 then return Color3.fromRGB(0, 255, 0)
elseif ratio > 0.33 then return Color3.fromRGB(255, 200, 0)
else return Color3.fromRGB(255, 0, 0) end
end
local function ensureFolder()
if not isfolder or not makefolder then return false end
if not isfolder(CACHE_DIR) then makefolder(CACHE_DIR) end
return true
end
local function httpGet(url)
local ok, body = pcall(function()
if syn and syn.request then return syn.request({Url = url, Method = "GET"}).Body
elseif request then return request({Url = url, Method = "GET"}).Body
elseif http and http.request then return http.request({Url = url, Method = "GET"}).Body end
return nil
end)
return ok and body or nil
end
local function isMp3(body)
if not body or #body < 4 then return false end
local h = body:sub(1, 3)
if h == "ID3" then return true end
return body:byte(1) == 0xFF
end
local function downloadMusic()
if not writefile or not isfile then return false end
if not ensureFolder() then return false end
if isfile(MUSIC_CACHE) then
local e = readfile and readfile(MUSIC_CACHE)
if e and isMp3(e) then return true end
end
local body = httpGet(MUSIC_URL)
if not body or not isMp3(body) then return false end
pcall(writefile, MUSIC_CACHE, body)
return true
end
local function loadMusic()
if not downloadMusic() then return nil end
if not getcustomasset then return nil end
local ok, asset = pcall(getcustomasset, MUSIC_CACHE)
if ok and asset then return asset end
return nil
end
local function normalize(name)
return string.lower(string.gsub(name, "[^%w]", ""))
end
local function buildRig(model)
local rig = {Character = model, Parts = {}, Motors = {}, Humanoid = model:FindFirstChildOfClass("Humanoid")}
for _, item in ipairs(model:GetDescendants()) do
if item:IsA("BasePart") then
if not rig.Parts[item.Name] then rig.Parts[item.Name] = item end
elseif item:IsA("Motor6D") then
rig.Motors[normalize(item.Name)] = item
end
end
return rig
end
local function jointPosition(rig, name)
local motor = rig.Motors[normalize(name)]
if not motor then return nil end
if motor.Part0 then return (motor.Part0.CFrame * motor.C0).Position end
if motor.Part1 then return (motor.Part1.CFrame * motor.C1).Position end
return nil
end
local function partPosition(rig, name, edge)
local part = rig.Parts[name]
if not part then return nil end
if edge == "top" then return part.CFrame:PointToWorldSpace(Vector3.new(0, part.Size.Y / 2, 0)) end
if edge == "bottom" then return part.CFrame:PointToWorldSpace(Vector3.new(0, -part.Size.Y / 2, 0)) end
return part.Position
end
local function resolvePoint(rig, key)
local kind, name = key:match("^([^:]+):(.+)$")
if not kind then return nil end
if kind == "joint" then return jointPosition(rig, name) end
if kind == "top" or kind == "bottom" then return partPosition(rig, name, kind) end
if kind == "center" then return partPosition(rig, name) end
return nil
end
local function getBones(rig)
if rig.Humanoid and rig.Humanoid.RigType == Enum.HumanoidRigType.R15 then return R15Bones end
return R6Bones
end
local Drawings = {}
local Accumulator = 0
local MAX_BONES = math.max(#R6Bones, #R15Bones)
local function newObj(t, props)
if not useDrawing then return nil end
local o = Drawing.new(t)
for k, v in pairs(props) do o[k] = v end
return o
end
local function createDrawing(player)
if Drawings[player] then return end
local entry = {
Player = player,
Lines = {}, Rig = nil,
Tracer = nil, Box = nil, BoxFill = nil,
NameText = nil, DistText = nil,
HealthBg = nil, HealthBar = nil,
ToolText = nil, HeadCircle = nil,
}
if useDrawing then
for i = 1, MAX_BONES do
entry.Lines[i] = newObj("Line", {
Thickness = Config.SkeletonThickness,
Color = Config.SkeletonColor,
Transparency = Config.SkeletonTransparency,
Visible = false, ZIndex = 2,
})
end
entry.Tracer = newObj("Line", {
Thickness = Config.TracerThickness, Color = Config.TracerColor,
Transparency = Config.TracerTransparency, Visible = false, ZIndex = 1,
})
entry.Box = newObj("Square", {
Thickness = Config.BoxThickness, Color = Config.BoxColor,
Transparency = Config.BoxTransparency, Filled = false, Visible = false, ZIndex = 1,
})
entry.BoxFill = newObj("Square", {
Thickness = 0, Color = Config.BoxColor,
Transparency = Config.BoxFillTransparency, Filled = true, Visible = false, ZIndex = 0,
})
entry.NameText = newObj("Text", {
Size = Config.NameSize, Color = Config.NameColor,
Outline = true, Center = true, Visible = false, ZIndex = 3,
})
entry.DistText = newObj("Text", {
Size = Config.DistanceSize, Color = Config.DistanceColor,
Outline = true, Center = true, Visible = false, ZIndex = 3,
})
entry.HealthBg = newObj("Line", {
Thickness = Config.HealthWidth + 2, Color = Color3.fromRGB(0, 0, 0),
Transparency = 0.3, Visible = false, ZIndex = 1,
})
entry.HealthBar = newObj("Line", {
Thickness = Config.HealthWidth, Color = Color3.fromRGB(0, 255, 0),
Transparency = 0, Visible = false, ZIndex = 2,
})
entry.ToolText = newObj("Text", {
Size = Config.ToolSize, Color = Config.ToolColor,
Outline = true, Center = true, Visible = false, ZIndex = 3,
})
entry.HeadCircle = newObj("Circle", {
Thickness = 1, NumSides = 32, Radius = Config.HeadDotSize,
Color = Config.HeadDotColor, Filled = Config.HeadDotFilled,
Transparency = 0.15, Visible = false, ZIndex = 3,
})
end
Drawings[player] = entry
end
local function removeDrawing(player)
local entry = Drawings[player]
if not entry then return end
for _, line in ipairs(entry.Lines) do pcall(function() line:Destroy() end) end
local extras = {"Tracer","Box","BoxFill","NameText","DistText","HealthBg","HealthBar","ToolText","HeadCircle"}
for _, key in ipairs(extras) do
if entry[key] then pcall(function() entry[key]:Destroy() end) end
end
Drawings[player] = nil
end
local function hideAll(entry)
for _, line in ipairs(entry.Lines) do line.Visible = false end
local extras = {"Tracer","Box","BoxFill","NameText","DistText","HealthBg","HealthBar","ToolText","HeadCircle"}
for _, key in ipairs(extras) do
if entry[key] then entry[key].Visible = false end
end
end
local function project(camera, position)
if not position then return nil end
local point = camera:WorldToViewportPoint(position)
if point.Z <= 0 then return nil end
return Vector2.new(point.X, point.Y), point.Z
end
local function getTracerOrigin(camera)
local origin = Config.TracerOrigin
local vp = camera.ViewportSize
if origin == "Bottom" then return Vector2.new(vp.X / 2, vp.Y)
elseif origin == "Top" then return Vector2.new(vp.X / 2, 0)
elseif origin == "Center" then return Vector2.new(vp.X / 2, vp.Y / 2)
elseif origin == "Mouse" then
local m = UserInputService:GetMouseLocation()
return Vector2.new(m.X, m.Y)
end
return Vector2.new(vp.X / 2, vp.Y)
end
local function shouldDraw(player, localRoot)
if player == LocalPlayer then return false end
if Config.TeamCheck and isTeammate(player) then return false end
local char = player.Character
if not char then return false end
local hum = char:FindFirstChildOfClass("Humanoid")
local root = char:FindFirstChild("HumanoidRootPart")
if not hum or not root or hum.Health <= 0 then return false end
if localRoot and (root.Position - localRoot.Position).Magnitude > Config.MaxDistance then
return false
end
return true, char, hum, root
end
local function computeBounds(rig, camera)
local minX, minY = math.huge, math.huge
local maxX, maxY = -math.huge, -math.huge
local boneList = getBones(rig)
for _, bone in ipairs(boneList) do
for i = 1, 2 do
local pos = resolvePoint(rig, bone[i])
if pos then
local screenPos = project(camera, pos)
if screenPos then
minX = math.min(minX, screenPos.X)
maxX = math.max(maxX, screenPos.X)
minY = math.min(minY, screenPos.Y)
maxY = math.max(maxY, screenPos.Y)
end
end
end
end
if minX == math.huge then return nil end
local padding = 4
return {
minX = minX - padding, maxX = maxX + padding,
minY = minY - padding, maxY = maxY + padding,
}
end
local function updatePlayer(player, entry, camera, localRoot, rainbowColor)
if not camera then hideAll(entry) return end
local ok, char, hum, root = shouldDraw(player, localRoot)
if not ok then hideAll(entry) return end
if not entry.Rig or entry.Rig.Character ~= char then
entry.Rig = buildRig(char)
end
local rig = entry.Rig
if not rig.Parts.Head or not rig.Parts.HumanoidRootPart then
entry.Rig = buildRig(char)
rig = entry.Rig
end
local boneColor = Config.SkeletonRainbow and rainbowColor or Config.SkeletonColor
local boxColor = Config.BoxRainbow and rainbowColor or Config.BoxColor
if Config.SkeletonEnabled and Config.Enabled then
local bones = getBones(rig)
for index, line in ipairs(entry.Lines) do
local bone = bones[index]
if bone then
local a = resolvePoint(rig, bone[1])
local b = resolvePoint(rig, bone[2])
local pa = project(camera, a)
local pb = project(camera, b)
if pa and pb then
line.From = pa
line.To = pb
line.Color = boneColor
line.Visible = true
else
line.Visible = false
end
else
line.Visible = false
end
end
else
for _, line in ipairs(entry.Lines) do line.Visible = false end
end
local bounds = computeBounds(rig, camera)
if Config.BoxEnabled and Config.Enabled and bounds and entry.Box then
local tl = Vector2.new(bounds.minX, bounds.minY)
local br = Vector2.new(bounds.maxX, bounds.maxY)
entry.Box.Size = br - tl
entry.Box.Position = tl
entry.Box.Color = boxColor
entry.Box.Thickness = Config.BoxThickness
entry.Box.Transparency = Config.BoxTransparency
entry.Box.Visible = true
if Config.BoxFill and entry.BoxFill then
entry.BoxFill.Size = br - tl
entry.BoxFill.Position = tl
entry.BoxFill.Color = boxColor
entry.BoxFill.Transparency = Config.BoxFillTransparency
entry.BoxFill.Visible = true
elseif entry.BoxFill then
entry.BoxFill.Visible = false
end
else
if entry.Box then entry.Box.Visible = false end
if entry.BoxFill then entry.BoxFill.Visible = false end
end
if Config.Tracers and Config.Enabled and entry.Tracer then
local headPoint = project(camera, partPosition(rig, "Head", "top"))
if headPoint then
entry.Tracer.From = getTracerOrigin(camera)
entry.Tracer.To = headPoint
entry.Tracer.Color = Config.TracerColor
entry.Tracer.Thickness = Config.TracerThickness
entry.Tracer.Transparency = Config.TracerTransparency
entry.Tracer.Visible = true
else
entry.Tracer.Visible = false
end
elseif entry.Tracer then
entry.Tracer.Visible = false
end
local headTop = project(camera, partPosition(rig, "Head", "top"))
local headBottom = project(camera, partPosition(rig, "Head", "bottom"))
if Config.NameEnabled and Config.Enabled and entry.NameText and headTop then
entry.NameText.Text = player.Name
entry.NameText.Position = Vector2.new(headTop.X, headTop.Y - Config.NameSize - 6)
entry.NameText.Color = Config.NameColor
entry.NameText.Size = Config.NameSize
entry.NameText.Outline = Config.NameOutline
entry.NameText.Visible = true
elseif entry.NameText then
entry.NameText.Visible = false
end
if Config.DistanceEnabled and Config.Enabled and entry.DistText and headBottom then
local dist = localRoot and math.floor((root.Position - localRoot.Position).Magnitude) or 0
entry.DistText.Text = tostring(dist) .. "m"
entry.DistText.Position = Vector2.new(headBottom.X, headBottom.Y + 4)
entry.DistText.Color = Config.DistanceColor
entry.DistText.Size = Config.DistanceSize
entry.DistText.Visible = true
elseif entry.DistText then
entry.DistText.Visible = false
end
if Config.HealthEnabled and Config.Enabled and bounds and entry.HealthBar and entry.HealthBg then
local ratio = math.clamp(hum.Health / math.max(hum.MaxHealth, 1), 0, 1)
local barX = bounds.minX - Config.HealthOffset
local topY = bounds.minY
local botY = bounds.maxY
local fillBotY = botY - (botY - topY) * ratio
entry.HealthBg.From = Vector2.new(barX, topY)
entry.HealthBg.To = Vector2.new(barX, botY)
entry.HealthBg.Visible = Config.HealthBackground
entry.HealthBar.From = Vector2.new(barX, fillBotY)
entry.HealthBar.To = Vector2.new(barX, botY)
entry.HealthBar.Color = healthColor(ratio)
entry.HealthBar.Thickness = Config.HealthWidth
entry.HealthBar.Visible = true
else
if entry.HealthBar then entry.HealthBar.Visible = false end
if entry.HealthBg then entry.HealthBg.Visible = false end
end
if Config.ToolEnabled and Config.Enabled and entry.ToolText and headBottom then
local tool = char:FindFirstChildOfClass("Tool")
if tool then
entry.ToolText.Text = tool.Name
entry.ToolText.Position = Vector2.new(headBottom.X, headBottom.Y + Config.DistanceSize + 6)
entry.ToolText.Color = Config.ToolColor
entry.ToolText.Size = Config.ToolSize
entry.ToolText.Visible = true
else
entry.ToolText.Visible = false
end
elseif entry.ToolText then
entry.ToolText.Visible = false
end
if Config.HeadDotEnabled and Config.Enabled and entry.HeadCircle and headTop and headBottom then
local center = (headTop + headBottom) * 0.5
local radius = math.max((headTop - headBottom).Magnitude * 0.5, 3)
entry.HeadCircle.Position = center
entry.HeadCircle.Radius = radius + Config.HeadDotSize
entry.HeadCircle.Color = Config.HeadDotColor
entry.HeadCircle.Filled = Config.HeadDotFilled
entry.HeadCircle.Visible = true
elseif entry.HeadCircle then
entry.HeadCircle.Visible = false
end
end
local function isVisibleFromCamera(targetChar, targetPart)
local part = targetChar:FindFirstChild(targetPart)
if not part then return false end
local origin = Camera.CFrame.Position
local direction = part.Position - origin
local params = RaycastParams.new()
params.FilterDescendantsInstances = {LocalPlayer.Character, targetChar}
params.FilterType = Enum.RaycastFilterType.Blacklist
return Workspace:Raycast(origin, direction, params) == nil
end
local function getPredictedPosition(part, prediction)
if not part then return nil end
if prediction <= 0 then return part.Position end
return part.Position + (part.Velocity * prediction)
end
local aimLastTarget = nil
local aimLastTargetTime = 0
local function aimbotIsValid(char)
local hum = char:FindFirstChildOfClass("Humanoid")
local part = char:FindFirstChild(Config.AimbotPart)
if not hum or not part or hum.Health <= 0 then return false end
local plr = Players:GetPlayerFromCharacter(char)
if plr and Config.TeamCheck and isTeammate(plr) then return false end
return true
end
local function aimbotScore(char)
local part = char:FindFirstChild(Config.AimbotPart)
if not part then return nil end
local predicted = getPredictedPosition(part, Config.AimbotPrediction)
if not predicted then return nil end
local screenPos, depth = project(Camera, predicted)
if not screenPos or depth <= 0 then return nil end
local center = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
local dist = (screenPos - center).Magnitude
if dist > Config.AimbotFOV then return nil end
if Config.AimbotVisibleOnly then
if not isVisibleFromCamera(char, Config.AimbotPart) then return nil end
elseif Config.AimbotWallCheck then
local origin = Camera.CFrame.Position
local direction = part.Position - origin
local params = RaycastParams.new()
params.FilterDescendantsInstances = {LocalPlayer.Character, char}
params.FilterType = Enum.RaycastFilterType.Blacklist
local result = Workspace:Raycast(origin, direction, params)
if result and result.Instance and not result.Instance:IsDescendantOf(char) then return nil end
end
return dist
end
local function aimbotSelectTarget()
local best, bestScore = nil, math.huge
for _, char in ipairs(Workspace:GetChildren()) do
if char:IsA("Model") and char ~= LocalPlayer.Character and aimbotIsValid(char) then
local score = aimbotScore(char)
if score and score < bestScore then best, bestScore = char, score end
end
end
local now = tick()
if best then
aimLastTarget = best
aimLastTargetTime = now
return best
end
if aimLastTarget and (now - aimLastTargetTime) < Config.AimbotStickyTime then
if aimLastTarget.Parent and aimbotIsValid(aimLastTarget) then
local part = aimLastTarget:FindFirstChild(Config.AimbotPart)
if part then
local screenPos, depth = project(Camera, part.Position)
if screenPos and depth > 0 then
local center = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
if (screenPos - center).Magnitude <= Config.AimbotFOV * 1.25 then
return aimLastTarget
end
end
end
end
aimLastTarget = nil
end
return nil
end
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.KeyCode == Config.AimbotKey then
Config.AimbotEnabled = not Config.AimbotEnabled
end
end)
RunService.RenderStepped:Connect(function()
if not Config.AimbotEnabled then return end
local target = aimbotSelectTarget()
if not target then return end
local part = target:FindFirstChild(Config.AimbotPart)
if not part then return end
local predicted = getPredictedPosition(part, Config.AimbotPrediction)
if not predicted then return end
local targetCFrame = CFrame.lookAt(Camera.CFrame.Position, predicted)
local screenPos = project(Camera, predicted)
if screenPos then
local delta = (screenPos - Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)).Magnitude
if delta < Config.AimbotDeadzone then return end
end
local jitter = Vector3.new(
(math.random() - 0.5) * Config.AimbotJitter,
(math.random() - 0.5) * Config.AimbotJitter,
0
)
Camera.CFrame = Camera.CFrame:Lerp(targetCFrame * CFrame.new(jitter), Config.AimbotSmoothness)
end)
local musicSound = nil
local musicLoaded = false
local function playMusic()
if musicLoaded and musicSound then musicSound:Play() return true end
local asset = loadMusic()
if not asset then return false end
if not musicSound then
musicSound = Instance.new("Sound")
musicSound.Name = "BR3XALITY_Music"
musicSound.Looped = Config.MusicLooped
musicSound.Volume = Config.MusicVolume
musicSound.Parent = SoundService
end
musicSound.SoundId = asset
musicSound.Volume = Config.MusicVolume
musicSound:Play()
musicLoaded = true
return true
end
local function stopMusic() if musicSound then musicSound:Stop() end end
local function setMusicVolume(v)
v = math.clamp(v, 0, 10)
Config.MusicVolume = v
if musicSound then musicSound.Volume = v end
end
local function setMusicLoop(v)
Config.MusicLooped = v
if musicSound then musicSound.Looped = v end
end
local function onPlayerAdded(player)
createDrawing(player)
player.CharacterAdded:Connect(function()
local entry = Drawings[player]
if entry then entry.Rig = nil end
TeamCache[player] = nil
end)
player.CharacterRemoving:Connect(function()
local entry = Drawings[player]
if entry then entry.Rig = nil end
end)
end
for _, player in ipairs(Players:GetPlayers()) do onPlayerAdded(player) end
Players.PlayerAdded:Connect(onPlayerAdded)
Players.PlayerRemoving:Connect(removeDrawing)
local conn = RunService.RenderStepped:Connect(function(dt)
rainbowHue = (rainbowHue + 0.003 * Config.SkeletonRainbowSpeed) % 1
Accumulator = Accumulator + dt
local interval = 1 / Config.FPS
if Accumulator < interval then return end
Accumulator = Accumulator % interval
if not Camera then Camera = Workspace.CurrentCamera end
local character = LocalPlayer.Character
local localRoot = character and character:FindFirstChild("HumanoidRootPart")
local rc = Color3.fromHSV(rainbowHue, 1, 1)
for player, entry in pairs(Drawings) do
if not player.Parent then
removeDrawing(player)
else
local ok, err = pcall(updatePlayer, player, entry, Camera, localRoot, rc)
if not ok then
warn("[BR3XALITY ESP] " .. tostring(err))
end
end
end
end)
local function refreshUI() Veil.Visible = Config.BatMode end
local function showVolumeWarning(onConfirm, onCancel)
local old = Gui:FindFirstChild("VolumeWarning")
if old then old:Destroy() end
local backdrop = Instance.new("Frame")
backdrop.Name = "VolumeWarning"
backdrop.Size = UDim2.fromScale(1, 1)
backdrop.BackgroundColor3 = Color3.new(0, 0, 0)
backdrop.BackgroundTransparency = 0.5
backdrop.BorderSizePixel = 0
backdrop.ZIndex = 500
backdrop.Parent = Gui
local panel = Instance.new("Frame")
panel.Size = UDim2.fromOffset(320, 180)
panel.Position = UDim2.new(0.5, -160, 0.5, -90)
panel.BackgroundColor3 = Color3.fromRGB(15, 15, 15)
panel.BorderSizePixel = 0
panel.ZIndex = 501
panel.Parent = backdrop
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 10)
corner.Parent = panel
local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(255, 80, 80)
stroke.Thickness = 2
stroke.Parent = panel
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 40)
title.Position = UDim2.fromOffset(0, 10)
title.BackgroundTransparency = 1
title.Text = "WARNING"
title.TextColor3 = Color3.fromRGB(255, 80, 80)
title.TextSize = 22
title.Font = Enum.Font.GothamBold
title.ZIndex = 502
title.Parent = panel
local body = Instance.new("TextLabel")
body.Size = UDim2.new(1, -30, 0, 70)
body.Position = UDim2.fromOffset(15, 55)
body.BackgroundTransparency = 1
body.Text = "Volume above 2 can damage hearing.\nConfirm to raise volume anyway?"
body.TextColor3 = Color3.fromRGB(255, 255, 255)
body.TextSize = 14
body.Font = Enum.Font.Gotham
body.TextWrapped = true
body.ZIndex = 502
body.Parent = panel
local yes = Instance.new("TextButton")
yes.Size = UDim2.fromOffset(120, 36)
yes.Position = UDim2.new(0, 20, 1, -50)
yes.BackgroundColor3 = Color3.fromRGB(200, 40, 40)
yes.Text = "Yes, raise it"
yes.TextColor3 = Color3.fromRGB(255, 255, 255)
yes.TextSize = 13
yes.Font = Enum.Font.GothamMedium
yes.BorderSizePixel = 0
yes.ZIndex = 502
yes.Parent = panel
local yc = Instance.new("UICorner")
yc.CornerRadius = UDim.new(0, 6)
yc.Parent = yes
local no = Instance.new("TextButton")
no.Size = UDim2.fromOffset(120, 36)
no.Position = UDim2.new(1, -140, 1, -50)
no.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
no.Text = "Cancel"
no.TextColor3 = Color3.fromRGB(255, 255, 255)
no.TextSize = 13
no.Font = Enum.Font.GothamMedium
no.BorderSizePixel = 0
no.ZIndex = 502
no.Parent = panel
local nc = Instance.new("UICorner")
nc.CornerRadius = UDim.new(0, 6)
nc.Parent = no
yes.MouseButton1Click:Connect(function()
backdrop:Destroy()
if onConfirm then onConfirm() end
end)
no.MouseButton1Click:Connect(function()
backdrop:Destroy()
if onCancel then onCancel() end
end)
end
local BW_THEME = {
Text = Color3.fromRGB(255, 255, 255),
Placeholder = Color3.fromRGB(150, 150, 150),
Background = Color3.fromRGB(10, 10, 10),
BackgroundSecondary = Color3.fromRGB(20, 20, 20),
BackgroundTertiary = Color3.fromRGB(30, 30, 30),
MainAccent = Color3.fromRGB(255, 255, 255),
MainTransparency = 0.05,
Border = Color3.fromRGB(60, 60, 60),
ToggleOn = Color3.fromRGB(255, 255, 255),
ToggleOff = Color3.fromRGB(60, 60, 60),
SliderBackground = Color3.fromRGB(40, 40, 40),
SliderFill = Color3.fromRGB(255, 255, 255),
}
local Rayfield = loadstring(game:HttpGet("https://sirius.menu/gen2"))()
local Window = Rayfield:CreateWindow({
name = "BR3XALITY",
subtitle = IS_MOBILE and "Android" or "Visualizer",
sidebarLayout = true,
Icon = LOGO_ASSET_ID,
Theme = BW_THEME,
})
local Visuals = Window:CreateTab({ name = "Visuals" })
Visuals:CreateToggle({
name = "Master ESP",
value = Config.Enabled,
callback = function(v) Config.Enabled = v end,
})
Visuals:CreateToggle({
name = "Team Check",
value = Config.TeamCheck,
callback = function(v) Config.TeamCheck = v end,
})
Visuals:CreateToggle({
name = "Force FFA",
value = Config.ForceFFA,
callback = function(v) Config.ForceFFA = v end,
})
Visuals:CreateToggle({
name = "Bat Mode",
value = false,
callback = function(v) Config.BatMode = v; refreshUI() end,
})
Visuals:CreateDropdown({
name = "Update Rate",
options = FPSOptions,
value = "60",
callback = function(v) Config.FPS = tonumber(v) or 60; Accumulator = 0 end,
})
Visuals:CreateDropdown({
name = "Maximum Distance",
options = RangeOptions,
value = "500",
callback = function(v) Config.MaxDistance = RangeValues[v] or 500 end,
})
local ESPTab = Window:CreateTab({ name = "ESP" })
ESPTab:CreateSection({ name = "Skeleton" })
ESPTab:CreateToggle({ name = "Skeleton Enabled", value = Config.SkeletonEnabled,
callback = function(v) Config.SkeletonEnabled = v end })
ESPTab:CreateColorPicker({ name = "Skeleton Color", color = Config.SkeletonColor,
callback = function(v)
Config.SkeletonColor = v
for _, e in pairs(Drawings) do
for _, l in ipairs(e.Lines) do
if not Config.SkeletonRainbow then l.Color = v end
end
end
end })
ESPTab:CreateSlider({ name = "Skeleton Thickness", range = {0.5, 5}, increment = 0.1, value = Config.SkeletonThickness,
callback = function(v)
Config.SkeletonThickness = v
for _, e in pairs(Drawings) do
for _, l in ipairs(e.Lines) do l.Thickness = v end
end
end })
ESPTab:CreateSlider({ name = "Skeleton Transparency", range = {0, 1}, increment = 0.05, value = Config.SkeletonTransparency,
callback = function(v)
Config.SkeletonTransparency = v
for _, e in pairs(Drawings) do
for _, l in ipairs(e.Lines) do l.Transparency = v end
end
end })
ESPTab:CreateToggle({ name = "Rainbow Skeleton", value = Config.SkeletonRainbow,
callback = function(v) Config.SkeletonRainbow = v end })
ESPTab:CreateSlider({ name = "Rainbow Speed", range = {0.1, 5}, increment = 0.1, value = Config.SkeletonRainbowSpeed,
callback = function(v) Config.SkeletonRainbowSpeed = v end })
ESPTab:CreateSection({ name = "Bounding Box" })
ESPTab:CreateToggle({ name = "Box Enabled", value = Config.BoxEnabled,
callback = function(v) Config.BoxEnabled = v end })
ESPTab:CreateColorPicker({ name = "Box Color", color = Config.BoxColor,
callback = function(v)
Config.BoxColor = v
for _, e in pairs(Drawings) do
if e.Box and not Config.BoxRainbow then e.Box.Color = v end
if e.BoxFill and not Config.BoxRainbow then e.BoxFill.Color = v end
end
end })
ESPTab:CreateSlider({ name = "Box Thickness", range = {0.5, 5}, increment = 0.1, value = Config.BoxThickness,
callback = function(v) Config.BoxThickness = v end })
ESPTab:CreateSlider({ name = "Box Transparency", range = {0, 1}, increment = 0.05, value = Config.BoxTransparency,
callback = function(v) Config.BoxTransparency = v end })
ESPTab:CreateToggle({ name = "Box Fill", value = Config.BoxFill,
callback = function(v) Config.BoxFill = v end })
ESPTab:CreateSlider({ name = "Box Fill Transparency", range = {0, 1}, increment = 0.05, value = Config.BoxFillTransparency,
callback = function(v) Config.BoxFillTransparency = v end })
ESPTab:CreateToggle({ name = "Rainbow Box", value = Config.BoxRainbow,
callback = function(v) Config.BoxRainbow = v end })
ESPTab:CreateSection({ name = "Tracers" })
ESPTab:CreateToggle({ name = "Tracers Enabled", value = Config.Tracers,
callback = function(v) Config.Tracers = v end })
ESPTab:CreateDropdown({ name = "Tracer Origin", options = {"Bottom", "Center", "Top", "Mouse"}, value = "Bottom",
callback = function(v) Config.TracerOrigin = v end })
ESPTab:CreateColorPicker({ name = "Tracer Color", color = Config.TracerColor,
callback = function(v)
Config.TracerColor = v
for _, e in pairs(Drawings) do if e.Tracer then e.Tracer.Color = v end end
end })
ESPTab:CreateSlider({ name = "Tracer Thickness", range = {0.5, 5}, increment = 0.1, value = Config.TracerThickness,
callback = function(v) Config.TracerThickness = v end })
ESPTab:CreateSlider({ name = "Tracer Transparency", range = {0, 1}, increment = 0.05, value = Config.TracerTransparency,
callback = function(v) Config.TracerTransparency = v end })
ESPTab:CreateSection({ name = "Name Tag" })
ESPTab:CreateToggle({ name = "Name Enabled", value = Config.NameEnabled,
callback = function(v) Config.NameEnabled = v end })
ESPTab:CreateColorPicker({ name = "Name Color", color = Config.NameColor,
callback = function(v)
Config.NameColor = v
for _, e in pairs(Drawings) do if e.NameText then e.NameText.Color = v end end
end })
ESPTab:CreateSlider({ name = "Name Size", range = {8, 30}, increment = 1, value = Config.NameSize,
callback = function(v)
Config.NameSize = v
for _, e in pairs(Drawings) do if e.NameText then e.NameText.Size = v end end
end })
ESPTab:CreateToggle({ name = "Name Outline", value = Config.NameOutline,
callback = function(v)
Config.NameOutline = v
for _, e in pairs(Drawings) do if e.NameText then e.NameText.Outline = v end end
end })
ESPTab:CreateSection({ name = "Distance" })
ESPTab:CreateToggle({ name = "Distance Enabled", value = Config.DistanceEnabled,
callback = function(v) Config.DistanceEnabled = v end })
ESPTab:CreateColorPicker({ name = "Distance Color", color = Config.DistanceColor,
callback = function(v)
Config.DistanceColor = v
for _, e in pairs(Drawings) do if e.DistText then e.DistText.Color = v end end
end })
ESPTab:CreateSlider({ name = "Distance Size", range = {8, 30}, increment = 1, value = Config.DistanceSize,
callback = function(v)
Config.DistanceSize = v
for _, e in pairs(Drawings) do if e.DistText then e.DistText.Size = v end end
end })
ESPTab:CreateSection({ name = "Health Bar" })
ESPTab:CreateToggle({ name = "Health Bar Enabled", value = Config.HealthEnabled,
callback = function(v) Config.HealthEnabled = v end })
ESPTab:CreateSlider({ name = "Health Bar Width", range = {1, 10}, increment = 0.5, value = Config.HealthWidth,
callback = function(v)
Config.HealthWidth = v
for _, e in pairs(Drawings) do if e.HealthBar then e.HealthBar.Thickness = v end end
end })
ESPTab:CreateSlider({ name = "Health Bar Offset", range = {1, 30}, increment = 1, value = Config.HealthOffset,
callback = function(v) Config.HealthOffset = v end })
ESPTab:CreateToggle({ name = "Health Bar Background", value = Config.HealthBackground,
callback = function(v) Config.HealthBackground = v end })
ESPTab:CreateSection({ name = "Tool Display" })
ESPTab:CreateToggle({ name = "Tool Enabled", value = Config.ToolEnabled,
callback = function(v) Config.ToolEnabled = v end })
ESPTab:CreateColorPicker({ name = "Tool Color", color = Config.ToolColor,
callback = function(v)
Config.ToolColor = v
for _, e in pairs(Drawings) do if e.ToolText then e.ToolText.Color = v end end
end })
ESPTab:CreateSlider({ name = "Tool Text Size", range = {8, 30}, increment = 1, value = Config.ToolSize,
callback = function(v)
Config.ToolSize = v
for _, e in pairs(Drawings) do if e.ToolText then e.ToolText.Size = v end end
end })
ESPTab:CreateSection({ name = "Head Dot" })
ESPTab:CreateToggle({ name = "Head Dot Enabled", value = Config.HeadDotEnabled,
callback = function(v) Config.HeadDotEnabled = v end })
ESPTab:CreateColorPicker({ name = "Head Dot Color", color = Config.HeadDotColor,
callback = function(v)
Config.HeadDotColor = v
for _, e in pairs(Drawings) do if e.HeadCircle then e.HeadCircle.Color = v end end
end })
ESPTab:CreateSlider({ name = "Head Dot Size", range = {0, 20}, increment = 1, value = Config.HeadDotSize,
callback = function(v) Config.HeadDotSize = v end })
ESPTab:CreateToggle({ name = "Head Dot Filled", value = Config.HeadDotFilled,
callback = function(v)
Config.HeadDotFilled = v
for _, e in pairs(Drawings) do if e.HeadCircle then e.HeadCircle.Filled = v end end
end })
local Combat = Window:CreateTab({ name = "Combat" })
Combat:CreateToggle({ name = "Aimbot", value = false,
callback = function(v) Config.AimbotEnabled = v end })
Combat:CreateKeybind({ name = "Aimbot Key", key = IS_MOBILE and "ButtonX" or "L",
callback = function(v) Config.AimbotKey = v end })
Combat:CreateSlider({ name = "Aimbot FOV", range = {10, 360}, increment = 5, value = 90,
callback = function(v) Config.AimbotFOV = v end })
Combat:CreateSlider({ name = "Aimbot Smoothness", range = {0.05, 1}, increment = 0.05, value = 0.25,
callback = function(v) Config.AimbotSmoothness = v end })
Combat:CreateSlider({ name = "Aimbot Jitter", range = {0, 0.1}, increment = 0.005, value = 0.015,
callback = function(v) Config.AimbotJitter = v end })
Combat:CreateSlider({ name = "Aimbot Prediction", range = {0, 0.5}, increment = 0.005, value = 0.135,
callback = function(v) Config.AimbotPrediction = v end })
Combat:CreateSlider({ name = "Aimbot Sticky Time", range = {0, 1}, increment = 0.05, value = 0.35,
callback = function(v) Config.AimbotStickyTime = v end })
Combat:CreateSlider({ name = "Aimbot Deadzone", range = {0, 20}, increment = 1, value = 3,
callback = function(v) Config.AimbotDeadzone = v end })
Combat:CreateDropdown({ name = "Aimbot Part", options = {"Head", "HumanoidRootPart", "UpperTorso", "LowerTorso"}, value = "Head",
callback = function(v) Config.AimbotPart = v end })
Combat:CreateToggle({ name = "Aimbot Wall Check", value = true,
callback = function(v) Config.AimbotWallCheck = v end })
Combat:CreateToggle({ name = "Aimbot Visible Only", value = true,
callback = function(v) Config.AimbotVisibleOnly = v end })
local Music = Window:CreateTab({ name = "Music" })
Music:CreateToggle({ name = "Enable Music", value = false,
callback = function(v)
Config.MusicEnabled = v
if v then
if not playMusic() then Config.MusicEnabled = false end
else
stopMusic()
end
end })
Music:CreateButton({ name = "Play", callback = function() playMusic() end })
Music:CreateButton({ name = "Stop", callback = function() stopMusic() end })
Music:CreateSlider({
name = "Volume",
range = {0, 10},
increment = 0.1,
value = 1,
callback = function(v)
if v >= 3 then
showVolumeWarning(
function()
setMusicVolume(v)
end,
function()
setMusicVolume(Config.MusicVolume)
end
)
else
setMusicVolume(v)
end
end,
})
Music:CreateToggle({ name = "Loop", value = true,
callback = function(v) setMusicLoop(v) end })Loads code from the internet. It downloads more code when it runs (loadstring + HttpGet), which can change after it was posted. From: raw.githubusercontent.com, sirius.menu.
Features
- Has
- Esp
- Aimbot
- Silent aim-BETA
- One song



