--// SERVICES local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local LocalPlayer = Players.LocalPlayer --// GLOBAL THREAD TRACKING (to stop all toggles on death) local activeThreads = {} local function stopAllThreads() for _, thread in pairs(activeThreads) do   task.cancel(thread) end activeThreads = {} end --// FUNCTION TO CREATE GUI local function createGUI() local playerGui = LocalPlayer:WaitForChild("PlayerGui") local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "KillAllGUI" ScreenGui.ResetOnSpawn = false ScreenGui.Parent = playerGui --// MAIN FRAME (COMPACT) local Frame = Instance.new("Frame") Frame.Size = UDim2.new(0, 200, 0, 260) Frame.Position = UDim2.new(0.5, -100, 0.5, -130) Frame.BackgroundColor3 = Color3.fromRGB(25,25,25) Frame.BackgroundTransparency = 0.15 Frame.BorderSizePixel = 1 Frame.BorderColor3 = Color3.fromRGB(255,0,0) Frame.Parent = ScreenGui --// DRAG FUNCTIONALITY local dragEnabled = true local dragging = false local dragInput = nil local dragStart = nil local startPos = nil local function updatePosition(input)   local delta = input.Position - dragStart   Frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end Frame.InputBegan:Connect(function(input)   if dragEnabled and (input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch) then    dragging = true    dragStart = input.Position    startPos = Frame.Position   end end) Frame.InputChanged:Connect(function(input)   if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then    dragInput = input   end end) UserInputService.InputChanged:Connect(function(input)   if input == dragInput and dragging then    updatePosition(input)   end end) Frame.InputEnded:Connect(function(input)   if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then    dragging = false   end end) --// TOP BAR (compact) local TopBar = Instance.new("Frame") TopBar.Size = UDim2.new(1,0,0,20) TopBar.BackgroundColor3 = Color3.fromRGB(20,20,20) TopBar.BackgroundTransparency = 0.5 TopBar.Parent = Frame local Title = Instance.new("TextLabel") Title.Size = UDim2.new(1,-50,1,0) Title.Position = UDim2.new(0,4,0,0) Title.Text = "firepula Hub🔥"  -- UPDATED TITLE Title.TextColor3 = Color3.fromRGB(255,255,255) Title.TextScaled = true Title.BackgroundTransparency = 1 Title.TextXAlignment = Enum.TextXAlignment.Left Title.Parent = TopBar local lockBtn = Instance.new("TextButton") lockBtn.Size = UDim2.new(0,18,1,0) lockBtn.Position = UDim2.new(1,-40,0,0) lockBtn.Text = "🔓" lockBtn.TextScaled = true lockBtn.BackgroundColor3 = Color3.fromRGB(60,60,60) lockBtn.Parent = TopBar local miniBtn = Instance.new("TextButton") miniBtn.Size = UDim2.new(0,18,1,0) miniBtn.Position = UDim2.new(1,-20,0,0) miniBtn.Text = "−" miniBtn.TextScaled = true miniBtn.BackgroundColor3 = Color3.fromRGB(60,60,60) miniBtn.Parent = TopBar --// CONTENT (collapsible) local Content = Instance.new("Frame") Content.Size = UDim2.new(1,0,1,-20) Content.Position = UDim2.new(0,0,0,20) Content.BackgroundTransparency = 1 Content.Parent = Frame --// TAB BAR (compact) local TabBar = Instance.new("Frame") TabBar.Size = UDim2.new(1,0,0,20) TabBar.BackgroundColor3 = Color3.fromRGB(30,30,30) TabBar.Parent = Content local tabLayout = Instance.new("UIListLayout", TabBar) tabLayout.FillDirection = Enum.FillDirection.Horizontal --// TAB CONTENT local TabContent = Instance.new("Frame") TabContent.Size = UDim2.new(1,0,1,-20) TabContent.Position = UDim2.new(0,0,0,20) TabContent.BackgroundTransparency = 1 TabContent.Parent = Content --// TAB SYSTEM local tabs = {} local function createTab(name)   local btn = Instance.new("TextButton")   btn.Size = UDim2.new(0.125,0,1,0)   btn.Text = name   btn.TextScaled = true   btn.BackgroundColor3 = Color3.fromRGB(50,50,50)   btn.TextColor3 = Color3.new(1,1,1)   btn.Parent = TabBar   local page = Instance.new("ScrollingFrame")    page.Size = UDim2.new(1,0,1,0)    page.BackgroundTransparency = 1    page.Visible = false    page.CanvasSize = UDim2.new(0,0,0,0)   page.ScrollBarThickness = 3   page.Parent = TabContent    local list = Instance.new("UIListLayout", page)    list.Padding = UDim.new(0,2)   tabs[name] = page    btn.MouseButton1Click:Connect(function()     for _,v in pairs(tabs) do v.Visible = false end     page.Visible = true    end)    return page end local function createButton(parent,text,color)   local b = Instance.new("TextButton")   b.Size = UDim2.new(1,-6,0,22)   b.Text = text   b.TextScaled = true   b.BackgroundColor3 = color or Color3.fromRGB(60,60,60)   b.TextColor3 = Color3.new(1,1,1)   b.Parent = parent   return b end local function safeCall(func)   pcall(func) end --// PLAYER SELECTOR (CYCLING BUTTON) – compact local function createPlayerSelector(parent)   local selectorFrame = Instance.new("Frame")   selectorFrame.Size = UDim2.new(1,-6,0,26)   selectorFrame.BackgroundColor3 = Color3.fromRGB(35,35,35)   selectorFrame.BorderSizePixel = 1   selectorFrame.Parent = parent     local btn = Instance.new("TextButton")   btn.Size = UDim2.new(1,0,1,0)   btn.BackgroundColor3 = Color3.fromRGB(55,55,55)   btn.Text = "No players"   btn.TextColor3 = Color3.new(1,1,1)   btn.TextScaled = true   btn.Parent = selectorFrame     local currentPlayer = nil     local function update()    local players = {}    for _, p in ipairs(Players:GetPlayers()) do     if p ~= LocalPlayer then      table.insert(players, p)     end    end    if #players > 0 then     if not currentPlayer or not currentPlayer.Parent then      currentPlayer = players[1]     end     btn.Text = "👉 " .. currentPlayer.Name     return currentPlayer    else     btn.Text = "👉 No other players"     currentPlayer = nil     return nil    end   end     btn.MouseButton1Click:Connect(function()    local players = {}    for _, p in ipairs(Players:GetPlayers()) do     if p ~= LocalPlayer then      table.insert(players, p)     end    end    if #players > 0 then     local found = false     for i, p in ipairs(players) do      if p == currentPlayer then       local nextIndex = i % #players + 1       currentPlayer = players[nextIndex]       found = true       break      end     end     if not found then currentPlayer = players[1] end     btn.Text = "👉 " .. currentPlayer.Name    end   end)     Players.PlayerAdded:Connect(update)   Players.PlayerRemoving:Connect(update)   update()     return function() return currentPlayer end end --// ============ V1 TAB ========== local V1 = createTab("V1") local v1InvulActive = false local v1InvulThread = nil local v1InvulBtn = createButton(V1,"🔰 V1 Invul: OFF",Color3.fromRGB(100,0,0)) v1InvulBtn.MouseButton1Click:Connect(function()   v1InvulActive = not v1InvulActive   v1InvulBtn.Text = v1InvulActive and "🔰 V1 Invul: ON" or "🔰 V1 Invul: OFF"   v1InvulBtn.BackgroundColor3 = v1InvulActive and Color3.fromRGB(0,100,0) or Color3.fromRGB(100,0,0)     if v1InvulActive then    if v1InvulThread then task.cancel(v1InvulThread); activeThreads[v1InvulThread] = nil end    v1InvulThread = task.spawn(function()     while v1InvulActive do      safeCall(function()       local bp = LocalPlayer:FindFirstChild("Backpack")       local parry = bp and bp:FindFirstChild("Parry")       local rs = parry and parry:FindFirstChild("ReplicateScript")       local ev = rs and rs:FindFirstChild("ReplicateEvent")       if ev then ev:FireServer(LocalPlayer.Character,"V1","invuln") end      end)      task.wait(0.5)     end    end)    activeThreads[v1InvulThread] = true   else    if v1InvulThread then task.cancel(v1InvulThread); activeThreads[v1InvulThread] = nil; v1InvulThread = nil end   end end) createButton(V1,"⚔️ Attack All",Color3.fromRGB(150,0,0)).MouseButton1Click:Connect(function()   for _,p in ipairs(Players:GetPlayers()) do    if p ~= LocalPlayer and p.Character and p.Character:FindFirstChild("Torso") then     safeCall(function()      local args = {LocalPlayer.Character,"V1",{playerLockedOn=p.Character.Torso,startAttack=true,attackKeyframeTime=0.6166666746139526}}      local bp = LocalPlayer:FindFirstChild("Backpack")      local whip = bp and bp:FindFirstChild("Whiplash")      local rs = whip and whip:FindFirstChild("ReplicateScript")      local ev = rs and rs:FindFirstChild("ReplicateEvent")      if ev then ev:FireServer(unpack(args)) end     end)    end   end end) --// ============ SISYPHUS TAB ========== local Sisy = createTab("Sis") createButton(Sisy,"💥 Meteor 0",Color3.fromRGB(100,50,0)).MouseButton1Click:Connect(function()   safeCall(function()    local args = {LocalPlayer.Character,"Sisyphus",{explosionHitInfo={hitstuns=true,blockable=false,ultGain=1,parryable=false,damage=0,knockbackForce=100,destruction=true,hitsRagdolled=true,hitboxSize=vector.create(50,50,50),ragdolls=true,axesForce={Y=1/0,X=1/0,Z=1/0},knockbackDirection=vector.one},doShoot=true}}    local bp = LocalPlayer:FindFirstChild("Backpack")    local dest = bp and bp:FindFirstChild("Destroy")    local rs = dest and dest:FindFirstChild("ReplicateScript")    local ev = rs and rs:FindFirstChild("ReplicateEvent")    if ev then ev:FireServer(unpack(args)) end   end) end) createButton(Sisy,"✨ God Meteor",Color3.fromRGB(150,0,150)).MouseButton1Click:Connect(function()   safeCall(function()    local args = {LocalPlayer.Character,"Sisyphus",{explosionHitInfo={hitstuns=true,blockable=false,ultGain=1,parryable=false,damage=1000,knockbackForce=0,destruction=true,hitsRagdolled=true,hitboxSize=vector.create(50,50,50),ragdolls=true,axesForce={Y=1/0,X=1/0,Z=1/0},knockbackDirection=vector.one},doShoot=true}}    local bp = LocalPlayer:FindFirstChild("Backpack")    local dest = bp and bp:FindFirstChild("Destroy")    local rs = dest and dest:FindFirstChild("ReplicateScript")    local ev = rs and rs:FindFirstChild("ReplicateEvent")    if ev then ev:FireServer(unpack(args)) end   end) end) --// ============ GUTTER TAB ========== local Gutter = createTab("Gut") createButton(Gutter,"💣 Bomb All",Color3.fromRGB(150,80,0)).MouseButton1Click:Connect(function()   for _,p in ipairs(Players:GetPlayers()) do    if p ~= LocalPlayer and p.Character and p.Character:FindFirstChild("Torso") then     safeCall(function()      local args = {LocalPlayer.Character,"Gutter",{hitInfo={damage=1,knockbackForce=100,hitboxSize=vector.create(30,30,30)},timeRemaining=0.85,alert=true,lockedOnTorso=p.Character.Torso},true}      local bp = LocalPlayer:FindFirstChild("Backpack")      local rocket = bp and bp:FindFirstChild("Homing Rocket")      local rs = rocket and rocket:FindFirstChild("ReplicateScript")      local ev = rs and rs:FindFirstChild("ReplicateEvent")      if ev then ev:FireServer(unpack(args)) end     end)    end   end end) --// ============ PINOS TAB ========== local Pinos = createTab("Pin") local pinosActive = false local pinosThread = nil local pinosBtn = createButton(Pinos,"🐍 Snake: OFF",Color3.fromRGB(100,0,0)) local function getPinosRemote()   local bp = LocalPlayer:FindFirstChild("Backpack")   if not bp then return nil end   local tool = bp:FindFirstChild("Prepare Thyself")    if not tool then return nil end    local rs = tool:FindFirstChild("ReplicateScript")    if not rs then return nil end    return rs:FindFirstChild("ReplicateEvent") end pinosBtn.MouseButton1Click:Connect(function()   pinosActive = not pinosActive   pinosBtn.Text = pinosActive and "🐍 Snake: ON" or "🐍 Snake: OFF"   pinosBtn.BackgroundColor3 = pinosActive and Color3.fromRGB(0,100,0) or Color3.fromRGB(100,0,0)     if pinosActive then    if pinosThread then task.cancel(pinosThread); activeThreads[pinosThread] = nil end    pinosThread = task.spawn(function()     while pinosActive do      local remote = getPinosRemote()      if remote and LocalPlayer.Character then       pcall(function()        remote:FireServer(LocalPlayer.Character,"Pinos",{shootSnake=true,scanDirection=Vector3.new(0.0150913,-3.7e-09,-0.999886)})       end)      end      task.wait(0.2)     end    end)    activeThreads[pinosThread] = true   else    if pinosThread then task.cancel(pinosThread); activeThreads[pinosThread] = nil; pinosThread = nil end   end end) --// ============ SWORDMACHINE TAB ========== local Sword = createTab("Sword") local swordInvulActive = false local swordInvulThread = nil local swordInvulBtn = createButton(Sword,"⚔️ Sword Invul: OFF",Color3.fromRGB(100,0,0)) swordInvulBtn.MouseButton1Click:Connect(function()   swordInvulActive = not swordInvulActive   swordInvulBtn.Text = swordInvulActive and "⚔️ Sword Invul: ON" or "⚔️ Sword Invul: OFF"   swordInvulBtn.BackgroundColor3 = swordInvulActive and Color3.fromRGB(0,100,0) or Color3.fromRGB(100,0,0)     if swordInvulActive then    if swordInvulThread then task.cancel(swordInvulThread); activeThreads[swordInvulThread] = nil end    swordInvulThread = task.spawn(function()     while swordInvulActive do      safeCall(function()       local bp = LocalPlayer:FindFirstChild("Backpack")       local shotgun = bp and bp:FindFirstChild("Shotgun Parry")       local rs = shotgun and shotgun:FindFirstChild("ReplicateScript")       local ev = rs and rs:FindFirstChild("ReplicateEvent")       if ev then        ev:FireServer(LocalPlayer.Character, "Swordsmachine", "invuln")       end      end)      task.wait(0.5)     end    end)    activeThreads[swordInvulThread] = true   else    if swordInvulThread then task.cancel(swordInvulThread); activeThreads[swordInvulThread] = nil; swordInvulThread = nil end   end end) local exceedActive = false local exceedThread = nil local exceedBtn = createButton(Sword,"⚡ Exceed: OFF",Color3.fromRGB(100,0,100)) exceedBtn.MouseButton1Click:Connect(function()   exceedActive = not exceedActive   exceedBtn.Text = exceedActive and "⚡ Exceed: ON" or "⚡ Exceed: OFF"   exceedBtn.BackgroundColor3 = exceedActive and Color3.fromRGB(0,150,150) or Color3.fromRGB(100,0,100)     if exceedActive then    if exceedThread then task.cancel(exceedThread); activeThreads[exceedThread] = nil end    exceedThread = task.spawn(function()     while exceedActive do      safeCall(function()       local bp = LocalPlayer:FindFirstChild("Backpack")       local exceed = bp and bp:FindFirstChild("Exceed")       local rs = exceed and exceed:FindFirstChild("ReplicateScript")       local ev = rs and rs:FindFirstChild("ReplicateEvent")       if ev then        ev:FireServer(LocalPlayer.Character, "Swordsmachine", "exceed")       end      end)      task.wait(0.5)     end    end)    activeThreads[exceedThread] = true   else    if exceedThread then task.cancel(exceedThread); activeThreads[exceedThread] = nil; exceedThread = nil end   end end) --// ============ TP TAB ========== local TPTab = createTab("TP") local getSelectedTP = createPlayerSelector(TPTab) local tpBtn = createButton(TPTab,"🌀 Teleport",Color3.fromRGB(0,100,150)) tpBtn.MouseButton1Click:Connect(function()   local target = getSelectedTP()   if target and target.Character and target.Character:FindFirstChild("Torso") then    safeCall(function()     local args = {      LocalPlayer.Character,      "Pinos",      {       teleport = true,       hitInfo = {        hitstuns = false,        blockable = false,        ultGain = 500,        parryable = false,        damage = 0,        knockbackForce = 100,        destruction = false,        hitsRagdolled = true,        hitboxSize = vector.create(50, 50, 50),        ragdolls = true,        axesForce = { Y = 1/0, X = 1/0, Z = 1/0 },        knockbackDirection = vector.create(1, 0.5, 1)       },       timeRemaining = 0.6666665077209473,       variant = "ground",       lockedOnTorso = target.Character.Torso      }     }     local bp = LocalPlayer:FindFirstChild("Backpack")     local dieCrush = bp and bp:FindFirstChild("Die /// Crush")     local rs = dieCrush and dieCrush:FindFirstChild("ReplicateScript")     local ev = rs and rs:FindFirstChild("ReplicateEvent")     if ev then      ev:FireServer(unpack(args))     end    end)   end end) --// ============ STUNLOCK TAB ========== local Stun = createTab("STUN") local getSelectedStun = createPlayerSelector(Stun) createButton(Stun,"🎯 Stun Target",Color3.fromRGB(200,0,0)).MouseButton1Click:Connect(function()   local target = getSelectedStun()   if target and target.Character then    safeCall(function()     local args = {"basicAttack",true,{attackCombo=1,attackType="basicAtk",attackAnimLength=0.25,allHit={target.Character},hitPropertiesTable={basicAtk={hitstuns=true,blockable=false,ultGain=100,parryable=false,knockbackForce=0,hitsRagdolled=true,damage=10,hitboxSize=vector.create(100,100,100),stunlocks=true,axesForce={Y=0,X=0,Z=0},ragdolls=true,knockbackDirection=vector.zero}}}}     local char = LocalPlayer.Character     local controller = char and char:FindFirstChild("PlayerControllerScript")     local ev = controller and controller:FindFirstChild("PlayerInputEvent")     if ev then ev:FireServer(unpack(args)) end    end)   end end) createButton(Stun,"🔒 Stunlock All",Color3.fromRGB(255,0,0)).MouseButton1Click:Connect(function()   for _,p in ipairs(Players:GetPlayers()) do    if p ~= LocalPlayer and p.Character then     safeCall(function()      local args = {"basicAttack",true,{attackCombo=1,attackType="basicAtk",attackAnimLength=0.25,allHit={p.Character},hitPropertiesTable={basicAtk={hitstuns=true,blockable=false,ultGain=100,parryable=false,knockbackForce=0,hitsRagdolled=true,damage=10,hitboxSize=vector.create(100,100,100),stunlocks=true,axesForce={Y=0,X=0,Z=0},ragdolls=true,knockbackDirection=vector.zero}}}}      local char = LocalPlayer.Character      local controller = char and char:FindFirstChild("PlayerControllerScript")      local ev = controller and controller:FindFirstChild("PlayerInputEvent")      if ev then ev:FireServer(unpack(args)) end     end)    end   end end) createButton(Stun,"💥 Mega KB All",Color3.fromRGB(150,0,150)).MouseButton1Click:Connect(function()   for _, targetPlayer in ipairs(Players:GetPlayers()) do    if targetPlayer ~= LocalPlayer and targetPlayer.Character then     safeCall(function()      local args = {"basicAttack",true,{attackCombo=1,attackType="basicAtk",attackAnimLength=0.25,allHit={targetPlayer.Character},hitPropertiesTable={basicAtk={hitstuns=true,blockable=false,ultGain=100,parryable=false,knockbackForce=math.huge,hitsRagdolled=true,damage=10,hitboxSize=vector.create(500,500,500),stunlocks=true,axesForce={Y=math.huge,X=math.huge,Z=math.huge},ragdolls=true,knockbackDirection=vector.create(math.huge,math.huge,math.huge)}}}}      local char = LocalPlayer.Character