Jump to content

  • Curse Sites
Become a Premium Member! Help
Latest News Article

Predicting And Preventing Fire Spread


  • Please log in to reply
69 replies to this topic

#1

Forever A Troll
  • Location: Sweden

Posted 19 May 2011 - 06:36 PM

*
POPULAR

Notes/disclaimers:
  • All information in this thread has been discovered and confirmed by extensive testing. However, there is still a possibility that I'm wrong on some point, so don't go building a fireplace in your log cabin without making a backup and then raging at me when it burns down.
  • Also, please be aware that updates may change anything in this thread(without notice in the update description; there's plenty of stuff that's changed without it being mentioned there).


INTRODUCTION

I allways laughed at all those threads with people complaining after their houses burned down. It's just common sense not to place anything flammable near fire, right? However, today a wool block near my chimney catched on fire, even though it was five or six blocks away from the flame, and eventually, more than half of my base was burned to the ground. So I guess this is my contribution to the ever-growing list of  "HAY GUISE MAH WOODN CASTEL BURNT DOWN" threads... But! Instead of just bitching at the forums because Notch made fire behave in a realistic(kind of) way, I decided to prevent further accidents by studying the way fire spreads. In this thread, I will share the results of my experiments, in an attempt to help other fellow Minecrafters, and reduce the amount of the above mentioned threads. (They're staring to become more annoying than the "WAT HEROBRIN" and "TIS UPDATE IS CARP" threads.)

*ahem* Anyways, let's continue with the subject, shall we?


BEFORE WE START HOWEVER...

There are a few things I should explain before I continue.

First off, the embers from fire and lava are purely visual effects, and have nothing to do with fire spread.

Secondly, fire being "attached" to a block is a purely visual effect as well. A fire block will burn all adjacent flammable blocks, always. In many cases, the graphic for the fire block will show this as well, but if there is a solid block beneath it, there will be no visual indication that the blocks on the side and/or above it are burning as well.

Thirdly, blocks do not prevent fire from spreading through them, so even if you add a stone roof above your fire, wood above that will burn.

And finally, before continuing, you must understand that fire is a block, just like torches or signs, and where fire can spread is not decided in the code by defining what blocks are close enough to catch ablaze, but by what blocks are close enough to place a fire block in.


WHERE THE FIRE CAN SPREAD

Around one fire block, any block within a 3x3x6 area is subject to fire spreading. If any of these blocks is an air block adjacent to a flammable block, a fire block will(or, can) be placed in that space. This 3x3x6 area is positioned like so: (In this scematic as well as future ones, the torch represents the original fire block, and the flames are blocks to wich the fire can spread.)

:VV: :VV: :VV:
:VV: :VV: :VV:
:VV: :VV: :VV:
:VV: :VV: :VV:
:VV: :--+: :VV:
:VV: :VV: :VV:

Note that these are the blocks that fire blocks can be placed in, not the blocks that can be set on fire, so...

:--+: :: :wood:

...is NOT safe! The side of the planks can catch on fire so that the fire block is within the area seen in the previous scematic, like so:

:--+: :VV: :wood:

As long as no flammable blocks are placed adjacent to air within the 3x3x6 area, the fire will not spread. Don't forget that the bottom of a block can be set on fire too!

Lava(both flowing and source blocks) works in a similar way, except having a differently shaped area to wich it can spread fire:

:VV: :VV: :VV: :VV: :VV:
:: :VV: :VV: :VV: ::
:: :: :Lava: :: ::

However, for lava, it seems to be a bit more complicated. Completely encased lava(including corners) does not spread fire at all.

Edit: The information on lava below appears to be slightly incorrect. Don't worry though, because all this means is that a few blocks in the danger zone won't be at risk of fire spread sometimes, even though they should if this was completely correct. So really, it just means you're more safe from fire accidents!

It appears that it's actually the blocks ABOVE lava that spread the fire.

:Red: :Red: :Red:
:: :Lava: ::

:Red: = The blocks from wich the fire spreads.
(To clarify, that is a 3x3x1 area.)

