Go to file
Clarth 3c71e19b2c Update Clarths-Instructions.md 2024-01-23 17:06:15 -05:00
Clarths-Instructions.md Update Clarths-Instructions.md 2024-01-23 17:06:15 -05:00
Forum-Post.md Add Forum-Post.md 2024-01-23 17:02:11 -05:00
README.md Update README.md 2024-01-23 17:03:32 -05:00
quarry.lua Add quarry.lua 2024-01-23 16:34:57 -05:00

README.md

Quarry Program for Turtles in computercraft

Original script can be found here

This is copied from here


NOTE: As of version 3.5.0, the turtle also has oreQuarry support built in.

Note: If you don't know how to access any of the features: Type "quarry help" where "quarry" is whatever you named the program.

Features:

  • Huge Sized Quarries possible, the only restriction is how much fuel you can stuff in the turtle (and chunk loading)

  • Will always move to the proper position, will even attack mobs that get in the way!

  • Great for digging out rooms underground

  • Great for demolishing houses (use invert)

  • Great for digging holes down to bedrock

  • Deposits blocks into a chest when finished

  • Checks often to see if inventory is full

  • If inventory full, will go to a home chest to deposit blocks, then go right back where it was and continue mining

  • Ender Chest enabled! Feel free to use them

  • Session Persistence! Quarries will live through crashes and SSP

  • Ore Quarry capable! Check the help section for instructions

  • Turtle can mine down a certain number of blocks before starting. Good for getting to diamonds quickly.

  • If it runs into bedrock, it will come back to start and tell you where bedrock was found.

  • Automatically checks if you have fuel disabled

  • Keeps a (somewhat) detailed record of what it mines

  • Will log mining runs for posterity when done (If you want)

  • While running, displays percent to completion and total blocks mined.

  • Very modular, many different things can be changed by config and arguments

  • Now can be fully automated from parent programs. Everything can be set from arguments

  • Intelligently tells you settings you have changed

  • Now has a companion program to place ladders all the way to the bottom.

  • Now has a companion rednet program to give status updates when running. See below for current version

  • Will intelligently request fuel before mining, so it won't run out half way through.

  • Refuels quickly! You will fueled up and ready to go in no time!

  • Supports GPS networks. Is able to accurately get its position every time (If wanted)

Coming Soon:

  • Shell to control turtle

  • Maybe start quarries through rednet

Drawbacks:

  • None right now :)

Help Section: (just in case you want it here as well)

Arguments

