Creating a moving platform
In this tutorial you will learn how to create a moving platform.
New Tutorial
The platform
1. Create a prop_dynamic with the following settings:
Property Name Value World Model models/props/light_rail_platform.mdl Name platform1_model Parent platform1_train
2. Create a brush that is 120x120x2 with the texture glass/glasswindow_frosted_004. Place it inside the train model. Tie it to a func_tractrain with these settings:
Property Name Value Name platform1_train Height above track 0 Change angles never Move sound Portal.horizontal_lift_move Volume 2 Max pitch 100 Min pitch 80 First stop target platform1_s1 Max speed 40 Initial Speed 40
- Also, ensure no user control is checked. If no initial speed is specified, the train will not move at all.
3. Create an env_citadel_energy_core, place it under the model, and set these values:
Property Name Value Name platform1_core Parent platform1_train Pitch Yaw Roll 90 0 0 Scale .5
- Set the flag to start on if desired.
The Path
1. Create a path_track, center it in the very center of platform1_train. Set these values:
Property Name Value Name platform1_s1 Next stop target platform1_s2 Orientation type no change
- Set the flag teleport to this path_track if you have a one direction system.
- I also set these outputs:
2. Create as many path_track entities as you desire. Ensure they stay the same height, and follow the same numbers. Also make sure the last path_track points to the first.
3. Test your system, before you continue.
The Rail
1. Create a brush 12x2 and set it around your path. Texture it with effects/light_rail_beam1. Turn it to a func_brush with these settings:
Property Name Value Fx color 225 252 253 Solidity Never Solid
2. Place info_targets at each bend or end of the rail brushes. Name them something like platform1_target1.
3. Create an env_beam for each strait section of track. Set the following:
Property Name Value Beam color 38 50 68 Brightness 255 Ending entity (your info_target) Life 0 Name platform1_beam Render FX Fast Wide Pulse Sprite name materials/Effects/laser1.vmt Start entity (your info_target) Texture scroll rate 2 Width 4
Set it to start on.
Props
1. Add props at the end of your rails. Also under the corners.
- Some props are :
- models/props/light_rail_wall_emitter.mdl
- models/props/light_rail_endcap.mdl
- models/props/light_rail_corner.mdl
2. Add an env_citadel_energy_core that points at the base of the prop. Set these to start on with a scale of .5
Enabling
1. To enable your train use these outputs:
Old Tutorial

For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.
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
External links
- Example map Example map using this tutorial. VMF included.