Description

Run this keyless script Arsenal made by Elite scripts and get fully automation functions in the game such as aimbot, Visual and farm very fast.

Features

  • + Enable Aimbot
  • + Silent Aim
  • + Aim Prediction
  • + Team check
  • + Aim Part
  • + Aim method
  • + FOV Circle
  • + Smoothing
  • + Prediction mult
  • + Show FOV
  • + FOV Color
  • + Tracers
  • + Bullet Tracers
  • + Team Check
  • + Max Distance

Supported Executors

Xeno Volt Potassium Wave Delta Solara Opiumware Codex MacSploit Vega X Velocity

Script

Add Xeno Scripts as a preferred source
--[[
    ELITE SCRIPTS  ·  ARSENAL
    Working script — paste into any UNC executor

    AIM · ESP (box / skeleton / tracer / name / dist / health)
    Bullet tracers (custom color) · Rage (fly / noclip / speed)
    FullBright · NoFog · FPS unlock · Auto re-attach
    About + Discord LED

    Works on: Xeno, JJSploit, Synapse, Wave, Solara, Fluxus, Delta,
              Hydrogen, Codex, Krnl, Script-Ware, and every UNC executor
    Keyless · free
]]

-- ======================== UNC / EXECUTOR COMPAT ========================
local function safeHttpGet(url)
    local ok, res = pcall(function()
        if syn and syn.request then
            local r = syn.request({Url = url, Method = "GET"})
            return r.Body
        elseif http and http.request then
            local r = http.request({Url = url, Method = "GET"})
            return r.Body
        elseif request then
            local r = request({Url = url, Method = "GET"})
            return r.Body
        elseif http_request then
            local r = http_request({Url = url, Method = "GET"})
            return r.Body
        elseif fluxus and fluxus.request then
            local r = fluxus.request({Url = url, Method = "GET"})
            return r.Body
        else
            return game:HttpGet(url)
        end
    end)
    if ok and res then return res end
    return game:HttpGet(url)
end

local Rayfield = loadstring(safeHttpGet("https://sirius.menu/rayfield"))()

-- Drawing polyfill for executors that only expose Drawing via getgenv
if not Drawing then
    pcall(function() Drawing = getgenv().Drawing or Drawing end)
end
if not Drawing then
    warn("[ELITE] Drawing library missing — ESP will not render on this executor")
end

local function safeDrawing(class)
    if not Drawing then return nil end
    local ok, obj = pcall(function() return Drawing.new(class) end)
    if ok then return obj end
    return nil
end

local function safeMousemove(x, y)
    if mousemoverel then
        pcall(mousemoverel, x, y)
    elseif Input and Input.MouseMove then
        pcall(Input.MouseMove, x, y)
    end
end

-- ======================== SERVICES ========================
local Players          = game:GetService("Players")
local RunService       = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Workspace        = game:GetService("Workspace")
local Lighting         = game:GetService("Lighting")
local TweenService     = game:GetService("TweenService")
local StarterGui       = game:GetService("StarterGui")

local LocalPlayer = Players.LocalPlayer
local Camera      = Workspace.CurrentCamera
local Mouse       = LocalPlayer:GetMouse()

-- ======================== SETTINGS ========================
local S = {
    -- Aim
    Aimbot        = false,
    SilentAim     = false,
    AlwaysOn      = false,
    AimKey        = Enum.UserInputType.MouseButton2,
    FOV           = 140,
    Smoothness    = 0.12,
    AimPart       = "Head",
    TeamCheck     = true,
    WallCheck     = true,
    Prediction    = true,
    PredMult      = 0.10,
    ShowFOV       = true,
    FOVColor      = Color3.fromRGB(180, 80, 255),
    AimMethod     = "Camera",

    -- ESP
    ESP           = true,
    Box           = true,
    Skeleton      = true,
    Tracer        = true,
    Name          = true,
    Distance      = true,
    Health        = true,
    ESPTeamCheck  = true,
    MaxDist       = 3000,
    BoxColor      = Color3.fromRGB(188, 78, 255),
    SkelColor     = Color3.fromRGB(210, 120, 255),
    TracerColor   = Color3.fromRGB(160, 60, 240),
    NameColor     = Color3.fromRGB(240, 230, 255),

    -- Bullet tracers
    BulletTracer  = true,
    BulletColor   = Color3.fromRGB(255, 90, 220),
    BulletThick   = 2.2,
    BulletLife    = 1.4,
    BulletMaxDist = 1500,

    -- Rage / movement
    Fly           = false,
    FlySpeed      = 80,
    Noclip        = false,
    Speed         = false,
    WalkSpeed     = 28,
    InfiniteJump  = false,

    -- Visual
    FullBright    = false,
    NoFog         = false,

    -- Misc
    FPSUnlock     = false,
    AutoReload    = false,
    NoRecoil      = false,
    NoSpread      = false,

    -- Discord LED footer
    DiscordLED       = true,
    DiscordLEDColor  = Color3.fromRGB(188, 78, 255),
    DiscordLink      = "https://discord.gg/JyHTa3M7h",

    AutoReattach  = true,
}

