Multiple
path_corners
form a path that can be followed by various moving entities, including some monsters, the
Apache, the
Osprey,
trigger_camera
,
func_guntarget
, and
func_train
. The corresponding entity for
func_tracktrain
(which can not use
path_corner
) is
path_track.
Throughout this page, attributes and flags that apply to the different entities will be marked as follows: [
Apache/
Osprey/
Monsters/
Camera/
GunTarget/
Train]
Attributes
Name |
KV |
Description |
Ap |
Os |
Mo |
Ca |
GT |
Tr |
Name |
targetname |
Property used to identify entities. |
✔️ |
✔️ |
✔️ |
✔️ |
✔️ |
✔️ |
Pitch Yaw Roll |
angles |
Sets angles. The compass in Hammer corresponds to Yaw. Used to aim Apaches/Ospreys in flight. |
✔️ |
✔️ |
❌ |
❌ |
❌ |
❌ |
Next stop target |
target |
Name of the next path_corner in the path. |
✔️ |
✔️ |
✔️ |
✔️ |
✔️ |
✔️ |
Fire On Pass |
message |
Trigger this event when this path_corner is passed by an entity using the path. |
❌ |
❌ |
❌ |
✔️ |
✔️ |
✔️ |
Wait here |
wait |
Makes the entity wait for this number of seconds before moving to next path_corner . |
❌ |
❌ |
❌ |
✔️ |
✔️ |
✔️ |
New train speed |
speed |
Set new speed for the entity once it passes this path_corner . |
❌ |
✔️ |
❌ |
✔️ |
❌ |
✔️ |
Flags
Name |
Value |
Description |
Ap |
Os |
Mo |
Ca |
GT |
Tr |
Wait for retrigger |
1 |
Entity will wait and will only continue when triggered. |
❌ |
❌ |
❌ |
❌ |
❌ |
✔️ |
Teleport |
2 |
Makes entity teleport to this path_corner . |
❌ |
❌ |
❌ |
❌ |
❌ |
✔️ |
Fire once |
4 |
The entity will only fire the path's "Fire On Pass" target once. |
❌ |
❌ |
❌ |
✔️ |
✔️ |
✔️ |
Notes
- It's a good idea to establish a simple
path_corner
naming convention. E.g. mypath1_1
, mypath1_2
, mypath1_3
...
- A better idea is to use the level editor's path tool if available. This greatly reduces the chore of manually naming every single entity and its targets. The generated entities follow the above advice as well.
- As a general rule, this entity has barely any logic. All the logic of following the path, waiting, firing targets, etc., are implemented within the respective entities using this entity, hence the 6 different implementations.
- Only unnamed monsters would follow
path_corner
s, and once they are interrupted, they would not proceed to the next path_corner
anymore. It makes sense to think of path_corner
s as "patrol paths" for monsters, where anything that raises alert makes them stop their rounds. scripted_sequence
offer more control and are more reliable.
- A
trigger_changetarget
can be used to make a func_train
move to a specific path_corner
, regardless of which path_corner
they're currently heading towards.
afaik, it's only happened once, but something to keep in mind if you're having trouble with path corners.
func_train
is entirely withinfunc_train
itself. It is therefore possible to make a valid path with other entities mixed in. I've successfully mixedpath_corner
's withmomentary_doors
like this:target
=m1
wait
=0
spawnflags
= Teleport (2)target
=p2
wait
=0
target
=m2
wait
=0
spawnflags
= Teleport (2)target
=p1
wait
=0
momentary_door
's around and vary the distance thefunc_train
has to travel.It is a setup for an experiment where I can vary the time a
func_train
spends on one part of the map vs the other because it's being used to occlude LOS between me and a monster to test its AI schedule but that's off topic.But you can likewise use it to have dynamically timed sequence with the mom_doors and
func_train
's off the playable areas.My theory is that
func_train
's check the keyvalues of the entities it uses as paths (usuallypath_corner
's) without checking that their classname is actuallypath_corner
. You can therefore use any entity as long as it has keyvalues that concur with that ofpath_corner
's: atarget
, optionally await
,message
(fire on pass) orspeed
, andspawnflags
that don't conflict with that of apath_corner
(therefore flag 1 will stop thefunc_train
, flag 2 will teleport, etc.)[2024-09-22] Most monsters use "target" to patrol `path_corner`s. Should denote all attributes on whether they apply to [Apaches/Ospreys/Monsters/Trains].
[2024-09-23]
List of monsters that patrols path_corners in their target kvs:
target
attribute in their pages. For all others, also need to update thattarget
does nothing.[2024-10-07]