Open Computers Crop Breeding: Difference between revisions

From GT New Horizons
Content added Content deleted
m (Changed tearstalks --> Salty root)
m (Add 5th Troubleshoot (PKIX))
 
(24 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category:OpenComputers]][[Category:Guides]][[Category:Useful Crops]]
== Introduction ==
== Introduction ==
[https://github.com/DylanTaylor1/ic2-crop-automation These Open Computers (OC) scripts] will automatically tier-up, stat-up, and spread (duplicate) crops for you. Open Computers is a very powerful yet complicated mod using custom scripts written in lua, but fear not. I have made everything here as straight forward as possible to help you get your crop bot running in no time.
[https://github.com/DylanTaylor1/ic2-crop-automation These Open Computers (OC) scripts] will automatically tier-up, stat-up, and spread (duplicate) IC2 crops for you. OC is a very powerful yet complicated mod using custom scripts, but fear not. I have made everything here as straight forward as possible to help you get your crop bot running in no time without any prior knowledge of OC.


==Bare Minimum Components==
==Bare Minimum Components==
Obtaining these components will require access to EV circuits and epoxid (late HV). This is because you need an internet card to pull the scripts from GitHub (it is possible to create all the files manually and then copy and paste the code from GitHub, but that is not recommended). The CPU and Graphics Card can be replaced by a single APU if you feel so inclined. Both inventory upgrades are necessary.
Obtaining these components will require access to EV circuits and epoxid (mid-late HV). It is possible to save some resources by not including the internet card, but that will require manually copying and pasting the code from GitHub which is NOT recommended for multiple reasons. Both inventory upgrades are necessary.
[[File:Robot Components.png|thumb|400x400px|Bare minimum components inside the OC Electronics Assembler.]]

*'''OC Electronics Assembler '''* '''OC Charger'''
*'''OC Electronics Assembler '''
* '''Tier 3 Computer Case'''
*'''OC Charger'''
*'''Central Processing Unit (Tier 2)'''
*'''Tier 2 Computer Case'''
*'''Graphics Card (Tier 1)'''
*'''Tier 2 Accelerated Processing Unit'''
*'''Redstone Card (Tier 1)'''
*'''Tier 2 Memory'''
*'''Tier 1 Hard Disk Drive'''
*'''Tier 1 Screen'''
*'''Tier 1 Redstone Card'''
*'''Internet Card'''
*'''Internet Card'''
*'''Memory (Tier 2)'''
*'''Geolyzer'''
*'''EEPROM (Lua BIOS)'''
*'''Keyboard'''
*'''Hard Disk Drive (Tier 1)(1MB)'''
*'''Disk Drive (Block)'''
*'''Inventory Controller Upgrade'''
*'''Inventory Controller Upgrade'''
*'''Inventory Upgrade'''
*'''Inventory Upgrade'''
*'''Screen (Tier 1)'''
*'''EEPROM (Lua BIOS)'''
*'''Keyboard'''
*'''OpenOS Floppy Disk'''
*'''Geolyzer'''
*'''Disk Drive'''
*'''OpenOS (Operating System)'''


Lastly, you need a Transvector Binder and Transvector Dislocator which requires some progression in Thaumcraft. However, it is not too deep and completely doable if you are already able to make EV circuits and epoxid. Transvector Dislocator can be found under "Thaumic Tinkerer" and requires the following prerequisites on the same tab: Transvector Interface and Smokey Quartz. You will also need to complete research on Mirror Magic under "Artifice." For more information, visit https://gtnh.miraheze.org/wiki/Thaumcraft_Research_Cheatsheet.
Lastly, you need a Transvector Binder and Transvector Dislocator which requires some progression in Thaumcraft. Neither are very difficult to craft even if you have yet to start Thaumcraft. In the Thaumonomicon, Transvector Dislocator can be found under "Thaumic Tinkering" which requires both Transvector Interface and Smokey Quartz on the same tab. You will also need to complete research on Mirror Magic under "Artifice." For more information, visit the [[Thaumcraft Research Cheatsheet]] wiki page.


==Building the Robot==
==Building the Robot==
[[File:Robot Inventory3.png|thumb|222x222px|Inventory of the robot.]]
1. Insert the computer case into the OC Electronics Assembler which can be powered directly by any GT cable <br>2. Shift-click all of the parts into the computer case except the OpenOS floppy disk <br>3. Click assemble and wait until it completes <br>4. Rename the robot in an anvil <br>5. Place the robot down on the OC Charger which can also be powered directly by any GT cable <br>6. Insert the OpenOS floppy disk in the disk slot of the robot and press the power button <br>7. Follow the commands on the screen "install" --> "Y" --> "Y" (Note: The OpenOS floppy disk is no longer needed in the robot afterwards) <br>8. Copy the following line of code into the robot (middle-click to paste) and hit enter:
1. Insert the computer case into the OC Electronics Assembler which can be powered directly by any GT cable.
''wget https://raw.githubusercontent.com/DylanTaylor1/ic2-crop-automation/main/install.lua''
[[File:Robot_Inventory.png|thumb|Inventory of the robot.]]9. Install the rest of the scripts by entering:
''./install''
10. Edit the config (not recommended, but check it out) by entering:
''edit config.lua''
11. Place the Spade and Transvector Binder into the last and second to last slot of the robot, respectively. Crop sticks will go in the third, but it is not required to put them in yourself. An axe or mattock can also be placed into the tool slot of the robot (optional) to speed up destroying crops. See image to the right.


2. Shift-click all of the components into the computer case except the OpenOS floppy disk.
==Building the Farms==
First off, it is recommended to set everything up in a Jungle or Swamp biome at Y=130 as that will give you the highest humidity and air quality stats. This is most easily done in a personal dimension which you earn as a quest reward from reaching the moon. Do not place any solid blocks above the farm as that will reduce the air quality. All of the machines on the surface are waterproof so do not worry about the rain. Use vanilla dirt because that will allow you to grow crops that require a particular block underneath, and boost the nutrient stat of your crops. The whole farm will fit into a single chunk for easy chunk loading. See image below. <br>


3. Click assemble and wait until it completes (~3 min).
[[File:Farm_Top.png|Top-View of the farm|center|thumb|779x779px]]


4. [[Rename]] the robot.


5. Place the robot on the OC Charger which can also be powered directly by any GT cable. The OC Charger must be activated using some form of redstone such as a lever.
First note the orientation of the robot sitting atop the OC charger. It must face up towards the right-most column of the working farm. If the crop stick chest is ever empty, the robot will run into errors and the script will crash. In the image, I have a trash can on the other side of the crop stick chest because I do not want any drops beyond the target crop, but this can be a second chest if you do want random drops. The blank farmland is for the transvector dislocator which should be facing it. You can tell which direction the transvector dislocator is facing by the side that is animated. The last spot is for a crop-matron which is optional and one y-level lower than the rest of the blocks. It is just to hydrate most of the crops to help them grow a little faster. <br>


6. Insert the OpenOS floppy disk into the disk slot of the robot and press the power button.
'''The location of the water MUST be exactly as seen in the photo''' (underneath all five sea lantern slabs). At a minimum, there MUST be a block above the water in the working farm. The block can be literally anything, even a lilypad will work, so long as there is something. However, I recommend using some sort of light source to help crops grow at night. Nothing needs to be above the water blocks on the storage farm, but it is more aesthetic if they all match. <br>


7. Follow the commands on screen 'install' --> 'Y' --> 'Y' (Note: The OpenOS floppy disk is no longer needed in the robot afterwards).
'''The starting crops MUST be placed manually in the checkerboard pattern''' seen in the photo. This layout goes for all three programs. If you cannot fill the entire checkerboard to start, the ''absolute'' ''minimum required is two'' (one as the target crop and the other next to it for crossbreeding). It is not necessary to place empty crop sticks to fill the rest of the checkerboard. The target crop is used by autoStat and autoSpread to identify the crop you want to stat-up or spread to the storage farm, respectively. <br>


8. Install the required scripts by copying this line of code into the robot (middle-click to paste).
[[File:Farm_Bottom.png|Bottom-View of the farm.|center|thumb|801x801px]]


''wget https://raw.githubusercontent.com/DylanTaylor1/GTNH-CropAutomation/main/setup.lua && setup''


9. Edit the config (not recommended, but check it out) by entering: <code>edit config.lua</code>
Underneath the farm, you can see that there are three additional dirt blocks below each farmland, each of which add to the nutrient stat of the crop above it. For crops requiring a block underneath, that should be placed at the bottom. In this case, I have diareed planted on top which means I have one farmland --> two dirt --> one diamond block underneath each one. I do not have diamond blocks underneath the working farm because the diareed does not need to be fully grown in order to spread.


10. Place the Spade and Transvector Binder into the last and second to last slot of the robot, respectively. Crop sticks will go in the third, but it is not required to put them in yourself. An axe or mattock can also be placed into the tool slot of the robot to speed up destroying crops (optional). See image above.


==Building the Farms==
For power, I am using an HV gas turbine and a super tank with some benzene (no transformer needed). This is a little overkill, but the important part is that the charger is always at 100% charging speed which you can see by hovering over it. A set-up such as this will last forever with a few hundred thousand benzene since both machines require very little EU/t. Lastly, a reservoir feeds water into the crop-matron automatically after right-clicking it with a wrench.
'''Find a location with good environmental stats'''. It is recommended to set everything up in a Jungle or Swamp biome at Y=130 as that will give you the highest humidity and air quality stats. If not, crops run the risk of randomly dying and leaving the farms susceptible to weeds. This is most easily done in a personal dimension which you earn as a quest reward from reaching the moon. Do not place any solid blocks above the farm as that will reduce the air quality. All of the machines on the surface are waterproof so do not worry about the rain. Use vanilla dirt because that will allow you to grow crops that require a particular block underneath, and boost the nutrient stat of your crops. The whole farm can easily fit into a single chunk for easy chunk loading.


'''You may change both the size of the working farm and the size of the storage farm''' in the config (default is 6x6 and 9x9, respectively). Larger working farm sizes will extend left and up while larger storage farm sizes will extend down and to the right (see image below). The top row of the working farm will always align with the top row of the storage farm. There is no maximum or minimum size for either farm and it does not matter if the lengths are even or odd. Note that larger storage farm sizes will leave your working farm more susceptible to weeds because the robot will have to travel further when transporting crops which means less time spent scanning the working farm. Also note that the maximum range for the transvector dislocator is 16 blocks. ''Changing anything in the config requires you to restart your robot.''
==Running the Programs==

The first program is autoTier. This will automatically tier-up your crops, terminating once the max breeding round is reached (configurable) or the storage farm is full. A storage chest is recommended for this program. Note that unrecognized crops will be moved to the storage farm first before replacing any of the lower tier crops in the working farm. Statting-up crops during this program is a configurable option. To run, simply enter:
[[File:Farm Top 2.png|center|thumb|779x779px|Top-View of the farm. There MUST be a block on top of the water sources.]]
[[File:Farm Side.png|center|thumb|783x783px|Side-View of the farm. There MUST be a block on top of the water sources.]]

First note the orientation of the robot sitting atop the OC charger. It must face towards the right-most column of the working farm. Adjacent to the OC charger is the crop stick chest which can be a few things: any sort of large chest, a JABBA barrel, or storage drawer (orientation does not matter). If the crop stick chest is ever empty, bad things will happen. Next to that is a [[Trash Can]] for any random drops that the robot picks up such as weeds, seed bags, and crop sticks but this can be swapped with another chest to recycle some of the materials. The transvector dislocator sits facing the top of the blank farmland (where a crop would go). Think of this as a buffer between the working and storage farms. You can tell which direction the transvector dislocator is facing by the side that is animated. The last spot is for a crop-matron which is optional and one y-level lower than the rest of the blocks. It is just to hydrate most of the crops to help them grow a little faster.

'''The location of the water is completely flexible''': they do not have to be in the same locations as in the photo (underneath all five sea lantern slabs) and you can have as many as you would like on both the working farm and storage farm. However, ''there MUST be a block on top of each water'' and no two can be next to each other. The block can be literally anything, even a lily pad will work, so long as there is something. It is also possible to use garden soil or fertilized dirt and have absolutely no water on the farms at all, but this will sacrifice a few nutrient stats and bar you from growing crops that require a particular block underneath.

'''The starting crops must be placed manually in the checkerboard pattern''' seen in the photo. This layout goes for all three programs. If you cannot fill the entire checkerboard to start, the absolute minimum required is two (one as the target crop and the other next to it for crossbreeding). Even worse, if you have just a single seed of your target crop, it is possible to start with a different crop next to it for crossbreeding (ie. Stickreed). It is not necessary to place empty crop sticks to fill the rest of the checkerboard. The target crop is used by autoStat and autoSpread to identify the crop you want to stat-up or spread to the storage farm, respectively.

[[File:Farm_Bottom.png|Bottom-View of the farm.|center|thumb|801x801px]]

'''Underneath the farm''', you can see that there are three additional dirt blocks below each farmland, each of which add to the nutrient stat of the crop above it. For crops requiring a block underneath, that should be placed at the bottom. In this case, I have diareed planted on top which means I have one farmland --> two dirt --> one diamond block underneath each one. I do not have diamond blocks underneath the working farm because the diareed does not need to be fully grown in order to spread.

'''For power''', I am using an HV gas turbine and a super tank with some benzene (no transformer needed). This is a little overkill, but the important part is that the charger is always at 100% charging speed which you can see by hovering over it. A set-up such as this will last forever with a few hundred thousand benzene since both machines require very little EU/t. Lastly, a reservoir feeds water into the crop-matron automatically after right-clicking it with a wrench.

==Running the Programs ==
The first program '''autoTier''' will automatically tier-up your crops until the max breeding round is reached (configurable), the storage farm is full, or ALL crops meet the specified tier threshold which defaults to 13. Note that unrecognized crops will be moved to the storage farm first before replacing any of the lower tier crops in the working farm. Statting-up crops during this program is also a configurable option, but that will slow down the process significantly. To run, simply enter:


''autoTier''
''autoTier''


The second program is autoStat. This will automatically stat-up your crops, terminating once Gr + Ga - Re is at least 52 (configurable) for all crops on the working farm. A trash can is recommended for this program. Maximum growth and resistance are also configurable options which default to 21 and 2, respectively. To run, simply enter:
The second program '''autoStat''' will automatically stat-up your target crop until the Gr + Ga - Re is at least 52 (configurable) for ALL crops on the working farm. Note that the maximum growth and resistance stats for parent crops are also configurable parameters which default to 21 and 2, respectively. Any crops with stats higher than these will be interpreted as weeds and removed. To run, simply enter:


''autoStat''
''autoStat''


The third program is autoSpread. This will automatically spread (duplicate) your crops if each new Gr + Ga - Re is at least 46 (configurable), terminating once the storage farm is full. A trash can is recommended for this program. Maximum growth and resistance are also configurable options which default to 21 and 2, respectively. To run, simply enter:
The third program '''autoSpread''' will automatically spread (duplicate) your target crop until the storage farm is full. New crops will only be moved to the storage farm if their Gr + Ga - Re is at least 50 (configurable). Note that the maximum growth and resistance stats for child crops are also configurable parameters which default to 23 and 2, respectively. To run, simply enter:


''autoSpread''
''autoSpread''


Lastly, these programs can be chained together which may be helpful if you have brand new crops (ie. 1/1/1 spruce saplings) and want them to immediately start spreading once fully statted-up. Note that no crops are added to the storage farm until autoStat is complete. Also note that keepMutations in the config should probably be set to false (default), otherwise the storage farm will be overwritten once autoSpread begins. To run autoSpread after autoStat, simply enter:
Fire and Forget. If you have brand new crops (ie. 1/1/1 spruce saplings) and want to automatically stat-up and start spreading:


''autoStat && autoSpread''
''autoStat && autoSpread''
To pause the robot during any of these programs, just turn off the OC Charger. The robot will not resume until it is fully charged. Also, changing anything in the config requires you to restart your robot.

== Troubleshooting ==
'''1) The Transvector Dislocator is randomly moved to somewhere on the working farm'''

''Solution: Cover your water sources. Otherwise the order of the transvector binder will get messed up and teleport the dislocator instead of a crop.''

'''2) The Robot is randomly moved to somewhere on the working farm'''

''Solution'': ''Check the orientation of the transvector dislocator. This can only happen if the dislocator is facing up instead of forward.''

'''3) The Robot is destroying all of the crops that were manually placed'''

''Solution: Either the resistance or growth stats of the parent crops are too high. By default, anything above 2 resistance or 21 growth is treated like a weed and will be removed. These values, including the maximum stats of child crops, are all easily changed in the config.''

'''4) Crops are randomly dying <u>OR</u> the farms are being overrun with weeds <u>OR</u> there are single crop sticks where there should be double'''

''Solution: Possibly change location. Crops have minimum environmental stat requirements (nutrients, humidity, air quality) and going below this threshold will kill the crop and leave an empty crop stick behind that is susceptible to growing weeds and overtaking the farms.''

'''5) There is a PKIX path building error when downloading the files from GitHub'''

''Solution: This is from having outdated java certificates. Try updating your java (21 is recommended), but be prepared to manually install the files by copy-pasting the code from GitHub. The [[Open Computers Crop Breeding#Other Helpful Commands|Other Helpful Commands]] section below can help with that.''

== Recommended Crops ==
For starters, I recommend statting-up and spreading the following crops because their outputs are useful and not completely overshadowed by bees. Note that every crop has a higher chance of being discovered with specific parent combinations, but it is often easier to discover a crop from crossbreeding at the same tier. For example, diareed has the highest chance of being discovered when the parents are oilberry and bobsyeruncleranks, BUT I would recommend just running autoTier with all Tier 12 crops instead (or autoSpread with keepMutations on in the config). Crops that require a particular block underneath do not need to be fully grown in order to spread. For a full list of crops and their requirements, visit the [[IC2 Crops List]] wiki page.

*'''Stickreed''' for sticky resin and discovering/breeding with other crops
*'''Spruce Bonsai''' for all of your benzene and power needs
*'''Black Stonelilly''' for black granite dust (fluorine, potassium, magnesium, aluminium, silicon)
*'''Nether Stonelilly''' for netherrack dust (coal, sulfur, redstone, gold)
*'''Yellow Stonelilly''' for endstone dust (helium, tungstate, platinum metallic powder)
*'''Sugarbeet''' for sugar (oxygen)
*'''Salty Root OR Tearstalks''' for salt (chlorine and sodium)
* '''Enderbloom''' for enderpearls/endereyes
*'''Glowing Earth Coral''' for sunnarium and glowstone (gold and redstone)
*'''Rape''' for seed oil
*'''Goldfish plant''' for fish oil
*'''Diareed''' for diamonds
*'''Bobsyeruncleranks''' for emeralds
*'''Transformium''' for UU-Matter


==Other Helpful Commands==
==Other Helpful Commands==
Line 75: Line 129:


''ls''
''ls''

To edit (or create) a new file, enter

''edit <filename>.lua''


To remove any one file installed on the robot, enter
To remove any one file installed on the robot, enter
Line 84: Line 142:
''uninstall''
''uninstall''


To view an entire message regardless of how long it may be, enter
==Recommended Crops==
For starters, I recommend statting-up and spreading the following crops because their outputs are useful and not completely overshadowed by bees. Note that every crop has a higher chance of being discovered with specific parent combinations, but it is often easier to discover a crop from crossbreeding at the same tier. For example, diareed apparently has the highest chance of being discovered when the parents are oilberry and bobsyeruncleranks, BUT I recommend just running autoTier with all Tier 12 crops (or autoSpread with keepMutations on in the config). Crops that require a particular block underneath do not need to be fully grown in order to spread. For a full list of crops and their requirements, visit https://gtnh.miraheze.org/wiki/IC2_Crops_List.

*'''Stickreed for discovering other crops and sticky resin (rubber dust)'''
*'''Spruce Bonsai for all of your benzene and power needs'''
*'''Glowing Earth Coral for sunnarium and glowstone (gold and redstone)'''
*'''Sugarbeet for sugar (oxygen)'''
*'''Rape for seed oil'''
*'''Goldfish plant for fish oil'''
*'''Salty Root for salt (chlorine and sodium)'''
*'''Enderbloom for enderpearls/endereyes'''
*'''Diareed for diamonds'''
*'''Bobsyeruncleranks for emeralds'''

==Thanks==
My repo is a fork from https://github.com/huchenlei/auto-crossbreeding/tree/improve_autocrossbreed which was originally authored by huchenlei and improved by xyqyear. Huge props to them for getting this off the ground and allowing me to take it further.


''<program> 2>/errors.log''
==Notable Changes==
If you are familiar with the older versions of this code then here are some notable changes that motivated me to develop this fork in the first place.


''edit /errors.log''
*Changed general layout to access chests more easily.
[[File:Giant Sword.png|center|thumb|775x775px|Happy Farming! To report a bug or have a suggestion, please leave a comment on my GitHub repo linked at the top! ~Fòx]]
*Changed farm layout to facilitate running autoSpread immediately after autoStat.
[[Category:OpenComputers]]
*Added the option to use regular dirt instead of fertilized dirt for crops requiring a particular block underneath.
[[Category:Guides]]
*Added configurable maximum growth and maximum resistance stats.
[[Category:Crops]]
*Added configurable thresholds for autoSpread, autoStat, and autoTier.
*Added configurable option to stat-up crops while running autoTier.
*Added configurable option to cleanup after complete (no longer a flag).
*Added a built-in storage reset to prevent having to break the robot in order to run autoSpread or autoTier more than once.
*Added an uninstall script.
*Code is a LOT cleaner and more organized.
*It is no longer the code's fault if any of the programs crash (probably).
[[File:Giant Sword.png|center|thumb|775x775px|Happy Farming! To report a bug or have a suggestion, please leave a comment on my GitHub repo linked at the top!]]

Latest revision as of 14:33, 23 June 2024

Introduction

These Open Computers (OC) scripts will automatically tier-up, stat-up, and spread (duplicate) IC2 crops for you. OC is a very powerful yet complicated mod using custom scripts, but fear not. I have made everything here as straight forward as possible to help you get your crop bot running in no time without any prior knowledge of OC.

Bare Minimum Components

Obtaining these components will require access to EV circuits and epoxid (mid-late HV). It is possible to save some resources by not including the internet card, but that will require manually copying and pasting the code from GitHub which is NOT recommended for multiple reasons. Both inventory upgrades are necessary.

Bare minimum components inside the OC Electronics Assembler.
  • OC Electronics Assembler
  • OC Charger
  • Tier 2 Computer Case
  • Tier 2 Accelerated Processing Unit
  • Tier 2 Memory
  • Tier 1 Hard Disk Drive
  • Tier 1 Screen
  • Tier 1 Redstone Card
  • Internet Card
  • Geolyzer
  • Keyboard
  • Disk Drive (Block)
  • Inventory Controller Upgrade
  • Inventory Upgrade
  • EEPROM (Lua BIOS)
  • OpenOS Floppy Disk

Lastly, you need a Transvector Binder and Transvector Dislocator which requires some progression in Thaumcraft. Neither are very difficult to craft even if you have yet to start Thaumcraft. In the Thaumonomicon, Transvector Dislocator can be found under "Thaumic Tinkering" which requires both Transvector Interface and Smokey Quartz on the same tab. You will also need to complete research on Mirror Magic under "Artifice." For more information, visit the Thaumcraft Research Cheatsheet wiki page.

Building the Robot

Inventory of the robot.

1. Insert the computer case into the OC Electronics Assembler which can be powered directly by any GT cable.

2. Shift-click all of the components into the computer case except the OpenOS floppy disk.

3. Click assemble and wait until it completes (~3 min).

4. Rename the robot.

5. Place the robot on the OC Charger which can also be powered directly by any GT cable. The OC Charger must be activated using some form of redstone such as a lever.

6. Insert the OpenOS floppy disk into the disk slot of the robot and press the power button.

7. Follow the commands on screen 'install' --> 'Y' --> 'Y' (Note: The OpenOS floppy disk is no longer needed in the robot afterwards).

8. Install the required scripts by copying this line of code into the robot (middle-click to paste).

wget https://raw.githubusercontent.com/DylanTaylor1/GTNH-CropAutomation/main/setup.lua && setup

9. Edit the config (not recommended, but check it out) by entering: edit config.lua

10. Place the Spade and Transvector Binder into the last and second to last slot of the robot, respectively. Crop sticks will go in the third, but it is not required to put them in yourself. An axe or mattock can also be placed into the tool slot of the robot to speed up destroying crops (optional). See image above.

Building the Farms

Find a location with good environmental stats. It is recommended to set everything up in a Jungle or Swamp biome at Y=130 as that will give you the highest humidity and air quality stats. If not, crops run the risk of randomly dying and leaving the farms susceptible to weeds. This is most easily done in a personal dimension which you earn as a quest reward from reaching the moon. Do not place any solid blocks above the farm as that will reduce the air quality. All of the machines on the surface are waterproof so do not worry about the rain. Use vanilla dirt because that will allow you to grow crops that require a particular block underneath, and boost the nutrient stat of your crops. The whole farm can easily fit into a single chunk for easy chunk loading.

You may change both the size of the working farm and the size of the storage farm in the config (default is 6x6 and 9x9, respectively). Larger working farm sizes will extend left and up while larger storage farm sizes will extend down and to the right (see image below). The top row of the working farm will always align with the top row of the storage farm. There is no maximum or minimum size for either farm and it does not matter if the lengths are even or odd. Note that larger storage farm sizes will leave your working farm more susceptible to weeds because the robot will have to travel further when transporting crops which means less time spent scanning the working farm. Also note that the maximum range for the transvector dislocator is 16 blocks. Changing anything in the config requires you to restart your robot.

Top-View of the farm. There MUST be a block on top of the water sources.
Side-View of the farm. There MUST be a block on top of the water sources.

First note the orientation of the robot sitting atop the OC charger. It must face towards the right-most column of the working farm. Adjacent to the OC charger is the crop stick chest which can be a few things: any sort of large chest, a JABBA barrel, or storage drawer (orientation does not matter). If the crop stick chest is ever empty, bad things will happen. Next to that is a Trash Can for any random drops that the robot picks up such as weeds, seed bags, and crop sticks but this can be swapped with another chest to recycle some of the materials. The transvector dislocator sits facing the top of the blank farmland (where a crop would go). Think of this as a buffer between the working and storage farms. You can tell which direction the transvector dislocator is facing by the side that is animated. The last spot is for a crop-matron which is optional and one y-level lower than the rest of the blocks. It is just to hydrate most of the crops to help them grow a little faster.

The location of the water is completely flexible: they do not have to be in the same locations as in the photo (underneath all five sea lantern slabs) and you can have as many as you would like on both the working farm and storage farm. However, there MUST be a block on top of each water and no two can be next to each other. The block can be literally anything, even a lily pad will work, so long as there is something. It is also possible to use garden soil or fertilized dirt and have absolutely no water on the farms at all, but this will sacrifice a few nutrient stats and bar you from growing crops that require a particular block underneath.

The starting crops must be placed manually in the checkerboard pattern seen in the photo. This layout goes for all three programs. If you cannot fill the entire checkerboard to start, the absolute minimum required is two (one as the target crop and the other next to it for crossbreeding). Even worse, if you have just a single seed of your target crop, it is possible to start with a different crop next to it for crossbreeding (ie. Stickreed). It is not necessary to place empty crop sticks to fill the rest of the checkerboard. The target crop is used by autoStat and autoSpread to identify the crop you want to stat-up or spread to the storage farm, respectively.

Bottom-View of the farm.

Underneath the farm, you can see that there are three additional dirt blocks below each farmland, each of which add to the nutrient stat of the crop above it. For crops requiring a block underneath, that should be placed at the bottom. In this case, I have diareed planted on top which means I have one farmland --> two dirt --> one diamond block underneath each one. I do not have diamond blocks underneath the working farm because the diareed does not need to be fully grown in order to spread.

For power, I am using an HV gas turbine and a super tank with some benzene (no transformer needed). This is a little overkill, but the important part is that the charger is always at 100% charging speed which you can see by hovering over it. A set-up such as this will last forever with a few hundred thousand benzene since both machines require very little EU/t. Lastly, a reservoir feeds water into the crop-matron automatically after right-clicking it with a wrench.

Running the Programs

The first program autoTier will automatically tier-up your crops until the max breeding round is reached (configurable), the storage farm is full, or ALL crops meet the specified tier threshold which defaults to 13. Note that unrecognized crops will be moved to the storage farm first before replacing any of the lower tier crops in the working farm. Statting-up crops during this program is also a configurable option, but that will slow down the process significantly. To run, simply enter:

autoTier

The second program autoStat will automatically stat-up your target crop until the Gr + Ga - Re is at least 52 (configurable) for ALL crops on the working farm. Note that the maximum growth and resistance stats for parent crops are also configurable parameters which default to 21 and 2, respectively. Any crops with stats higher than these will be interpreted as weeds and removed. To run, simply enter:

autoStat

The third program autoSpread will automatically spread (duplicate) your target crop until the storage farm is full. New crops will only be moved to the storage farm if their Gr + Ga - Re is at least 50 (configurable). Note that the maximum growth and resistance stats for child crops are also configurable parameters which default to 23 and 2, respectively. To run, simply enter:

autoSpread

Lastly, these programs can be chained together which may be helpful if you have brand new crops (ie. 1/1/1 spruce saplings) and want them to immediately start spreading once fully statted-up. Note that no crops are added to the storage farm until autoStat is complete. Also note that keepMutations in the config should probably be set to false (default), otherwise the storage farm will be overwritten once autoSpread begins. To run autoSpread after autoStat, simply enter:

autoStat && autoSpread

To pause the robot during any of these programs, just turn off the OC Charger. The robot will not resume until it is fully charged. Also, changing anything in the config requires you to restart your robot.

Troubleshooting

1) The Transvector Dislocator is randomly moved to somewhere on the working farm

Solution: Cover your water sources. Otherwise the order of the transvector binder will get messed up and teleport the dislocator instead of a crop.

2) The Robot is randomly moved to somewhere on the working farm

Solution: Check the orientation of the transvector dislocator. This can only happen if the dislocator is facing up instead of forward.

3) The Robot is destroying all of the crops that were manually placed

Solution: Either the resistance or growth stats of the parent crops are too high. By default, anything above 2 resistance or 21 growth is treated like a weed and will be removed. These values, including the maximum stats of child crops, are all easily changed in the config.

4) Crops are randomly dying OR the farms are being overrun with weeds OR there are single crop sticks where there should be double

