Made by destine
Key RequiredUniversal

Made by destine

Universal Scriptlavalledestineluis25lavalledestineluis25 194 views 7 executesUpdated Mar 8, 2026
Unrated
00
Lua Script•286 lines (8751 chars)
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local Players = game:GetService("Players")
local CoreGui = game:GetService("CoreGui")

local player = Players.LocalPlayer

-- REMOVE OLD GUI
if CoreGui:FindFirstChild("Destine_Obfuscator_GUI") then
    CoreGui.Destine_Obfuscator_GUI:Destroy()
end

-- MASTER GUI
local sg = Instance.new("ScreenGui")
sg.Name = "Destine_Obfuscator_GUI"
sg.IgnoreGuiInset = true
sg.ZIndexBehavior = Enum.ZIndexBehavior.Global
sg.DisplayOrder = 9999
sg.Parent = CoreGui

-- PARTICLES
local particles = {}
local function createParticles(parent, count, color, minS, maxS, zIndex)
    for i=1,count do
        local p = Instance.new("Frame")
        local size = math.random(minS or 1, maxS or 3)
        p.Size = UDim2.new(0, size, 0, size)
        p.Position = UDim2.new(math.random(),0,math.random(),0)
        p.BackgroundColor3 = color
        p.BackgroundTransparency = 0.5
        p.BorderSizePixel = 0
        p.ZIndex = zIndex or 5
        p.Parent = parent
        Instance.new("UICorner", p).CornerRadius = UDim.new(1,0)
        table.insert(particles, p)
    end
end

RunService.RenderStepped:Connect(function()
    for _, p in pairs(particles) do
        if p.Parent then
            local y = p.Position.Y.Scale - 0.002
            if y < -0.05 then y = 1.2 p.Position = UDim2.new(math.random(),0,y,0) p.BackgroundTransparency=0.5
            else
                p.Position = UDim2.new(p.Position.X.Scale,0,y,0)
                p.BackgroundTransparency = 0.5 + 0.5*math.sin(tick()*2 + y*10)
            end
        end
    end
end)

-- MAIN HUB
local main = Instance.new("Frame")
main.Size = UDim2.new(0,650,0,450)
main.Position = UDim2.new(0.5,-325,0.5,-225)
main.BackgroundColor3 = Color3.fromRGB(8,8,8)
main.ClipsDescendants = true
main.ZIndex = 5
main.Parent = sg
Instance.new("UICorner", main).CornerRadius = UDim.new(0,15)
Instance.new("UIStroke", main).Color = Color3.fromRGB(50,50,50)
createParticles(main, 120, Color3.fromRGB(0,180,255),1,3,6)

-- HEADER
local header = Instance.new("Frame")
header.Size = UDim2.new(1,0,0,50)
header.BackgroundColor3 = Color3.fromRGB(12,12,12)
header.ZIndex = 7
header.Parent = main

local title = Instance.new("TextLabel")
title.Size = UDim2.new(1,0,1,0)
title.BackgroundTransparency = 1
title.Text = "Destine Obfuscator"
title.TextColor3 = Color3.fromRGB(0,200,255)
title.Font = Enum.Font.GothamBold
title.TextSize = 22
title.ZIndex = 8
title.Parent = header

-- TOGGLE BUTTON
local toggle = Instance.new("TextButton")
toggle.Size = UDim2.new(0,50,0,50)
toggle.Position = UDim2.new(0,10,0,10)
toggle.Text = "D"
toggle.TextColor3 = Color3.fromRGB(0,200,255)
toggle.BackgroundColor3 = Color3.fromRGB(2,2,2)
toggle.Font = Enum.Font.GothamBold
toggle.TextSize = 30
toggle.ZIndex = 9
toggle.Visible = true
toggle.Parent = sg
Instance.new("UICorner", toggle).CornerRadius = UDim.new(1,0)