-- ======================== STATE ========================
local HoldingAim = false
local espCache   = {}
local bullets    = {}
local lastShot   = 0
local flyBV, flyBG
local origAmbient, origBrightness, origFog

local FOVCircle = safeDrawing("Circle")
if FOVCircle then
    FOVCircle.Visible = false
    FOVCircle.Thickness = 1.4
    FOVCircle.Filled = false
    FOVCircle.NumSides = 64
    FOVCircle.Transparency = 0.75
    FOVCircle.Color = S.FOVColor
    FOVCircle.Radius = S.FOV
end

local DiscordLEDGlow = safeDrawing("Text")
local DiscordLEDText = safeDrawing("Text")
local DiscordLEDLine = safeDrawing("Line")
if DiscordLEDGlow then
    DiscordLEDGlow.Text = "discord.gg/JyHTa3M7h"
    DiscordLEDGlow.Size = 13
    DiscordLEDGlow.Center = true
    DiscordLEDGlow.Outline = false
    DiscordLEDGlow.Color = S.DiscordLEDColor
    DiscordLEDGlow.Transparency = 0.72
    DiscordLEDGlow.Visible = S.DiscordLED
end
if DiscordLEDText then
    DiscordLEDText.Text = "discord.gg/JyHTa3M7h"
    DiscordLEDText.Size = 12
    DiscordLEDText.Center = true
    DiscordLEDText.Outline = true
    DiscordLEDText.Color = S.DiscordLEDColor
    DiscordLEDText.Transparency = 1
    DiscordLEDText.Visible = S.DiscordLED
end
if DiscordLEDLine then
    DiscordLEDLine.Thickness = 1
    DiscordLEDLine.Color = S.DiscordLEDColor
    DiscordLEDLine.Transparency = 0.6
    DiscordLEDLine.Visible = S.DiscordLED
end

-- ======================== UI ========================
local Window = Rayfield:CreateWindow({
    Name = "Elite Scripts",
    LoadingTitle = "Elite Scripts",
    LoadingSubtitle = "Arsenal",
    Theme = "Default",
    ConfigurationSaving = {
        Enabled = true,
        FolderName = "EliteScripts",
        FileName = "ArsenalConfig"
    },
    Discord = { Enabled = false },
    KeySystem = false
})

local AimTab      = Window:CreateTab("Aimbot", 4483362458)
local VisualsTab  = Window:CreateTab("Visuals", 4483362458)
local PlayerTab   = Window:CreateTab("Player", 4483362458)
local WeaponsTab  = Window:CreateTab("Weapons", 4483362458)
local MiscTab     = Window:CreateTab("Misc", 4483362458)
local SettingsTab = Window:CreateTab("Settings", 4483362458)
local ConfigsTab  = Window:CreateTab("Configs", 4483362458)

-- ---------- AIMBOT ----------
AimTab:CreateSection("Aimbot")
AimTab:CreateToggle({ Name = "Enable Aimbot", CurrentValue = false, Flag = "Aimbot", Callback = function(v)
    S.Aimbot = v
    if FOVCircle then FOVCircle.Visible = v and S.ShowFOV end
end })
AimTab:CreateToggle({ Name = "Silent Aim", CurrentValue = false, Flag = "Silent", Callback = function(v) S.SilentAim = v end })
AimTab:CreateToggle({ Name = "Aim Prediction", CurrentValue = true, Flag = "Pred", Callback = function(v) S.Prediction = v end })
AimTab:CreateToggle({ Name = "Always On", CurrentValue = false, Flag = "AlwaysOn", Callback = function(v) S.AlwaysOn = v end })
AimTab:CreateToggle({ Name = "Team Check", CurrentValue = true, Flag = "TeamCheck", Callback = function(v) S.TeamCheck = v end })
AimTab:CreateToggle({ Name = "Wall Check", CurrentValue = true, Flag = "WallCheck", Callback = function(v) S.WallCheck = v end })
AimTab:CreateDropdown({
    Name = "Aim Part",
    Options = {"Head", "UpperTorso", "HumanoidRootPart", "LowerTorso", "Torso"},
    CurrentOption = {"Head"},
    Flag = "AimPart",
    Callback = function(o) S.AimPart = type(o) == "table" and o[1] or o end
})
AimTab:CreateDropdown({
    Name = "Aim Method",
    Options = {"Camera", "Mouse"},
    CurrentOption = {"Camera"},
    Flag = "AimMethod",
    Callback = function(o) S.AimMethod = type(o) == "table" and o[1] or o end
})
AimTab:CreateSlider({ Name = "FOV Circle", Range = {40, 400}, Increment = 5, CurrentValue = 140, Flag = "FOV", Callback = function(v)
    S.FOV = v
    if FOVCircle then FOVCircle.Radius = v end
end })
AimTab:CreateSlider({ Name = "Smoothing", Range = {0.03, 0.40}, Increment = 0.01, CurrentValue = 0.12, Flag = "Smooth", Callback = function(v) S.Smoothness = v end })
AimTab:CreateSlider({ Name = "Prediction Mult", Range = {0.02, 0.30}, Increment = 0.01, CurrentValue = 0.10, Flag = "PredM", Callback = function(v) S.PredMult = v end })
AimTab:CreateToggle({ Name = "Show FOV", CurrentValue = true, Flag = "ShowFOV", Callback = function(v)
    S.ShowFOV = v
    if FOVCircle then FOVCircle.Visible = v and S.Aimbot end
end })
AimTab:CreateColorPicker({ Name = "FOV Color", Color = S.FOVColor, Flag = "FOVCol", Callback = function(c)
    S.FOVColor = c
    if FOVCircle then FOVCircle.Color = c end
end })

