Block Transmutation
Block transmutation is a set of glitches that give a block a metadata value the game never assigns it.
How it works
Replacing a block writes the new block's ID first, then runs the old block's removal, and only then writes the new metadata. While the old block's removal runs, its space holds the new block with the old block's metadata. A block placed in the space during that time keeps its own ID, and then receives the new metadata.
Transmutation changes metadata only. It cannot turn one block into another, so it cannot make sponge or any other block the world does not already contain.
Moving piston merge
When a piston moves a block into a space that already holds a moving block with different metadata, the two merge. The moving block already there lands at once and takes the incoming block's metadata. The incoming block is lost.
A piston cannot normally push into a moving block. It can when the space is empty as it checks its line and fills while it moves: a piston breaks a fragile block at the end of its line, which updates the blocks around it, before it moves anything. A second piston that answers that update can fill the space first.
Pistons of one kind ignore every update while one of them is moving, so the two pistons must be one sticky and one normal.
The machine
This machine gives a block the metadata of a piece of wool. Wool's metadata is its colour, so every value but 0 can be chosen.
The model shows lime wool and oak wood, with the upper lever on and the floor lever off.
- Place everything, with the upper lever off.
- Turn the upper lever on. It powers the sticky piston through the space above it without updating it, so the sticky piston stays retracted.
- Turn the floor lever on.
The piston breaks the torch. A lit redstone torch's removal updates every block two steps away from it, which fires the sticky piston, and the pushed block ends up at the centre with the wool's metadata. The wool is used up, and the torch drops as an item.
The space's metadata is always 0 when the merge happens, so white wool, metadata 0, transfers nothing.
The block to transmute must be one a piston can push. Leaves and saplings break instead.
Tree growth
A tree that grows over a lit redstone torch gives a sapling with damage value 3 a chance to drop.
An oak tree's two lowest leaf layers reach 2 blocks from its trunk, but the tree checks only 1 block out at those heights for room to grow. Its leaves there replace any non-solid block, torches included, without breaking them.
While the torch is being replaced, the new leaves carry the torch's metadata. A torch on the south face of a block has metadata 3. The torch's removal fires a piston two blocks away whose line runs through the torch's space. The piston breaks the new leaves, and like any leaves they drop a sapling 1 time in 20, with the leaves' metadata as its damage value.
Growing the sapling with bone meal hits the torches when the tree grows 4 or 5 blocks tall, two times in three, and never when it grows as a big oak.
Results
Three blocks keep an invalid metadata value in what they drop:
| Block | Invalid values | Method | Drops |
|---|---|---|---|
| Wood | 3 to 15 | moving piston merge | wood with that damage value |
| Stone Slab and Double Stone Slab | 4 to 15 | moving piston merge | slabs with that damage value |
| Sapling | 3 | tree growth | a sapling with damage value 3 |
Each of these items places a block with its own damage value as metadata, and stacks only with items of the same value.
Invalid wood looks like oak wood, and the damage-3 sapling looks and grows like an oak sapling. Invalid slabs look like stone slabs, but show the smooth top texture on every face.
Two invalid slabs of the same value stack into a double stone slab of that value, which drops two of them.
Holding the pointer over an invalid slab in an inventory screen crashes the game. The tooltip asks for a name the game does not have.