Run it
Copy the script and paste it into your executor.
Players = :()
ReplicatedStorage = :()
UserInputService = :()
TweenService = :()
RemotesFolder = ReplicatedStorage:()
playerGui = Players.LocalPlayer:()
knownRemotes = {
,
,
,
,
,
,
}
sg = .()
sg.Name =
sg.ResetOnSpawn =
sg.IgnoreGuiInset =
sg.ZIndexBehavior = .ZIndexBehavior.Sibling
sg.Parent = playerGui
baseWidth =
panelWidth =
panelGap =
contentBasePosX =
mainFrame = .()
mainFrame.Name =
mainFrame.Size = .(baseWidth, )
mainFrame.Position = .(, , , )
mainFrame.BackgroundColor3 = .(, , )
mainFrame.BackgroundTransparency =
mainFrame.BorderSizePixel =
mainFrame.Parent = sg
.(, mainFrame).CornerRadius = .(, )
stroke = .()
stroke.Color = .(, , )
stroke.Transparency =
stroke.Parent = mainFrame
closeBtn = .()
closeBtn.Size = .(, )
closeBtn.Position = .(, -, , )
closeBtn.BackgroundColor3 = .(, , )
closeBtn.Text =
closeBtn.TextColor3 = .(, , )
closeBtn.Font = .Font.GothamBold
closeBtn.TextSize =
closeBtn.AutoButtonColor =
closeBtn.Parent = mainFrame
.(, closeBtn).CornerRadius = .(, )
closeBtn.MouseEnter:(()
TweenService:(closeBtn, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
)
closeBtn.MouseLeave:(()
TweenService:(closeBtn, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
)
sidebar = .()
sidebar.Name =
sidebar.Size = .(, , , -)
sidebar.Position = .(, )
sidebar.BackgroundColor3 = .(, , )
sidebar.BackgroundTransparency =
sidebar.BorderSizePixel =
sidebar.Parent = mainFrame
.(, sidebar).CornerRadius = .(, )
sidebarTitle = .()
sidebarTitle.Size = .(, -, , )
sidebarTitle.Position = .(, )
sidebarTitle.BackgroundTransparency =
sidebarTitle.Text =
sidebarTitle.TextColor3 = .(, , )
sidebarTitle.Font = .Font.GothamSemibold
sidebarTitle.TextSize =
sidebarTitle.TextXAlignment = .TextXAlignment.Left
sidebarTitle.Parent = sidebar
statsPanel = .()
statsPanel.Name =
statsPanel.Size = .(, panelWidth, , -)
statsPanel.Position = .(contentBasePosX, )
statsPanel.BackgroundColor3 = .(, , )
statsPanel.BackgroundTransparency =
statsPanel.BorderSizePixel =
statsPanel.Visible =
statsPanel.Parent = mainFrame
.(, statsPanel).CornerRadius = .(, )
statsTitle = .()
statsTitle.Size = .(, -, , )
statsTitle.Position = .(, )
statsTitle.BackgroundTransparency =
statsTitle.Text =
statsTitle.TextColor3 = .(, , )
statsTitle.Font = .Font.GothamSemibold
statsTitle.TextSize =
statsTitle.TextXAlignment = .TextXAlignment.Left
statsTitle.Parent = statsPanel
searchBox = .()
searchBox.Size = .(, -, , )
searchBox.Position = .(, )
searchBox.BackgroundColor3 = .(, , )
searchBox.Text =
searchBox.PlaceholderText =
searchBox.TextColor3 = .(, , )
searchBox.Font = .Font.Gotham
searchBox.TextSize =
searchBox.ClearTextOnFocus =
searchBox.Parent = statsPanel
.(, searchBox).CornerRadius = .(, )
.(, searchBox).PaddingLeft = .(, )
statsList = .()
statsList.Size = .(, -, , -)
statsList.Position = .(, )
statsList.BackgroundTransparency =
statsList.BorderSizePixel =
statsList.ScrollBarThickness =
statsList.ScrollBarImageColor3 = .(, , )
statsList.Parent = statsPanel
statsListLayout = .()
statsListLayout.SortOrder = .SortOrder.Name
statsListLayout.Padding = .(, )
statsListLayout.Parent = statsList
configPanel = .()
configPanel.Name =
configPanel.Size = .(, panelWidth, , -)
configPanel.Position = .(contentBasePosX + panelWidth + panelGap, )
configPanel.BackgroundColor3 = .(, , )
configPanel.BackgroundTransparency =
configPanel.BorderSizePixel =
configPanel.Visible =
configPanel.Parent = mainFrame
.(, configPanel).CornerRadius = .(, )
configTitle = .()
configTitle.Size = .(, -, , )
configTitle.Position = .(, )
configTitle.BackgroundTransparency =
configTitle.Text =
configTitle.TextColor3 = .(, , )
configTitle.Font = .Font.GothamSemibold
configTitle.TextSize =
configTitle.TextXAlignment = .TextXAlignment.Left
configTitle.Parent = configPanel
content = .()
content.Name =
content.Size = .(, -(contentBasePosX + ), , -)
content.Position = .(contentBasePosX, )
content.BackgroundTransparency =
content.Parent = mainFrame
title = .()
title.Size = .(, -, , )
title.Position = .(, )
title.BackgroundTransparency =
title.Text =
title.TextColor3 = .(, , )
title.Font = .Font.GothamBold
title.TextSize =
title.TextXAlignment = .TextXAlignment.Left
title.Parent = content
statsBtn = .()
statsBtn.Size = .(, )
statsBtn.Position = .(, )
statsBtn.BackgroundColor3 = .(, , )
statsBtn.Text =
statsBtn.TextColor3 = .(, , )
statsBtn.Font = .Font.GothamMedium
statsBtn.TextSize =
statsBtn.AutoButtonColor =
statsBtn.Parent = content
.(, statsBtn).CornerRadius = .(, )
statsBtn.MouseEnter:(()
TweenService:(statsBtn, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
)
statsBtn.MouseLeave:(()
TweenService:(statsBtn, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
)
delaySection = .()
delaySection.Size = .(, , , )
delaySection.Position = .(, )
delaySection.BackgroundTransparency =
delaySection.Parent = content
delayLabel = .()
delayLabel.Size = .(, )
delayLabel.Position = .(, )
delayLabel.BackgroundTransparency =
delayLabel.Text =
delayLabel.TextColor3 = .(, , )
delayLabel.Font = .Font.GothamMedium
delayLabel.TextSize =
delayLabel.TextXAlignment = .TextXAlignment.Left
delayLabel.Parent = delaySection
delayBox = .()
delayBox.Size = .(, )
delayBox.Position = .(, )
delayBox.BackgroundColor3 = .(, , )
delayBox.Text =
delayBox.TextColor3 = .(, , )
delayBox.Font = .Font.Gotham
delayBox.TextSize =
delayBox.ClearTextOnFocus =
delayBox.PlaceholderText =
delayBox.Parent = delaySection
.(, delayBox).CornerRadius = .(, )
.(, delayBox).PaddingLeft = .(, )
.(, delayBox).PaddingRight = .(, )
startStop = .()
startStop.Size = .(, )
startStop.Position = .(, )
startStop.BackgroundColor3 = .(, , )
startStop.Text =
startStop.TextColor3 = .(, , )
startStop.Font = .Font.GothamSemibold
startStop.TextSize =
startStop.AutoButtonColor =
startStop.Parent = content
.(, startStop).CornerRadius = .(, )
.(, startStop).PaddingLeft = .(, )
.(, startStop).PaddingRight = .(, )
statusSection = .()
statusSection.Size = .(, , , )
statusSection.Position = .(, )
statusSection.BackgroundTransparency =
statusSection.Parent = content
status = .()
status.Size = .(, -, , )
status.BackgroundTransparency =
status.Text =
status.TextColor3 = .(, , )
status.Font = .Font.Gotham
status.TextSize =
status.TextXAlignment = .TextXAlignment.Left
status.Parent = statusSection
sent = .()
sent.Size = .(, )
sent.Position = .(, -, , )
sent.BackgroundTransparency =
sent.Text =
sent.TextColor3 = .(, , )
sent.Font = .Font.GothamMedium
sent.TextSize =
sent.TextXAlignment = .TextXAlignment.Right
sent.Parent = statusSection
selectedList = .()
selectedList.Size = .(, -, , -)
selectedList.Position = .(, )
selectedList.BackgroundTransparency =
selectedList.BorderSizePixel =
selectedList.ScrollBarThickness =
selectedList.ScrollBarImageColor3 = .(, , )
selectedList.Parent = sidebar
selectedListLayout = .()
selectedListLayout.SortOrder = .SortOrder.Name
selectedListLayout.Padding = .(, )
selectedListLayout.Parent = selectedList
running =
totalSent =
selected = {}
statsOptions = {}
configState = {
SeedCollect = { amount = },
GrassCollect = {
normal = , ruby = , silver = , golden = , diamond =
}
}
updateSelectedList
updateUI
createStatsList
showConfigFor
updateLayout
updateLayout = ()
extra =
statsPanel.Visible extra = extra + (panelWidth + panelGap)
configPanel.Visible extra = extra + (panelWidth + panelGap)
targetWidth = baseWidth + extra
targetContentX = contentBasePosX + extra
targetContentOffsetX = -(contentBasePosX + extra + )
TweenService:(mainFrame, TweenInfo.(, .EasingStyle.Quart), {Size = .(targetWidth, mainFrame.Size.Y.Offset)}):()
TweenService:(content, TweenInfo.(, .EasingStyle.Quart), {
Position = .(targetContentX, content.Position.Y.Offset),
Size = .(, targetContentOffsetX, , -)
}):()
(parent)
_, c (parent:())
c:() c ~= configTitle
c:()
showConfigFor = (remoteName)
(configPanel)
configTitle.Text = .. remoteName
(y, labelText, startValue)
lbl = .()
lbl.Size = .(, -, , )
lbl.Position = .(, y)
lbl.BackgroundTransparency =
lbl.Text = labelText
lbl.TextColor3 = .(, , )
lbl.Font = .Font.Gotham
lbl.TextSize =
lbl.TextXAlignment = .TextXAlignment.Left
lbl.Parent = configPanel
box = .()
box.Size = .(, )
box.Position = .(, y + )
box.BackgroundColor3 = .(, , )
box.Text = (startValue )
box.TextColor3 = .(, , )
box.Font = .Font.Gotham
box.TextSize =
box.ClearTextOnFocus =
box.PlaceholderText =
box.Parent = configPanel
.(, box).CornerRadius = .(, )
.(, box).PaddingLeft = .(, )
.(, box).PaddingRight = .(, )
box
remoteName ==
amountBox = (, , configState.SeedCollect.amount )
saveBtn = .()
saveBtn.Size = .(, )
saveBtn.Position = .(, )
saveBtn.BackgroundColor3 = .(, , )
saveBtn.Text =
saveBtn.TextColor3 = .(, , )
saveBtn.Font = .Font.GothamSemibold
saveBtn.TextSize =
saveBtn.AutoButtonColor =
saveBtn.Parent = configPanel
.(, saveBtn).CornerRadius = .(, )
saveBtn.Activated:(()
n = (amountBox.Text)
n n < n =
n = .(n + )
configState.SeedCollect.amount = n
TweenService:(saveBtn, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
.(, ()
TweenService:(saveBtn, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
configPanel.Visible =
()
)
)
remoteName ==
gc = configState.GrassCollect
y =
spacing =
normalBox = (y + spacing*, , gc.normal )
rubyBox = (y + spacing*, , gc.ruby )
silverBox = (y + spacing*, , gc.silver )
goldenBox = (y + spacing*, , gc.golden )
diamondBox = (y + spacing*, , gc.diamond )
saveBtn = .()
saveBtn.Size = .(, )
saveBtn.Position = .(, y + spacing* + )
saveBtn.BackgroundColor3 = .(, , )
saveBtn.Text =
saveBtn.TextColor3 = .(, , )
saveBtn.Font = .Font.GothamSemibold
saveBtn.TextSize =
saveBtn.AutoButtonColor =
saveBtn.Parent = configPanel
.(, saveBtn).CornerRadius = .(, )
saveBtn.Activated:(()
(s)
v = (s)
v < v =
.(v + )
gc.normal = (normalBox.Text)
gc.ruby = (rubyBox.Text)
gc.silver = (silverBox.Text)
gc.golden = (goldenBox.Text)
gc.diamond = (diamondBox.Text)
TweenService:(saveBtn, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
.(, ()
TweenService:(saveBtn, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
configPanel.Visible =
()
)
)
info = .()
info.Size = .(, -, , )
info.Position = .(, )
info.BackgroundTransparency =
info.Text =
info.TextColor3 = .(, , )
info.Font = .Font.Gotham
info.TextSize =
info.TextXAlignment = .TextXAlignment.Left
info.Parent = configPanel
configPanel.Visible =
()
createStatsList = ()
_, child (statsList:())
child:() child:()
statsOptions = {}
filteredRemotes = {}
searchText = .(searchBox.Text)
_, name (knownRemotes)
searchText == .(.(name), searchText)
.(filteredRemotes, name)
.(filteredRemotes)
i, name (filteredRemotes)
container = .()
container.Size = .(, , , )
container.BackgroundTransparency =
container.LayoutOrder = i
container.Parent = statsList
opt = .()
opt.Size = .(, , , )
opt.BackgroundColor3 = .(, , )
opt.Text =
opt.AutoButtonColor =
opt.Parent = container
.(, opt).CornerRadius = .(, )
check = .()
check.Size = .(, )
check.Position = .(, )
check.BackgroundTransparency =
check.Text =
check.TextColor3 = .(, , )
check.Font = .Font.GothamBold
check.TextSize =
check.Visible = selected[name]
check.Parent = opt
label = .()
label.Size = .(, -, , )
label.Position = .(, )
label.BackgroundTransparency =
label.Text = name
label.TextColor3 = selected[name] .(, , ) .(, , )
label.Font = .Font.Gotham
label.TextSize =
label.TextXAlignment = .TextXAlignment.Left
label.Parent = opt
opt.MouseEnter:(()
selected[name]
TweenService:(opt, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
)
opt.MouseLeave:(()
selected[name]
TweenService:(opt, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
)
statsOptions[name] = {opt = opt, check = check, label = label}
opt.Activated:(()
selected[name] = selected[name]
check.Visible = selected[name]
labelColor = selected[name] .(, , ) .(, , )
optColor = selected[name] .(, , ) .(, , )
TweenService:(opt, TweenInfo.(), {BackgroundColor3 = optColor}):()
TweenService:(label, TweenInfo.(), {TextColor3 = labelColor}):()
name == name ==
statsPanel.Visible statsPanel.Visible =
(name)
()
()
)
statsList.CanvasSize = .(, , , #filteredRemotes * )
updateSelectedList = ()
_, child (selectedList:())
child:() child:()
count =
sortedSelected = {}
name, sel (selected)
sel .(sortedSelected, name)
.(sortedSelected)
_, name (sortedSelected)
count +=
container = .()
container.Size = .(, , , )
container.BackgroundTransparency =
container.LayoutOrder = count
container.Parent = selectedList
label = .()
label.Size = .(, , , )
label.BackgroundTransparency =
label.Text = name
label.TextColor3 = .(, , )
label.Font = .Font.Gotham
label.TextSize =
label.TextXAlignment = .TextXAlignment.Left
label.Parent = container
.(, label).PaddingLeft = .(, )
removeBtn = .()
removeBtn.Size = .(, )
removeBtn.Position = .(, -, , -)
removeBtn.BackgroundTransparency =
removeBtn.Text =
removeBtn.TextColor3 = .(, , )
removeBtn.Font = .Font.GothamBold
removeBtn.TextSize =
removeBtn.AutoButtonColor =
removeBtn.Parent = container
removeBtn.Activated:(()
selected[name] =
statsOptions[name]
statsOptions[name].check.Visible =
TweenService:(statsOptions[name].opt, TweenInfo.(), {BackgroundColor3 = .(, , )}):()
TweenService:(statsOptions[name].label, TweenInfo.(), {TextColor3 = .(, , )}):()
()
()
)
selectedList.CanvasSize = .(, , , count * )
dragBar = .()
dragBar.Name =
dragBar.Size = .(, , , )
dragBar.BackgroundTransparency =
dragBar.Active =
dragBar.Parent = mainFrame
dragging =
dragStart
startPos
dragInput
(input)
delta = input.Position - dragStart
mainFrame.Position = .(
startPos.X.Scale, startPos.X.Offset + delta.X,
startPos.Y.Scale, startPos.Y.Offset + delta.Y
)
dragBar.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1 input.UserInputType == .UserInputType.Touch
dragging =
dragStart = input.Position
startPos = mainFrame.Position
)
dragBar.InputChanged:((input)
input.UserInputType == .UserInputType.MouseMovement input.UserInputType == .UserInputType.Touch
dragInput = input
)
UserInputService.InputChanged:((input)
dragging input == dragInput
(input)
)
UserInputService.InputEnded:((input)
input.UserInputType == .UserInputType.MouseButton1 input.UserInputType == .UserInputType.Touch
dragging =
dragInput =
)
()
n = (delayBox.Text)
n n < n =
n < n =
n
()
list = {}
name, sel (selected)
sel .(list, name)
list
updateUI = ()
selectedListLocal = ()
remotesStr = #selectedListLocal > .(selectedListLocal, )
status.Text = ():(running , remotesStr)
sent.Text = .. totalSent
btnColor = running .(, , ) .(, , )
TweenService:(startStop, TweenInfo.(), {BackgroundColor3 = btnColor}):()
(name)
name ==
{}
name ==
amount = configState.SeedCollect (configState.SeedCollect.amount)
amount amount < amount =
amount = .(amount + )
{ { amount = amount } }
name ==
g = configState.GrassCollect {}
(v) v = (v) ; v < v = ; .(v + )
{ {
normal = (g.normal ),
ruby = (g.ruby ),
silver = (g.silver ),
golden = (g.golden ),
diamond = (g.diamond ),
} }
name ==
{}
{}
()
cycleSent =
hasError =
errMsg =
name, _ (selected)
selected[name]
re = RemotesFolder:(name)
re re:()
args = (name)
ok, err = (()
re:((args))
)
ok
cycleSent +=
hasError =
errMsg = (err)
( .. name .. .. errMsg)
( .. name)
totalSent += cycleSent
hasError
status.Text = ():(errMsg)
()
running
selectedListLocal = ()
#selectedListLocal ==
status.Text =
running =
()
.(()
running
ok, err = (fireOnce)
ok
status.Text = ():((err))
running ()
.(())
)
()
running =
()
closeBtn.Activated:(()
()
sg:()
)
statsBtn.Activated:(()
statsPanel.Visible = statsPanel.Visible
statsPanel.Visible
configPanel.Visible =
()
statsBtn.Text = statsPanel.Visible
)
startStop.Activated:(()
running () ()
)
searchBox:():(()
()
)
delayBox.FocusLost:(updateUI)
UserInputService.InputBegan:((input, gpe)
gpe
input.KeyCode == .KeyCode.RightShift
sg.Enabled = sg.Enabled
input.KeyCode == .KeyCode.LeftControl running
()
)
()
defaultRemotes = {, , }
_, name (defaultRemotes)
selected[name] =
_, name (defaultRemotes)
statsOptions[name]
statsOptions[name].check.Visible =
statsOptions[name].label.TextColor3 = .(, , )
statsOptions[name].opt.BackgroundColor3 = .(, , )
()
()
Just figure it out btw: grass can only be set just one to 999 and the rest need to be 0, seeds can set to unlimited
[🌱] Grass Incremental Simulator