Auto kill naglis (Vortex :) )
Key Required Patched

Auto kill naglis (Vortex :) )

Skill Based Boss FightsSS198_YTSS198_YT 5.9K views 80 executesUpdated Nov 4, 2025
4.0/ 5(5 votes)
4180% Positive
Lua Script•288 lines (12680 chars)
--[[
WARNING: Heads up! This script has not been verified by ScriptBlox. Use at your own risk!
]]
-- [[
-- SBBF v9.5 - Paintball Kite Ultimate + Jiaxing 4-Tower Rainbow Loop Teleport
-- No Face-to-Face Teleport | Safe Shooting from Towers | Boss Kiting 0 Self-Damage
-- 2025-11-04 Private Server 0 Deaths Tested
-- ]]
-- ==================== Class Lock ====================
local YOUR_CLASS = "Paintball"   -- Changed to Paintball
-- ==================== UI ====================
local sg = Instance.new("ScreenGui", game.CoreGui); sg.Name = "SBBF_v9_Paintball"
local main = Instance.new("Frame", sg); main.Size = UDim2.new(0,360,0,500); main.Position = UDim2.new(0.5,-180,0.5,-250); main.BackgroundColor3 = Color3.fromRGB(20,20,30); main.Draggable = true; main.Active = true
local title = Instance.new("TextLabel", main); title.Size = UDim2.new(1,0,0,40); title.Text = "SBBF v9.5 - Paintball"; title.BackgroundColor3 = Color3.fromRGB(0,150,255); title.TextColor3 = Color3.new(1,1,1); title.Font = Enum.Font.GothamBold
local close = Instance.new("TextButton", main); close.Size = UDim2.new(0,30,0,30); close.Position = UDim2.new(1,-35,0,5); close.Text = "X"; close.BackgroundColor3 = Color3.fromRGB(255,50,50); close.MouseButton1Click:Connect(function() sg:Destroy() end)
local y1 = 85
local function addBtn(text, def, cb)
    local b = Instance.new("TextButton", main); b.Size = UDim2.new(0.9,0,0,35); b.Position = UDim2.new(0.05,0,0,y1); y1 = y1 + 45
    b.BackgroundColor3 = def and Color3.fromRGB(0,200,0) or Color3.fromRGB(90,90,90); b.Text = (def and "[ON]" or "[OFF]") .. " " .. text; b.TextColor3 = Color3.new(1,1,1)
    local st = def; b.MouseButton1Click:Connect(function() st = not st; b.Text = (st and "[ON]" or "[OFF]") .. " " .. text; b.BackgroundColor3 = st and Color3.fromRGB(0,200,0) or Color3.fromRGB(90,90,90); cb(st) end)
end
-- ==================== Config ====================
local CFG = {
    KillAura = true,
    InfStamina = true,
    Dummy = false,
    TeleportToTower1 = false,
    TeleportToTower2 = false,
    SafeKite = true,
    JiaxingLoop = false
}
addBtn("Paintball Auto Attack", true, function(v) CFG.KillAura = v end)
addBtn("Infinite Stamina", true, function(v) CFG.InfStamina = v end)
addBtn("Hit Training Dummy", false, function(v) CFG.Dummy = v end)
addBtn("Teleport to Tower 1 (Dodge Boss)", false, function(v) CFG.TeleportToTower1 = v end)
addBtn("Teleport to Tower 2 (Pull Distance)", false, function(v) CFG.TeleportToTower2 = v end)
addBtn("Boss Kite Mode (Safe Shooting)", true, function(v) CFG.SafeKite = v end)
-- ==================== Services ====================
local P = game.Players.LocalPlayer
local RS = game:GetService("ReplicatedStorage"):WaitForChild("Remotes")
local Charge = RS:WaitForChild("Charge")
local Activate = RS:WaitForChild("Activate")
local Damage = RS:WaitForChild("Damage")
local WS = workspace
local UIS = game:GetService("UserInputService")
-- ==================== Enemy Management ====================
local lastEnemies = {}
local newEnemies = {}
local enemyGroups = {}
local BOSS_NAMES = {"Boss", "Elite", "King", "Queen", "Lord", "Dragon", "Titan"}
local function isBoss(name)
    for _, b in ipairs(BOSS_NAMES) do
        if name:find(b) then return true end
    end
    return false
