Gamasutra.com Features - Design Document: Play With Fire
It's free to join Gamasutra!|Have a question? Want to know who runs this site? Here you go.|Targeting the game development market with your product or service? Get info on advertising here.||For altering your contact information or changing email subscription preferences.
Registered members can log in here.Back to the home page.

Search articles, jobs, buyers guide, and more.

Gamasutra
February 20, 2007

Design Document: Play With Fire

arrowrightPage One
arrowrightPage Two
arrowrightPage Three
arrowrightPage Four
arrowrightPage Five

Printer Friendly Version (*.doc)




Latest Letters to the Editor:
Perpetual Layoffs by Alexander Brandon [09.21.2007]

Casual friendliness in MMO's by Colby Poulson [09.20.2007]

Scrum deals and 'What is Scrum?' by Tom Plunket [08.29.2007]


[Submit Letter]

[View All...]
  


Design Document: Play With Fire


3.       Environment

3.1.        Components

3.1.1       Blocks

The environment is entirely constructed out of 1 unit cubes (actually about 4 m per side, therefore 1 unit = 4 m). These cubes have different colours, and are textured to resemble specific materials.

 

3.1.2       Objects

Objects are simply clusters of blocks. For instance, a vertical column of ten blocks is an object. Four such columns with a flat plane of blocks across the top is a ‘Table’ object.

Clearly, because objects are made of cubic blocks, they are abstract in nature, but the player will still be able to make out what these objects represent.

 

3.2.        Gravity

Gravity always pulls blocks and objects downwards. The gravity value is 10 units per second per second, with a terminal velocity of 5 units per second.

Objects fall vertically downwards until any one of their constituent blocks hits another block underneath – then they stop. This applies, even if the resultant structure would look physically impossible. As long as there is a block underneath, the object will balance where it is.

 

3.3.        Types of Block

The following are the types of Block that all objects are made of:

 

Block Type

Block Colour

Melt

Burn

Burn Time

Ignition Time

1: Leaf

Green

No

1: Yellow Hot

10 seconds

0.1 seconds*

2: Wood

Brown

No

2: Orange Hot

15 seconds

1 second

3: Coal

Black

No

3: Red Hot

60 seconds

1 second

4: Plastic

Pink

2: Orange Hot

3: Red Hot

15 seconds

1 second

5: Metal

Blue

4: Blue Hot

5: White Hot

90 seconds

1 second

6: Stone

Grey

5: White Hot

No

–

–

7: Fire

Red

No

No

–

–

*In fact, ignites slower except when exposed to extreme heat.

Note

No block may ever be at a heat level higher than that shown in its Burn column or Melt column (whichever is higher).

 

The following table shows the tints of blocks when they are melted or burning:

Block Type

Block Colour

Melted Texture

Meted Tint

Burning Texture

Burning Tint

Leaf

Green

–

–

Burning Leaves

Yellow

Wood

Brown

–

–

Burning Wood

Orange

Coal

Black

–

–

Hot Coals

Red

Plastic

Orange

Molten Plastic

Orange

Burning Plastic

Red

Metal

Blue

Molten Metal

Blue

White-hot Metal

White

Stone

Grey

Lava

White

–

–

 

3.4.        Burning

3.4.1       Ignition

The temperature at any point in the game field (for the purposes of checking for ignition) is based upon the temperatures of the surrounding blocks. The process of determining if any given block ignites is as follows:

·          Check for neighbouring blocks of the same material that are on fire, and have been burning for at least as long as the ignition time. If they exist, the current block catches fire.

If not, calculate the Effective Temperature for that block:

·          Burning blocks within 1 unit (including diagonals which are technically 1.4 units away) provide 0.5 of their burn temperature.

·          Burning blocks within 2 units (including diagonals which are technically 2.8 units away) provide 0.1 of their burn temperature.

·          Burning blocks within 3 units (including diagonals which are technically 4.2 units away) provide 0.02 of their burn temperature.

Blocks are only counted as Burning if they have been on fire for at least as long as the ignition time for their relevant material.

If the temperature at any given point is higher than the required temperature for ignition for any given block, it catches fire (and then burns at the same temperature as its ignition).

Note

The three parametric values above are the temperature radiation coefficients (TRC1, TRC2 and TRC3). The values given should be considered default values – tweaking will be required.

 

Ignition takes 1 second. During this time, the block is considered to be at 0 temperature (not at its burning temperature). Only once it is alight does it take on its new temperature.

For example, consider the following example (in 2 dimensions):

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 seconds: The tree begins burning at the centre top (as indicated by the ‘1’ – which is the temperature for burning leaves):

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 second: The neighbouring blocks immediately ignite. The blocks around have temperature determined only by the originally burning block:

 

 

 

(1)

1

(1)

 

 

 

 

 

 

0.1

(1)

(1)

(1)

0.1

 

 

 

 

 

0.1

0.1

0.1

0.1

0.1