
GOD TYCOON Script – AutoCollect & AutoClick
-- LocalScript in StarterPlayerScripts
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
if _G.AutoClickerRunId then
_G.AutoClickerRunId += 1
else
_G.AutoClickerRunId = 1
end
local myRun = _G.AutoClickerRunId
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local old = playerGui:FindFirstChild("AutoClickerGUI")
if old then
old:Destroy()
end
local function tycoonNameOfClicker(clicker: Instance): string
local ok, res = pcall(function()
return clicker.Parent.Parent.Parent.Parent.Name
end)
if ok and res then
return res
end
return "?"
end
local function tycoonNameOfGiver(giver: Instance): string
local ok, res = pcall(function()
return giver.Parent.Parent.Name
end)
if ok and res then
return res
end
return "?"
end
local function collectClickers()
local found = {}
local tyRoot = workspace:FindFirstChild("Tycoons")
if not tyRoot then
return found
end
local ok, desc = pcall(function()
return tyRoot:GetDescendants()
end)
if not ok or not desc then
return found
end
for _, d in ipairs(desc) do
if d:IsA("ClickDetector") and d.Parent and d.Parent.Name == "Clicker" then
local model = d.Parent.Parent
local mine = model and model.Parent
if model and model.Name == "Model" and mine then
table.insert(found, {
clicker = d.Parent,
detector = d,
model = model,
mine = mine,
tycoon = tycoonNameOfClicker(d.Parent),
})
if #found >= 50 then
break
end
end
end
end
return found
end
local function collectGivers()
local found = {}
local tyRoot = workspace:FindFirstChild("Tycoons")
if not tyRoot then
return found
end
local ok, desc = pcall(function()
return tyRoot:GetDescendants()
end)
if not ok or not desc then
return found
end
for _, d in ipairs(desc) do
if d:IsA("BasePart") and d.Name == "Giver" and d:FindFirstChild("Attachment") then
table.insert(found, {
part = d,
tycoon = tycoonNameOfGiver(d),
})
if #found >= 50 then
break
end
end
end
return found
end
local entries = collectClickers()
local givers = collectGivers()
local KEYWORDS = { "click", "mine", "drop", "upgrade", "tycoon", "speed", "button", "ore" }
local function nameMatches(n: string): boolean
local l = string.lower(n)
for _, k in ipairs(KEYWORDS) do
if string.find(l, k, 1, true) then
return true
end
end
return false
end
local allRemotes: any = {}
local seen: any = {}
local function addRemote(r: any)
if r and r:IsA("RemoteEvent") and not seen[r] then
seen[r] = true
table.insert(allRemotes, r)
end
end
local function scanRoot(root: any, cap: number, onlyMatching: boolean)
if not root then
return
end
local ok, desc = pcall(function()
return root:GetDescendants()
end)
if not ok or not desc then
return
end
local n = 0
for _, d in ipairs(desc) do
n += 1
if n > cap then
break
end
if d:IsA("RemoteEvent") then
if not onlyMatching or nameMatches(d.Name) then
addRemote(d)
end
if #allRemotes >= 25 then
return
end
end
end
end
for _, e in ipairs(entries) do
scanRoot(e.clicker, 50, false)
scanRoot(e.model, 100, false)
scanRoot(e.mine, 200, false)
end
scanRoot(ReplicatedStorage, 2000, true)
local hasFireClick = (typeof(fireclickdetector) == "function")
local hasFireTouch = (typeof(firetouchinterest) == "function")
local clickNames: any = {}
for _, e in ipairs(entries) do
table.insert(clickNames, e.tycoon)
end
print("[AutoClicker] Click tycoons (" .. tostring(#entries) .. "): " .. table.concat(clickNames, ", "))
local giverNames: any = {}
for _, g in ipairs(givers) do
table.insert(giverNames, g.tycoon .. "=" .. g.part:GetFullName())
end
print("[AutoClicker] Money givers (" .. tostring(#givers) .. "): " .. table.concat(giverNames, " | "))
if #entries == 0 then
warn("[AutoClicker] No ClickDetectors found under workspace.Tycoons.")
end
if #givers == 0 then
warn("[AutoClicker] No Giver+Attachment parts found under workspace.Tycoons.")
end
if not hasFireClick then
warn("[AutoClicker] fireclickdetector() missing in Studio. Remote fallback will be used.")
end
if not hasFireTouch then
warn("[AutoClicker] firetouchinterest() missing in Studio. Collect falls back to teleporting your character.")
end
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "AutoClickerGUI"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
screenGui.Parent = playerGui
local mainFrame = Instance.new("Frame")
mainFrame.Size = UDim2.new(0, 220, 0, 196)
mainFrame.Position = UDim2.new(0.5, -110, 0.3, 0)
mainFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
mainFrame.BorderSizePixel = 0
mainFrame.Active = true
mainFrame.Parent = screenGui
local frameCorner = Instance.new("UICorner")
frameCorner.CornerRadius = UDim.new(0, 8)
frameCorner.Parent = mainFrame
local dragBar = Instance.new("TextLabel")
dragBar.Name = "DragBar"
dragBar.Size = UDim2.new(1, 0, 0, 22)
dragBar.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
dragBar.BorderSizePixel = 0
dragBar.Text = "DRAG HERE"
dragBar.TextColor3 = Color3.fromRGB(170, 170, 170)
dragBar.Font = Enum.Font.SourceSansBold
dragBar.TextSize = 13
dragBar.Active = true
dragBar.Parent = mainFrame
local toggleBtn = Instance.new("TextButton")
toggleBtn.Size = UDim2.new(0, 160, 0, 44)
toggleBtn.Position = UDim2.new(0, 10, 0, 30)
toggleBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
toggleBtn.BorderSizePixel = 0
toggleBtn.Text = "Auto Click: OFF"
toggleBtn.TextColor3 = Color3.new(1, 1, 1)
toggleBtn.Font = Enum.Font.SourceSansBold
toggleBtn.TextSize = 16
toggleBtn.AutoButtonColor = false
toggleBtn.Parent = mainFrame
local toggleCorner = Instance.new("UICorner")
toggleCorner.CornerRadius = UDim.new(0, 6)
toggleCorner.Parent = toggleBtn
local collectBtn = Instance.new("TextButton")
collectBtn.Size = UDim2.new(0, 160, 0, 44)
collectBtn.Position = UDim2.new(0, 10, 0, 80)
collectBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
collectBtn.BorderSizePixel = 0
collectBtn.Text = "Auto Collect: OFF"
collectBtn.TextColor3 = Color3.new(1, 1, 1)
collectBtn.Font = Enum.Font.SourceSansBold
collectBtn.TextSize = 16
collectBtn.AutoButtonColor = false
collectBtn.Parent = mainFrame
local collectCorner = Instance.new("UICorner")
collectCorner.CornerRadius = UDim.new(0, 6)
collectCorner.Parent = collectBtn
local closeBtn = Instance.new("TextButton")
closeBtn.Size = UDim2.new(0, 30, 0, 30)
closeBtn.Position = UDim2.new(1, -40, 0, 35)
closeBtn.BackgroundColor3 = Color3.fromRGB(200, 50, 50)
closeBtn.BorderSizePixel = 0
closeBtn.Text = "X"
closeBtn.TextColor3 = Color3.new(1, 1, 1)
closeBtn.Font = Enum.Font.SourceSansBold
closeBtn.TextSize = 18
closeBtn.Parent = mainFrame
local closeCorner = Instance.new("UICorner")
closeCorner.CornerRadius = UDim.new(0, 6)
closeCorner.Parent = closeBtn
local statusLabel = Instance.new("TextLabel")
statusLabel.Size = UDim2.new(1, -20, 0, 62)
statusLabel.Position = UDim2.new(0, 10, 0, 128)
statusLabel.BackgroundTransparency = 1
statusLabel.TextXAlignment = Enum.TextXAlignment.Left
statusLabel.TextYAlignment = Enum.TextYAlignment.Top
statusLabel.Font = Enum.Font.SourceSans
statusLabel.TextSize = 12
statusLabel.TextColor3 = Color3.fromRGB(180, 180, 180)
statusLabel.TextWrapped = true
statusLabel.Text = "starting..."
statusLabel.Parent = mainFrame
local enabled = false
local collectEnabled = false
local dragging = false
local dragStart = Vector2.new(0, 0)
local startPos = mainFrame.Position
local fires = 0
local collects = 0
local connections = {}
local function refreshStatus()
local methodText = "NONE"
if hasFireClick and #allRemotes > 0 then
methodText = "fireclick+" .. tostring(#allRemotes) .. " remote(s)"
elseif hasFireClick then
methodText = "fireclick"
elseif #allRemotes > 0 then
methodText = tostring(#allRemotes) .. " remote(s)"
end
local touchText = if hasFireTouch then "invisible" else "teleport"
statusLabel.Text = "Clickers: " .. tostring(#entries) .. " | " .. methodText .. "\nMoneyGivers: " .. tostring(#givers) .. " (" .. touchText .. ") | Fires: " .. tostring(fires) .. " | Collects: " .. tostring(collects)
end
refreshStatus()
local function cleanup()
enabled = false
collectEnabled = false
dragging = false
_G.AutoClickerRunId += 1
for _, c in ipairs(connections) do
pcall(function()
c:Disconnect()
end)
end
table.clear(connections)
screenGui:Destroy()
collectgarbage("collect")
end
table.insert(connections, dragBar.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = mainFrame.Position
end
end))
table.insert(connections, UserInputService.InputChanged:Connect(function(input)
if not dragging then
return
end
if input.UserInputType == Enum.UserInputType.MouseMovement
or input.UserInputType == Enum.UserInputType.Touch then
local delta = input.Position - dragStart
mainFrame.Position = UDim2.new(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
end
end))
table.insert(connections, UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = false
end
end))
table.insert(connections, toggleBtn.Activated:Connect(function()
enabled = not enabled
if enabled then
toggleBtn.Text = "Auto Click: ON"
toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 170, 85)
else
toggleBtn.Text = "Auto Click: OFF"
toggleBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
end
refreshStatus()
end))
table.insert(connections, collectBtn.Activated:Connect(function()
collectEnabled = not collectEnabled
if collectEnabled then
collectBtn.Text = "Auto Collect: ON"
collectBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 200)
else
collectBtn.Text = "Auto Collect: OFF"
collectBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
end
refreshStatus()
end))
table.insert(connections, closeBtn.Activated:Connect(cleanup))
local function doCollectAll()
local char = player.Character
local hrp = char and char:FindFirstChild("HumanoidRootPart")
if not hrp then
return
end
if hasFireTouch then
for _, g in ipairs(givers) do
if myRun ~= _G.AutoClickerRunId or not collectEnabled then
break
end
pcall(function()
firetouchinterest(hrp, g.part, 0)
task.wait()
firetouchinterest(hrp, g.part, 1)
end)
end
else
local saved: CFrame = hrp.CFrame
for _, g in ipairs(givers) do
if myRun ~= _G.AutoClickerRunId or not collectEnabled then
break
end
pcall(function()
hrp.CFrame = g.part.CFrame + Vector3.new(0, 3, 0)
end)
task.wait(0.25)
end
pcall(function()
hrp.CFrame = saved
end)
end
collects += 1
refreshStatus()
end
task.spawn(function()
while myRun == _G.AutoClickerRunId do
if collectEnabled and #givers > 0 then
pcall(doCollectAll)
end
local waited = 0
while waited < 5 and myRun == _G.AutoClickerRunId do
task.wait(0.1)
waited += 0.1
end
end
end)
local hbConn
hbConn = RunService.Heartbeat:Connect(function()
if myRun ~= _G.AutoClickerRunId then
pcall(function()
hbConn:Disconnect()
end)
return
end
if not enabled then
return
end
fires += 1
if hasFireClick then
for _, e in ipairs(entries) do
pcall(fireclickdetector, e.detector)
end
end
for _, r in ipairs(allRemotes) do
pcall(function()
r:FireServer()
end)
end
if fires % 15 == 0 then
refreshStatus()
end
end)
table.insert(connections, hbConn)How to Execute GOD TYCOON Script – AutoCollect & AutoClick
Step 1: Copy Code: Click the Copy Code button in the viewer above to grab the clean Lua loadstring.
Step 2: Launch Executor: Open a compatible, unpatched executor. If you need one, check our Roblox Executors Directory.
Step 3: Join Experience: Launch Roblox and join GOD TYCOON.
Step 4: Attach & Run: Attach/inject your executor into the Roblox process, paste the code into the script tab, and press Execute.
Created By
View Author ProfileFeatures & Information
Script Changelog (1)
Community Comments (0)
No comments yet for this script.
Frequently Asked Questions
How do I execute GOD TYCOON Script – AutoCollect & AutoClick in Roblox?
To run GOD TYCOON Script – AutoCollect & AutoClick, copy the Lua loadstring from the code viewer above, launch Roblox and join GOD TYCOON, attach a working executor (such as Potassium, Solara, or Delta from our Executors directory), paste the code into your executor console, and click Execute.
Is GOD TYCOON Script – AutoCollect & AutoClick keyless or does it require an access key?
GOD TYCOON Script – AutoCollect & AutoClick requires an access key. You can retrieve the official key directly using the Get Script Key link provided above.
Is GOD TYCOON Script – AutoCollect & AutoClick currently safe and working?
This script is active and operational. Always test scripts using a secondary (alt) Roblox account to safeguard your main profile against anti-cheat bans.


