UniversalSynSaveInstance GUI
Key RequiredUniversal

UniversalSynSaveInstance GUI

Universal Scriptexploitingrobloxianexploitingrobloxian 1.9K views 44 executesUpdated Jun 29, 2025
3.8/ 5(4 votes)
3175% Positive
Lua Script•231 lines (8456 chars)
local Params = {
    RepoURL = "https://raw.githubusercontent.com/luau/SynSaveInstance/main/",
    SSI = "saveinstance",
}
local synsaveinstance = (loadstring or load)(game:HttpGet(Params.RepoURL .. Params.SSI .. ".luau", true), Params.SSI)()

local UserInputService = game:GetService("UserInputService")

local Options = {}

-- Default table of all possible options
local AllOptions = {
    __DEBUG_MODE = false,
    ReadMe = true,
    SafeMode = false,
    ShutdownWhenDone = false,
    AntiIdle = true,
    Anonymous = false,
    ShowStatus = true,
    Callback = false,
    mode = "optimized",
    noscripts = false,
    scriptcache = true,
    decomptype = "",
    timeout = 10,
    DecompileJobless = false,
    SaveBytecode = false,
    DecompileIgnore = {TextChatService = true},
    IgnoreList = {CoreGui = true, CorePackages = true},
    ExtraInstances = {},
    IgnoreProperties = {},
    SaveCacheInterval = 0x1600 * 10,
    FilePath = false,
    Object = false,
    IsModel = false,
    NilInstances = false,
    NilInstancesFixes = {},
    IgnoreDefaultProperties = true,
    IgnoreNotArchivable = true,
    IgnorePropertiesOfNotScriptsOnScriptsMode = false,
    IgnoreSpecialProperties = false,
    IsolateLocalPlayer = false,
    IsolateStarterPlayer = false,
    IsolateLocalPlayerCharacter = false,
    RemovePlayerCharacters = true,
    SaveNotCreatable = false,
    NotCreatableFixes = {},
    IsolatePlayers = false,
    AlternativeWritefile = true,
    IgnoreDefaultPlayerScripts = true,
    IgnoreSharedStrings = true,
    SharedStringOverwrite = false,
    TreatUnionsAsParts = false,
}
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "SaveInstanceFullUI"
ScreenGui.Parent = game.CoreGui
ScreenGui.ResetOnSpawn = false
local Frame = Instance.new("Frame")
Frame.Size = UDim2.new(0, 500, 0, 400)
Frame.Position = UDim2.new(0.5, -250, 0.5, -200)
Frame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
Frame.BorderSizePixel = 0
Frame.Parent = ScreenGui
Frame.Active = true
local Title = Instance.new("TextLabel", Frame)
Title.Size = UDim2.new(1, 0, 0, 30)
Title.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
Title.Text = "Saveinstance UI"
Title.TextColor3 = Color3.new(1, 1, 1)
Title.TextSize = 18
Title.Font = Enum.Font.SourceSansBold
local Scroll = Instance.new("ScrollingFrame", Frame)
Scroll.Size = UDim2.new(1, 0, 1, -70)
Scroll.Position = UDim2.new(0, 0, 0, 30)
Scroll.CanvasSize = UDim2.new(0, 0, 0, 0)
Scroll.AutomaticCanvasSize = Enum.AutomaticSize.Y
Scroll.ScrollBarThickness = 6
Scroll.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
local UIListLayout = Instance.new("UIListLayout", Scroll)
UIListLayout.Padding = UDim.new(0, 4)
for key, default in pairs(AllOptions) do
    local container = Instance.new("Frame")
    container.Size = UDim2.new(1, -10, 0, 35)
    container.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
    container.Parent = Scroll
    local label = Instance.new("TextLabel")
    label.Text = tostring(key)
    label.Size = UDim2.new(0.5, -10, 1, 0)
    label.Position = UDim2.new(0, 5, 0, 0)
    label.BackgroundTransparency = 1
    label.TextColor3 = Color3.new(1, 1, 1)
    label.TextSize = 14
    label.Font = Enum.Font.SourceSans
    label.TextXAlignment = Enum.TextXAlignment.Left
    label.Parent = container
    if typeof(default) == "boolean" then
        local toggle = Instance.new("TextButton")
        toggle.Size = UDim2.new(0.5, -10, 1, -6)
        toggle.Position = UDim2.new(0.5, 5, 0, 3)
        toggle.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
        toggle.Text = tostring(default)
        toggle.TextColor3 = Color3.new(1, 1, 1)
        toggle.TextSize = 14
        toggle.Font = Enum.Font.SourceSans
        toggle.Parent = container
        Options[key] = default
        toggle.MouseButton1Click:Connect(function()
            Options[key] = not Options[key]
            toggle.Text = tostring(Options[key])
        end)
    elseif typeof(default) == "number" or typeof(default) == "string" then
        local box = Instance.new("TextBox")
        box.Size = UDim2.new(0.5, -10, 1, -6)
        box.Position = UDim2.new(0.5, 5, 0, 3)
        box.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
        box.Text = tostring(default)
        box.TextColor3 = Color3.new(1, 1, 1)
        box.TextSize = 14
        box.Font = Enum.Font.SourceSans
        box.ClearTextOnFocus = false
        box.Parent = container
        Options[key] = default
        box.FocusLost:Connect(function()
            if typeof(default) == "number" then
                local n = tonumber(box.Text)
                if n then Options[key] = n end
            else
                Options[key] = box.Text
            end
        end)
