function FindTextOnScripts(Ancestor, TextToFind) local RunService = game:GetService("RunService") local FPS = 0 local Frames = 0 local LastTime = os.clock() local Connection = RunService.Heartbeat:Connect(function() Frames += 1 local Now = os.clock() if Now - LastTime >= 1 then FPS = Frames / (Now - LastTime) Frames = 0 LastTime = Now end end) local function IsTextOnScript(Script, TextToFind) local Success, Text = pcall(decompile, Script) if not Success or type(Text) ~= "string" then return false end return Text:find(TextToFind, 1, true) ~= nil end local function FindTextOnScripts(Ancestor, TextToFind) print("Starting to read scripts") local Scripts = {} for _, Script in ipairs(Ancestor:GetDescendants()) do if Script:IsA("Script") or Script:IsA("LocalScript") or Script:IsA("ModuleScript") then if Script.ClassName ~= "Script" or Script.ClassName == "Script" and Script.RunContext == Enum.RunContext.Client then table.insert(Scripts, Script) end end end print("Found " .. #Scripts .. " Scripts.") for i, Script in ipairs(Scripts) do if Script:IsA("Script") or Script:IsA("LocalScript") or Script:IsA("ModuleScript") then if Script.ClassName ~= "Script" or Script.ClassName == "Script" and Script.RunContext == Enum.RunContext.Client then if IsTextOnScript(Script, "Humanoid") then print("Found TT on: " .. Script:GetFullName()) end end end repeat task.wait() until FPS > 5 if i % 100 == 0 then print("Looked at " .. i .. "Scripts.") end end print("Done.") end FindTextOnScripts(Ancestor, TextToFind) Connection:Disconnect() end FindTextOnScripts(game, "LocalPlayer")