// Quake3 Arena entity definition file for Q3Radiant
// Based on draft by Suicide 20 7.30.99 and inolen 9-3-99
// Upgraded by Eutectic: eutectic@ritualistic.com
// (visible models added by raYGunn - paths provided by Suicide 20)
// (terrain information added to func_group entity by Paul Jaquays)
// Q3Map2 entitys/keys added by ydnar
// Adapted for EntityPlus by Eraser (eraesr@gmail.com)

//=============================================================================

// Q3Map2 entities

//=============================================================================

/*QUAKED _decal (0 1.0 0) ?
-------- KEYS --------
"target" : the name of the entity targetted at for projection
-------- SPAWNFLAGS --------
(none)
-------- NOTES --------
Compiler-only entity that specifies a decal to be projected. Should contain 1 or more patch meshes (curves) and target an info_null entity. The distance between the center of the _decal entity and the target is the axis and distance of projection.
*/

/*QUAKED _skybox (0.77 0.88 1.0) (-4 -4 -4) (4 4 4)
-------- KEYS --------
"angle" : rotation angle of the sky surfaces.
"angles" : Individual control of PITCH, YAW, and ROLL (default 0 0 0).
"_scale" : scaling factor (default 64), good values are between 50 and 300, depending on the map.
-------- SPAWNFLAGS --------
(none)
-------- NOTES --------
Compiler-only entity that specifies a the origin of a skybox (a wholly contained, seperate area of the map), similar to some games' portal skies. When compiled with Q3Map2, the skybox surfaces will be visible from any place where sky is normally visible. It will cast shadows on the normal parts of the map, and can be used with cloud layers and other effects.
*/


//=============================================================================

AMMO_* ENTITIES

//=============================================================================

/*QUAKED ammo_bfg (.3 .3 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
BFG ammo. Gives the player 15 by default.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when picked up (default 15).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/ammo/bfgam.md3"*/

//=============================================================================

/*QUAKED ammo_bullets (.3 .3 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Machine Gun ammo. Gives the player 50 by default.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when picked up (default 50).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/ammo/machinegunam.md3"*/

//=============================================================================

/*QUAKED ammo_cells (.3 .3 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Plasma Gun ammo. Gives the player 30 by default.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when picked up (default 30).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/ammo/plasmaam.md3"*/

//=============================================================================

/*QUAKED ammo_grenades (.3 .3 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Grenade Launcher ammo. Gives the player 5 by default.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when picked up (default 5).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/ammo/grenadeam.md3"*/

//=============================================================================

/*QUAKED ammo_lightning (.3 .3 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Lightning Gun ammo. Gives the player 60 by default.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when picked up (default 60).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/ammo/lightningam.md3"*/

//=============================================================================

/*QUAKED ammo_rockets (.3 .3 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Rocket Launcher ammo. Gives the player 5 by default.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when picked up (default 5).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/ammo/rocketam.md3"*/

//=============================================================================

/*QUAKED ammo_shells (.3 .3 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Shotgun ammo. Gives the player 10 by default.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when picked up (default 10).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/ammo/shotgunam.md3"*/

//=============================================================================

/*QUAKED ammo_slugs (.3 .3 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Railgun ammo. Gives the player 10 by default.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when picked up (default 10).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/ammo/railgunam.md3"*/

//=============================================================================

FUNC_* ENTITIES

//=============================================================================

/*QUAKED func_bobbing (0 .5 .8) ? X_AXIS Y_AXIS Z_AXIS
Solid entity that oscillates back and forth in a linear motion. By default, it will have an amount of displacement in either direction equal to the dimension of the brush in the axes in which it's bobbing. Entity bobs only on the Z axis (up-down) by default. It can also emit sound if the "noise" key is set. Will crush the player when blocked.
-------- KEYS --------
speed : amount of time in seconds for one complete oscillation cycle (default 4).
height : sets the amount of travel of the oscillation movement (default 32). 
phase : sets the start offset of the oscillation cycle. Values must be 0 < phase < 1. Any integer phase value is the same as no offset (default 0).
targetname : activating entity points to this.
targetname2 : activating entity points to this.
noise : path/name of .wav file to play. Use looping sounds only (eg. sound/world/drone6.wav - See Notes).
model2 : path/name of model to include (eg: models/mapobjects/jets/jets01.md3).
origin : alternate method of setting XYZ origin of sound and .md3 model included with entity (See Notes).
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- SPAWNFLAGS --------
X_AXIS : entity will bob along the X axis.
Y_AXIS : entity will bob along the Y axis.
Z_AXIS : entity will bob along the Z axis.
-------- NOTES --------
In order for the sound to be emitted from the entity, it is recommended to include a brush with an origin shader at its center, otherwise the sound will not follow the entity as it moves. Setting the origin key is simply an alternate method to using an origin brush. When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value.

Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").*/

//=============================================================================

/*QUAKED func_breakable (0 .5 .8) ? LIGHT_DEBRIS DARK_DEBRIS LIGHT_LARGE_DEBRIS DARK_LARGE_DEBRIS WOOD_DEBRIS FLESH_DEBRIS GLASS_DEBRIS STONE_DEBRIS - - NO_PLAYER NO_BOTS NO_SHOOTER EXPLOSION
A static entity that is removed when it receives a set amount of damage.
-------- KEYS --------
health : The entire entity is removed once this amount of damages has been inflicted to it.
count : The entity will spew out this number of chunks of debris when it's broken (default = 0).
dmg : Amount of splashdamage the func_breakable will deal when it is removed (default = 0).
radius : The radius in which the splashdamage is dealt (default = 120).
breaksound : Sound to play when it's broken (by default, no sound will be played)
target : Targetted entity will be triggered once the func_breakable is destroyed.
target2 : Targetted entity will be triggered once the func_breakable is destroyed.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- SPAWNFLAGS --------
LIGHT_DEBRIS : Emit light colored pieces of concrete debris.
DARK_DEBRIS : Emit dark colored pieces of concrete debris.
LIGHT_LARGE_DEBRIS : Emit large light colored pieces of concrete debris.
DARK_LARGE_DEBRIS : Emit large dark colored pieces of concrete debris.
WOOD_DEBRIS : Emit pieces of wooden debris.
FLESH_DEBRIS : Emit gibs.
GLASS_DEBRIS : Emit shards of glass.
STONE_DEBRIS : Emit chunks of stone.
NO_PLAYER : The player cannot damage the func_breakable.
NO_BOTS : Bots cannot damage the func_breakable.
NO_SHOOTER : Shooter entities cannot damage the func_breakable.
EXPLOSION : When the func_breakable is destroyed, an explosion effect is shown.
-------- NOTES --------
Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").

The various debris type spawnflags cannot be combined. If multiple debris type spawnflags are selected, the first spawnflag will overrule later spawnflags. When no debris type spawnflag is defined, the func_breakable will default to LIGHT_DEBRIS.

When the "dmg" key is set, the func_breakable will deal splash damage when it is removed. This can, for example, be used to create exploding barrels. The default radius in which damage is dealt is 120, which equals that of a rocket launcher shot.*/

//=============================================================================

/*QUAKED func_button (0 .5 .8) ?
When a button is touched by a player, it moves in the direction set by the "angle" key, triggers all its targets, stays pressed by an amount of time set by the "wait" key, then returns to it's original position where it can be operated again.
-------- KEYS --------
angle : determines the direction in which the button will move (up = -1, down = -2).
target : all entities with a matching targetname will be triggered.
target2 : all entities with a matching targetname will be triggered.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
speed : speed of button's displacement (default 40).
wait : number of seconds button stays pressed (default 1, -1 = return immediately, -2 return only when triggered again)).
lip : lip remaining at end of move (default 4 units).
health : (default 0) if set to any non-zero value, the button must take damage (any amount) to activate.
sound : if set, overrides the sound played when the button is pressed.
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
model2 : path/name of model to include (eg: models/mapobjects/pipe/pipe02.md3).
origin : alternate method of setting XYZ origin of .md3 model included with entity (See Notes).
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- NOTES --------
Setting the origin key is simply an alternate method to using an origin brush. When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value.

Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").

Setting the sound key overrides the default sound played when the button is pressed. Enter a reference to a wav file here, like "sound/movers/switches/butn2.wav".*/

//=============================================================================

/*QUAKED func_door (0 .5 .8) ? START_OPEN - CRUSHER
Normal sliding door entity. By default, the door will activate when player walks close to it or when damage is inflicted to it.
-------- KEYS --------
angle : determines the opening direction of door (up = -1, down = -2).
speed : determines how fast the door moves (default 100).
wait : number of seconds before door returns (default 2, -1 = return immediately, -2 return only when triggered again)
lip : lip remaining at end of move (default 8)
targetname : if set, a func_button or trigger is required to activate the door.
targetname2 : activating entity points to this (see notes).
health : (default 0) if set to any value bigger than 0, the door must take damage (any amount) to activate. When set to a value less than 0, the door can't be opened by shooting it.
dmg : damage to inflict on player when he blocks operation of door (default 2). Door will reverse direction when blocked unless CRUSHER spawnflag is set.
team : assign the same team name to multiple doors that should operate together (see Notes).
startsound : if set, overrides the sound to play when the door starts moving.
endsound : if set, overrides the sound to play when the door has stopped moving.
nobots : bots cannot activate this door.
nohumans : human player cannot activate this door.
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- SPAWNFLAGS --------
START_OPEN : the door will spawn in the open state and operate in reverse.
CRUSHER : door will not reverse direction when blocked and will keep damaging player until he dies or gets out of the way.
-------- NOTES --------
Unlike in Quake 2, doors that touch are NOT automatically teamed. If you want doors to operate together, you have to team them manually by assigning the same team name to all of them. Setting the origin key is simply an alternate method to using an origin brush. When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value.

Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").

Setting the startsound or endsound keys overrides the default sound played when the door starts or stops moving. Enter a reference to a wav file here, like "sound/movers/doors/dr1_strt.wav".

Contrary to using the targetname key, the targetname2 key will not prevent the door from opening when a player comes nearby.*/

//=============================================================================

