What's new
Heapleak - Scripthub

Get the most out of HeapLeak by creating a free account! Once signed in, you’ll gain full access to restricted content, be able to share your own scripts, and participate in our member-only discussions.

open source construction autofarm

Version / Update: v1.0.0
Download / Script Link
local Players = game:GetService("Players")
local lp = Players.LocalPlayer

local uis = game:GetService("UserInputService")

local farming = false
local thread = nil

-- change keybind here oki 🥹
local KEYBIND = Enum.KeyCode.B

local function getWallSpot()
for _, v in pairs(Workspace.ConstructionStuff:GetChildren()) do
if v:IsA("Part") and v.Name:find("Wall") then
local prompt = v:FindFirstChild("Prompt")
if prompt and prompt.Enabled then
return v
end
end
end
end

local function tp(cf)
local char = lp.Character
if not char then return end

local hum = char:FindFirstChild("Humanoid")
local hrp = char:FindFirstChild("HumanoidRootPart")
if not hum or not hrp then return end

hum:ChangeState(0)

while lp:GetAttribute("LastACPos") do
task.wait()
end

hrp.CFrame = cf
task.wait()
hum:ChangeState(2)
end

local function farm()
while farming do
local char = lp.Character
if not char then task.wait() continue end

local hum = char:FindFirstChild("Humanoid")
local hrp = char:FindFirstChild("HumanoidRootPart")

if not hum or not hrp or hum.Health <= 0 then
task.wait()
continue
end

-- startts the j*b 😱
if not lp:GetAttribute("WorkingJob") then
tp(CFrame.new(-1729, 371, -1171))
task.wait(0.35)

fireproximityprompt(Workspace.ConstructionStuff["Start Job"].Prompt)

repeat task.wait() until lp:GetAttribute("WorkingJob")
end

-- grabs wood
local hasWood = lp.Backpack:FindFirstChild("PlyWood") or char:FindFirstChild("PlyWood")

if not hasWood then
tp(CFrame.new(-1728, 371, -1178))

repeat
task.wait()
fireproximityprompt(Workspace.ConstructionStuff["Grab Wood"].Prompt)
hasWood = lp.Backpack:FindFirstChild("PlyWood") or char:FindFirstChild("PlyWood")
until hasWood
end

repeat task.wait() until hasWood

-- equips wood
local tool = lp.Backpack:FindFirstChild("PlyWood")
if tool then
hum:EquipTool(tool)
end

local spot = getWallSpot()
if not spot then task.wait() continue end

-- places wood
tp(spot.CFrame)

repeat
task.wait()
fireproximityprompt(spot.Prompt)
until not char:FindFirstChild("PlyWood") or not spot.Prompt.Enabled

task.wait(0.12)
end
end

-- toggle on or off ya
uis.InputBegan:Connect(function(input, gpe)
if gpe then return end
if input.KeyCode ~= KEYBIND then return end

farming = not farming

if farming then
thread = task.spawn(farm)
else
if thread then
task.cancel(thread)
thread = nil
end
end
end)

-- sliced was here ❤️‍🩹
[ View More ]
4cfc03a8-f9cd-48f4-af98-04a381595823.webp


KEYBIND IS "B" YOU CAN CHANGE IT IN THE SCRIPTautofarm ez money yaymake sure noone else is autofarming since its gonna be filled and its not gonna work unless u wait!!! 😱😱
 
Back
Top