Welcome to Quarry help. Below are help entries for all parameters. Examples and tips are at the bottom.

  • -default: This will force no prompts. If you use this and nothing else, only defaults will be used.
  • -dim: [length] [width] [height] This sets the dimensions for the quarry.
  • -invert: [t/f] If true, the quarry will be inverted (go up instead of down).
  • -rednet: [t/f] If true and you have a wireless modem on the turtle, will attempt to make a rednet connection for sending important information to a screen.
  • -restore / -resume: If your quarry stopped in the middle of its run, use this to resume at the point where the turtle was. Not guaranteed to work properly. For more accurate location finding, check out the -GPS parameter.
  • -autoResume / -autoRestore: Turtle will automatically resume if stopped. Replaces startup.
  • -oreQuarry: [t/f] If true, the turtle will use ore quarry mode. It will not mine the blocks that are placed in the turtle initially. So if you put in stone, it will ignore stone blocks and only mine ores.
  • -blacklist: [file name] If using oreQuarry, this is the blacklist file it will read. Example --
    minecraft:stone
    minecraft:sand
    ThermalExpansion:Sponge
    ThermalFoundation:Storage
    
    If you have bspkrsCore, look for "UniqueNames.txt" in your config.
  • -atChest: [force] This is for use with "-restore," telling the restarting turtle that it is at its home chest, so that if it had gotten lost, it now knows where it is.
  • -doRefuel: [t/f] If true, the turtle will refuel itself with coal and planks it finds on its mining run.
  • -doCheckFuel: [t/f] If you, for some reason, don't want the program to check fuel usage, set to false. This is honestly a hold-over from when the refueling algorithm was awful...
  • -uniqueExtras: [number] The expected number of slots filled with low-stacking items like ore. Higher numbers request more fuel.
  • -chest: [side] This specifies what side the chest at the end will be on. You can say "top," "bottom," "front," "left," or "right."
  • -enderChest: This one is special. If you use "-enderChest true" then it will use an enderChest in the default slot. However, you can also do "-enderChest [slot]" then it will take the ender chest from whatever slot you tell it to. Like 7... or 14... or whatever.
  • -GPS: [force] If you use "-GPS" and there is a GPS network, then the turtle will record its first two positions to precisely calculate its position if it has to restart. This will only take two GPS readings.
  • -sendChannel: [number] This is what channel your turtle will send rednet messages on.
  • -receiveChannel: [number] This is what channel your turtle will receive rednet messages on.
  • -startY: [current Y coord] Randomly encountering bedrock? This is the parameter for you! Just give it what y coordinate you are at right now. If it is not within bedrock range, it will never say it found bedrock.
  • -startupRename: [file name] What to rename any existing startup to.
  • -startupName: [file name] What the turtle will save its startup file to.
  • -extraDropItems: [force] If oreQuarry then this will prompt the user for extra items to drop, but not compare to (like cobblestone).
  • -dumpCompareItems: [t/f] If oreQuarry and this is true, the turtle will dump off compare blocks instead of storing them in a chest.
  • -oldOreQuarry: [t/f] If you are using new CC versions, you can use this to use the old oreQuarry.
  • -maxTries: [number] This is the number of times the turtle will try to dig before deciding its run into bedrock.
  • -logging: [t/f] If true, will record information about its mining run in a folder at the end of the mining run.
  • -doBackup: [t/f] If false, will not back up important information and cannot restore, but will not make an annoying file (Actually I don't really know why anyone would use this...).
  • -saveFile: [word] This is what the backup file will be called.
  • -logFolder: [word] The folder that quarry logs will be stored in.
  • -logExtension: [word] The extension given to each quarry log (e.g., ".txt" or ".notepad" or whatever).
  • -keepOpen: [number] This is the number of the slots the turtle will make sure are open. It will check every time it mines.
  • -careAboutResources: [t/f] Who cares about the materials! If set to false, it will just keep mining when its inventory is full.
  • -startDown: [number] If you set this, the turtle will go down this many blocks from the start before starting its quarry.
  • -promptAll: This is the opposite of -Default, it prompts for everything.
  • -manualPos: [xPos] [zPos] [yPos] [facing] This is for advanced use. If the server reset when the turtle was in the middle of a 100x100x100 quarry, fear not, you can now manually set the position of the turtle. yPos is always positive. The turtle's starting position is 0, 1, 1, 0. Facing is measured 0 - 3. 0 is forward, and it progresses clockwise. Example- "-manualPos 65 30 30 2"
  • -help: That's what this is :D

Examples: Everything below is examples and tips for use

Important Note:
None of the above parameters are necessary. They all have default values, and the above are just if you want to change them.

  • Want to just start a quarry from the interface, without going through menus? It's easy! Just use some parameters. Assume you called the program "quarry." To start a 10x6x3 quarry, you just type in quarry -dim 10 6 3 -default.
    You just told it to start a quarry with dimensions 10x6x3, and "-default" means it won't prompt you about invert or rednet. Wasn't that easy?
  • Okay, so you've got the basics of this now, so if you want, you can type in really long strings of stuff to make the quarry do exactly what you want. Now, say you want a 40x20x9, but you want it to go down to diamond level, and you're on the surface (at y = 64). You also want it to send rednet messages to your computer so you can see how its doing.
  • Oh yeah! You also want it to use an ender chest in slot 12 and restart if the server crashes. Yeah, you can do that. You would type
    quarry -dim 40x20x9 -invert false -startDown 45 -rednet true -enderChest 12 -restore
    BAM. Now you can just let that turtle do it's thing

Tips:

The order of the parameters doesn't matter. "quarry -invert false -rednet true" is the same as "quarry -rednet true -invert false"

  • Capitalization doesn't matter. "quarry -iNVErt FALSe" does the same thing as "quarry -invert false"
  • For [t/f] parameters, you can also use "yes" and "no" so "quarry -invert yes"
  • For [t/f] parameters, it only cares about the first letter. So you can use "quarry -invert t" or "quarry -invert y"
  • If you are playing with fuel turned off, the program will automatically change settings for you so you don't have to :D
  • If you want, you can load this program onto a computer, and use "quarry -help" so you can have help with the parameters whenever you want.

Internal Config:

At the top of this program is an internal configuration file. If there is some setup that you use all the time, you can just change the config value at the top and run "quarry -default" for a quick setup.

You can also use this if there are settings that you don't like the default value of.

Usage for Ore Quarry:

Usage:
Just run with parameter "-oreQuarry true" and it will automatically mine everything but items in its blacklist.
If you have other items you don't want to mine, you can make your own blacklist in the file "oreQuarryBlacklist.txt"
Example blacklist file:

minecraft:stone, minecraft:gravel, ThermalExpansion:Machine

If you have bspkrsCore installed, there is a file in your config folder called "UniqueNames.txt" where you can see all blocks in your game.
If you have a better config file for me, please let me know.

Happy Mining! :)

