Autofarm
Key Required

Autofarm

DOORS: Rooms+TheScripterManTheScripterMan 614 views 256 executesUpdated Jan 2, 2026
Unrated
00
Lua Script•99 lines (2743 chars)
-- SERVICES
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")

-- PLAYER
local LocalPlayer = Players.LocalPlayer
local LatestRoom = game.ReplicatedStorage:WaitForChild("GameData"):WaitForChild("LatestRoom")

-- GUI
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "RoomTrackerGui"
ScreenGui.Parent = game.CoreGui

local TextLabel = Instance.new("TextLabel")
TextLabel.Parent = ScreenGui
TextLabel.Size = UDim2.new(0, 350, 0, 100)
TextLabel.Position = UDim2.new(0.5, -175, 0, 20)
TextLabel.TextSize = 48
TextLabel.BackgroundTransparency = 1
TextLabel.TextStrokeTransparency = 0
TextLabel.TextStrokeColor3 = Color3.new(1, 1, 1)
TextLabel.TextColor3 = Color3.new(1, 1, 1)
TextLabel.Font = Enum.Font.SourceSansBold
TextLabel.Text = "Room: ?"

-- SAVED VALUE
local SavedRoom = Instance.new("IntValue")
SavedRoom.Name = "SavedRoom"
SavedRoom.Value = LatestRoom.Value
SavedRoom.Parent = LocalPlayer

-- UPDATE LABEL FROM LATESTROOM
LatestRoom:GetPropertyChangedSignal("Value"):Connect(function()
	TextLabel.Text = "Room: " .. tostring(LatestRoom.Value)
end)

-- TELEPORT FUNCTION (to room model itself)
local function teleportToRoom(roomNumber)
	local roomsFolder = workspace:FindFirstChild("CurrentRooms")
	if not roomsFolder then return end

	local roomModel = roomsFolder:FindFirstChild(tostring(roomNumber))
	if not roomModel then return end

	local part = roomModel.PrimaryPart or roomModel:FindFirstChildWhichIsA("BasePart")
	if not part then return end

	local char = LocalPlayer.Character
	if not char then return end

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

	hrp.CFrame = part.CFrame + Vector3.new(0, 5, 0) -- small Y offset
end

-- AUTO-TELEPORT TOGGLE
local autoTeleport = false
UserInputService.InputBegan:Connect(function(input, gp)
	if gp then return end
	if input.KeyCode == Enum.KeyCode.X then
		autoTeleport = not autoTeleport
		print("Auto-Teleport is now:", autoTeleport and "ON" or "OFF")
	end
end)

-- AUTO-TELEPORT LOOP
task.spawn(function()
	local lastLabelRoom = LatestRoom.Value
	local stuckTime = 0

	while true do
		if autoTeleport then
			local currentLabel = LatestRoom.Value

			if currentLabel ~= lastLabelRoom then
				-- label changed → +1
				SavedRoom.Value = currentLabel + 1
				lastLabelRoom = currentLabel
				stuckTime = 0
				teleportToRoom(SavedRoom.Value)
			else
				stuckTime += 0.01
				if stuckTime >= 3 then
					-- label stuck too long → +1
					SavedRoom.Value += 1
					stuckTime = 0
					lastLabelRoom = SavedRoom.Value
					teleportToRoom(SavedRoom.Value)
				else
					-- normal teleport to saved room
					teleportToRoom(SavedRoom.Value)
				end
			end
		end

		task.wait(0.01)
	end
end)

Features & Information

Press 'X" to enable/disable autofarm (may bug and take you out of the map but autofarm still works)

Community Comments (0)

No comments yet for this script.

More Scripts for DOORS: Rooms+