else
    Options[key] = default
    local editBtn = Instance.new("TextButton")
    editBtn.Size = UDim2.new(0.5, -10, 1, -6)
    editBtn.Position = UDim2.new(0.5, 5, 0, 3)
    editBtn.BackgroundColor3 = Color3.fromRGB(80, 80, 80)
    editBtn.Text = "[edit]"
    editBtn.TextColor3 = Color3.new(1, 1, 1)
    editBtn.TextSize = 14
    editBtn.Font = Enum.Font.SourceSans
    editBtn.Parent = container
    editBtn.MouseButton1Click:Connect(function()
        local popup = Instance.new("Frame")
        popup.Size = UDim2.new(0, 400, 0, 300)
        popup.Position = UDim2.new(0.5, -200, 0.5, -150)
        popup.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
        popup.BorderSizePixel = 0
        popup.ZIndex = 5
        popup.Parent = ScreenGui
        local closeBtn = Instance.new("TextButton", popup)
        closeBtn.Size = UDim2.new(0, 60, 0, 25)
        closeBtn.Position = UDim2.new(1, -65, 0, 5)
        closeBtn.Text = "Close"
        closeBtn.BackgroundColor3 = Color3.fromRGB(100, 30, 30)
        closeBtn.TextColor3 = Color3.new(1, 1, 1)
        closeBtn.ZIndex = 6
        local label = Instance.new("TextLabel", popup)
        label.Text = "Edit: " .. key
        label.Size = UDim2.new(1, -70, 0, 25)
        label.Position = UDim2.new(0, 5, 0, 5)
        label.TextColor3 = Color3.new(1, 1, 1)
        label.BackgroundTransparency = 1
        label.TextXAlignment = Enum.TextXAlignment.Left
        label.ZIndex = 6
        local inputBox = Instance.new("TextBox", popup)
        inputBox.Position = UDim2.new(0, 10, 0, 35)
        inputBox.Size = UDim2.new(1, -20, 1, -45)
        inputBox.Text = game:GetService("HttpService"):JSONEncode(default)
        inputBox.TextColor3 = Color3.new(1, 1, 1)
        inputBox.TextSize = 14
        inputBox.Font = Enum.Font.Code
        inputBox.MultiLine = true
        inputBox.ClearTextOnFocus = false
        inputBox.TextWrapped = false
        inputBox.TextYAlignment = Enum.TextYAlignment.Top
        inputBox.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
        inputBox.ZIndex = 6
        closeBtn.MouseButton1Click:Connect(function()
            local success, decoded = pcall(function()
                return game:GetService("HttpService"):JSONDecode(inputBox.Text)
            end)
            if success then
                Options[key] = decoded
            end
            popup:Destroy()
        end)
    end)
end
end
local RunButton = Instance.new("TextButton", Frame)
RunButton.Size = UDim2.new(1, -10, 0, 30)
RunButton.Position = UDim2.new(0, 5, 1, -35)
RunButton.BackgroundColor3 = Color3.fromRGB(75, 75, 75)
RunButton.Text = "Execute Saveinstance"
RunButton.TextColor3 = Color3.new(1, 1, 1)
RunButton.Font = Enum.Font.SourceSansBold
RunButton.TextSize = 16

RunButton.MouseButton1Click:Connect(function()
    pcall(function()
        synsaveinstance(Options)
    end)
end)
local dragging, dragInput, dragStart, startPos

Frame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 then
        dragging = true
        dragStart = input.Position
        startPos = Frame.Position

        input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then
                dragging = false
            end
        end)
    end
end)
Frame.InputChanged:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseMovement then
        dragInput = input
    end
end)
UserInputService.InputChanged:Connect(function(input)
    if dragging and input == dragInput then
        local delta = input.Position - dragStart
        Frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X,
                                   startPos.Y.Scale, startPos.Y.Offset + delta.Y)
    end
end)

Features & Information

useoughorhzorhorgyjxy

Community Comments (2)

zxcvzxcvJun 29, 2025

5315 ms ♥️

zyletrophenezyletropheneAug 2, 2025

hi @zxcv

More Scripts for Universal Scripts