4

With hopper taking items from chest in specific order I could use the chest storage as a program tape for whatever programmable mechanism I would like to use it. I've made a simple circuit that clocks removing exactly one item from the chest, feed it to a dispenser and have the dispenser "dispense it" before further actions are taken.

What I want: I load the chest with a sequence of two or more types of items, and get redstone signal on selected output when given item in sequence is of specific type. Say, I load it with "arrow, cobble, cobble, arrow, arrow" and on five consecutive "clock pulses" of my redstone clock I'm getting "1, 0, 0, 1, 1" on redstone output of the whole circuit.

Now there's a problem with actually converting the item type to a specific redstone signal. I'm fairly aware there are rather few items that could be used for that, and almost none to do that at reasonable speed, or can be easily removed for another item.

  • I can dispense items that drop as entities onto a hopper and it will send redstone signal when the item passes through.
  • I could dispense minecarts on a piece of rail - and then use detector rail and cart re-collector (cactus+water+hopper) to retrieve them.
  • I could shoot arrows at wooden buttons. Five minutes to despawn.
  • I could dispense water or lava and recognize which it is by testing its reach, but getting rid of it will be a pain in the neck. The dispenser would need to retrieve them into a bucket then and then the bucket would need to be pulled out by a different hopper. This becomes hopelessly convoluted.

In general, how can I automate recognition of (even very few, very specific types of) items in entity form in vanilla Minecraft, in a reasonably serializable way?

3
  • Short answer: you basically need an item sorter. The very nature of item sorters means they output a signal when an item is sorted.
    – MBraedley
    Commented Jul 28, 2013 at 16:25
  • @MBraedley: More or less. If the item is of cheap kind, destroying or otherwise misplacing it isn't a problem.
    – SF.
    Commented Jul 28, 2013 at 16:29
  • I think an item sorter like this might help.
    – daviewales
    Commented Dec 5, 2013 at 2:01

2 Answers 2

3

This setup works:

enter image description here

One of your items is an arrow, the other is any non-dispensing item like redstone.

Arrows will fire and miss the tripwire. Items will hit it then burn up, triggering a signal. You can use the items you suggested: arrow, cobble, cobble, arrow and the desired signal will be generated (well, the inverse).

3
  • The only issue with this is that your only option is binary.
    – MBraedley
    Commented Jul 28, 2013 at 17:28
  • 1
    @MBraedley As far as I can tell this is all that's required. I tried out other systems with mob eggs that could have more flexibility, but the lag is much greater.
    – fredley
    Commented Jul 28, 2013 at 17:29
  • I'm thinking more along the lines of hopper sorters. More output options from single item drops.
    – MBraedley
    Commented Jul 28, 2013 at 17:41
3

Currently I came up with two basic designs exploiting hoppers and comparators.

An item stackable to 64 will produce redstone power of 1. An item not stackable will produce signal strength 3. That gives us a binary output plus "no data" option.

Now if we want more than binary output, we can chain that to another hopper, which will count the stackable items: load up to five stacks of these in the input chest, followed by a non-stackable item.

The first hopper is "open" (unpowered, unblocked) and passes the stackable items to the other (powered, blocked) hopper at full speed, until it encounters the non-stackable item. The power level of 3 at output powers the first hopper up (freezes it), activates readout of the power level of the second hopper, and once the value has been read and used for whichever purpose, unblocks the other hopper. Once it's empty (upon activation it should "extract" the non-stackable item from the first hopper) it's blocked again, the first hopper is unblocked, and "counting" the stacked items can be resumed.

A potentially easier and more flexible method of achieving similar effect could be achieved through any retriggerable timer, where the non-stacking item is the trigger, and the time between occurrence of these (fine-tuned by number of stacking items placed between the non-stacking ones) is the stored value.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.