Loadstring tracer and decompiler
Key RequiredUniversal

Loadstring tracer and decompiler

Universal Scriptutemporary471utemporary471 1K views 60 executesUpdated Dec 30, 2025
5.0/ 5(2 votes)
20100% Positive
Lua Script•112 lines (7348 chars)
--If you see this, and look at the comments for this script, DO NOT JOIN THE DISCORD SERVERS IN THERE, they are likely spam, if you see the comments dont do anything, or you CAN report them, i wouldnt mind, just do NOT join their servers, none of the two discord servers have working scripts, 

assert(getscriptbytecode, "Executor does not support getscriptbytecode.")
assert(request, "Executor does not support HTTP requests.")

local ScreenGui = Instance.new("ScreenGui", game:GetService("CoreGui"))
local MainFrame = Instance.new("Frame", ScreenGui); MainFrame.Size = UDim2.new(0, 850, 0, 650); MainFrame.Position = UDim2.new(0.5, -425, 0.5, -325); MainFrame.BackgroundColor3 = Color3.fromRGB(0, 0, 0); MainFrame.BorderSizePixel = 2; MainFrame.Active = true; MainFrame.Draggable = true; MainFrame.ClipsDescendants = true
local TabBar = Instance.new("Frame", MainFrame); TabBar.Size = UDim2.new(1, 0, 0, 50); TabBar.BackgroundColor3 = Color3.fromRGB(20, 20, 20); TabBar.BorderSizePixel = 0
local ContentFrame = Instance.new("Frame", MainFrame); ContentFrame.Size = UDim2.new(1, 0, 1, -50); ContentFrame.Position = UDim2.new(0, 0, 0, 50); ContentFrame.BackgroundTransparency = 1

local Tab1_Frame = Instance.new("Frame", ContentFrame); Tab1_Frame.Size = UDim2.new(1, 0, 1, 0); Tab1_Frame.BackgroundTransparency = 1
local Tab2_Frame = Instance.new("Frame", ContentFrame); Tab2_Frame.Size = UDim2.new(1, 0, 1, 0); Tab2_Frame.BackgroundTransparency = 1; Tab2_Frame.Visible = false

local function CreateTabButton(text, pos)
    local btn = Instance.new("TextButton", TabBar); btn.Size = UDim2.new(0.5, 0, 1, 0); btn.Position = UDim2.new(pos, 0, 0, 0); btn.BackgroundColor3 = Color3.fromRGB(30, 30, 30); btn.TextColor3 = Color3.fromRGB(255, 255, 255); btn.Text = text; btn.TextSize = 22; btn.Font = Enum.Font.SourceSansBold; btn.BorderSizePixel = 0
    return btn
end

local Tab1Btn = CreateTabButton("LOCAL BROWSER", 0)
local Tab2Btn = CreateTabButton("LOADSTRING TRACER", 0.5)

local API = "http://api.plusgiant5.com/konstant/decompile"
local selectedObj = nil

local function decompile(target)
    local body = ""
    if typeof(target) == "Instance" then
        local success, res = pcall(getscriptbytecode, target)
        if not success then return "-- Bytecode Error: " .. tostring(res) end
        body = res
    else body = tostring(target) end
    local response = request({ Url = API, Method = "POST", Body = body, Headers = {["Content-Type"] = "text/plain"} })
    return (response.StatusCode == 200) and response.Body or "-- ERROR: " .. response.Body
end

local function getActiveScripts()
    local list = {}
    local targets = {game:GetDescendants()}
    if getnilinstances then table.insert(targets, getnilinstances()) end
    for _, group in pairs(targets) do
        for _, v in pairs(group) do
            if v:IsA("LocalScript") or v:IsA("ModuleScript") then list[v] = true end
        end
    end
    return list
end

local ScriptList = Instance.new("ScrollingFrame", Tab1_Frame); ScriptList.Size = UDim2.new(0, 250, 0, 520); ScriptList.Position = UDim2.new(0, 10, 0, 65); ScriptList.BackgroundColor3 = Color3.fromRGB(255,255,255)
local CodeScroll = Instance.new("ScrollingFrame", Tab1_Frame); CodeScroll.Size = UDim2.new(0, 560, 0, 510); CodeScroll.Position = UDim2.new(0, 275, 0, 10); CodeScroll.BackgroundColor3 = Color3.fromRGB(255,255,255)
local CodeDisplay = Instance.new("TextBox", CodeScroll); CodeDisplay.Size = UDim2.new(1,0,1,0); CodeDisplay.MultiLine = true; CodeDisplay.TextXAlignment = "Left"; CodeDisplay.TextYAlignment = "Top"; CodeDisplay.ClearTextOnFocus = false; CodeDisplay.Font = "Code"; CodeDisplay.TextSize = 16; CodeDisplay.TextColor3 = Color3.fromRGB(0,0,0); CodeDisplay.BackgroundTransparency = 1; CodeDisplay.TextWrapped = false
local MainDecBtn = Instance.new("TextButton", Tab1_Frame); MainDecBtn.Size = UDim2.new(0, 560, 0, 55); MainDecBtn.Position = UDim2.new(0, 275, 0, 530); MainDecBtn.Text = "DECOMPILE"; MainDecBtn.BackgroundColor3 = Color3.fromRGB(40,40,40); MainDecBtn.TextColor3 = Color3.fromRGB(255,255,255); MainDecBtn.TextSize = 24
local SearchBar = Instance.new("TextBox", Tab1_Frame); SearchBar.Size = UDim2.new(0, 250, 0, 45); SearchBar.Position = UDim2.new(0, 10, 0, 10); SearchBar.PlaceholderText = "Search..."; SearchBar.TextSize = 20

