The bug
Lava cannot light the following (otherwise flammable) blocks on fire:
coal blocks
hay bales
dried kelp blocks
small flowers
sweet berry bushes
scaffolding
targets
saplings
azalea
cave vines
dripleaf
hanging roots
spore blossoms
hanging signs
pink petals
glow lichenFixed
How to reproduce
Place lava somewhere without existing flammable blocks to spread fire to.
Place coal blocks anywhere in, around, or above the lava, with air blocks adjacent where fire should be able to light.
Watch the coal never burn.
Increase the rate of fire spread 100x, using
/gamerule randomTickSpeed 300
, just to be sure.
Code analysis – MCP 9.35 (1.11) names
It's because lava and fire use different ways to tell if a block is flammable:
1.
Lava (net.minecraft.block.BlockStaticLiquid
) decides whether to light a block on fire by consulting the block's Material, by calling net.minecraft.block.material.getCanBurn(World worldIn, BlockPos pos)
.
Coal is Material.ROCK
, hay and dried kelp blocks are Material.GRASS
, and 1-block flowers are Material.PLANTS
. These materials will tell lava that those blocks cannot burn.
Incidentally, this is the only place .getCanBurn()
is used.
2.
Fire (net.minecraft.block.BlockFire
) decides whether to spread to a block by consulting its own hard-coded list of burnable blocks, by calling its own method .canCatchFire(IBlockAccess worldIn, BlockPos pos)
– and this has nothing whatsoever to do with block material.
Coal, hay, dried kelp and the flowers are all on that list.
Incidentally also, that is the only place .canCatchFire()
is used.
Linked issues
is blocked by 1
relates to 1
Attachments
Comments 23
Despite whether they were fixed in 19w45b, 1-block flowers and sweet berry bushes (mentioned above) are still bugged, still do not catch from lava in 1.15 pre3.
Can confirm for 1.20 Pre-release 1.
For glow lichen, it is fixed, however.
Also: saplings and hanging signs are not subject to this bug, as they are not flammable.
Confirmed also for hay bales and 1-block flowers.