-- StarterPlayerScripts > LocalScript -- Movable textbox + execute button that runs the code inside the textbox with loadstring local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") -- ScreenGui local screenGui = Instance.new("ScreenGui") screenGui.Name = "MovableExecutor" screenGui.Parent = playerGui screenGui.ResetOnSpawn = false -- Container Frame (the thing we will drag) local container = Instance.new("Frame") container.Name = "ExecutorContainer" container.Size = UDim2.new(0, 520, 0, 200) container.Position = UDim2.new(0.05, 0, 0.2, 0) container.BackgroundColor3 = Color3.fromRGB(18,18,20) container.BorderSizePixel = 0 container.Parent = screenGui container.Active = true -- Rounded look (optional): UICorner local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 12) corner.Parent = container -- Top bar (holds title + drag handle) local topBar = Instance.new("Frame") topBar.Size = UDim2.new(1, 0, 0, 36) topBar.Position = UDim2.new(0, 0, 0, 0) topBar.BackgroundTransparency = 1 topBar.Parent = container local title = Instance.new("TextLabel") title.Size = UDim2.new(1, -120, 1, 0) title.Position = UDim2.new(0, 16, 0, 0) title.BackgroundTransparency = 1 title.Text = "Executor" title.TextColor3 = Color3.fromRGB(230,230,230) title.Font = Enum.Font.SourceSansSemibold title.TextSize = 18 title.TextXAlignment = Enum.TextXAlignment.Left title.Parent = topBar -- Drag Handle (small button user drags) local dragHandle = Instance.new("TextButton") dragHandle.Name = "DragHandle" dragHandle.Size = UDim2.new(0, 72, 0, 24) dragHandle.Position = UDim2.new(1, -84, 0.5, -12) dragHandle.AnchorPoint = Vector2.new(0, 0) dragHandle.BackgroundColor3 = Color3.fromRGB(28,28,30) dragHandle.Text = "MOVE" dragHandle.Font = Enum.Font.SourceSans dragHandle.TextSize = 14 dragHandle.TextColor3 = Color3.fromRGB(220,220,220) dragHandle.Parent = topBar local handleCorner = Instance.new("UICorner", dragHandle) handleCorner.CornerRadius = UDim.new(0, 8) -- TextBox where user pastes the loadstring (multiline) local inputBox = Instance.new("TextBox") inputBox.Name = "CodeBox" inputBox.MultiLine = true inputBox.ClearTextOnFocus = false inputBox.TextWrapped = true inputBox.Text = "-- Paste your loadstring code here\n-- Example: loadstring('print(123)')()" inputBox.Font = Enum.Font.Code inputBox.TextSize = 16 inputBox.TextXAlignment = Enum.TextXAlignment.Left inputBox.TextYAlignment = Enum.TextYAlignment.Top inputBox.Size = UDim2.new(1, -20, 1, -86) inputBox.Position = UDim2.new(0, 10, 0, 46) inputBox.BackgroundColor3 = Color3.fromRGB(12,12,14) inputBox.TextColor3 = Color3.fromRGB(230,230,230) inputBox.Parent = container local codeCorner = Instance.new("UICorner", inputBox) codeCorner.CornerRadius = UDim.new(0, 8) -- Bottom buttons frame local buttonsFrame = Instance.new("Frame") buttonsFrame.Size = UDim2.new(1, -20, 0, 44) buttonsFrame.Position = UDim2.new(0, 10, 1, -56) buttonsFrame.BackgroundTransparency = 1 buttonsFrame.Parent = container -- Execute button local executeBtn = Instance.new("TextButton") executeBtn.Name = "ExecuteBtn" executeBtn.Size = UDim2.new(0, 140, 1, 0) executeBtn.Position = UDim2.new(0, 0, 0, 0) executeBtn.BackgroundColor3 = Color3.fromRGB(0,0,0) executeBtn.Text = "EXECUTE" executeBtn.Font = Enum.Font.SourceSansBold executeBtn.TextSize = 18 executeBtn.TextColor3 = Color3.fromRGB(255,255,255) executeBtn.Parent = buttonsFrame local exCorner = Instance.new("UICorner", executeBtn) exCorner.CornerRadius = UDim.new(0, 10) -- Clear button local clearBtn = Instance.new("TextButton") clearBtn.Name = "ClearBtn" clearBtn.Size = UDim2.new(0, 120, 1, 0) clearBtn.Position = UDim2.new(0, 156, 0, 0) clearBtn.BackgroundColor3 = Color3.fromRGB(28,28,30) clearBtn.Text = "CLEAR" clearBtn.Font = Enum.Font.SourceSans clearBtn.TextSize = 16 clearBtn.TextColor3 = Color3.fromRGB(220,220,220) clearBtn.Parent = buttonsFrame local clCorner = Instance.new("UICorner", clearBtn) clCorner.CornerRadius = UDim.new(0, 10) -- Execute Clipboard (optional) - tries to paste from clipboard (may not work on all environments) local execClipBtn = Instance.new("TextButton") execClipBtn.Name = "ExecClipboard" execClipBtn.Size = UDim2.new(0, 200, 1, 0) execClipBtn.Position = UDim2.new(0, 288, 0, 0) execClipBtn.BackgroundColor3 = Color3.fromRGB(28,28,30) execClipBtn.Text = "EXECUTE CLIPBOARD" execClipBtn.Font = Enum.Font.SourceSans execClipBtn.TextSize = 16 execClipBtn.TextColor3 = Color3.fromRGB(220,220,220) execClipBtn.Parent = buttonsFrame local ecCorner = Instance.new("UICorner", execClipBtn) ecCorner.CornerRadius = UDim.new(0, 10) -- Dragging logic (works for mouse and touch) local dragging = false local dragStart local startPos local function onInputBegan(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = container.Position -- end dragging when this input ends input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end UserInputService.InputChanged:Connect(function(input) if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then local delta = input.Position - dragStart -- compute new pixel offset from startPos local newX = startPos.X.Offset + delta.X local newY = startPos.Y.Offset + delta.Y -- clamp to screen edges (optional) local screenW = workspace.CurrentCamera.ViewportSize.X local screenH = workspace.CurrentCamera.ViewportSize.Y -- keep inside bounds newX = math.clamp(newX, -container.Size.X.Offset + 40, screenW - 40) newY = math.clamp(newY, 0, screenH - 40) container.Position = UDim2.new(0, newX, 0, newY) end end) -- Connect the drag handle and topbar to start dragging (both allow dragging) dragHandle.InputBegan:Connect(onInputBegan) topBar.InputBegan:Connect(onInputBegan) -- Button actions clearBtn.MouseButton1Click:Connect(function() inputBox.Text = "" end) -- EXECUTE button: runs the text inside the TextBox using loadstring executeBtn.MouseButton1Click:Connect(function() local code = inputBox.Text or "" if code == "" then return end -- Run safely local ok, err = pcall(function() -- In many Roblox environments loadstring is disabled. -- If loadstring exists in the environment (exploit executor), it will run. -- If it doesn't exist, attempt to run it directly if it's a function or run as chunk (pcall(loadstring,...)) local fn = loadstring and loadstring(code) or loadstring -- nil if doesn't exist if type(fn) == "function" then fn() else -- fallback: try to run as a function constructed with load (some envs use load instead) local loader = load or loadstring if loader then local f = loader(code) if type(f) == "function" then f() else error("No executable chunk found.") end else error("loadstring/load not available in this environment.") end end end) if not ok then -- show simple error in TextBox (you can customize) inputBox.Text = "-- Error running script:\n-- " .. tostring(err) end end) -- EXECUTE CLIPBOARD tries to paste from system clipboard (may not work depending on environment) execClipBtn.MouseButton1Click:Connect(function() local clipText -- Some exploit environments expose 'setclipboard'/'getclipboard' or 'clipboard' API; Roblox doesn't expose clipboard normally. -- Try common getters. This is optional and may not work. if syn and syn.request then -- synapse doesn't provide getclipboard reliably; skip end -- If clipboard API exists as 'getclipboard' if typeof(getclipboard) == "function" then clipText = getclipboard() elseif typeof(read_clipboard) == "function" then clipText = read_clipboard() end if clipText and clipText ~= "" then inputBox.Text = clipText -- auto execute clipboard content (optional): comment out if you only want to paste -- local ok, err = pcall(function() loadstring(clipText)() end) else -- feedback to user inputBox.Text = "-- Clipboard not available or empty." end end)