<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://www.computercraft.info/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Noctolater</id>
		<title>ComputerCraft Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://www.computercraft.info/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Noctolater"/>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/Special:Contributions/Noctolater"/>
		<updated>2026-07-12T00:46:42Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.24.1</generator>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Advanced_Turtle_Lumberjack_(tutorial)&amp;diff=2859</id>
		<title>Advanced Turtle Lumberjack (tutorial)</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Advanced_Turtle_Lumberjack_(tutorial)&amp;diff=2859"/>
				<updated>2012-09-10T07:09:35Z</updated>
		
		<summary type="html">&lt;p&gt;Noctolater: simplified for loops&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Advanced Turtle Lumberjack ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
Welcome to this [[:Category:Tutorials|tutorial]] about Advanced Turtle Lumberjacks.&lt;br /&gt;
See the [[Turtle_Lumberjack_(tutorial)|Turtle Lumberjack Tutorial]] first.&lt;br /&gt;
&lt;br /&gt;
=== What are Advanced Turtle Lumberjacks? ===&lt;br /&gt;
Advanced Turtle Lumberjacks are basically [[Turtle_Lumberjack_(tutorial)|Turtle Lumberjacks]] that can dig blocks above them. We first make the turtle dig the block in front of it and then move forward so the rest of the tree is directly above it.&lt;br /&gt;
&lt;br /&gt;
== The Code ==&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
  turtle.dig()&lt;br /&gt;
  turtle.forward()&lt;br /&gt;
  while turtle.detectUp() do&lt;br /&gt;
    turtle.digUp()&lt;br /&gt;
    turtle.up()&lt;br /&gt;
  end&lt;br /&gt;
  while not turtle.detectDown() do&lt;br /&gt;
    turtle.down()&lt;br /&gt;
  end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