-- ---------- VISUALS / ESP ----------
VisualsTab:CreateSection("ESP")
VisualsTab:CreateToggle({ Name = "Enable ESP", CurrentValue = true, Flag = "ESP", Callback = function(v)
    S.ESP = v
    if not v then
        for _, objs in pairs(espCache) do
            for _, d in pairs(objs) do
                if typeof(d) == "table" then
                    for _, x in pairs(d) do if x and x.Visible ~= nil then x.Visible = false end end
                elseif d and d.Visible ~= nil then
                    d.Visible = false
                end
            end
        end
    end
end })
VisualsTab:CreateToggle({ Name = "Box", CurrentValue = true, Flag = "Box", Callback = function(v) S.Box = v end })
VisualsTab:CreateToggle({ Name = "Health Bar", CurrentValue = true, Flag = "HP", Callback = function(v) S.Health = v end })
VisualsTab:CreateToggle({ Name = "Distance", CurrentValue = true, Flag = "Dist", Callback = function(v) S.Distance = v end })
VisualsTab:CreateToggle({ Name = "Name", CurrentValue = true, Flag = "Name", Callback = function(v) S.Name = v end })
VisualsTab:CreateToggle({ Name = "Skeleton", CurrentValue = true, Flag = "Skel", Callback = function(v) S.Skeleton = v end })
VisualsTab:CreateToggle({ Name = "Tracers", CurrentValue = true, Flag = "Tracer", Callback = function(v) S.Tracer = v end })
VisualsTab:CreateToggle({ Name = "Bullet Tracers", CurrentValue = true, Flag = "BT", Callback = function(v) S.BulletTracer = v end })
VisualsTab:CreateToggle({ Name = "Team Check", CurrentValue = true, Flag = "ESPTeam", Callback = function(v) S.ESPTeamCheck = v end })
VisualsTab:CreateSlider({ Name = "Max Distance", Range = {100, 5000}, Increment = 50, CurrentValue = 3000, Flag = "MaxD", Callback = function(v) S.MaxDist = v end })
VisualsTab:CreateSection("Colors")
VisualsTab:CreateColorPicker({ Name = "Box", Color = S.BoxColor, Flag = "BoxC", Callback = function(c) S.BoxColor = c end })
VisualsTab:CreateColorPicker({ Name = "Skeleton", Color = S.SkelColor, Flag = "SkelC", Callback = function(c) S.SkelColor = c end })
VisualsTab:CreateColorPicker({ Name = "Tracer", Color = S.TracerColor, Flag = "TrC", Callback = function(c) S.TracerColor = c end })
VisualsTab:CreateColorPicker({ Name = "Name", Color = S.NameColor, Flag = "NmC", Callback = function(c) S.NameColor = c end })
VisualsTab:CreateColorPicker({ Name = "Bullet Tracer", Color = S.BulletColor, Flag = "BTC", Callback = function(c) S.BulletColor = c end })
VisualsTab:CreateSlider({ Name = "Bullet Thickness", Range = {1, 5}, Increment = 0.1, CurrentValue = 2.2, Flag = "BThick", Callback = function(v) S.BulletThick = v end })
VisualsTab:CreateSlider({ Name = "Bullet Lifetime", Range = {0.3, 4}, Increment = 0.1, CurrentValue = 1.4, Flag = "BLife", Callback = function(v) S.BulletLife = v end })

-- ---------- PLAYER / RAGE ----------
PlayerTab:CreateSection("Movement")
PlayerTab:CreateToggle({ Name = "Fly", CurrentValue = false, Flag = "Fly", Callback = function(v)
    S.Fly = v
    local char = LocalPlayer.Character
    local hrp = char and char:FindFirstChild("HumanoidRootPart")
    local hum = char and char:FindFirstChildOfClass("Humanoid")
    if not v then
        if flyBV then flyBV:Destroy() flyBV = nil end
        if flyBG then flyBG:Destroy() flyBG = nil end
        if hum then hum.PlatformStand = false end
        return
    end
    if not hrp or not hum then return end
    hum.PlatformStand = true
    flyBV = Instance.new("BodyVelocity")
    flyBV.MaxForce = Vector3.new(1e9, 1e9, 1e9)
    flyBV.Velocity = Vector3.zero
    flyBV.Parent = hrp
    flyBG = Instance.new("BodyGyro")
    flyBG.MaxTorque = Vector3.new(1e9, 1e9, 1e9)
    flyBG.P = 9e4
    flyBG.Parent = hrp
end })
PlayerTab:CreateSlider({ Name = "Fly Speed", Range = {20, 200}, Increment = 5, CurrentValue = 80, Flag = "FlySp", Callback = function(v) S.FlySpeed = v end })
PlayerTab:CreateToggle({ Name = "Noclip", CurrentValue = false, Flag = "Noclip", Callback = function(v) S.Noclip = v end })
PlayerTab:CreateToggle({ Name = "Speed Hack", CurrentValue = false, Flag = "Speed", Callback = function(v)
    S.Speed = v
    local hum = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid")
    if hum then
        hum.WalkSpeed = v and S.WalkSpeed or 16
    end
end })
PlayerTab:CreateSlider({ Name = "Walk Speed", Range = {16, 100}, Increment = 1, CurrentValue = 28, Flag = "WS", Callback = function(v)
    S.WalkSpeed = v
    if S.Speed then
        local hum = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid")
        if hum then hum.WalkSpeed = v end
    end
end })
PlayerTab:CreateToggle({ Name = "Infinite Jump", CurrentValue = false, Flag = "InfJ", Callback = function(v) S.InfiniteJump = v end })