Solution: Possibly change location. Crops have minimum environmental stat requirements (nutrients, humidity, air quality) and going below this threshold will kill the crop and leave an empty crop stick behind that is susceptible to growing weeds and overtaking the farms.

5) There is a PKIX path building error when downloading the files from GitHub

Solution: This is from having outdated java certificates. Try updating your java (21 is recommended), but be prepared to manually install the files by copy-pasting the code from GitHub. The Other Helpful Commands section below can help with that.

Recommended Crops

For starters, I recommend statting-up and spreading the following crops because their outputs are useful and not completely overshadowed by bees. Note that every crop has a higher chance of being discovered with specific parent combinations, but it is often easier to discover a crop from crossbreeding at the same tier. For example, diareed has the highest chance of being discovered when the parents are oilberry and bobsyeruncleranks, BUT I would recommend just running autoTier with all Tier 12 crops instead (or autoSpread with keepMutations on in the config). Crops that require a particular block underneath do not need to be fully grown in order to spread. For a full list of crops and their requirements, visit the IC2 Crops List wiki page.

  • Stickreed for sticky resin and discovering/breeding with other crops
  • Spruce Bonsai for all of your benzene and power needs
  • Black Stonelilly for black granite dust (fluorine, potassium, magnesium, aluminium, silicon)
  • Nether Stonelilly for netherrack dust (coal, sulfur, redstone, gold)
  • Yellow Stonelilly for endstone dust (helium, tungstate, platinum metallic powder)
  • Sugarbeet for sugar (oxygen)
  • Salty Root OR Tearstalks for salt (chlorine and sodium)
  • Enderbloom for enderpearls/endereyes
  • Glowing Earth Coral for sunnarium and glowstone (gold and redstone)
  • Rape for seed oil
  • Goldfish plant for fish oil
  • Diareed for diamonds
  • Bobsyeruncleranks for emeralds
  • Transformium for UU-Matter

Other Helpful Commands

To list all of the files installed on the robot, enter

ls

To edit (or create) a new file, enter

edit <filename>.lua

To remove any one file installed on the robot, enter

rm <filename>

To uninstall all of the files from this repo, enter

uninstall

To view an entire message regardless of how long it may be, enter

<program> 2>/errors.log
edit /errors.log
Happy Farming! To report a bug or have a suggestion, please leave a comment on my GitHub repo linked at the top! ~Fòx