local ScreenGui = Instance.new("ScreenGui") local MainFrame = Instance.new("Frame") local Title = Instance.new("TextLabel") local TextBox = Instance.new("TextBox") local StartBtn = Instance.new("TextButton") local StopBtn = Instance.new("TextButton") -- Parent to CoreGui ScreenGui.Parent = game:GetService("CoreGui") ScreenGui.Name = "FriendBot_Punctuation" -- UI Styling MainFrame.Name = "MainFrame" MainFrame.Parent = ScreenGui MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) MainFrame.Position = UDim2.new(0.5, -110, 0.5, -80) MainFrame.Size = UDim2.new(0, 220, 0, 160) MainFrame.Active = true MainFrame.Draggable = true Title.Parent = MainFrame Title.Size = UDim2.new(1, 0, 0, 35) Title.Text = " Chat spammer by robloxplayer37864" Title.TextColor3 = Color3.new(1, 1, 1) Title.BackgroundColor3 = Color3.fromRGB(15, 15, 15) TextBox.Parent = MainFrame TextBox.Text = "add me! i need max friends cap" TextBox.Position = UDim2.new(0.05, 0, 0.3, 0) TextBox.Size = UDim2.new(0.9, 0, 0.25, 0) TextBox.BackgroundColor3 = Color3.fromRGB(45, 45, 45) TextBox.TextColor3 = Color3.new(1, 1, 1) StartBtn.Parent = MainFrame StartBtn.Text = "START" StartBtn.BackgroundColor3 = Color3.fromRGB(0, 140, 0) StartBtn.Position = UDim2.new(0.05, 0, 0.65, 0) StartBtn.Size = UDim2.new(0.42, 0, 0.25, 0) StopBtn.Parent = MainFrame StopBtn.Text = "STOP" StopBtn.BackgroundColor3 = Color3.fromRGB(140, 0, 0) StopBtn.Position = UDim2.new(0.53, 0, 0.65, 0) StopBtn.Size = UDim2.new(0.42, 0, 0.25, 0) -- Logic local running = false local TextChatService = game:GetService("TextChatService") local GeneralChannel = TextChatService.TextChannels.RBXGeneral -- The list of characters to cycle through local variations = {".", "..", "'", '"', "!", " ", "-"} StartBtn.MouseButton1Click:Connect(function() if running then return end running = true StartBtn.Text = "RUNNING" while running do local userMessage = TextBox.Text -- Pick a random character from the list above local randomChar = variations[math.random(1, #variations)] local finalMessage = userMessage .. randomChar GeneralChannel:SendAsync(finalMessage) task.wait(20) -- Your 20 second delay end end) StopBtn.MouseButton1Click:Connect(function() running = false StartBtn.Text = "START" end)