-- ---------- WEAPONS ----------
WeaponsTab:CreateSection("Weapon Mods")
WeaponsTab:CreateToggle({ Name = "Auto Reload", CurrentValue = false, Flag = "AR", Callback = function(v) S.AutoReload = v end })
WeaponsTab:CreateToggle({ Name = "No Recoil (client)", CurrentValue = false, Flag = "NR", Callback = function(v) S.NoRecoil = v end })
WeaponsTab:CreateToggle({ Name = "No Spread (client)", CurrentValue = false, Flag = "NS", Callback = function(v) S.NoSpread = v end })
WeaponsTab:CreateLabel("Client-side only — Arsenal validates some gun stats server-side")

-- ---------- MISC ----------
MiscTab:CreateSection("World")
MiscTab:CreateToggle({ Name = "FullBright", CurrentValue = false, Flag = "FB", Callback = function(v)
    S.FullBright = v
    if v then
        origAmbient = Lighting.Ambient
        origBrightness = Lighting.Brightness
        Lighting.Ambient = Color3.fromRGB(180, 180, 180)
        Lighting.Brightness = 2
        Lighting.ClockTime = 14
    else
        if origAmbient then Lighting.Ambient = origAmbient end
        if origBrightness then Lighting.Brightness = origBrightness end
    end
end })
MiscTab:CreateToggle({ Name = "No Fog", CurrentValue = false, Flag = "NF", Callback = function(v)
    S.NoFog = v
    if v then
        origFog = Lighting.FogEnd
        Lighting.FogEnd = 1e6
        Lighting.FogStart = 1e6
    else
        if origFog then Lighting.FogEnd = origFog end
    end
end })
MiscTab:CreateToggle({ Name = "FPS Unlock (setfpscap)", CurrentValue = false, Flag = "FPS", Callback = function(v)
    S.FPSUnlock = v
    if setfpscap then
        pcall(setfpscap, v and 999 or 60)
    end
end })
MiscTab:CreateSection("Discord LED")
MiscTab:CreateToggle({ Name = "Show Discord LED", CurrentValue = true, Flag = "DLED", Callback = function(v)
    S.DiscordLED = v
    if DiscordLEDText then DiscordLEDText.Visible = v end
    if DiscordLEDGlow then DiscordLEDGlow.Visible = v end
    if DiscordLEDLine then DiscordLEDLine.Visible = v end
end })
MiscTab:CreateColorPicker({ Name = "LED Color", Color = S.DiscordLEDColor, Flag = "DCol", Callback = function(c)
    S.DiscordLEDColor = c
    if DiscordLEDText then DiscordLEDText.Color = c end
    if DiscordLEDGlow then DiscordLEDGlow.Color = c end
    if DiscordLEDLine then DiscordLEDLine.Color = c end
end })
MiscTab:CreateButton({ Name = "Copy Discord Link", Callback = function()
    if setclipboard then
        pcall(setclipboard, S.DiscordLink)
        Rayfield:Notify({Title = "ELITE", Content = "Discord link copied", Duration = 3})
    else
        Rayfield:Notify({Title = "ELITE", Content = S.DiscordLink, Duration = 5})
    end
end })

-- ---------- SETTINGS ----------
SettingsTab:CreateSection("Executor")
SettingsTab:CreateLabel("Universal UNC compatible")
SettingsTab:CreateLabel("Xeno · JJSploit · Wave · Solara · Fluxus · Delta")
SettingsTab:CreateLabel("Synapse · Krnl · Hydrogen · Codex · Script-Ware")
SettingsTab:CreateToggle({ Name = "Auto Re-attach (respawn)", CurrentValue = true, Flag = "Reattach", Callback = function(v) S.AutoReattach = v end })
SettingsTab:CreateSection("About")
SettingsTab:CreateLabel("ELITE EXECUTOR · Arsenal")
SettingsTab:CreateLabel("Keyless · free · Discord: discord.gg/JyHTa3M7h")
SettingsTab:CreateParagraph({Title = "Operator", Content = "Built under Elite Scripts branding. Arsenal only."})