end
-- ==================== Infinite Stamina ====================
task.spawn(function()
    while task.wait(0.1) do
        if CFG.InfStamina and P:FindFirstChild("Energy") then
            P.Energy.Value = math.huge
        end
    end
end)
-- ==================== Anti-Self-Damage Shield ====================
task.spawn(function()
    while task.wait(0.3) do
        if P.Character and P.Character:FindFirstChild("Humanoid") then
            P.Character.Humanoid:TakeDamage(0)
            for _, debuff in ipairs(P.Character:GetChildren()) do
                if debuff.Name:find("Paint") or debuff.Name:find("Splash") then debuff:Destroy() end
            end
        end
    end
end)
-- ==================== 4 Tower Coordinates (Rainbow Loop) ====================
local TOWER1_CF = CFrame.new(179.08, 158.39, 299.95) * CFrame.Angles(0, math.rad(180), 0)
local TOWER2_CF = CFrame.new(162.00, 156.26, -293.83)
local TOWER3_CF = CFrame.new(774.82, 159.81, -317.80)
local TOWER4_CF = CFrame.new(789.68, 163.45, 289.99)

local TOWER_POSITIONS = {
    TOWER1_CF,
    TOWER2_CF,
    TOWER3_CF,
    TOWER4_CF
}

local TOWER_NAMES = {"Tower 1 (Dodge Boss)", "Tower 2 (Pull Distance)", "Tower 3 (New Pos)", "Tower 4 (Rainbow)"}

-- ==================== Single Tower Teleport ====================
task.spawn(function()
    while task.wait(0.5) do
        local char = P.Character
        if not char or not char:FindFirstChild("HumanoidRootPart") or char:FindFirstChild("Humanoid").Health <= 0 then continue end
        local root = char.HumanoidRootPart
        if CFG.TeleportToTower1 then
            root.CFrame = TOWER1_CF
            CFG.TeleportToTower1 = false
            CFG.SafeKite = true
            print("Successfully teleported to Tower 1 to dodge Boss! Kite mode locked")
        elseif CFG.TeleportToTower2 then
            root.CFrame = TOWER2_CF
            CFG.TeleportToTower2 = false
            CFG.SafeKite = true
            print("Tower 2 pull distance in position! Remote harvesting activated")
        end
    end
end)

-- ==================== Jiaxing 4-Tower Rainbow Loop Teleport Coroutine ====================
local teleporting = false
local currentTowerIndex = 1
local teleportKey = Enum.KeyCode.J
local jiaxingBtn

local function getCurrentTowerIndex()
    if not P.Character or not P.Character:FindFirstChild("HumanoidRootPart") then return 1 end
    local pos = P.Character.HumanoidRootPart.Position
    local minDist = math.huge
    local idx = 1
    for i, cf in ipairs(TOWER_POSITIONS) do
        local dist = (pos - cf.Position).Magnitude
        if dist < minDist then
            minDist = dist
            idx = i
        end
    end
    return idx
end

local function startJiaxingLoop()
    if teleporting then return end
    teleporting = true
    CFG.SafeKite = true
    currentTowerIndex = getCurrentTowerIndex()
    print("Jiaxing 4-Tower Rainbow Loop Teleport started: Tower1→Tower2→Tower3→Tower4→Tower1... (0.8s interval)")

    task.spawn(function()
        while teleporting do
            local char = P.Character
            if char and char:FindFirstChild("HumanoidRootPart") and char:FindFirstChild("Humanoid").Health > 0 then
                local root = char.HumanoidRootPart
                root.CFrame = TOWER_POSITIONS[currentTowerIndex]
                print("Teleported to " .. TOWER_NAMES[currentTowerIndex] .. " | Current loop: " .. currentTowerIndex .. "/4")

                currentTowerIndex = currentTowerIndex + 1
                if currentTowerIndex > 4 then
                    currentTowerIndex = 1
                end
            end
            task.wait(0.8)
        end
    end)
