![]() |
VOOZH | about |
This page documents Java Edition's several historical leaf decay algorithms.
Leaves will not decay if:
If these conditions are not met, the leaf decays.
From Infdev 20100227-1414 to this version, leaves did not decay. Leaves stopped decaying again in Infdev 20100413, due to the addition of large trees. This was reimplemented again in Infdev 20100615. It stayed this way until Alpha v1.0.6.
In Alpha v1.0.6, leaves did not decay. This was changed the following version, Alpha v1.0.6_01. In Alpha, leaves decayed using an algorithm that checks whether it has a solid block underneath it or is adjacent to but not below a wood block. If it doesn't, it must be connected to a leaf block that is also supported as long as it is no further than five blocks away from said support.
In Alpha v1.2.0, leaves stopped decaying, then began decaying again in Alpha v1.2.3. However, due to a bug that caused an infinite loop in the code, leaf decaying was removed in the next version, Alpha v1.2.3_01.
In Java Edition Beta 1.0, leaves started decaying again. The code for decaying leaves was rewritten in Beta 1.1. From Beta 1.2 to Beta 1.5, birch and spruce leaves dropped oak saplings, instead of their respective saplings. Since the Beta 1.8 Pre-release, leaf blocks placed by players or endermen no longer started decaying.
The leaf decay mechanics have not changed substantially since 1.0. In Java Edition 1.13, leaves were changed to only start decaying 6 blocks away from any log or wood block. Prior to this change, the distance is 4 blocks. This shorter distance is also still used in Bedrock Edition.