-- ---------- CONFIGS ----------
ConfigsTab:CreateSection("Save / Load")
ConfigsTab:CreateButton({ Name = "Force Save Config", Callback = function()
    Rayfield:Notify({Title = "ELITE", Content = "Config saved (EliteScripts/ArsenalConfig)", Duration = 3})
end })
ConfigsTab:CreateButton({ Name = "Reload Config", Callback = function()
    pcall(function() Rayfield:LoadConfiguration() end)
    Rayfield:Notify({Title = "ELITE", Content = "Config reloaded", Duration = 3})
end })
ConfigsTab:CreateLabel("Auto-saves every change via Rayfield flags")

-- ======================== UTILS ========================
local function isEnemy(plr)
    if plr == LocalPlayer then return false end
    if not S.TeamCheck and not S.ESPTeamCheck then return true end
    if LocalPlayer.Team and plr.Team and LocalPlayer.Team == plr.Team then
        return false
    end
    if LocalPlayer.TeamColor and plr.TeamColor and LocalPlayer.TeamColor == plr.TeamColor then
        return false
    end
    return true
end

local function visible(origin, targetPos, ignore)
    if not S.WallCheck then return true end
    local params = RaycastParams.new()
    params.FilterType = Enum.RaycastFilterType.Exclude
    params.FilterDescendantsInstances = ignore or {LocalPlayer.Character}
    params.IgnoreWater = true
    local dir = targetPos - origin
    local result = Workspace:Raycast(origin, dir, params)
    if not result then return true end
    local hitModel = result.Instance:FindFirstAncestorOfClass("Model")
    -- allow if ray hits the target character itself
    return false
end

local function getAimPart(char)
    local name = S.AimPart
    local p = char:FindFirstChild(name)
    if p and p:IsA("BasePart") then return p end
    return char:FindFirstChild("Head")
        or char:FindFirstChild("HumanoidRootPart")
        or char:FindFirstChild("UpperTorso")
        or char:FindFirstChild("Torso")
end

local function getTarget()
    local best, bestDist = nil, S.FOV
    local camPos = Camera.CFrame.Position
    local viewport = Camera.ViewportSize
    local center = Vector2.new(viewport.X / 2, viewport.Y / 2)

    for _, plr in ipairs(Players:GetPlayers()) do
        if S.TeamCheck and not isEnemy(plr) then continue end
        local char = plr.Character
        if not char then continue end
        local hum = char:FindFirstChildOfClass("Humanoid")
        if not hum or hum.Health <= 0 then continue end
        local part = getAimPart(char)
        if not part then continue end

        local world = part.Position
        if S.Prediction then
            local hrp = char:FindFirstChild("HumanoidRootPart")
            if hrp then
                world = world + hrp.AssemblyLinearVelocity * S.PredMult
            end
        end

        local screen, onScreen = Camera:WorldToViewportPoint(world)
        if not onScreen or screen.Z < 0 then continue end
        local dist2d = (Vector2.new(screen.X, screen.Y) - center).Magnitude
        if dist2d > S.FOV then continue end

        if S.WallCheck then
            local params = RaycastParams.new()
            params.FilterType = Enum.RaycastFilterType.Exclude
            params.FilterDescendantsInstances = {LocalPlayer.Character, char}
            params.IgnoreWater = true
            local hit = Workspace:Raycast(camPos, world - camPos, params)
            if hit then continue end
        end

        if dist2d < bestDist then
            bestDist = dist2d
            best = { part = part, world = world, plr = plr, screen = Vector2.new(screen.X, screen.Y) }
        end
    end
    return best
end

-- ======================== AIMBOT ========================
UserInputService.InputBegan:Connect(function(input, gp)
    if gp then return end
    if input.UserInputType == S.AimKey then HoldingAim = true end
    if input.KeyCode == Enum.KeyCode.Space and S.InfiniteJump then
        local hum = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid")
        if hum then hum:ChangeState(Enum.HumanoidStateType.Jumping) end
    end
end)
UserInputService.InputEnded:Connect(function(input)
    if input.UserInputType == S.AimKey then HoldingAim = false end
end)

RunService.RenderStepped:Connect(function()
    if FOVCircle then
        FOVCircle.Position = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
        FOVCircle.Radius = S.FOV
        FOVCircle.Visible = S.Aimbot and S.ShowFOV
    end

    -- LED Discord bar
    if S.DiscordLED and DiscordLEDText then
        local vp = Camera.ViewportSize
        local cx = vp.X / 2
        local by = vp.Y - 18
        local pulse = 0.82 + 0.18 * math.sin(tick() * 2.1)
        DiscordLEDText.Position = Vector2.new(cx, by)
        DiscordLEDText.Color = S.DiscordLEDColor
        DiscordLEDText.Visible = true
        if DiscordLEDGlow then
            DiscordLEDGlow.Position = Vector2.new(cx, by)
            DiscordLEDGlow.Color = S.DiscordLEDColor
            DiscordLEDGlow.Transparency = 0.55 + (1 - pulse) * 0.3
            DiscordLEDGlow.Visible = true
        end
        if DiscordLEDLine then
            DiscordLEDLine.From = Vector2.new(cx - 78, by + 11)
            DiscordLEDLine.To = Vector2.new(cx + 78, by + 11)
            DiscordLEDLine.Color = S.DiscordLEDColor
            DiscordLEDLine.Transparency = 0.5 + (1 - pulse) * 0.25
            DiscordLEDLine.Visible = true
        end
    else
        if DiscordLEDText then DiscordLEDText.Visible = false end
        if DiscordLEDGlow then DiscordLEDGlow.Visible = false end
        if DiscordLEDLine then DiscordLEDLine.Visible = false end
    end

    if S.Aimbot and (S.AlwaysOn or HoldingAim or S.SilentAim) then
        local t = getTarget()
        if t then
            local smooth = math.clamp(S.Smoothness, 0.03, 0.5)
            if S.AimMethod == "Mouse" then
                local center = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
                local delta = t.screen - center
                safeMousemove(delta.X * (1 - smooth), delta.Y * (1 - smooth))
            else
                local cam = Camera.CFrame
                local goal = CFrame.new(cam.Position, t.world)
                Camera.CFrame = cam:Lerp(goal, 1 - smooth)
            end
        end
    end

    -- Fly
    if S.Fly and flyBV and flyBG then
        local dir = Vector3.zero
        if UserInputService:IsKeyDown(Enum.KeyCode.W) then dir = dir + Camera.CFrame.LookVector end
        if UserInputService:IsKeyDown(Enum.KeyCode.S) then dir = dir - Camera.CFrame.LookVector end
        if UserInputService:IsKeyDown(Enum.KeyCode.A) then dir = dir - Camera.CFrame.RightVector end
        if UserInputService:IsKeyDown(Enum.KeyCode.D) then dir = dir + Camera.CFrame.RightVector end
        if UserInputService:IsKeyDown(Enum.KeyCode.Space) then dir = dir + Vector3.yAxis end
        if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then dir = dir - Vector3.yAxis end
        if dir.Magnitude > 0 then dir = dir.Unit * S.FlySpeed end
        flyBV.Velocity = dir
        flyBG.CFrame = Camera.CFrame
    end
end)

-- ======================== NOCLIP ========================
RunService.Stepped:Connect(function()
    if not S.Noclip then return end
    local char = LocalPlayer.Character
    if not char then return end
    for _, part in ipairs(char:GetDescendants()) do
        if part:IsA("BasePart") then
            part.CanCollide = false
        end
    end
end)

-- ======================== ESP ========================
local BONES = {
    {"Head", "UpperTorso"},
    {"UpperTorso", "LowerTorso"},
    {"UpperTorso", "LeftUpperArm"},
    {"LeftUpperArm", "LeftLowerArm"},
    {"LeftLowerArm", "LeftHand"},
    {"UpperTorso", "RightUpperArm"},
    {"RightUpperArm", "RightLowerArm"},
    {"RightLowerArm", "RightHand"},
    {"LowerTorso", "LeftUpperLeg"},
    {"LeftUpperLeg", "LeftLowerLeg"},
    {"LeftLowerLeg", "LeftFoot"},
    {"LowerTorso", "RightUpperLeg"},
    {"RightUpperLeg", "RightLowerLeg"},
    {"RightLowerLeg", "RightFoot"},
    -- R6 fallbacks
    {"Head", "Torso"},
    {"Torso", "Left Arm"},
    {"Torso", "Right Arm"},
    {"Torso", "Left Leg"},
    {"Torso", "Right Leg"},
}

local function hideESP(o)
    if not o then return end
    for _, d in pairs(o) do
        if typeof(d) == "table" then
            for _, x in pairs(d) do if x and x.Visible ~= nil then x.Visible = false end end
        elseif d and d.Visible ~= nil then
            d.Visible = false
        end
    end
end

local function createESP(plr)
    if espCache[plr] then return espCache[plr] end
    local o = {}
    o.box = safeDrawing("Square")
    if o.box then
        o.box.Thickness = 1.4
        o.box.Filled = false
        o.box.Visible = false
    end
    o.tracer = safeDrawing("Line")
    if o.tracer then
        o.tracer.Thickness = 1.2
        o.tracer.Visible = false
    end
    o.name = safeDrawing("Text")
    if o.name then
        o.name.Size = 13
        o.name.Center = true
        o.name.Outline = true
        o.name.Font = 2
        o.name.Visible = false
    end
    o.hp = safeDrawing("Line")
    if o.hp then
        o.hp.Thickness = 3
        o.hp.Visible = false
    end
    o.skel = {}
    for i = 1, #BONES do
        local line = safeDrawing("Line")
        if line then
            line.Thickness = 1.1
            line.Visible = false
        end
        o.skel[i] = line
    end
    espCache[plr] = o
    return o
end

