-- ========================================== -- 1. RE-EXECUTION CLEANUP & STATE STORAGE -- ========================================== if _G.UniversalHubCleanup then pcall(_G.UniversalHubCleanup) end local connections = {} local activeLoops = {true} local Lighting = game:GetService("Lighting") local Players = game:GetService("Players") local HttpService = game:GetService("HttpService") local SoundService = game:GetService("SoundService") local LocalPlayer = Players.LocalPlayer _G.OriginalLighting = _G.OriginalLighting or { Brightness = Lighting.Brightness, Ambient = Lighting.Ambient, GlobalShadows = true, FogEnd = Lighting.FogEnd, FogStart = Lighting.FogStart, } _G.OriginalGravity = workspace.Gravity _G.OriginalCameraMaxZoom = LocalPlayer.CameraMaxZoomDistance _G.OriginalFallenPartsDestroyHeight = workspace.FallenPartsDestroyHeight Lighting.GlobalShadows = true -- Spectate Tracer Cleanup Variables local spectateBeam = nil local spectateAtt0 = nil local spectateAtt1 = nil local function removeSpectateTracer() if spectateBeam then pcall(function() spectateBeam:Destroy() end) spectateBeam = nil end if spectateAtt0 then pcall(function() spectateAtt0:Destroy() end) spectateAtt0 = nil end if spectateAtt1 then pcall(function() spectateAtt1:Destroy() end) spectateAtt1 = nil end end -- Custom Highlight & Billboard Containers Cleanup local customHighlightFolder = Instance.new("Folder") customHighlightFolder.Name = "UniversalHub_CustomHighlights" customHighlightFolder.Parent = workspace local playerHighlights = {} local npcHighlights = {} local function clearAllCustomHighlights() if customHighlightFolder then customHighlightFolder:ClearAllChildren() end table.clear(playerHighlights) table.clear(npcHighlights) end _G.UniversalHubCleanup = function() activeLoops[1] = false for _, conn in ipairs(connections) do if conn and conn.Connected then conn:Disconnect() end end table.clear(connections) removeSpectateTracer() clearAllCustomHighlights() if customHighlightFolder then customHighlightFolder:Destroy() end if workspace:FindFirstChild("UniversalFloatPlatform") then workspace.UniversalFloatPlatform:Destroy() end local cam = workspace.CurrentCamera if cam and LocalPlayer.Character then local hum = LocalPlayer.Character:FindFirstChildOfClass("Humanoid") local hrp = LocalPlayer.Character:FindFirstChild("HumanoidRootPart") if hum then cam.CameraSubject = hum elseif hrp then cam.CameraSubject = hrp end cam.CameraType = Enum.CameraType.Custom end if _G.OriginalLighting then Lighting.Brightness = _G.OriginalLighting.Brightness Lighting.Ambient = _G.OriginalLighting.Ambient Lighting.GlobalShadows = _G.OriginalLighting.GlobalShadows Lighting.FogEnd = _G.OriginalLighting.FogEnd Lighting.FogStart = _G.OriginalLighting.FogStart end workspace.Gravity = _G.OriginalGravity workspace.FallenPartsDestroyHeight = _G.OriginalFallenPartsDestroyHeight LocalPlayer.CameraMaxZoomDistance = _G.OriginalCameraMaxZoom if _G.FluentWindow then pcall(function() _G.FluentWindow:Destroy() end) end end -- ========================================== -- 2. EXECUTOR TIER & ENVIRONMENT DETECTION -- ========================================== local executorName = "Unknown" local executorVersion = "Unknown" pcall(function() if identifyexecutor then executorName, executorVersion = identifyexecutor() elseif getexecutorname then executorName = getexecutorname() end end) local lowerExecutorName = string.lower(executorName) local isLowLevelExecutor = ( string.find(lowerExecutorName, "xeno") or string.find(lowerExecutorName, "delta") or string.find(lowerExecutorName, "hydrogen") or string.find(lowerExecutorName, "fluxus") ) print("[FluentHeart]: Detected Executor -> " .. executorName .. " | Mode: " .. (isLowLevelExecutor and "Low-Level Compatibility Mode" or "Standard/Medium Mode")) -- ========================================== -- 3. SERVICES & CORE VARIABLES -- ========================================== local RunService = game:GetService("RunService") local Workspace = game:GetService("Workspace") local UserInputService = game:GetService("UserInputService") local StatsService = game:GetService("Stats") local Mouse = LocalPlayer:GetMouse() -- Settings & Flags local walkSpeedValue = 16 local jumpPowerValue = 50 local fovValue = 70 local customCameraZoomEnabled = false local customCameraZoomValue = _G.OriginalCameraMaxZoom local tpToolEnabled = false local floatEnabled = false local qeControlEnabled = true local floatSpeedValue = 42 local floatBaseY = nil local floatYOffset = -2 local potatoGraphicsEnabled = false local fullbrightEnabled = false local noFogEnabled = false local customGravityEnabled = false local customGravityValue = math.floor(_G.OriginalGravity) local disableSlidingEnabled = false local instantAirControlEnabled = false local joinLogEnabled = false local playerJoinTimes = {} local lowHpTrackerEnabled = false local deathListenerEnabled = false local deathLogs = {} local lowHpDebounce = {} local spectatingPlayer = nil local selectedTpPlayer = nil local spawnCFrame = nil -- Sound Configuration System local soundSettings = { LowHP = { Volume = 0.5, SoundId = "rbxassetid://4590657391" }, PlayerLeft = { Volume = 0.5, SoundId = "rbxassetid://9114220737" }, General = { Volume = 0.5, SoundId = "rbxassetid://9060817403" } } local function playCustomSound(category) pcall(function() local cfg = soundSettings[category] or soundSettings.General local sound = Instance.new("Sound") sound.SoundId = cfg.SoundId sound.Volume = cfg.Volume sound.Parent = SoundService sound:Play() game:GetService("Debris"):AddItem(sound, 3) end) end local function recordSpawnLocation(char) local hrp = char:WaitForChild("HumanoidRootPart", 5) if hrp then task.wait(0.2) spawnCFrame = hrp.CFrame end end if LocalPlayer.Character then task.spawn(recordSpawnLocation, LocalPlayer.Character) end table.insert(connections, LocalPlayer.CharacterAdded:Connect(recordSpawnLocation)) for _, player in ipairs(Players:GetPlayers()) do playerJoinTimes[player] = tick() end table.insert(connections, Players.PlayerAdded:Connect(function(player) playerJoinTimes[player] = tick() end)) local originalMaterials = {} task.spawn(function() local parts = Workspace:GetDescendants() local yieldLimit = isLowLevelExecutor and 100 or 250 for i = 1, #parts do local part = parts[i] if part:IsA("BasePart") then originalMaterials[part] = part.Material end if i % yieldLimit == 0 then task.wait() end end end) table.insert(connections, Workspace.DescendantAdded:Connect(function(part) if part:IsA("BasePart") then originalMaterials[part] = part.Material if potatoGraphicsEnabled then part.Material = Enum.Material.SmoothPlastic end end end)) -- ========================================== -- 4. HELPER FUNCTIONS & LOGIC -- ========================================== local function giveTeleportTool() local char = LocalPlayer.Character if not char then return end local backpack = LocalPlayer:FindFirstChildOfClass("Backpack") if not backpack then return end if backpack:FindFirstChild("Teleport Tool") or char:FindFirstChild("Teleport Tool") then return end local tool = Instance.new("Tool") tool.Name = "Teleport Tool" tool.RequiresHandle = false tool.Activated:Connect(function() local hrp = char:FindFirstChild("HumanoidRootPart") if hrp and Mouse.Hit then local currentRotation = hrp.CFrame - hrp.CFrame.Position hrp.CFrame = CFrame.new(Mouse.Hit.Position + Vector3.new(0, 3, 0)) * currentRotation end end) tool.Parent = backpack end local floatPlatform = nil local function updateFloatPlatform(dt) if not floatEnabled then if floatPlatform then floatPlatform:Destroy() floatPlatform = nil end floatBaseY = nil return end local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") local hum = char and char:FindFirstChildOfClass("Humanoid") if hrp and hum then local hipOffset = (hum.RigType == Enum.HumanoidRigType.R15) and (hum.HipHeight + 1.2) or 3.0 local targetY = hrp.Position.Y - hipOffset if not floatBaseY then floatBaseY = targetY end if math.abs(targetY - floatBaseY) > 15 then floatBaseY = targetY end if hum:GetState() == Enum.HumanoidStateType.Jumping or hum:GetState() == Enum.HumanoidStateType.Freefall then if targetY > floatBaseY and (targetY - floatBaseY) < 12 then floatBaseY = targetY end else if math.abs(targetY - floatBaseY) > 0.5 then floatBaseY = targetY end end local verticalSpeed = floatSpeedValue * dt if qeControlEnabled then if UserInputService:IsKeyDown(Enum.KeyCode.E) then hrp.CFrame = hrp.CFrame + Vector3.new(0, verticalSpeed, 0) floatBaseY = floatBaseY + verticalSpeed elseif UserInputService:IsKeyDown(Enum.KeyCode.Q) then hrp.CFrame = hrp.CFrame - Vector3.new(0, verticalSpeed, 0) floatBaseY = floatBaseY - verticalSpeed end end if not floatPlatform or not floatPlatform.Parent then floatPlatform = Instance.new("Part") floatPlatform.Name = "UniversalFloatPlatform" floatPlatform.Size = Vector3.new(6, 1, 6) floatPlatform.Anchored = true floatPlatform.CanCollide = true floatPlatform.Transparency = 0.9 floatPlatform.Material = Enum.Material.ForceField floatPlatform.Color = Color3.fromRGB(0, 170, 255) floatPlatform.Parent = Workspace end local finalY = floatBaseY + floatYOffset floatPlatform.CFrame = CFrame.new(hrp.Position.X, finalY, hrp.Position.Z) end end local function isCharacterPart(part) local ancestor = part.Parent while ancestor and ancestor ~= Workspace do if ancestor:FindFirstChildOfClass("Humanoid") then return true end ancestor = ancestor.Parent end return false end local function stopSpectating() spectatingPlayer = nil removeSpectateTracer() local cam = Workspace.CurrentCamera local char = LocalPlayer.Character if cam and char then local hum = char:FindFirstChildOfClass("Humanoid") local hrp = char:FindFirstChild("HumanoidRootPart") if hum then cam.CameraSubject = hum elseif hrp then cam.CameraSubject = hrp end cam.CameraType = Enum.CameraType.Custom end end local function updateSpectateTracer() if not spectatingPlayer or not spectatingPlayer.Character or not LocalPlayer.Character then removeSpectateTracer() return end local myHRP = LocalPlayer.Character:FindFirstChild("HumanoidRootPart") local targetHRP = spectatingPlayer.Character:FindFirstChild("HumanoidRootPart") if not myHRP or not targetHRP then removeSpectateTracer() return end if not spectateBeam or not spectateBeam.Parent then spectateAtt0 = Instance.new("Attachment") spectateAtt0.Name = "SpectateAtt0" spectateAtt0.Parent = myHRP spectateAtt1 = Instance.new("Attachment") spectateAtt1.Name = "SpectateAtt1" spectateAtt1.Parent = targetHRP spectateBeam = Instance.new("Beam") spectateBeam.Name = "SpectateTracer" spectateBeam.Attachment0 = spectateAtt0 spectateBeam.Attachment1 = spectateAtt1 spectateBeam.Color = ColorSequence.new(Color3.fromRGB(255, 255, 255)) spectateBeam.Width0 = 0.05 spectateBeam.Width1 = 0.05 spectateBeam.FaceCamera = true spectateBeam.LightEmission = 1 spectateBeam.Transparency = NumberSequence.new(0) spectateBeam.Parent = myHRP else if spectateAtt0 and spectateAtt0.Parent ~= myHRP then spectateAtt0.Parent = myHRP end if spectateAtt1 and spectateAtt1.Parent ~= targetHRP then spectateAtt1.Parent = targetHRP end end end -- ========================================== -- 5. FLUENT & ADDONS INITIALIZATION -- ========================================== local successLoad, Fluent = false, nil pcall(function() successLoad, Fluent = pcall(function() return loadstring(game:HttpGet("https://github.com/dawid-scripts/Fluent/releases/latest/download/main.lua"))() end) end) if not successLoad or not Fluent then pcall(function() successLoad, Fluent = pcall(function() return loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/main.lua"))() end) end) end if not successLoad or not Fluent then local httpRequest = (syn and syn.request) or request or http_request or (Fluxus and Fluxus.request) if httpRequest then pcall(function() local res = httpRequest({ Url = "https://raw.githubusercontent.com/dawid-scripts/Fluent/master/main.lua", Method = "GET" }) if res and res.Body then successLoad, Fluent = pcall(loadstring(res.Body)) end end) end end if not successLoad or not Fluent then warn("[FluentHeart]: Critical Error: Failed to load Fluent Library.") return end local SaveManager = nil pcall(function() SaveManager = loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/SaveManager.lua"))() end) local Window = Fluent:CreateWindow({ Title = "Universal Client Hub (" .. (isLowLevelExecutor and "Lite/Xeno Mode" or "Full Mode") .. ")", SubTitle = "Fluent Edition", TabWidth = 160, Size = UDim2.fromOffset(600, 480), Acrylic = not isLowLevelExecutor, Theme = "Dark" }) _G.FluentWindow = Window table.insert(connections, UserInputService.InputBegan:Connect(function(input, gameProcessed) if not gameProcessed and input.KeyCode == Enum.KeyCode.RightShift then Window:Minimize() end end)) local Tabs = { Player = Window:AddTab({ Title = "Local Player", Icon = "user" }), Players = Window:AddTab({ Title = "Players", Icon = "users" }), Visuals = Window:AddTab({ Title = "Visuals", Icon = "eye" }), Utilities = Window:AddTab({ Title = "Utilities & Tools", Icon = "wrench" }), Logs = Window:AddTab({ Title = "Server & Logs", Icon = "file-text" }), Config = Window:AddTab({ Title = "Config & Sound", Icon = "settings" }), Readme = Window:AddTab({ Title = "README", Icon = "book" }) } -- ========================================== -- 6. LOCAL PLAYER TAB -- ========================================== Tabs.Player:AddButton({ Title = "Spawn TP", Description = "Teleports you back to where you spawned", Callback = function() local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") if myHRP and spawnCFrame then myHRP.CFrame = spawnCFrame playCustomSound("General") Fluent:Notify({ Title = "Teleported", Content = "Teleported back to spawn location.", Duration = 2 }) else playCustomSound("General") Fluent:Notify({ Title = "Spawn Error", Content = "Spawn location not recorded yet.", Duration = 2 }) end end }) Tabs.Player:AddSection("Movement & Modifiers") Tabs.Player:AddSlider("WalkSpeedSlider", { Title = "WalkSpeed", Default = 16, Min = 16, Max = 250, Rounding = 0, Callback = function(Value) walkSpeedValue = Value local hum = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid") if hum then hum.WalkSpeed = Value end end }) Tabs.Player:AddToggle("DisableSlidingToggle", { Title = "Disable Sliding", Default = false, Callback = function(Value) disableSlidingEnabled = Value end }) Tabs.Player:AddSlider("JumpPowerSlider", { Title = "JumpPower", Default = 50, Min = 50, Max = 300, Rounding = 0, Callback = function(Value) jumpPowerValue = Value local hum = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid") if hum then hum.UseJumpPower = true hum.JumpPower = Value end end }) Tabs.Player:AddToggle("GravityToggle", { Title = "Gravity", Default = false, Callback = function(Value) customGravityEnabled = Value workspace.Gravity = Value and customGravityValue or _G.OriginalGravity end }) Tabs.Player:AddSlider("GravitySlider", { Title = "Custom Gravity", Default = math.floor(_G.OriginalGravity), Min = 0, Max = math.floor(_G.OriginalGravity * 3), Rounding = 0, Callback = function(Value) customGravityValue = Value if customGravityEnabled then workspace.Gravity = Value end end }) Tabs.Player:AddToggle("MaxSlopeToggle", { Title = "Max Slope Angle (360°)", Default = false, Callback = function(Value) local hum = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid") if hum then hum.MaxSlopeAngle = Value and 360 or 45 end end }) Tabs.Player:AddToggle("InstantAirControlToggle", { Title = "Disable Air Sliding", Default = false, Callback = function(Value) instantAirControlEnabled = Value end }) Tabs.Player:AddToggle("NoVoidToggle", { Title = "No Void", Default = false, Callback = function(Value) if Value then workspace.FallenPartsDestroyHeight = -900000000000000000000000 else workspace.FallenPartsDestroyHeight = _G.OriginalFallenPartsDestroyHeight or -500 end end }) Tabs.Player:AddToggle("CameraZoomToggle", { Title = "Max Camera Distance", Default = false, Callback = function(Value) customCameraZoomEnabled = Value if Value then LocalPlayer.CameraMaxZoomDistance = customCameraZoomValue else LocalPlayer.CameraMaxZoomDistance = _G.OriginalCameraMaxZoom end end }) Tabs.Player:AddSlider("CameraMaxZoomSlider", { Title = "Camera Distance Max", Default = math.clamp(math.floor(_G.OriginalCameraMaxZoom), 0, 1280), Min = 0, Max = 1280, Rounding = 0, Callback = function(Value) local stepValue = math.floor(Value / 10) * 10 customCameraZoomValue = stepValue if customCameraZoomEnabled then LocalPlayer.CameraMaxZoomDistance = stepValue end end }) Tabs.Player:AddSlider("FOVSlider", { Title = "Field of View", Default = 70, Min = 1, Max = 360, Rounding = 0, Callback = function(Value) fovValue = Value Workspace.CurrentCamera.FieldOfView = Value end }) Tabs.Player:AddToggle("FloatToggle", { Title = "Float Platform", Default = false, Callback = function(Value) floatEnabled = Value floatBaseY = nil if not Value and floatPlatform then floatPlatform:Destroy() floatPlatform = nil end end }) Tabs.Player:AddSlider("FloatOffsetSlider", { Title = "Platform Y-Level", Default = 0, Min = -5, Max = 5, Rounding = 1, Callback = function(Value) floatYOffset = Value end }) Tabs.Player:AddToggle("FloatQEToggle", { Title = "Enable Holdable Q / E Player Movement Controls", Default = true, Callback = function(Value) qeControlEnabled = Value end }) Tabs.Player:AddSlider("FloatSpeedSlider", { Title = "Float Q/E Speed", Default = 42, Min = 10, Max = 200, Rounding = 0, Callback = function(Value) floatSpeedValue = Value end }) Tabs.Player:AddToggle("TPToolToggle", { Title = "Give TP Tool", Default = false, Callback = function(Value) tpToolEnabled = Value if Value then giveTeleportTool() end end }) -- ========================================== -- 7. PLAYERS TAB -- ========================================== Tabs.Players:AddSection("Player Teleport & Spectate") local spectateDropdown local playerDropdown playerDropdown = Tabs.Players:AddDropdown("PlayerTeleportDropdown", { Title = "Select Target Player to TP", Values = {"None"}, Multi = false, Default = "None", Callback = function(Value) selectedTpPlayer = Value if Value and Value ~= "None" then local targetPlayer = Players:FindFirstChild(Value) if targetPlayer and targetPlayer.Character then local targetHRP = targetPlayer.Character:FindFirstChild("HumanoidRootPart") local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") if targetHRP and myHRP then myHRP.CFrame = targetHRP.CFrame * CFrame.new(0, 0, 3) playCustomSound("General") Fluent:Notify({ Title = "Teleported", Content = "Teleported to " .. targetPlayer.Name, Duration = 3 }) end else playCustomSound("General") Fluent:Notify({ Title = "Teleport Error", Content = "Player character not found.", Duration = 3 }) end end end }) spectateDropdown = Tabs.Players:AddDropdown("SpectatePlayerDropdown", { Title = "Select Player to Spectate", Values = {LocalPlayer.Name}, Multi = false, Default = LocalPlayer.Name, Callback = function(Value) if Value == "None" or not Value or Value == LocalPlayer.Name then if spectatingPlayer ~= nil then stopSpectating() playCustomSound("General") Fluent:Notify({ Title = "Camera Reset", Content = "Camera returned to your player.", Duration = 3 }) end return end local targetPlayer = Players:FindFirstChild(Value) if targetPlayer then spectatingPlayer = targetPlayer if targetPlayer.Character then local targetHum = targetPlayer.Character:FindFirstChildOfClass("Humanoid") local targetHRP = targetPlayer.Character:FindFirstChild("HumanoidRootPart") if Workspace.CurrentCamera then if targetHum then Workspace.CurrentCamera.CameraSubject = targetHum elseif targetHRP then Workspace.CurrentCamera.CameraSubject = targetHRP end end end updateSpectateTracer() playCustomSound("General") Fluent:Notify({ Title = "Spectating", Content = "Now spectating " .. targetPlayer.Name, Duration = 3 }) end end }) local function refreshPlayerLists() local tpNames = {} local spectateNames = {LocalPlayer.Name} for _, p in ipairs(Players:GetPlayers()) do if p ~= LocalPlayer then table.insert(tpNames, p.Name) table.insert(spectateNames, p.Name) end end if #tpNames == 0 then playerDropdown:SetValues({"None"}) else playerDropdown:SetValues(tpNames) end spectateDropdown:SetValues(spectateNames) end table.insert(connections, Players.PlayerAdded:Connect(refreshPlayerLists)) table.insert(connections, Players.PlayerRemoving:Connect(function(player) if spectatingPlayer == player then stopSpectating() if spectateDropdown and spectateDropdown.Value ~= LocalPlayer.Name then spectateDropdown:SetValue(LocalPlayer.Name) end playCustomSound("General") Fluent:Notify({ Title = "Spectate Stopped", Content = player.Name .. " left the server.", Duration = 4 }) end refreshPlayerLists() end)) refreshPlayerLists() Tabs.Players:AddSection("Player Trackers & Death Logs") Tabs.Players:AddToggle("LowHPTrackerToggle", { Title = "Track Low HP Players (<= 35 HP)", Default = false, Callback = function(Value) lowHpTrackerEnabled = Value end }) Tabs.Players:AddToggle("DeathListenerToggle", { Title = "Listen for Player Deaths & Log Position", Default = false, Callback = function(Value) deathListenerEnabled = Value end }) local deathDropdown = Tabs.Players:AddDropdown("DeathLocationDropdown", { Title = "Select Logged Death Location", Values = {"None"}, Multi = false, Default = "None", }) Tabs.Players:AddButton({ Title = "Teleport to Death Location", Callback = function() local selectedLabel = deathDropdown.Value for _, entry in ipairs(deathLogs) do if entry.label == selectedLabel then local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") if myHRP and entry.cframe then myHRP.CFrame = entry.cframe + Vector3.new(0, 3, 0) playCustomSound("General") Fluent:Notify({ Title = "Teleported", Content = "Teleported to death location of " .. entry.name, Duration = 3 }) end break end end end }) local function bindCharacterTrackers(player) if player == LocalPlayer then return end local function onCharacter(char) local hum = char:WaitForChild("Humanoid", 5) local hrp = char:WaitForChild("HumanoidRootPart", 5) if not hum or not hrp then return end table.insert(connections, hum.HealthChanged:Connect(function(health) if lowHpTrackerEnabled and health <= 35 and health > 0 then if not lowHpDebounce[player] then lowHpDebounce[player] = true playCustomSound("LowHP") Fluent:Notify({ Title = "Low HP Alert", Content = player.Name .. " is low! (" .. math.floor(health) .. " HP)", Duration = 4 }) end elseif health > 35 then lowHpDebounce[player] = nil end end)) table.insert(connections, hum.Died:Connect(function() if deathListenerEnabled then local deathCF = hrp.CFrame local timeStr = os.date("%I:%M:%S %p") local label = string.format("%s Died [%s]", player.Name, timeStr) playCustomSound("General") Fluent:Notify({ Title = "Player Died", Content = string.format("%s Died [%s]", player.Name, timeStr), Duration = 4 }) table.insert(deathLogs, 1, { name = player.Name, cframe = deathCF, label = label }) if #deathLogs > 200 then table.remove(deathLogs) end local labels = {} for _, entry in ipairs(deathLogs) do table.insert(labels, entry.label) end deathDropdown:SetValues(labels) end end)) end if player.Character then onCharacter(player.Character) end table.insert(connections, player.CharacterAdded:Connect(onCharacter)) end for _, player in ipairs(Players:GetPlayers()) do bindCharacterTrackers(player) end table.insert(connections, Players.PlayerAdded:Connect(bindCharacterTrackers)) -- ========================================== -- 8. VISUALS TAB (Path Evaluator + Highlights + ESP) -- ========================================== Tabs.Visuals:AddSection("Lighting & Graphics") Tabs.Visuals:AddToggle("ShadowsToggle", { Title = "Global Shadows", Default = true, Callback = function(Value) Lighting.GlobalShadows = Value end }) Tabs.Visuals:AddToggle("FullbrightToggle", { Title = "Fullbright Mode", Default = false, Callback = function(Value) fullbrightEnabled = Value if not Value then Lighting.Ambient = _G.OriginalLighting.Ambient Lighting.Brightness = _G.OriginalLighting.Brightness end end }) Tabs.Visuals:AddToggle("NoFogToggle", { Title = "Disable Fog", Default = false, Callback = function(Value) noFogEnabled = Value if Value then Lighting.FogEnd = 1000000 else Lighting.FogEnd = _G.OriginalLighting.FogEnd Lighting.FogStart = _G.OriginalLighting.FogStart end end }) Tabs.Visuals:AddToggle("PotatoToggle", { Title = "Potato Graphics (Smooth Plastic)", Default = false, Callback = function(Value) potatoGraphicsEnabled = Value if Value then for part, _ in pairs(originalMaterials) do if part and part.Parent then part.Material = Enum.Material.SmoothPlastic end end else for part, originalMat in pairs(originalMaterials) do if part and part.Parent then part.Material = originalMat end end end end }) Tabs.Visuals:AddSection("Instance Path Evaluator & Wall Highlights") local pathInputExpr = "workspace.spawn:GetChildren()[1]" local pathInputProp = "workspace.Spawn" local activePathHighlights = {} local pathHighlightTransparency = 0.5 local pathRangeLimit = 500 Tabs.Visuals:AddInput("PathInputExpression", { Title = "Expression Path (e.g. :GetChildren()[1])", Default = "workspace.spawn:GetChildren()[1]", Placeholder = "Enter Luau expression...", Numeric = false, Finished = false, Callback = function(Value) pathInputExpr = Value end }) Tabs.Visuals:AddInput("PathInputProperty", { Title = "Direct Property Path (e.g. workspace.Spawn)", Default = "workspace.Spawn", Placeholder = "Enter property path...", Numeric = false, Finished = false, Callback = function(Value) pathInputProp = Value end }) Tabs.Visuals:AddSlider("PathHighlightTransparency", { Title = "Path Highlight Transparency", Default = 0.5, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) pathHighlightTransparency = Value for _, hl in ipairs(activePathHighlights) do if hl and hl.Parent then hl.FillTransparency = Value hl.OutlineTransparency = Value end end end }) Tabs.Visuals:AddSlider("PathRangeLimitSlider", { Title = "Path Highlight Range Limit (Studs)", Default = 500, Min = 50, Max = 10000, Step = 10, Rounding = 0, Callback = function(Value) pathRangeLimit = Value end }) Tabs.Visuals:AddButton({ Title = "Highlight Evaluated Paths (Through Walls)", Description = "Evaluates paths within range and places wall-penetrating highlights", Callback = function() for _, hl in ipairs(activePathHighlights) do if hl then hl:Destroy() end end table.clear(activePathHighlights) local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") local function evaluateAndHighlight(str) if not str or str == "" then return end pcall(function() local fn = loadstring("return " .. str) if fn then local res = fn() local targets = {} if typeof(res) == "Instance" then table.insert(targets, res) elseif type(res) == "table" then for _, item in pairs(res) do if typeof(item) == "Instance" then table.insert(targets, item) end end end for _, target in ipairs(targets) do if target:IsA("BasePart") or target:IsA("Model") then local partToCheck = target:IsA("Model") and target.PrimaryPart or target if partToCheck and myHRP then local dist = (partToCheck.Position - myHRP.Position).Magnitude if dist <= pathRangeLimit then local highlight = Instance.new("Highlight") highlight.Adornee = target highlight.FillColor = Color3.fromRGB(255, 170, 0) highlight.OutlineColor = Color3.fromRGB(255, 255, 255) highlight.FillTransparency = pathHighlightTransparency highlight.OutlineTransparency = pathHighlightTransparency highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.Parent = customHighlightFolder table.insert(activePathHighlights, highlight) end end end end end end) end evaluateAndHighlight(pathInputExpr) evaluateAndHighlight(pathInputProp) playCustomSound("General") Fluent:Notify({ Title = "Path Evaluated", Content = "Wall-penetrating highlights applied within range.", Duration = 3 }) end }) Tabs.Visuals:AddButton({ Title = "Clear Path Highlights", Callback = function() for _, hl in ipairs(activePathHighlights) do if hl then hl:Destroy() end end table.clear(activePathHighlights) playCustomSound("General") Fluent:Notify({ Title = "Cleared", Content = "Removed custom path highlights.", Duration = 2 }) end }) Tabs.Visuals:AddSection("Player & NPC ESP Highlights") local allPlayersHighlightEnabled = false local allPlayersHighlightTransparency = 0.5 local playerHealthNameEnabled = false local playerTextSize = 14 local playerTextTransparency = 0 local playerRangeLimit = 500 local allNpcsHighlightEnabled = false local allNpcsHighlightTransparency = 0.5 local npcHealthNameEnabled = false local npcTextSize = 14 local npcTextTransparency = 0 local npcRangeLimit = 500 Tabs.Visuals:AddToggle("HighlightAllPlayersToggle", { Title = "Highlight All Players (Through Walls)", Default = false, Callback = function(Value) allPlayersHighlightEnabled = Value if not Value then for _, data in pairs(playerHighlights) do if data.highlight then data.highlight:Destroy(); data.highlight = nil end end end end }) Tabs.Visuals:AddToggle("PlayerHealthNameToggle", { Title = "Player Health & Name Display", Default = false, Callback = function(Value) playerHealthNameEnabled = Value if not Value then for _, data in pairs(playerHighlights) do if data.billboard then data.billboard:Destroy(); data.billboard = nil end data.textLabel = nil end end end }) Tabs.Visuals:AddSlider("PlayerHighlightTransparencySlider", { Title = "Player Highlight Transparency", Default = 0.5, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) allPlayersHighlightTransparency = Value for _, data in pairs(playerHighlights) do if data.highlight and data.highlight.Parent then data.highlight.FillTransparency = Value data.highlight.OutlineTransparency = Value end end end }) Tabs.Visuals:AddSlider("PlayerRangeLimitSlider", { Title = "Player ESP Range Limit (Studs)", Default = 500, Min = 50, Max = 10000, Step = 10, Rounding = 0, Callback = function(Value) playerRangeLimit = Value end }) Tabs.Visuals:AddSlider("PlayerTextSizeSlider", { Title = "Player Text Size", Default = 14, Min = 8, Max = 32, Rounding = 0, Callback = function(Value) playerTextSize = Value for _, data in pairs(playerHighlights) do if data.textLabel and data.textLabel.Parent then data.textLabel.TextSize = Value end end end }) Tabs.Visuals:AddSlider("PlayerTextTransparencySlider", { Title = "Player Text Transparency", Default = 0, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) playerTextTransparency = Value for _, data in pairs(playerHighlights) do if data.textLabel and data.textLabel.Parent then data.textLabel.TextTransparency = Value data.textLabel.TextStrokeTransparency = Value end end end }) Tabs.Visuals:AddToggle("HighlightAllNpcsToggle", { Title = "Highlight All NPCs (Through Walls)", Default = false, Callback = function(Value) allNpcsHighlightEnabled = Value if not Value then for _, data in pairs(npcHighlights) do if data.highlight then data.highlight:Destroy(); data.highlight = nil end end end end }) Tabs.Visuals:AddToggle("NpcHealthNameToggle", { Title = "NPC Health & Name Display", Default = false, Callback = function(Value) npcHealthNameEnabled = Value if not Value then for _, data in pairs(npcHighlights) do if data.billboard then data.billboard:Destroy(); data.billboard = nil end data.textLabel = nil end end end }) Tabs.Visuals:AddSlider("NpcHighlightTransparencySlider", { Title = "NPC Highlight Transparency", Default = 0.5, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) allNpcsHighlightTransparency = Value for _, data in pairs(npcHighlights) do if data.highlight and data.highlight.Parent then data.highlight.FillTransparency = Value data.highlight.OutlineTransparency = Value end end end }) Tabs.Visuals:AddSlider("NpcRangeLimitSlider", { Title = "NPC ESP Range Limit (Studs)", Default = 500, Min = 50, Max = 10000, Step = 10, Rounding = 0, Callback = function(Value) npcRangeLimit = Value end }) Tabs.Visuals:AddSlider("NpcTextSizeSlider", { Title = "NPC Text Size", Default = 14, Min = 8, Max = 32, Rounding = 0, Callback = function(Value) npcTextSize = Value for _, data in pairs(npcHighlights) do if data.textLabel and data.textLabel.Parent then data.textLabel.TextSize = Value end end end }) Tabs.Visuals:AddSlider("NpcTextTransparencySlider", { Title = "NPC Text Transparency", Default = 0, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) npcTextTransparency = Value for _, data in pairs(npcHighlights) do if data.textLabel and data.textLabel.Parent then data.textLabel.TextTransparency = Value data.textLabel.TextStrokeTransparency = Value end end end }) -- Optimized Throttled Loops for Highlighting & ESP (Prevents FPS Drops) local cachedNpcs = {} task.spawn(function() while activeLoops[1] do if allNpcsHighlightEnabled or npcHealthNameEnabled then local found = {} for _, obj in ipairs(Workspace:GetDescendants()) do if obj:IsA("Model") and obj:FindFirstChildOfClass("Humanoid") then if Players:GetPlayerFromCharacter(obj) == nil and obj ~= LocalPlayer.Character then table.insert(found, obj) end end end cachedNpcs = found else table.clear(cachedNpcs) end task.wait(1.0) -- Throttled background scanner (runs every 1 second instead of every frame) end end) table.insert(connections, RunService.Heartbeat:Connect(function() local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") -- Players loop for _, plr in ipairs(Players:GetPlayers()) do if plr ~= LocalPlayer and plr.Character then local char = plr.Character local head = char:FindFirstChild("Head") or char:FindFirstChild("HumanoidRootPart") local hrp = char:FindFirstChild("HumanoidRootPart") local hum = char:FindFirstChildOfClass("Humanoid") if not playerHighlights[plr] then playerHighlights[plr] = {} end local data = playerHighlights[plr] local inRange = true if myHRP and hrp then local dist = (hrp.Position - myHRP.Position).Magnitude if dist > playerRangeLimit then inRange = false end end -- Highlight Management if allPlayersHighlightEnabled and inRange then if not data.highlight or not data.highlight.Parent then local hl = Instance.new("Highlight") hl.Name = "PlrHighlight_" .. plr.Name hl.Adornee = char hl.FillColor = Color3.fromRGB(255, 255, 255) hl.OutlineColor = Color3.fromRGB(0, 0, 0) hl.FillTransparency = allPlayersHighlightTransparency hl.OutlineTransparency = allPlayersHighlightTransparency hl.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop hl.Parent = customHighlightFolder data.highlight = hl else data.highlight.Adornee = char end else if data.highlight then data.highlight:Destroy() data.highlight = nil end end -- Billboard / Text Management if playerHealthNameEnabled and inRange then if not data.billboard or not data.billboard.Parent then local bb = Instance.new("BillboardGui") bb.Name = "PlrText_" .. plr.Name bb.Size = UDim2.new(0, 200, 0, 50) bb.StudsOffset = Vector3.new(0, 2.5, 0) bb.AlwaysOnTop = true bb.Adornee = head or char local tl = Instance.new("TextLabel") tl.Size = UDim2.new(1, 0, 1, 0) tl.BackgroundTransparency = 1 tl.TextColor3 = Color3.fromRGB(255, 255, 255) tl.TextStrokeColor3 = Color3.fromRGB(0, 0, 0) tl.TextStrokeTransparency = playerTextTransparency tl.TextTransparency = playerTextTransparency tl.TextSize = playerTextSize tl.Font = Enum.Font.SourceSansBold tl.Parent = bb bb.Parent = customHighlightFolder data.billboard = bb data.textLabel = tl else if head then data.billboard.Adornee = head end if data.textLabel and hum then data.textLabel.Text = string.format("%s\n[%d / %d HP]", plr.Name, math.floor(hum.Health), math.floor(hum.MaxHealth)) end end else if data.billboard then data.billboard:Destroy() data.billboard = nil data.textLabel = nil end end end end -- NPCs loop (using cached list to maintain high FPS) for _, obj in ipairs(cachedNpcs) do if obj and obj.Parent then local head = obj:FindFirstChild("Head") or obj:FindFirstChild("HumanoidRootPart") local hrp = obj:FindFirstChild("HumanoidRootPart") local hum = obj:FindFirstChildOfClass("Humanoid") if not npcHighlights[obj] then npcHighlights[obj] = {} end local data = npcHighlights[obj] local inRange = true if myHRP and hrp then local dist = (hrp.Position - myHRP.Position).Magnitude if dist > npcRangeLimit then inRange = false end end -- Highlight Management if allNpcsHighlightEnabled and inRange then if not data.highlight or not data.highlight.Parent then local hl = Instance.new("Highlight") hl.Name = "NpcHighlight_" .. obj.Name hl.Adornee = obj hl.FillColor = Color3.fromRGB(255, 255, 255) hl.OutlineColor = Color3.fromRGB(0, 0, 0) hl.FillTransparency = allNpcsHighlightTransparency hl.OutlineTransparency = allNpcsHighlightTransparency hl.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop hl.Parent = customHighlightFolder data.highlight = hl else data.highlight.Adornee = obj end else if data.highlight then data.highlight:Destroy() data.highlight = nil end end -- Billboard / Text Management if npcHealthNameEnabled and inRange then if not data.billboard or not data.billboard.Parent then local bb = Instance.new("BillboardGui") bb.Name = "NpcText_" .. obj.Name bb.Size = UDim2.new(0, 200, 0, 50) bb.StudsOffset = Vector3.new(0, 2.5, 0) bb.AlwaysOnTop = true bb.Adornee = head or obj local tl = Instance.new("TextLabel") tl.Size = UDim2.new(1, 0, 1, 0) tl.BackgroundTransparency = 1 tl.TextColor3 = Color3.fromRGB(255, 255, 255) tl.TextStrokeColor3 = Color3.fromRGB(0, 0, 0) tl.TextStrokeTransparency = npcTextTransparency tl.TextTransparency = npcTextTransparency tl.TextSize = npcTextSize tl.Font = Enum.Font.SourceSansBold tl.Parent = bb bb.Parent = customHighlightFolder data.billboard = bb data.textLabel = tl else if head then data.billboard.Adornee = head end if data.textLabel and hum then data.textLabel.Text = string.format("%s\n[%d / %d HP]", obj.Name, math.floor(hum.Health), math.floor(hum.MaxHealth)) end end else if data.billboard then data.billboard:Destroy() data.billboard = nil data.textLabel = nil end end end end -- Cleanup invalid entries for plr, data in pairs(playerHighlights) do if not plr or not plr.Parent or not plr.Character then if data.highlight then data.highlight:Destroy() end if data.billboard then data.billboard:Destroy() end playerHighlights[plr] = nil end end for obj, data in pairs(npcHighlights) do if not obj or not obj.Parent then if data.highlight then data.highlight:Destroy() end if data.billboard then data.billboard:Destroy() end npcHighlights[obj] = nil end end end)) -- ========================================== -- 9. UTILITIES & TOOLS TAB -- ========================================== Tabs.Utilities:AddSection("Tools & Utilities") Tabs.Utilities:AddButton({ Title = "Fix Character Axis (Face North)", Description = "Aligns character rotation to face strictly North", Callback = function() local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") if hrp then hrp.CFrame = CFrame.new(hrp.Position) * CFrame.Angles(0, 0, 0) playCustomSound("General") Fluent:Notify({ Title = "Axis Aligned", Content = "Character aligned to face North.", Duration = 3 }) end end }) Tabs.Utilities:AddButton({ Title = "Copy CFrame Coordinates", Callback = function() local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") if hrp then local cfStr = tostring(hrp.CFrame) pcall(function() if setclipboard then setclipboard(cfStr) elseif toclipboard then toclipboard(cfStr) end end) playCustomSound("General") Fluent:Notify({ Title = "CFrame Copied!", Content = cfStr, Duration = 4 }) end end }) Tabs.Utilities:AddSection("Workspace Stats") local trackerParagraph = Tabs.Utilities:AddParagraph({ Title = "Workspace Instance Counts", Content = "Click 'Scan Workspace Objects' below to count active instances." }) Tabs.Utilities:AddButton({ Title = "Scan Workspace Objects", Callback = function() local anchoredCount = 0 local unanchoredCount = 0 local npcCount = 0 local playerCount = 0 local toolCount = 0 for _, obj in ipairs(Workspace:GetDescendants()) do if obj:IsA("BasePart") then if not isCharacterPart(obj) then if obj.Anchored then anchoredCount = anchoredCount + 1 else unanchoredCount = unanchoredCount + 1 end end elseif obj:IsA("Tool") then toolCount = toolCount + 1 elseif obj:IsA("Model") then local hum = obj:FindFirstChildOfClass("Humanoid") if hum then local plr = Players:GetPlayerFromCharacter(obj) if plr then playerCount = playerCount + 1 else npcCount = npcCount + 1 end end end end trackerParagraph:SetDesc(string.format( "• Anchored Parts: %d\n• Unanchored Parts: %d\n• NPCs: %d\n• Players: %d\n• Tools: %d", anchoredCount, unanchoredCount, npcCount, playerCount, toolCount )) end }) Tabs.Utilities:AddSection("Diagnostics") local statsParagraph = Tabs.Utilities:AddParagraph({ Title = "Client Diagnostics", Content = "Enable Performance Tracker below to view real-time diagnostics." }) local statsTrackerEnabled = false Tabs.Utilities:AddToggle("StatsTrackerToggle", { Title = "Enable Live Performance Tracker", Default = false, Callback = function(Value) statsTrackerEnabled = Value if not Value then statsParagraph:SetDesc("Performance Tracker Disabled.") end end }) task.spawn(function() while activeLoops[1] do if statsTrackerEnabled then local successStats, fps, ping, memMb = pcall(function() local f = math.floor(1 / math.max(RunService.RenderStepped:Wait(), 0.001)) local p = math.floor(LocalPlayer:GetNetworkPing() * 1000) local m = math.floor(StatsService:GetTotalMemoryUsageMb()) return f, p, m end) if successStats and fps then statsParagraph:SetDesc(string.format( "• FPS: %d\n• Ping: %d ms\n• Client Memory Usage: %d MB", fps, ping, memMb )) end task.wait(isLowLevelExecutor and 1.0 or 0.5) else task.wait(1) end end end) Tabs.Utilities:AddButton({ Title = "Execute SaveInstance", Callback = function() if isLowLevelExecutor then Fluent:Notify({ Title = "Notice", Content = "SaveInstance may not be fully supported on this executor tier.", Duration = 4 }) end pcall(function() local Params = { RepoURL = "https://raw.githubusercontent.com/luau/UniversalSynSaveInstance/main/", SSI = "saveinstance", } local synsaveinstance = loadstring(game:HttpGet(Params.RepoURL .. Params.SSI .. ".luau", true), Params.SSI)() local CustomOptions = { SafeMode = true, DecompileTimeout = 15, SaveBytecode = true } synsaveinstance(CustomOptions) end) end }) Tabs.Utilities:AddButton({ Title = "Load Infinite Yield", Callback = function() pcall(function() loadstring(game:HttpGet("https://raw.githubusercontent.com/EdgeIY/infiniteyield/master/source"))() end) end }) -- ========================================== -- 10. SERVER & LOGS TAB -- ========================================== Tabs.Logs:AddToggle("JoinLogToggle", { Title = "Log Player Activity", Default = false, Callback = function(Value) joinLogEnabled = Value end }) table.insert(connections, Players.PlayerRemoving:Connect(function(player) if playerJoinTimes[player] then if joinLogEnabled then local sessionDuration = math.floor(tick() - playerJoinTimes[player]) local hours = math.floor(sessionDuration / 3600) local mins = math.floor((sessionDuration % 3600) / 60) local secs = sessionDuration % 60 local formattedStr = string.format("[%d:%02d:%02d]", hours, mins, secs) playCustomSound("PlayerLeft") Fluent:Notify({ Title = "Player Left", Content = string.format("%s Left. %s", player.Name, formattedStr), Duration = 6 }) end playerJoinTimes[player] = nil end end)) Tabs.Logs:AddButton({ Title = "Check Oldest & Youngest Player", Description = "Shows detailed server session playtimes and account ages", Callback = function() local oldestPlayer, youngestPlayer local maxTime, minTime = -1, math.huge local now = tick() for p, joinTime in pairs(playerJoinTimes) do if p and p.Parent == Players then local dur = now - joinTime if dur > maxTime then maxTime = dur; oldestPlayer = p end if dur < minTime then minTime = dur; youngestPlayer = p end end end if oldestPlayer and youngestPlayer then local oldSecs = math.floor(now - playerJoinTimes[oldestPlayer]) local youngSecs = math.floor(now - playerJoinTimes[youngestPlayer]) local oldSession = string.format("%dh %dm %ds", math.floor(oldSecs/3600), math.floor((oldSecs%3600)/60), oldSecs%60) local youngSession = string.format("%dh %dm %ds", math.floor(youngSecs/3600), math.floor((youngSecs%3600)/60), youngSecs%60) local oldAccountAge = oldestPlayer.AccountAge local youngAccountAge = youngestPlayer.AccountAge playCustomSound("General") Fluent:Notify({ Title = "Server Session Info", Content = string.format( "• Longest: %s (%s, %d days)\n• Newest: %s (%s, %d days)", oldestPlayer.Name, oldSession, oldAccountAge, youngestPlayer.Name, youngSession, youngAccountAge ), Duration = 8 }) end end }) Tabs.Logs:AddButton({ Title = "Check Server Age & Status", Callback = function() local serverUptime = math.floor(workspace.DistributedGameTime) local hours = math.floor(serverUptime / 3600) local mins = math.floor((serverUptime % 3600) / 60) local secs = serverUptime % 60 local currentFPS = 60 pcall(function() currentFPS = math.floor(1 / RunService.RenderStepped:Wait()) end) local serverStatus = currentFPS < 25 and "High Load / Lagging" or "Healthy" playCustomSound("General") Fluent:Notify({ Title = "Server Information", Content = string.format("Server Uptime: %dh %dm %ds\nStatus: %s (%d FPS)", hours, mins, secs, serverStatus, currentFPS), Duration = 6 }) end }) -- ========================================== -- 11. CONFIG, SOUND & SAVEMANAGER TAB -- ========================================== Tabs.Config:AddSection("Sound & Notification Customization") Tabs.Config:AddSlider("LowHPSoundVolume", { Title = "Low HP Alert Volume", Default = 0.5, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) soundSettings.LowHP.Volume = Value end }) Tabs.Config:AddDropdown("LowHPSoundID", { Title = "Low HP Sound Effect", Values = {"Default (Bell)", "Chime", "Pop"}, Multi = false, Default = "Default (Bell)", Callback = function(Value) if Value == "Default (Bell)" then soundSettings.LowHP.SoundId = "rbxassetid://4590657391" elseif Value == "Chime" then soundSettings.LowHP.SoundId = "rbxassetid://9060817403" elseif Value == "Pop" then soundSettings.LowHP.SoundId = "rbxassetid://9114220737" end end }) Tabs.Config:AddSlider("PlayerLeftSoundVolume", { Title = "Player Left Alert Volume", Default = 0.5, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) soundSettings.PlayerLeft.Volume = Value end }) Tabs.Config:AddDropdown("PlayerLeftSoundID", { Title = "Player Left Sound Effect", Values = {"Default (Pop)", "Chime", "Bell"}, Multi = false, Default = "Default (Pop)", Callback = function(Value) if Value == "Default (Pop)" then soundSettings.PlayerLeft.SoundId = "rbxassetid://9114220737" elseif Value == "Chime" then soundSettings.PlayerLeft.SoundId = "rbxassetid://9060817403" elseif Value == "Bell" then soundSettings.PlayerLeft.SoundId = "rbxassetid://4590657391" end end }) Tabs.Config:AddSlider("GeneralSoundVolume", { Title = "General Notification Volume", Default = 0.5, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) soundSettings.General.Volume = Value end }) Tabs.Config:AddDropdown("GeneralSoundID", { Title = "General Sound Effect", Values = {"Default (Chime)", "Bell", "Pop"}, Multi = false, Default = "Default (Chime)", Callback = function(Value) if Value == "Default (Chime)" then soundSettings.General.SoundId = "rbxassetid://9060817403" elseif Value == "Bell" then soundSettings.General.SoundId = "rbxassetid://4590657391" elseif Value == "Pop" then soundSettings.General.SoundId = "rbxassetid://9114220737" end end }) Tabs.Config:AddSection("Appearance & Interface") Tabs.Config:AddDropdown("ThemeDropdown", { Title = "UI Theme", Values = {"Dark", "Light", "Darker", "Rose", "Aqua", "Amethyst"}, Multi = false, Default = "Dark", Callback = function(Value) pcall(function() Fluent:SetTheme(Value) end) end }) Tabs.Config:AddSlider("WindowSizeSlider", { Title = "UI Scale / Window Size Width", Default = 600, Min = 450, Max = 800, Rounding = 0, Callback = function(Value) pcall(function() if Window and Window.Root then Window.Root.Size = UDim2.fromOffset(Value, Window.Root.Size.Y.Offset) end end) end }) Tabs.Config:AddSlider("BackgroundTransparencySlider", { Title = "Background Transparency", Default = 0, Min = 0, Max = 1, Rounding = 2, Callback = function(Value) pcall(function() if Window and Window.Root then for _, frame in ipairs(Window.Root:GetDescendants()) do if frame:IsA("Frame") and (frame.Name == "Background" or frame.Name == "Acrylic" or frame.Name == "Main") then frame.BackgroundTransparency = Value end end end end) end }) Tabs.Config:AddSection("Configuration Management") Tabs.Config:AddButton({ Title = "Disable Autoload", Description = "Clears out autoload configuration so nothing loads automatically next session", Callback = function() pcall(function() if delfile and isfile and isfile("FluentHeartHub/Configs/autoload.txt") then delfile("FluentHeartHub/Configs/autoload.txt") end end) playCustomSound("General") Fluent:Notify({ Title = "Autoload Disabled", Content = "Configs will not auto-load on future executions.", Duration = 3 }) end }) -- Initialize official Fluent SaveManager Addon for configurations if SaveManager then SaveManager:SetLibrary(Fluent) SaveManager:IgnoreThemeSettings() SaveManager:SetFolder("FluentHeartHub/Configs") SaveManager:BuildConfigSection(Tabs.Config) SaveManager:LoadAutoloadConfig() end -- Custom Delete Config Section placed safely at the very bottom Tabs.Config:AddSection("Config Deletion Utility") local selectedConfigToDelete = "None" local configDeleteDropdown = Tabs.Config:AddDropdown("DeleteConfigDropdown", { Title = "Select Config to Delete", Values = {"None"}, Multi = false, Default = "None", Callback = function(Value) selectedConfigToDelete = Value end }) local function refreshConfigDeleteList() pcall(function() if listfiles and isfolder and isfolder("FluentHeartHub/Configs") then local files = listfiles("FluentHeartHub/Configs") local names = {} for _, file in ipairs(files) do local name = string.match(file, "[^/\\]+$") if name then table.insert(names, name) end end if #names > 0 then configDeleteDropdown:SetValues(names) else configDeleteDropdown:SetValues({"None"}) end end end) end refreshConfigDeleteList() Tabs.Config:AddButton({ Title = "Delete Selected Config", Description = "Permanently deletes the configuration file selected above", Callback = function() if selectedConfigToDelete ~= "None" and selectedConfigToDelete ~= "" then pcall(function() local path = "FluentHeartHub/Configs/" .. selectedConfigToDelete if delfile and isfile and isfile(path) then delfile(path) playCustomSound("General") Fluent:Notify({ Title = "Config Deleted", Content = "Successfully deleted " .. selectedConfigToDelete, Duration = 4 }) refreshConfigDeleteList() end end) else playCustomSound("General") Fluent:Notify({ Title = "Error", Content = "No valid config selected for deletion.", Duration = 3 }) end end }) -- ========================================== -- 12. README TAB -- ========================================== Tabs.Readme:AddSection("Credits & Information") Tabs.Readme:AddParagraph({ Title = "FluentHeart Hub", Content = "Developed with Fluent UI Library.\nDesigned for flexibility, utility diagnostics, and robust performance tracking across supported executors." }) Tabs.Readme:AddSection("Debug Features Guide") Tabs.Readme:AddParagraph({ Title = "1. Wall-Penetrating Highlighting", Content = "Player and path highlight boxes utilize Roblox Highlight instances with AlwaysOnTop depth mode so they can be viewed through walls." }) Tabs.Readme:AddParagraph({ Title = "2. Sound & Notification Manager", Content = "Adjust audio volumes and select custom sound IDs for low HP alerts, player disconnects, and general buttons." }) -- ========================================== -- 13. RUNTIME HANDLERS & LOOPS -- ========================================== table.insert(connections, LocalPlayer.CharacterAdded:Connect(function(char) char:WaitForChild("Humanoid") task.wait(0.5) local hum = char:FindFirstChildOfClass("Humanoid") if hum then hum.WalkSpeed = walkSpeedValue hum.UseJumpPower = true hum.JumpPower = jumpPowerValue end if tpToolEnabled then giveTeleportTool() end end)) table.insert(connections, RunService.RenderStepped:Connect(function() if Workspace.CurrentCamera.FieldOfView ~= fovValue then Workspace.CurrentCamera.FieldOfView = fovValue end if fullbrightEnabled then Lighting.Ambient = Color3.new(1, 1, 1) Lighting.Brightness = 2 end if spectatingPlayer then if spectatingPlayer.Character then local targetHum = spectatingPlayer.Character:FindFirstChildOfClass("Humanoid") local targetHRP = spectatingPlayer.Character:FindFirstChild("HumanoidRootPart") local targetSub = targetHum or targetHRP if targetSub and Workspace.CurrentCamera and Workspace.CurrentCamera.CameraSubject ~= targetSub then Workspace.CurrentCamera.CameraSubject = targetSub end updateSpectateTracer() else removeSpectateTracer() end else removeSpectateTracer() end end)) table.insert(connections, RunService.Heartbeat:Connect(function(dt) if floatEnabled then updateFloatPlatform(dt) end local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") local hum = char and char:FindFirstChildOfClass("Humanoid") if hrp and hum then if disableSlidingEnabled and hum.MoveDirection.Magnitude == 0 then hrp.AssemblyLinearVelocity = Vector3.new(0, hrp.AssemblyLinearVelocity.Y, 0) hrp.AssemblyAngularVelocity = Vector3.new(0, 0, 0) end if instantAirControlEnabled and hum:GetState() == Enum.HumanoidStateType.Freefall then if hum.MoveDirection.Magnitude > 0 then local targetVel = hum.MoveDirection * hum.WalkSpeed hrp.AssemblyLinearVelocity = Vector3.new(targetVel.X, hrp.AssemblyLinearVelocity.Y, targetVel.Z) end end end end)) Window:SelectTab(1) playCustomSound("General") Fluent:Notify({ Title = "FluentHeart Initialized", Content = "Loaded successfully on " .. executorName, Duration = 5 })