Advertisement
HunterFacts

mine

Jun 3rd, 2025
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.39 KB | None | 0 0
  1. -- Logging function
  2. function log(msg)
  3.     print("[LOG] " .. msg)
  4. end
  5.  
  6. -- Move forward safely
  7. function forward()
  8.     while not turtle.forward() do
  9.         turtle.dig()
  10.         sleep(0.3)
  11.     end
  12.     log("Moved forward")
  13. end
  14.  
  15. -- Move back safely
  16. function back()
  17.     if not turtle.back() then
  18.         turtle.turnLeft()
  19.         turtle.turnLeft()
  20.         forward()
  21.         turtle.turnLeft()
  22.         turtle.turnLeft()
  23.     else
  24.         log("Moved back")
  25.     end
  26. end
  27.  
  28. -- Move up safely
  29. function up()
  30.     while not turtle.up() do
  31.         turtle.digUp()
  32.         sleep(0.3)
  33.     end
  34.     log("Moved up")
  35. end
  36.  
  37. -- Move down safely
  38. function down()
  39.     while not turtle.down() do
  40.         turtle.digDown()
  41.         sleep(0.3)
  42.     end
  43.     log("Moved down")
  44. end
  45.  
  46. -- Dig vertical column 5 blocks high (current + 4 above)
  47. function digColumn()
  48.     for i = 1, 4 do
  49.         up()
  50.         turtle.digUp()
  51.     end
  52.     -- Return back down
  53.     for i = 1, 4 do
  54.         down()
  55.     end
  56. end
  57.  
  58. -- Dig 16-long tunnel, 5 blocks high
  59. function digTunnel()
  60.     for i = 1, 16 do
  61.         turtle.dig()
  62.         forward()
  63.         turtle.digUp()
  64.         turtle.digDown()
  65.         digColumn()
  66.     end
  67. end
  68.  
  69. -- Return 16 steps backward
  70. function returnBack()
  71.     turtle.turnLeft()
  72.     turtle.turnLeft()
  73.     for i = 1, 16 do
  74.         forward()
  75.     end
  76.     turtle.turnLeft()
  77.     turtle.turnLeft()
  78.     log("Returned to start of tunnel")
  79. end
  80.  
  81. -- Move left 1 block in Z axis
  82. function moveLeft()
  83.     turtle.turnLeft()
  84.     turtle.dig()
  85.     forward()
  86.     turtle.turnRight()
  87.     log("Shifted left (Z -1)")
  88. end
  89.  
  90. -- Do one full horizontal slice (16 parallel tunnels)
  91. function doLine()
  92.     for i = 1, 16 do
  93.         log("Starting tunnel " .. i .. "/16")
  94.         digTunnel()
  95.         returnBack()
  96.         if i < 16 then
  97.             moveLeft()
  98.         end
  99.     end
  100. end
  101.  
  102. -- Return to very first starting position
  103. function returnToStartOfLine()
  104.     turtle.turnRight()
  105.     for i = 1, 16 do
  106.         forward()
  107.     end
  108.     turtle.turnLeft()
  109.     for i = 1, 16 do
  110.         back()
  111.     end
  112.     log("Returned to origin")
  113. end
  114.  
  115. -- Main mining loop
  116. for round = 1, 999 do -- Can loop forever or limit rounds
  117.     log("=== Starting mining round " .. round .. " ===")
  118.     doLine()
  119.     returnToStartOfLine()
  120.  
  121.     -- Move to next row in +X
  122.     forward()
  123.     log("Shifted forward to next mining layer (X +1)")
  124. end
  125.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement