Trains: Difference between revisions
Line 23: | Line 23: | ||
First of all start off with where in your map you wish to put your train and get a general idea of how your map will look and how the train will travel in this area. Here is an example, nothing special. | First of all start off with where in your map you wish to put your train and get a general idea of how your map will look and how the train will travel in this area. Here is an example, nothing special. | ||
http://developer.valvesoftware.com/w/images/3/37/Trains1.png | |||
Next create a standard block with the tools/invisible texture, this will be our actual func_tanktrain entity. Now add a prop_dynamic and go to the model viewer and select your train model, in this case a Half Life 2 Combine Razor Train. Visible in the pic below is the razor train engine and the small block that we have made so far. | |||
http://developer.valvesoftware.com/w/images/9/9c/Trains2.png | |||
== Notes == | == Notes == |
Revision as of 07:21, 15 October 2009
This page is about Source train entities. Train entities move along a predetermined track, and can look represent anything that moves.
Entities
Main entities
- func_tracktrain - The part that moves. Brush-based.
- path_track - A waypoint on the track. Invisible and non-solid.
- func_tanktrain - Train that attacks and dies.
Other entities
- func_platrot - Raises or lowers a stopped train, turning as it changes height (as seen in Half-Life).
- func_traincontrols - Lets players control the train.
- func_trackchange
- func_trackautochange
Entities not in the FGD
- func_train
- func_plat - Raises or lowers a stopped train (without rotation).
Setting Up a Basic Razor Train
First of all start off with where in your map you wish to put your train and get a general idea of how your map will look and how the train will travel in this area. Here is an example, nothing special. http://developer.valvesoftware.com/w/images/3/37/Trains1.png
Next create a standard block with the tools/invisible texture, this will be our actual func_tanktrain entity. Now add a prop_dynamic and go to the model viewer and select your train model, in this case a Half Life 2 Combine Razor Train. Visible in the pic below is the razor train engine and the small block that we have made so far. http://developer.valvesoftware.com/w/images/9/9c/Trains2.png
Notes
- If you want a prop to behave as a train, parent it to an invisible func_tracktrain.
- Trains must be constructed facing east (in the Top viewport of Hammer, this is facing right) otherwise they will be pointing the wrong direction in-game. They will turn themselves to face the correct direction.
- You don't need to create each path_track by hand. Create the first one, then
Shift-drag
it to create another; the new one will be automatically linked from the previous one. This works even for inserting newpath_tracks
between existing ones. - For Team Fortress 2 mappers: If you wish to duplicate the trains as seen in CP Well, it is necessary to parent a trigger_hurt to a func_tracktrain, as trains will not normally hurt on touch. To get the "killed by train" icon in the killbar, the damage type must be set to freeze.
See Also