Advertisement
raniel

Build xp farm 1.0

Mar 26th, 2023 (edited)
634
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 6.85 KB | Gaming | 0 0
  1. --[[
  2.     Create a xp tower farm as showed in:
  3.     https://www.youtube.com/watch?v=l5s8kkqB7-I
  4.  
  5.     This program is divided in steps:
  6.         - step 1 run with: pastebin run ByjE9vPD 1
  7.         - step 2 run with: pastebin run ByjE9vPD 2
  8.         - step 3 run with: pastebin run ByjE9vPD 3
  9.    
  10.     Inventory configuration for step 1:
  11.         1: any slab x 4
  12.         2-16: any solid block x 64
  13.    
  14.     Inventory configuration for step 2:
  15.         1: trapdoor x 64
  16.         2: carpet x 36
  17.         3: any solid block x 64
  18.         4: any solid block x 12
  19.         5: torches x 14
  20.         9-16: water bucket
  21.    
  22.     Inventory configuration for step 3:
  23.         1: any solid block x 64
  24.         2: any solid block x 26
  25.         3: ladder x 64
  26.         4: ladder x 16
  27.         5: torch x 1
  28.    
  29.     Total fuel required: about 2000
  30.  
  31.     Total materials required:
  32.         - 1126 any solid blocks
  33.         - 80   ladders
  34.         - 64   trapdoors
  35.         - 36   carpets
  36.         - 15   torches
  37.         - 8    water buckets
  38.         - 4    slabs
  39. ]]--
  40.  
  41. local args = {...}
  42. local step = args[1]
  43. local isDev = args[2] == '1'
  44. local nCommand = 1
  45. local totalSteps = 3
  46. local builder="pastebin run 7GrcxsBW"
  47.  
  48. local function doBuild(command)
  49.     if isDev then
  50.         local snCommand = nCommand
  51.         if nCommand < 10 then
  52.             snCommand = "0"..nCommand
  53.         end
  54.  
  55.         print(snCommand..") builder "..command)
  56.         nCommand = nCommand + 1
  57.     else
  58.         shell.run(builder.." "..command)
  59.     end
  60. end
  61.  
  62. local function returnToBottom()
  63.     if not isDev then
  64.         while turtle.down() do
  65.         end
  66.     end
  67. end
  68.  
  69. local function step1()
  70.     print("Mob farm step 1/"..totalSteps..": start")
  71.  
  72.     -- build tower base
  73.     doBuild("u1i1li1li1lu0i0li0li0jili")
  74.  
  75.     -- create 22 rings height
  76.     for i = 1,22 do
  77.         doBuild("ulixixilixixilixixilixixi")
  78.     end
  79.  
  80.     -- create 4 "bridges"
  81.     doBuild("lij")
  82.     for i = 1,4 do
  83.         doBuild("ixixixixixixixlilxixixixixixixiiji")
  84.     end
  85.  
  86.     -- create bridges walls
  87.     doBuild("jilux")
  88.     -- h1
  89.     doBuild("ixixixixixixixilixixilixixixixixixixixj")
  90.     doBuild("ixixixixixixixilixixilixixixixixixixixj")
  91.     doBuild("ixixixixixixixilixixilixixixixixixixixj")
  92.     doBuild("ixixixixixixixilixixilixixixixixixixijux")
  93.     -- h2
  94.     doBuild("ixixixixixixixilixixilixixixixixixixixj")
  95.     doBuild("ixixixixixixixilixixilixixixixixixixixj")
  96.     doBuild("ixixixixixixixilixixilixixixixixixixixj")
  97.     doBuild("ixixixixixixixilixixilixixixixixixixijij")
  98.  
  99.     -- build main floor
  100.     doBuild("ixixixixixixixlilxixixixixixixijij")
  101.     doBuild("ixixixixixixixlilxixixixixixixijij")
  102.     doBuild("ixixixixixixixlilxixixixixixixijij")
  103.     doBuild("ixixixixixixixjjiiiiiiiiii")
  104.  
  105.     doBuild("ixixixixixixixlilxixixixixixixijij")
  106.     doBuild("ixixixixixixixlilxixixixixixixijij")
  107.     doBuild("ixixixixixixixlilxixixixixixixijij")
  108.     doBuild("ixixixixixixixliiii")
  109.  
  110.     doBuild("ixixixixixixixlilxixixixixixixijij")
  111.     doBuild("ixixixixixixixlilxixixixixixixijij")
  112.     doBuild("ixixixixixixixlilxixixixixixixijij")
  113.     doBuild("ixixixixixixixliiii")
  114.  
  115.     doBuild("ixixixixixixixlilxixixixixixixijij")
  116.     doBuild("ixixixixixixixlilxixixixixixixijij")
  117.     doBuild("ixixixixixixixlilxixixixixixixijij")
  118.     doBuild("ixixixixixixixli")
  119.  
  120.     -- build main walls
  121.     doBuild("jijiiiiiiiijju")
  122.  
  123.     doBuild("ixixixixixixixixixixixixixixixixixixil")
  124.     doBuild("ixixixixixixixixixixixixixixixixixixil")
  125.     doBuild("ixixixixixixixixixixixixixixixixixixil")
  126.     doBuild("ixixixixixixixixixixixixixixixixixixilu")
  127.  
  128.     doBuild("ixixixixixixixixixixixixixixixixixixil")
  129.     doBuild("ixixixixixixixixixixixixixixixixixixil")
  130.     doBuild("ixixixixixixixixixixixixixixixixixixil")
  131.     doBuild("ixixixixixixixixixixixixixixixixixixlu")
  132.  
  133.     -- build roof
  134.     doBuild("ixixixixixixixixixixixixixixixixixixl")
  135.     doBuild("ixixixixixixixixixixixixixixixixixl")
  136.     doBuild("ixixixixixixixixixixixixixixixixixl")
  137.     doBuild("ixixixixixixixixixixixixixixixixl")
  138.     doBuild("ixixixixixixixixixixixixixixixixl")
  139.     doBuild("ixixixixixixixixixixixixixixixl")
  140.     doBuild("ixixixixixixixixixixixixixixixl")
  141.     doBuild("ixixixixixixixixixixixixixixl")
  142.     doBuild("ixixixixixixixixixixixixixixl")
  143.     doBuild("ixixixixixixixixixixixixixl")
  144.     doBuild("ixixixixixixixixixixixixixl")
  145.     doBuild("ixixixixixixixixixixixixl")
  146.     doBuild("ixixixixixixixixixixixixl")
  147.     doBuild("ixixixixixixixixixixixl")
  148.     doBuild("ixixixixixixixixixixixl")
  149.     doBuild("ixixixixixixixixixixl")
  150.     doBuild("ixixixixixixixixixixl")
  151.     doBuild("ixixixixixixixixixl")
  152.     doBuild("ixixixixix")
  153.  
  154.     print("Mob farm step 1/"..totalSteps..": ended")
  155. end
  156.  
  157. local function step2()
  158.     print("Mob farm step 2/"..totalSteps..": start")
  159.  
  160.     -- place trapdoors and water
  161.     doBuild("innnliiiiliil")
  162.     doBuild("ij0lij0lij0lij0lij0lij0lij0linj8u0llin9u0lij0lij0lij0lij0lij0lij0lij0lij")
  163.     doBuild("ij0lij0lij0lij0lij0lij0lij0linjau0llinbu0lij0lij0lij0lij0lij0lij0lij0lij")
  164.     doBuild("ij0lij0lij0lij0lij0lij0lij0linjcu0llindu0lij0lij0lij0lij0lij0lij0lij0lij")
  165.     doBuild("ij0lij0lij0lij0lij0lij0lij0linjeu0llinfu0lij0lij0lij0lij0lij0lij0lij0u")
  166.  
  167.     -- place carpets
  168.     for i = 1,4 do
  169.         doBuild("i1iii1iii1kjii1iii1jiii1jiii1liili1iii1jjiiiiiiii")
  170.     end
  171.  
  172.     -- complete roof
  173.     doBuild("uuiiiiliii2i2i2i2l")
  174.     doBuild("i2i2i2i2i2i2i2i2l")
  175.     doBuild("i2i2i2i2i2i2i2i2l")
  176.     doBuild("i2i2i2i2i2i2i2l")
  177.     doBuild("i2i2i2i2i2i2i2l")
  178.     doBuild("i2i2i2i2i2i2l")
  179.     doBuild("i2i2i2i2i2i2l")
  180.     doBuild("i2i2i2i2i2l")
  181.     doBuild("i2i2i2i2i2l")
  182.     doBuild("i2i2i2i2l")
  183.     doBuild("i2i2i2i2l")
  184.     doBuild("i3i3i3l")
  185.     doBuild("i3i3i3l")
  186.     doBuild("i3i3l")
  187.     doBuild("i3i3l")
  188.     doBuild("i3li3")
  189.  
  190.     -- place torches on roof
  191.     doBuild("u4lili4jiilii4liiiii4liiiii4liiiii4iiiil")
  192.     doBuild("ii4iiiiiii4l")
  193.     doBuild("iiiiiii4iiiiii4l")
  194.     doBuild("iiiiii4iiiiiii4l")
  195.     doBuild("iiiiiii4iiiiii4")
  196.  
  197.     doBuild("liiiiiiliiiiii")
  198.  
  199.     print("Mob farm step 2/"..totalSteps..": ended")
  200. end
  201.  
  202. local function step3()
  203.     print("Mob farm step 3/"..totalSteps..": start")
  204.  
  205.     -- build the central column
  206.     for i = 1,8 do
  207.         doBuild("xk2iuxk2iuxk2iuxk2iuxk2iuxk2iuxk2iuxk2iu")
  208.     end
  209.     for i = 1,2 do
  210.         doBuild("xk3iuxk3iuxk3iuxk3iuxk3iuxk3iuxk3iuxk3iu")
  211.     end
  212.  
  213.     -- build upper platform
  214.     doBuild("nixjixjixixixjixixjixixix")
  215.  
  216.     -- place the torch
  217.     doBuild("ujiji4lii")
  218.  
  219.     -- return to roof of tower
  220.     returnToBottom()
  221.  
  222.     doBuild("iiiiiiiii")
  223.  
  224.     -- return to planet surface
  225.     returnToBottom()
  226.  
  227.     print("Mob farm step 3/"..totalSteps..": ended")
  228. end
  229.  
  230. if step == '1' then
  231.     step1()
  232. elseif step == '2' then
  233.     step2()
  234. elseif step == '3' then
  235.     step3()
  236. else
  237.     print("Invalid step number "..step..", max values is: "..totalSteps)
  238. end
  239.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement