Difference between revisions of "Creating a moving platform"

From Valve Developer Community
Jump to: navigation, search
m (Removal of second [code]we[/code].)
m (Creating functions)
Line 12: Line 12:
 
== Creating functions ==
 
== Creating functions ==
 
[[Image:moving_platform_system.jpg|right|320px]]  
 
[[Image:moving_platform_system.jpg|right|320px]]  
Create brush with dimensions of chosen platform. It’s not necessary, but it will surely work. Tie it to <code>func_door</code> entity by pressing <code>Ctrl-T</code>, and set its variables as follows:
+
Create brush with dimensions of chosen platform. It’s not necessary, but it will surely work. Tie it to <code>func_tracktrain</code> entity by pressing <code>Ctrl-T</code>, and set its variables as follows:
  
 
::{|
 
::{|
Line 42: Line 42:
 
|  
 
|  
 
|}
 
|}
 +
 +
''Notes: changed <code>func_door</code> to <code>func_tracktrain</code>.''
  
 
== Path tracking ==
 
== Path tracking ==

Revision as of 15:51, 18 February 2008

Introduction

Width:64

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_tracktrain 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

Notes: changed func_door to func_tracktrain.

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