end

local function stopJiaxingLoop(silent)
    if not teleporting then return end
    teleporting = false
    if not silent then
        print("Jiaxing 4-Tower Rainbow Loop Teleport stopped")
    end
end

-- Key Listener
UIS.InputBegan:Connect(function(input, gameProcessed)
    if gameProcessed then return end
    if input.KeyCode == teleportKey then
        if teleporting then
            stopJiaxingLoop()
            jiaxingBtn.Text = "[OFF] Jiaxing 4-Tower Rainbow Loop (Press J)"
            jiaxingBtn.BackgroundColor3 = Color3.fromRGB(255,100,200)
        else
            startJiaxingLoop()
            jiaxingBtn.Text = "[ON] Jiaxing 4-Tower Rainbow Loop (Press J)"
            jiaxingBtn.BackgroundColor3 = Color3.fromRGB(0,255,200)
        end
    end
end)

-- ==================== UI: Jiaxing 4-Tower Loop Button ====================
jiaxingBtn = Instance.new("TextButton", main)
jiaxingBtn.Size = UDim2.new(0.9,0,0,35); jiaxingBtn.Position = UDim2.new(0.05,0,0,y1)
jiaxingBtn.BackgroundColor3 = Color3.fromRGB(255,100,200)
jiaxingBtn.Text = "[OFF] Jiaxing 4-Tower Rainbow Loop (Press J)"
jiaxingBtn.TextColor3 = Color3.new(1,1,1)
jiaxingBtn.Font = Enum.Font.GothamBold

jiaxingBtn.MouseButton1Click:Connect(function()
    if teleporting then
        stopJiaxingLoop()
        jiaxingBtn.Text = "[OFF] Jiaxing 4-Tower Rainbow Loop (Press J)"
        jiaxingBtn.BackgroundColor3 = Color3.fromRGB(255,100,200)
    else
        startJiaxingLoop()
        jiaxingBtn.Text = "[ON] Jiaxing 4-Tower Rainbow Loop (Press J)"
        jiaxingBtn.BackgroundColor3 = Color3.fromRGB(0,255,200)
    end
end)

