Advertisement
Spxdzr

Boxes/Tracers For Brokens

May 10th, 2025
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.75 KB | None | 0 0
  1. local Players = game:GetService("Players")
  2. local RunService = game:GetService("RunService")
  3. local Workspace = game:GetService("Workspace")
  4. local LocalPlayer = Players.LocalPlayer
  5. local Camera = Workspace.CurrentCamera
  6. local Box_Color = Color3.fromRGB(0, 255, 50)
  7. local Box_Thickness = 1.4
  8. local Box_Transparency = 0
  9. local Tracers = true
  10. local Tracer_Color = Color3.fromRGB(0, 255, 50)
  11. local Tracer_Thickness = 1.4
  12. local Tracer_Transparency = 0
  13. local Autothickness = false
  14. local Team_Check = true
  15. local red = Color3.fromRGB(227, 52, 52)
  16. local green = Color3.fromRGB(88, 217, 24)
  17. local espLines = {}
  18. local function NewLine()
  19.     local line = Drawing.new("Line")
  20.     line.Visible = false
  21.     line.From = Vector2.new(0, 0)
  22.     line.To = Vector2.new(1, 1)
  23.     line.Color = Box_Color
  24.     line.Thickness = Box_Thickness
  25.     line.Transparency = Box_Transparency
  26.     return line
  27. end
  28. local function CleanupESP(player)
  29.     if espLines[player] then
  30.         for _, line in pairs(espLines[player]) do
  31.             if line then
  32.                 line:Remove()
  33.             end
  34.         end
  35.         espLines[player] = nil
  36.     end
  37. end
  38. local function ESP()
  39.     for _, v in pairs(Players:GetPlayers()) do
  40.         if v ~= LocalPlayer and v.Character and v.Character:FindFirstChild("Humanoid") and v.Character:FindFirstChild("HumanoidRootPart") and v.Character:FindFirstChild("Head") then
  41.             if not espLines[v] then
  42.                 espLines[v] = {
  43.                     line1 = NewLine(), line2 = NewLine(), line3 = NewLine(), line4 = NewLine(),
  44.                     line5 = NewLine(), line6 = NewLine(), line7 = NewLine(), line8 = NewLine(),
  45.                     line9 = NewLine(), line10 = NewLine(), line11 = NewLine(), line12 = NewLine(),
  46.                     Tracer = NewLine()
  47.                 }
  48.             end
  49.             local lines = espLines[v]
  50.             local pos, vis = Camera:WorldToViewportPoint(v.Character.HumanoidRootPart.Position)
  51.             if vis then
  52.                 local Scale = v.Character.Head.Size.Y / 2
  53.                 local Size = Vector3.new(2, 3, 1.5) * (Scale * 2)
  54.                 local function wp(offset)
  55.                     return Camera:WorldToViewportPoint((v.Character.HumanoidRootPart.CFrame * CFrame.new(offset)).Position)
  56.                 end
  57.                 local Top1, Top2, Top3, Top4 = wp(Vector3.new(-Size.X, Size.Y, -Size.Z)), wp(Vector3.new(-Size.X, Size.Y, Size.Z)), wp(Vector3.new(Size.X, Size.Y, Size.Z)), wp(Vector3.new(Size.X, Size.Y, -Size.Z))
  58.                 local Bottom1, Bottom2, Bottom3, Bottom4 = wp(Vector3.new(-Size.X, -Size.Y, -Size.Z)), wp(Vector3.new(-Size.X, -Size.Y, Size.Z)), wp(Vector3.new(Size.X, -Size.Y, Size.Z)), wp(Vector3.new(Size.X, -Size.Y, -Size.Z))
  59.                 lines.line1.From, lines.line1.To = Vector2.new(Top1.X, Top1.Y), Vector2.new(Top2.X, Top2.Y)
  60.                 lines.line2.From, lines.line2.To = Vector2.new(Top2.X, Top2.Y), Vector2.new(Top3.X, Top3.Y)
  61.                 lines.line3.From, lines.line3.To = Vector2.new(Top3.X, Top3.Y), Vector2.new(Top4.X, Top4.Y)
  62.                 lines.line4.From, lines.line4.To = Vector2.new(Top4.X, Top4.Y), Vector2.new(Top1.X, Top1.Y)
  63.                 lines.line5.From, lines.line5.To = Vector2.new(Bottom1.X, Bottom1.Y), Vector2.new(Bottom2.X, Bottom2.Y)
  64.                 lines.line6.From, lines.line6.To = Vector2.new(Bottom2.X, Bottom2.Y), Vector2.new(Bottom3.X, Bottom3.Y)
  65.                 lines.line7.From, lines.line7.To = Vector2.new(Bottom3.X, Bottom3.Y), Vector2.new(Bottom4.X, Bottom4.Y)
  66.                 lines.line8.From, lines.line8.To = Vector2.new(Bottom4.X, Bottom4.Y), Vector2.new(Bottom1.X, Bottom1.Y)
  67.                 lines.line9.From, lines.line9.To = Vector2.new(Bottom1.X, Bottom1.Y), Vector2.new(Top1.X, Top1.Y)
  68.                 lines.line10.From, lines.line10.To = Vector2.new(Bottom2.X, Bottom2.Y), Vector2.new(Top2.X, Top2.Y)
  69.                 lines.line11.From, lines.line11.To = Vector2.new(Bottom3.X, Bottom3.Y), Vector2.new(Top3.X, Top3.Y)
  70.                 lines.line12.From, lines.line12.To = Vector2.new(Bottom4.X, Bottom4.Y), Vector2.new(Top4.X, Top4.Y)
  71.                 if Tracers then
  72.                     local trace = Camera:WorldToViewportPoint(v.Character.Head.Position + Vector3.new(0, Scale * 2, 0))
  73.                     lines.Tracer.From = Vector2.new(trace.X, trace.Y)
  74.                     lines.Tracer.To = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y)
  75.                 end
  76.                 if Team_Check then
  77.                     local isBeast = v.Character:FindFirstChild("BeastPowers") ~= nil
  78.                     for _, line in pairs(lines) do
  79.                         line.Color = isBeast and red or green
  80.                     end
  81.                 end
  82.                 local thickness = Autothickness and math.clamp(1 / (LocalPlayer.Character.HumanoidRootPart.Position - v.Character.HumanoidRootPart.Position).Magnitude * 100, 0.1, 4) or Box_Thickness
  83.                 for _, line in pairs(lines) do
  84.                     line.Thickness = thickness
  85.                     line.Visible = true
  86.                 end
  87.             else
  88.                 for _, line in pairs(lines) do
  89.                     line.Visible = false
  90.                 end
  91.             end
  92.         else
  93.             CleanupESP(v)
  94.         end
  95.     end
  96. end
  97. RunService.RenderStepped:Connect(ESP)
  98. Players.PlayerRemoving:Connect(CleanupESP)
  99. Players.PlayerAdded:Connect(function(newplr)
  100.     newplr.CharacterAdded:Connect(function(char)
  101.         char:WaitForChild("HumanoidRootPart")
  102.         char:WaitForChild("Head")
  103.     end)
  104. end)
  105.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement