local WindUI = loadstring(game:HttpGet("https://raw.githubusercontent.com/Footagesus/WindUI/main/dist/main.lua"))() WindUI:SetTheme("Violet") local Window = WindUI:CreateWindow({ Title = "LightningWare V2 (Beta Test)", Icon = "sparkles", IconThemed = true, Size = UDim2.fromOffset(600, 400), Folder = "LightingWare", }) local Tabs = {} Tabs.Main = Window:Section({ Title = "Main", Icon = "zap", Opened = false, }) Tabs.Customise = Window:Section({ Title = "Appearance", Icon = "paintbrush", Opened = false, }) local VisualsTab = Tabs.Main:Tab({ Title = "Visuals", Icon = "eye" }) local MainTab = Tabs.Main:Tab({ Title = "Actions", Icon = "star" }) local WindowTab = Tabs.Customise:Tab({ Title = "Window and File Configuration", Icon = "settings" }) local autoRespawnMethod = nil local respawnConnection local lastSavedPosition local autoRespawnToggle = VisualsTab:Toggle({ Title = "Automatic Respawn", Value = false, Callback = function(state) getgenv().AutoRespawnEnabled = state if respawnConnection then respawnConnection:Disconnect() respawnConnection = nil end if state then local player = game:GetService("Players").LocalPlayer task.defer(function() while not player.Character do task.wait() end respawnConnection = player.CharacterAdded:Connect(function(character) task.defer(function() character:WaitForChild("HumanoidRootPart", 5) character:WaitForChild("Humanoid", 5) character:GetAttributeChangedSignal("Downed"):Connect(function() if not getgenv().AutoRespawnEnabled then return end if character:GetAttribute("Downed") ~= true then return end if autoRespawnMethod ~= "Fake Revive" then return end local hrp = character:FindFirstChild("HumanoidRootPart") if hrp then lastSavedPosition = hrp.Position end task.wait(3) local start = tick() repeat game:GetService("ReplicatedStorage"):WaitForChild("Events", 9e9) :WaitForChild("Player", 9e9) :WaitForChild("ChangePlayerMode", 9e9) :FireServer(true) task.wait(1) until character:GetAttribute("Downed") ~= true or tick() - start > 1 local newChar repeat newChar = player.Character task.wait() until newChar and newChar:FindFirstChild("HumanoidRootPart") local newHRP = newChar:FindFirstChild("HumanoidRootPart") if lastSavedPosition and newHRP then newHRP.CFrame = CFrame.new(lastSavedPosition) task.wait(0.5) local moved = (newHRP.Position - lastSavedPosition).Magnitude > 1 if moved then return end end end) end) end) player.CharacterAdded:Fire(player.Character) end) end end }) local respawnMethodDropdown = VisualsTab:Dropdown({ Title = "Choose Respawn Method", Values = { "Random", "Fake Revive" }, Multi = false, Default = "Random", Callback = function(value) autoRespawnMethod = value end }) local Players = game:GetService("Players") local RunService = game:GetService("RunService") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") local screenGui = Instance.new("ScreenGui") screenGui.Name = "LightningWareTimer" screenGui.Parent = PlayerGui screenGui.ResetOnSpawn = false screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling screenGui.Enabled = false -- start hidden local textLabel = Instance.new("TextLabel") textLabel.Size = UDim2.new(0, 100, 0, 40) textLabel.BackgroundTransparency = 1 textLabel.TextColor3 = Color3.fromRGB(135, 206, 250) textLabel.TextStrokeColor3 = Color3.fromRGB(0, 191, 255) textLabel.TextStrokeTransparency = 0 textLabel.Font = Enum.Font.GothamBlack textLabel.TextScaled = true textLabel.Text = "0" textLabel.AnchorPoint = Vector2.new(0.5, 0) textLabel.Position = UDim2.new(0.5, 0, 0, 10) textLabel.Parent = screenGui local statsFolder = workspace:WaitForChild("Game"):WaitForChild("Stats") RunService.Heartbeat:Connect(function() if screenGui.Enabled then local timerValue = statsFolder:GetAttribute("Timer") textLabel.Text = timerValue and tostring(timerValue) or "0" end end) VisualsTab:Toggle({ Title = "Game Timer Display", Value = false, Callback = function(state) screenGui.Enabled = state end, }) local Players = game:GetService("Players") local ReplicatedStorage = game:GetService("ReplicatedStorage") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local playerESPThread VisualsTab:Toggle({ Title = "Esp Player", Value = false, Callback = function(state) local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local function getDistance(pos) local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") return hrp and (pos - hrp.Position).Magnitude or nil end local function createPlayerESP(part) local billboard = Instance.new("BillboardGui") billboard.Name = "PlayerESP" billboard.Adornee = part billboard.Size = UDim2.new(0, 180, 0, 25) billboard.StudsOffset = Vector3.new(0, 3.2, 0) billboard.AlwaysOnTop = true billboard.LightInfluence = 0 billboard.Parent = part local label = Instance.new("TextLabel") label.Name = "Label" label.Size = UDim2.new(1, 0, 1, 0) label.BackgroundTransparency = 1 label.TextStrokeTransparency = 0.25 label.TextScaled = true label.RichText = true label.Font = Enum.Font.GothamSemibold label.Text = "" label.TextColor3 = Color3.fromRGB(100, 180, 255) label.Parent = billboard return label end local function removeAllESPs() local folder = workspace:FindFirstChild("Game") and workspace.Game:FindFirstChild("Players") if folder then for _, char in ipairs(folder:GetChildren()) do if char:IsA("Model") then local hrp = char:FindFirstChild("HumanoidRootPart") if hrp then local existing = hrp:FindFirstChild("PlayerESP") if existing then existing:Destroy() end end end end end end if state then if playerESPThread and coroutine.status(playerESPThread) == "suspended" then coroutine.close(playerESPThread) end playerESPThread = coroutine.create(function() while true do local folder = workspace:FindFirstChild("Game") and workspace.Game:FindFirstChild("Players") if folder then for _, char in ipairs(folder:GetChildren()) do if char:IsA("Model") then local team = char:GetAttribute("Team") if team ~= "Nextbot" and char.Name ~= Players.LocalPlayer.Name then local hrp = char:FindFirstChild("HumanoidRootPart") if hrp then local espGui = hrp:FindFirstChild("PlayerESP") local label = espGui and espGui:FindFirstChild("Label") if not label then label = createPlayerESP(hrp) end if label then local dist = getDistance(hrp.Position) or 0 local downed = char:GetAttribute("Downed") local downedTime = tonumber(char:GetAttribute("DownedTimeLeft")) or 0 local name = char.Name local displayText local color if downed == true then color = Color3.fromRGB(255, 60, 60) displayText = string.format('%s (Downed %.0f)', name, downedTime) elseif downed == false then color = Color3.fromRGB(100, 255, 100) displayText = string.format('%s\n%.0f studs', name, dist) else color = Color3.fromRGB(100, 180, 255) displayText = string.format('%s\n%.0f studs', name, dist) end if label.Text ~= displayText or label.TextColor3 ~= color then label.Text = displayText label.TextColor3 = color end end end end end end end task.wait(0.5) end end) coroutine.resume(playerESPThread) else removeAllESPs() if playerESPThread and coroutine.status(playerESPThread) == "suspended" then coroutine.close(playerESPThread) playerESPThread = nil end end end }) local ticketESPThread VisualsTab:Toggle({ Title = "Esp Ticket", Value = false, Callback = function(state) local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local function getDistance(pos) local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") return hrp and (pos - hrp.Position).Magnitude or nil end local function createESP(part) local billboard = Instance.new("BillboardGui") billboard.Name = "TicketESP" billboard.Adornee = part billboard.Size = UDim2.new(0, 180, 0, 25) billboard.StudsOffset = Vector3.new(0, 3.2, 0) billboard.AlwaysOnTop = true billboard.LightInfluence = 0 billboard.Parent = part local label = Instance.new("TextLabel") label.Name = "Ticket" label.Size = UDim2.new(1, 0, 1, 0) label.BackgroundTransparency = 1 label.TextStrokeTransparency = 0.25 label.TextScaled = true label.Font = Enum.Font.GothamSemibold label.TextColor3 = Color3.fromRGB(255, 255, 100) label.Text = "Ticket" label.Parent = billboard return billboard end local function removeAllTicketESP() local ticketFolder = workspace:FindFirstChild("Game") and workspace.Game:FindFirstChild("Effects") and workspace.Game.Effects:FindFirstChild("Tickets") if ticketFolder then for _, ticketModel in ipairs(ticketFolder:GetChildren()) do if ticketModel:IsA("Model") then local part = ticketModel:FindFirstChildWhichIsA("BasePart") if part then local existing = part:FindFirstChild("TicketESP") if existing then existing:Destroy() end end end end end end if state then if ticketESPThread and coroutine.status(ticketESPThread) == "suspended" then coroutine.close(ticketESPThread) end ticketESPThread = coroutine.create(function() while true do local ticketFolder = workspace:FindFirstChild("Game") and workspace.Game:FindFirstChild("Effects") and workspace.Game.Effects:FindFirstChild("Tickets") if ticketFolder then for _, ticketModel in ipairs(ticketFolder:GetChildren()) do if ticketModel:IsA("Model") then local part = ticketModel:FindFirstChildWhichIsA("BasePart") if part then local billboard = part:FindFirstChild("TicketESP") or createESP(part) local label = billboard and billboard:FindFirstChild("Label") if label then local dist = getDistance(part.Position) if dist then label.Text = string.format("%s\n%.0f studs", ticketModel.Name, dist) else label.Text = ticketModel.Name end end end end end end task.wait(0.5) end end) coroutine.resume(ticketESPThread) else removeAllTicketESP() if ticketESPThread and coroutine.status(ticketESPThread) == "suspended" then coroutine.close(ticketESPThread) ticketESPThread = nil end end end }) local nextbotESPThread VisualsTab:Toggle({ Title = "Esp Nextbot", Value = false, Callback = function(state) local function getDistance(pos) local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") return hrp and (pos - hrp.Position).Magnitude or nil end local function getESPPart(obj) if obj:IsA("BasePart") then return obj elseif obj:IsA("Model") then return obj:FindFirstChild("Root") or obj:FindFirstChild("Head") or obj:FindFirstChild("HumanoidRootPart") or obj:FindFirstChildWhichIsA("BasePart") end end local function lerpColor(c1, c2, t) return Color3.new( c1.R + (c2.R - c1.R) * t, c1.G + (c2.G - c1.G) * t, c1.B + (c2.B - c1.B) * t ) end local function getColorByDistance(dist) if dist <= 12 then return Color3.fromRGB(0, 0, 0) -- black elseif dist <= 60 then local t = (dist - 6) / 14 return Color3.new( 255 / 255, (60 + (255 - 60) * t) / 255, 60 / 255 ) -- red n yellow else return Color3.fromRGB(200, 100, 255) -- Purple end end local function createESP(part) local billboard = Instance.new("BillboardGui") billboard.Name = "NextbotESP" billboard.Adornee = part billboard.Size = UDim2.new(0, 180, 0, 25) billboard.StudsOffset = Vector3.new(0, 3.2, 0) billboard.AlwaysOnTop = true billboard.LightInfluence = 0 billboard.Parent = part local label = Instance.new("TextLabel") label.Name = "Label" label.Size = UDim2.new(1, 0, 1, 0) label.BackgroundTransparency = 1 label.TextStrokeTransparency = 0.25 label.TextScaled = true label.Font = Enum.Font.GothamSemibold label.Text = "" label.TextColor3 = Color3.fromRGB(255, 255, 255) label.Parent = billboard return billboard end local function removeAllNextbotESP() local folder = workspace:FindFirstChild("Game") and workspace.Game:FindFirstChild("Players") if folder then for _, npc in ipairs(folder:GetChildren()) do local part = getESPPart(npc) if part then local existing = part:FindFirstChild("NextbotESP") if existing then existing:Destroy() end end end end end if state then if nextbotESPThread and coroutine.status(nextbotESPThread) == "suspended" then coroutine.close(nextbotESPThread) end nextbotESPThread = coroutine.create(function() while true do local folder = workspace:FindFirstChild("Game") and workspace.Game:FindFirstChild("Players") if folder then for _, npc in ipairs(folder:GetChildren()) do if npc:GetAttribute("Team") == "Nextbot" then local part = getESPPart(npc) if part then local billboard = part:FindFirstChild("NextbotESP") or createESP(part) local label = billboard and billboard:FindFirstChild("Label") if label then local dist = getDistance(part.Position) if dist then label.Text = string.format("%s\n%.0f studs", npc.Name, dist) label.TextColor3 = getColorByDistance(dist) else label.Text = npc.Name label.TextColor3 = Color3.fromRGB(255, 255, 255) end end end end end end task.wait(0.5) end end) coroutine.resume(nextbotESPThread) else removeAllNextbotESP() if nextbotESPThread and coroutine.status(nextbotESPThread) == "suspended" then coroutine.close(nextbotESPThread) nextbotESPThread = nil end end end }) local tracerThread = nil local tracerLines = {} VisualsTab:Toggle({ Title = "Tracer Downed Players", Value = false, Callback = function(state) local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local Camera = workspace.CurrentCamera local function cleanup() for _, line in ipairs(tracerLines) do if line and line.Remove then line:Remove() elseif line then line.Visible = false end end tracerLines = {} end if state then tracerThread = coroutine.create(function() while true do cleanup() local folder = workspace:FindFirstChild("Game") and workspace.Game:FindFirstChild("Players") if folder then for _, char in ipairs(folder:GetChildren()) do if char:IsA("Model") then local team = char:GetAttribute("Team") local downed = char:GetAttribute("Downed") if team ~= "Nextbot" and char.Name ~= LocalPlayer.Name and downed == true then local hrp = char:FindFirstChild("HumanoidRootPart") if hrp and Camera then local pos, onScreen = Camera:WorldToViewportPoint(hrp.Position) if onScreen then local tracer = Drawing.new("Line") tracer.Color = Color3.fromRGB(255, 60, 60) tracer.Thickness = 2 tracer.From = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y) tracer.To = Vector2.new(pos.X, pos.Y) tracer.ZIndex = 1 tracer.Visible = true table.insert(tracerLines, tracer) end end end end end end task.wait(0.05) end end) coroutine.resume(tracerThread) else if tracerThread and coroutine.status(tracerThread) == "suspended" then coroutine.close(tracerThread) tracerThread = nil end cleanup() end end }) MainTab:Section({ Title = "Modifications" }) local requiredFields = { Friction = true, AirStrafeAcceleration = true, JumpHeight = true, RunDeaccel = true, JumpSpeedMultiplier = true, JumpCap = true, SprintCap = true, WalkSpeedMultiplier = true, BhopEnabled = true, Speed = true, AirAcceleration = true, RunAccel = true, SprintAcceleration = true, } getgenv().ApplyMode = "Not Optimized" local appliedOnce = false local gameStatsPath = workspace.Game.Stats local playersPath = workspace.Game.Players local playerModelPresent = false local currentSettings = { Speed = "1500", JumpCap = "1", AirStrafeAcceleration = "187" } local function isPlayerModelPresent() local player = game.Players.LocalPlayer if not player then return false end for _, model in pairs(playersPath:GetChildren()) do if model.Name == player.Name then return true end end return false end local function shouldApplySettings() if not gameStatsPath then return false end local roundStarted = gameStatsPath:GetAttribute("RoundStarted") local timer = gameStatsPath:GetAttribute("Timer") return roundStarted == false and timer == 3 end local function getMatchingTables() local matched = {} for _, obj in pairs(getgc(true)) do if typeof(obj) == "table" then local ok = true for field in pairs(requiredFields) do if rawget(obj, field) == nil then ok = false break end end if ok then table.insert(matched, obj) end end end return matched end local function applyToTables(callback) if not isPlayerModelPresent() then return end local targets = getMatchingTables() if #targets == 0 then return end if getgenv().ApplyMode == "Optimized" then task.spawn(function() for i, tableObj in ipairs(targets) do if tableObj and typeof(tableObj) == "table" then pcall(callback, tableObj) end if i % 3 == 0 then task.wait() end end end) else for i, tableObj in ipairs(targets) do if tableObj and typeof(tableObj) == "table" then pcall(callback, tableObj) end end end end local function applyStoredSettings() local settings = { {field = "Speed", value = tonumber(currentSettings.Speed)}, {field = "JumpCap", value = tonumber(currentSettings.JumpCap)}, {field = "AirStrafeAcceleration", value = tonumber(currentSettings.AirStrafeAcceleration)} } for _, setting in ipairs(settings) do if setting.value and tostring(setting.value) ~= "1500" and tostring(setting.value) ~= "1" and tostring(setting.value) ~= "187" then applyToTables(function(obj) obj[setting.field] = setting.value end) end end end local function applySettingsWithDelay() if not shouldApplySettings() or appliedOnce then return end appliedOnce = true local settings = { {field = "Speed", value = tonumber(currentSettings.Speed), delay = math.random(1, 14)}, {field = "JumpCap", value = tonumber(currentSettings.JumpCap), delay = math.random(1, 14)}, {field = "AirStrafeAcceleration", value = tonumber(currentSettings.AirStrafeAcceleration), delay = math.random(1, 14)} } for _, setting in ipairs(settings) do if setting.value and tostring(setting.value) ~= "1500" and tostring(setting.value) ~= "1" and tostring(setting.value) ~= "187" then task.spawn(function() task.wait(setting.delay) applyToTables(function(obj) obj[setting.field] = setting.value end) end) end end end local roundStartedConnection local timerConnection local function setupAttributeConnections() if roundStartedConnection then roundStartedConnection:Disconnect() end if timerConnection then timerConnection:Disconnect() end if gameStatsPath then roundStartedConnection = gameStatsPath:GetAttributeChangedSignal("RoundStarted"):Connect(function() local roundStarted = gameStatsPath:GetAttribute("RoundStarted") if roundStarted == true then appliedOnce = false end end) timerConnection = gameStatsPath:GetAttributeChangedSignal("Timer"):Connect(function() if shouldApplySettings() and not appliedOnce then applySettingsWithDelay() end end) end end setupAttributeConnections() task.spawn(function() while true do task.wait(0.5) local currentlyPresent = isPlayerModelPresent() if currentlyPresent and not playerModelPresent then playerModelPresent = true applyStoredSettings() elseif not currentlyPresent and playerModelPresent then playerModelPresent = false end end end) local function createValidatedInput(config) return function(input) local val = tonumber(input) if not val then return end if config.min and val < config.min then return end if config.max and val > config.max then return end currentSettings[config.field] = input applyToTables(function(obj) obj[config.field] = val end) end end MainTab:Input({ Title = "Set Speed", Icon = "speedometer", Placeholder = "Default 1500", Value = "1500", Callback = createValidatedInput({ field = "Speed", min = 1450, max = 100008888 }) }) MainTab:Input({ Title = "Set Jump Cap", Icon = "chevrons-up", Placeholder = "Default 1", Value = "1", Callback = createValidatedInput({ field = "JumpCap", min = 0.1, max = 5088888 }) }) MainTab:Input({ Title = "Strafe Acceleration", Icon = "wind", Placeholder = "Set Strafe Acceleration", Value = "187", Callback = createValidatedInput({ field = "AirStrafeAcceleration", min = 1, max = 1000888888 }) }) MainTab:Dropdown({ Title = "Select Apply Method", Values = { "Not Optimized", "Optimized" }, Multi = false, Default = "Not Optimized", Callback = function(value) getgenv().ApplyMode = value end, }) MainTab:Section({ Title = "Automation" }) local player = game:GetService("Players").LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local UserInputService = game:GetService("UserInputService") local ReplicatedStorage = game:GetService("ReplicatedStorage") getgenv().autoCarryEnabled = false getgenv().autoReviveEnabled = false getgenv().autoJumpEnabled = false local function makeDraggable(frame) local dragging, dragInput, dragStart, startPos frame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true dragStart = input.Position startPos = frame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) frame.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseMovement then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if dragging and input == dragInput then 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 end) end local function createToggleGui(name, varName, yOffset) local gui = playerGui:FindFirstChild(name.."Gui") if gui then gui:Destroy() end gui = Instance.new("ScreenGui", playerGui) gui.Name = name.."Gui" gui.IgnoreGuiInset = true gui.ResetOnSpawn = false gui.Enabled = false local frame = Instance.new("Frame", gui) frame.Size = UDim2.new(0, 190, 0, 30) frame.Position = UDim2.new(0.5, -95, 0.12 + yOffset, 0) frame.BackgroundColor3 = Color3.fromRGB(30, 50, 80) frame.BackgroundTransparency = 0.35 frame.BorderSizePixel = 0 makeDraggable(frame) local corner = Instance.new("UICorner", frame) corner.CornerRadius = UDim.new(1, 0) local stroke = Instance.new("UIStroke", frame) stroke.Color = Color3.fromRGB(100, 160, 255) stroke.Thickness = 2 local label = Instance.new("TextLabel", frame) label.Text = name label.Size = UDim2.new(0.55, 0, 1, 0) label.Position = UDim2.new(0, 10, 0, 0) label.BackgroundTransparency = 1 label.TextColor3 = Color3.fromRGB(220, 240, 255) label.Font = Enum.Font.Roboto label.TextSize = 14 label.TextXAlignment = Enum.TextXAlignment.Left local toggleBtn = Instance.new("TextButton", frame) toggleBtn.Name = "ToggleButton" toggleBtn.Text = getgenv()[varName] and "On" or "Off" toggleBtn.Size = UDim2.new(0.3, 0, 0.75, 0) toggleBtn.Position = UDim2.new(0.65, 0, 0.13, 0) toggleBtn.BackgroundColor3 = getgenv()[varName] and Color3.fromRGB(0, 120, 80) or Color3.fromRGB(40, 40, 45) toggleBtn.TextColor3 = Color3.new(1, 1, 1) toggleBtn.Font = Enum.Font.Roboto toggleBtn.TextSize = 13 local buttonCorner = Instance.new("UICorner", toggleBtn) buttonCorner.CornerRadius = UDim.new(1, 0) toggleBtn.MouseButton1Click:Connect(function() getgenv()[varName] = not getgenv()[varName] toggleBtn.Text = getgenv()[varName] and "On" or "Off" toggleBtn.BackgroundColor3 = getgenv()[varName] and Color3.fromRGB(0, 120, 80) or Color3.fromRGB(40, 40, 45) end) return gui end local carryGui, reviveGui, jumpGui MainTab:Toggle({ Title = "Auto Carry", Value = false, Callback = function(state) if not carryGui then carryGui = createToggleGui("Auto Carry", "autoCarryEnabled", 0.00) end carryGui.Enabled = state end }) MainTab:Section({ Title = "" }) local infiniteSlideEnabled = false local slideFrictionValue = -8 local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local RunService = game:GetService("RunService") local keys = { "Friction","AirStrafeAcceleration","JumpHeight","RunDeaccel", "JumpSpeedMultiplier","JumpCap","SprintCap","WalkSpeedMultiplier", "BhopEnabled","Speed","AirAcceleration","RunAccel","SprintAcceleration" } local function hasAll(tbl) if type(tbl) ~= "table" then return false end for _, k in ipairs(keys) do if rawget(tbl, k) == nil then return false end end return true end local cachedTables = nil local plrModel = nil local slideConnection = nil local function getConfigTables() local tables = {} for _, obj in ipairs(getgc(true)) do local success, result = pcall(function() if hasAll(obj) then return obj end end) if success and result then table.insert(tables, obj) end end return tables end local function setFriction(value) if not cachedTables then return end for _, t in ipairs(cachedTables) do pcall(function() t.Friction = value end) end end local function updatePlayerModel() local GameFolder = workspace:FindFirstChild("Game") local PlayersFolder = GameFolder and GameFolder:FindFirstChild("Players") if PlayersFolder then plrModel = PlayersFolder:FindFirstChild(LocalPlayer.Name) else plrModel = nil end end local function onHeartbeat() if not plrModel then setFriction(5) return end local success, currentState = pcall(function() return plrModel:GetAttribute("State") end) if success and currentState then if currentState == "Slide" then pcall(function() plrModel:SetAttribute("State", "EmotingSlide") end) elseif currentState == "EmotingSlide" then setFriction(slideFrictionValue) else setFriction(5) end else setFriction(5) end end MainTab:Toggle({ Title = "Infinite Slide", Value = false, Callback = function(state) infiniteSlideEnabled = state if slideConnection then slideConnection:Disconnect() slideConnection = nil end if state then cachedTables = getConfigTables() updatePlayerModel() slideConnection = RunService.Heartbeat:Connect(onHeartbeat) LocalPlayer.CharacterAdded:Connect(function() wait(0.1) updatePlayerModel() end) else cachedTables = nil plrModel = nil setFriction(5) end end, }) MainTab:Input({ Title = "Set Infinite Slide Speed (Negative Only)", Value = tostring(slideFrictionValue), Placeholder = "-8 (negative only)", Callback = function(text) local num = tonumber(text) if num and num < 0 then slideFrictionValue = num end end, }) MainTab:Section({ Title = "" }) local player = game:GetService("Players").LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local UserInputService = game:GetService("UserInputService") getgenv().autoJumpEnabled = false getgenv().bhopMode = "Acceleration" getgenv().bhopAccelValue = -0.1 local function makeDraggable(frame) local dragging, dragInput, dragStart, startPos frame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true dragStart = input.Position startPos = frame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) frame.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.Touch or input.UserInputType == Enum.UserInputType.MouseMovement then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if dragging and input == dragInput then 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 end) end local function createToggleGui(name, varName, yOffset) local gui = playerGui:FindFirstChild(name.."Gui") if gui then gui:Destroy() end gui = Instance.new("ScreenGui", playerGui) gui.Name = name.."Gui" gui.IgnoreGuiInset = true gui.ResetOnSpawn = false gui.Enabled = false local frame = Instance.new("Frame", gui) frame.Size = UDim2.new(0, 190, 0, 30) frame.Position = UDim2.new(0.5, -95, 0.12 + yOffset, 0) frame.BackgroundColor3 = Color3.fromRGB(30, 50, 80) frame.BackgroundTransparency = 0.35 frame.BorderSizePixel = 0 makeDraggable(frame) local corner = Instance.new("UICorner", frame) corner.CornerRadius = UDim.new(1, 0) local stroke = Instance.new("UIStroke", frame) stroke.Color = Color3.fromRGB(100, 160, 255) stroke.Thickness = 2 local label = Instance.new("TextLabel", frame) label.Text = name label.Size = UDim2.new(0.55, 0, 1, 0) label.Position = UDim2.new(0, 10, 0, 0) label.BackgroundTransparency = 1 label.TextColor3 = Color3.fromRGB(220, 240, 255) label.Font = Enum.Font.Roboto label.TextSize = 14 label.TextXAlignment = Enum.TextXAlignment.Left local toggleBtn = Instance.new("TextButton", frame) toggleBtn.Name = "ToggleButton" toggleBtn.Text = getgenv()[varName] and "On" or "Off" toggleBtn.Size = UDim2.new(0.3, 0, 0.75, 0) toggleBtn.Position = UDim2.new(0.65, 0, 0.13, 0) toggleBtn.BackgroundColor3 = getgenv()[varName] and Color3.fromRGB(0, 120, 80) or Color3.fromRGB(40, 40, 45) toggleBtn.TextColor3 = Color3.new(1, 1, 1) toggleBtn.Font = Enum.Font.Roboto toggleBtn.TextSize = 13 local buttonCorner = Instance.new("UICorner", toggleBtn) buttonCorner.CornerRadius = UDim.new(1, 0) toggleBtn.MouseButton1Click:Connect(function() getgenv()[varName] = not getgenv()[varName] toggleBtn.Text = getgenv()[varName] and "On" or "Off" toggleBtn.BackgroundColor3 = getgenv()[varName] and Color3.fromRGB(0, 120, 80) or Color3.fromRGB(40, 40, 45) end) return gui end MainTab:Toggle({ Title = "Bhop", Value = false, Callback = function(state) if not jumpGui then jumpGui = createToggleGui("Bhop", "autoJumpEnabled", 0.12) end jumpGui.Enabled = state end }) MainTab:Dropdown({ Title = "Bhop Mode", Values = {"Acceleration", "No Acceleration"}, Multi = false, Default = 1, Callback = function(value) getgenv().bhopMode = value end }) MainTab:Input({ Title = "Bhop Acceleration (Negative Only)", Placeholder = "-0.5", Numeric = true, Callback = function(value) if tostring(value):sub(1, 1) == "-" then getgenv().bhopAccelValue = tonumber(value) end end }) task.spawn(function() while true do local friction = 5 if getgenv().autoJumpEnabled and getgenv().bhopMode == "Acceleration" then friction = getgenv().bhopAccelValue or -5 end if getgenv().autoJumpEnabled == false then friction = 5 end for _, t in pairs(getgc(true)) do if type(t) == "table" and rawget(t, "Friction") then if getgenv().bhopMode == "No Acceleration" then else t.Friction = friction end end end task.wait(0.15) end end) task.spawn(function() while true do if getgenv().autoJumpEnabled and getgenv().bhopMode == "Acceleration" then local character = player.Character if character and character:FindFirstChild("Humanoid") then local humanoid = character.Humanoid if humanoid:GetState() ~= Enum.HumanoidStateType.Jumping and humanoid:GetState() ~= Enum.HumanoidStateType.Freefall then humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end end if getgenv().autoJumpEnabled and getgenv().bhopMode == "No Acceleration" then local character = player.Character if character and character:FindFirstChild("Humanoid") then local humanoid = character.Humanoid if humanoid:GetState() ~= Enum.HumanoidStateType.Jumping and humanoid:GetState() ~= Enum.HumanoidStateType.Freefall then humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end task.wait(0.05) else task.wait() end end end) task.spawn(function() while true do if getgenv().autoCarryEnabled then local char = player.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") if hrp then for _, other in ipairs(game:GetService("Players"):GetPlayers()) do if other ~= player and other.Character and other.Character:FindFirstChild("HumanoidRootPart") then local dist = (hrp.Position - other.Character.HumanoidRootPart.Position).Magnitude if dist <= 20 then local args = { "Carry", [3] = other.Name } pcall(function() ReplicatedStorage:WaitForChild("Events"):WaitForChild("Character"):WaitForChild("Interact"):FireServer(unpack(args)) end) task.wait(0.01) end end end end end task.wait(0.1) end end) MainTab:Section({ Title = "" }) local emoteList = {} local success, emotesFolder = pcall(function() return game:GetService("ReplicatedStorage").Items.Emotes end) if success and typeof(emotesFolder) == "Instance" then for _, emote in ipairs(emotesFolder:GetChildren()) do if emote:IsA("ModuleScript") or emote:IsA("LocalScript") or emote:IsA("Script") then table.insert(emoteList, emote.Name) end end end table.sort(emoteList) getgenv().SelectedEmote = nil MainTab:Dropdown({ Title = "Select Emote", Values = emoteList, Multi = false, Callback = function(option) getgenv().SelectedEmote = option end }) getgenv().EmoteEnabled = false MainTab:Toggle({ Title = "Enable Emote (Hold Crouch Button)", Default = false, Callback = function(state) getgenv().EmoteEnabled = state end }) task.spawn(function() local Players = game:GetService("Players") local player = Players.LocalPlayer local guiPath = { "PlayerGui", "Shared", "HUD", "Mobile", "Right", "Mobile", "CrouchButton" } local function waitForDescendant(parent, name) local found = parent:FindFirstChild(name, true) while not found do parent.DescendantAdded:Wait() found = parent:FindFirstChild(name, true) end return found end local function connectCrouchButton() local gui = player:WaitForChild(guiPath[1]) for i = 2, #guiPath do gui = waitForDescendant(gui, guiPath[i]) end local button = gui local holding = false local validHold = false button.MouseButton1Down:Connect(function() holding = true validHold = true task.delay(0.5, function() if holding and validHold and getgenv().EmoteEnabled and getgenv().SelectedEmote then local args = { [1] = getgenv().SelectedEmote } game:GetService("ReplicatedStorage"):WaitForChild("Events", 9e9):WaitForChild("Character", 9e9):WaitForChild("Emote", 9e9):FireServer(unpack(args)) end end) end) button.MouseButton1Up:Connect(function() holding = false validHold = false end) end while true do pcall(connectCrouchButton) task.wait(1) end end) -- dumb ass lag switch MainTab:Section({ Title = "Utility" }) local function createLagGui() if lagGui then lagGui:Destroy() end lagGui = Instance.new("ScreenGui", playerGui) lagGui.Name = "LagSwitchGui" lagGui.IgnoreGuiInset = true lagGui.ResetOnSpawn = false lagGui.Enabled = getgenv().lagSwitchEnabled local frame = Instance.new("Frame", lagGui) frame.Size = UDim2.new(0, 190, 0, 30) frame.Position = UDim2.new(0.5, -95, 0.35, 0) frame.BackgroundColor3 = Color3.fromRGB(30, 50, 80) frame.BackgroundTransparency = 0.35 frame.BorderSizePixel = 0 makeDraggable(frame) local corner = Instance.new("UICorner", frame) corner.CornerRadius = UDim.new(1, 0) local stroke = Instance.new("UIStroke", frame) stroke.Color = Color3.fromRGB(100, 160, 255) stroke.Thickness = 2 local label = Instance.new("TextLabel", frame) label.Text = "Lag Switch" label.Size = UDim2.new(0.55, 0, 1, 0) label.Position = UDim2.new(0, 10, 0, 0) label.BackgroundTransparency = 1 label.TextColor3 = Color3.fromRGB(220, 240, 255) label.Font = Enum.Font.Roboto label.TextSize = 14 label.TextXAlignment = Enum.TextXAlignment.Left lagGuiButton = Instance.new("TextButton", frame) lagGuiButton.Name = "ToggleButton" lagGuiButton.Text = "Trigger" lagGuiButton.Size = UDim2.new(0.3, 0, 0.75, 0) lagGuiButton.Position = UDim2.new(0.65, 0, 0.13, 0) lagGuiButton.BackgroundColor3 = Color3.fromRGB(0, 120, 80) lagGuiButton.TextColor3 = Color3.new(1, 1, 1) lagGuiButton.Font = Enum.Font.Roboto lagGuiButton.TextSize = 13 local buttonCorner = Instance.new("UICorner", lagGuiButton) buttonCorner.CornerRadius = UDim.new(1, 0) lagGuiButton.MouseButton1Click:Connect( function() task.spawn( function() local start = tick() while tick() - start < (getgenv().lagDuration or 0.5) do local a = math.random(1, 1000000) * math.random(1, 1000000) a = a / math.random(1, 10000) end end ) end ) end MainTab:Toggle( { Title = "Lag Switch", Icon = "zap", Default = false, Callback = function(state) getgenv().lagSwitchEnabled = state if state then if not lagGui then createLagGui() else lagGui.Enabled = true end else if lagGui then lagGui.Enabled = false end end end } ) MainTab:Input( { Title = "Lag Duration (seconds)", Default = tostring(getgenv().lagDuration), Placeholder = "Enter seconds", NumbersOnly = true, Callback = function(text) local n = tonumber(text) if n and n > 0 then getgenv().lagDuration = n end end } ) WindowTab:Section({ Title = "Window" }) local themeValues = {} for name, _ in pairs(WindUI:GetThemes()) do table.insert(themeValues, name) end local themeDropdown = WindowTab:Dropdown({ Title = "Select Theme", Multi = false, AllowNone = false, Values = themeValues, Callback = function(theme) WindUI:SetTheme(theme) end }) themeDropdown:Select(WindUI:GetCurrentTheme()) local currentBackground = "rbxassetid://1234" local function applyBackground(value) -- Detect video links and auto-prefix if needed if value:match("^https?://") and value:match("%.webm") then currentBackground = "video:" .. value elseif value:match("^video:") or value:match("^rbxassetid://") then currentBackground = value elseif value:match("^%d+$") then currentBackground = "rbxassetid://" .. value else currentBackground = "" end Window:SetBackgroundImage(currentBackground) end local BackgroundInput = WindowTab:Input({ Title = "Background Image/Video", Value = currentBackground:match("%d+") or "", Placeholder = "Asset ID or Video Link", Callback = function(input) applyBackground(input) end }) local RecommendBackgroundDropdown = WindowTab:Dropdown({ Title = "Recommended Backgrounds", Values = { "79199183782805", "85878831310179", "easter egg ig >:3" }, Default = currentBackground:match("%d+"), Callback = function(option) applyBackground(option) local tb = BackgroundInput._TextBox if tb then if option:match("^rbxassetid://") then tb.Text = option:match("%d+") elseif option:match("^video:") then tb.Text = option:gsub("^video:", "") else tb.Text = option end end end }) local RemoveBackgroundButton = WindowTab:Button({ Title = "Remove Background", Callback = function() applyBackground("") local tb = BackgroundInput._TextBox if tb then tb.Text = "" end RecommendBackgroundDropdown:Select(nil) end }) local ToggleTransparency = WindowTab:Toggle({ Title = "Toggle Window Transparency", Callback = function(e) Window:ToggleTransparency(e) end, Value = WindUI:GetTransparency() }) local ConfigManager = Window.ConfigManager local myConfig = ConfigManager:CreateConfig("LightingWareConfig") myConfig:Register("speed", speedInput) myConfig:Register("jumpCap", jumpCapInput) myConfig:Register("strafe", strafeInput) myConfig:Register("autoCarry", autoCarryToggle) myConfig:Register("autoRevive", autoReviveToggle) myConfig:Register("autoJump", autoJumpToggle) myConfig:Register("background", BackgroundInput) myConfig:Register("theme", themeDropdown) myConfig:Register("transparency", ToggleTransparency) WindowTab:Section({ Title = "Configuration" }) WindowTab:Button({ Title = "Save Configuration", Callback = function() myConfig:Save() end }) WindowTab:Button({ Title = "Load Configuration", Callback = function() myConfig:Load() end }) Window:SelectTab(1)