/*QUAKED func_door_rotating (0 .5 .8) ? START_OPEN - CRUSHER REVERSE X_AXIS Y_AXIS
Rotating door entity. By default, the door will activate when player walks close to it or when damage is inflicted to it.
-------- KEYS --------
distance : determines how many degrees the door will rotate (default 90).
speed : determines how fast the door moves (degrees/second).
wait : number of seconds before door returns (default 2, -1 = return immediately, -2 return only when triggered again)
targetname : if set, a func_button or trigger is required to activate the door.
targetname2 : activating entity points to this (see notes).
dmg : damage to inflict on player when he blocks operation of door (default 2). Door will reverse direction when blocked unless CRUSHER spawnflag is set.
health : (default 0) if set to any value bigger than 0, the door must take damage (any amount) to activate. When set to a value less than 0, the door can't be opened by shooting it.
team : assign the same team name to multiple doors that should operate together (see Notes).
startsound : if set, overrides the sound to play when the door starts moving.
endsound : if set, overrides the sound to play when the door has stopped moving.
nobots : bots cannot activate this door.
nohumans : human player cannot activate this door.
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
model2 : path/name of model to include (eg: models/mapobjects/pipe/pipe02.md3).
origin : alternate method of setting XYZ origin of .md3 model included with entity (See Notes).
-------- SPAWNFLAGS --------
START_OPEN : the door will spawn in the open state and operate in reverse.
CRUSHER : door will not reverse direction when blocked and will keep damaging player until he dies or gets out of the way.
REVERSE : opens the door in the other direction.
X_AXIS : open on the x axis instead of the x axis
Y_AXIS : open on the y axis instead of the x axis
-------- NOTES --------
You need to have an origin brush as part of this entity. The center of that brush will be the point through which the rotation axis passes. Setting the origin key is simply an alternate method to using an origin brush. You can check the X_AXIS, Y_AXIS or Z_AXIS boxes to determine along which axes rotation should occur. If no boxes are checked the entity will rotate along the Z axis. When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value.

It will rotate around the Z axis by default. You can check either the X_AXIS or Y_AXIS box to change that.

Contrary to using the targetname key, the targetname2 key will not prevent the door from opening when a player comes nearby.*/

//=============================================================================


/*QUAKED func_group (0 .5 .8) ?
This is not an entity as such. It is strictly an editor utility to group world brushes and patches together for convenience (selecting, moving, copying, etc). You cannot group entities with this.
-------- OLD TERRAIN KEYS (note: obsolete with Q3Map2) --------
alphamap : this is the path/name for the art file used to guide the mapping of textures on the terrain surface.
layers : this integer value is the number unique root shaders that will be use on the terrain.
shader : this is the path to the metashader used to assign textures to the terrain entity.
terrain : this is an on/off flag. When set to 1, the entity becomes a terrain entity. Note: unecessary when compiling with Q3Map2. See Q3Map2 keys.
-------- Q3MAP2 KEYS --------
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- NOTES --------
The TAB key can be used to flip through the component pieces of a selected func_group entity, isolating individual components. To make a func_group into a terrain entity, refer to the Terrain Construction documentation.*/

//=============================================================================

/*QUAKED func_pendulum (0 .5 .8) ?
Solid entity that describes a pendulum back and forth rotation movement. Rotates on the X axis by default. Pendulum frequency is a physical constant based on the length of the beam and gravity. Blocking the pendulum instantly kills a player.
-------- KEYS --------
angle : angle offset of axis of rotation from default X axis (default 0).
speed : angle of swing arc in either direction from initial position (default 30).
phase : sets the start offset of the swinging cycle. Values must be 0 < phase < 1. Any integer phase value is the same as no offset (default 0).
noise : path/name of .wav file to play. Use looping sounds only (eg. sound/world/drone6.wav).
model2 : path/name of model to include (eg: models/mapobjects/jets/jets01.md3).
origin : alternate method of setting XYZ origin of entity's rotation axis and .md3 model included with entity (default "0 0 0" - See Notes).
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- NOTES --------
You need to have an origin brush as part of this entity. The center of that brush will be the point through which the rotation axis passes. Setting the origin key is simply an alternate method to using an origin brush. Pendulum will rotate along the X axis by default. Very crude operation: pendulum cannot rotate along Z axis, the speed of swing (frequency) is not adjustable. When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value.

Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").*/

//=============================================================================

/*QUAKED func_plat (0 .5 .8) ?
Rising platform the player can ride to reach higher places. Plats must always be drawn in the raised position, so they will operate and be lighted correctly but they spawn in the lowered position. The plat will stay in the raised position until the player steps off. There are no proper sounds for this entity, only beep noises. It will spawn in the game and work properly but it sounds silly (see Notes).
-------- KEYS --------
speed : determines how fast the plat moves (default 150).
lip : lip remaining at end of move (default 16). Has no effect if "height" is set.
height : if set, this will determine the total amount of vertical travel of the plat.
dmg : damage to inflict on player when he blocks operation of plat (default 4). Plat will reverse direction when blocked.
targetname : if set, the trigger that points to this will raise the plat each time it fires. The plat raises and comes back down a second later if no player is on it.
targetname2 : if set, the trigger that points to this will raise the plat each time it fires. The plat raises and comes back down a second later if no player is on it.
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
model2 : path/name of model to include (eg: models/mapobjects/pipe/pipe02.md3).
origin : alternate method of setting XYZ origin of .md3 model included with entity (See Notes).
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- NOTES --------
By default, the total amount of vertical travel of a platform is implicitly determined by the overall vertical size of the brushes of which it's made minus the lip value. But if the "height" key is used, then the total amount of vertical travel of the plat will be exactly that value regardless of the shape and size of the plat and regardless of the value of the "lip" key. Using the "height" key is the best method for any kind of platforms and the only possible one for thin plats which need to travel vertical distances many times their own thickness. Setting the origin key is simply an alternate method to using an origin brush. When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value.

There is a way to make plats play proper sounds. Just create a sound\movers\plats folder under baseq3 and put 2 sounds named pt1_strt.wav and pt1_end.wav in it. Those can be the renamed sounds from the Q2 plats or renamed copies of the sound\movers\doors sounds you can extract from your pak0.pk3 file or new custom sounds if you're up to it. Thanks to Fragzilla for the tip.

Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").*/

//=============================================================================

/*QUAKED func_rotating (0 .5 .8) ? - - X_AXIS Y_AXIS Z_AXIS TOGGLEABLE START_OFF
Solid entity that rotates continuously. Rotates on one or multiple axes and requires an origin brush.
-------- KEYS --------
speed : determines how fast entity rotates (default 100).
noise : path/name of .wav file to play. Use looping sounds only (eg. sound/world/drone6.wav).
targetname : activating entity points to this (see notes).
targetname2 : activating entity points to this (see notes).
model2 : path/name of model to include (eg: models/mapobjects/bitch/fembotbig.md3).
origin : alternate method of setting XYZ origin of entity's rotation axis and .md3 model included with entity (default "0 0 0" - See Notes).
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- SPAWNFLAGS --------
X_AXIS : entity will rotate along the X axis.
Y_AXIS : entity will rotate along the Y axis.
Z_AXIS : entity will rotate along the Z axis.
TOGGLEABLE : rotation can be started/stopped by targeting it with a trigger.
START_OFF : The entity will initially not rotate.
-------- NOTES --------
You need to have an origin brush as part of this entity. The center of that brush will be the point through which the rotation axis passes. Setting the origin key is simply an alternate method to using an origin brush. You can check the X_AXIS, Y_AXIS or Z_AXIS boxes to determine along which axes rotation should occur. If no boxes are checked the entity will rotate along the Z axis. When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value.

When the TOGGLEABLE spawnflag is set, the entity's rotation can be stopped and resumed by targetting the func_rotating with a trigger. However, do note that player clipping with the brushes of the entity will be broken when this spawnflag is set. Preferably only use when players or bots cannot come into contact with the entity. Note that setting the START_OFF spawnflag implicitly enables the TOGGLEABLE spawnflag as well.

Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").*/

//=============================================================================

/*QUAKED func_static (0 .5 .8) ? START_UNLINKED
Static non-solid bspmodel. Can be used for conditional walls and models.
-------- KEYS --------
model2 : path/name of model to include (eg: models/mapobjects/bitch/fembotbig.md3).
origin : alternate method of setting XYZ origin of .md3 model included with entity (See Notes).
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
targetname : a func_button or trigger that points to this will link/unlink the func_static from the world.
targetname2 : a func_button or trigger that points to this will link/unlink the func_static from the world.
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- SPAWNFLAGS --------
START_UNLINKED : The entity will be unlinked from the world directly after spawning. Use target_unlink to link it back into the world.
-------- NOTES --------
When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value. If a model is included with a targeted func_static, the brush(es) of the entity will be removed from the game but the .md3 model won't: it will automatically be moved to the (0 0 0) world origin so you should NOT include an .md3 model to a targeted func_static.

Because the map has only a single bot navigation file, func_static's cannot be used to make significant changes in game play flow between differing game types.

Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").*/

//=============================================================================

/*QUAKED func_timer (0 .5 .8) (-8 -8 -8) (8 8 8) START_ON START_DELAYED
Time delay trigger that will continuously fire its targets after a preset time delay. The time delay can also be randomized. When triggered, the timer will toggle on/off.
-------- KEYS --------
wait : delay in seconds between each triggering of its targets (default 1).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count : number of times the timer will activate its targets. Omit or set to 0 to set no limit.
target : this points to the entities to trigger.
target2 : this points to the entities to trigger.
targetname : a func_button or trigger that points to this will toggle the timer on/off when activated.
targetname2 : a func_button or trigger that points to this will toggle the timer on/off when activated.
-------- SPAWNFLAGS --------
START_ON : timer will start on in the game and continuously fire its targets.
START_DELAYED : When entity is turned on, it will activate its target after the specified wait period instead of immediately.
-------- NOTES --------
When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).

When a count has been set, the timer will turn itself off when it has activate its target the specified number of times. After the timer has been turned off (either by hitting the count limit or by being triggered by another entity again), the counter towards its count limit is reset.*/

//=============================================================================

/*QUAKED func_train (0 .5 .8) ?
Trains are moving solids that follow a string of path_corner entities. Trains in Q3A are very basic, they also require an origin brush (see Notes).
-------- KEYS --------
speed : speed of displacement of train (default 100 or overridden by speed value of path).
target : this points to the first path_corner of the path which is also the spawn location of the train's origin.
model2 : path/name of model to include (eg: models/mapobjects/pipe/pipe02.md3).
origin : alternate method of setting XYZ origin of the train's brush(es) and .md3 model included with entity (See Notes).
startsound : sound to play when the train starts moving.
endsound : sound to play when the train stops moving.
light : constantLight radius of .md3 model included with entity. Has no effect on the entity's brushes (default 0).
color : constantLight color of .md3 model included with entity. Has no effect on the entity's brushes (default 1 1 1).
-------- Q3MAP2 KEYS --------
_targetname : Used to attach a misc_model entity to this entity.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in this entity (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- NOTES --------
1. Trains always start on in the game.
2. Trains do not damage the played when blocked.
3. Trains cannot emit sound.
4. Trains cannot be block-stopped just by getting in their way, the player must be wedged between the train and another obstacle to block it.

Setting the origin key is simply an alternate method to using an origin brush. When using the model2 key, the origin point of the model will correspond to the origin point defined by either the origin brush or the origin coordinate value.

Target this entity with a misc_model to have the model attached to the entity (set the model's "target" key to the same value as this entity's "targetname").

Setting the startsound or endsound keys will allow the train to play a sound when it stops moving at a path_corner entity or when it starts moving again. Enter a reference to a wav file here, like "sound/movers/doors/dr1_strt.wav".*/

//=============================================================================

HOLDABLE_* ENTITIES

//=============================================================================

/*QUAKED holdable_key_blue (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Key can be picked up and used in conjunction with a trigger_lock to open doors, etc. It is possible to pick up more than one key at once.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/keys/keycard-b.md3"*/

//=============================================================================

/*QUAKED holdable_key_gold (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Key can be picked up and used in conjunction with a trigger_lock to open doors, etc. It is possible to pick up more than one key at once.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/keys/key_gold.md3"*/

//=============================================================================

/*QUAKED holdable_key_green (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Key can be picked up and used in conjunction with a trigger_lock to open doors, etc. It is possible to pick up more than one key at once.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/keys/keycard-g.md3"*/

//=============================================================================

/*QUAKED holdable_key_iron (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Key can be picked up and used in conjunction with a trigger_lock to open doors, etc. It is possible to pick up more than one key at once.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/keys/key_iron.md3"*/

//=============================================================================

/*QUAKED holdable_key_master (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Key can be picked up and used in conjunction with a trigger_lock to open doors, etc. It is possible to pick up more than one key at once.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/keys/key_master.md3"*/

//=============================================================================

/*QUAKED holdable_medkit (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Medkit that can be picked up and used later. Brings the player's health back to 100 when used. Player can only carry one holdable item at a time.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/holdable/medkit.md3"*/

//=============================================================================

/*QUAKED holdable_key_red (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Key can be picked up and used in conjunction with a trigger_lock to open doors, etc. It is possible to pick up more than one key at once.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/keys/keycard-r.md3"*/

//=============================================================================

/*QUAKED holdable_key_silver (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Key can be picked up and used in conjunction with a trigger_lock to open doors, etc. It is possible to pick up more than one key at once.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/keys/key_silver.md3"*/

//=============================================================================

/*QUAKED holdable_teleporter (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Teleporter item that can be picked up and used later. Teleports the player to a random player spawn point when used. Player can only carry one holdable item at a time.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
teleportertarget : targeting a spawnpoint entity with this will force the item to teleport the player to this spawnpoint.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/holdable/teleporter.md3"*/

//=============================================================================

/*QUAKED holdable_key_yellow (.7 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Key can be picked up and used in conjunction with a trigger_lock to open doors, etc. It is possible to pick up more than one key at once.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/keys/keycard-y.md3"*/

//=============================================================================

INFO_* ENTITIES

//=============================================================================

/*QUAKED info_backpack (0 .5 0) (-16 -16 -16) (16 16 16)
When a backpack falls into a nodrop brush it is teleported to the nearest info_backpack entity. The backpack will fall to the floor after being teleported to the info_backpack entity. It will not be suspended.
-------- NOTES --------
Note that the backpack's origin (which is the exact center of the backpack model) must enter the nodrop brush before it registers as a hit.

When no info_backpack entities are present in the map, the backpack will be removed from the game when it hits the nodrop brush.
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/backpack/backpack.md3"*/

//=============================================================================

/*QUAKED info_camera (1 .85 0) (-8 -8 -8) (8 8 8) PAN
Functions as a positional entity for camera views during cutscenes initialized by a target_cutscene entity.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to the next camera to jump to in the cutscene.
target2 : this points to an info_notnull or target_position entity to aim the view of the camera.
wait : number of seconds this camera will hold the view (default 1).
fov : zoom fov for this camera (default 90).
angles: alternate "pitch, yaw, roll" angles method of aiming cutscene camera (default 0 0 0).
-------- SPAWNFLAGS --------
PAN : Instead of jumping to the next camera position, the camera view pans linearly to the next camera position.
-------- NOTES --------
If the info_camera does not target another info_camera entity, the cutscene will end after the wait period and the player will regain control over his character.

Instead of using the angles key to aim the camera, the info_camera can also target an info_notnull or target_position entity. The camera will be aimed at this entity. Do note that if the target key is used to target to another info_camera, the target2 key must be used for aiming this camera (or vice versa).*/

//=============================================================================

/*QUAKED info_camp (0 .5 0) (-8 -8 -8) (8 8 8)
This atttracts bots which have a camping preference in their AI characteristics. It should be placed at least 32 units away from any brush surface.
-------- KEYS --------
range : number of units that the bot can move away from camp entity while camping on it.
weight : number that is compared against the weight assigned to all the other camp spots in the map to determine if a bot chooses to camp there. The value is normalized against all other weight values.
-------- NOTES --------
Examples of bots which have a high camping preference are: Razor, Tank Jr., Grunt, Patriot and Doom. Examples of bots which have a low camping preference are: Klesk, Mynx, Sarge, Keel and Xaero.*/

//=============================================================================

/*QUAKED info_notnull (0 .5 0) (-8 -8 -8) (8 8 8)
Used as a positional target for entities that can use directional pointing. A target_position can be used instead of this but was kept in Q3A for legacy purposes.
-------- KEYS --------
targetname : must match the target key of entity that uses this for pointing.*/

//=============================================================================

/*QUAKED info_null (0 .5 0) (-8 -8 -8) (8 8 8)
Used as a positional target for light entities to create a spotlight effect. A target_position can be used instead of this but was kept in Q3A for legacy purposes.
-------- KEYS --------
targetname : must match the target key of entity that uses this for pointing.*/

//=============================================================================

/*QUAKED info_player_intermission (1 0 1) (-16 -16 -16) (16 16 16)
Camera for intermission screen between matches. This also automatically generates the podium for bot arena matches (see Notes). Can be aimed by setting the "angles" key or targeting an pointing to an aiming entity. Use only one per level.
-------- KEYS --------
angles: alternate "pitch, yaw, roll" angles method of aiming intermission camera (default 0 0 0).
target : point this to an info_notnull or target_position entity to set the camera's pointing angles.
-------- NOTES --------
In genuine bot arena matches, the podium for the 1st, 2nd and 3rd place players at the end of the match is generated by this entity. The podium's origin will automatically be located 128 units in the direction of the camera's view and 84 units down from the y height of the view line at that point. It will also always be generated on a level plane regardless of the pointing angle of the camera so if that angle is too steep, part of the podium model might not be visible. Make sure you leave at least 106 units of free space in front of where the camera points to otherwise the podium model won't be visible at all.*/

//=============================================================================

/*QUAKED info_player_start (1 0 0) (-16 -16 -24) (16 16 32) INITIAL DISABLED
Player spawn location.
-------- KEYS --------
angle : direction in which player will look when spawning in the game. Does not apply to bots.
target : this can point at a target_give entity for respawn freebies.
target2 : this can point at a target_give entity for respawn freebies.
count : number of times this spawnpoint can be used to spawn a player. Omit or set to 0 to set no limit.
nobots : when set to 1, bots will never use this spawn point to respawn in the game.
nohumans : when set to 1, human players will never use this spawn point to respawn in the game.
targetname : activating entity points to this. When info_player_start is triggered it is either disabled or enabled. See notes.
targetname2 : activating entity points to this. When info_player_start is triggered it is either disabled or enabled. See notes.
-------- SPAWNFLAGS --------
INITIAL : makes the spawnpoint the initial place for the player to spawn at the beginning of the game.
DISABLED : the spawn point is in a disabled state when the map is first loaded. It can be enabled by triggering it. See notes.
-------- NOTES --------
Targetting an info_player_start spawnpoint with a trigger will enable or disable the spawnpoint. Spawnpoints are by default enabled unless the DISABLED spawnflag is set. Note that a spawnpoint that is disabled because it reached its [count] number of spawns is not enabled by triggering it.*/

//=============================================================================

/*QUAKED info_waypoint (0 0.4 0.4) (-16 -16 -24) (16 16 32)
Bot patrolling waypoint.
-------- KEYS --------
target : point at another info_waypoint to chain waypoints together
targetname : target another info_waypoint or a target_botspawn entity at this to make a bot move to this waypoint after reaching the previous waypoint or spawning.
wait : number of seconds bot will wait at waypoint before moving on. -1 will make the bot wait indefinitely. When attacked, the bot will still break free and return fire (default 0).
-------- NOTES --------
Waypoints can be chained together to form a path. A bot that's spawned at a target_botspawn that targets a waypoint which is part of the path will walk along this path. It is possible to make circular paths. When paths aren't circular, the bot will move up and down the path.*/

//=============================================================================

ITEM_* ENTITIES

//=============================================================================

/*QUAKED item_armor_body (.6 0 0) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Red Armor - 100 points. All armor can be cumulated up to a maximum of 200 points and slowly wears out to 100 points.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/armor/armor_red.md3"*/

//=============================================================================

/*QUAKED item_armor_combat (1 .75 .3) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Yellow Armor - 50 points. All armor can be cumulated up to a maximum of 200 points and slowly wears out to 100 points.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/armor/armor_yel.md3"*/

//=============================================================================

/*QUAKED item_armor_vest (.18 1 .27) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Green Armor - 25 points. All armor can be cumulated up to a maximum of 200 points and slowly wears out to 100 points.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/armor/armor_gre.md3"*/

//=============================================================================

/*QUAKED item_armor_shard (0 .7 0) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Green Armor Shard - 5 points. All armor can be cumulated up to a maximum of 200 points and slowly wears out to 100 points.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/armor/shard.md3"*/

//=============================================================================

/*QUAKED item_botroam (1 0.5 0) (-8 -8 -8) (8 8 8) SUSPENDED
Game Function: An invisible entity which attracts a bot to it. Use to move bots to parts of a map that might otherwise not be used (NEW ENTITY).
-------- KEYS --------
weight: non-zero floating point value, most often in the range 0 to 400. (Higher values are allowed but keep in mind that the bot should also be attracted to normal items.  Don't make the weight value too high.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
-------- NOTES --------
The item_botroam entity can be used when a bot does not roam the whole level or prefers to go to only specific areas. This (invisible) item can be placed in a map just like regular items. Nobody can actually pick up the item it's only used to attract bots to certain places of the map. The value is the weight of the roam_item is relative to the weight assigned other items in the map (each bot has its own weights). The bot character specific item weights are stored with the bot characters AI files ("botname"_i.c for items and "botname"_w.c for weapons) in the botfiles/bots/ sub-folder in the .pk3 file.*/

