ADVERTISEMENTREMOVE ADS
Game icon

tier 5 auto farm

Cut Grass
3 months ago
Script preview thumbnail
Script Preview

Description

READ THIS TO MAKE IT WORK
this script will automatically farm the chest inside of the yellow area in middle of map
NOTE the minimum chest requirement is level 11 being a small chest and up to level 22 gigantic mythic chest
btw first ever script im uploading so yay
ENABLE / DISABLE BUTTON " [ "

Tested with

ADVERTISEMENTREMOVE ADS
99 Lines • 2.9 KiB
Raw
--[[
Script: Auto Chest Collector with Auto E Interaction
- Press [ to start/stop
- Automatically interacts with chests using ProximityPrompt
- Each chest is visited only once
]]
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer
local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart")
local TOGGLE_KEY = Enum.KeyCode.LeftBracket -- [
local INTERACT_RANGE = 10
local zoneFolder = workspace:WaitForChild("LootZones"):WaitForChild("Zone5")
local enabled = false
local unvisitedChests = {}
local currentChest = nil
local lastInteractionTime = 0
-- Collect all chest parts/models from Zone5
local function getAllChests()
unvisitedChests = {}
for _, obj in ipairs(zoneFolder:GetDescendants()) do
if obj:IsA("BasePart") then
table.insert(unvisitedChests, obj)
elseif obj:IsA("Model") and obj.PrimaryPart then
table.insert(unvisitedChests, obj.PrimaryPart)
end
end
end
-- Teleport to a random unvisited chest
local function teleportToNextChest()
if #unvisitedChests == 0 then
print("✅ All chests collected.")
enabled = false
currentChest = nil
return
end
local index = math.random(1, #unvisitedChests)
currentChest = table.remove(unvisitedChests, index)
if currentChest and HumanoidRootPart then
HumanoidRootPart.CFrame = currentChest.CFrame + Vector3.new(0, 5, 0)
end
end
-- Auto-use any ProximityPrompt near the chest
local function tryAutoInteract()
if not enabled or not currentChest or not HumanoidRootPart then return end
for _, prompt in ipairs(currentChest:GetDescendants()) do
if prompt:IsA("ProximityPrompt") and prompt.Enabled then
local parentPart = prompt.Parent
if parentPart and parentPart:IsA("BasePart") then
local distance = (HumanoidRootPart.Position - parentPart.Position).Magnitude
if distance <= math.min(prompt.MaxActivationDistance, INTERACT_RANGE) then
-- Prevent spamming
if tick() - lastInteractionTime > 0.5 then
fireproximityprompt(prompt)
lastInteractionTime = tick()
print("✅ Interacted with chest:", currentChest:GetFullName())
wait(0.25) -- Small delay to ensure prompt finishes
teleportToNextChest()
end
end
end
end
end
end
-- Toggle script on/off with [
UserInputService.InputBegan:Connect(function(input, processed)
if processed then return end
if input.KeyCode == TOGGLE_KEY then
enabled = not enabled
if enabled then
getAllChests()
print("Chest Collector: ENABLED")
teleportToNextChest()
else
print("Chest Collector: DISABLED")
end
end
end)
-- Run check every frame
RunService.RenderStepped:Connect(function()
if enabled then
tryAutoInteract()
end
end)
ADVERTISEMENTREMOVE ADS

Comments

0 comments
to add a comment
Loading comments
ADVERTISEMENTREMOVE ADS