Skynet Turtles [Theory]

  • Please make sure you are posting in the correct place. Server ads go here and modpack bugs go here
  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord

Watchful11

Forum Addict
Team Member
Third Party Pack Admin
Nov 6, 2012
3,031
1,351
188
tsk tsk, you have the power of turtles at your hands and you only think about unleashing them on the wild?
How about a self replicating quarry system that funnels an exponentially growing amount of resources back to your base? That's what I'm doing.
 

dutchgh0st

New Member
Jul 29, 2019
27
0
0
I believe that Eloraam also build a quarry system from turtles. She would send 60 turtles from one "mother" turtle and have them excavate a certain area, if the turtles would run out of power they place an enderchest above them, grab some fuel out of it and destroy the chest.
It is in one of DW20's video's I think.

Edit: Here it is :)
 
  • Like
Reactions: ICountFrom0

Catarooni

New Member
Jul 29, 2019
35
0
0
This would be an interesting project, but it sounds way too large for one person to handle. This is why Object Oriented Programming was created. Unfortunately, LUA isn't very...compatible...? with modularizing programs. You can still take an object-oriented approach, though, and get a group together, divy out programming 'assignments', and get the job done much faster. It's also more fun to try and do it yourself, though. But I digress.

There is a section in the Computercraft forums dedicated to new peripherals, one of which is a 'block analyzer'. It would make your work vastly more simple. Whether that is good or bad is up to you. :p

each turtle could have a full copy of the code, but receive it's "role" from the master. This way we end up with one really big program, but it is easy to just re-purpose turtles without having to have them transfer code. I've only used CC on Tekkit so i haven't had the pleasure of the updates... yet.

On the one hand, this is cool. On the other hand, if you were a drone in a futuristic society where you have one job and one job only, you wouldn't know anything about anyone else's job. It's up to your interpretation of how 'turtle society' works.
 

eculc

New Member
Jul 29, 2019
163
0
0
A block analyzer? I was actually considering going over there and suggesting it at some point. to know that it's already in the works is nice to know.

and while I suppose it's true that as a drone you wouldn't have the knowledge about anything else, in that case you would have to reprogram the code to account for variables becoming set values.
 
Jul 29, 2019
11
0
16
I had a go at replicating Eloraam's turtle army concept in Tekkit, but as there's no ability to interact with inventories I could only do the bit where you had a master turtle spawning and instructing slave turtles, along with navigation code so that they could be directed to specific location and direction vectors, along with code to calculate those target destinations. Basically spawning a turtle that runs a program to listen out for instructions is actually pretty trivial.

My system, because a quarry was impractical, was a sugar cane farm where turtles were launched, sent to a specific row to harvest, then they all would deposit their goods in a transposer, then return to the master turtle to be destroyed and stored until needed again. Nothing was hardcoded except the location of the top left of the sugar cane farm, how big it was and which direction the rows of cane went in. Very fun project.

The only problem with doing the full mining turtle army quarry in FTB is that you'd need 2 ender chests (one for output, one for fuel) per turtle along with 3 diamonds per mining turtle, so 60 of them would be ridiculously expensive!

As for the original post, I think it's doable but very, very ambitious. Scary, scary coding required. :)
 

eculc

New Member
Jul 29, 2019
163
0
0
you wouldn't necessarily need enderchests. It would certainly be possible (though relatively inefficient) to travel back to deposit or charging stations. the diamonds would be collected by other turtles along their mining expeditions -- you'd only need three to start the process with the first turtle.

Also, I realized that it wouldn't even be necessary to have turtles program to enter in values for variables. All that would be necessary is a message (possibly sent from the lead turtle) that a software update is available. When a turtle sets a location (of a deposit station, charging station, mining area/path, etc) they would set it in their own code, then copy it over to the disk drive and send a message to the leader, which would inform all other turtles that an update is available, and the turtles would move to upload stations to patch themselves with the latest information.
 

eculc

New Member
Jul 29, 2019
163
0
0
Oh, can they? I'm not very familiar with the advanced capabilities of turtles, so that's nice to know.
 

Fuubar

New Member
Jul 29, 2019
60
0
0
Turtles can receive updates by rednet too.

Is that an inbuilt function or are you talking about running a separate thread waiting for the correct rednet handshake to call up a function that writes rednet messages to file?

There is a section in the Computercraft forums dedicated to new peripherals, one of which is a 'block analyzer'. It would make your work vastly more simple. Whether that is good or bad is up to you. :p

Sure that's the easy way. I just think it would be awesome for a turtle to locate materials on it's own and build a science station to identify and sort blocks. Although there is one resource identifier (CARP?) that just assigns unique ids to block types. Something like that would be useful rather than having the turtle go back to a row of chests to figure out if it already knows what a block is.
 

ICountFrom0

Forum Addict
Aug 21, 2012
906
1,227
159
Vermont
I'm thinking that solar and EU powered turtles might be the way to go for this, if you can fit solar and mining on the working turtles, they will always have top power. More investment cost, less fuel costs, turtle can always see the sky, so it won't stop ever.

We don't know who started the war, but we do know it was us who burned the sky.
 

Tylor

Well-Known Member
Nov 24, 2012
500
120
68
Is that an inbuilt function or are you talking about running a separate thread waiting for the correct rednet handshake to call up a function that writes rednet messages to file?
I talk about pausing once in a while and requesting server for updates, for example. Or listen for broadcasts at certain time window - first 10 seconds of each hour or so.
 

Fuubar

New Member
Jul 29, 2019
60
0
0
I talk about pausing once in a while and requesting server for updates, for example. Or listen for broadcasts at certain time window - first 10 seconds of each hour or so.

Ahh that makes sense. I haven't tried to program it yet but I think you could also use parallel.waitForAny( F1, F2 ) where F1 is your main function and F2 is a function to monitor rednet messages for an update or stop command. This should allow the turtle to listen for an update command while it does whatever you want it to do. Once F2 returns something it will stop F1 and then execute code below the parallel call.
 

eculc

New Member
Jul 29, 2019
163
0
0
I'm thinking that solar and EU powered turtles might be the way to go for this, if you can fit solar and mining on the working turtles, they will always have top power. More investment cost, less fuel costs, turtle can always see the sky, so it won't stop ever.

We don't know who started the war, but we do know it was us who burned the sky.

Unless you don't plan to have your turtles just quarry out a huge area, and instead take a branch-mine approach (which is more fuel and time efficient, and reduces the levels of waste resources, i.e. cobblestone). EU would still likely be the best way to go, but not necessarily solar.

of course, if you DID quarry out an entire area, you could turn that cobblestone into UU and from there into any other resource required for an operation.

having the ability to assign a unique ID to each block type would be immensely useful combined with identification of adjacent blocks through a peripheral. If each turtle knew each block ID, then it could combine that information with a location and recipe information to be able to craft items and deliver resources for any given setup, rather than only for hardcoded setups.

...jeez, the more we talk about this the more I actually want to start working on it.
 

eculc

New Member
Jul 29, 2019
163
0
0
Like you said, I don't believe the turtles particularly care about lava/water. I don't know that dealing with it is necessary, unless they have a specific reason to do so.
 

Froghandler

New Member
Jul 29, 2019
44
0
0