//=============================================================================

/*QUAKED item_enviro (.5 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Battle Suit power-up - Gives protection against slime, lava and weapon splash damage. Lasts 30 seconds.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count : time in seconds power-up will last when picked up (default 30).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/instant/enviro.md3"*/

//=============================================================================

/*QUAKED item_flight (.5 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Flight power-up. Lasts 60 seconds.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count : time in seconds power-up will last when picked up (default 60).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/instant/flight.md3"*/

//=============================================================================

/*QUAKED item_haste (.5 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Speed power-up. Makes player run at double speed for 30 seconds.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count : time in seconds power-up will last when picked up (default 30).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/instant/haste.md3"*/

//=============================================================================

/*QUAKED item_health (.8 .8 0) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Yellow cross bubble - 25 Health. Cannot be picked up over 100 health.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of health points given to the player when item is picked up (default 25).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/health/medium_cross.md3"*/

//=============================================================================

/*QUAKED item_health_large (1 0 0) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Gold cross bubble - 50 Health. Cannot be picked up over 100 health.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of health points given to the player when item is picked up (default 50).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/health/large_cross.md3"*/

//=============================================================================

/*QUAKED item_health_mega (0 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Blue M bubble - 100 Health. Adds 100 health points to current health up to a maximum of 200.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of health points given to the player when item is picked up (default 100).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/health/mega_cross.md3"*/

//=============================================================================

/*QUAKED item_health_small (0 1 0) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Green cross bubble - 5 Health. Can be picked up over 100 health but slowly wears out to 100 afterwards.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of health points given to the player when item is picked up (default 5).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/health/small_cross.md3"*/

//=============================================================================

/*QUAKED item_invis (.5 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Invisibility power-up. Lasts 30 seconds.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count : time in seconds power-up will last when picked up (default 30).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/instant/invis.md3"*/

//=============================================================================

/*QUAKED item_quad (.4 .6 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Quad Damage power-up. Lasts 30 seconds.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count : time in seconds power-up will last when picked up (default 30).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
model="models/powerups/instant/quad.md3"*/

//=============================================================================

/*QUAKED item_regen (.5 0 1) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Health Regeneration power-up. This will boost your current health by 5 points every second for a period of up to 30 seconds or up to 200 points whichever comes first. Afterwards, any health points over 100 slowly wears out to 100.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count : time in seconds power-up will last when picked up (default 30).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/powerups/instant/regen.md3"*/

//=============================================================================

LIGHT ENTITY

//=============================================================================


/*QUAKED light (.65 .65 1) (-8 -8 -8) (8 8 8) LINEAR NOANGLE UNUSED1 UNUSED2 NOGRIDLIGHT
Non-displayed point light source. The -pointscale and -scale arguments to Q3Map2 affect the brightness of these lights. The -skyscale argument affects brightness of entity sun lights.
-------- KEYS --------
_light OR light: overrides the default 300 intensity.
_color : weighted RGB value of light color (default white - 1.0 1.0 1.0).
target : Lights pointed at a target will be spotlights.
radius: overrides the default 64 unit radius of a spotlight at the target point.
-------- Q3MAP2 KEYS --------
_sun : Set this key to 1 on a spotlight to make an infinite sun light.
fade : Fades light attenuation. Only affects linear lights.
scale : Scales light attentation, from SOF2/JK2. Scales the "light" value.
-------- SPAWNFLAGS --------
LINEAR : Use a linear falloff. Default is inverse distance squared (more realistic).
NOANGLE : Ignore angle attenuation.
NOGRIDLIGHT : Do not affect the lightgrid (dynamic entity lighting).*/

/*QUAKED lightJunior (0 0.7 0.3) (-6 -6 -6) (6 6 6) LINEAR NOANGLE UNUSED1 UNUSED2 NOGRIDLIGHT
Non-displayed point light source THAT ONLY AFFECTS ENTITIES (lightgrid). The -pointscale and -scale arguments to Q3Map2 affect the brightness of these lights. The -skyscale argument affects brightness of entity sun lights.
-------- KEYS --------
_light OR light: overrides the default 300 intensity.
_color : weighted RGB value of light color (default white - 1.0 1.0 1.0).
target : Lights pointed at a target will be spotlights.
radius: overrides the default 64 unit radius of a spotlight at the target point.
-------- Q3MAP2 KEYS --------
_sun : Set this key to 1 on a spotlight to make an infinite sun light.
fade : Fades light attenuation. Only affects linear lights.
scale : Scales light attentation, from SOF2/JK2. Scales the "light" value.
-------- SPAWNFLAGS --------
LINEAR : Use a linear falloff. Default is inverse distance squared (more realistic).
NOANGLE : Ignore angle attenuation.
NOGRIDLIGHT : Do not affect the lightgrid (dynamic entity lighting). Setting this spawnflag will disable this light entirely.*/

//=============================================================================

MISC_* ENTITIES

//=============================================================================

/*QUAKED misc_model (1 .5 .25) (-16 -16 -16) (16 16 16)
Generic placeholder for inserting MD3 models in game. Requires compilation of map geometry to be added to level. If the map is compiled with Q3Map2, then ASE, 3DS, OBJ and other model formats are supported.
-------- KEYS --------
angle: direction in which model will be oriented.
model : path/name of model to use (eg: models/mapobjects/teleporter/teleporter.md3).
-------- Q3MAP2 KEYS --------
angles : Individual control of PITCH, YAW, and ROLL (default 0 0 0).
modelscale : Floating-point value used to scale a model up or down (default 1.0).
modelscale_vec : Floating-point vector used to scale a model's axes individually (default 1.0 1.0 1.0).
_remap : Used to remap textures/shaders in the model. To remap all shaders to a given shader, use "*;models/mymodel/mytexture". To remap a specific shader, use "models/mymodel/old;models/mymodel/new".
target : Used to attach the misc_model to a brush entity, where its "targetname" key is the same value.
_lightmapscale : Floating point value scaling the resolution of lightmaps on this model (if model is using lightmapped shaders) (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
*/

//=============================================================================

/*QUAKED misc_portal_camera (1 .5 .25) (-8 -8 -8) (8 8 8) SLOWROTATE FASTROTATE
Portal camera. This camera is used to project its view onto a portal surface in the level through the intermediary of a misc_portal_surface entity. Use the "angles" key or target a target_position or info_notnull entity to set the camera's pointing direction.
-------- KEYS --------
angles: this sets the pitch and yaw aiming angles of the portal camera (default 0 0). Use "roll" key to set roll angle.
target : point this to a target_position entity to set the camera's pointing direction.
targetname : a misc_portal_surface portal surface indicator must point to this.
roll: roll angle of camera. A value of 0 is upside down and 180 is the same as the player's view.
-------- SPAWNFLAGS --------
SLOWROTATE : makes the portal camera rotate slowly along the roll axis.
FASTROTATE : makes the portal camera rotate faster along the roll axis.
-------- NOTES --------
Both the setting "angles" key or "targeting a target_position" methods can be used to aim the camera. However, the target_position method is simpler. In both cases, the "roll" key must be used to set the roll angle. If either the SLOWROTATE or FASTROTATE spawnflag is set, then the "roll" value is irrelevant.*/

//=============================================================================

/*QUAKED misc_portal_surface (1 .5 .25) (-8 -8 -8) (8 8 8)
Portal surface indicator. This will "lock on" the brush face closest to it and identify as a portal. The view displayed on the portal surface is the view of the misc_portal_camera that this entity targets. Also used for mirrors (see Notes).
-------- KEYS --------
target : point this to a misc_portal_camera that "sees" the view you want to display on the portal.
-------- NOTES --------
The entity must be no farther than 64 units away from the portal surface to lock onto it. To make a mirror, apply the common/mirror shader to the surface, place this entity near it but don't target a misc_portal_camera.*/

//=============================================================================

/*QUAKED misc_teleporter_dest (1 .5 .25) (-32 -32 -24) (32 32 -16)
Teleport destination location point for trigger_teleporter entities.
-------- KEYS --------
angle : direction in which player will look when teleported.
targetname : make the trigger_teleporter point to this.*/

//=============================================================================

PATH_* ENTITIES

//=============================================================================

/*QUAKED path_corner (.5 .3 0) (-8 -8 -8) (8 8 8)
Path corner entity that func_trains can be made to follow.
-------- KEYS --------
target : point to next path_corner in the path.
targetname : the train following the path or the previous path_corner in the path points to this.
speed : speed of func_train while moving to the next path corner. This will override the speed value of the train.
wait : number of seconds func_train will pause on path corner before moving to next path corner (default 0 - see Notes).
-------- NOTES --------
Setting the wait key to -1 will make the train stop on the path corner until it is activated by a trigger again.*/

//=============================================================================

SHOOTER_* ENTITIES

//=============================================================================

/*QUAKED shooter_bfg (1 0 .5) (-8 -8 -8) (8 8 8) TARGET_PLAYER NO_BOTS NO_HUMANS
This will shoot a bfg projectile each time it's triggered. Aiming is done by setting the "angles" key or by targeting an info_notnull or target_position entity.
-------- KEYS --------
angles: this sets the pitch and yaw aiming angles of shooter (default 0 0). The roll angle does not apply.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to a target_position entity for aiming the bfg shots.
random : random aiming variance in degrees from the straight line to the targeted entity (default 0 - see Notes).
dmg : amount of damage a bfg projectile will deal (default 100).
speed : the movement speed of the BFG bolt (default 2000).
-------- SPAWNFLAGS --------
TARGET_PLAYER : The shooter will always aim directly at the player.
NO_BOTS : The shooter will not harm bots
NO_HUMANS : The shooter will not harm the player.
-------- NOTES --------
When the random key is set, its value is used to calculate a maximum angle deviation from the normal trajectory formed by a straight line between the shooter and the aiming entity it targets. The final trajectory will be a random value anywhere between no deviation at all (0) to maximum deviation (value of the random key).

Both the setting "angles" key or "targeting a target_position" methods can be used to aim the shooter. However, the target_position method is simpler.*/

//=============================================================================

/*QUAKED shooter_grenade (1 0 .5) (-8 -8 -8) (8 8 8) TARGET_PLAYER NO_BOTS NO_HUMANS
This will shoot a grenade each time it's triggered. Aiming is done by setting the "angles" key or by targeting an info_notnull or target_position entity.
-------- KEYS --------
angles: this sets the pitch and yaw aiming angles of shooter (default 0 0). The roll angle does not apply.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to a target_position entity for aiming the grenades.
random : random aiming variance in degrees from the straight line to the targeted entity (default 0 - see Notes).
dmg : amount of damage a grenade will deal (default 100).
speed : the movement speed of the grenade (default 700).
-------- SPAWNFLAGS --------
TARGET_PLAYER : The shooter will always aim directly at the player.
NO_BOTS : The shooter will not harm bots
NO_HUMANS : The shooter will not harm the player.
-------- NOTES --------
When the random key is set, its value is used to calculate a maximum angle deviation from the normal trajectory formed by a straight line between the shooter and the aiming entity it targets. The final trajectory will be a random value anywhere between no deviation at all (0) to maximum deviation (value of the random key).

Both the setting "angles" key or "targeting a target_position" methods can be used to aim the shooter. However, the target_position method is simpler.*/

//=============================================================================

/*QUAKED shooter_plasma (1 0 .5) (-8 -8 -8) (8 8 8) TARGET_PLAYER NO_BOTS NO_HUMANS
This will shoot a plasma ball each time it's triggered. Aiming is done by setting the "angles" key or by targeting an info_notnull or target_position entity.
-------- KEYS --------
angles: this sets the pitch and yaw aiming angles of shooter (default 0 0). The roll angle does not apply.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to a target_position entity for aiming the plasma balls.
random : random aiming variance in degrees from the straight line to the targeted entity (default 0 - see Notes).
dmg : amount of damage a plasma ball will deal (default 20).
speed : the movement speed of the plasma bolt (default 2000).
-------- SPAWNFLAGS --------
TARGET_PLAYER : The shooter will always aim directly at the player.
NO_BOTS : The shooter will not harm bots
NO_HUMANS : The shooter will not harm the player.
-------- NOTES --------
When the random key is set, its value is used to calculate a maximum angle deviation from the normal trajectory formed by a straight line between the shooter and the aiming entity it targets. The final trajectory will be a random value anywhere between no deviation at all (0) to maximum deviation (value of the random key).

Both the setting "angles" key or "targeting a target_position" methods can be used to aim the shooter. However, the target_position method is simpler.*/

//=============================================================================

/*QUAKED shooter_rocket (1 0 .5) (-8 -8 -8) (8 8 8) TARGET_PLAYER NO_BOTS NO_HUMANS
This will shoot a rocket each time it's triggered. Aiming is done by setting the "angles" key or by targeting an info_notnull or target_position entity.
-------- KEYS --------
angles: this sets the pitch and yaw aiming angles of shooter (default 0 0). The roll angle does not apply.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to a target_position entity for aiming the rockets.
random : random aiming variance in degrees from the straight line to the targeted entity (default 0 - see Notes).
dmg : amount of damage a rocket will deal (default 100).
speed : the movement speed of the rocket (default 900).
-------- SPAWNFLAGS --------
TARGET_PLAYER : The shooter will always aim directly at the player.
NO_BOTS : The shooter will not harm bots
NO_HUMANS : The shooter will not harm the player.
-------- NOTES --------
When the random key is set, its value is used to calculate a maximum angle deviation from the normal trajectory formed by a straight line between the shooter and the aiming entity it targets. The final trajectory will be a random value anywhere between no deviation at all (0) to maximum deviation (value of the random key).

Both the setting "angles" key or "targeting a target_position" methods can be used to aim the shooter. However, the target_position method is simpler.*/

//=============================================================================

TARGET_* ENTITIES

//=============================================================================

/*QUAKED target_botremove (0 .7 .7) (-8 -8 -8) (8 8 8) LETHAL_INJECTION SPONTANEOUS_COMBUSTION
Removes all bots that were spawned by the targeted target_botspawn entities.
-------- KEYS --------
target : this points to a target_botspawn entity from which all bots should be removed from the game.
target2 : this points to a target_botspawn entity from which all bots should be removed from the game.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
-------- SPAWNFLAGS --------
LETHAL_INJECTION : Instead of being removed from the game immediately, the bot will die.
SPONTANEOUS_COMBUSTION : Instead of being removed from the game immediately, the bot will explode in a shower of gibs.
-------- NOTES --------
The target/target2 keys MUST be used to target an existing target_botspawn entity. When this entity is activated, it will remove ALL bots from the game that were spawned by the targeted target_botspawn entity. Targeting multiple target_botspawn entities is possible.*/

//=============================================================================

/*QUAKED target_botspawn (0 .7 .7) (-16 -16 -24) (16 16 32) WP_GAUNTLET WP_MACHINEGUN WP_SHOTGUN WP_GRENADE_LAUNCHER WP_ROCKET_LAUNCHER WP_LIGHTNING WP_RAILGUN WP_PLASMAGUN WP_BFG - - IGNORE_PLAYER PATROL_WALK ALWAYS_WALK SPAWN_EFFECT
Spawns a bot into the game at the location of the target_botspawn entity.
-------- KEYS --------
angle : direction in which bot will look when spawning in the game.
clientname : the name of the bot to spawn (default = "Sarge").
health : the amount of health the bot will have when it spawns into the game (default = 100).
skill : sets the relative skill level of the bot (default = 0).
target : this points to a info_waypoint entity to which the bot should patrol after spawning.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
deathtarget : this points to entities to activate when a bot spawned by the target_botspawn dies.
loottarget : this points to any item or holdable entity. The item will be dropped by the bot when it dies.
-------- SPAWNFLAGS --------
WP_GAUNTLET : The bot spawns into the game with a Gauntlet.
WP_MACHINEGUN : The bot spawns into the game with a Machinegun.
WP_SHOTGUN	  : The bot spawns into the game with a Shotgun.
WP_GRENADE_LAUNCHER : The bot spawns into the game with a Grenade Launcher.
WP_ROCKET_LAUNCHER : The bot spawns into the game with a Rocket Launcher.
WP_LIGHTNING : The bot spawns into the game with a Lightninggun.
WP_RAILGUN : The bot spawns into the game with a Railgun.
WP_PLASMAGUN : The bot spawns into the game with a Plasmagun.
WP_BFG : The bot spawns into the game with a BFG.
IGNORE_PLAYER : The bot ignores the player, even when attacked.
PATROL_WALK : The bot will walk (instead of run) while patrolling along info_waypoint entities.
ALWAYS_WALK : The bot will always walk (instead of run).
SPAWN_EFFECT : Show a (teleport) effect when the bot spawns.
-------- NOTES --------
By default bots spawn without any weapons. Use spawnflags to customize the set of weapons the bot will spawn with. Bots will always have unlimited ammo for all weapons. The choice of weapon is still up to the bot. This means that spawning a bot with a MG and GL doesn't guarantee the bot will use the GL.

Setting the skill key works like a modifier on top of the current skill level. So a skill value of 1 means the bot is one skill level tougher than the current skill setting. A skill value of -2 means the bot is two skill levels lower than the current setting. A bot's relative skill level never drops below 1 but may rise above 5. Floating point values (like 1.3) are allowed.

When bot PATROL_WALK and ALWAYS_WALK are set, the bot will always walk and ignore the PATROL_WALK spawnflag.

When the loottarget key is set, the item it points to is not spawned into the game. Instead it will be dropped by the bot when it dies.

Note that the Radiant level editor will not display targetting paths for the deathtarget or loottarget keys.*/

//=============================================================================

/*QUAKED target_cutscene (0 .5 0) (-8 -8 -8) (8 8 8) HALT_AI START_AT_PLAYER
Starts a cutscene. Moves player view to the info_camera it targets.
-------- KEYS --------
target : this points to an info_camera entity to which the camera view should go.
target2 : this points to an info_camera entity to which the camera view should go.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
-------- SPAWNFLAGS --------
HALT_AI : Freezes all enemies in place while the cutscene is running.
START_AT_PLAYER : The first info_camera's position and viewing angles are ignored and replaced with the player's position and viewing angles at the time of activating the cutscene.
-------- NOTES --------
Note that the player disappears from the map during the cutscene. This means that the player itself can never be shown during the cutscene.

The START_AT_PLAYER spawnflag ONLY affects the camera targeted by this target_cutscene. Any subsequent camera's in the cutscene will use their own position and viewing angles.*/

//=============================================================================

/*QUAKED target_debrisemitter (0 .7 .7) (-8 -8 -8) (8 8 8) LIGHT_DEBRIS DARK_DEBRIS LIGHT_LARGE_DEBRIS DARK_LARGE_DEBRIS WOOD_DEBRIS FLESH_DEBRIS GLASS_DEBRIS STONE_DEBRIS
Emits debris with thick smoke trails when triggered.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
count : The number of debris pieces to emit (default = 10).
-------- SPAWNFLAGS --------
LIGHT_DEBRIS : Emit light colored pieces of concrete debris.
DARK_DEBRIS : Emit dark colored pieces of concrete debris.
LIGHT_LARGE_DEBRIS : Emit large light colored pieces of concrete debris.
DARK_LARGE_DEBRIS : Emit large dark colored pieces of concrete debris.
WOOD_DEBRIS : Emit pieces of wooden debris.
FLESH_DEBRIS : Emit gibs.
GLASS_DEBRIS : Emit shards of glass.
STONE_DEBRIS : Emit chunks of stone.
-------- NOTES --------
The various spawnflags cannot be combined. If multiple spawnflags are selected, the first spawnflag will overrule later spawnflags. When no spawnflag is defined, the target_debrisemitter will default to LIGHT_DEBRIS.*/

//=============================================================================

/*QUAKED target_delay (0 .7 .7) (-8 -8 -8) (8 8 8) TOGGLE
Time delay trigger intermediary. Like a target_relay, this can only be fired by other triggers which will cause it in turn to fire its own targets.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to entities to activate when this entity is triggered.
target2 : this points to entities to activate when this entity is triggered.
wait : delay in seconds from when this gets triggered to when it fires its own targets (default 1).
delay : legacy key/value pair. Use wait instead.
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
-------- SPAWNFLAGS --------
TOGGLE : When the entity is activated a second time before target_delay activated its targets, the timer will be shut off instead of restarted.
-------- NOTES --------
When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).*/

//=============================================================================

/*QUAKED target_earthquake (0 .7 .7) (-8 -8 -8) (8 8 8) 
Starts an earthquake that shakes the screen
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
length : duration of the earthquake in seconds (3 - 32, default 3).
intensity : intensity of the earthquake (1 - 16, default 1).*/

//=============================================================================

/*QUAKED target_effect (0 .7 .7) (-8 -8 -8) (8 8 8) EXPLOSION PARTICLES_GRAVITY PARTICLES_LINEAR PARTICLES_LINEAR_UP PARTICLES_LINEAR_DOWN OVERLAY FADE SMOKEPUFF
shows animated environmental effects or overlay
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
color : color of the particles or smokepuff (default 1.0 1.0 1.0).
count : number of particles for particle effect (0 - 255, default 100).
speed : speed of the particles (default 100) or smokepuff (default 16).
overlay : specifies an image to overlay over the screen. Leave empty to remove existing overlay.
startcolor : specifies the rgba value of the starting color of a fade (default 0.0 0.0 0.0 0.0).
endcolor : specifies the rgba value of the ending color of a fade (default 0.0 0.0 0.0 1.0).
wait : When using FADE, this specifies the amount of time it takes to fade from the start color to the end color. When using SMOKEPUFF, this specifies the duration the smokepuff stays visible. (default 2)
scale : specifies the size scale factor of smokepuffs (default 1).
-------- SPAWNFLAGS --------
EXPLOSION : Shows an explosion when activated.
PARTICLES_GRAVITY : Generates particles that are affected by gravity.
PARTICLES_LINEAR : Generates particles that are not affected by gravity.
PARTICLES_LINEAR_UP : Generates particles that are not affected by gravity that only move upwards.
PARTICLES_LINEAR_DOWN : Generates particles that are not affected by gravity that only move downwards.
OVERLAY : Applies the specified overlay to the screen.
FADE : The screen will fade from the specified start color to the specified end color.
SMOKEPUFF : Emit a single puff of smoke.
-------- NOTES --------
Spawnflags can be combined to have the entity show multiple effects when triggered.

Use a target_position entity to aim the direction in which smoke puffs move. By default, smoke puffs move upwards.

The rgba values for startcolor and endcolor are specified like other color values but they accept a fourth value which specifies the alpha (transparency) value. A value of 1.0 is 100% opaque, a value of 0.0 is completely transparent.*/

//=============================================================================

/*QUAKED target_finish (0 .5 0) (-8 -8 -8) (8 8 8)
When triggered, forces the game to go into the intermission which will show the SP end-level scores, registers the player's score as new high score (if it is higher than the current highscore) for the current map and, when the player clicks during the intermission, ends the game.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
-------- NOTES --------
Before showing the scoring screen, the camera view is moved to the intermission point as defined with a info_player_intermission entity.

The notfree and notteam spawnflags have no effect on this entity because it can only be triggered in g_gametype 8.*/

//=============================================================================

/*QUAKED target_give (0 .5 0) (-8 -8 -8) (8 8 8) GIVE_PLAYER
This is used to give ammo, weapons, health or items to the player who activates it.
-------- KEYS --------
target : this points to the item(s) to give when activated.
targetname : activating trigger or spawn entity points to this.
targetname2 : activating trigger or spawn entity points to this.
-------- SPAWNFLAGS --------
GIVE_PLAYER : item is always given to the player, regardless of who activated the target_give.
-------- NOTES --------
There are 2 ways to use this entity.
a) automatically give items to players when they spawn in the game: make a spawn location entity (info_player_start) target this entity, then make it target the item(s) to give to the player upon respawn.
b) give items to players during the game: make a trigger_multiple target this entity, then make it target the item(s) to give to the player when the trigger is touched.*/

//=============================================================================

/*QUAKED target_gravity (0 .5 0) (-8 -8 -8) (8 8 8) GLOBAL
Changes gravity when triggered.
-------- KEYS --------
count : amount of gravity to apply (defaults to the value set to g_gravity).
targetname : activating entity points to this.
targetname2 : activating entity points to this.
-------- SPAWNFLAGS --------
GLOBAL : all players are affected instead of only the activator.
-------- NOTES --------
The default value for g_gravity is 800. This can be overruled by the server administrator.*/

//=============================================================================

/*QUAKED target_kill (0 .5 0) (-8 -8 -8) (8 8 8)
This will kill the player who activates the trigger that fires this target.
-------- KEYS --------
targetname : the activating entity points to this.
targetname2 : activating entity points to this.*/

//=============================================================================

/*QUAKED target_logic (0 .5 0) (-8 -8 -8) (8 8 8) - - RANDOM STAY_ON
This enitity will be activated when all triggers targeting this entity have been triggered. 
-------- KEYS --------
targetname : activating triggers points to this.
targetname2 : activating entity points to this.
target : this points to entities to activate when this entity is triggered.
target2 : this points to entities to activate when this entity is triggered.
-------- SPAWNFLAGS --------
RANDOM : only one of the targeted entities will be triggered at random.
STAY_ON : a trigger will remain triggered until the target_logic is reset.*/

//=============================================================================

/*QUAKED target_mapchange (0 .5 0) (-8 -8 -8) (8 8 8)
Loads the specified map.
-------- KEYS --------
mapname : The map to load. When omitted, the current map will be restarted.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
-------- NOTES --------
When the map is loaded in single player mode, the target_mapchange entity stores the current health, armor, weapon and ammo stats and holdable items for each player before moving on to the next map. When the new map is loaded, the stored stats are applied to each player again. This means players will have consistent stats throughout map changes.*/

//=============================================================================

/*QUAKED target_modify (0 .5 0) (-8 -8 -8) (8 8 8)
modifies the value of a specific key on a targeted entity.
-------- KEYS --------
target : this points to entities to modify when this entity is triggered.
target2 : this points to entities to modify when this entity is triggered.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
key : the key to modify on the target entity.
value : the value to set for the key on the target entity.
-------- NOTES --------
The following keys can be modified: angle, clientname, color, count, deathtarget, loottarget, health, key, light, mapname, message, overlay, target, target2, targetname, targetname2, targetshadername, teleportertarget, spawnflags, speed, skill, value, wait, armor.

The values for color and light can only be set on func_ entities. Light entities cannot be modified in-game.*/

//=============================================================================

/*QUAKED target_music (0 .7 .7) (-8 -8 -8) (8 8 8)
Sets the current music track to be played.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
music : path/name of looping .wav file used for level's music (eg. music/sonic5.wav).
-------- NOTES --------
Setting an empty music key or completely omitting it will make the music stop playing.*/


//=============================================================================

/*QUAKED target_objective (0 .5 0) (-8 -8 -8) (8 8 8) SECONDARY SILENT
Sets the primary or secondary objective for a player. Primary objective text should be no more than 300 characters. Secondary objective text should be no more than 240 characters. Objective texts are wrapped to a new line after 60 characters.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
message : the objective text.
-------- SPAWNFLAGS --------
SECONDARY : The secondary objective is set instead of the primary objective.
SILENT : When set, the player will not be notified that the objectives are updated.*/

//=============================================================================

/*QUAKED target_playerspeed (0 .5 0) (-8 -8 -8) (8 8 8)
Sets the movement speed for player(s). Defaults to the speed set through the g_speed cvar (320 by default).
-------- KEYS --------
speed : the movement speed to apply to the player(s).
targetname : the activating entity points to this.
targetname2 : the activating entity points to this.
-------- NOTES --------
Setting a speed value of -1 will freeze the player in his current spot. He will be unable to move, jump or duck. Omit the speed key or set its value to 0 to restore the default player speed.*/

//=============================================================================

/*QUAKED target_playerstats (0 .5 0) (-8 -8 -8) (8 8 8) ONLY_WHEN_LOWER NO_HEALTH NO_ARMOR
Sets the health and/or armor for a player
-------- KEYS --------
health : the amount of health to give the player
armor : the amount of armor to give the player
targetname : the activating entity points to this.
targetname2 : the activating entity points to this.
-------- SPAWNFLAGS --------
ONLY_WHEN_LOWER : Only sets the player's health/armor if it is lower than the specified amount of health/armor.
NO_HEALTH : The player's health is never set by this entity.
NO_ARMOR : The player's armor is never set by this entity.*/

//=============================================================================

/*QUAKED target_position (0 .5 0) (-8 -8 -8) (8 8 8)
Aiming target for entities like light, misc_portal_camera and trigger_push (jump pads) in particular.
-------- KEYS --------
targetname : the entity that requires an aiming direction points to this.
-------- NOTES --------
To make a jump pad, place this entity at the highest point of the jump and target it with a trigger_push entity.*/

//=============================================================================

/*QUAKED target_print (0 .5 0) (-8 -8 -8) (8 8 8) - - - SUBTITLE
This will print a message on the screen when triggered.
-------- KEYS --------
message : text string to print on screen.
wait : amount of time the message should stay on-screen (defaults to 0, only works for subtitles).
targetname : the activating entity points to this.
targetname2 : the activating entity points to this.
-------- SPAWNFLAGS --------
SUBTITLE : The message will be printed at the bottom of the screen in a smaller font.
-------- NOTES --------
When the SUBTITLE spawnflag is set and no wait key has been specified, the game will calculate the wait key by itself. It does this by dividing the number of characters in the message by 15. Messages less than 15 characters long will remain on-screen for 1 second.*/

//=============================================================================

/*QUAKED target_push (.5 .5 .5) (-8 -8 -8) (8 8 8) BOUNCEPAD JUMP
This can be used to create jump pads and launch ramps. The direction of push can be set by the "angles" key or pointing to a target_position or info_notnull entity. Unlike trigger_push, this is NOT client side predicted and must be activated by a trigger.
-------- KEYS --------
angles: this sets the pitch and yaw aiming angles of push entity (default 0 0). The roll angle does not apply.
speed : speed of push (default 1000). Has no effect if entity targets an aiming entity.
targetname : the activating entity points to this. Push originates from the location of the trigger.
target : this points to the aiming entity to which the player will jump.
-------- SPAWNFLAGS --------
BOUNCEPAD : if set, trigger will play bounce noise instead of being silent when activated. Cannot be used in combination with JUMP.
JUMP : if set, trigger will play the activating player/bot's jump sound instead of being silent when activated. Cannot be used in combination with BOUNCEPAD.
-------- NOTES --------
If both BOUNCEPAD and JUMP are selected, the JUMP spawnflag is ignored.

To make a jump pad or launch ramp, create a trigger_multiple where the jump must originate. Place the target_push directly above the trigger_multiple and place the target_position entity at the highest point of the jump. Target the trigger_multiple to the target_push and target the target_push to the target_position/info_notnull (or set the target_push's "angles" key). Note that the "angle" key also works.*/

//=============================================================================

/*QUAKED target_relay (0 .7 .7) (-8 -8 -8) (8 8 8) - - RANDOM ONCE
This can only be activated by other triggers which will cause it in turn to activate its own targets.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to entities to activate when this entity is triggered.
target2 : this points to entities to activate when this entity is triggered.
count : relay entity will only activate its target if itself has been triggered this many times (default 1)
-------- SPAWNFLAGS --------
RANDOM : only one of the targeted entities will be triggered at random.
ONCE : the target_relay will activate its targeted entities only once.*/

//=============================================================================

/*QUAKED target_remove_powerups (0 .7 .7) (-8 -8 -8) (8 8 8) POWERUPS - WEAPONS HOLDABLES
This takes away all specified items. The player that activates the trigger will lose any of the specified item(s) currently in his possession. Can be targeted by a spawnpoint.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
-------- SPAWNFLAGS --------
POWERUPS : Removes all item_* type of powerups except health and armor.
WEAPONS : Removes all weapons and ammo.
HOLDABLES : Removes all holdable_* items, including keys.
-------- NOTES --------
If no spawnflags are selected, the target_remove_powerups entity reverts to its default behavior of removing powerups.*/

//=============================================================================

/*QUAKED target_score (0 .5 0) (-8 -8 -8) (8 8 8)
This is used to automatically give frag points to the player who activates this. A spawn location entity like info_player_* or CTF respawn points can target this entity to give points to the player when he spawns in the game. Or a trigger can also be used to activate this. The activator of the trigger will get the points. In EntityPlus' Single Player mode, the score will be added to the player's "carnage" score.
-------- KEYS --------
targetname : ativating entity points to this.
targetname2 : activating entity points to this.
count: number of points to add to player's carnage score (default 1).*/

//=============================================================================

/*QUAKED target_secret (0 .5 0) (-8 -8 -8) (8 8 8) SILENT
When activated, counts the secret as being found. Finding a secret adds 5% of the carnage score to the player's total score.
-------- KEYS --------
targetname : ativating entity points to this.
targetname2 : activating entity points to this.
message : text string to print on screen when secret is found. When omitted it defaults to "You found a secret!"
-------- SPAWNFLAGS --------
SILENT : No message is printed to the screen when the secret is found.
-------- NOTES --------
You may have no more than 64 target_secrets in your map(s). When multiple maps are linked together using target_mapchange, this limit of 64 counts across all linked maps.*/

//=============================================================================

/*QUAKED target_skill (0 .5 0) (-8 -8 -8) (8 8 8)
Sets the skill level for the next map that will be loaded.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
skill : the skill level to apply. 1 is easiest, 5 is hardest (default = 2).*/

//=============================================================================

/*QUAKED target_speaker (0 .7 .7) (-8 -8 -8) (8 8 8) LOOPED_ON LOOPED_OFF GLOBAL -
Sound generating entity that plays .wav files. Normal non-looping sounds play each time the target_speaker is triggered. Looping sounds can be set to play by themselves (no activating trigger) or be toggled on/off by a trigger.
-------- KEYS --------
noise : path/name of .wav file to play (eg. sound/world/growl1.wav - see Notes).
wait : delay in seconds between each time the sound is played ("random" key must be set - see Notes).
random : random time variance in seconds added or subtracted from "wait" delay ("wait" key must be set - see Notes).
targetname : the activating button or trigger points to this.
targetname2 : the activating button or trigger points to this.
-------- SPAWNFLAGS --------
LOOPED_ON : sound will loop and initially start on in level (will toggle on/off when triggered).
LOOPED_OFF : sound will loop and initially start off in level (will toggle on/off when triggered).
GLOBAL : sound will play full volume throughout the level.
-------- NOTES --------
The path portion value of the "noise" key can be replaced by the implicit folder character "*" for triggered sounds that belong to a particular player model. For example, if you want to create a "bottomless pit" in which the player screams and dies when he falls into, you would place a trigger_multiple over the floor of the pit and target a target_speaker with it. Then, you would set the "noise" key to "*falling1.wav". The * character means the current player model's sound folder. So if your current player model is Visor, * = sound/player/visor, if your current player model is Sarge, * = sound/player/sarge, etc. This cool feature provides an excellent way to create "player-specific" triggered sounds in your levels.

The combination of the "wait" and "random" keys can be used to play non-looping sounds without requiring an activating trigger but both keys must be used together. The value of the "random" key is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).*/

//=============================================================================

/*QUAKED target_teleporter (0 .5 0) (-8 -8 -8) (8 8 8)
Activating this will teleport players to the location of the targeted misc_teleporter_dest entity. Unlike trigger_teleport, this entity must be activated by a trigger and does NOT allow client prediction of events.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this must point to a misc_teleporter_dest entity.*/

//=============================================================================

/*QUAKED target_unlink (0 .7 .7) (-8 -8 -8) (8 8 8) - - ALWAYS_UNLINK ALWAYS_LINK IMMEDIATELY
Target entity will be linked or unlinked from the world. This basically means that the entity is removed from the world or put back into the world again. Unlinked entities can not be interacted with anymore. Not by the player or other entities (except for target_unlink).
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to entities to link/unlink when this entity is triggered
target2 : this points to entities to link/unlink when this entity is triggered
-------- SPAWNFLAGS --------
ALWAYS_UNLINK : The targeted entity will always be unlinked from the world.
ALWAYS_LINK : The targeted entity will always be linked to the world.
IMMEDIATELY : The target_unlink will link/unlink its targeted entities when it is spawned.
-------- NOTES --------
By default the target_unlink entity works as a toggle, so entities linked to the world will be unlinked and entities not linked to the world will be linked.*/

//=============================================================================

/*QUAKED target_variable (0 .7 .7) (-8 -8 -8) (8 8 8) COMPARE_EQUALS COMPARE_NOT_EQUALS IMMEDIATELY
Writes or compares the value of a specified variable and activates its target based on whether or not the value compares to the specified value.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to entities to activate when this entity is triggered.
target2 : this points to entities to activate when this entity is triggered.
key : The name of the variable to read or write.
value : The value that will be written or compared to.
-------- SPAWNFLAGS --------
COMPARE_EQUALS : The entity reads the specified variable and triggers its targets if the specified value matches the value stored in the variable.
COMPARE_NOT_EQUALS : The entity reads the specified variable and triggers its targets if the specified value does not match the value stored in the variable.
IMMEDIATELY : The entity will be activated when it is spawned.
-------- NOTES --------
When neither COMPARE_EQUALS or COMPARE_NOT_EQUALS have been set, the entity will write the specified value to the specified variable.

Written variables will persists across mapchanges if the map changes was initialized by the target_mapchange entity.*/

//=============================================================================

/*QUAKED target_laser (0 .7 .7) (-8 -8 -8) (8 8 8) START_ON
Draws a laser beam originating from the target_laser entity. Can be set up to deal damage as well.
-------- KEYS --------
targetname : activating entity points to this.
targetname2 : activating entity points to this.
target : this points to another entity at which the laser will be aimed.
target2 : this points to a another entity at which the laser will be aimed.
color : color of the laser beam (default 1.0 0.0 0.0).
dmg : the amount of damage to deal whenever a player, bot or func_breakable is blocking the laser.
noise : path/name of .wav file to play while laser is turned on (eg. sound/weapons/lightning/lg_hum.wav).
-------- SPAWNFLAGS --------
START_ON : the laser will be turned on as it is spawned.
-------- NOTES --------
The laser deals its damage every 100ms. Unless the laser should absolutely positively be lethal, don't use too high a value for the dmg key.
Entities used as target can be target_position for static lasers, or func_ entities for moving lasers. When using func_ entities, the func_ entity must have an origin brush.*/

//=============================================================================

TRIGGER_* ENTITIES

//=============================================================================

/*QUAKED trigger_always (.5 .5 .5) (-8 -8 -8) (8 8 8)
Automatic trigger. It will fire the entities it targets as soon as it spawns in the game.
-------- KEYS --------
target : this points to the entity to activate.
target2 : this points to the entity to activate.*/

//=============================================================================

/*QUAKED trigger_death (.5 .5 .5) (-8 -8 -8) (8 8 8) - - TRIGGER_ONCE
Triggered when the player or a bot dies.
-------- KEYS --------
target : this points to the entity to activate.
target2 : this points to the entity to activate.
nobots : dying bots do not trigger this entity.
nohumans : the player's death does not trigger this entity.
count : the number of deaths that must have occurred before the entity activates its targets.
-------- SPAWNFLAGS --------
TRIGGER_ONCE : The trigger will only fire once.
-------- NOTES --------
When the count key is set, the trigger_death must effectively be triggered [count] number of times before it actually fires its targets. The trigger_death entity is considered to be triggered only when the player or bot that has died matches the entity's nobots/nohumans configuration. Note that the count specifies a total number of deaths, not a per-player/bot count.

This entity will be triggered through any means of death, including cratering, suicide and environmental hazards such as lava, slime, drowning or trigger_hurt entities. The dying player or bot is seen as the activator of the trigger.*/

//=============================================================================

/*QUAKED trigger_frag (.5 .5 .5) (-8 -8 -8) (8 8 8) - - TRIGGER_ONCE NO_SUICIDE
Triggered when the player or a bot scores a frag.
-------- KEYS --------
target : this points to the entity to activate.
target2 : this points to the entity to activate.
nobots : bots scoring a frag do not trigger this entity.
nohumans : the player scoring a frag does not trigger this entity.
count : the number of frags that must be scored before this entity is triggered.
-------- SPAWNFLAGS --------
TRIGGER_ONCE : The trigger will only fire once
NO_SUICIDE : The trigger does not respond to the player or bots blowing themselves up.
-------- NOTES --------
When the count key is set, the trigger_frag must effectively be triggered [count] number of times before it actually fires its targets. The trigger_frag entity is considered to be triggered only when the player or bot that scored a frag matches the entity's nobots/nohumans configuration. Note that the count specifies a total number of frags, not a per-player/bot count.

This entity will be triggered only when the player or a bot makes a frag. The player or bot scoring the frag is seen as the activator of the trigger.*/

//=============================================================================

/*QUAKED trigger_lock (.5 .5 .5) ? - - KEY_RED KEY_GREEN KEY_BLUE KEY_YELLOW KEY_MASTER KEY_GOLD KEY_SILVER KEY_IRON KEEP_KEYS
Used in conjunction with a holdable_key_* entities to grant/deny access to an entity (e.g. a door).
-------- KEYS --------
target : this points to the entity to activate.
target2 : this points to the entity to activate.
message : message displayed when player triggers lock without the required keys.
lockedsound : sound to play when player triggers lock without the required keys (eg. sound/world/klaxon1.wav).
unlockedsound : sound to play when player triggers lock while having the required keys (eg. sound/world/klaxon2.wav).
wait : time in seconds until trigger becomes re-triggerable after it's been touched (default 0.2, -1 = trigger once).
-------- SPAWNFLAGS --------
KEY_RED : only triggered when player has holdable_key_red item.
KEY_GREEN : only triggered when player has holdable_key_green item.
KEY_BLUE : only triggered when player has holdable_key_blue item.
KEY_YELLOW : only triggered when player has holdable_key_yellow item.
KEY_MASTER : only triggered when player has holdable_key_master item.
KEY_GOLD : only triggered when player has holdable_key_gold item.
KEY_SILVER : only triggered when player has holdable_key_silver item.
KEY_IRON : only triggered when player has holdable_key_iron item.
KEEP_KEYS : the player keeps the keys used to activate this trigger. Otherwise, used keys are removed from inventory.
-------- NOTES --------
The KEY_* spawnflags are AND-ed, meaning that checking multiple of these spawnflags will require the player to have multiple keys to trigger the lock. When no KEY_* spawnflag is checked, the lock will always be triggered, even if the player has no keys.

When using the unlockedsound, it is advised to set a wait key that is at least as long as the duration of the sound file that is being played. Otherwise the sound file will be played again before it has finished playing the first time.*/

//=============================================================================

/*QUAKED trigger_hurt (.5 .5 .5) ? - - SILENT NO_PROTECTION SLOW
Any player that touches this will be hurt by "dmg" points of damage once per server frame (very fast). A sizzling sound is also played while the player is being hurt.
-------- KEYS --------
dmg : number of points of damage inflicted to player per server frame (default 5 - integer values only).
-------- SPAWNFLAGS --------
SILENT : supresses the sizzling sound while player is being hurt.
NO_PROTECTION : player will be hurt regardless of protection (see Notes).
SLOW : changes the damage rate to once per second.
-------- NOTES --------
The invulnerability power-up (item_enviro) does not protect the player from damage caused by this entity regardless of whether the NO_PROTECTION spawnflag is set or not. Triggering a trigger_hurt will have no effect if the START_OFF spawnflag is not set. A trigger_hurt always starts on in the game.*/

//=============================================================================

/*QUAKED trigger_multiple (.5 .5 .5) ?
Variable size repeatable trigger. It will fire the entities it targets when touched by player. Can be made to operate like a trigger_once entity by setting the "wait" key to -1. It can also be activated by another trigger that targets it.
-------- KEYS --------
target : this points to the entity to activate.
target2 : this points to the entity to activate.
targetname : activating entity points to this.
targetname2 : activating entity points to this.
wait : time in seconds until trigger becomes re-triggerable after it's been touched (default 0.2, -1 = trigger once).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
nobots : bots cannot trigger this entity.
nohumans : human players cannot trigger this entity.
-------- NOTES --------
When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).*/

//=============================================================================

/*QUAKED trigger_push (.5 .5 .5) SILENT
This is used to create jump pads and launch ramps. It MUST point to a target_position or info_notnull entity to work. Unlike target_push, this is client side predicted.
-------- KEYS --------
target : this points to the target_position to which the player will jump.
-------- NOTES --------
To make a jump pad or launch ramp, place the target_position/info_notnull entity at the highest point of the jump and target it with this entity.*/

//=============================================================================

/*QUAKED trigger_teleport (.5 .5 .5) ? PORTAL
Touching this will teleport players to the location of the targeted misc_teleporter_dest entity. This entity allows client prediction of events.
-------- KEYS --------
target : this must point to a misc_teleporter_dest entity.
-------- SPAWNFLAGS --------
PORTAL : when set, the teleporter acts as a portal. No teleportion effect is shown, no sound is played and the player's spawn location has the same relative distance to the teleporter destination as to the trigger_teleport's origin. For this to function, an origin brush needs to be placed at the origin of the trigger_teleport and be part of the entity. Momentum through the portal is maintained as well as the view-angles of the player.*/

//=============================================================================

WEAPON_* ENTITIES

//=============================================================================

/*QUAKED weapon_bfg (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Big Freaking Gun.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when weapon is picked up (default 20).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/weapons2/bfg/bfg.md3"*/

//=============================================================================

/*QUAKED weapon_gauntlet (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Gauntlet.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/weapons2/gauntlet/gauntlet.md3"*/

//=============================================================================

/*QUAKED weapon_grenadelauncher (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Grenade Launcher.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when weapon is picked up (default 10).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/weapons2/grenadel/grenadel.md3"*/

//=============================================================================

/*QUAKED weapon_lightning (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Lightning Gun.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when weapon is picked up (default 100).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models\weapons2\lightning\lightning.md3"*/

//=============================================================================

/*QUAKED weapon_machinegun (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Machine Gun.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when weapon is picked up (default 100).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models\weapons2\machinegun\machinegun.md3"*/

//=============================================================================

/*QUAKED weapon_plasmagun (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Plasma gun.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when weapon is picked up (default 50).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/weapons2/plasma/plasma.md3"*/

//=============================================================================

/*QUAKED weapon_railgun (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Railgun.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when weapon is picked up (default 10).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/weapons2/railgun/railgun.md3"*/

//=============================================================================

/*QUAKED weapon_rocketlauncher (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Rocket Launcher.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when weapon is picked up (default 10).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/weapons2/rocketl/rocketl.md3"*/

//=============================================================================

/*QUAKED weapon_shotgun (1 0 .5) (-16 -16 -16) (16 16 16) SUSPENDED SILENT
Shotgun.
-------- KEYS --------
wait : time in seconds before item respawns after being picked up (default -1 (never respawn)).
random : random time variance in seconds added or subtracted from "wait" delay (default 0 - see Notes).
count: sets the amount of ammo given to the player when weapon is picked up (default 10).
team : set this to team items. Teamed items will respawn randomly after team master is picked up (see Notes).
target : picking up the item will trigger the entity this points to.
target2 : picking up the item will trigger the entity this points to.
targetname : a target_give entity can point to this for respawn freebies.
targetname2 : a target_give entity can point to this for respawn freebies.
-------- SPAWNFLAGS --------
SUSPENDED : item will spawn where it was placed in map and won't drop to the floor.
SILENT : no sound will be played when picking up this item.
-------- NOTES --------
The amount of time it takes for an item in the team to respawn is determined by the "wait" value of the item that was picked up previously. So if one of the items in the team has it's "wait" key set to -1 (never respawn), the random respawning cycle of the teamed items will stop after that item is picked up.

When the random key is set, its value is used to calculate a minimum and a maximum delay. The final time delay will be a random value anywhere between the minimum and maximum values: (min delay = wait - random) (max delay = wait + random).
-------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
model="models/weapons2/shotgun/shotgun.md3"*/

//=============================================================================

WORLDSPAWN ENTITY

//=============================================================================

/*QUAKED worldspawn (0 0 0) ?
Only used for the world.
-------- KEYS --------
message : text to print at user logon. Used for name of level.
music : path/name of looping .wav file used for level's music (eg. music/sonic5.wav).
scoreboardmusic : path/name of looping .wav file used for level's scoreboard music (eg. music/win.wav).
deathmusic :  path/name of looping .wav file used when player is dead (eg. music/loss.wav).
playermodel : the player's model is forced to this player model (eg. sarge or visor/gorre).
playerheadmodel : the player's headmodel is forced to this head model (eg. sarge or visor/gorre). See notes.
objectivesoverlay : path/name of the image to use as objectives overlay (eg. menu/objectives/overlay.tga).
enablebreath : setting this to 1 will enable cold breath puffs.
enabledust : setting this to 1 will enable dust trails on surfaces with the "dust" surfaceparm.
_ambient OR ambient : Adds a constant value to overall lighting. Use is not recommended. Ambient light will have a tendency to flatten out variations in light and shade.
_color : RGB value for ambient light color (default is 0 0 0).
gravity : gravity of level (default is normal gravity: 800).
gridsize : granularity of the lightgrid created by q3map. Value is three integers separated by spaces, representing number of units between grid points in X Y Z. Default gridsize value is 128 128 256. Use larger powers of 2 to reduce BSP size and compile time on very large maps.
_blocksize : q3map always splits the BSP tree along the planes X=_blocksize*n and Y=_blocksize*n. Default _blocksize value is 1024. Increase the blocksize using larger powers of 2 to reduce compile times on very large maps with a low structural brush density.
-------- Q3MAP2 KEYS --------
_minlight : Minimum light value, levelwide. Uses the _color key to set color. Does not add unlike ambient.
_minvertexlight : Minimum vertex lighting, levelwide.
_mingridlight : Minimum lightgrid (dynamic entity lighting) levelwide.
_keeplights : Keep light entities in the BSP. Normally stripped out by the BSP process and read from the .map file by the lighting phase.
_noshadersun : Ignore q3map_sun/sun directives in sky shaders and ONLY use entity sun lights.
_farplanedist : Limit on how many units the vis phase of compilation can see. Used in combination with level-wide fog, it can help reduce r_speeds on large, open maps.
_foghull : Shader to use for "fog hull." Foghull shader should be a sky shader. Omit the "textures/" prefix.
_lightmapscale : Floating point value scaling the resolution of lightmaps on brushes/patches in the world. Can be overridden in func_group (or other entities) (default 1.0).
_cs OR _castshadows : Allows per-entity control over shadow casting. Defaults to 0 on entities, 1 on world. 0 = no shadow casting. 1 = cast shadows on world. > 1 = cast shadows on entities with _rs (or _receiveshadows) with the corresponding value, AND world. Negative values imply same, but DO NOT cast shadows on world.
_rs OR _receiveshadows : Allows per-entity control over shadow reception. Defaults to 1 on everything (world shadows). 0 = receives NO shadows. > 1 = receive shadows only from corresponding keyed entities (see above) and world. < 1 = receive shadows ONLY from corresponding keyed entities.
_celshader : Sets the cel shader used for this geometry. Note: omit the "textures/" prefix. Overridable in entities.
-------- Q3MAP2 TERRAIN KEYS --------
_indexmap OR alphamap : Path/name for the art file used to guide the mapping of textures on the terrain surface.
_layers OR layers : Integer value is the number unique root shaders that will be use on the terrain.
_shader OR shader : Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
-------- NOTES --------
When a playermodel is specified without specifying a headmodel, the player's headmodel will be forced to the model specified with the playermodel key.

For more info on the enablebreath and enabledust keys, refer to the Team Arena terrain mapping manual.*/