This makes us check if there are no blocks to be dug, then we go down until we can't.&lt;br /&gt;
That's it!&lt;br /&gt;
&lt;br /&gt;
-----------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
'''Another Advanced Turtle Lumberjack'''&lt;br /&gt;
&lt;br /&gt;
This is a lot more complex BUT this can create a row of trees and constantly monitor them to see if they have grown or not. Here is a link to a video showing what it does- [http://www.youtube.com/watch?v=7rmB09b6wYk ComputerCraft-Turtle-Tree Lumberjack]&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 -- advanced turtle lumberjack&lt;br /&gt;
 shell.run('clear')&lt;br /&gt;
 print(&amp;quot;Please put Dirt in Slot 1, Saplings in Slot 2, and a log in Slot 3.&amp;quot;)&lt;br /&gt;
 print(&amp;quot;Number of Trees To Plant?&amp;quot;)&lt;br /&gt;
 local x = io.read()&lt;br /&gt;
 local dirt, sapling, log = 1, 2, 3&lt;br /&gt;
 &lt;br /&gt;
 -- get into position&lt;br /&gt;
 turtle.up()&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 &lt;br /&gt;
 -- initial planting&lt;br /&gt;
 for i = 0, x do&lt;br /&gt;
   turtle.digDown()&lt;br /&gt;
   turtle.select(dirt)&lt;br /&gt;
   turtle.placeDown()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.select(sapling)&lt;br /&gt;
   turtle.place()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
 end&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.forward()&lt;br /&gt;
 turtle.turnRight()&lt;br /&gt;
 &lt;br /&gt;
 --chop trees&lt;br /&gt;
 while true do&lt;br /&gt;
   -- sleep for 30 seconds&lt;br /&gt;
   os.sleep(30)&lt;br /&gt;
   -- check all trees for any that have grown&lt;br /&gt;
   for i = 0, x do&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.turnRight()&lt;br /&gt;
     turtle.select(log)&lt;br /&gt;
     -- if the tree has grown&lt;br /&gt;
     if turtle.compare() then&lt;br /&gt;
       turtle.dig()&lt;br /&gt;
       turtle.forward()&lt;br /&gt;
       -- harvest the tree&lt;br /&gt;
       while turtle.detectUp() do&lt;br /&gt;
         turtle.up()&lt;br /&gt;
         turtle.digUp()&lt;br /&gt;
       end&lt;br /&gt;
       -- return to the ground&lt;br /&gt;
       while not turtle.detectDown() do&lt;br /&gt;
         turtle.down()&lt;br /&gt;
       end&lt;br /&gt;
       -- plant a new sapling&lt;br /&gt;
       turtle.back()&lt;br /&gt;
       turtle.select(sapling)&lt;br /&gt;
       turtle.place()&lt;br /&gt;
     end&lt;br /&gt;
     turtle.turnLeft()&lt;br /&gt;
   end&lt;br /&gt;
   -- round the corner&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.turnRight()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.turnRight()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
 end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
('''Helpful tip:''' Save this to your computercraft/lua/rom/programs folder, then it will be on all turtles.)&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Noctolater</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Advanced_Turtle_Lumberjack_(tutorial)&amp;diff=2858</id>
		<title>Advanced Turtle Lumberjack (tutorial)</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Advanced_Turtle_Lumberjack_(tutorial)&amp;diff=2858"/>
				<updated>2012-09-10T06:53:22Z</updated>
		
		<summary type="html">&lt;p&gt;Noctolater: added comment&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Advanced Turtle Lumberjack ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
Welcome to this [[:Category:Tutorials|tutorial]] about Advanced Turtle Lumberjacks.&lt;br /&gt;
See the [[Turtle_Lumberjack_(tutorial)|Turtle Lumberjack Tutorial]] first.&lt;br /&gt;
&lt;br /&gt;
=== What are Advanced Turtle Lumberjacks? ===&lt;br /&gt;
Advanced Turtle Lumberjacks are basically [[Turtle_Lumberjack_(tutorial)|Turtle Lumberjacks]] that can dig blocks above them. We first make the turtle dig the block in front of it and then move forward so the rest of the tree is directly above it.&lt;br /&gt;
&lt;br /&gt;
== The Code ==&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
  turtle.dig()&lt;br /&gt;
  turtle.forward()&lt;br /&gt;
  while turtle.detectUp() do&lt;br /&gt;
    turtle.digUp()&lt;br /&gt;
    turtle.up()&lt;br /&gt;
  end&lt;br /&gt;
  while not turtle.detectDown() do&lt;br /&gt;
    turtle.down()&lt;br /&gt;
  end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
This makes us check if there are no blocks to be dug, then we go down until we can't.&lt;br /&gt;
That's it!&lt;br /&gt;
&lt;br /&gt;
-----------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
'''Another Advanced Turtle Lumberjack'''&lt;br /&gt;
&lt;br /&gt;
This is a lot more complex BUT this can create a row of trees and constantly monitor them to see if they have grown or not. Here is a link to a video showing what it does- [http://www.youtube.com/watch?v=7rmB09b6wYk ComputerCraft-Turtle-Tree Lumberjack]&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 -- advanced turtle lumberjack&lt;br /&gt;
 shell.run('clear')&lt;br /&gt;
 print(&amp;quot;Please put Dirt in Slot 1, Saplings in Slot 2, and a log in Slot 3.&amp;quot;)&lt;br /&gt;
 print(&amp;quot;Number of Trees To Plant?&amp;quot;)&lt;br /&gt;
 local x = io.read()&lt;br /&gt;
 local dirt, sapling, log = 1, 2, 3&lt;br /&gt;
 &lt;br /&gt;
 -- get into position&lt;br /&gt;
 turtle.up()&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 &lt;br /&gt;
 -- initial planting&lt;br /&gt;
 for i = 0, x, 1 do&lt;br /&gt;
   turtle.digDown()&lt;br /&gt;
   turtle.select(dirt)&lt;br /&gt;
   turtle.placeDown()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.select(sapling)&lt;br /&gt;
   turtle.place()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
 end&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.forward()&lt;br /&gt;
 turtle.turnRight()&lt;br /&gt;
 &lt;br /&gt;
 --chop trees&lt;br /&gt;
 while true do&lt;br /&gt;
   -- sleep for 30 seconds&lt;br /&gt;
   os.sleep(30)&lt;br /&gt;
   -- check all trees for any that have grown&lt;br /&gt;
   for i = 0, x, 1 do&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.turnRight()&lt;br /&gt;
     turtle.select(log)&lt;br /&gt;
     -- if the tree has grown&lt;br /&gt;
     if turtle.compare() then&lt;br /&gt;
       turtle.dig()&lt;br /&gt;
       turtle.forward()&lt;br /&gt;
       -- harvest the tree&lt;br /&gt;
       while turtle.detectUp() do&lt;br /&gt;
         turtle.up()&lt;br /&gt;
         turtle.digUp()&lt;br /&gt;
       end&lt;br /&gt;
       -- return to the ground&lt;br /&gt;
       while not turtle.detectDown() do&lt;br /&gt;
         turtle.down()&lt;br /&gt;
       end&lt;br /&gt;
       -- plant a new sapling&lt;br /&gt;
       turtle.back()&lt;br /&gt;
       turtle.select(sapling)&lt;br /&gt;
       turtle.place()&lt;br /&gt;
     end&lt;br /&gt;
     turtle.turnLeft()&lt;br /&gt;
   end&lt;br /&gt;
   -- round the corner&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.turnRight()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.turnRight()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
 end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
('''Helpful tip:''' Save this to your computercraft/lua/rom/programs folder, then it will be on all turtles.)&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Noctolater</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Advanced_Turtle_Lumberjack_(tutorial)&amp;diff=2857</id>
		<title>Advanced Turtle Lumberjack (tutorial)</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Advanced_Turtle_Lumberjack_(tutorial)&amp;diff=2857"/>
				<updated>2012-09-10T06:52:30Z</updated>
		
		<summary type="html">&lt;p&gt;Noctolater: refactored code for simplicity&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Advanced Turtle Lumberjack ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
Welcome to this [[:Category:Tutorials|tutorial]] about Advanced Turtle Lumberjacks.&lt;br /&gt;
See the [[Turtle_Lumberjack_(tutorial)|Turtle Lumberjack Tutorial]] first.&lt;br /&gt;
&lt;br /&gt;
=== What are Advanced Turtle Lumberjacks? ===&lt;br /&gt;
Advanced Turtle Lumberjacks are basically [[Turtle_Lumberjack_(tutorial)|Turtle Lumberjacks]] that can dig blocks above them. We first make the turtle dig the block in front of it and then move forward so the rest of the tree is directly above it.&lt;br /&gt;
&lt;br /&gt;
== The Code ==&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
  turtle.dig()&lt;br /&gt;
  turtle.forward()&lt;br /&gt;
  while turtle.detectUp() do&lt;br /&gt;
    turtle.digUp()&lt;br /&gt;
    turtle.up()&lt;br /&gt;
  end&lt;br /&gt;
  while not turtle.detectDown() do&lt;br /&gt;
    turtle.down()&lt;br /&gt;
  end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
This makes us check if there are no blocks to be dug, then we go down until we can't.&lt;br /&gt;
That's it!&lt;br /&gt;
&lt;br /&gt;
-----------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
'''Another Advanced Turtle Lumberjack'''&lt;br /&gt;
&lt;br /&gt;
This is a lot more complex BUT this can create a row of trees and constantly monitor them to see if they have grown or not. Here is a link to a video showing what it does- [http://www.youtube.com/watch?v=7rmB09b6wYk ComputerCraft-Turtle-Tree Lumberjack]&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 -- advanced turtle lumberjack&lt;br /&gt;
 shell.run('clear')&lt;br /&gt;
 print(&amp;quot;Please put Dirt in Slot 1, Saplings in Slot 2, and a log in Slot 3.&amp;quot;)&lt;br /&gt;
 print(&amp;quot;Number of Trees To Plant?&amp;quot;)&lt;br /&gt;
 local x = io.read()&lt;br /&gt;
 local dirt, sapling, log = 1, 2, 3&lt;br /&gt;
 &lt;br /&gt;
 -- get into position&lt;br /&gt;
 turtle.up()&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 turtle.back()&lt;br /&gt;
 &lt;br /&gt;
 -- initial planting&lt;br /&gt;
 for i = 0, x, 1 do&lt;br /&gt;
   turtle.digDown()&lt;br /&gt;
   turtle.select(dirt)&lt;br /&gt;
   turtle.placeDown()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.select(sapling)&lt;br /&gt;
   turtle.place()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
   turtle.back()&lt;br /&gt;
 end&lt;br /&gt;
 turtle.turnLeft()&lt;br /&gt;
 turtle.forward()&lt;br /&gt;
 turtle.turnRight()&lt;br /&gt;
 &lt;br /&gt;
 --chop trees&lt;br /&gt;
 while true do&lt;br /&gt;
   -- sleep for 30 seconds&lt;br /&gt;
   os.sleep(30)&lt;br /&gt;
   for i = 0, x, 1 do&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.forward()&lt;br /&gt;
     turtle.turnRight()&lt;br /&gt;
     turtle.select(log)&lt;br /&gt;
     -- if the tree has grown&lt;br /&gt;
     if turtle.compare() then&lt;br /&gt;
       turtle.dig()&lt;br /&gt;
       turtle.forward()&lt;br /&gt;
       -- harvest the tree&lt;br /&gt;
       while turtle.detectUp() do&lt;br /&gt;
         turtle.up()&lt;br /&gt;
         turtle.digUp()&lt;br /&gt;
       end&lt;br /&gt;
       -- return to the ground&lt;br /&gt;
       while not turtle.detectDown() do&lt;br /&gt;
         turtle.down()&lt;br /&gt;
       end&lt;br /&gt;
       -- plant a new sapling&lt;br /&gt;
       turtle.back()&lt;br /&gt;
       turtle.select(sapling)&lt;br /&gt;
       turtle.place()&lt;br /&gt;
     end&lt;br /&gt;
     turtle.turnLeft()&lt;br /&gt;
   end&lt;br /&gt;
   -- round the corner&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.turnRight()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
   turtle.turnRight()&lt;br /&gt;
   turtle.forward()&lt;br /&gt;
 end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
('''Helpful tip:''' Save this to your computercraft/lua/rom/programs folder, then it will be on all turtles.)&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Noctolater</name></author>	</entry>

	</feed>