Every one of these blocks spreads fire if and only if they are nonsolid(Remember, signs and pressure plates are actually solid, even though they do not have a collision mass.), in this pattern, together producing the pattern for an unenclosed lava block seen above:

:VV: :VV: :VV:
:: :Red: ::

This apparent attempt to simulate that the embers are causing the fire means that the only part of creating a lava lamp or something like that where fire could spread is the construction, and even that can be prevented if you put some thought into it.

Note that the :Red: blocks can become fire blocks as well, if they are air. You are free to imagine one of the following reasons for this(there is no difference between the practical outcomes of the two):
  • The lava block itself acts as a :Red: block as well.
  • The :Red: blocks can spread fire to themselves.
It is actually none of these, but the way it works in the code is even more complicated and there's no need to go over it here.

FIRE PREVENTION

The most obvious way to prevent fire accidents is of course to never light anything near a flammable block on fire. However, sometimes you can't (or rather, do not want to) avoid this...

An interesting effect of the fact that fire is a full block(and not an entity) is that it cannot occupy the same block space as any other block, including torches, wines, and signs. (Note that paintings are entities, so those won't prevent fire from occupying the same block, just like you can place torches, etc. in blocks occupied by paintings. If fire occupies the same block as [a part of] a painting, the block behind it will still burn, and the painting will break.) This means that you can protect flammable blocks by placing such objects so that they occupy the block where fire could spread. ANY block is fine, even lava or fire... but preventing fire from being placed somewhere by placing fire obviously doesn't help you. With this technique, I actually created a fireplace in my Tree of Life. (Shameless plug: Check out the Tree Spirit Challenge!)

If you're a bit creative, incorporating signs, flowers, etc. into your designs around fireplaces and such is actually pretty simple. But with bigger buildings, you can't always do that. In the Tree Spirit thread, I recently read a great idea by Lilariel for how to still prevent the entire thing from burning down if there's an accident. I'd been thinking along the same lines for a while, but never thought of doing this exact thing. The idea is that between every floor, you add one layer of water, like this:

Posted Image
(etc.)

Water between walls can help too. As long as it will flood a part of the structure when the planks(or logs, or wool, or whatever else that burns) are destroyed, it works.

For lava, simply enclosing it is enough. (Don't forget the corners!) All solid blocks can be used for this. As a general rule for nonsolid blocks, if water does not destroy it and blocks can be placed against it, they work to stop the fire from spreading "from" them(they will however prevent it from spreading to them). Note that fluids and portals are considered a separate category here, but they also allow fire to spread from them in the same way.
All other rules for preventing fire spread apply to lava too.

Oh, and one final PRO TIP before we move on to the next section: Wooden slabs are not flammable; they're just stone slabs with a different texture. UPDATE: Two stacked wooden slabs will now become flammable.


THINGS TO WATCH OUT FOR
...and ways to prevent them from happening.


There are a few things that even those experienced with fire in Minecraft and the game in general sometimes do not know or forget, but while they can be disastrous in some cases, protection against their effects is pretty simple.

1. Never assume that a block is safe just because you placed it near fire and it didn't burn in 10, 20, 30, or even 60 minutes. When a fire block is placed(by the game of course, unless the player has hacked it into their inventory), it and the blocks around it are updated for fire spread frequently for a short while, and the fire will probably spread if it can. But if the fire was updated all the time, that could cause a lot of lag, so after a while, this stops. If a block then is placed near the fire, it will not be "noticed" until the fire block updates, wich only happens if a block directly adjacent to it is placed, destroyed, or modified, or at very rare random block updates. However, while it may take a long time, the fire WILL spread eventually.

Solution: Always try to remember the area at risk of fire spread. If you still have to perform tests, place the blocks before you light the fire to get an accurate result within a reasonable time.


2. Do not expose flammable blocks to the sky. If lightning strikes, the rain may end before the fire is extinguished, and the fire could also spread to other places before it's put out.

Solution:Make as much as possible of the roof of stone or other blocks that do not burn. (Note that they will still be on fire for a very brief moment, but even if the rain stops, the fire will be removed very quickly because the block it's on can't actually burn.) Lightning can only strike blocks directly beneath the sky(similarly to how sun/moonlight is calculated), so for big, wooden, structures, a way to do this without ruining the look of the building when seen from the ground or the inside of the building(top floor) is to add another layer above the roof, where everything but the outer edges is non-flammable. If there is an inner roof, this is the only outer roof that has to be made. The wooden edge can be protected with the techniques described a while back(torches look pretty good in most cases).

You might also want to make use of the PRO TIP about wooden slabs.


3. Due to inconcistency in the code, fire can spread to a few blocks such as chests, but not burn them. This means that fire placed next to a chest and no flammable materials will disappear after a short while. However, in that time it can spread other flammable blocks. (Fire blocks will also never "attach" to chests visually.)

Solution: Just consider chests regular flammable blocks, even though they're actually not.


4. Using Flint and Steel to open the door to your giant wool castle on top of a cloud made out of even more wool can have unpleasant effects.

Solution: Don't do it.


CONCLUSION


It took a lot of work to write this post(and it doesn't even cover everything I want it to yet). A lot of it was of course the different tests and experiments needed to find out everything in this thread, but thanks to the new forums, I had to rewrite the post three times as well. Now that it's finally done(pretty much), I hope that you enjoyed reading it, and, well...

Don't burn down your house. :) <-Fugly new smileys are fugly.

Post last edited at 13:42 UTC, February 16, 2012. Up to date for Minecraft 1.1.
Posted Image
"He's the hero Minecraft Forums deserves, but not the one it needs right now. So, we'll hunt him, because he can take it. Because he's not our hero. He's a silent guardian. A watchful protector. A SilverMatt."

Register or log in to remove.

#2

robly18
    robly18

    Obsidian Miner

  • Members
  • 1416 posts

Posted 19 May 2011 - 06:46 PM

This.
Is.
So.
Awesome.

TISA
Posted Image

#3

Sievel
    Sievel

    Stone Miner

  • Members
  • 77 posts

Posted 19 May 2011 - 07:13 PM

TISA!

No really thanks for the "science"  :Sheep:

#4

0utlawGrrl

Posted 19 May 2011 - 07:36 PM

I have a question.

I have a creeper rug near what will become my fireplace in SMP once the nether is implemented. The wool blocks are about three blocks away from the fireplace. Is this safe and, if not, how can I make it safe?

Posted Image
Just a girl in Minecraft.
Posted Image

#5

Forever A Troll
  • Location: Sweden

Posted 19 May 2011 - 09:13 PM

View Post0utlawGrrl, on 19 May 2011 - 07:36 PM, said:

I have a question.

I have a creeper rug near what will become my fireplace in SMP once the nether is implemented. The wool blocks are about three blocks away from the fireplace. Is this safe and, if not, how can I make it safe?

Posted Image
It's safe. And that creeper rug looks great by the way! :SSSS:

It seems I forgot to post about it when I added the info about lava. Besides that, I also fixed some spelling errors and replaced the in-forum links that are extremely bugged and link to random posts instead of specific topics with regular links.
Posted Image
"He's the hero Minecraft Forums deserves, but not the one it needs right now. So, we'll hunt him, because he can take it. Because he's not our hero. He's a silent guardian. A watchful protector. A SilverMatt."

#6

Kathyrria
  • Minecraft: Blazinfox555

Posted 21 May 2011 - 06:53 AM

This is really good info, unfortunately it's late at night and I'm not processing it very well, but I shall continue in the morning.  I am also doing the Tree Spirit Challenge so I really appreciate you putting so much effort into this!

#7

Forever A Troll
  • Location: Sweden

Posted 21 May 2011 - 10:29 PM

View PostKathyrria, on 21 May 2011 - 06:53 AM, said:

This is really good info, unfortunately it's late at night and I'm not processing it very well, but I shall continue in the morning.  I am also doing the Tree Spirit Challenge so I really appreciate you putting so much effort into this!
Thanks! A lot of work went into this.

Btw, uploading files from my computer finally seems to work again, so here are some pictures of a completely safe burning block of netherrack. (This is the prototype I made in a different world to make sure it really worked.)

Posted Image
Posted Image
Posted Image
Posted Image

(Note that the block above the fire is glass as well.)

This design uses a very simple principle: The fire cannot spread if there are no free spaces adjacent to flammable blocks for it to spread to. Every air block within the danger zone is simply filled in with logs. (Except the blocks next to the fire, because then they would burn away, creating an air pocket that would allow the fire to spread.)

The logs can be replaced with any other material(Solid, of course.), the glass can be relaced with any non-flammable block(But you'd want to leave at least one glass block so you can actually see the fire.), and the netherrack can be replaced with... well, nothing. It obviously has to be netherrack.

For lightning in the floor, you could just have glass with fire below it, and something that doesn't burn on all sides of the fire and in a 3x3 square surrounding the glass. But don't do that if you have a low roof/wall nearby... :VV:
Posted Image
"He's the hero Minecraft Forums deserves, but not the one it needs right now. So, we'll hunt him, because he can take it. Because he's not our hero. He's a silent guardian. A watchful protector. A SilverMatt."

#8

Lilariel
    Lilariel

    Retired Murderator

  • Retired Staff
  • 414 posts
  • Location: Norway
  • Minecraft: Lilariel

Posted 21 May 2011 - 11:01 PM

Quote

I recently read a great idea for how to still prevent the entire thing from burning down if there's an accident. I'd been thinking along the same lines for a while, but never thought of doing this exact thing. The idea is that between every floor, you add one layer of water, like this:

Amgs, my idea is teh interwebs hero!  :Notch:

Lots of useful information here, I'll be bookmarking this for future reference!
The most wonderful thing about science is that it doesn't ask for your faith, it asks for your eyes. The universe doesn't care about what you believe.

#9

Forever A Troll
  • Location: Sweden

Posted 21 May 2011 - 11:22 PM

View PostLilariel, on 21 May 2011 - 11:01 PM, said:

Amgs, my idea is teh interwebs hero!  :Notch:

Lots of useful information here, I'll be bookmarking this for future reference!
Yeah, it's a great idea. If i ever fail to follow my own advice, now only a small part of my tree will burn up, instead of the whole thing!

I edited the post to give you credit for it, by the way. :)
Posted Image
"He's the hero Minecraft Forums deserves, but not the one it needs right now. So, we'll hunt him, because he can take it. Because he's not our hero. He's a silent guardian. A watchful protector. A SilverMatt."

#10

Whatyr
    Whatyr

    Zombie Killer

  • Members
  • 198 posts
  • Minecraft: Whatyr

Posted 21 May 2011 - 11:29 PM

View Post0utlawGrrl, on 19 May 2011 - 07:36 PM, said:

I have a question.

I have a creeper rug near what will become my fireplace in SMP once the nether is implemented. The wool blocks are about three blocks away from the fireplace. Is this safe and, if not, how can I make it safe?

Posted Image
If you aren't sure, the move it back. Better safe than sorry, right? Dont want that awesome creeper rug to burn!
butts

#11

Elmach
    Elmach

    Lapis Lazuli Collector

  • Members
  • 959 posts

Posted 21 May 2011 - 11:30 PM

I have to point out something about lava:

Lava embers do put stuff on fire. It's been proven multiple times.

#12

NZPhoenix
    NZPhoenix

    Lapis Lazuli Collector

  • Members
  • 943 posts
  • Location: On a beach holding a cubic meter of sand...
  • Minecraft: NZPhoenix

Posted 21 May 2011 - 11:36 PM

View PostElmach, on 21 May 2011 - 11:30 PM, said:

I have to point out something about lava:

Lava embers do put stuff on fire. It's been proven multiple times.

They don't. I just ran a test. I watched 5 lava embers hit 4 different blocks of wool. None of them started on fire, but another block did. If you see blocks catch fire that haven't been hit with embers, and blocks that have been hit with embers not catch fire, you have to conclude that the embers don't spread the fire.

Posted Image


#13

Fluffy456

Posted 21 May 2011 - 11:53 PM

This is amazing

Your effort and time is very much appreciated.

You Sir, Are Awsome.

#14

Tehgreatblade
  • Location: United States of America
  • Minecraft: jordan719672

Posted 22 May 2011 - 12:12 AM

You + phoenix = minecraft unraveled.

Enjay said:

Calling someone an idiot for no good reason is even more idiotic.  Accepting people calling each other idiots all the time is idiotic.  This place is often a cesspool of idiots running around insulting each other.
I am occasionally a writer and I talk politics often, I also consider myself to be a lot more mature and literate than others my age. But, I will allow you to decide that Haha.

#15

Piejacker875
  • Location: Retarded States of 'Mericah
  • Minecraft: Piejacker875

Posted 22 May 2011 - 12:23 AM

View PostElmach, on 21 May 2011 - 11:30 PM, said:

I have to point out something about lava:

Lava embers do put stuff on fire. It's been proven multiple times.
Ughh. Someone just search the dang code already.
See my "About Me" page. Signatures are now way too restrictive. I'm an oompa loompa. 20% more chocolate than you.

#16

Forever A Troll
  • Location: Sweden

Posted 22 May 2011 - 12:43 AM

View PostNZPhoenix, on 21 May 2011 - 11:36 PM, said:

View PostElmach, on 21 May 2011 - 11:30 PM, said:

I have to point out something about lava:

Lava embers do put stuff on fire. It's been proven multiple times.
They don't. I just ran a test. I watched 5 lava embers hit 4 different blocks of wool. None of them started on fire, but another block did. If you see blocks catch fire that haven't been hit with embers, and blocks that have been hit with embers not catch fire, you have to conclude that the embers don't spread the fire.
I can confirm this. The reason why is sometimes appears as if embers put blocks on fire is that under the most common circumstances(lava pools), the only blocks at risk of being put on fire are those right next to the lava, on the same level. These blocks are also the only ones(except for lava blocks of course) that are hit by embers.

View PostFluffy456, on 21 May 2011 - 11:53 PM, said:

This is amazing

Your effort and time is very much appreciated.

You Sir, Are Awsome.

View PostTehgreatblade, on 22 May 2011 - 12:12 AM, said:

You + phoenix = minecraft unraveled.
Thank you both! i appreciate it. :)

View PostPiejacker875, on 22 May 2011 - 12:23 AM, said:

Ughh. Someone just search the dang code already.
It's been done. Lava embers are particles, and there is no code for collision detection between particles and blocks. This means that the game never "knows" that a particle hits a block, so that can't be a trigger for any action, such as placing a fire block.
Posted Image
"He's the hero Minecraft Forums deserves, but not the one it needs right now. So, we'll hunt him, because he can take it. Because he's not our hero. He's a silent guardian. A watchful protector. A SilverMatt."

#17

Elmach
    Elmach

    Lapis Lazuli Collector

  • Members
  • 959 posts

Posted 22 May 2011 - 01:52 AM

View PostForever A Troll, on 22 May 2011 - 12:43 AM, said:

I can confirm this. The reason why is sometimes appears as if embers put blocks on fire is that under the most common circumstances(lava pools), the only blocks at risk of being put on fire are those right next to the lava, on the same level. These blocks are also the only ones(except for lava blocks of course) that are hit by embers.



Thank you both! i appreciate it. :)


It's been done. Lava embers are particles, and there is no code for collision detection between particles and blocks. This means that the game never "knows" that a particle hits a block, so that can't be a trigger for any action, such as placing a fire block.
Oh. I could have sworn somewhere that there was proof. Ah well.

#18

bash_stampeede
  • Location: Hell on Earth
  • Minecraft: bash23

Posted 22 May 2011 - 02:02 AM

Thanks
Posted Image

#19

Xander3838
  • Minecraft: Xander3838

Posted 22 May 2011 - 03:55 AM

View Post0utlawGrrl, on 19 May 2011 - 07:36 PM, said:

I have a question.

I have a creeper rug near what will become my fireplace in SMP once the nether is implemented. The wool blocks are about three blocks away from the fireplace. Is this safe and, if not, how can I make it safe?

Posted Image
What texture pack is that? It looks really good.

#20

Teh Rhio
  • Location: Places that shall not be named
  • Minecraft: TehRhio

Posted 22 May 2011 - 04:11 AM