b3524eafb1ef189500b27de1ead2da86ff9eccdb
[xonotic/xonotic-maps.pk3dir.git] / scripts / entities.def
1 /*QUAKED _skybox (0.77 0.88 1.0) (-4 -4 -4) (4 4 4) 
2 Compiler-only entity that specifies a the origin of a sky box (a wholly contained, separate area of the map), similar to some games' portal skies. When compiled with Q3Map2, the sky box 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. As it is compiler-only, it can't "scale up" entities in its box.
3 To use this, carve a small box in some larger structure on your map, place this entity inside that box hole, and make a small version on what should be seen in the sky there.
4 -------- KEYS --------
5 angle: rotation angle of the sky surfaces.
6 angles: Individual control of PITCH, YAW, and ROLL (default 0 0 0).
7 _scale: scaling factor (default 64), good values are between 50 and 300, depending on the map.
8 */
9
10 /*QUAKED _decal (1.0 0.77 0.88) ?
11 Compiler-only entity that projects a surface (which must be a patch mesh) in a direction (which is given by the vector from the center of this entity to the "target" entity)
12 -------- KEYS --------
13 target: the entity to be targeted by the projection
14 -------- NOTES --------
15 This entity MUST contain one or more patch meshes.
16 The shaders of these patches SHOULD have the "polygonoffset" shader keyword (or you will get insane z-fighting).
17 The targeted entity is preferably an info_null.
18 The projection is a linear projection, and originates from the center of this entity (the start of the arrow line in Radiant) to the origin of the targeted entity (the end of the arrow line in Radiant).
19 */
20
21 /*QUAKED dom_controlpoint (.3 .3 1) (-16 -16 -16) (16 16 16) 
22 Domination  control point
23 In order to get Domination working well in your map, you need to place dom_team and dom_controlpoint entities.  You *must* have at least 3 dom_team entities - 2 minimum teams and one blank one (empty netname and no team).  You can have up to 4 teams (5 dom_team entities).
24 -------- KEYS --------
25 message: message to be displayed to all players when this point is captured, preceded by the team's name.  This defaults to " has captured a control point".  You can specify different names for each point, for example " has captured the Lava Room".
26 wait: How often this point gives its controlling team frags.
27 frags: How many frags this point gives each wait cycle.
28 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
29 zbqry="zbqryf/qbzvangvba/qbz_hapynvzrq.zq3"
30
31 */
32
33 /*QUAKED dom_team (.3 .3 1) (-16 -16 -16) (16 16 16) 
34 Domination team.
35 In order to get Domination working well in your map, you need to place dom_team and dom_controlpoint entities.  You *must* have at least 3 dom_team entities - 2 minimum teams and one blank one (empty netname and no team).  You can have up to 4 teams (5 dom_team entities).
36
37 dom_team entites declare the teams (and the models the team uses) that are available in the domination game. Their position does not matter.
38
39 model should be set to models/domination/dom_<team>.md3, where <team> is either "red", "blue", "yellow", or "pink".
40 -------- KEYS --------
41 netname: name of team (Red Team).  Set to "" or don't define for the required blank team.
42 cnt: color of the team.  See the "Helpful Extras" section in Docs/mapping.txt for info.
43 model: When this team captures control points, the points turn to this model.  If this is the neutral team, points start out as this model.
44 noise: Sound to be played on the control point when it's captured.  Only players nearby will hear it.
45 noise1: Sound to be played to all players when the control point is captured.  Also good for an announcer voice ("Red Team has captured a control point")
46 */
47
48 /*QUAKED func_assault_destructible (.5 0 .5) ? - - - - - - - - NOSPLASH
49 This is a brush model which can be damaged. Once triggered it's active and will happily receive damage players inflict upon it. Once all health is consumed it'll disappear and trigger the targeted entity/entities. As damage is received the brush model will be tinted in an increasingly visible flavor of red to give visible feedback.
50 -------- KEYS --------
51 health: The damage this trigger can take
52 target: The entity/entities to be triggered once this entity gets invisible
53 targetname: The name other entities can use to target this entity
54 mdl: particle effect name to show when destroyed
55 count: particle effect multiplier
56 mdl_dead: optional replacement model to show when destroyed
57 debris: names of debris models to show when destroyed, separated by spaces
58 noise: sound to play when destroyed
59 dmg: damage to deal to the environment when destroyed
60 dmg_edge: edge damage to deal to the environment when destroyed
61 dmg_radius: damage radius
62 dmg_force: damage force
63 message: death message when a player gets hit by the explosion
64 message2: death message when someone gets pushed into this (default: "was pushed into an explosion by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
65 debrismovetype: way in which the debris moves: one of 1 = ANGLENOCLIP, 2 = ANGLECLIP, 3 = WALK, 4 = STEP, 5 = FLY, 6 = TOSS, 7 = PUSH, 8 = NOCLIP, 9 = FLYMISSILE, 10 = BOUNCE, 11 = BOUNCEMISSILE
66 debrissolid: solidity of the debris: one of 0 = NOT, 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE
67 debrisvelocity: initial velocity vector of the debris (static part)
68 debrisvelocityjitter: initial velocity vector of the debris (random part)
69 debrisavelocityjitter: initial angular velocity vector of the debris (random part)
70 debristime: time till the debris fades (average)
71 debristimejitter: time till the debris fades (random part)
72 debrisfadetime: how long debris takes to fade
73 debrisdamageforcescale: how much debris is affected by damage force (e.g. explosions)
74 debrisskin: skin number of debris
75 -------- SPAWNFLAGS --------
76 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
77 */
78
79 /*QUAKED func_assault_wall (.5 0 .5) ?
80 Brush model that will disappear once the targeted target_objective is fulfilled. This can be used to restrict access to parts of the map until a certain objective has been conquered.
81 -------- KEYS --------
82 target: targetname of a target_objective
83 */
84
85 /*QUAKED func_bobbing (0 .5 .8) ? X_AXIS Y_AXIS
86 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 axis in which it's bobbing. Entity bobs 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.
87 -------- KEYS --------
88 speed: amount of time in seconds for one complete oscillation cycle (default 4).
89 height: sets the amount of travel of the oscillation movement (default 32). 
90 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).
91 noise: path/name of .wav or .ogg file to play. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
92 dmg: damage a player who gets crushed by it receives
93 dmgtime: interval to apply dmg to a player who is s in the way
94 message: death message when a player gets crushed
95 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
96 -------- SPAWNFLAGS --------
97 X_AXIS: entity will bob along the X axis.
98 Y_AXIS: entity will bob along the Y axis.
99 */
100
101 /*QUAKED func_pendulum (0 .5 .8) ?
102 Solid entity that swings back and forth in an angular motion. Entity swings on the north-south direction by default (can be changed by using a different yaw angle).
103 -------- KEYS --------
104 speed: angle amount of the swinging
105 freq: frequency (cycles per second) of the swinging (if unspecified, a physically "somewhat correct" value is calculated that matches Quake 3)
106 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).
107 noise: path/name of .wav or .ogg file to play. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
108 dmg: damage a player who gets crushed by it receives
109 dmgtime: interval to apply dmg to a player who is s in the way
110 message: death message when a player gets crushed
111 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
112 */
113
114 /*QUAKED func_button (0 .5 .8) ? - - - - - - - - NOSPLASH
115 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.
116 -------- KEYS --------
117 angle: determines the direction in which the button will move (up = -1, down = -2).
118 target: all entities with a matching targetname will be triggered.
119 target2: all entities with a matching targetname will be triggered.
120 target3: all entities with a matching targetname will be triggered.
121 target4: all entities with a matching targetname will be triggered.
122 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
123 speed: speed of button's displacement (default 40).
124 platmovetype: movement type (1 = linear, 2 = cosine [default])
125 wait: number of seconds button stays pressed (default 1, -1 = return immediately).
126 lip: lip remaining at end of move (default 4 units).
127 health: (default 0) if set to any non-zero value, the button must take damage (any amount) to activate.
128 -------- SPAWNFLAGS --------
129 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
130 */
131
132 /*QUAKED func_door (0 .5 .8) ? START_OPEN - DOOR_DONT_LINK GOLD_KEY SILVER_KEY TOGGLE - - NOSPLASH
133 Normal sliding door entity. By default, the door will activate when player walks close to it or when damage is inflicted to it.
134 If DOOR_DONT_LINK is not set, the door will be linked with all doors it touches. Note however that for linked doors to work properly, it is necessary that ALL linked doors have SOME volume of common area (that is, there must be a point that is part of ALL doors).
135 -------- KEYS --------
136 message: is printed when the door is touched if it is a trigger door and it hasn't been fired yet, or death message if dmg is set
137 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
138 angle: determines the opening direction
139 targetname: if set, no touch field will be spawned and a remote button or trigger field activates the door.
140 health: if set, door must be shot open
141 speed: movement speed (100 default)
142 platmovetype: movement type (1 = linear, 2 = cosine [default])
143 wait: wait before returning (3 default, -1 = never return)
144 lip: lip remaining at end of move (8 default)
145 dmg: damage to inflict when blocked (when triggered and someone is in the way)
146 sounds: when 1, use default door sounds
147 noise1: sound when the door opens
148 noise2: sound when the door closes
149 itemkeys: keys required to open this door.
150 -------- SPAWNFLAGS --------
151 START_OPEN: causes the door to move to its destination when spawned, and operate in reverse.  It is used to temporarily or permanently close off an area when triggered (not useful for touch or damage triggered doors).
152 DOOR_DONT_LINK: the door won't link with another door it touches
153 GOLD_KEY: causes the door to open only if the activator holds a gold key (Q1 compatibility).
154 SILVER_KEY: causes the door to open only if the activator holds a silver key (Q1 compatibility).
155 TOGGLE: causes the door to wait in both the start and end states for a trigger event.
156 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
157 -------- NOTES --------
158 More information about keys can be found in item_key description.
159 */
160
161 /*QUAKED func_door_rotating (0 .5 .8) ? START_OPEN BIDIR DOOR_DONT_LINK BIDIR_IN_DOWN - TOGGLE X_AXIS Y_AXIS NOSPLASH
162 Normal rotating door entity that opens by rotating around an axis (default: Z). Use an origin brush to specify the rotation axis.
163 By default, the door will activate when player walks close to it or when damage is inflicted to it.
164 If DOOR_DONT_LINK is not set, the door will be linked with all doors it touches.
165 BIDIR makes the door work bidirectional, so that the opening direction is always away from the requestor.
166 The usage of bidirectional doors requires two manually instantiated triggers (trigger_multiple), the one to open it in the other direction
167 must have set trigger_reverse to 1.
168 BIDIR_IN_DOWN will the door prevent from reopening while closing if it is triggered from the other side.
169 -------- KEYS --------
170 message: is printed when the door is touched if it is a trigger door and it hasn't been fired yet, or death message if dmg is set
171 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
172 angle: determines the destination angle for opening. negative values reverse the direction (90 default)
173 targetname: if set, no touch field will be spawned and a remote button or trigger field activates the door.
174 health: if set, door must be shot open
175 speed: speed to rotate (in degrees per second)
176 wait: wait before returning (3 default, -1 = never return)
177 dmg: damage to inflict when blocked (when triggered and someone is in the way)
178 sounds: when 1, use default door sounds
179 noise1: sound when the door opens
180 noise2: sound when the door closes
181 -------- SPAWNFLAGS --------
182 START_OPEN: causes the door to move to its destination when spawned, and operate in reverse.  It is used to temporarily or permanently close off an area when triggered (not useful for touch or damage triggered doors).
183 DOOR_DONT_LINK: the door won't link with another door it touches
184 TOGGLE: causes the door to wait in both the start and end states for a trigger event.
185 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
186 */
187
188 /*QUAKED func_door_secret (0 .5 .8) ? OPEN_ONCE 1ST_LEFT 1ST_DOWN NO_SHOOT ALWAYS_SHOOT
189 Basic secret door. Slides back, then to the side. Angle determines direction. Opens when targeted or when shot; does not create its own trigger field like func_door does.
190 -------- KEYS --------
191 platmovetype: movement type (1 = linear, 2 = cosine [default])
192 wait: # of seconds before coming back
193 key1: first entity key with one-line description
194 key2: second entity key with one-line description
195 t_width: override WIDTH to move back (or height if going down)
196 t_length: override LENGTH to move sideways
197 dmg: damage to inflict when blocked (2 default)
198 message: text to display when activating the door, or death message if dmg is set
199 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
200 noise1: sound when opening backwards or closing
201 noise2: sound when opening sideways
202 noise3: sound when stopping
203 -------- SPAWNFLAGS --------
204 OPEN_ONCE: only work once, then stay open
205 1ST_LEFT: 1st move is left of arrow
206 1ST_DOWN: 1st move is down from arrow
207 NO_SHOOT: never respond to shots
208 ALWAYS_SHOOT: even if targetname is set, respond to shots
209 */
210
211 /*QUAKED func_group (0 .5 .8) ? 
212 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.
213 -------- Q3MAP2 KEYS --------
214 _lightmapscale: light map resolution factor
215 _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.
216 _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.
217 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
218 -------- KEYS --------
219 _indexmap: Path/name for the TGA file used to guide the mapping of textures on the terrain surface.
220 _layers: number of unique root shaders that will be use on the terrain.
221 _shader: Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
222 _offsets: space separated list of height offsets for the index map
223 */
224
225 /*QUAKED func_ladder (0 .5 .8) ? 
226 a ladder, need i say no more
227 grab a trigger brush and put it in front of the part that you want the player to climb
228 */
229
230 /*QUAKED func_plat (0 .5 .8) ? - - CRUSH
231 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.
232 -------- KEYS --------
233 speed: determines how fast the plat moves (default 150).
234 platmovetype: movement type (1 = linear, 2 = cosine [default])
235 lip: lip remaining at end of move (default 16). Has no effect if "height" is set.
236 height: if set, this will determine the total amount of vertical travel of the plat.
237 dmg: damage to inflict on player when he blocks operation of plat. Plat will reverse direction when blocked.
238 targetname: if set, the trigger that points to this will lower the plat each time it fires. The plat lowers and lifts someone up later.
239 sounds: 2 for alternate sound set, -1 for silence, or use the fields below
240 sound1: platform starts moving sound
241 sound2: platform stop sound
242 message: kill message, when someone gets killed by this plat
243 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
244 -------- SPAWNFLAGS --------
245 CRUSH: crush players hit by the platform instantly
246 -------- NOTES --------
247 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.
248 */
249
250 /*QUAKED func_rain (0 .5 .8) ? 
251 This is an invisible area like a trigger, which rain falls inside of.
252 -------- KEYS --------
253 velocity: falling direction (should be something like '0 0 -700', use the X and Y velocity for wind)
254 cnt: sets color of rain in the Quake palette (default 12 - white)
255 count: adjusts density, this many particles fall every second for a 1024x1024 area, default is 2000
256 */
257
258 /*QUAKED func_rotating (0 .5 .8) ? - - X_AXIS Y_AXIS
259 Brush entity that spins in place on one axis (default Z). Use an origin brush to specify the rotation axis.
260 To rotate around another axis, make a func_wall with an explicit avelocity given.
261 -------- KEYS --------
262 speed: speed to rotate (in degrees per second)
263 noise: path/name of looping .wav file to play.
264 dmg: Do this much dmg every .dmgtime interval when blocked
265 dmgtime: See above. (0.25s default)
266 message: kill message when crushed by this
267 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
268 -------- SPAWNFLAGS --------
269 X_AXIS: rotate around the X axis
270 Y_AXIS: rotate around the Y axis
271 */
272
273 /*QUAKED func_snow (0 .5 .8) ? 
274 This is an invisible area like a trigger, which snow falls inside of.
275 -------- KEYS --------
276 velocity: falling direction (should be something like '0 0 -300', use the X and Y velocity for wind)
277 cnt: sets color of snow in the Quake palette (default 12 - white)
278 count: adjusts density, this many particles fall every second for a 1024x1024 area, default is 2000
279 */
280
281 /*QUAKED func_stardust (.5 .5 .5) (-8 -8 -8) (8 8 8) 
282 Point entity with EF_STARDUST applied. This will spawn a particle cloud with mostly golden particles. Used as eye-candy.
283 */
284
285 /*QUAKED func_train (0 .5 .8) ? 
286 Trains are moving solids that follow a cycle of path_corner entities. Origin brushes are NOT supported; they use the "mins" corner as reference (that is, lowest x, y, and z coordinates).
287 At each node, the train's mins corner hits exactly the path_corner.
288 Trains always start on in the game.
289 Trains do not damage the played when blocked.
290 Trains cannot emit sound.
291 Trains are not trigger-able or toggle-able.
292 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.
293 -------- KEYS --------
294 speed: default/initial speed of train (default 100 or overridden by speed value of targeted path_corner)
295 platmovetype: movement type (1 = linear, 2 = cosine [default])
296 target: targetname of first path_corner to move to at the default speed; ideally, this path_corner shall be exactly where the train starts
297 noise: path/name of .wav or .ogg file to play while moving. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
298 dmg: damage a player who gets crushed by it receives
299 dmgtime: interval to apply dmg to a player who is s in the way
300 message: death message when a player gets crushed
301 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
302 */
303
304 /*QUAKED info_location (1 1 0) (-8 -8 -8) (8 8 8) 
305 Location for use by the %l escape in "say" messages.
306 The closest "visible" info_location entity is chosen to find the right location name for a point.
307 -------- KEYS --------
308 netname: name of location, possibly with color codes
309 */
310
311 /*QUAKED info_notnull (0 .5 0) (-8 -8 -8) (8 8 8) 
312 Entity that does nothing, but may be targeted (e.g. to use its position)
313 -------- KEYS --------
314 targetname: must match the target key of entity that uses this for pointing.
315 */
316
317 /*QUAKED info_null (0 .5 0) (-8 -8 -8) (8 8 8) 
318 Aiming target for q3map2-internal entities like _decal or light. Removes itself when loaded, so it can NOT be used for in-game stuff!
319 -------- KEYS --------
320 targetname: the entity that requires an aiming direction points to this.
321 */
322
323 /*QUAKED info_player_attacker (1 0.5 0) (-16 -16 -24) (16 16 45) 
324 Attacking team's player spawning location in Assault. Should touch the floor, but not the walls, and should point where the player should look when he spawns there.
325 -------- KEYS --------
326 target: this should point to a target_objective to decide when this spawning point is active.
327 target2: trigger all entities with this targetname when someone spawns
328 target3: trigger all entities with this targetname when someone spawns
329 target4: trigger all entities with this targetname when someone spawns
330 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
331 cnt: weight of spawn point for random selection. Set to a lower value if you have many spawn points close together. Default value is 1.
332 restriction: when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn)
333 */
334
335 /*QUAKED info_player_deathmatch (0 1 0) (-16 -16 -24) (16 16 45) 
336 Normal player spawning location in game types without team spawns. Should touch the floor, but not the walls, and should point where the player should look when he spawns there.
337 -------- KEYS --------
338 cnt: weight of spawn point for random selection. Set to a lower value if you have many spawn points close together. Default value is 1.
339 target: trigger all entities with this targetname when someone spawns
340 targetname: when targeted by a func_button, pressing the button will assign the spawn point to the team of the activator as an additional spawn point, or reassign it if it was already assigned. Also used to assign spawn points to Onslaught control points.
341 restriction: when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn)
342 */
343
344 /*QUAKED info_player_defender (.5 .5 .5) (-16 -16 -24) (16 16 45) 
345 Defending team's player spawning location in Assault. Should touch the floor, but not the walls, and should point where the player should look when he spawns there.
346 -------- KEYS --------
347 target: this should point to a target_objective to decide when this spawning point is active.
348 target2: trigger all entities with this targetname when someone spawns
349 target3: trigger all entities with this targetname when someone spawns
350 target4: trigger all entities with this targetname when someone spawns
351 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
352 cnt: weight of spawn point for random selection. Set to a lower value if you have many spawn points close together. Default value is 1.
353 restriction: when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn)
354 */
355
356 /*QUAKED info_player_team1 (1 0 0) (-16 -16 -24) (16 16 45) 
357 Red team's player spawning location in e.g. CTF and Onslaught. Should touch the floor, but not the walls, and should point where the player should look when he spawns there.
358 -------- KEYS --------
359 cnt: weight of spawn point for random selection. Set to a lower value if you have many spawn points close together. Default value is 1.
360 target: trigger all entities with this targetname when someone spawns
361 targetname: when targeted by a func_button, pressing the button will reassign the spawn point to the team of the activator. If a team has no more spawn point left, it immediately loses.
362 restriction: when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn)
363 */
364
365 /*QUAKED info_player_team2 (0 0 1) (-16 -16 -24) (16 16 45) 
366 Blue team's player spawning location in e.g. CTF and Onslaught. Should touch the floor, but not the walls, and should point where the player should look when he spawns there.
367 -------- KEYS --------
368 cnt: weight of spawn point for random selection. Set to a lower value if you have many spawn points close together. Default value is 1.
369 target: trigger all entities with this targetname when someone spawns
370 targetname: when targeted by a func_button, pressing the button will reassign the spawn point to the team of the activator. If a team has no more spawn point left, it immediately loses.
371 restriction: when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn)
372 */
373
374 /*QUAKED info_player_team3 (1 1 0) (-16 -16 -24) (16 16 45) 
375 Yellow team's player spawning location, but there is no game mode to use this yet. Anyway, should touch the floor, but not the walls, and should point where the player should look when he spawns there.
376 -------- KEYS --------
377 cnt: weight of spawn point for random selection. Set to a lower value if you have many spawn points close together. Default value is 1.
378 target: trigger all entities with this targetname when someone spawns
379 targetname: when targeted by a func_button, pressing the button will reassign the spawn point to the team of the activator. If a team has no more spawn point left, it immediately loses.
380 restriction: when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn)
381 */
382
383 /*QUAKED info_player_team4 (1 0 1) (-16 -16 -24) (16 16 45) 
384 Pink team's player spawning location, but there is no game mode to use this yet. Anyway, should touch the floor, but not the walls, and should point where the player should look when he spawns there.
385 -------- KEYS --------
386 cnt: weight of spawn point for random selection. Set to a lower value if you have many spawn points close together. Default value is 1.
387 target: trigger all entities with this targetname when someone spawns
388 targetname: when targeted by a func_button, pressing the button will reassign the spawn point to the team of the activator. If a team has no more spawn point left, it immediately loses.
389 restriction: when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn)
390 */
391
392 /*QUAKED item_armor_large (.4 .8 .4) (-30 -30 0) (30 30 32) FLOATING
393 Large Armor (default 100 armor points)
394 -------- KEYS --------
395 respawntime: time till it respawns (default: 30)
396 respawntimejitter: respawn time randomization +/- seconds (default: 0)
397 armorvalue: amount of armor it gives (default: 100 (g_pickup_armorlarge))
398 max_armorvalue: max of armor it increases to (default: 999 (g_pickup_armorlarge_max))
399 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
400 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
401 -------- SPAWNFLAGS --------
402 FLOATING: the item will float in air, instead of aligning to the floor by falling
403 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
404 modeldisabled="models/items/g_a25.md3"
405 */
406
407 /*QUAKED item_armor_big (.4 .8 .4) (-30 -30 0) (30 30 32) FLOATING
408 Big Armor (default 50 armor points)
409 -------- KEYS --------
410 respawntime: time till it respawns (default: 20)
411 respawntimejitter: respawn time randomization +/- seconds (default: 0)
412 armorvalue: amount of armor it gives (default: 50 (g_pickup_armorlarge))
413 max_armorvalue: max of armor it increases to (default: 999 (g_pickup_armorlarge_max))
414 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
415 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
416 -------- SPAWNFLAGS --------
417 FLOATING: the item will float in air, instead of aligning to the floor by falling
418 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
419 modeldisabled="models/items/g_a50.md3"
420 */
421
422 /*QUAKED item_armor_medium (.4 .8 .4) (-30 -30 0) (30 30 32) FLOATING
423 Medium Armor (default 25 armor points)
424 -------- KEYS --------
425 respawntime: time till it respawns (default: 20)
426 respawntimejitter: respawn time randomization +/- seconds (default: 0)
427 armorvalue: amount of armor it gives (default: 25 (g_pickup_armormedium))
428 max_armorvalue: max of armor it increases to (default: 999 (g_pickup_armormedium_max))
429 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
430 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
431 -------- SPAWNFLAGS --------
432 FLOATING: the item will float in air, instead of aligning to the floor by falling
433 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
434 modeldisabled="models/items/g_armormedium.md3"
435 */
436
437 /*QUAKED item_armor_small (.4 .8 .4) (-30 -30 0) (30 30 32) FLOATING
438 Small Armor (default 5 armor points)
439 -------- KEYS --------
440 respawntime: time till it respawns (default: 15)
441 respawntimejitter: respawn time randomization +/- seconds (default: 0)
442 armorvalue: amount of armor it gives (default: 5 (g_pickup_armorsmall))
443 max_armorvalue: max of armor it increases to (default: 999 (g_pickup_armorsmall_max))
444 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
445 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
446 -------- SPAWNFLAGS --------
447 FLOATING: the item will float in air, instead of aligning to the floor by falling
448 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
449 modeldisabled="models/items/g_a1.md3"
450 */
451
452 /*QUAKED item_bullets (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
453 Machine Gun ammo
454 -------- KEYS --------
455 ammo_nails: bullets gained by this item (if unset, g_pickup_nails is used)
456 respawntime: time till it respawns (default: 15)
457 respawntimejitter: respawn time randomization +/- seconds (default: 0)
458 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
459 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
460 -------- SPAWNFLAGS --------
461 FLOATING: the item will float in air, instead of aligning to the floor by falling
462 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
463 modeldisabled="models/items/a_bullets.md3"
464 */
465
466 /*QUAKED item_cells (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
467 Nex, Electro and Crylink ammo
468 -------- KEYS --------
469 ammo_cells: cells gained by this item (if unset, g_pickup_cells is used)
470 respawntime: time till it respawns (default: 15)
471 respawntimejitter: respawn time randomization +/- seconds (default: 0)
472 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
473 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
474 -------- SPAWNFLAGS --------
475 FLOATING: the item will float in air, instead of aligning to the floor by falling
476 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
477 modeldisabled="models/items/a_cells.md3"
478 */
479
480 /*QUAKED item_flag_team1 (1 0 0) (-32 -32 0) (32 32 74) 
481 CTF flag for team one (Red). Use more than one if you really insist.
482 -------- KEYS --------
483 model: model to use
484 scale: scaling factor (DO set this when using your own model!)
485 noise: sound played when flag is picked up
486 noise1: sound played when flag is returned
487 noise2: sound played when flag is captured
488 noise3: sound played when flag is lost in the field and respawns itself
489 -------- ZBQRY SBE ENQVNAG BAYL - QB ABG FRG GUVF NF N XRL --------
490 zbqry="zbqryf/pgs/enqvnag/synt_erq_enqvnag.zq3"
491 */
492
493 /*QUAKED item_flag_team2 (0 0 1) (-32 -32 0) (32 32 74) 
494 CTF flag for team two (Blue). Use more than one if you really insist.
495 -------- KEYS --------
496 model: model to use
497 scale: scaling factor (DO set this when using your own model!)
498 noise: sound played when flag is picked up
499 noise1: sound played when flag is returned
500 noise2: sound played when flag is captured
501 noise3: sound played when flag is lost in the field and respawns itself
502 -------- ZBQRY SBE ENQVNAG BAYL - QB ABG FRG GUVF NF N XRL --------
503 zbqry="zbqryf/pgs/enqvnag/synt_oyhr_enqvnag.zq3"
504 */
505
506 /*QUAKED item_health_large (.9 .3 .3) (-30 -30 0) (30 30 48) FLOATING
507 Large Health (default 50 health points)
508 -------- KEYS --------
509 respawntime: time till it respawns (default: 20)
510 respawntimejitter: respawn time randomization +/- seconds (default: 0)
511 health: amount of health it gives (default: 50 (g_pickup_healthlarge))
512 max_health: max of health it increases to (default: 999 (g_pickup_healthlarge_max))
513 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
514 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
515 -------- SPAWNFLAGS --------
516 FLOATING: the item will float in air, instead of aligning to the floor by falling
517 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
518 modeldisabled="models/items/g_h50.md3"
519 */
520
521 /*QUAKED item_health_medium (.9 .3 .3) (-30 -30 0) (30 30 48) FLOATING
522 Medium Health (default 25 health points)
523 -------- KEYS --------
524 respawntime: time till it respawns (default: 15)
525 respawntimejitter: respawn time randomization +/- seconds (default: 0)
526 health: amount of health it gives (default: 25 (g_pickup_healthmedium))
527 max_health: max of health it increases to (default: 999 (g_pickup_healthmedium_max))
528 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
529 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
530 -------- SPAWNFLAGS --------
531 FLOATING: the item will float in air, instead of aligning to the floor by falling
532 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
533 modeldisabled="models/items/g_h25.md3"
534 */
535
536 /*QUAKED item_health_mega (.9 .3 .3) (-30 -30 0) (30 30 48) FLOATING
537 Mega Health (default 100 health points)
538 In Minstagib, this randomly turns into either an invisibility, an extra lives or a speed power-up with a default respawn time of 120.
539 -------- KEYS --------
540 respawntime: time till it respawns (default: 30)
541 respawntimejitter: respawn time randomization +/- seconds (default: 0)
542 health: amount of health it gives (default: 100 (g_pickup_healthmega))
543 max_health: max of health it increases to (default: 999 (g_pickup_healthmega_max))
544 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
545 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
546 -------- SPAWNFLAGS --------
547 FLOATING: the item will float in air, instead of aligning to the floor by falling
548 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
549 modeldisabled="models/items/g_h100.md3"
550 */
551
552 /*QUAKED item_health_small (.9 .3 .3) (-30 -30 0) (30 30 48) FLOATING
553 Small Health (default 5 health points)
554 -------- KEYS --------
555 respawntime: time till it respawns (default: 15)
556 respawntimejitter: respawn time randomization +/- seconds (default: 0)
557 health: amount of health it gives (default: 5 (g_pickup_healthsmall))
558 max_health: max of health it increases to (default: 5 (g_pickup_healthsmall_max))
559 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
560 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
561 -------- SPAWNFLAGS --------
562 FLOATING: the item will float in air, instead of aligning to the floor by falling
563 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
564 modeldisabled="models/items/g_h1.md3"
565 */
566
567 /*QUAKED item_invincible (.3 .3 1) (-30 -30 0) (30 30 48) FLOATING
568 Strong Shield
569 In Minstagib, this randomly turns into either an invisibility, an extra lives or a speed power-up with a default respawn time of 120.
570 -------- KEYS --------
571 respawntime: time till it respawns (default: 120)
572 respawntimejitter: respawn time randomization +/- seconds (default: 0)
573 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
574 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
575 -------- SPAWNFLAGS --------
576 FLOATING: the item will float in air, instead of aligning to the floor by falling
577 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
578 modeldisabled="models/items/g_invincible.md3"
579 */
580
581 /*QUAKED item_key (0 .5 .8) (-16 -16 -24) (16 16 32) FLOATING
582 A key entity.
583 The itemkeys should contain one of the following key IDs:
584 1 - GOLD key - 
585 2 - SILVER key
586 4 - BRONZE key
587 8 - RED keycard
588 16 - BLUE keycard
589 32 - GREEN keycard
590 Custom keys:
591 ... - last key is 1<<23
592 Keys with bigger Id than 32 don't have a default netname and model, if you use one of them, you MUST provide those.
593 -----------KEYS------------
594 colormod: color of the key (default: '.9 .9 .9').
595 itemkeys: a key Id.
596 message: message to print when player picks up this key.
597 model: custom key model to use.
598 netname: the display name of the key.
599 noise: custom sound to play when player picks up the key.
600 -------- SPAWNFLAGS --------
601 FLOATING: the item will float in air, instead of aligning to the floor by falling
602 ---------NOTES----------
603 This is the only correct way to put keys on the map!
604
605 itemkeys MUST always have exactly one bit set.
606 */
607
608 /*QUAKED item_key1 (0 .5 .8) (-16 -16 -24) (16 16 32) FLOATING
609 SILVER key.
610 -----------KEYS------------
611 colormod: color of the key (default: '.9 .9 .9').
612 message: message to print when player picks up this key.
613 model: custom model to use.
614 noise: custom sound to play when player picks up the key.
615 -------- SPAWNFLAGS --------
616 FLOATING: the item will float in air, instead of aligning to the floor by falling
617 ---------NOTES----------
618 Don't use this entity on new maps! Use item_key instead.
619 */
620
621 /*QUAKED item_key2 (0 .5 .8) (-16 -16 -24) (16 16 32) FLOATING
622 GOLD key.
623 -----------KEYS------------
624 colormod: color of the key (default: '1 .9 0').
625 message: message to print when player picks up this key.
626 model: custom model to use.
627 noise: custom sound to play when player picks up the key.
628 -------- SPAWNFLAGS --------
629 FLOATING: the item will float in air, instead of aligning to the floor by falling
630 ---------NOTES----------
631 Don't use this entity on new maps! Use item_key instead.
632 */
633
634 /*QUAKED item_minst_cells (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
635 Minstagib ammo.
636 Always contains 5 (g_minstagib_ammo_drop) shots.
637 It only appears when playing Minstagib and prevents auto-replacement of weapon_nex & weapon_rocketlauncher when used.
638 -------- KEYS --------
639 respawntime: time till it respawns (default: 45)
640 respawntimejitter: respawn time randomization +/- seconds (default: 0)
641 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
642 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
643 -------- SPAWNFLAGS --------
644 FLOATING: the item will float in air, instead of aligning to the floor by falling
645 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
646 modeldisabled="models/items/a_cells.md3"
647 */
648
649 /*QUAKED item_rockets (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
650 Rocket Launcher, Hagar and Mortar ammo
651 -------- KEYS --------
652 ammo_rockets: rockets gained by this item (if unset, g_pickup_rockets is used)
653 respawntime: time till it respawns (default: 15)
654 respawntimejitter: respawn time randomization +/- seconds (default: 0)
655 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
656 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
657 -------- SPAWNFLAGS --------
658 FLOATING: the item will float in air, instead of aligning to the floor by falling
659 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
660 modeldisabled="models/items/a_rockets.md3"
661 */
662
663 /*QUAKED item_shells (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
664 Shotgun ammo
665 -------- KEYS --------
666 ammo_shells: shells gained by this item (if unset, g_pickup_shells is used)
667 respawntime: time till it respawns (default: 15)
668 respawntimejitter: respawn time randomization +/- seconds (default: 0)
669 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
670 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
671 -------- SPAWNFLAGS --------
672 FLOATING: the item will float in air, instead of aligning to the floor by falling
673 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
674 modeldisabled="models/items/a_shells.md3"
675 */
676
677 /*QUAKED item_strength (.3 .3 1) (-30 -30 0) (30 30 48) FLOATING
678 Strength aka Quad damage
679 In Minstagib, this randomly turns into either an invisibility, an extra lives or a speed power-up with a default respawn time of 120.
680 -------- KEYS --------
681 respawntime: time till it respawns (default: 120)
682 respawntimejitter: respawn time randomization +/- seconds (default: 0)
683 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
684 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
685 -------- SPAWNFLAGS --------
686 FLOATING: the item will float in air, instead of aligning to the floor by falling
687 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
688 modeldisabled="models/items/g_strength.md3"
689 */
690
691 /*QUAKED light (.65 .65 1) (-8 -8 -8) (8 8 8) LINEAR NOANGLE - - NOGRIDLIGHT
692 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.
693 Maximum intensity (in a radius 16 sphere around the light): regular lights have light/256, linear lights have light/8000-16*fade.
694 Falloff radius to a negligible light amount: regular lights have light have 16*sqrt(light), linear lights have light/(fade*8000).
695 By this you see that you HAVE to specify fade for a linear light... use values below 0.01 there.
696 -------- KEYS --------
697 light: intensity factor (default: 300). A linear
698 _color: weighted RGB value of light color (default white - 1.0 1.0 1.0).
699 target: Lights pointed at a target will be spotlights.
700 radius: radius of a spotlight at the target point (default: 64)
701 _anglescale: scales angle attenuation
702 fade: Fade factor of light attenuation of linear lights. Linear lights completely vanish at distance light/(fade*8000), so if you want the light to vanish at distance X, specify light/(8000*X) here.
703 _filterradius: filter radius for this light, similar to -light -filter
704 _sun: if 1, this light is an infinite sun light
705 _samples: number of samples to use to get soft shadows from a light
706 _deviance: position deviance of the samples of a regular light (distributes the light samples in a cube of side length 2*_deviance around the origin), or angle deviance of the sun light samples in radians
707 -------- SPAWNFLAGS --------
708 LINEAR: Use a linear falloff. Default is inverse distance squared (more realistic).
709 NOANGLE: Ignore angle attenuation.
710 NOGRIDLIGHT: Do not affect the light grid (dynamic entity lighting).
711 */
712
713 /*QUAKED lightJunior (.65 .65 1) (-8 -8 -8) (8 8 8) LINEAR NOANGLE
714 Non-displayed point light source that JUST APPLIES TO THE LIGHT GRID. No idea what this is good for. The -pointscale and -scale arguments to Q3Map2 affect the brightness of these lights. The -skyscale argument affects brightness of entity sun lights.
715 Maximum intensity (in a radius 16 sphere around the light): regular lights have light/256, linear lights have light/8000-16*fade.
716 Falloff radius to a negligible light amount: regular lights have light have 16*sqrt(light), linear lights have light/(fade*8000).
717 By this you see that you HAVE to specify fade for a linear light... use values below 0.01 there.
718 -------- KEYS --------
719 light: intensity factor (default: 300). A linear
720 _color: weighted RGB value of light color (default white - 1.0 1.0 1.0).
721 target: Lights pointed at a target will be spotlights.
722 radius: radius of a spotlight at the target point (default: 64)
723 _anglescale: scales angle attenuation
724 fade: Fade factor of light attenuation of linear lights. Linear lights completely vanish at distance light/(fade*8000), so if you want the light to vanish at distance X, specify light/(8000*X) here.
725 _filterradius: filter radius for this light, similar to -light -filter
726 _sun: if 1, this light is an infinite sun light
727 _samples: number of samples to use to get soft shadows from a light
728 _deviance: position deviance of the samples of a regular light (distributes the light samples in a cube of side length 2*_deviance around the origin), or angle deviance of the sun light samples in radians
729 -------- SPAWNFLAGS --------
730 LINEAR: Use a linear falloff. Default is inverse distance squared (more realistic).
731 NOANGLE: Ignore angle attenuation.
732 */
733
734 /*QUAKED misc_laser (.5 .5 .5) (-8 -8 -8) (8 8 8) START_ON FINITE NOTRACE INVERT_TEAM
735 Laser beam emitter. Note that for the laser to be deadly, it has to start OUTSIDE the player's collision box. To ensure this, you may want to put this entity inside the walls (or directly on their surface), or cover it with a playerclip brush.
736 -------- KEYS --------
737 target: target_position the laser targets (may be another entity, preferably target_position, possibly controlled by misc_follow)
738 mdl: name of particle effect for the beam end point (see effectinfo.txt; default is laser_deadly if dmg is set, and none if not)
739 colormod: color of the laser beam (default: red, that is, 1 0 0)
740 dmg: damage inflicted by the beam per second, or -1 for an instant-death ray
741 targetname: name to target this (then its state is toggled)
742 alpha: when set, makes a dark laser of the given strength; may be combined with colormod
743 scale: scales the beam thickness (default 1)
744 modelscale: scales the dynamic light radius at the endpoint (default 1, -1 to turn off)
745 team: team that gets hurt (5 = red, 14 = blue, etc) (when set, only this team can get hurt)
746 -------- SPAWNFLAGS --------
747 START_ON: when targeted, the laser will start switched on
748 FINITE: the laser does not extend over its target like light would do, but stops there (takes more bandwidth)
749 NOTRACE: the laser passes through solid (faster rendering on clientside); non-FINITE lasers then never display their impact effect "mdl"!
750 INVERT_TEAM: the team that owns this will NOT get hurt
751 -------- NOTES --------
752 Use trigger_monoflop if you want the laser to turn off for a while, then turn back on.
753 When the laser's target has itself target set, its targets are triggered when someone enters or leaves the laser.
754 */
755
756 /*QUAKED misc_model (1 .5 .25) (-16 -16 -16) (16 16 16) - SOLID FORCE_META EXTRUDE_NORMALS EXTRUDE_TERRAIN COLOR_TO_ALPHA DONT_FIX_NORMALS
757 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.
758 -------- Q3MAP2 KEYS --------
759 model: file name of model to include
760 _frame: frame of model to include
761 _skin: skin of model to include
762 _remap: string of the form from;to specifying which texture name of the model to replace by which shader; * is allowed. Any key starting with this prefix will work, so if you need more remappings, create _remap2, etc.
763 angle: view direction of the model
764 angles: view direction of the model in PITCH YAW ROLL
765 modelscale: scaling factor
766 modelscale_vec: scaling vector for non-uniform scaling
767 _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.
768 _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.
769 _lightmapscale: light map resolution factor
770 _celshader: the cel shader for this
771 -------- SPAWNFLAGS --------
772 SOLID: make the model solid
773 FORCE_META: force the model to go through the -meta pipeline and enable lightmapping
774 EXTRUDE_NORMALS: for converting triangles to clip brushes, extrude along the model normals (by default, extrusion happens in a coordinate axis direction that is decided per triangle)
775 EXTRUDE_TERRAIN: always extrude downwards (for terrain)
776 COLOR_TO_ALPHA: use the color value as alpha (for terrain blending)
777 DONT_FIX_NORMALS: do not regenerate normals
778 */
779
780 /*QUAKED misc_gamemodel (0 .5 .8) (-8 -8 -8) (8 8 8) ALIGN_ORIGIN ALIGN_BOTTOM
781 A way to load models from a map by the engine (e.g. self-animated zym models).
782 Is non-solid by default.
783 The keys below actually apply to most engine-loaded model entities as they are engine features; however, they are described here as they aren't overridden by game code in misc_gamemodel. Its q3map2 keys below will work on any brush entity!
784 -------- KEYS --------
785 model: when used as a point entity, file name of model to load; when used as a brush entity, do not specify that
786 frame: animation frame to play (for self-animated zym models)
787 skin: number of skin to load (when model is used)
788 movetype: way in which it moves: one of 0 = NONE, 1 = ANGLENOCLIP, 2 = ANGLECLIP, 3 = WALK, 4 = STEP, 5 = FLY, 6 = TOSS, 7 = PUSH, 8 = NOCLIP, 9 = FLYMISSILE, 10 = BOUNCE, 11 = BOUNCEMISSILE
789 solid: solidity: one of 0 = NOT, 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE
790 avelocity: vector giving its angular velocity (useful for spinning models)
791 scale: scale factor of the model (range: 0.0625 to 15.9375)
792 colormap: 1024 + 16 * pantscolor + shirtcolor
793 velocity: when movetype isn't 0, initial velocity vector
794 angles: initial looking direction
795 modelscale: scaling factor
796 effects: sum of 1 = BRIGHTFIELD, 4 = BRIGHTLIGHT, 8 = DIMLIGHT, 32 = ADDITIVE, 64 = BLUE, 128 = RED, 512 = FULLBRIGHT, 1024 = FLAME, 2048 = STARDUST, 4096 = NOSHADOW, 8192 = NODEPTHTEST, 32768 = DOUBLESIDED, 8388608 = NOMODELFLAGS (ignores the following coming from a model file), 16777216 = ROCKET, 33554432 = GRENADE, 67108864 = GIB, 134217728 = ROTATE, 268435456 = TRACER, 536870912 = ZOMGIB, 1073741824 = TRACER2, -2147483648 = TRACER3
797 loddistance1: distance after which to show the first LOD model replacement (default: 1000)
798 loddistance2: distance after which to show the second LOD model replacement (default: 2000)
799 lodmodel1: file name of the first LOD model replacement
800 lodmodel2: file name of the second LOD model replacement
801 targetname: when invoking it by a button etc., it changes the color to the initiator of the action (e.g. the one pressing a button). In Onslaught, this can be used to color control points for team who owns them. In other game types, this can be used as a fun feature.
802 originjitter: a vector describing a random offset this entity will be moved on initial spawn. This corresponds to the "origin" field. Works on any non-q3map2-only entity.
803 anglesjitter: a vector in the order "pitch yaw roll" describing a random angles change on this entity on initial spawn. The value 180 180 180 makes the angles entirely random and uniformly distributed (among euler angles). This corresponds to the "angles" field. Works on any non-q3map2-only entity.
804 anglejitter: a float describing a random yaw angle change on this entity on initial spawn. The value 180 makes the yaw angle entirely random (maybe good for items). This corresponds to the "angle" field. Works on any non-q3map2-only entity.
805 gametypefilter: either a + sign and a comma separated list of game types or the aliases "teams" and "noteams" to ONLY show the entity in the listed game types, or a - sign and a comma separated list of game types or the aliases "teams" and "noteams" to NOT show the entity in the listed game types. The syntax is the same as in sbar_columns_set strings. Works on any non-q3map2-only entity.
806 cvarfilter: either a + sign and a space separated list of conditions, or a - sign and the same for an inverted filter. The conditions are ALWAYS combined with AND! Possible conditions are: "cvar==value", "cvar!=value", "cvar<value", "cvar>value", "cvar<=value", "cvar>=value", "cvar===string", "cvar!==string", "cvar", "!cvar". Ridiculous example filter: "-g_balance_health_start<150 g_balance_armor_start==0" spawns an item only if start health is at least 150 or start armor is not 0. Other ideas: "+g_campaign" and "-g_campaign" for enabling/disabling items when the map is played as part of the campaign.
807 -------- SPAWNFLAGS --------
808 ALIGN_ORIGIN: align the origin to the surface below the model
809 ALIGN_BOTTOM: align the bottom of the model to the surface below it
810 */
811
812 /*QUAKED func_illusionary (0 .5 .8) ? 
813 NOTE - THIS ENTITY IS BROKEN REGARDING CLIENT AND PROJECTILE PREDICTION. DO NOT USE IT. USE NONSOLID SHADERS OR FUNC_CLIENTILLUSIONARY INSTEAD.
814 A non-solid brush entity. Use func_wall if you want it solid.
815 The keys below actually apply to most brush entities as they are engine features; however, they are described here as they aren't overridden by game code in misc_models. Its q3map2 keys below will work on any brush entity!
816 -------- KEYS --------
817 movetype: way in which it moves: one of 0 = NONE, 1 = ANGLENOCLIP, 2 = ANGLECLIP, 3 = WALK, 4 = STEP, 5 = FLY, 6 = TOSS, 7 = PUSH, 8 = NOCLIP, 9 = FLYMISSILE, 10 = BOUNCE, 11 = BOUNCEMISSILE
818 avelocity: vector giving its angular velocity (useful for spinning models)
819 scale: scale factor of the model (range: 0.0625 to 15.9375)
820 colormap: 1024 + 16 * pantscolor + shirtcolor
821 velocity: when movetype isn't 0, initial velocity vector
822 angles: initial looking direction
823 effects: sum of 1 = BRIGHTFIELD, 4 = BRIGHTLIGHT, 8 = DIMLIGHT, 32 = ADDITIVE, 64 = BLUE, 128 = RED, 512 = FULLBRIGHT, 1024 = FLAME, 2048 = STARDUST, 4096 = NOSHADOW, 8192 = NODEPTHTEST, 32768 = DOUBLESIDED, 8388608 = NOMODELFLAGS (ignores the following coming from a model file), 16777216 = ROCKET, 33554432 = GRENADE, 67108864 = GIB, 134217728 = ROTATE, 268435456 = TRACER, 536870912 = ZOMGIB, 1073741824 = TRACER2, -2147483648 = TRACER3
824 loddistance1: distance after which to show the first LOD model replacement (default: 1000)
825 loddistance2: distance after which to show the second LOD model replacement (default: 2000)
826 lodtarget1: targetname of the first LOD model entity (can be used instead of lodmodel1 to use a brush model instead)
827 lodtarget2: targetname of the second LOD model entity (can be used instead of lodmodel2 to use a brush model instead)
828 targetname: when invoking it by a button etc., it changes the color to the initiator of the action (e.g. the one pressing a button). In Onslaught, this can be used to color control points for team who owns them. In other game types, this can be used as a fun feature. Works only with _shirt and _pants textures.
829 originjitter: a vector describing a random offset this entity will be moved on initial spawn. This corresponds to the "origin" field. Works on any non-q3map2-only entity.
830 anglesjitter: a vector in the order "pitch yaw roll" describing a random angles change on this entity on initial spawn. The value 180 180 180 makes the angles entirely random and uniformly distributed (among euler angles). This corresponds to the "angles" field. Works on any non-q3map2-only entity.
831 anglejitter: a float describing a random yaw angle change on this entity on initial spawn. The value 180 makes the yaw angle entirely random (maybe good for items). This corresponds to the "angle" field. Works on any non-q3map2-only entity.
832 gametypefilter: either a + sign and a comma separated list of game types or the aliases "teams" and "noteams" to ONLY show the entity in the listed game types, or a - sign and a comma separated list of game types or the aliases "teams" and "noteams" to NOT show the entity in the listed game types. The syntax is the same as in sbar_columns_set strings. Works on any non-q3map2-only entity.
833 -------- Q3MAP2 KEYS --------
834 _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.
835 _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.
836 _clone: copies brushes from entity with identical _clonename. Still needs a single brush that will get replaced.
837 _clonename: template name so one can clone from it
838 mins: override automatically found minimum coordinate bounds
839 maxs: override automatically found maximum coordinate bounds
840 targetname: if targeted by a misc_model, its brushes get inserted into this
841 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
842 */
843
844 /*QUAKED func_wall (0 .5 .8) ? 
845 A solid brush entity. Use func_clientillusionary if you want it non-solid.
846 The keys below actually apply to most brush entities as they are engine features; however, they are described here as they aren't overridden by game code in misc_models. Its q3map2 keys below will work on any brush entity!
847 -------- KEYS --------
848 movetype: way in which it moves: one of 0 = NONE, 1 = ANGLENOCLIP, 2 = ANGLECLIP, 3 = WALK, 4 = STEP, 5 = FLY, 6 = TOSS, 7 = PUSH, 8 = NOCLIP, 9 = FLYMISSILE, 10 = BOUNCE, 11 = BOUNCEMISSILE
849 solid: solidity: one of 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE (default: 4, any other value causes prediction problems and should not be used until further notice)
850 avelocity: vector giving its angular velocity (useful for spinning models)
851 scale: scale factor of the model (range: 0.0625 to 15.9375)
852 colormap: 1024 + 16 * pantscolor + shirtcolor
853 velocity: when movetype isn't 0, initial velocity vector
854 angles: initial looking direction
855 effects: sum of 1 = BRIGHTFIELD, 4 = BRIGHTLIGHT, 8 = DIMLIGHT, 32 = ADDITIVE, 64 = BLUE, 128 = RED, 512 = FULLBRIGHT, 1024 = FLAME, 2048 = STARDUST, 4096 = NOSHADOW, 8192 = NODEPTHTEST, 32768 = DOUBLESIDED, 8388608 = NOMODELFLAGS (ignores the following coming from a model file), 16777216 = ROCKET, 33554432 = GRENADE, 67108864 = GIB, 134217728 = ROTATE, 268435456 = TRACER, 536870912 = ZOMGIB, 1073741824 = TRACER2, -2147483648 = TRACER3
856 loddistance1: distance after which to show the first LOD model replacement (default: 1000)
857 loddistance2: distance after which to show the second LOD model replacement (default: 2000)
858 lodtarget1: targetname of the first LOD model entity (can be used instead of lodmodel1 to use a brush model instead)
859 lodtarget2: targetname of the second LOD model entity (can be used instead of lodmodel2 to use a brush model instead)
860 targetname: when invoking it by a button etc., it changes the color to the initiator of the action (e.g. the one pressing a button). In Onslaught, this can be used to color control points for team who owns them. In other game types, this can be used as a fun feature. Works only with _shirt and _pants textures.
861 originjitter: a vector describing a random offset this entity will be moved on initial spawn. This corresponds to the "origin" field. Works on any non-q3map2-only entity.
862 anglesjitter: a vector in the order "pitch yaw roll" describing a random angles change on this entity on initial spawn. The value 180 180 180 makes the angles entirely random and uniformly distributed (among euler angles). This corresponds to the "angles" field. Works on any non-q3map2-only entity.
863 anglejitter: a float describing a random yaw angle change on this entity on initial spawn. The value 180 makes the yaw angle entirely random (maybe good for items). This corresponds to the "angle" field. Works on any non-q3map2-only entity.
864 gametypefilter: either a + sign and a comma separated list of game types or the aliases "teams" and "noteams" to ONLY show the entity in the listed game types, or a - sign and a comma separated list of game types or the aliases "teams" and "noteams" to NOT show the entity in the listed game types. The syntax is the same as in sbar_columns_set strings. Works on any non-q3map2-only entity.
865 -------- Q3MAP2 KEYS --------
866 _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.
867 _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.
868 _clone: copies brushes from entity with identical _clonename. Still needs a single brush that will get replaced.
869 _clonename: template name so one can clone from it
870 mins: override automatically found minimum coordinate bounds
871 maxs: override automatically found maximum coordinate bounds
872 targetname: if targeted by a misc_model, its brushes get inserted into this
873 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
874 */
875
876 /*QUAKED misc_clientmodel (0 .5 .8) (-8 -8 -8) (8 8 8) ALIGN_ORIGIN ALIGN_BOTTOM
877 A way to load models from a map by the engine (e.g. self-animated zym models) on client side.
878 Is non-solid by default.
879 -------- KEYS --------
880 scale: scale factor of the model (range: 0.0625 to 15.9375)
881 colormap: 1024 + 16 * pantscolor + shirtcolor
882 angles: initial looking direction
883 targetname: when invoking it by a button etc., it changes the color to the initiator of the action (e.g. the one pressing a button). In Onslaught, this can be used to color control points for team who owns them. In other game types, this can be used as a fun feature. Works only with _shirt and _pants textures.
884 bgmscript: emitter class from the BGM script (if prefixed with <, movedir is treated as an angle value)
885 bgmscriptattack: attack time of the effect strength (0 to 3.9)
886 bgmscriptdecay: decay time of the effect strength (0 to 3.9)
887 bgmscriptsustain: sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain)
888 bgmscriptrelease: release time of the effect strength (0 to 3.9)
889 movedir: vector by which the entity moves when "pressed" by the bgmscript
890 lip: alpha change when "pressed" by the bgmscript (if > 0, it fades in when pressed, if < 0, it fades out when pressed)
891 originjitter: a vector describing a random offset this entity will be moved on initial spawn. This corresponds to the "origin" field. Works on any non-q3map2-only entity.
892 anglesjitter: a vector in the order "pitch yaw roll" describing a random angles change on this entity on initial spawn. The value 180 180 180 makes the angles entirely random and uniformly distributed (among euler angles). This corresponds to the "angles" field. Works on any non-q3map2-only entity.
893 anglejitter: a float describing a random yaw angle change on this entity on initial spawn. The value 180 makes the yaw angle entirely random (maybe good for items). This corresponds to the "angle" field. Works on any non-q3map2-only entity.
894 gametypefilter: either a + sign and a comma separated list of game types or the aliases "teams" and "noteams" to ONLY show the entity in the listed game types, or a - sign and a comma separated list of game types or the aliases "teams" and "noteams" to NOT show the entity in the listed game types. The syntax is the same as in sbar_columns_set strings. Works on any non-q3map2-only entity.
895 -------- SPAWNFLAGS --------
896 ALIGN_ORIGIN: align the origin to the surface below the model
897 ALIGN_BOTTOM: align the bottom of the model to the surface below it
898 */
899
900 /*QUAKED func_clientillusionary (0 .5 .8) ? 
901 A client-side non-solid brush entity. Use func_wall if you want it solid.
902 -------- KEYS --------
903 scale: scale factor of the model (range: 0.0625 to 15.9375)
904 colormap: 1024 + 16 * pantscolor + shirtcolor
905 angles: initial looking direction
906 targetname: when invoking it by a button etc., it changes the color to the initiator of the action (e.g. the one pressing a button). In Onslaught, this can be used to color control points for team who owns them. In other game types, this can be used as a fun feature. Works only with _shirt and _pants textures.
907 bgmscript: emitter class from the BGM script
908 bgmscriptattack: attack time of the effect strength (0 to 3.9)
909 bgmscriptdecay: decay time of the effect strength (0 to 3.9)
910 bgmscriptsustain: sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain)
911 bgmscriptrelease: release time of the effect strength (0 to 3.9)
912 movedir: vector by which the entity moves when "pressed" by the bgmscript
913 lip: alpha change when "pressed" by the bgmscript (if > 0, it fades in when pressed, if < 0, it fades out when pressed)
914 originjitter: a vector describing a random offset this entity will be moved on initial spawn. This corresponds to the "origin" field. Works on any non-q3map2-only entity.
915 anglesjitter: a vector in the order "pitch yaw roll" describing a random angles change on this entity on initial spawn. The value 180 180 180 makes the angles entirely random and uniformly distributed (among euler angles). This corresponds to the "angles" field. Works on any non-q3map2-only entity.
916 anglejitter: a float describing a random yaw angle change on this entity on initial spawn. The value 180 makes the yaw angle entirely random (maybe good for items). This corresponds to the "angle" field. Works on any non-q3map2-only entity.
917 gametypefilter: either a + sign and a comma separated list of game types or the aliases "teams" and "noteams" to ONLY show the entity in the listed game types, or a - sign and a comma separated list of game types or the aliases "teams" and "noteams" to NOT show the entity in the listed game types. The syntax is the same as in sbar_columns_set strings. Works on any non-q3map2-only entity.
918 -------- Q3MAP2 KEYS --------
919 _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.
920 _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.
921 _clone: copies brushes from entity with identical _clonename. Still needs a single brush that will get replaced.
922 _clonename: template name so one can clone from it
923 mins: override automatically found minimum coordinate bounds
924 maxs: override automatically found maximum coordinate bounds
925 targetname: if targeted by a misc_model, its brushes get inserted into this
926 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
927 */
928
929 /*QUAKED func_clientwall (0 .5 .8) ? 
930 NOTE - THIS ENTITY IS IN MOST USE CASES BROKEN REGARDING CLIENT AND PROJECTILE PREDICTION. DO NOT USE IT. USE FUNC_WALL INSTEAD.
931 A client-side solid brush entity. Use func_clientillusionary if you want it non-solid.
932 -------- KEYS --------
933 solid: solidity: one of 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE (default: 4, any other value causes prediction problems and should not be used until further notice)
934 scale: scale factor of the model (range: 0.0625 to 15.9375)
935 colormap: 1024 + 16 * pantscolor + shirtcolor
936 angles: initial looking direction
937 targetname: when invoking it by a button etc., it changes the color to the initiator of the action (e.g. the one pressing a button). In Onslaught, this can be used to color control points for team who owns them. In other game types, this can be used as a fun feature. Works only with _shirt and _pants textures.
938 bgmscript: emitter class from the BGM script
939 bgmscriptattack: attack time of the effect strength (0 to 3.9)
940 bgmscriptdecay: decay time of the effect strength (0 to 3.9)
941 bgmscriptsustain: sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain)
942 bgmscriptrelease: release time of the effect strength (0 to 3.9)
943 movedir: vector by which the entity moves when "pressed" by the bgmscript
944 lip: alpha change when "pressed" by the bgmscript (if > 0, it fades in when pressed, if < 0, it fades out when pressed)
945 originjitter: a vector describing a random offset this entity will be moved on initial spawn. This corresponds to the "origin" field. Works on any non-q3map2-only entity.
946 anglesjitter: a vector in the order "pitch yaw roll" describing a random angles change on this entity on initial spawn. The value 180 180 180 makes the angles entirely random and uniformly distributed (among euler angles). This corresponds to the "angles" field. Works on any non-q3map2-only entity.
947 anglejitter: a float describing a random yaw angle change on this entity on initial spawn. The value 180 makes the yaw angle entirely random (maybe good for items). This corresponds to the "angle" field. Works on any non-q3map2-only entity.
948 gametypefilter: either a + sign and a comma separated list of game types or the aliases "teams" and "noteams" to ONLY show the entity in the listed game types, or a - sign and a comma separated list of game types or the aliases "teams" and "noteams" to NOT show the entity in the listed game types. The syntax is the same as in sbar_columns_set strings. Works on any non-q3map2-only entity.
949 -------- Q3MAP2 KEYS --------
950 _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.
951 _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.
952 _clone: copies brushes from entity with identical _clonename. Still needs a single brush that will get replaced.
953 _clonename: template name so one can clone from it
954 mins: override automatically found minimum coordinate bounds
955 maxs: override automatically found maximum coordinate bounds
956 targetname: if targeted by a misc_model, its brushes get inserted into this
957 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
958 */
959
960 /*QUAKED misc_teleporter_dest (1 .5 .25) (-16 -16 -24) (16 16 45) 
961 Teleport destination location point for trigger_teleport entities. Do not let it touch the floor, but place it slightly higher (like, 16 units above) for better flow when jumping through it.
962 -------- KEYS --------
963 targetname: make the trigger_teleporter point to this.
964 target: target to activate when a teleporter targeting this is used
965 target2: target to activate when a teleporter targeting this is used
966 target3: target to activate when a teleporter targeting this is used
967 target4: target to activate when a teleporter targeting this is used
968 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
969 angle: direction in which player will look when teleported, OR use
970 angles: pitch and yaw when coming out of the teleporter (also specifies the direction the player will aim when coming out)
971 cnt: weight for random selection, in case a teleporter points at multiple misc_teleporter_dest
972 speed: maximum speed cap for the teleported player (if -1, teleported players will have no speed)
973 */
974
975 /*QUAKED onslaught_controlpoint (0 .5 .8) (-32 -32 0) (32 32 128) 
976 Control point.  Be sure to give this enough clearance so that the shootable part has room to exist
977 This should link to an onslaught_controlpoint entity or onslaught_generator entity.
978 -------- KEYS --------
979 targetname: name that onslaught_link entities will use to target this.
980 target: target any entities that are tied to this control point, such as vehicles and buildable structure entities.
981 message: name of this control point (should reflect the location in the map, such as "center bridge", "north tower", etc)
982 */
983
984 /*QUAKED onslaught_generator (0 .5 .8) (-52 -52 -14) (52 52 75) 
985 Base generator.
986
987 onslaught_link entities can target this.
988 -------- KEYS --------
989 team: team that owns this generator (5 = red, 14 = blue, etc), MUST BE SET.
990 targetname: name that onslaught_link entities will use to target this.
991 */
992
993 /*QUAKED onslaught_link (0 .5 .8) (-16 -16 -16) (16 16 16) 
994 Link between control points.
995
996 This entity targets two different onslaught_controlpoint or onslaught_generator entities, and suppresses shielding on both if they are owned by different teams.
997 -------- KEYS --------
998 target: first control point.
999 target2: second control point.
1000 */
1001
1002 /*QUAKED path_corner (.5 .3 0) (-8 -8 -8) (8 8 8) 
1003 Path corner entity that func_train will follow.
1004 All path_corner entities of a train have to connect in a circular manner, while the func_train shall point to one of the path_corners (ideally the one at the train's starting point)
1005 -------- KEYS --------
1006 target: point to next path_corner in the path.
1007 target2: triggered when a func_train stops at this target
1008 target3: triggered when a func_train stops at this target
1009 target4: triggered when a func_train stops at this target
1010 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1011 targetname: the train following the path or the previous path_corner in the path points to this.
1012 speed: speed of func_train while moving to this path corner. If unset, the value from the func_train will be used.
1013 wait: number of seconds func_train will pause on this path corner before moving to next path corner (default: 0.1; to not wait, set this to -1
1014 */
1015
1016 /*QUAKED runematch_spawn_point (.3 .3 1) (-16 -16 -16) (16 16 16) 
1017 Spawn point for runes in a runematch.
1018 Runematch can work without runes also, it then spawn runes at random safe locations.
1019 */
1020
1021 /*QUAKED target_assault_roundend (1 0 0) (-8 -8 -8) (8 8 8) 
1022 This entity ends the current assault round if triggered or if the timelimit is reached.
1023 Ending a round means swapping attacker/defender teams, resetting objectives and rewarding the winning team.
1024 Every assault map needs this entity. There should only be one per map.
1025 -------- KEYS --------
1026 targetname: Name to target this entity
1027 */
1028
1029 /*QUAKED target_assault_roundstart (.5 0 .5) (-8 -8 -8) (8 8 8) 
1030 This entity triggers its targets whenever a new assault round is started. This can be used to e.g. activate the first objective.
1031 -------- KEYS --------
1032 target: targetname of entities to be enabled/triggered on round start (e.g. the first target_objective)
1033 target2: targetname of entities to be enabled/triggered on round start (e.g. the func_assault_destructibles targeting the target_objective)
1034 target3: targetname of entities to be enabled/triggered on round start
1035 target4: targetname of entities to be enabled/triggered on round start
1036 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1037 */
1038
1039 /*QUAKED target_objective (.5 0 .5) (-8 -8 -8) (8 8 8) 
1040 target_objective controls an objective. Once triggered the objective is active and has 100 "health" points. If this "health" falls below zero it is assumed this objective has been fulfilled and entities targeted will be triggered (e.g. to activate the next objective or to end this round). Use target_objective_decrease to decrease the objective health.
1041 -------- KEYS --------
1042 target: targetname of entities to be enabled/triggered on objective fulfilling (e.g. the next target_objective, or target_assault_roundend)
1043 target2: targetname of entities to be enabled/triggered on objective fulfilling (e.g. the func_assault_destructibles targeting the target_objective)
1044 target3: targetname of entities to be enabled/triggered on objective fulfilling
1045 target4: targetname of entities to be enabled/triggered on objective fulfilling
1046 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1047 targetname: targetname for this entity so it can be triggered by other entities.
1048 */
1049
1050 /*QUAKED target_objective_decrease (0 1 0) (-8 -8 -8) (8 8 8) 
1051 When triggered decreases health of the targeted target_objective by the amount specified in dmg. Remember, target_objective has 100 health points and is considered conquered if health falls below zero.
1052 If you want e.g. two events to happen to conquer an objective you'd need two target_objective_decrease, each with a value for cnt of e.g. 51. To show attackers and defenders where to go, target_objective_decrease will show a fitting sprite ("Defend" to defenders, "Destroy"/"Push" to attackers) which can be seen through walls.
1053 -------- KEYS --------
1054 target: The targetname of the target_objective you want to manipulate.
1055 targetname: Name for other entities to target this entity.
1056 dmg: The amount of "health"-points you want to subtract from the objective health. Defaults to 101. Also used as score for triggering this objective.
1057 */
1058
1059 /*QUAKED target_position (0 .5 0) (-8 -8 -8) (8 8 8) 
1060 Aiming target for entities like light and trigger_push.
1061 -------- KEYS --------
1062 targetname: the entity that requires an aiming direction points to this.
1063 target: target to activate when a jumppad targeting this is used
1064 */
1065
1066 /*QUAKED target_speaker (0 .7 .7) (-8 -8 -8) (8 8 8) LOOPED_ON LOOPED_OFF GLOBAL ACTIVATOR
1067 Sound generating entity that plays sound files.
1068 If targeted, it plays the sound file every time when triggered.
1069 If not targeted, it loops the sound file as an ambient noise.
1070 The sound name may also be of the form *soundname, and in that case the respective player sound is played
1071 -------- KEYS --------
1072 noise: path/name of .wav/.ogg file to play
1073 targetname: the activating button or trigger points to this.
1074 atten: distance attenuation of the sound (a value from 0.1 to 3.9), default is 0.5 if targeted, 3 otherwise; set to -1 for no attenuation (global sound)
1075 volume: volume of the sound
1076 -------- SPAWNFLAGS --------
1077 LOOPED_ON: the sound is looped and initially plays (the sound file MUST have the LOOP_START vorbis comment then!). It can be toggled by a trigger.
1078 LOOPED_OFF: the sound is looped and initially does not play (the sound file MUST have the LOOP_START vorbis comment then!). It can be toggled by a trigger.
1079 GLOBAL: the sound plays with no attenuation (same as setting atten to -1)
1080 ACTIVATOR: the sound is played to the activator only when triggered (cannot be combined with LOOPED_ON and LOOPED_OFF)
1081 */
1082
1083 /*QUAKED trigger_counter (.5 .5 .5) ? NOMESSAGE
1084 Acts as an intermediary for an action that takes multiple inputs.
1085 After the counter has been triggered "count" times, it will fire all of its targets and remove itself.
1086 -------- KEYS --------
1087 count: how many times this needs to be triggered to activate its targets
1088 target: trigger all entities with this targetname when triggered
1089 targetname: name that identifies this entity so it can be triggered
1090 delay: delay the triggering by the given time
1091 message: print this message to the player who activated the trigger
1092 killtarget: remove all entities with this targetname when triggered
1093 -------- SPAWNFLAGS --------
1094 NOMESSAGE: don't print a "2 more to go..."-like message when triggered
1095 */
1096
1097 /*QUAKED trigger_delay (.5 .5 .5) (-8 -8 -8) (8 8 8) 
1098 Trigger that delays triggering by a given amount of time. Only one action can be waited for; if triggered again before the "wait" time expires, the timer will restart (as opposed to trigger_relay).
1099 -------- KEYS --------
1100 wait: delay the triggering by the given time
1101 target: trigger all entities with this targetname when triggered
1102 targetname: name that identifies this entity so it can be triggered
1103 message: print this message to the player who activated the trigger
1104 killtarget: remove all entities with this targetname when triggered
1105 */
1106
1107 /*QUAKED trigger_hurt (.5 .5 .5) ? - - INVERT_TEAM
1108 Any object touching this will be hurt.
1109 Has the useful effect of automatically returning flags, keys and runes when they touch it.
1110 -------- KEYS --------
1111 dmg: amount of damage to deal (default: 1000)
1112 message: kill message when someone gets killed by this (default: "was in the wrong place")
1113 message2: kill message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
1114 team: team that gets hurt (5 = red, 14 = blue, etc) (when set, only this team can get hurt)
1115 targetname: if triggered using this target name, the activator will be the one who gets the frag awarded for hurting someone using this trigger (hint: The Frag Pipe)
1116 -------- SPAWNFLAGS --------
1117 INVERT_TEAM: the team that owns this will NOT jump when touching this
1118 */
1119
1120 /*QUAKED trigger_impulse (.5 .5 .5) ? 
1121 An accelerator/dampener/wind field.
1122 Can be used in two ways:
1123 "dampener field": just set strength to a value from 0 to 1. Entering the field will slow down to this factor.
1124 "accelerator field": just set strength to a value from 1 to infinity. Entering the field will accelerate by this factor.
1125 "wind field": set strength to the amount of velocity to add per second, and target a target_position. The field will apply force in the direction from its own origin to the target (use an origin brush to specify its own origin, or this will fail) when touched.
1126 "gravity field": set strength to the amount of velocity to add per second at the center, and set radius to the radius of the field. Set falloff to the desired falloff characteristics.
1127 -------- KEYS --------
1128 target: "wind field": points to the target_position to which the player will get pushed.
1129 strength: "wind field", "gravity field": amount of force per second to apply. "dampener/accelerator field": slowdown/speedup factor.
1130 falloff: "gravity field": 0 means no falloff, 1 means linear falloff (zero at the outside), 2 means inverted linear falloff (zero at the inside)
1131 */
1132
1133 /*QUAKED trigger_keylock (.0 .5 .8) ?
1134 Keylock trigger.  Must target other entities.
1135 This trigger will trigger target entities when all required keys are provided.
1136 -------- KEYS --------
1137 itemkeys: A bit field with key IDs that are needed to open this lock.
1138 sounds: 1 to play misc/secret.wav, 2 to play misc/talk.wav, 3 to play misc/trigger1.wav (3 is default)
1139 target: trigger all entities with this targetname when triggered and all keys have been given to it, then remove this trigger
1140 target2: trigger all entities with this targetname when triggered without giving it all the required keys.
1141 killtarget: remove all entities with this targetname when triggered with all the needed keys.
1142 message: print this message to the player who activated the trigger when all needed keys have been given.
1143 message2: print this message to the player who activated the trigger when not all of the needed keys have been given.
1144 noise: sound to play when lock gets unlocked (default: see sounds)
1145 noise1: sound to play when only some of the needed key were used but not all (default: misc/decreasevalue.wav)
1146 noise2: sound to play when a key is missing (default: misc/talk.wav)
1147 wait: prevent triggering again for this amount of time (default: 5) - applies to target2, target3, target4.
1148 ---------NOTES----------
1149 If spawned without any key specified in itemkeys, this trigger will display an error and remove itself.
1150 message2 and noise2 will be resent to the player every 2 seconds while he is in the trigger zone.
1151 */
1152
1153 /*QUAKED trigger_multiple (.5 .5 .5) ? NOTOUCH ALLENTS INVERT_TEAM - - - - - NOSPLASH
1154 Variable sized repeatable trigger.  Must be targeted at one or more entities.  If "health" is set, the trigger must be killed to activate each time.
1155 -------- KEYS --------
1156 health: amount of damage that has to be dealt to the trigger to activate (it then won't respond to merely touching it)
1157 wait: prevent triggering again for this amount of time (default: 0.2, set to -1 to wait indefinitely, or -2 to not wait at all)
1158 sounds: 1 to play misc/secret.wav, 2 to play misc/talk.wav, 3 to play misc/trigger1.wav
1159 noise: path to sound file, if you want to play something else
1160 target: trigger all entities with this targetname when triggered
1161 target2: trigger all entities with this targetname when triggered
1162 target3: trigger all entities with this targetname when triggered
1163 target4: trigger all entities with this targetname when triggered
1164 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1165 targetname: name that identifies this entity so it can be triggered
1166 delay: delay the triggering by the given time
1167 message: print this message to the player who activated the trigger
1168 killtarget: remove all entities with this targetname when triggered
1169 team: team that owns this trigger (5 = red, 14 = blue, etc) (when set, only this team can trigger)
1170 -------- SPAWNFLAGS --------
1171 NOTOUCH: the trigger can only be triggered by other entities, not by touching or firing (you should probably use trigger_relay or trigger_delay instead)
1172 ALLENTS: the trigger responds to all entities, not just players (useful for targetting trigger_items)
1173 INVERT_TEAM: the team that owns the trigger will NOT trigger when touching this
1174 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
1175 */
1176
1177 /*QUAKED trigger_once (.5 .5 .5) ? NOTOUCH - - - - - - - NOSPLASH
1178 Variable sized repeatable trigger.  Must be targeted at one or more entities.  If "health" is set, the trigger must be killed to activate each time.
1179 Basically, it's a use-once trigger_multiple.
1180 -------- KEYS --------
1181 health: amount of damage that has to be dealt to the trigger to activate (it then won't respond to merely touching it)
1182 sounds: 1 to play misc/secret.wav, 2 to play misc/talk.wav, 3 to play misc/trigger1.wav
1183 noise: path to sound file, if you want to play something else
1184 target: trigger all entities with this targetname when triggered
1185 targetname: name that identifies this entity so it can be triggered
1186 delay: delay the triggering by the given time
1187 message: print this message to the player who activated the trigger
1188 killtarget: remove all entities with this targetname when triggered
1189 -------- SPAWNFLAGS --------
1190 NOTOUCH: the trigger can only be triggered by other entities, not by touching or firing (you should probably use trigger_relay or trigger_delay instead)
1191 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
1192 */
1193
1194 /*QUAKED trigger_push (1 .5 0) ? - - INVERT_TEAM
1195 Jump pad. What else?
1196 Can be used in three ways:
1197 Xonotic "target/height" way: put the target_position where the player should land, and tune height to get a nice jump path. A good starting value for height is 100.
1198 Q3A "target" way: put the target_position at the apex of the jump, and hope the player will land at the right spot. Good luck.
1199 Quake "movedir/speed" way: player will get velocity movedir * speed * 10 when using the jump pad
1200 -------- KEYS --------
1201 target: point the player will fly to when using the jump pad (use a target_position here)
1202 height: if height is 0, the (player's origin at the) apex of the jump will be at the target; otherwise, the apex will be abs(height) above the higher point of player's origin and the target; if positive, the apex will be reached in the jump from initial origin to target
1203 movedir: when target is not set, direction vector to push to
1204 speed: speed of jump pad (default: 1000)
1205 noise: sound to play when jump pad is used; default is misc/jumppad.wav; you can set it to "" to make the pad silent
1206 team: team that owns this jump pad (5 = red, 14 = blue, etc) (when set, only this team can teleport)
1207 targetname: when targeted by a func_button, pressing the button will reassign the teleporter to the team of the activator.
1208 -------- SPAWNFLAGS --------
1209 INVERT_TEAM: the team that owns the teleporter will NOT jump when touching this
1210 */
1211
1212 /*QUAKED trigger_relay (.5 .5 .5) (-8 -8 -8) (8 8 8) 
1213 This fixed size trigger cannot be touched, it can only be fired by other events. It can, like any other trigger, contain killtargets, targets, delays, and messages.
1214 One possible use is to trigger entities with more than one targetname on an action, e.g. a button. For this, set target of your button to foobar. Create two trigger_relay with targetname=foobar. Give one of the trigger_relay entities target=ent1, and give the other target=ent2.
1215 More than one "trigger event" can be delayed at once, as opposed to trigger_delay.
1216 -------- KEYS --------
1217 target: trigger all entities with this targetname when triggered
1218 target2: trigger all entities with this targetname when triggered
1219 target3: trigger all entities with this targetname when triggered
1220 target4: trigger all entities with this targetname when triggered
1221 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1222 targetname: name that identifies this entity so it can be triggered
1223 delay: delay the triggering by the given time
1224 message: print this message to the player who activated the trigger
1225 killtarget: remove all entities with this targetname when triggered
1226 */
1227
1228 /*QUAKED trigger_secret (.5 .5 .5) ?
1229 Variable sized secret trigger. Can be targeted at one or more entities.
1230 Basically, it's a trigger_once that additionally updates the number of secrets found.
1231 -------- KEYS --------
1232 sounds: 1 to play misc/secret.wav, 2 to play misc/talk.wav, 3 to play misc/trigger1.wav (default: 1)
1233 noise: path to sound file, if you want to play something else
1234 target: trigger all entities with this targetname when triggered
1235 message: print this message to the player who activated the trigger instead of the standard 'You found a secret!'
1236 killtarget: remove all entities with this targetname when triggered
1237 -------- NOTES --------
1238 You should create a common/trigger textured brush covering the entrance to a secret room/area.
1239 Trigger secret can only be trigger by a player's touch and can not be a target itself.
1240 */
1241
1242 /*QUAKED trigger_swamp (.5 .5 .5) ? 
1243 Players getting into the swamp will get slowed down and damaged
1244 -------- KEYS --------
1245 dmg: damage per interval to deal (default is 5)
1246 swamp_interval: interval of damage when in swamp (default is 1)
1247 swamp_slowdown: amount of slowdown caused by the swamp (default is 0.5)
1248 */
1249
1250 /*QUAKED trigger_teleport (.5 .5 .5) ? - - INVERT_TEAM
1251 Touching this will teleport players to the location of the targeted misc_teleporter_dest entity.
1252 Note that in Xonotic, teleporters preserve momentum of the player using them.
1253 -------- KEYS --------
1254 target: this must point to a misc_teleporter_dest entity. If it points to more than one, a destination is randomly selected on teleport.
1255 target2: target to activate when the teleporter is used
1256 target3: target to activate when the teleporter is used
1257 target4: target to activate when the teleporter is used
1258 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1259 team: team that owns this teleporter (5 = red, 14 = blue, etc) (when set, only this team can teleport)
1260 targetname: when targeted by a func_button, pressing the button will reassign the teleporter to the team of the activator.
1261 -------- SPAWNFLAGS --------
1262 INVERT_TEAM: the team that owns the teleporter will NOT teleport when touching this
1263 */
1264
1265 /*QUAKED weapon_crylink (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1266 the Crylink
1267 -------- KEYS --------
1268 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1269 respawntime: time till it respawns (default: 15)
1270 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1271 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1272 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1273 -------- SPAWNFLAGS --------
1274 FLOATING: the item will float in air, instead of aligning to the floor by falling
1275 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1276 modeldisabled="models/weapons/g_crylink.md3"
1277 */
1278
1279 /*QUAKED weapon_electro (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1280 the Electro
1281 -------- KEYS --------
1282 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1283 respawntime: time till it respawns (default: 15)
1284 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1285 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1286 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1287 -------- SPAWNFLAGS --------
1288 FLOATING: the item will float in air, instead of aligning to the floor by falling
1289 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1290 modeldisabled="models/weapons/g_electro.md3"
1291 */
1292
1293 /*QUAKED weapon_grenadelauncher (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1294 the Mortar
1295 -------- KEYS --------
1296 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1297 respawntime: time till it respawns (default: 15)
1298 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1299 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1300 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1301 -------- SPAWNFLAGS --------
1302 FLOATING: the item will float in air, instead of aligning to the floor by falling
1303 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1304 modeldisabled="models/weapons/g_gl.md3"
1305 */
1306
1307 /*QUAKED weapon_hagar (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1308 the Hagar
1309 -------- KEYS --------
1310 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1311 respawntime: time till it respawns (default: 15)
1312 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1313 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1314 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1315 -------- SPAWNFLAGS --------
1316 FLOATING: the item will float in air, instead of aligning to the floor by falling
1317 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1318 modeldisabled="models/weapons/g_hagar.md3"
1319 */
1320
1321 /*QUAKED weapon_laser (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1322 the Laser. Note that unless you use
1323   settemp_for_type all g_start_weapon_laser 0
1324 in your mapinfo file, everyone will already spawn with one, making this pickup useless.
1325 -------- KEYS --------
1326 respawntime: time till it respawns (default: 15)
1327 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1328 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1329 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1330 -------- SPAWNFLAGS --------
1331 FLOATING: the item will float in air, instead of aligning to the floor by falling
1332 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1333 modeldisabled="models/weapons/g_laser.md3"
1334 */
1335
1336 /*QUAKED weapon_nex (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1337 the Nex
1338 In Minstagib, this turns into an item_minst_cells if no explicit item_minst_cells have been placed.
1339 -------- KEYS --------
1340 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1341 respawntime: time till it respawns (default: 15 * g_balance_nex_respawntime_modifier)
1342 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1343 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1344 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1345 -------- SPAWNFLAGS --------
1346 FLOATING: the item will float in air, instead of aligning to the floor by falling
1347 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1348 modeldisabled="models/weapons/g_nex.md3"
1349 */
1350
1351 /*QUAKED weapon_rocketlauncher (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1352 the Rocket Launcher
1353 In Minstagib, this turns into an item_minst_cells if no explicit item_minst_cells have been placed.
1354 -------- KEYS --------
1355 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1356 respawntime: time till it respawns (default: 15)
1357 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1358 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1359 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1360 -------- SPAWNFLAGS --------
1361 FLOATING: the item will float in air, instead of aligning to the floor by falling
1362 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1363 modeldisabled="models/weapons/g_rl.md3"
1364 */
1365
1366 /*QUAKED weapon_shotgun (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1367 the Shotgun. Note that unless you use
1368   settemp_for_type all g_start_weapon_shotgun 0
1369 in your mapinfo file, everyone will already spawn with one, making this pickup useless.
1370 -------- KEYS --------
1371 ammo_shells: initial shells of the weapon (if unset, g_pickup_shells is used)
1372 respawntime: time till it respawns (default: 15)
1373 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1374 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1375 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1376 -------- SPAWNFLAGS --------
1377 FLOATING: the item will float in air, instead of aligning to the floor by falling
1378 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1379 modeldisabled="models/weapons/g_shotgun.md3"
1380 */
1381
1382 /*QUAKED weapon_uzi (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1383 the Machine Gun
1384 -------- KEYS --------
1385 ammo_nails: initial bullets of the weapon (if unset, g_pickup_nails is used)
1386 respawntime: time till it respawns (default: 15)
1387 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1388 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1389 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1390 -------- SPAWNFLAGS --------
1391 FLOATING: the item will float in air, instead of aligning to the floor by falling
1392 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1393 modeldisabled="models/weapons/g_uzi.md3"
1394 */
1395
1396 /*QUAKED worldspawn (0 0 0) ? 
1397 The world.
1398 If you see this, the currently selected brush is not of an entity.
1399 -------- KEYS --------          
1400 fog: fog parameters of the map (density red green blue alpha mindist maxdist maxheight fade-height); works just like the "fog" console command
1401 author: name of the author of the map, if not specified in "message". Will get copied to the "author" entry of the mapinfo file when none is present.
1402 message: text to print at user logon. Used for name of level. Ideally: "NAMEOFLEVEL by AUTHOR". Will get copied to the "title" and "author" entries of the mapinfo file when none is present.
1403 _description: one-line description of the map. Will get copied to the "description" entry of the mapinfo file when none is present.
1404 -------- Q3MAP2 KEYS --------
1405 _blocksize: vector specifying the automatic vis subdivision block size (default: 1024 1024 1024)
1406 gridsize: lightgrid granularity vector (default: 64 64 128)
1407 _color: color of the global light parameters
1408 _ambient: light added to all surfaces
1409 _mingridlight: minimum grid light
1410 _minlight: minimum light value on both surfaces and lightgrid
1411 _keepLights: do not remove light entities from the map (useful e.g. for realtime lighting)
1412 _floodlight: flood light parameters (red green blue distance intensity), start with 240 240 255 1024 128
1413 _farplanedist: range after which everything is completely invisible by fog (when fog is being used)
1414 _noshadersun: turn off sun defined by shaders (useful if you defined your own light entity to be a sun)
1415 _ignoreleaks: ignore leaks when compiling
1416 _lightmapscale: light map resolution factor
1417 _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.
1418 _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.
1419 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
1420 */
1421
1422 /*QUAKED trigger_race_checkpoint (0 1 0) ? NOTOUCH STRICTTRIGGER CRUSH FINISH
1423 A checkpoint, for the race game mode. Be sure to make them quite long, so they actually catch a player reliably!
1424 -------- KEYS --------
1425 cnt: Number of the checkpoint. 0 for start/finish line, and at least two other checkpoints have to exist. They MUST be touched in sequential order!
1426 message: Death message, when touching checkpoints in the wrong order.
1427 message2: Death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
1428 targetname: Name of the checkpoint. info_player_race can target this to assign a spawn to a checkpoint. Also used for triggering a checkpoint by an event.
1429 target: when the checkpoint is passed, these entities are triggered. Useful for forcing items in certain areas using trigger_items
1430 race_penalty: when set, this penalty time is given if passing this checkpoint, and the checkpoint does not show up with a sprite. Useful for invisible checkpoints to detect driving around the intended checkpoint
1431 race_penalty_reason: reason to display when the penalty time is imposed. Default: "missing a checkpoint"
1432 -------- SPAWNFLAGS --------
1433 NOTOUCH: the checkpoint will not become active when touched, it HAS to be targeted
1434 STRICTTRIGGER: only trigger the targets when the checkpoint actually was reached in a valid way (that is, not when going back)
1435 CRUSH: the checkpoint kills when used at the wrong time
1436 FINISH: when set on the last checkpoint (i.e. the one with highest cnt), it is marked as finish line and the CP with cnt=0 is the start line
1437 */
1438
1439 /*QUAKED trigger_race_penalty (0 1 0) ? NOTOUCH
1440 A penalty trigger.
1441 -------- KEYS --------
1442 race_penalty: this penalty time is given if passing this trigger
1443 race_penalty_reason: reason to display when the penalty time is imposed. Default: "leaving the track"
1444 -------- SPAWNFLAGS --------
1445 NOTOUCH: the trigger will not become active when touched, it HAS to be targeted
1446 */
1447
1448 /*QUAKED info_player_race (1 0.5 0) (-16 -16 -24) (16 16 45) 
1449 Race spawn point.
1450 NOTE for race_place: when the race starts after the qualifying, the player with the fastest lap ends up at the info_player_race with race_place 1, and so on. If there are too many players, or if someone comes in later, he will spawn at an info_player_race with highest race_place. If someone dies after reaching the the starting checkpoint, he will spawn at race_place 0. So for each trigger_race_checkpoint, there must be at least one corresponding info_player_race with race_place NOT set.
1451 -------- KEYS --------
1452 target: this should point to a trigger_race_checkpoint to decide when this spawning point is active. The checkpoint has to be AFTER this spawn.
1453 target2: trigger all entities with this targetname when someone spawns
1454 target3: trigger all entities with this targetname when someone spawns
1455 target4: trigger all entities with this targetname when someone spawns
1456 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1457 cnt: weight of spawn point for random selection. Set to a lower value if you have many spawn points close together. Default value is 1.
1458 race_place: if target points to the trigger_race_checkpoint with cnt 0 (finish line), this sets which place the spawn corresponds to; the special value 0 stands for spawns for players who died in game, and -1 marks the spawnpoint for qualifying mode only; any race map must have spawnpoints with race_place being 1, 2, 3 or it gets marked as a frustrating map
1459 restriction: when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn)
1460 */
1461
1462 /*QUAKED func_pointparticles (.5 .5 .5) ? START_ON IMPULSE VISCULLING
1463 A brush that emits particles.
1464 -------- KEYS --------
1465 mdl: particle effect name from effectinfo.txt
1466 impulse: when positive, number of particles to emit per second; when negative; number of particles to emit per second and 64^3 block
1467 velocity: particle direction and speed
1468 waterlevel: extra velocity jitter amount
1469 count: particle count multiplier (per spawned particle)
1470 movedir: when set, trace direction (particles will then be emitted from the surface the trace hits); the length of the vector is used as strength of taking the normal of the trace into account
1471 noise: sound to play when the particle is emitted
1472 atten: distance attenuation of the sound (a value from 0.1 to 3.9), default is 0.5; set to -1 for no attenuation (global sound)
1473 volume: volume of the sound
1474 targetname: name to target this (then its state is toggled)
1475 bgmscript: emitter class from the BGM script
1476 bgmscriptattack: attack time of the effect strength (0 to 3.9)
1477 bgmscriptdecay: decay time of the effect strength (0 to 3.9)
1478 bgmscriptsustain: sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain)
1479 bgmscriptrelease: release time of the effect strength (0 to 3.9)
1480 -------- SPAWNFLAGS --------
1481 START_ON: when targeted, the particle emitter will start switched on
1482 IMPULSE: only send the full amount of impulse particles when the entity is triggered
1483 VISCULLING: only emit particles if the emitter brush is in the current PVS
1484 -------- NOTES --------
1485 Use trigger_monoflop if you want the particles to turn off for a while, then turn back on.
1486 A BGM script is a .bgs file named like the map, in the maps directory. Its format is lines of the form
1487   <emitter class> <time since start of background music> <0 if the emitters are to be switched off, >0 and <=1 if they are to be switched on>
1488 e.g.
1489   smokers 4.7 1
1490   smokers 4.9 0
1491 The lines MUST be sorted by emitter class as primary key, and by the time since start of the BGM as secondary key.
1492 */
1493
1494 /*QUAKED trigger_flipflop (.5 .5 .5) (-8 -8 -8) (8 8 8) START_ON
1495 "Flip-flop" trigger gate... lets only every second trigger event through
1496 -------- KEYS --------
1497 target: trigger all entities with this targetname when triggered
1498 targetname: name that identifies this entity so it can be triggered
1499 -------- SPAWNFLAGS --------
1500 START_ON: assume it is already turned on (so the first event is NOT passed through)
1501 */
1502
1503 /*QUAKED trigger_monoflop (.5 .5 .5) (-8 -8 -8) (8 8 8) FIXED
1504 "Mono-flop" trigger gate... turns trigger events into pairs of events
1505 -------- KEYS --------
1506 target: trigger all entities with this targetname when triggered
1507 targetname: name that identifies this entity so it can be triggered
1508 wait: time to wait until the "off" event is fired
1509 -------- SPAWNFLAGS --------
1510 FIXED: do pulses of fixed length (so the "off" delay is NOT extended as usual and new events are just ignored)
1511 */
1512
1513 /*QUAKED trigger_multivibrator (.5 .5 .5) (-8 -8 -8) (8 8 8) START_ON
1514 "Multivibrator" trigger gate... repeatedly sends trigger events. When triggered, turns on or off.
1515 -------- KEYS --------
1516 target: trigger all entities with this targetname when it goes off
1517 targetname: name that identifies this entity so it can be triggered
1518 phase: phase of the multivibrator (it is added to the time)
1519 wait: "on" cycle time (default: 1)
1520 respawntime: "off" cycle time (default: same as wait)
1521 -------- SPAWNFLAGS --------
1522 START_ON: assume it is already turned on (when targeted)
1523 */
1524
1525 /*QUAKED trigger_gamestart (.5 .5 .5) (-8 -8 -8) (8 8 8)
1526 Triggers once when the game starts, then no longer does anything.
1527 -------- KEYS --------
1528 target: trigger all entities with this targetname when starting the game
1529 target2: trigger all entities with this targetname when starting the game
1530 target3: trigger all entities with this targetname when starting the game
1531 target4: trigger all entities with this targetname when starting the game
1532 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1533 wait: wait so many seconds before triggering
1534 */
1535
1536 /*QUAKED misc_follow (.5 .5 .5) (-8 -8 -8) (8 8 8) ATTACH LOCAL
1537 Makes one entity follow another. Will not work with all entities.
1538 -------- KEYS --------
1539 target: points to the entity to move (e.g. something that won't move by itself)
1540 killtarget: points to the entity that is to be used as the source (e.g. a func_plat)
1541 message: tag name to attach to (if ATTACH is used)
1542 punchangle: angle modifier (if LOCAL is used, and ATTACH is not)
1543 -------- SPAWNFLAGS --------
1544 ATTACH: attachment will be used instead of MOVETYPE_FOLLOW (mostly useful for attaching stuff to ZYM models)
1545 LOCAL: do not untransform the coordinates (that is, the map specifies local coordinates, not global ones). Mostly useful with ATTACH.
1546 */
1547
1548 /*QUAKED weapon_minstanex (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1549 Placing this entity on a map kills your cat, voids the warranty on your toaster, and makes your map an unenjoyable campers' paradise.
1550 the MinstaGib Nex. Always kills with one shot.
1551 -------- KEYS --------
1552 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1553 respawntime: time till it respawns (default: 15)
1554 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1555 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1556 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1557 -------- SPAWNFLAGS --------
1558 FLOATING: the item will float in air, instead of aligning to the floor by falling
1559 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1560 modeldisabled="models/weapons/g_minstanex.md3"
1561 */
1562
1563 /*QUAKED weapon_porto (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1564 the Port-O-Launch. Only can be shot once.
1565 Portals cannot be made on noimpact surfaces, and the portal missile will bounce on slick surfaces.
1566 -------- KEYS --------
1567 respawntime: time till it respawns (default: 120)
1568 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1569 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1570 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1571 -------- SPAWNFLAGS --------
1572 FLOATING: the item will float in air, instead of aligning to the floor by falling
1573 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1574 modeldisabled="models/weapons/g_porto.md3"
1575 */
1576
1577 /*QUAKED target_items (0 0 1) (-8 -8 -8) (8 8 8) AND OR ANDNOT
1578 Sets the items of any player who triggers this.
1579 For the number fields, not specifying a value means not changing it. To clear armor, you need to explicitly set "armor" to "-1".
1580 You may want to target this by a race checkpoint, a teleporter, or a trigger_multiple with ALLENTS set (so it removes weapons thrown through the field to avoid getting a weapon through it).
1581 -------- KEYS --------
1582 targetname: used to trigger this
1583 netname: space separated list of items (either weapon short names (like in g_start_weapon_* cvars), or item short names "unlimited_ammo", "unlimited_weapon_ammo", "unlimited_superweapons", "invincible", "strength", "jetpack" and "fuel_regen"
1584 message: message to print
1585 ammo_shells: amount of shells
1586 ammo_nails: amount of bullets
1587 ammo_rockets: amount of rockets
1588 ammo_cells: amount of cells
1589 ammo_fuel: amount of fuel
1590 health: amount of health
1591 armorvalue: amount of armor
1592 strength_finished: if "strength" is specified, the time in seconds for which the strength will hold
1593 invincible_finished: if "invincible" is specified, the time in seconds for which the invincibility will hold
1594 -------- SPAWNFLAGS --------
1595 AND: any items not listed will get removed, and none will get added
1596 OR: the player may keep items not listed
1597 ANDNOT: the items listed will get removed from the player
1598 */
1599
1600 /*QUAKED target_spawn (1 0 1) (-8 -8 -8) (8 8 8) - ONLOAD
1601 Spawns or modifies an entity when triggered.
1602 The entity field list is a single string of the form:
1603 'field' 'value' 'field' 'value' ... 'classname' 'item_bullets' ... 'field' 'value'
1604 The special "field" name $ calls a void(void) function, for example a spawn function.
1605 Special function names available are _setmodel and _setsize.
1606 Field values can use various variable replacements:
1607 $E
1608 $E.field
1609 $E.field+offset
1610 $E.field+offset+randomoffset
1611 where "E" can be self, activator, target (the entity being created/modified), killtarget, target2, target3, target4 and pusher.
1612 Example is a Mario-style question mark block which could throw a new weapon_nex when activated like this:
1613 {
1614 "classname" "func_button"
1615 "angle" "-1"
1616 "wait" "5"
1617 "target" "makenex"
1618 "speed" "1000"
1619 "lip" "64"
1620 ...
1621 }
1622 {
1623 "classname" "target_spawn"
1624 "origin" "0 0 448"
1625 "targetname" "makenex"
1626 "message" "origin $self.origin owner $activator flags 65536 colormap $activator.colormap classname droppedweapon $ spawnfunc_weapon_nex think thrown_wep_think nextthink $time+0.5 velocity $activator.velocity velocity_z 512 movetype 3"
1627 }
1628 -------- KEYS --------
1629 targetname: used to trigger this
1630 message: entity field list
1631 target: when set, target_spawn edits entities, instead of creating new ones; the special value *activator causes the activator to be edited
1632 count: make sure no more than count entities have been created by this (refuse to spawn new ones if exceeded)
1633 killtarget: reference entity (can be used as $killtarget)
1634 target2: reference entity (can be used as $target2)
1635 target3: reference entity (can be used as $target3)
1636 target4: reference entity (can be used as $target4)
1637 -------- SPAWNFLAGS --------
1638 ONLOAD: create a first entity on map load
1639 */
1640
1641 /*QUAKED misc_breakablemodel (1 0 0) ? DISABLED INDICATE - - - - - - NOSPLASH
1642 This is a model which can be damaged.
1643 Once all health is consumed it'll disappear and trigger the targeted entity/entities.
1644 When triggered, it resets to full health, and unbreaks.
1645 -------- KEYS --------
1646 model: file name of model to include
1647 health: The damage this trigger can take
1648 target: The entity/entities to be triggered once this entity gets invisible
1649 targetname: The name other entities can use to target this entity
1650 mdl: particle effect name to show when destroyed
1651 count: particle effect multiplier
1652 mdl_dead: optional replacement model to show when destroyed
1653 debris: names of debris models to show when destroyed, separated by spaces
1654 noise: sound to play when destroyed
1655 dmg: damage to deal to the environment when destroyed
1656 dmg_edge: edge damage to deal to the environment when destroyed
1657 dmg_radius: damage radius
1658 dmg_force: damage force
1659 message: death message when a player gets hit by the explosion
1660 message2: death message when someone gets pushed into this (default: "was pushed into an explosion by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
1661 debrismovetype: way in which the debris moves: one of 1 = ANGLENOCLIP, 2 = ANGLECLIP, 3 = WALK, 4 = STEP, 5 = FLY, 6 = TOSS, 7 = PUSH, 8 = NOCLIP, 9 = FLYMISSILE, 10 = BOUNCE, 11 = BOUNCEMISSILE
1662 debrissolid: solidity of the debris: one of 0 = NOT, 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE
1663 debrisvelocity: initial velocity vector of the debris (static part)
1664 debrisvelocityjitter: initial velocity vector of the debris (random part)
1665 debrisavelocityjitter: initial angular velocity vector of the debris (random part)
1666 debristime: time till the debris fades (average)
1667 debristimejitter: time till the debris fades (random part)
1668 debrisfadetime: how long debris takes to fade
1669 debrisdamageforcescale: how much debris is affected by damage force (e.g. explosions)
1670 debrisskin: skin number of debris
1671 respawntime: time till it respawns (default: no auto respawn)
1672 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1673 -------- SPAWNFLAGS --------
1674 DISABLED: do not allow damaging this until it is first activated
1675 INDICATE: indicate amount of damage already taken by coloring
1676 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
1677 */
1678
1679 /*QUAKED func_breakable (1 0 0) ? DISABLED INDICATE - - - - - - NOSPLASH
1680 This is a brush model which can be damaged.
1681 Once all health is consumed it'll disappear and trigger the targeted entity/entities.
1682 When triggered, it resets to full health, and unbreaks.
1683 -------- KEYS --------
1684 health: The damage this trigger can take
1685 target: The entity/entities to be triggered once this entity gets invisible
1686 targetname: The name other entities can use to target this entity
1687 mdl: particle effect name to show when destroyed
1688 count: particle effect multiplier
1689 mdl_dead: optional replacement model to show when destroyed
1690 debris: names of debris models to show when destroyed, separated by spaces
1691 noise: sound to play when destroyed
1692 dmg: damage to deal to the environment when destroyed
1693 dmg_edge: edge damage to deal to the environment when destroyed
1694 dmg_radius: damage radius
1695 dmg_force: damage force
1696 message: death message when a player gets hit by the explosion
1697 message2: death message when someone gets pushed into this (default: "was pushed into an explosion by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
1698 debrismovetype: way in which the debris moves: one of 1 = ANGLENOCLIP, 2 = ANGLECLIP, 3 = WALK, 4 = STEP, 5 = FLY, 6 = TOSS, 7 = PUSH, 8 = NOCLIP, 9 = FLYMISSILE, 10 = BOUNCE, 11 = BOUNCEMISSILE
1699 debrissolid: solidity of the debris: one of 0 = NOT, 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE
1700 debrisvelocity: initial velocity vector of the debris (static part)
1701 debrisvelocityjitter: initial velocity vector of the debris (random part)
1702 debrisavelocityjitter: initial angular velocity vector of the debris (random part)
1703 debristime: time till the debris fades (average)
1704 debristimejitter: time till the debris fades (random part)
1705 debrisfadetime: how long debris takes to fade
1706 debrisdamageforcescale: how much debris is affected by damage force (e.g. explosions)
1707 debrisskin: skin number of debris
1708 respawntime: time till it respawns (default: no auto respawn)
1709 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1710 -------- SPAWNFLAGS --------
1711 DISABLED: do not allow damaging this until it is first activated
1712 INDICATE: indicate amount of damage already taken by coloring
1713 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
1714 */
1715
1716 /*QUAKED trigger_relay_if (0 1 0) (-8 -8 -8) (8 8 8) NEGATE
1717 Relays the trigger event if a cvar is set to a specified value.
1718 -------- KEYS --------
1719 target: The entity/entities to relay the trigger events to
1720 targetname: The name other entities can use to target this entity
1721 netname: The name of the cvar to check
1722 message: The value of the cvar to check
1723 count: The count of entities that must be found
1724 -------- SPAWNFLAGS --------
1725 NEGATE: trigger if the cvar does NOT match the value.
1726 */
1727
1728 /*QUAKED weapon_hlac (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1729 the Heavy Laser Assault Cannon.
1730 -------- KEYS --------
1731 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1732 respawntime: time till it respawns (default: 30)
1733 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1734 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1735 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1736 -------- SPAWNFLAGS --------
1737 FLOATING: the item will float in air, instead of aligning to the floor by falling
1738 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1739 modeldisabled="models/weapons/g_hlac.md3"
1740 */
1741
1742 /*QUAKED weapon_minelayer (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1743 the Mine Layer.
1744 -------- KEYS --------
1745 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1746 respawntime: time till it respawns (default: 30)
1747 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1748 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1749 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1750 -------- SPAWNFLAGS --------
1751 FLOATING: the item will float in air, instead of aligning to the floor by falling
1752 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1753 modeldisabled="models/weapons/g_minelayer.md3"
1754 */
1755
1756 /*QUAKED weapon_seeker (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1757 Placing this entity on a map kills your dog, voids the warranty on your car, and makes your map an unenjoyable noobs' paradise.
1758 the T.A.G. Seeker.
1759 -------- KEYS --------
1760 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1761 respawntime: time till it respawns (default: 30)
1762 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1763 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1764 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1765 -------- SPAWNFLAGS --------
1766 FLOATING: the item will float in air, instead of aligning to the floor by falling
1767 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1768 modeldisabled="models/weapons/g_seeker.md3"
1769 */
1770
1771 /*QUAKED weapon_hook (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1772 the on-hand Grappling Hook.
1773 -------- KEYS --------
1774 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1775 respawntime: time till it respawns (default: 30)
1776 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1777 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1778 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1779 -------- SPAWNFLAGS --------
1780 FLOATING: the item will float in air, instead of aligning to the floor by falling
1781 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1782 modeldisabled="models/weapons/g_hookgun.md3"
1783 */
1784
1785 /*QUAKED trigger_heal (.5 .5 .5) ?
1786 Any object touching this will be healed.
1787 -------- KEYS --------
1788 health: health to give per second (default 10)
1789 max_health: max health this trigger will give (default 200)
1790 noise: sound file to play (use misc/null.wav to make it silent), default = item_health_medium sound
1791 */
1792
1793 /*QUAKED weapon_rifle (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1794 the Sniper Rifle.
1795 -------- KEYS --------
1796 ammo_nails: initial bullets of the weapon (if unset, g_pickup_nails is used)
1797 respawntime: time till it respawns (default: 30)
1798 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1799 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1800 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1801 -------- SPAWNFLAGS --------
1802 FLOATING: the item will float in air, instead of aligning to the floor by falling
1803 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1804 modeldisabled="models/weapons/g_campingrifle.md3"
1805 */
1806
1807 /*QUAKED func_fourier (0 .5 .8) ?
1808 Solid entity that oscillates according to a sum of sine waves.
1809 -------- KEYS --------
1810 speed: amount of time in seconds for one complete oscillation cycle in the base frequency (default 4).
1811 height: sets the amount of travel of the oscillation movement (default 32). 
1812 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).
1813 noise: path/name of .wav or .ogg file to play. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
1814 dmg: damage a player who gets crushed by it receives
1815 dmgtime: interval to apply dmg to a player who is s in the way
1816 message: death message when a player gets crushed
1817 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
1818 netname: list of <frequencymultiplier> <phase> <x> <y> <z> quadruples, separated by spaces; note that phase 0 represents a sine wave, and phase 0.25 a cosine wave (by default, it uses 1 0 0 0 1, to match func_bobbing's defaults
1819 */
1820
1821 /*QUAKED func_vectormamamam (0 .5 .8) ? PROJECT_ON_TARGETNORMAL PROJECT_ON_TARGET2NORMAL PROJECT_ON_TARGET3NORMAL PROJECT_ON_TARGET4NORMAL
1822 Solid entity that moves according to the movement of multiple given entities (max 4)
1823 -------- KEYS --------
1824 target: first reference entity
1825 targetfactor: factor by which to take the first reference entity (default 1).
1826 targetnormal: if set, the first reference entity's location is first projected onto a plane with that normal
1827 target2: second reference entity
1828 target2factor: factor by which to take the second reference entity (default 1).
1829 target2normal: if set, the second reference entity's location is first projected onto a plane with that normal
1830 target3: third reference entity (optional)
1831 target3factor: factor by which to take the third reference entity (default 1).
1832 target3normal: if set, the third reference entity's location is first projected onto a plane with that normal
1833 target4: fourth reference entity (optional)
1834 target4factor: factor by which to take the fourth reference entity (default 1).
1835 target4normal: if set, the fourth reference entity's location is first projected onto a plane with that normal
1836 noise: path/name of .wav or .ogg file to play. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
1837 dmg: damage a player who gets crushed by it receives
1838 dmgtime: interval to apply dmg to a player who is s in the way
1839 message: death message when a player gets crushed
1840 message2: death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end)
1841 -------- SPAWNFLAGS --------
1842 PROJECT_ON_TARGETNORMAL: target's origin is projected onto the given direction vector, not on the plane perpendicular to it
1843 PROJECT_ON_TARGET2NORMAL: target2's origin is projected onto the given direction vector, not on the plane perpendicular to it
1844 PROJECT_ON_TARGET3NORMAL: target3's origin is projected onto the given direction vector, not on the plane perpendicular to it
1845 PROJECT_ON_TARGET4NORMAL: target4's origin is projected onto the given direction vector, not on the plane perpendicular to it
1846 */
1847
1848 /*QUAKED trigger_relay_teamcheck (.5 .5 .5) (-8 -8 -8) (8 8 8) NOTEAM_TOO INVERT
1849 Works similar to trigger_relay, but only relays trigger events if the team of the activator matches this entity's team
1850 -------- KEYS --------
1851 target: trigger all entities with this targetname when triggered
1852 target2: trigger all entities with this targetname when triggered
1853 target3: trigger all entities with this targetname when triggered
1854 target4: trigger all entities with this targetname when triggered
1855 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1856 targetname: name that identifies this entity so it can be triggered
1857 delay: delay the triggering by the given time
1858 message: print this message to the player who activated the trigger
1859 killtarget: remove all entities with this targetname when triggered
1860 team: 5 for red, 14 for blue, 13 for yellow, 10 for pink team
1861 -------- SPAWNFLAGS --------
1862 NOTEAM_TOO: also relay events if the activator has no team set
1863 INVERT: only relay the event if this entity has the matching team
1864 */
1865
1866 /*QUAKED trigger_disablerelay (.5 .5 .5) (-8 -8 -8) (8 8 8) 
1867 Disables a trigger_relay temporarily (until triggered again)
1868 -------- KEYS --------
1869 target: disable/enable all relays with this targetname when triggered
1870 targetname: name that identifies this entity so it can be triggered
1871 */
1872
1873 /*QUAKED nexball_redgoal (1 0 0) ? GOAL_TOUCHPLAYER
1874 Red goal. Defended by the red team.
1875 -------- KEYS --------
1876 noise: sound played when a point is scored
1877 -------- SPAWNFLAGS --------
1878 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1879 */
1880
1881 /*QUAKED nexball_bluegoal (0 0 1) ? GOAL_TOUCHPLAYER
1882 Blue goal. Defended by the blue team.
1883 -------- KEYS --------
1884 noise: sound played when a point is scored
1885 -------- SPAWNFLAGS --------
1886 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1887 */
1888
1889 /*QUAKED nexball_yellowgoal (1 1 0) ? GOAL_TOUCHPLAYER
1890 Yellow goal. Defended by the yellow team. Needs both red and blue goals on the map to work.
1891 -------- KEYS --------
1892 noise: sound played when a point is scored
1893 -------- SPAWNFLAGS --------
1894 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1895 */
1896
1897 /*QUAKED nexball_pinkgoal (1 0 1) ? GOAL_TOUCHPLAYER
1898 Pink goal. Defended by the pink team. Needs red, blue and yellow goals on the map to work.
1899 -------- KEYS --------
1900 noise: sound played when a point is scored
1901 -------- SPAWNFLAGS --------
1902 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1903 */
1904
1905
1906 /*QUAKED nexball_fault (0.6 0.1 0) ? GOAL_TOUCHPLAYER
1907 This acts as a goal that always gives points to the opposing team.
1908 -------- KEYS --------
1909 noise: sound played when a point is scored
1910 -------- SPAWNFLAGS --------
1911 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1912 */
1913
1914 /*QUAKED nexball_out (0.1 0.6 0) ? GOAL_TOUCHPLAYER
1915 When the ball touches this, it is returned.
1916 -------- KEYS --------
1917 noise: sound played when a point is scored
1918 -------- SPAWNFLAGS --------
1919 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1920 */
1921
1922 /*QUAKED nexball_football (.9 .9 .9) (-16 -16 -16) (16 16 16)
1923 The soccer type Nexball.
1924 -------- KEYS --------
1925 model: set this if you want to use your own model
1926 scale: if you're using your own model, change this to scale it to 32*32*32
1927 noise: played when the ball bounces
1928 noise1: played when the ball is dropped on the map
1929 */
1930
1931 /*QUAKED nexball_basketball (.5 .2 0) (-16 -16 -16) (16 16 16)
1932 The basket ball type Nexball.
1933 -------- KEYS --------
1934 model: set this if you want to use your own model
1935 scale: if you're using your own model, change this to scale it to 32*32*32
1936 noise: played when the ball bounces
1937 noise1: played when the ball is dropped on the map
1938 noise2: played when the ball is stolen from the enemy
1939 */
1940
1941 /*QUAKED item_fuel (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
1942 Jetpack fuel
1943 -------- KEYS --------
1944 ammo_fuel: fuel units gained by this item (if unset, g_pickup_fuel is used)
1945 respawntime: time till it respawns (default: 15)
1946 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1947 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1948 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1949 -------- SPAWNFLAGS --------
1950 FLOATING: the item will float in air, instead of aligning to the floor by falling
1951 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1952 modeldisabled="models/items/g_fuel.md3"
1953 */
1954
1955 /*QUAKED item_fuel_regen (1 .3 1) (-30 -30 0) (30 30 48) FLOATING
1956 Fuel regenerator
1957 -------- KEYS --------
1958 respawntime: time till it respawns (default: 120)
1959 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1960 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1961 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1962 -------- SPAWNFLAGS --------
1963 FLOATING: the item will float in air, instead of aligning to the floor by falling
1964 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1965 modeldisabled="models/items/g_fuelregen.md3"
1966 */
1967
1968 /*QUAKED item_jetpack (.3 .3 1) (-30 -30 0) (30 30 48) FLOATING
1969 Jetpack
1970 -------- KEYS --------
1971 ammo_fuel: fuel units gained by this item (if unset, g_pickup_fuel_jetpack is used)
1972 respawntime: time till it respawns (default: 120)
1973 respawntimejitter: respawn time randomization +/- seconds (default: 0)
1974 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1975 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1976 -------- SPAWNFLAGS --------
1977 FLOATING: the item will float in air, instead of aligning to the floor by falling
1978 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1979 modeldisabled="models/items/g_jetpack.md3"
1980 */
1981
1982 /*QUAKED trigger_magicear (0 0 1) (-8 -8 -8) (8 8 8) IGNORE_SAY IGNORE_TEAMSAY IGNORE_TELL IGNORE_INVALIDTELL REPLACE_WHOLE_MESSAGE REPLACE_OUTSIDE CONTINUE NODECOLORIZE TUBA TUBA_EXACTPITCH
1983 Triggers targets when a given magic word has been said
1984 -------- KEYS --------
1985 message: message to wait for (can start or end with * for wildcards)
1986 netname: replacement text (by default, no replacement is performed if empty)
1987 radius: radius in which the player has to be for this to match
1988 target: all entities with a matching targetname will be triggered.
1989 target2: all entities with a matching targetname will be triggered.
1990 target3: all entities with a matching targetname will be triggered.
1991 target4: all entities with a matching targetname will be triggered.
1992 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
1993 movedir: if TUBA is set, this is a string of "instrument+1 mintempo maxtempo". Components can be set to 0 to not match.
1994 -------- SPAWNFLAGS --------
1995 IGNORE_SAY: do not respond to "say" messages
1996 IGNORE_TEAMSAY: do not respond to "say_team" messages
1997 IGNORE_TELL: do not respond to "tell" messages
1998 IGNORE_INVALIDTELL: do not respond to "tell" messages of invalid syntax
1999 REPLACE_WHOLE_MESSAGE: replace the whole message by netname, or drop the message if netname is empty
2000 REPLACE_OUTSIDE: also perform the replacement when outside the radius (to hide the "secret word")
2001 CONTINUE: even if this magic ear matched, continue looking for further matches/replacements (useful for swear word filters)
2002 NODECOLORIZE: do not decolorize the input string before matching
2003 TUBA: the message is a space separated note sequence that must be played on the @!#%'n Tuba or the @!#%'n Accordeon. For example, 4.25 means a quarter note at pitch 4, where 0 is base pitch (red team primary fire with no motion). For secret triggers to open doors, use 4.25 0.25 4.25 2.25. The first one to encode a rickroll in this gets slapped with the shotgun.
2004 TUBA_EXACTPITCH: the note pitch must be accurate and cannot be transposed
2005 */
2006
2007 /*QUAKED weapon_fireball (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
2008 the Fireball
2009 -------- KEYS --------
2010 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
2011 respawntime: time till it respawns (default: 15)
2012 respawntimejitter: respawn time randomization +/- seconds (default: 0)
2013 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
2014 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
2015 -------- SPAWNFLAGS --------
2016 FLOATING: the item will float in air, instead of aligning to the floor by falling
2017 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2018 modeldisabled="models/weapons/g_fireball.md3"
2019 */
2020
2021 /*QUAKED trigger_warpzone (1 .5 1) ? WATCHMOVE
2022 A warp zone, i.e. seamlessly connecting two parts of the map.
2023 One surface of this entity must have the common/warpzone shader (or a similar selfmade shader) - this will be the warp plane - the others must be common/trigger.
2024 Must target, or be targeted by, another trigger_warpzone with a congruent common/warpzone surface.
2025 Should target a target_position, or be targeted by a misc_warpzone_position.
2026 Should be thick enough to fit a player entity (i.e. 32 units), preferably even thicker.
2027 -------- KEYS --------
2028 target: must point to another trigger_warpzone, or...
2029 targetname: must be pointed to by another trigger_warpzone. Should be pointed to by a misc_warpzone_position entity, or...
2030 killtarget: should point to a target_position entity.
2031 target2: is triggered when a player ENTERS the warpzone (and warps away)
2032 target3: is triggered when a player LEAVES the warpzone (from the other warp zone to this one)
2033 target4: is triggered in both cases
2034 target_random: instead of triggering ALL matched entities, trigger ONE of them by random
2035 warpzone_fadestart: start distance of fading out the warpzone
2036 warpzone_fadeend: end distance of fading out the warpzone (if viewer is further, warpzone is not rendered at all)
2037 -------- SPAWNFLAGS --------
2038 WATCHMOVE: allow this entity to be moved by others, e.g. misc_follow in MOVETYPE_FOLLOW mode
2039 */
2040
2041 /*QUAKED trigger_warpzone_reconnect (1 .5 1) (-8 -8 -8) (8 8 8) IGNORE_VISIBLE
2042 Reconnects (randomly) all warpzones/cameras with matching target when triggered
2043 -------- KEYS --------
2044 target: must point to multiple trigger_warpzones, or be not set (then all warpzones may get changed)
2045 targetname: name that identifies this entity so it can be triggered
2046 -------- SPAWNFLAGS --------
2047 IGNORE_VISIBLE: do not rearrange a warpzone if a player can currently see it
2048 */
2049
2050 /*QUAKED misc_warpzone_position (1 .5 .25) (-8 -8 -8) (8 8 8) 
2051 Orientation specification for a trigger_warpzone
2052 -------- KEYS --------
2053 target: must point to a trigger_warpzone
2054 angles: must point perpendicular to the common/warpzone surface of the trigger_warpzone, and away from the trigger brush
2055 origin: must be on the common/warpzone surface of the trigger_warpzone
2056 */
2057
2058 /*QUAKED func_camera (1 .5 1) ? WATCHMOVE
2059 A camera, i.e. a surface that shows a view from another part of the map.
2060 One surface of this entity must have the common/camera shader, the others should be common/caulk.
2061 Must target a target_position that indicates the view to be shown (and whose angles also indicate the orientation of the view)
2062 -------- KEYS --------
2063 target: must point to a target_position
2064 warpzone_fadestart: start distance of fading out the warpzone
2065 warpzone_fadeend: end distance of fading out the warpzone (if viewer is further, warpzone is not rendered at all)
2066 -------- SPAWNFLAGS --------
2067 WATCHMOVE: allow this entity to be moved by others, e.g. misc_follow in MOVETYPE_FOLLOW mode
2068 */
2069
2070 /*QUAKED target_music (1 0 0) (-8 -8 -8) (8 8 8) START_OFF
2071 Background music target (when this is used, the cdtrack line in mapinfo must not be used, and there MUST be a default target_music).
2072 When triggered, the background music is switched to the given track.
2073 When targetname is not set, this is the default track of the map.
2074 -------- KEYS --------
2075 targetname: The name other entities can use to target this entity (when not set, this one is the default)
2076 noise: the music to play (as full sound file name)
2077 volume: the volume (default: 1)
2078 fade_time: fade-in time
2079 fade_rate: fade-out time
2080 lifetime: when set, the music created by this target is switched back to the default one when this time expires
2081 -------- SPAWNFLAGS --------
2082 START_OFF: the trigger is off initially
2083 */
2084
2085 /*QUAKED trigger_music (1 0 0) ? START_OFF
2086 Background music trigger (when this is used, the cdtrack line in mapinfo must not be used, and there MUST be a default target_music).
2087 When triggered, its effect is turned off until triggered again.
2088 -------- KEYS --------
2089 targetname: The name other entities can use to target this entity
2090 noise: the music to play (as full sound file name)
2091 volume: the volume (default: 1)
2092 fade_time: fade-in time
2093 fade_rate: fade-out time
2094 -------- SPAWNFLAGS --------
2095 START_OFF: the trigger is off initially
2096 */
2097
2098 /*QUAKED trigger_gravity (.5 .5 1) ? STICKY START_OFF
2099 An area where gravity differs from the rest of the map.
2100 This acts as a modifier over the normal gravity (sv_gravity). eg: 0.5 is half the normal gravity, 2 is twice the normal gravity.
2101 -------- KEYS --------
2102 gravity: gravity offset in this area, defaults to 0 if not set
2103 noise: sound to play when an entity enters the gravity zone, leave empty to disable
2104 targetname: you can use this to target the grazity zone with a trigger, which will toggle it when activated
2105 -------- SPAWNFLAGS --------
2106 STICKY: entities keep their gravity after leaving the gravity zone
2107 START_OFF: when targeted, the gravity zone starts off and is enabled upon triggering
2108 */
2109
2110 /*QUAKED relay_activate (0 1 0) (-8 -8 -8) (8 8 8) 
2111 Activates all .target's
2112 List of currently supported target ents:
2113 trigger_hurt
2114 trigger_heal
2115 trigger_impulse
2116 trigger_push
2117 trigger_teleport
2118 func_rotating
2119 func_bobbing
2120 func_button
2121 func_fourier
2122 func_vectormamamam
2123 -------- KEYS --------
2124 target: trigger all entities with this targetname when triggered
2125 targetname: name that identifies this entity so it can be triggered
2126 */
2127
2128 /*QUAKED relay_deactivate (1 0 0) (-8 -8 -8) (8 8 8) 
2129 Deactivates all .target's
2130 List of currently supported target ents:
2131 trigger_hurt
2132 trigger_heal
2133 trigger_impulse
2134 trigger_push
2135 trigger_teleport
2136 func_rotating
2137 func_bobbing
2138 func_button
2139 func_fourier
2140 func_vectormamamam
2141 -------- KEYS --------
2142 target: trigger all entities with this targetname when triggered
2143 targetname: name that identifies this entity so it can be triggered
2144 */
2145
2146 /*QUAKED relay_activatetoggle (0 1 1) (-8 -8 -8) (8 8 8) 
2147 Toggles all .target's de/active
2148 List of currently supported target ents:
2149 trigger_hurt
2150 trigger_heal
2151 trigger_impulse
2152 trigger_push
2153 trigger_teleport
2154 func_rotating
2155 func_bobbing
2156 func_button
2157 func_fourier
2158 func_vectormamamam
2159 -------- KEYS --------
2160 target: trigger all entities with this targetname when triggered
2161 targetname: name that identifies this entity so it can be triggered
2162 */
2163
2164 /*QUAKED target_changelevel (.5 .5 0) (-8 -8 -8) (8 8 8)
2165 Loads another map when triggered. Useful for single player maps.
2166 When no chmap key is set, the entity just ends the match when triggered. The player / team with the highest score at that moment wins.
2167 -------- KEYS --------
2168 targetname: The name other entities can use to target this entity
2169 chmap: Map file to switch to, leave empty to make this entity just end the match
2170 gametype: Switch to this gametype. If empty, the same gametype stays
2171 */
2172 /*QUAKED turret_machinegun (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2173 Fast firing moderate damage bullet (hitscan) turret.
2174 -------- KEYS --------
2175 turret_scale_damage: 2 = double damage, 0.5 = half
2176 turret_scale_range: 2 = double range, 0.5 = half
2177 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2178 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2179 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2180 turret_scale_health: 2 = double health, 0.5 = half
2181 target: Defend the position of this entity
2182 team: 5=red, 14=blue
2183 -------- SPAWNFLAGS --------
2184 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2185 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2186 model="../xonotic-data.pk3dir/models/turrets/radiant/mg.md3"
2187 */
2188
2189 /*QUAKED turret_plasma (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2190 -------- KEYS --------
2191 turret_scale_damage: 2 = double damage, 0.5 = half
2192 turret_scale_range: 2 = double range, 0.5 = half
2193 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2194 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2195 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2196 turret_scale_health: 2 = double health, 0.5 = half
2197 target: Defend the position of this entity
2198 team: 5=red, 14=blue
2199 -------- SPAWNFLAGS --------
2200 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2201 ---------NOTES----------
2202 Basic energy cannon
2203 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2204 model="../xonotic-data.pk3dir/models/turrets/radiant/plasma.md3"
2205 */
2206
2207 /*QUAKED turret_plasma_dual (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2208 basic energy cannon * 2
2209 -------- KEYS --------
2210 turret_scale_damage: 2 = double damage, 0.5 = half
2211 turret_scale_range: 2 = double range, 0.5 = half
2212 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2213 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2214 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2215 turret_scale_health: 2 = double health, 0.5 = half
2216 target: Defend the position of this entity
2217 team: 5=red, 14=blue
2218 -------- SPAWNFLAGS --------
2219 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2220 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2221 model="../xonotic-data.pk3dir/models/turrets/radiant/plasma2.md3"
2222 */
2223
2224 /*QUAKED turret_flac (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2225 Only kills missiles, rockets, grenadelauncher & electro secondaries to be precise.
2226 -------- KEYS --------
2227 turret_scale_damage: 2 = double damage, 0.5 = half
2228 turret_scale_range: 2 = double range, 0.5 = half
2229 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2230 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2231 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2232 turret_scale_health: 2 = double health, 0.5 = half
2233 target: Defend the position of this entity
2234 team: 5=red, 14=blue
2235 -------- SPAWNFLAGS --------
2236 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2237 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2238 model="../xonotic-data.pk3dir/models/turrets/radiant/flac.md3"
2239 */
2240
2241 /*QUAKED turret_mlrs (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2242 6 unguided rockers fired in a rapid burst.
2243 -------- KEYS --------
2244 turret_scale_damage: 2 = double damage, 0.5 = half
2245 turret_scale_range: 2 = double range, 0.5 = half
2246 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2247 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2248 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2249 turret_scale_health: 2 = double health, 0.5 = half
2250 target: Defend the position of this entity
2251 team: 5=red, 14=blue
2252 -------- SPAWNFLAGS --------
2253 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2254 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2255 model="../xonotic-data.pk3dir/models/turrets/radiant/mlrs.md3"
2256 */
2257
2258 /*QUAKED turret_hellion (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2259 2 guided moderate damage accelerating rockets 
2260 -------- KEYS --------
2261 turret_scale_damage: 2 = double damage, 0.5 = half
2262 turret_scale_range: 2 = double range, 0.5 = half
2263 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2264 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2265 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2266 turret_scale_health: 2 = double health, 0.5 = half
2267 target: Defend the position of this entity
2268 team: 5=red, 14=blue
2269 -------- SPAWNFLAGS --------
2270 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2271 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2272 model="../xonotic-data.pk3dir/models/turrets/radiant/hellion.md3"
2273 */
2274
2275
2276 /*QUAKED turret_hk (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2277 Single powerful rocket with the ability to evade obstacles to find its target. Varied speed.
2278 -------- KEYS --------
2279 turret_scale_damage: 2 = double damage, 0.5 = half
2280 turret_scale_range: 2 = double range, 0.5 = half
2281 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2282 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2283 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2284 turret_scale_health: 2 = double health, 0.5 = half
2285 target: Defend the position of this entity
2286 team: 5=red, 14=blue
2287 -------- SPAWNFLAGS --------
2288 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2289 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2290 model="../xonotic-data.pk3dir/models/turrets/radiant/hk.md3"
2291 */
2292
2293 /*QUAKED turret_tesla (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2294 Fires a lightning bolt that will jump to up to 10 targets if they are close enough to each other. Missiles included.
2295 -------- KEYS --------
2296 turret_scale_damage: 2 = double damage, 0.5 = half
2297 turret_scale_range: 2 = double range, 0.5 = half
2298 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2299 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2300 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2301 turret_scale_health: 2 = double health, 0.5 = half
2302 target: Defend the position of this entity
2303 team: 5=red, 14=blue
2304 -------- SPAWNFLAGS --------
2305 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2306 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2307 model="../xonotic-data.pk3dir/models/turrets/radiant/tesla.md3"
2308 */
2309
2310 /*QUAKED turret_phaser (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2311 Constant beam weapon that will considerably slow its target down while dealing low but constant damage.
2312 -------- KEYS --------
2313 turret_scale_damage: 2 = double damage, 0.5 = half
2314 turret_scale_range: 2 = double range, 0.5 = half
2315 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2316 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2317 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2318 turret_scale_health: 2 = double health, 0.5 = half
2319 target: Defend the position of this entity
2320 team: 5=red, 14=blue
2321 -------- SPAWNFLAGS --------
2322 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2323 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2324 model="../xonotic-data.pk3dir/models/turrets/radiant/phaser.md3"
2325 */
2326
2327
2328 /*QUAKED turret_fusionreactor (1 0 0) (-32 -32 0) (32 32 50) - PILLAR
2329 -------- KEYS --------
2330 turret_scale_damage: 2 = double damage, 0.5 = half
2331 turret_scale_range: 2 = double range, 0.5 = half
2332 turret_scale_refire: 2 = double refire (SLOWER!), 0.5 = half (FASTER!)
2333 turret_scale_ammo: 2 = double ammo carry & regen, 0.5 = half ammo carry & regen
2334 turret_scale_aim: 2 = aim twice as fast, 0,5 = aim at half speed
2335 turret_scale_health: 2 = double health, 0.5 = half
2336 team: 5=red, 14=blue
2337 -------- SPAWNFLAGS --------
2338 PILLAR: Adds a supporting pillar under this turret, for turrets on terrain/uneven surfaces. (only for visuals)
2339 ---------NOTES----------
2340 Supplies neerby energy based turrets with more power so they can fire more often.
2341 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2342 model="../xonotic-data.pk3dir/models/turrets/radiant/reactor.md3"
2343 */
2344
2345 /*QUAKED turret_targettrigger (.5 .5 .5) ?
2346 Used to feed turrets capable of it with remote target info. currently only turret_hk supports this.
2347 */
2348
2349
2350 /*QUAKED turret_walker (1 0 0) (-32 -32 0) (32 32 50)
2351 -----------KEYS------------
2352 turret_scale_damage: 2 = double damage, 0.5 = half
2353 turret_scale_range:  2 = double range, 0.5 = half
2354 turret_scale_refire: 2 = doubble refire (SLOWER!), 0.5 = half (FASTER!)
2355 turret_scale_ammo:   2 = doubble ammo carry & regen, 0.5 = half ammo carry & regen
2356 turret_scale_aim:    2 = aim twice as fast, 0,5 = aim at half speed
2357 turret_scale_health: 2 = double health, 0.5 = half
2358 team: 5=red, 14=blue
2359 -----------SPAWNFLAGS-----------
2360 ---------NOTES----------
2361
2362 A nasty mechanical critter that will engage longrange target with missiles, midrange with its minigun and meele things up close and personal.
2363
2364 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2365 model="../xonotic-data.pk3dir/models/turrets/radiant/walker.md3"
2366 */
2367
2368
2369 /*QUAKED turret_ewheel (1 0 0) (-32 -32 0) (32 32 50)
2370 -----------KEYS------------
2371 turret_scale_damage: 2 = double damage, 0.5 = half
2372 turret_scale_range:  2 = double range, 0.5 = half
2373 turret_scale_refire: 2 = doubble refire (SLOWER!), 0.5 = half (FASTER!)
2374 turret_scale_ammo:   2 = doubble ammo carry & regen, 0.5 = half ammo carry & regen
2375 turret_scale_aim:    2 = aim twice as fast, 0,5 = aim at half speed
2376 turret_scale_health: 2 = double health, 0.5 = half
2377 team: 5=red, 14=blue
2378 -----------SPAWNFLAGS-----------
2379 ---------NOTES----------
2380
2381 Small, agile and moveing turret.
2382
2383 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2384 model="../xonotic-data.pk3dir/models/turrets/radiant/ewheel.md3"
2385 */
2386
2387
2388 /*QUAKED turret_checkpoint (1 0 1) (-32 -32 -32) (32 32 32)
2389 -----------KEYS------------
2390 target: .targetname of next wapoint in chain.
2391 wait:   Pause at this point # seconds.
2392 -----------SPAWNFLAGS-----------
2393
2394 ---------NOTES----------
2395 If a loop is of targets are formed, any unit entering this loop will patrol it indefinitly.
2396 If the checkpoint chain in not looped, the unit will go "Roaming" when the last point is reached.
2397 */
2398 /*QUAKED vehicle_racer (0 0 1) (-48 -48 0) (48 48 32) 
2399 Fast moving hover type vehicle, with low shiled & health.
2400 Primary weapon is a rapid fire energy cannon, secondary lockable rockets.
2401 -------- KEYS --------
2402 team: 5=red, 14=blue
2403 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2404 model="models/vehicles-static/wakazachi.md3"
2405 */
2406
2407 /*QUAKED vehicle_spiderbot (0 0 1) (-48 -48 0) (48 48 32)
2408 A slow moving 6 legged mech type vehile that has plenty of health and shiled.
2409 Primary weapon is twin miniguns, secondary eight rockets that can be guided by the pilot.
2410 -------- KEYS --------
2411 team: 5=red, 14=blue
2412 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2413 model="models/vehicles-static/spiderbot.md3"
2414 */
2415
2416 /*QUAKED vehicle_raptor (0 0 1) (-48 -48 0) (48 48 32)
2417 The raptor is primaerly a air to ground frighter, its quite lightly armoured or shilded.
2418 Its main weapon is four rapid fire energy cannons, wich can be locked to track a target by aming at it for some time.
2419 Secondary is a pair of vert powerfull clusterbombs.
2420 -------- KEYS --------
2421 team: 5=red, 14=blue
2422 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
2423 model="models/vehicles-static/raptor.md3"
2424 */