local function refresh(filter)
    for _,v in pairs(ScriptList:GetChildren()) do if v:IsA("TextButton") then v:Destroy() end end
    local offset, scripts = 0, getActiveScripts()
    for v in pairs(scripts) do
        if filter == "" or v.Name:lower():find(filter:lower()) then
            local b = Instance.new("TextButton", ScriptList); b.Size = UDim2.new(1, -15, 0, 40); b.Position = UDim2.new(0, 5, 0, offset); b.Text = v.Name
            b.MouseButton1Click:Connect(function() selectedObj = v; CodeDisplay.Text = "-- Selected: " .. v:GetFullName() end)
            offset = offset + 45; ScriptList.CanvasSize = UDim2.new(0,0,0,offset)
        end
    end
end

MainDecBtn.MouseButton1Click:Connect(function()
    if selectedObj then CodeDisplay.Text = "-- Decompiling..."; CodeDisplay.Text = decompile(selectedObj) end
end)

CodeDisplay:GetPropertyChangedSignal("Text"):Connect(function()
    local b = CodeDisplay.TextBounds
    CodeScroll.CanvasSize = UDim2.new(0, b.X + 100, 0, b.Y + 100)
    CodeDisplay.Size = UDim2.new(0, b.X + 100, 0, b.Y + 100)
end)

local TraceInput = Instance.new("TextBox", Tab2_Frame); TraceInput.Size = UDim2.new(1, -20, 0, 150); TraceInput.Position = UDim2.new(0, 10, 0, 10); TraceInput.MultiLine = true; TraceInput.PlaceholderText = "Paste link here..."; TraceInput.TextSize = 18
local TraceExecBtn = Instance.new("TextButton", Tab2_Frame); TraceExecBtn.Size = UDim2.new(1, -20, 0, 60); TraceExecBtn.Position = UDim2.new(0, 10, 0, 170); TraceExecBtn.Text = "EXECUTE & TRACE MEMORY"; TraceExecBtn.BackgroundColor3 = Color3.fromRGB(100,0,0); TraceExecBtn.TextColor3 = Color3.fromRGB(255,255,255); TraceExecBtn.TextSize = 22

TraceExecBtn.MouseButton1Click:Connect(function()
    local snapshot = getActiveScripts()
    local f, err = loadstring(TraceInput.Text)
    if f then 
        task.spawn(f)
        TraceExecBtn.Text = "WAITING FOR UNPACK..."

        task.spawn(function()
            for i = 1, 50 do
                task.wait(0.1)
                local current = getActiveScripts()
                for s in pairs(current) do
                    if not snapshot[s] then
                        selectedObj = s
                        Tab1_Frame.Visible, Tab2_Frame.Visible = true, false
                        CodeDisplay.Text = "-- CAUGHT: " .. s.Name .. "\n-- Decompiling..."
                        CodeDisplay.Text = decompile(s)
                        refresh("")
                        return
                    end
                end
            end
            TraceExecBtn.Text = "TRACE TIMEOUT (Nothing New Found)"
            task.wait(2); TraceExecBtn.Text = "EXECUTE & TRACE MEMORY"
        end)
    else
        TraceInput.Text = "-- ERROR: " .. tostring(err)
    end
end)

Tab1Btn.MouseButton1Click:Connect(function() Tab1_Frame.Visible, Tab2_Frame.Visible = true, false end)
Tab2Btn.MouseButton1Click:Connect(function() Tab1_Frame.Visible, Tab2_Frame.Visible = false, true end)
SearchBar:GetPropertyChangedSignal("Text"):Connect(function() refresh(SearchBar.Text) end)
refresh("")

Features & Information

it decompiles scripts. it recompiles scripts. it lets u see what loadstrings execute on ur client(e.g, luarmor dosent let u see the source script, but with this it does)(broken)

Community Comments (5)

utemporary471utemporary471Dec 30, 2025

@dvoynoyudar3 im gonna ask you to delete your self-promoting discord link.

utemporary471utemporary471Dec 30, 2025

@9bad im gonna ask you to delete your self-promoting discord link.

utemporary471utemporary471Dec 31, 2025

@dvoynoyudar3 please delete the invite to your scam discord server

rigqazwwwrigqazwwwFeb 14, 2026

damage?

Replying to @rigqazwww
utemporary471utemporary471Feb 14, 2026

@rigqazwww whadya mean "damage"?

More Scripts for Universal Scripts