Will monsters spawn on top of trees?
Update: According to Notch's blog post about changes coming in 1.6, the torches-on-fast-leaves bug is getting fixed:
- Fixed buttons and levers being placeable on leaves in “fast graphics” mode
This means that monsters can no longer spawn on leaves, either, as they are always considered transparent, even when using Fast graphics.
Monsters can spawn on any solid, non-transparent block which is at light level 7 or lower.
Signs, torches, rails, and the like are ignored when spawning monsters; they'll spawn on the block underneath just fine. This is why one-block-wide railways need to be lit.
Transparency means whether or not light passes through a block rather than whether you can see through it. Half-blocks, doors, stairs, and glass all count as transparent and prevent monster spawning. Leaves, oddly, count as transparent only when Fancy graphics are enabled. An easy way to test a block for transparency is to try placing a torch or sign on it — neither can be placed on transparent blocks. (Meaning that torches can be placed on leaves with Fast graphics, but not with Fancy.)
Torches put out light level 14, so monsters can't spawn within 5 blocks of a torch orthogonally or 3 blocks diagonally. If you put your torches in a diamond pattern, they can be up to 9 blocks apart, but it's best to move them closer than that on uneven terrain. (I use 5 myself.)
If you like, you can actually torch your treetops by changing your graphics to Fast, placing the torches, and switching back. Your torches will stay rooted, even though you wouldn't normally be able to place them that way. Personally, I think it makes them look rather cheerful. :-)
I created a test world in MCEdit consisting of 40x40 chunks (640x640 blocks) and filled it with a layer of leaves.
I then loaded the world into Minecraft 1.8.1, set the difficulty to Normal and the graphics to Fancy, and waited until nightfall:
Once nightfall hit, I found no mobs anywhere:
This corresponds to what the old behavior was. However, when I switched over to Fast graphics, I found nothing as well:
So I decided to dig a hole to act as a control:
And sure enough, the mobs started spawning once I moved 24 blocks away:
My, that's a very nice test world you have there. It'd be a shame if someone were to...blow it up. Again, this is still on Fast graphics. For good measure, I looked away from the mob hole, and again, found zero mobs spawning:
So in conclusion, no, hostile mobs cannot spawn on leaves—regardless of your graphics settings—in Minecraft Beta 1.8.1.
If you'd like to test this yourself, you can download my test world.