1. Download the program(s)
2. Now, while you can run it straight out of the box, there are a few configs if you want. Type edit quarry, and change these values
3. Check "quarry -help" or "quarryReceiver -help" for usage
4. In the quarry, you can make parameter files! See the below example for details.

How to make Parameter Files:

Example Parameter File (named "basic")
type

# Starting a line with a single pound sign (hashtag) denotes a comment# You can have comments anywhere, but they don't work at the end of parameter lines#This file will be a "basic" file that holds all the things I like to change as default#I want my turtles to always refuel themselves when done, but only to about half maxdoRefuel truemaxFuel 100000#I prefer to always have a chest belowchest bottom#I always want maxTries to be really large, I don't like logging mining runs, and I want more than twice the fuel necessary#I can do multiple parameters on one line if I use dashes-maxTries 100000 -logging false -fuelMultiplier 2.2#I also want to prompt whether to do an oreQuarry or notforcePrompt oreQuarry#Now when you run this it will ask you "Ore Quarry?" just like it asks you "Invert?" or "Length?"

You can then load this by itself:

quarry -file basic

or with other (situational) arguments (which override ones in the file):

quarry -file basic -dim 16 16 64 -flatBedrock true -default

When the shell is done, there will be a cool gui to load and make your own config files :)/>[/spoiler]

Download:

Clarth's Edited Version

Version 3.6.4 (this goes on the turtle):
http://pastebin.com/rpXRAZs4
Version 3.6.5 Rednet Companion Program (this goes on computer, compatible with 3.5.2 - current):
https://pastebin.com/7Ksx4qUJ
Version 1.0.3 Rednet Repeater Program (goes on computer, compatible with 3.5.4 - current)
http://pastebin.com/Te359WA2
Ladder Placing:
http://pastebin.com/GbWZhXCC

Version Made by Renari compatible with the "Miny Chunky Module" peripheral. (Version 3.5.5)
http://pastebin.com/4y9W8i9i

Misc

Showcase Video by utybo. Goes over basics, rednet, oreQuarry, and enderChests (Version 3.6.3)

Full Demonstration Video for (almost) all features of the program (Version 3.0.7)

Demonstration video of the newer Rednet Program (Version 3.5.4)

How to oreQuarry (Version 3.5.5):

Demonstration of using Quadracopters (Version 3.6.1)

Pictures of the new Rednet Program
http://imgur.com/a/AgPR5

My Github: https://github.com/c...ogs/tree/LuaDev
This is where all the new and in-development features of my programs will be. Not all programs are guaranteed to actually run at the time you download them.