local isOpen = true
toggle.MouseButton1Click:Connect(function()
    isOpen = not isOpen
    TweenService:Create(main,TweenInfo.new(0.6,Enum.EasingStyle.Quart,Enum.EasingDirection.InOut),
        {Position = isOpen and UDim2.new(0.5,-325,0.5,-225) or UDim2.new(0.5,-325,1.2,0)}
    ):Play()
end)

-- TAB BUTTONS
local tabsFrame = Instance.new("Frame")
tabsFrame.Size = UDim2.new(1,0,0,30)
tabsFrame.Position = UDim2.new(0,0,0,50)
tabsFrame.BackgroundTransparency = 1
tabsFrame.ZIndex = 8
tabsFrame.Parent = main

local tab1Btn = Instance.new("TextButton")
tab1Btn.Size = UDim2.new(0.5,0,1,0)
tab1Btn.Text = "Input Script"
tab1Btn.BackgroundColor3 = Color3.fromRGB(20,20,20)
tab1Btn.TextColor3 = Color3.fromRGB(255,255,255)
tab1Btn.Font = Enum.Font.GothamBold
tab1Btn.TextSize = 16
tab1Btn.ZIndex = 9
tab1Btn.Parent = tabsFrame

local tab2Btn = Instance.new("TextButton")
tab2Btn.Size = UDim2.new(0.5,0,1,0)
tab2Btn.Position = UDim2.new(0.5,0,0,0)
tab2Btn.Text = "Obfuscated Script"
tab2Btn.BackgroundColor3 = Color3.fromRGB(20,20,20)
tab2Btn.TextColor3 = Color3.fromRGB(255,255,255)
tab2Btn.Font = Enum.Font.GothamBold
tab2Btn.TextSize = 16
tab2Btn.ZIndex = 9
tab2Btn.Parent = tabsFrame

-- TAB FRAMES
local tab1 = Instance.new("Frame")
tab1.Size = UDim2.new(1,0,1,-80)
tab1.Position = UDim2.new(0,0,0,80)
tab1.BackgroundTransparency = 1
tab1.ZIndex = 8
tab1.Parent = main

local tab2 = Instance.new("Frame")
tab2.Size = UDim2.new(1,0,1,-80)
tab2.Position = UDim2.new(0,0,0,80)
tab2.BackgroundTransparency = 1
tab2.ZIndex = 8
tab2.Visible = false
tab2.Parent = main

-- TAB 1 TEXTBOX
local inputBox = Instance.new("TextBox")
inputBox.Size = UDim2.new(1,-20,1,-60)
inputBox.Position = UDim2.new(0,10,0,10)
inputBox.BackgroundColor3 = Color3.fromRGB(15,15,15)
inputBox.TextColor3 = Color3.fromRGB(0,255,255)
inputBox.Font = Enum.Font.Code
inputBox.TextSize = 14
inputBox.MultiLine = true
inputBox.TextWrapped = true
inputBox.ZIndex = 9
inputBox.Parent = tab1
Instance.new("UICorner", inputBox).CornerRadius = UDim.new(0,5)

-- TAB 2 TEXTBOX
local outputBox = Instance.new("TextBox")
outputBox.Size = UDim2.new(1,-20,1,-60)
outputBox.Position = UDim2.new(0,10,0,10)
outputBox.BackgroundColor3 = Color3.fromRGB(15,15,15)
outputBox.TextColor3 = Color3.fromRGB(0,255,100)
outputBox.Font = Enum.Font.Code
outputBox.TextSize = 14
outputBox.MultiLine = true
outputBox.TextWrapped = true
outputBox.ZIndex = 9
outputBox.Parent = tab2
Instance.new("UICorner", outputBox).CornerRadius = UDim.new(0,5)

-- BUTTONS
local defuscateBtn = Instance.new("TextButton")
defuscateBtn.Size = UDim2.new(0,120,0,35)
defuscateBtn.Position = UDim2.new(0,10,1,-40)
defuscateBtn.Text = "Obfuscate"
defuscateBtn.BackgroundColor3 = Color3.fromRGB(0,200,255)
defuscateBtn.TextColor3 = Color3.fromRGB(0,0,0)
defuscateBtn.Font = Enum.Font.GothamBold
defuscateBtn.TextSize = 16
defuscateBtn.ZIndex = 9
defuscateBtn.Parent = tab1
Instance.new("UICorner", defuscateBtn).CornerRadius = UDim.new(0,5)

