This article's documentation is for the "GoldSrc" engine. Click here for more information.

func_tracktrain

From Valve Developer Community
Jump to navigation Jump to search
Class hierarchy
CFuncTrackTrain
CBaseEntity
plats.cpp

func_tracktrain is a brush entity available in all GoldSrc GoldSrc games. This entity allows you to create a player-controllable train / platform etc. that follows a path consisting of path_tracks. Unlike func_trains, func_tracktrains will turn to face the next path_track, similar to how real world trains behave.

Key Values

Targetname:

Name (targetname) <string>
The targetname that other entities refer to this entity by.
Global:
Global Entity Name (globalname) <string>
Name to identify entity accross level transitions. Entities with the same global name will have the same status accross maps.
First stop target (target) <targetname>
Sound (sound) <choices>
#t Description
0 None
1 Rail 1
2 Rail 2
3 Rail 3
4 Rail 4
5 Rail 6
6 Rail 7
Distance between the wheels (wheels) <integer>
The distance to the train's "front wheels", calculated forwards from the train's origin. This determines the heading, or the angle the trains face when turning corners.
Height above track (height) <integer>
This is the height above the path_track that the train will ride, based on the location of the train's origin brush.
Initial speed (startspeed) <integer>
The speed the train starts at, until overridden by player control or path_track settings.
Speed (units per second) (speed) <integer>
The maximum speed the player can make a controllable train go in units/second. The global entity speed limit is 2000.
Damage on crush (dmg) <integer>
If train movement is blocked by the player, deal out this much damage.
Volume (10 = loudest) (volume) <integer>
Bank angle on turns (bank) <string>
This is the angle the train will tilt when cornering.
Minimum light level (_minlight) <string>
The minimum light level the train will have, even if its initial position in the editor is in a purely dark room. This is a very aggressive value, so even a value of 0.02 will make the train relatively bright.
Render FX (renderfx) <choices>
Render FX mode to use, for special effects.
Value Description
0 Normal
1 Slow Pulse
2 Fast Pulse
3 Slow Wide Pulse
4 Fast Wide Pulse
5 Slow Fade Away
6 Fast Fade Away
7 Slow Become Solid
8 Fast Become Solid
9 Slow Strobe
10 Fast Strobe
11 Faster Strobe
12 Slow Flicker
13 Fast Flicker
14 Constant Glow
15 Distort
16 Hologram (Distort + fade)
Render Mode (rendermode) <choices>
Render Mode to use.
Value Description
0 Normal
1 Color
2 Texture
3 Glow
4 Solid
5 Additive
Render Amount (0-255) (renderamt) <integer>
Controls transparency when using another render mode then normal. 0 is completely invisible, and 255 is opaque. If render mode is solid, then all values except 0 are opaque.
Render Color (R G B) (rendercolor) <color255>
Color to use by the specified render mode.
Also used on brush entities to control the speed of scrolling textures; see func_conveyor for more information.


Minimum light level (_minlight) <normal>
ZHLT family
ZHLT Light Flags (ZHLT 2.2+) (zhlt_lightflags) <choices>
Special lighting behavior. Only available if using Zoner's Half-Life Compile Tools.
  • 0 : "Default"
  • 1 : "Embedded Fix"
  • 2 : "Opaque (blocks light)"
  • 3 : "Opaque + Embedded fix"
  • 6 : "Opaque + Concave Fix"
Light Origin Target (ZHLT 2.2+) (light_origin) <targetname>
During lighting compilation, this entity will be treated as if its origin were at the target entity's origin. Requires an origin brush.
Entity to Use Model From (ZHLT) (zhlt_usemodel) <targetname>
Used to set the model to a different entity's model (bmodel, BSP, MDL, or SPR). The targeted entity will be moved before this entity to ensure proper loading. Requires an origin brush on this entity, as well as on the target entity if target entity is a brush entity.
Nonsolid (ZHLT) (zhlt_noclip) <boolean>
Disables generation of clipnodes for all brushes on this entity, except for clip brushes. The entity may still be solid to point traces (hitscans, grenades, etc) if the brush contents are set to solid.
Tip.pngTip:Always enable this for func_illusionary, unless skin is set to -16 (ladder); VHLT does not properly strip clipnodes for this entity.
Don't Render (ZHLT 3+) (zhlt_invisible) <boolean>
Treat all faces as if they were textured with NULL.
Tip.pngTip:Use this on triggers which use custom textures instead of AAATRIGGER or NULL, such as ladders.
Custom Hull 1 (VHLT+) (zhlt_hull1) <targetname>
Custom Hull 2 (VHLT+) (zhlt_hull2) <targetname>
Custom Hull 3 (VHLT+) (zhlt_hull3) <targetname>
Which named info_hullshape entity to use for the specified clipping hull.
Mins/Maxs (VHLT+) (zhlt_minsmaxs) <mins vector + maxs vector>
Override this entity's bounding box.
zhlt_transform (zhlt_transform) <???>
Never visible (VHLT+) (zhlt_hidden) <boolean>
Don't create marksurfaces for this entity, resulting in it being treated by VIS as never visible.
Tip.pngTip:The _HIDDEN texture suffix does the same thing, but also works on world brushes, which are used for model lighting.
Strip lightmaps after compiling (VHLT+) (zhlt_striprad) <boolean>
Undefines the lightmaps for brushes on this entity after compiling, resulting in the faces being fullbright and not using up allocblock. Unlike TEX_SPECIAL, faces with zhlt_striprad will still affect bounced lighting.
Custom Shadow Color (VHLT+) (zhlt_customshadow) <color1>
If this entity casts shadows, the shadows will be this color instead of black. Can also be a single value, for monochrome.
Fake Lightmap (VHLT v33+) (zhlt_embedlightmap) <boolean>
Generates unique diffuse textures for all textured faces, then bakes lighting information directly into the generated textures. Primarily used to prevent translucent surfaces from "glowing", as rendermodes which support translucency don't render lightmaps on the vanilla renderer.
Icon-Important.pngImportant:The resulting textures will be renamed to have the prefix __rad; as such, any unique attributes will be lost.
Downscale Fake Lightmap (VHLT v34+) (zhlt_embedlightmapresolution) <integer>
Downscale texture created by zhlt_embedlightmap this many times.
ericw-tools
Note.pngNote:If any of the booleans are set in worldspawn, they can be disabled per entity by being set to -1.
Cast shadows (_shadow) <boolean>
Cast shadows from this entity. Implies _shadowself.
Self-shadowed (_shadowself) <boolean>
Cast shadows from this entity onto itself.
Shadow world only (_shadowworldonly) <boolean>
Only cast shadows on world, not models.
Smooth shading (_phong) <boolean>
Enable smooth shading between faces which are less than _phong_angle.
Autosmoothing angle (_phong_angle) <integer>
Angle to smooth; default 89. Set to 44 to match QRAD/HLRAD defaults.
Maximum light level (_maxlight) <normal>
Minlight color (_mincolor, _minlight_color) <color1>
Color of _minlight. Also accepts color255, provided at least one value is greater than 1.
Minlight only (_lightignore) <boolean>
Only receive lighting from _minlight
Disable backface culling (_mirrorinside) <boolean>

Flags

No Pitch (X-rot : [1]

Enabling this will make the train rotate on the Z axis.

No User Control : [2]

Removes the player's ability to control the train.

Passable : [8]

Makes train non-solid.