-- ==================== Main Attack Loop ====================
task.spawn(function()
    while task.wait(0.25) do
        if not CFG.KillAura then continue end
        local char = P.Character
        if not char or not char:FindFirstChild("HumanoidRootPart") or char:FindFirstChild("Humanoid").Health <= 0 then continue end
        local root = char.HumanoidRootPart

        local currentEnemies = {}
        local validEnemies = {}
        enemyGroups = {}

        for _, e in WS.Characters.Enemies:GetChildren() do
            if not CFG.Dummy and e.Name == "Training Dummy" then continue end
            local hum = e:FindFirstChild("Humanoid")
            if not hum or hum.Health <= 0 then continue end
            local eroot = e:FindFirstChild("HumanoidRootPart")
            if not eroot then continue end

            currentEnemies[e] = true
            if not enemyGroups[e.Name] then enemyGroups[e.Name] = {count=0, enemies={}, isBoss=isBoss(e.Name)} end
            enemyGroups[e.Name].count += 1
            table.insert(enemyGroups[e.Name].enemies, {Enemy=e, Humanoid=hum, RootPart=eroot, IsNew=not lastEnemies[e], Distance=(root.Position - eroot.Position).Magnitude})

            if not lastEnemies[e] then
                newEnemies[e] = {Enemy=e, Humanoid=hum, RootPart=eroot, SpawnTime=os.time()}
                print("New enemy: " .. e.Name)
            end

            table.insert(validEnemies, {
                Enemy = e, Humanoid = hum, RootPart = eroot,
                IsNew = not lastEnemies[e], Distance = (root.Position - eroot.Position).Magnitude,
                GroupCount = enemyGroups[e.Name].count, IsBoss = isBoss(e.Name)
            })
        end

        lastEnemies = currentEnemies
        for k in pairs(newEnemies) do if not currentEnemies[k] then newEnemies[k] = nil end end

        table.sort(validEnemies, function(a, b)
            if a.IsNew and not b.IsNew then return true end
            if not a.IsNew and b.IsNew then return false end
            if a.GroupCount > b.GroupCount then return true end
            if a.GroupCount < b.GroupCount then return false end
            if a.IsBoss and not b.IsBoss then return false end
            if not a.IsBoss and b.IsBoss then return true end
            return a.Distance < b.Distance
        end)

        for name, data in pairs(enemyGroups) do
            if data.count > 1 then print("Group: " .. name .. " x" .. data.count .. (data.isBoss and " [BOSS]" or "")) end
        end

        if #validEnemies > 0 then
            local t = validEnemies[1]
            local e, hum, eroot = t.Enemy, t.Humanoid, t.RootPart

            local KITE_DIST = CFG.SafeKite and 60 or 35
            if t.Distance > KITE_DIST + 20 then
                root.CFrame = root.CFrame:lerp(CFrame.lookAt(root.Position, eroot.Position + Vector3.new(0,15,0)), 0.4)
            elseif t.Distance < KITE_DIST - 15 then
                root.CFrame = root.CFrame * CFrame.new(0,0,20)
            end

            local pos = eroot.Position + Vector3.new(math.random(-12,12), math.random(30,50), math.random(-12,12))

            pcall(function() Charge:FireServer(YOUR_CLASS, {Mousepos = pos}) end)
            task.wait(0.08)
            pcall(function() Activate:FireServer(YOUR_CLASS, {Charge=100, Mousepos=pos, ComboNum=1}, 1, "PaintballBlast") end)
            task.wait(0.08)
            pcall(function() Damage:FireServer(hum, YOUR_CLASS) end)

            local msg = "Kiting shot: " .. e.Name .. " | HP: " .. math.floor(hum.Health) .. " | Dist: " .. math.floor(t.Distance)
            if t.IsNew then msg = "New " .. msg end
            if t.GroupCount > 1 then msg = "x" .. t.GroupCount .. " " .. msg end
            if t.IsBoss then msg = "BOSS " .. msg end
            print(msg)
        end
    end
end)

-- ==================== Startup ====================
print("SBBF v9.5 Kite Version + Jiaxing 4-Tower Rainbow Loop Teleport started! (Paintball version)")
game.StarterGui:SetCore("SendNotification", {
    Title = "SBBF v9.5 - Paintball";
    Text = "4-Tower Rainbow Artifact ready! Press [J] to start Jiaxing loop teleport (Tower1→2→3→4)";
    Duration = 12
})

Features & Information

Note that this script has been specially modified. Simply turn on the bottom pink button, then leave your device and do nothing else, waiting for victory. This script is dedicated to @raymondgolpeo2 and anyone who can't beat Narglis.
#skill based boss fight

Community Comments (15)

SS198_YTSS198_YTNov 4, 2025

i got Vortex

SS198_YTSS198_YTNov 4, 2025

this script is English

SS198_YTSS198_YTNov 4, 2025

@raymondgolpeo2 i finish

raymondgolpeo2raymondgolpeo2Nov 4, 2025

Tysm I beat it

Replying to @raymondgolpeo2
SS198_YTSS198_YTNov 4, 2025

@raymondgolpeo2 :)

saberxsaberxNov 5, 2025

You a W bro thank you 🙏

syntaxbrosyntaxbroNov 5, 2025

hey the boss at the different place

paralogatparalogatNov 5, 2025

can you make lord vetus script? i wanna beat it pls

Replying to @paralogat
SS198_YTSS198_YTNov 6, 2025

@paralogat i cant

paralogatparalogatNov 5, 2025

or a carnellio script if yes tysm!

Replying to @paralogat
SS198_YTSS198_YTNov 6, 2025

@paralogat i upload now

Replying to @SS198_YT
paralogatparalogatNov 6, 2025

*198_YT thank you!!

Replying to @paralogat
SS198_YTSS198_YTNov 6, 2025

@paralogat :)

boom12boom12Nov 10, 2025

hey it keeps killing me when i use the pink button

boom12boom12Nov 10, 2025

and what executor do you use?

More Scripts for Skill Based Boss Fights