local function updateESP()
    if not S.ESP then
        for _, o in pairs(espCache) do hideESP(o) end
        return
    end
    local camPos = Camera.CFrame.Position
    local vp = Camera.ViewportSize

    for _, plr in ipairs(Players:GetPlayers()) do
        if plr == LocalPlayer then continue end
        local o = createESP(plr)
        local char = plr.Character
        local hum = char and char:FindFirstChildOfClass("Humanoid")
        local hrp = char and char:FindFirstChild("HumanoidRootPart")
        local head = char and char:FindFirstChild("Head")

        if not char or not hum or not hrp or hum.Health <= 0 then
            hideESP(o)
            continue
        end
        if S.ESPTeamCheck and LocalPlayer.Team and plr.Team and LocalPlayer.Team == plr.Team then
            hideESP(o)
            continue
        end

        local dist = (hrp.Position - camPos).Magnitude
        if dist > S.MaxDist then
            hideESP(o)
            continue
        end

        local top = head and head.Position + Vector3.new(0, 0.6, 0) or hrp.Position + Vector3.new(0, 2.5, 0)
        local bottom = hrp.Position - Vector3.new(0, 3, 0)
        local spTop, on1 = Camera:WorldToViewportPoint(top)
        local spBot, on2 = Camera:WorldToViewportPoint(bottom)
        if not on1 and not on2 then
            hideESP(o)
            continue
        end

        local h = math.abs(spTop.Y - spBot.Y)
        local w = h / 2
        local cx = (spTop.X + spBot.X) / 2
        local y1 = math.min(spTop.Y, spBot.Y)

        if S.Box and o.box then
            o.box.Size = Vector2.new(w, h)
            o.box.Position = Vector2.new(cx - w / 2, y1)
            o.box.Color = S.BoxColor
            o.box.Visible = true
        elseif o.box then
            o.box.Visible = false
        end

        if S.Tracer and o.tracer then
            o.tracer.From = Vector2.new(vp.X / 2, vp.Y)
            o.tracer.To = Vector2.new(cx, spBot.Y)
            o.tracer.Color = S.TracerColor
            o.tracer.Visible = true
        elseif o.tracer then
            o.tracer.Visible = false
        end

        if (S.Name or S.Distance) and o.name then
            local label = ""
            if S.Name then label = plr.DisplayName ~= "" and plr.DisplayName or plr.Name end
            if S.Distance then label = label .. string.format("  [%.0fm]", dist) end
            o.name.Text = label
            o.name.Position = Vector2.new(cx, y1 - 16)
            o.name.Color = S.NameColor
            o.name.Visible = true
        elseif o.name then
            o.name.Visible = false
        end

        if S.Health and o.hp then
            local pct = math.clamp(hum.Health / math.max(hum.MaxHealth, 1), 0, 1)
            local barH = h * pct
            o.hp.From = Vector2.new(cx - w / 2 - 4, y1 + h)
            o.hp.To = Vector2.new(cx - w / 2 - 4, y1 + h - barH)
            o.hp.Color = Color3.fromRGB(255 * (1 - pct), 255 * pct, 60)
            o.hp.Visible = true
        elseif o.hp then
            o.hp.Visible = false
        end

        if S.Skeleton and o.skel then
            for i, pair in ipairs(BONES) do
                local a = char:FindFirstChild(pair[1])
                local b = char:FindFirstChild(pair[2])
                local line = o.skel[i]
                if line and a and b and a:IsA("BasePart") and b:IsA("BasePart") then
                    local sa, oa = Camera:WorldToViewportPoint(a.Position)
                    local sb, ob = Camera:WorldToViewportPoint(b.Position)
                    if oa and ob and sa.Z > 0 and sb.Z > 0 then
                        line.From = Vector2.new(sa.X, sa.Y)
                        line.To = Vector2.new(sb.X, sb.Y)
                        line.Color = S.SkelColor
                        line.Visible = true
                    else
                        line.Visible = false
                    end
                elseif line then
                    line.Visible = false
                end
            end
        elseif o.skel then
            for _, l in ipairs(o.skel) do if l then l.Visible = false end end
        end
    end
end

RunService.RenderStepped:Connect(updateESP)

Players.PlayerRemoving:Connect(function(plr)
    local o = espCache[plr]
    if o then
        hideESP(o)
        for _, d in pairs(o) do
            if typeof(d) == "table" then
                for _, x in pairs(d) do pcall(function() if x and x.Remove then x:Remove() end end) end
            else
                pcall(function() if d and d.Remove then d:Remove() end end)
            end
        end
        espCache[plr] = nil
    end
end)

-- ======================== BULLET TRACERS ========================
local function spawnBullet(origin, endPos)
    local line = safeDrawing("Line")
    if not line then return end
    line.Thickness = S.BulletThick
    line.Color = S.BulletColor
    line.Visible = true
    local t0 = tick()
    table.insert(bullets, { line = line, origin = origin, endPos = endPos, t0 = t0 })
end

