Creating a moving platform

From Valve Developer Community
Revision as of 15:43, 8 February 2008 by Rullaf (talk | contribs) (Removal of second [code]we[/code].)

Jump to: navigation, search



In this tutorial you will learn how to create a moving platform.

Setting up the model

You will need one from these models

  • This one is bigger: models/props/light_rail_platform.mdl .
  • This one is smaller models/props/light_rail_platform_02.mdl .
  • After you have decided witch one is better for you, name it platform_model.
  • Set its parent to platform_func, which we'll create next.

Creating functions

Moving platform system.jpg

Create brush with dimensions of chosen platform. It’s not necessary, but it will surely work. Tie it to func_door entity by pressing Ctrl-T, and set its variables as follows:

Property Name Value
Change angles this is up to you, I’m using: never (fixed orientation)
Change velocity too, it’s your choice, but: ease in/ease out
First stop target P1_S1_M
Initial speed 100
Max speed 10 000
Name platform_func

And, you may set sounds:

Property Name Value
Start sound Doors.Move12
Stop sound Doors.FullClose12

Path tracking

Our platform is using the path_track entities to specify its movement course, so we have to add these now. You can see the architecture we will use.

Create a set of path_tracks, configuring them as follows:

Property Name Value
Name P1_S1_M
New train speed 30
Next stop target P1_S1_O
Property Name Value
Name P1_S1_O
New train speed 200
Next stop target P1_S2_I
Property Name Value
Name P1_S2_I
New train speed 30
Next stop target P1_S2_M
Property Name Value
Name P1_S2_M
New train speed 30
Next stop target P1_S2_O
Property Name Value
Name P1_S2_O
New train speed 200
Next stop target P1_S1_I

Place them as necessary but make sure they are linked, as shown by a yellow line in Hammer's viewports.

Final touches

Now you have a working platform, so we can add a few models to support it. That oval-shaped object is used on walls, so it's easy to add to your map. The second model looks better, you may even add that stand under it.

See also