
Key Required
Auto Farm made with AI via Google Gemini
Lua Script•136 lines (4560 chars)
-- 1. SETUP & PARENTING
local function getSafeParent()
local p = nil
pcall(function() p = gethui() end)
if p then return p end
pcall(function() p = game:GetService("CoreGui") end)
if p then return p end
return game:GetService("Players").LocalPlayer:WaitForChild("PlayerGui")
end
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "Gojo_Clicker_Limited"
ScreenGui.Parent = getSafeParent()
ScreenGui.ResetOnSpawn = false
-- 2. MAIN FRAME
local MainFrame = Instance.new("Frame")
MainFrame.Size = UDim2.new(0, 220, 0, 200)
MainFrame.Position = UDim2.new(0.5, -110, 0.5, -100)
MainFrame.BackgroundColor3 = Color3.fromRGB(15, 15, 20)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.Draggable = true
MainFrame.Parent = ScreenGui
Instance.new("UICorner", MainFrame).CornerRadius = UDim.new(0, 10)
-- 3. MINIMIZE SYSTEM
local MaxBtn = Instance.new("TextButton")
MaxBtn.Size = UDim2.new(0, 120, 0, 30)
MaxBtn.Position = UDim2.new(0.5, -60, 0, 10)
MaxBtn.BackgroundColor3 = Color3.fromRGB(30, 30, 45)
MaxBtn.Text = "Open Clicker"
MaxBtn.TextColor3 = Color3.new(1, 1, 1)
MaxBtn.Visible = false
MaxBtn.Parent = ScreenGui
Instance.new("UICorner", MaxBtn)
local MiniButton = Instance.new("TextButton", MainFrame)
MiniButton.Size = UDim2.new(0, 25, 0, 25)
MiniButton.Position = UDim2.new(1, -30, 0, 5)
MiniButton.Text = "-"
MiniButton.BackgroundColor3 = Color3.fromRGB(40, 40, 60)
MiniButton.TextColor3 = Color3.new(1, 1, 1)
Instance.new("UICorner", MiniButton)
MiniButton.MouseButton1Click:Connect(function()
MainFrame.Visible = false
MaxBtn.Visible = true
end)
MaxBtn.MouseButton1Click:Connect(function()
MainFrame.Visible = true
MaxBtn.Visible = false
end)
-- 4. BOUNDARY LOGIC (Top-screen friendly)
MainFrame:GetPropertyChangedSignal("Position"):Connect(function()
local screen = ScreenGui.AbsoluteSize
local frameSize = MainFrame.AbsoluteSize
local x = math.clamp(MainFrame.AbsolutePosition.X, 0, screen.X - frameSize.X)
local y = math.clamp(MainFrame.AbsolutePosition.Y, 0, screen.Y - frameSize.Y)
MainFrame.Position = UDim2.new(0, x, 0, y)
end)
-- 5. UI ELEMENTS
local Title = Instance.new("TextLabel", MainFrame)
Title.Size = UDim2.new(1, -40, 0, 35)
Title.Text = "STABLE CLICKER"
Title.TextColor3 = Color3.new(1, 1, 1)
Title.BackgroundTransparency = 1
Title.Font = Enum.Font.SourceSansBold
local SpeedInput = Instance.new("TextBox", MainFrame)
SpeedInput.Size = UDim2.new(0, 100, 0, 25)
SpeedInput.Position = UDim2.new(0.5, -50, 0, 50)
SpeedInput.BackgroundColor3 = Color3.fromRGB(30, 30, 40)
SpeedInput.Text = "0"
SpeedInput.TextColor3 = Color3.new(1, 1, 1)
local BurstInput = Instance.new("TextBox", MainFrame)
BurstInput.Size = UDim2.new(0, 100, 0, 25)
BurstInput.Position = UDim2.new(0.5, -50, 0, 85)
BurstInput.BackgroundColor3 = Color3.fromRGB(30, 30, 40)
BurstInput.Text = "5" -- Balanced default
BurstInput.TextColor3 = Color3.new(0, 1, 1)
-- BURST LIMIT LOGIC
BurstInput:GetPropertyChangedSignal("Text"):Connect(function()
local val = tonumber(BurstInput.Text)
if val and val > 50 then
BurstInput.Text = "50" -- Hard cap to save your FPS
end
end)
local Toggle = Instance.new("TextButton", MainFrame)
Toggle.Size = UDim2.new(0.8, 0, 0, 40)
Toggle.Position = UDim2.new(0.1, 0, 0, 125)
Toggle.Text = "START"
Toggle.BackgroundColor3 = Color3.fromRGB(150, 0, 0)
Toggle.TextColor3 = Color3.new(1, 1, 1)
Toggle.Font = Enum.Font.SourceSansBold
Instance.new("UICorner", Toggle)
local Credit = Instance.new("TextLabel", MainFrame)
Credit.Size = UDim2.new(1, 0, 0, 20)
Credit.Position = UDim2.new(0, 0, 1, -20)
Credit.Text = "Made by Gojo Satoru"
Credit.TextColor3 = Color3.fromRGB(160, 160, 255)
Credit.BackgroundTransparency = 1
-- 6. LOGIC
local running = false
local remote = game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("Clicker")
local function spam()
while running do
local bCount = tonumber(BurstInput.Text) or 1
-- Clamp again inside loop for safety
bCount = math.min(bCount, 50)
for i = 1, bCount do
if not running then break end
remote:FireServer()
end
local dVal = tonumber(SpeedInput.Text) or 0
task.wait(dVal <= 0 and 0 or dVal)
end
end
Toggle.MouseButton1Click:Connect(function()
running = not running
Toggle.Text = running and "STOP" or "START"
Toggle.BackgroundColor3 = running and Color3.fromRGB(0, 150, 0) or Color3.fromRGB(150, 0, 0)
if running then task.spawn(spam) end
end)Features & Information
Just made with AI. If you have a terrible phone or just can't perform that well, then don't put to many clicks. Burst is how many clicks it does per remote activated. There is a limit but it can still be fairly laggy.
Community Comments (0)
No comments yet for this script.
