A common question that always comes up with Minecraft is whether or not Sugarcane grows faster on sand than it does on dirt. Well, we have an answer to this question and it’s not something that most people would expect.
For those who don’t wish to scroll the short answer is no. If you are looking for sources and evidence keep on reading below.
Consulting the Wiki
If you have read the entry on the Minecraft wiki you will first notice that there is no reference to Sugarcane growing any faster on sand than it does on dirt. Such information is commonly found in the Trivia section but from what we can tell there is no sign of such information. However, the wiki does state the following.
A freshly planted cane – and a cane which has just grown cane above it – each have an age of 0.
The age is incremented at random intervals.
At age 15, a cane may try to grow more cane above it.
With the above information, we know that the growth of Sugarcane is not the same as it is a random interval for instance. Let’s say it takes 60 ticks to get to the next level in growth. Sometimes the Sugarcane can tick once or twice and it’s completely independent of the surface that it is placed on (excluding mods).
Consulting Video Evidence
In the above video, we can get the breakdown of growth in seconds like this. (the larger number is faster)
Dirt Block: 2.18/second
Grass Block: 2.31/second
Now, before people scream that this means it grows fastest on grass, refer back to the wiki or the above excerpt. The growth pattern is random and this data still falls within the margin of randomness. If the number was larger say 3.25/second or something considerably faster such as these claims suggest, then it would be reasonable to say it does faster on said surface. Due to the small differences in growth rates, though, it’s safe to say that its random.
What Does The Source Code Say?
The code should look similar to what is shown below.
if the block above is air then
var n = 1
increase n with 1 for each sugarcane block above the current one
if n < 3 then
if metadata = 15 then
place block on top of cane stack
set metadata to 0
increase metadata with 1
In laymen’s terms, this simply means that the block update function only checks for an air block above and no more than two sugar cane blocks below. It does not care about what kind of block it is planted on, light level, weather, or anything else.