local function updateBullets()
    local now = tick()
    for i = #bullets, 1, -1 do
        local b = bullets[i]
        local age = now - b.t0
        if age > S.BulletLife then
            pcall(function() b.line:Remove() end)
            table.remove(bullets, i)
        else
            local s1, o1 = Camera:WorldToViewportPoint(b.origin)
            local s2, o2 = Camera:WorldToViewportPoint(b.endPos)
            if o1 or o2 then
                b.line.From = Vector2.new(s1.X, s1.Y)
                b.line.To = Vector2.new(s2.X, s2.Y)
                b.line.Color = S.BulletColor
                b.line.Thickness = S.BulletThick
                b.line.Transparency = 1 - (age / S.BulletLife)
                b.line.Visible = true
            else
                b.line.Visible = false
            end
        end
    end
end
RunService.RenderStepped:Connect(updateBullets)

local function fireTracer()
    if not S.BulletTracer then return end
    if tick() - lastShot < 0.05 then return end
    lastShot = tick()
    local origin = Camera.CFrame.Position
    local char = LocalPlayer.Character
    if char then
        local tool = char:FindFirstChildOfClass("Tool")
        if tool then
            local handle = tool:FindFirstChild("Handle") or tool:FindFirstChildWhichIsA("BasePart")
            if handle then origin = handle.Position end
        end
    end
    local dir = Camera.CFrame.LookVector
    local endPos = origin + dir * S.BulletMaxDist
    local params = RaycastParams.new()
    params.FilterType = Enum.RaycastFilterType.Exclude
    params.FilterDescendantsInstances = { LocalPlayer.Character }
    local hit = Workspace:Raycast(origin, dir * S.BulletMaxDist, params)
    if hit then endPos = hit.Position end
    spawnBullet(origin, endPos)
end

UserInputService.InputBegan:Connect(function(input, gp)
    if gp then return end
    if input.UserInputType == Enum.UserInputType.MouseButton1 then
        fireTracer()
    end
end)

local function hookTool(tool)
    if not tool or not tool:IsA("Tool") then return end
    if tool:GetAttribute("EliteHooked") then return end
    tool:SetAttribute("EliteHooked", true)
    tool.Activated:Connect(function()
        fireTracer()
    end)
end

local function setupChar(char)
    if not char then return end
    for _, c in ipairs(char:GetChildren()) do
        if c:IsA("Tool") then hookTool(c) end
    end
    char.ChildAdded:Connect(function(c)
        if c:IsA("Tool") then hookTool(c) end
    end)
    if S.Speed then
        local hum = char:FindFirstChildOfClass("Humanoid")
        if hum then hum.WalkSpeed = S.WalkSpeed end
    end
    -- re-apply fly if still enabled after respawn
    if S.Fly then
        task.wait(0.3)
        local hrp = char:FindFirstChild("HumanoidRootPart")
        local hum = char:FindFirstChildOfClass("Humanoid")
        if hrp and hum then
            if flyBV then flyBV:Destroy() end
            if flyBG then flyBG:Destroy() end
            hum.PlatformStand = true
            flyBV = Instance.new("BodyVelocity")
            flyBV.MaxForce = Vector3.new(1e9, 1e9, 1e9)
            flyBV.Velocity = Vector3.zero
            flyBV.Parent = hrp
            flyBG = Instance.new("BodyGyro")
            flyBG.MaxTorque = Vector3.new(1e9, 1e9, 1e9)
            flyBG.P = 9e4
            flyBG.Parent = hrp
        end
    end
end

if LocalPlayer.Character then setupChar(LocalPlayer.Character) end
LocalPlayer.CharacterAdded:Connect(setupChar)

if LocalPlayer:FindFirstChild("Backpack") then
    LocalPlayer.Backpack.ChildAdded:Connect(function(c)
        if c:IsA("Tool") then hookTool(c) end
    end)
end

-- Auto re-attach camera ref after respawn
if S.AutoReattach then
    LocalPlayer.CharacterAdded:Connect(function()
        task.wait(0.5)
        Camera = Workspace.CurrentCamera
    end)
end

-- Soft client recoil/spread reduction (best-effort, executor safe)
task.spawn(function()
    while true do
        task.wait(0.4)
        if not (S.NoRecoil or S.NoSpread or S.AutoReload) then continue end
        local char = LocalPlayer.Character
        if not char then continue end
        local tool = char:FindFirstChildOfClass("Tool")
        if not tool then continue end
        -- try common client gun module patterns without crashing
        pcall(function()
            for _, v in ipairs(tool:GetDescendants()) do
                if v:IsA("NumberValue") or v:IsA("IntValue") then
                    local n = string.lower(v.Name)
                    if S.NoRecoil and (n:find("recoil") or n:find("kick")) then
                        v.Value = 0
                    end
                    if S.NoSpread and (n:find("spread") or n:find("accuracy")) then
                        v.Value = 0
                    end
                end
            end
        end)
    end
end)

Rayfield:Notify({
    Title = "ELITE SCRIPTS",
    Content = "Loaded for Arsenal. INSERT / menu key in Rayfield.",
    Duration = 5
})

pcall(function() Rayfield:LoadConfiguration() end)

print("[ELITE SCRIPTS] Arsenal script loaded — universal UNC")
Script worked? 🚀 Boost it to #1 so others find it too.

Comments (1)

Log in to add a comment.

veljagoo322294

veljagoo322294

7 days ago

not working