Creating a moving platform
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
Create brush with dimensions of chosen platform. It’s not necessary, but it will surely work without any bugs. 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
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.
- Moving platform mdl 01.jpg
- Moving platform mdl 02.jpg
- Moving platform mdl 03.jpg
See also
- Moving platform - an example map for the above tutorial.