Source Debugger
Key RequiredUniversal

Source Debugger

Universal ScriptFriedpotatomatoeFriedpotatomatoe 951 views 224 executesUpdated Sep 29, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•54 lines (2051 chars)
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")

Features & Information

print all paths of scripts that has specific text on it (for scripters)

Community Comments (1)

voltexvoltexOct 3, 2026

here is a much better (and a bit faster) version: ```lua -- takes a decent amount of time, do not reccomend usage. const TARGET_STRING = "BulletRaycast" const Checks = { getrunningscripts(), getloadedmodules() } local PlaceId = game.PlaceId local FolderName = PlaceId .. "-" .. TARGET_STRING .. "-" if not isfolder(FolderName) then makefolder(FolderName) end for _, Check in next, Checks do for _, Module in next, Check do local pf, Content = pcall(decompile, Module) if pf and Content:find(TARGET_STRING) then print(`Found: {Module:GetFullName()}`) writefile(FolderName .. "/" .. Module:GetFullName(), Content) end end end print(FolderName) ```

More Scripts for Universal Scripts