Creating an incinerator: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Cleaning up grammer, etc. Havn't mapped much for Portal, so I can't say about accuracy.)
(Continuing work.)
Line 3: Line 3:
In this tutorial you will learn how to make an Aperture Science Emergency Intelligence Incinerator which will trigger a event when a something is put inside.
In this tutorial you will learn how to make an Aperture Science Emergency Intelligence Incinerator which will trigger a event when a something is put inside.


=== The Incinerator ===
=== Step 1 - The Incinerator ===
The first step would be  
The first step would be to create the incinerator model.


<ol>
<ol>
<li>Create a [[prop_dynamic]] with "World Model" set to "<code>models/props_bts/glados_aperturedoor.mdl</code>". Name it "<code>incinerator</code>"<!-- for now>. Make a room under it textured with "<code>metal/metalwall048c_gradient</code>" for the walls and "<code>lights/light_orange001</code>" for the floor of it. now make a 2 unit tall brush (that is as wide the long as the bottom of your room) using the "<code>tools/toolstrigger</code>" texture. tie it to a [[trigger_once]] entity with the following properties:
<li>Create a [[prop_dynamic]] with "World Model" set to "<code>models/props_bts/glados_aperturedoor.mdl</code>". Name it "<code>incinerator</code>"<!-- for now-->.</li>
<li>Make a room under it with the walls textured with "<code>metal/metalwall048c_gradient</code>" and the floors textured with "<code>lights/light_orange001</code>". Make a 2 unit tall brush covering the bottom of the room textured with "<code>tools/toolstrigger</code>".</li>
<li>tie it to a [[trigger_once]] entity with the following properties:
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 15: Line 17:
| Filter Name || (name of box)
| Filter Name || (name of box)
|-
|-
|}
|}</li>
 
=== make it solid ===
unfortunately, if you leave it as is, it is not solid. so what i did in my map is that i placed invisible brushes all around and on it. this may take a while, but it looks really cool in-game.


== the door ==
== the door ==

Revision as of 20:29, 30 December 2009

Portal Level Creation

Introduction

In this tutorial you will learn how to make an Aperture Science Emergency Intelligence Incinerator which will trigger a event when a something is put inside.

Step 1 - The Incinerator

The first step would be to create the incinerator model.

  1. Create a prop_dynamic with "World Model" set to "models/props_bts/glados_aperturedoor.mdl". Name it "incinerator".
  2. Make a room under it with the walls textured with "metal/metalwall048c_gradient" and the floors textured with "lights/light_orange001". Make a 2 unit tall brush covering the bottom of the room textured with "tools/toolstrigger".
  3. tie it to a trigger_once entity with the following properties:
    Property Name Value
    Name trigger_door1
    Filter Name (name of box)
  4. the door

    now we must create a door for our incinerator to open.

    the door frame

    Create a prop_static in your door way. The World Model should be set to "models/props/door_01_frame_reference.mdl" or "models/props/door_01_frame_wide_reference.mdl" (which ever one floats your boat).

    the doors

    Create a prop_dynamic with the following settings:
    
    Property Name Value
    World Model models/props/door_01_lftdoor_reference.mdl
    Name door_l(that's an L, not a 1)

    put it in the left side of the door frame.

    2. Create a 12Wx56Lx104H block brush with texture nodraw centered and inside the door model. Tie it to a func_door entity with the following settings:

    Property Name Value
    Name door_1(this time it's a 1, not an L)
    Speed 250
    Stop Sound Doors.FullClose8
    Delay before Reset -1
    Lip 12
    Move Direction (This will be different for which way your door is facing)

    Also make sure that you un-check Touch opens under Flags.

    The best way to ensure you have the correct Move Direction is to first mark the direction on the circular indicator, then round to the nearest 90 degrees (so long as your doors are intended to be square with the Hammer coordinate system).

    Note.pngNote:You can also put a blocking damage if you don't want the player to get stuck inside it. Also, you can turn on Forced Closed for it to close even if the player tried to jam it open with a camera or cube.
    Final door.

    3. Repeat steps 1-3 but change the following: For the prop_dynamic:

    Property Name Value
    World Model models/props/door_01_rtdoor_reference.mdl
    Name door_r

    And for the func_door:

    Property Name Value
    Name door_2

    4. Set the parent of door_l (the prop_dynamic) to "door_1". Also set the parent of door_r to "door_2".

    now you must choose between a trigger or a switch to open your incinerator.

    the trigger

    create a brush with the "tools/toolstrigger" texture. Place it where your player will have to go to turn on the incinerator. Tie it to a trigger_multiple entity with the following settings:

    Property Name Value
    Name trigger_incinerator
    Delay Before Reset anywhere inbetween 5-10 seconds

    and the following outputs:

    My Output Target Entity Target Input Parameter Delay Only Once
    Io11.png OnStartTouch incinerator SetAnimation Open 0.00 No
    Io11.png OnStartTouch incinerator SetAnimation Close 4.00 No

    OPTIONAL the switch

    create a prop_dynamic with the following settings.

    Property Name Value
    Name button_incinerator.mdl
    World Model models/props/switch001.mdl

    Now create a 16Lx16Wx12H brush textured with either the "tools/toolsinvisible" texture or the "tools/toolsnodraw" and place it right on top of where the player will have to press. Tie it to a func_button entity with the following settings:

    Property Name Value
    Name button_incinerator

    and make it have the following outputs:

    My Output Target Entity Target Input Parameter Delay Only Once
    Io11.png OnPressed incinerator SetAnimation open 0.00 No
    Io11.png onPressed incinerator SetAnimation close 4.00 No

    still not done... i'll edit it again when i have time.

    See also