local clearBtn = Instance.new("TextButton")
clearBtn.Size = UDim2.new(0,120,0,35)
clearBtn.Position = UDim2.new(0,140,1,-40)
clearBtn.Text = "Clear"
clearBtn.BackgroundColor3 = Color3.fromRGB(200,0,0)
clearBtn.TextColor3 = Color3.fromRGB(255,255,255)
clearBtn.Font = Enum.Font.GothamBold
clearBtn.TextSize = 16
clearBtn.ZIndex = 9
clearBtn.Parent = tab1
Instance.new("UICorner", clearBtn).CornerRadius = UDim.new(0,5)

local copyBtn = Instance.new("TextButton")
copyBtn.Size = UDim2.new(0,120,0,35)
copyBtn.Position = UDim2.new(0,10,1,-40)
copyBtn.Text = "Copy"
copyBtn.BackgroundColor3 = Color3.fromRGB(0,200,255)
copyBtn.TextColor3 = Color3.fromRGB(0,0,0)
copyBtn.Font = Enum.Font.GothamBold
copyBtn.TextSize = 16
copyBtn.ZIndex = 9
copyBtn.Parent = tab2
Instance.new("UICorner", copyBtn).CornerRadius = UDim.new(0,5)

-- TAB SWITCH
tab1Btn.MouseButton1Click:Connect(function()
    tab1.Visible = true
    tab2.Visible = false
end)
tab2Btn.MouseButton1Click:Connect(function()
    tab1.Visible = false
    tab2.Visible = true
end)

local charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
local function randomName(length)
    local name = ""
    local first = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_"
    name = name .. first:sub(math.random(#first), math.random(#first))
    for i = 2, length do
        name = name .. charset:sub(math.random(#charset), math.random(#charset))
    end
    return name
end

local function encodeString(str)
    local t = {}
    for i = 1,#str do
        table.insert(t, "string.char("..string.byte(str,i)..")")
    end
    return table.concat(t,"..")
end

local function obfuscate(scriptText)
    -- remove comments
    scriptText = scriptText:gsub("%-%-.-\n","")
    -- remove extra spaces and newlines
    scriptText = scriptText:gsub("\n%s*","\n")
    scriptText = scriptText:gsub("%s+"," ")
    
    local vars = {}
    for var in scriptText:gmatch("local%s+([%w_]+)") do
        if not vars[var] then vars[var] = randomName(math.random(5,8)) end
    end
    for old,new in pairs(vars) do
        scriptText = scriptText:gsub("%f[%w]"..old.."%f[^%w]", new)
    end
    
    -- encode strings
    scriptText = scriptText:gsub('"(.-)"', function(s) return encodeString(s) end)
    
    -- add dummy variables
    local dummy = ""
    for i=1,5 do
        dummy = dummy.."local "..randomName(6).."="..math.random(1,100).."\n"
    end
    scriptText = dummy..scriptText
    
    return scriptText
end

-- BUTTON EVENTS
defuscateBtn.MouseButton1Click:Connect(function()
    local input = inputBox.Text
    if input ~= "" then
        outputBox.Text = obfuscate(input)
        tab2.Visible = true
        tab1.Visible = false
    end
end)

clearBtn.MouseButton1Click:Connect(function()
    inputBox.Text = ""
end)

copyBtn.MouseButton1Click:Connect(function()
    setclipboard(outputBox.Text)
end)

Features & Information

Obfuscate your script may not work in super long scripts

Community Comments (1)

okuuokuuMar 8, 2026

bro, its very easy to deobfuscate, and why you send source? obfuscate script with this source VERYYY EASY

More Scripts for Universal Scripts