document team field for trigger_hurt, misc_laser
[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 dom_controlpoint (.3 .3 1) (-16 -16 -16) (16 16 16) 
11 Domination  control point
12 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).
13 -------- KEYS --------
14 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".
15 wait: How often this point gives its controlling team frags.
16 frags: How many frags this point gives each wait cycle.
17 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
18 zbqry="zbqryf/qbzvangvba/qbz_hapynvzrq.zq3"
19
20 */
21
22 /*QUAKED dom_team (.3 .3 1) (-16 -16 -16) (16 16 16) 
23 Domination team.
24 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).
25
26 dom_team entites declare the teams (and the models the team uses) that are available in the domination game. Their position does not matter.
27
28 model should be set to models/domination/dom_<team>.md3, where <team> is either "red", "blue", "yellow", or "pink".
29 -------- KEYS --------
30 netname: name of team (Red Team).  Set to "" or don't define for the required blank team.
31 cnt: color of the team.  See the "Helpful Extras" section in Docs/mapping.txt for info.
32 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.
33 noise: Sound to be played on the control point when it's captured.  Only players nearby will hear it.
34 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")
35 */
36
37 /*QUAKED func_assault_destructible (.5 0 .5) ? - - - - - - - - NOSPLASH
38 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.
39 -------- KEYS --------
40 health: The damage this trigger can take
41 target: The entity/entities to be triggered once this entity gets invisible
42 targetname: The name other entities can use to target this entity
43 mdl: particle effect name to show when destroyed
44 count: particle effect multiplier
45 mdl_dead: optional replacement model to show when destroyed
46 debris: names of debris models to show when destroyed, separated by spaces
47 noise: sound to play when destroyed
48 dmg: damage to deal to the environment when destroyed
49 dmg_edge: edge damage to deal to the environment when destroyed
50 dmg_radius: damage radius
51 dmg_force: damage force
52 message: death message when a player gets hit by the explosion
53 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)
54 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
55 debrissolid: solidity of the debris: one of 0 = NOT, 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE
56 debrisvelocity: initial velocity vector of the debris (static part)
57 debrisvelocityjitter: initial velocity vector of the debris (random part)
58 debrisavelocityjitter: initial angular velocity vector of the debris (random part)
59 debristime: time till the debris fades (average)
60 debristimejitter: time till the debris fades (random part)
61 debrisfadetime: how long debris takes to fade
62 debrisdamageforcescale: how much debris is affected by damage force (e.g. explosions)
63 debrisskin: skin number of debris
64 -------- SPAWNFLAGS --------
65 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
66 */
67
68 /*QUAKED func_assault_wall (.5 0 .5) ?
69 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.
70 -------- KEYS --------
71 target: targetname of a target_objective
72 */
73
74 /*QUAKED func_bobbing (0 .5 .8) ? X_AXIS Y_AXIS
75 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.
76 -------- KEYS --------
77 speed: amount of time in seconds for one complete oscillation cycle (default 4).
78 height: sets the amount of travel of the oscillation movement (default 32). 
79 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).
80 noise: path/name of .wav or .ogg file to play. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
81 dmg: damage a player who gets crushed by it receives
82 dmgtime: interval to apply dmg to a player who is s in the way
83 message: death message when a player gets crushed
84 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)
85 -------- SPAWNFLAGS --------
86 X_AXIS: entity will bob along the X axis.
87 Y_AXIS: entity will bob along the Y axis.
88 */
89
90 /*QUAKED func_button (0 .5 .8) ? - - - - - - - - NOSPLASH
91 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.
92 -------- KEYS --------
93 angle: determines the direction in which the button will move (up = -1, down = -2).
94 target: all entities with a matching targetname will be triggered.
95 target2: all entities with a matching targetname will be triggered.
96 target3: all entities with a matching targetname will be triggered.
97 target4: all entities with a matching targetname will be triggered.
98 speed: speed of button's displacement (default 40).
99 wait: number of seconds button stays pressed (default 1, -1 = return immediately).
100 lip: lip remaining at end of move (default 4 units).
101 health: (default 0) if set to any non-zero value, the button must take damage (any amount) to activate.
102 -------- SPAWNFLAGS --------
103 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
104 */
105
106 /*QUAKED func_door (0 .5 .8) ? START_OPEN - DOOR_DONT_LINK - - TOGGLE - - NOSPLASH
107 Normal sliding door entity. By default, the door will activate when player walks close to it or when damage is inflicted to it.
108 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).
109 -------- KEYS --------
110 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
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 angle: determines the opening direction
113 targetname: if set, no touch field will be spawned and a remote button or trigger field activates the door.
114 health: if set, door must be shot open
115 speed: movement speed (100 default)
116 wait: wait before returning (3 default, -1 = never return)
117 lip: lip remaining at end of move (8 default)
118 dmg: damage to inflict when blocked (when triggered and someone is in the way)
119 sounds: when 1, use default door sounds
120 noise1: sound when the door opens
121 noise2: sound when the door closes
122 -------- SPAWNFLAGS --------
123 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).
124 DOOR_DONT_LINK: the door won't link with another door it touches
125 TOGGLE: causes the door to wait in both the start and end states for a trigger event.
126 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
127 */
128
129 /*QUAKED func_door_rotating (0 .5 .8) ? START_OPEN BIDIR DOOR_DONT_LINK BIDIR_IN_DOWN - TOGGLE X_AXIS Y_AXIS NOSPLASH
130 Normal rotating door entity that opens by rotating around an axis (default: Z). Use an origin brush to specify the rotation axis.
131 By default, the door will activate when player walks close to it or when damage is inflicted to it.
132 If DOOR_DONT_LINK is not set, the door will be linked with all doors it touches.
133 BIDIR makes the door work bidirectional, so that the opening direction is always away from the requestor.
134 The usage of bidirectional doors requires two manually instantiated triggers (trigger_multiple), the one to open it in the other direction
135 must have set trigger_reverse to 1.
136 BIDIR_IN_DOWN will the door prevent from reopening while closing if it is triggered from the other side.
137 -------- KEYS --------
138 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
139 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)
140 angle: determines the destination angle for opening. negative values reverse the direction (90 default)
141 targetname: if set, no touch field will be spawned and a remote button or trigger field activates the door.
142 health: if set, door must be shot open
143 speed: speed to rotate (in degrees per second)
144 wait: wait before returning (3 default, -1 = never return)
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 -------- SPAWNFLAGS --------
150 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).
151 DOOR_DONT_LINK: the door won't link with another door it touches
152 TOGGLE: causes the door to wait in both the start and end states for a trigger event.
153 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
154 */
155
156 /*QUAKED func_door_secret (0 .5 .8) ? OPEN_ONCE 1ST_LEFT 1ST_DOWN NO_SHOOT ALWAYS_SHOOT
157 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.
158 -------- KEYS --------
159 wait: # of seconds before coming back
160 key1: first entity key with one-line description
161 key2: second entity key with one-line description
162 t_width: override WIDTH to move back (or height if going down)
163 t_length: override LENGTH to move sideways
164 dmg: damage to inflict when blocked (2 default)
165 message: text to display when activating the door, or death message if dmg is set
166 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)
167 noise1: sound when opening backwards or closing
168 noise2: sound when opening sideways
169 noise3: sound when stopping
170 -------- SPAWNFLAGS --------
171 OPEN_ONCE: only work once, then stay open
172 1ST_LEFT: 1st move is left of arrow
173 1ST_DOWN: 1st move is down from arrow
174 NO_SHOOT: never respond to shots
175 ALWAYS_SHOOT: even if targetname is set, respond to shots
176 */
177
178 /*QUAKED func_group (0 .5 .8) ? 
179 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.
180 -------- Q3MAP2 KEYS --------
181 _lightmapscale: light map resolution factor
182 _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.
183 _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.
184 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
185 -------- KEYS --------
186 _indexmap: Path/name for the TGA file used to guide the mapping of textures on the terrain surface.
187 _layers: number of unique root shaders that will be use on the terrain.
188 _shader: Path to the metashader used to assign textures to the terrain entity. Note: Omit the "textures/" prefix.
189 _offsets: space separated list of height offsets for the index map
190 */
191
192 /*QUAKED func_ladder (0 .5 .8) ? 
193 a ladder, need i say no more
194 grab a trigger brush and put it in front of the part that you want the player to climb
195 */
196
197 /*QUAKED func_plat (0 .5 .8) ? - - CRUSH
198 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.
199 -------- KEYS --------
200 speed: determines how fast the plat moves (default 150).
201 lip: lip remaining at end of move (default 16). Has no effect if "height" is set.
202 height: if set, this will determine the total amount of vertical travel of the plat.
203 dmg: damage to inflict on player when he blocks operation of plat. Plat will reverse direction when blocked.
204 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.
205 sounds: 2 for alternate sound set, -1 for silence, or use the fields below
206 sound1: platform starts moving sound
207 sound2: platform stop sound
208 message: kill message, when someone gets killed by this plat
209 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)
210 -------- SPAWNFLAGS --------
211 CRUSH: crush players hit by the platform instantly
212 -------- NOTES --------
213 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.
214 */
215
216 /*QUAKED func_rain (0 .5 .8) ? 
217 This is an invisible area like a trigger, which rain falls inside of.
218 -------- KEYS --------
219 velocity: falling direction (should be something like '0 0 -700', use the X and Y velocity for wind)
220 cnt: sets color of rain in the Quake palette (default 12 - white)
221 count: adjusts density, this many particles fall every second for a 1024x1024 area, default is 2000
222 */
223
224 /*QUAKED func_rotating (0 .5 .8) ? - - X_AXIS Y_AXIS
225 Brush entity that spins in place on one axis (default Z). Use an origin brush to specify the rotation axis.
226 To rotate around another axis, make a func_wall with an explicit avelocity given.
227 -------- KEYS --------
228 speed: speed to rotate (in degrees per second)
229 noise: path/name of looping .wav file to play.
230 dmg: Do this much dmg every .dmgtime interval when blocked
231 dmgtime: See above. (0.25s default)
232 message: kill message when crushed by this
233 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)
234 -------- SPAWNFLAGS --------
235 X_AXIS: rotate around the X axis
236 Y_AXIS: rotate around the Y axis
237 */
238
239 /*QUAKED func_snow (0 .5 .8) ? 
240 This is an invisible area like a trigger, which snow falls inside of.
241 -------- KEYS --------
242 velocity: falling direction (should be something like '0 0 -300', use the X and Y velocity for wind)
243 cnt: sets color of snow in the Quake palette (default 12 - white)
244 count: adjusts density, this many particles fall every second for a 1024x1024 area, default is 2000
245 */
246
247 /*QUAKED func_stardust (.5 .5 .5) (-8 -8 -8) (8 8 8) 
248 Point entity with EF_STARDUST applied. This will spawn a particle cloud with mostly golden particles. Used as eye-candy.
249 */
250
251 /*QUAKED func_train (0 .5 .8) ? 
252 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).
253 At each node, the train's mins corner hits exactly the path_corner.
254 Trains always start on in the game.
255 Trains do not damage the played when blocked.
256 Trains cannot emit sound.
257 Trains are not trigger-able or toggle-able.
258 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.
259 -------- KEYS --------
260 speed: default/initial speed of train (default 100 or overridden by speed value of targeted path_corner)
261 target: targetname of first path_corner to move to at the default speed; ideally, this path_corner shall be exactly where the train starts
262 noise: path/name of .wav or .ogg file to play while moving. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
263 dmg: damage a player who gets crushed by it receives
264 dmgtime: interval to apply dmg to a player who is s in the way
265 message: death message when a player gets crushed
266 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)
267 */
268
269 /*QUAKED info_location (1 1 0) (-8 -8 -8) (8 8 8) 
270 Location for use by the %l escape in "say" messages.
271 The closest "visible" info_location entity is chosen to find the right location name for a point.
272 -------- KEYS --------
273 netname: name of location, possibly with color codes
274 */
275
276 /*QUAKED info_notnull (0 .5 0) (-8 -8 -8) (8 8 8) 
277 Entity that does nothing, but may be targeted (e.g. to use its position)
278 -------- KEYS --------
279 targetname: must match the target key of entity that uses this for pointing.
280 */
281
282 /*QUAKED info_null (0 .5 0) (-8 -8 -8) (8 8 8) 
283 Aiming target for q3map2-internal entities like _decal or light. Removes itself when loaded, so it can NOT be used for in-game stuff!
284 -------- KEYS --------
285 targetname: the entity that requires an aiming direction points to this.
286 */
287
288 /*QUAKED info_player_attacker (1 0.5 0) (-16 -16 -24) (16 16 45) 
289 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.
290 -------- KEYS --------
291 target: this should point to a target_objective to decide when this spawning point is active.
292 target2: trigger all entities with this targetname when someone spawns
293 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.
294 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)
295 */
296
297 /*QUAKED info_player_deathmatch (0 1 0) (-16 -16 -24) (16 16 45) 
298 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.
299 -------- KEYS --------
300 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.
301 target: trigger all entities with this targetname when someone spawns
302 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.
303 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)
304 */
305
306 /*QUAKED info_player_defender (.5 .5 .5) (-16 -16 -24) (16 16 45) 
307 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.
308 -------- KEYS --------
309 target: this should point to a target_objective to decide when this spawning point is active.
310 target2: trigger all entities with this targetname when someone spawns
311 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.
312 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)
313 */
314
315 /*QUAKED info_player_team1 (1 0 0) (-16 -16 -24) (16 16 45) 
316 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.
317 -------- KEYS --------
318 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.
319 target: trigger all entities with this targetname when someone spawns
320 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.
321 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)
322 */
323
324 /*QUAKED info_player_team2 (0 0 1) (-16 -16 -24) (16 16 45) 
325 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.
326 -------- KEYS --------
327 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.
328 target: trigger all entities with this targetname when someone spawns
329 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.
330 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)
331 */
332
333 /*QUAKED info_player_team3 (1 1 0) (-16 -16 -24) (16 16 45) 
334 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.
335 -------- KEYS --------
336 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.
337 target: trigger all entities with this targetname when someone spawns
338 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.
339 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)
340 */
341
342 /*QUAKED info_player_team4 (1 0 1) (-16 -16 -24) (16 16 45) 
343 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.
344 -------- KEYS --------
345 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.
346 target: trigger all entities with this targetname when someone spawns
347 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.
348 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)
349 */
350
351 /*QUAKED item_armor_large (.4 .8 .4) (-30 -30 0) (30 30 32) FLOATING
352 Large Armor (default 100 armor points)
353 -------- KEYS --------
354 respawntime: time till it respawns (default: 30)
355 armorvalue: amount of armor it gives (default: 100 (g_pickup_armorlarge))
356 max_armorvalue: max of armor it increases to (default: 999 (g_pickup_armorlarge_max))
357 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
358 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
359 -------- SPAWNFLAGS --------
360 FLOATING: the item will float in air, instead of aligning to the floor by falling
361 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
362 modeldisabled="models/items/g_a25.md3"
363 */
364
365 /*QUAKED item_armor_big (.4 .8 .4) (-30 -30 0) (30 30 32) FLOATING
366 Big Armor (default 50 armor points)
367 -------- KEYS --------
368 respawntime: time till it respawns (default: 20)
369 armorvalue: amount of armor it gives (default: 50 (g_pickup_armorlarge))
370 max_armorvalue: max of armor it increases to (default: 999 (g_pickup_armorlarge_max))
371 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
372 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
373 -------- SPAWNFLAGS --------
374 FLOATING: the item will float in air, instead of aligning to the floor by falling
375 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
376 modeldisabled="models/items/g_a50.md3"
377 */
378
379 /*QUAKED item_armor_medium (.4 .8 .4) (-30 -30 0) (30 30 32) FLOATING
380 Medium Armor (default 25 armor points)
381 -------- KEYS --------
382 respawntime: time till it respawns (default: 20)
383 armorvalue: amount of armor it gives (default: 25 (g_pickup_armormedium))
384 max_armorvalue: max of armor it increases to (default: 999 (g_pickup_armormedium_max))
385 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
386 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
387 -------- SPAWNFLAGS --------
388 FLOATING: the item will float in air, instead of aligning to the floor by falling
389 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
390 modeldisabled="models/items/g_armormedium.md3"
391 */
392
393 /*QUAKED item_armor_small (.4 .8 .4) (-30 -30 0) (30 30 32) FLOATING
394 Small Armor (default 5 armor points)
395 -------- KEYS --------
396 respawntime: time till it respawns (default: 15)
397 armorvalue: amount of armor it gives (default: 5 (g_pickup_armorsmall))
398 max_armorvalue: max of armor it increases to (default: 999 (g_pickup_armorsmall_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_a1.md3"
405 */
406
407 /*QUAKED item_bullets (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
408 Machine Gun ammo
409 -------- KEYS --------
410 ammo_nails: bullets gained by this item (if unset, g_pickup_nails is used)
411 respawntime: time till it respawns (default: 15)
412 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
413 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
414 -------- SPAWNFLAGS --------
415 FLOATING: the item will float in air, instead of aligning to the floor by falling
416 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
417 modeldisabled="models/items/a_bullets.md3"
418 */
419
420 /*QUAKED item_cells (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
421 Nex, Electro and Crylink ammo
422 -------- KEYS --------
423 ammo_cells: cells gained by this item (if unset, g_pickup_cells is used)
424 respawntime: time till it respawns (default: 15)
425 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
426 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
427 -------- SPAWNFLAGS --------
428 FLOATING: the item will float in air, instead of aligning to the floor by falling
429 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
430 modeldisabled="models/items/a_cells.md3"
431 */
432
433 /*QUAKED item_flag_team1 (1 0 0) (-32 -32 0) (32 32 74) 
434 CTF flag for team one (Red). Use more than one if you really insist.
435 -------- KEYS --------
436 model: model to use
437 scale: scaling factor (DO set this when using your own model!)
438 noise: sound played when flag is picked up
439 noise1: sound played when flag is returned
440 noise2: sound played when flag is captured
441 noise3: sound played when flag is lost in the field and respawns itself
442 -------- ZBQRY SBE ENQVNAG BAYL - QB ABG FRG GUVF NF N XRL --------
443 zbqry="zbqryf/pgs/enqvnag/synt_erq_enqvnag.zq3"
444 */
445
446 /*QUAKED item_flag_team2 (0 0 1) (-32 -32 0) (32 32 74) 
447 CTF flag for team two (Blue). Use more than one if you really insist.
448 -------- KEYS --------
449 model: model to use
450 scale: scaling factor (DO set this when using your own model!)
451 noise: sound played when flag is picked up
452 noise1: sound played when flag is returned
453 noise2: sound played when flag is captured
454 noise3: sound played when flag is lost in the field and respawns itself
455 -------- ZBQRY SBE ENQVNAG BAYL - QB ABG FRG GUVF NF N XRL --------
456 zbqry="zbqryf/pgs/enqvnag/synt_oyhr_enqvnag.zq3"
457 */
458
459 /*QUAKED item_health_large (.9 .3 .3) (-30 -30 0) (30 30 48) FLOATING
460 Large Health (default 50 health points)
461 -------- KEYS --------
462 respawntime: time till it respawns (default: 20)
463 health: amount of health it gives (default: 50 (g_pickup_healthlarge))
464 max_health: max of health it increases to (default: 999 (g_pickup_healthlarge_max))
465 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
466 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
467 -------- SPAWNFLAGS --------
468 FLOATING: the item will float in air, instead of aligning to the floor by falling
469 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
470 modeldisabled="models/items/g_h50.md3"
471 */
472
473 /*QUAKED item_health_medium (.9 .3 .3) (-30 -30 0) (30 30 48) FLOATING
474 Medium Health (default 25 health points)
475 -------- KEYS --------
476 respawntime: time till it respawns (default: 15)
477 health: amount of health it gives (default: 25 (g_pickup_healthmedium))
478 max_health: max of health it increases to (default: 999 (g_pickup_healthmedium_max))
479 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
480 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
481 -------- SPAWNFLAGS --------
482 FLOATING: the item will float in air, instead of aligning to the floor by falling
483 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
484 modeldisabled="models/items/g_h25.md3"
485 */
486
487 /*QUAKED item_health_mega (.9 .3 .3) (-30 -30 0) (30 30 48) FLOATING
488 Mega Health (default 100 health points)
489 In Minstagib, this randomly turns into either an invisibility, an extra lives or a speed power-up with a default respawn time of 120.
490 -------- KEYS --------
491 respawntime: time till it respawns (default: 30)
492 health: amount of health it gives (default: 100 (g_pickup_healthmega))
493 max_health: max of health it increases to (default: 999 (g_pickup_healthmega_max))
494 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
495 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
496 -------- SPAWNFLAGS --------
497 FLOATING: the item will float in air, instead of aligning to the floor by falling
498 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
499 modeldisabled="models/items/g_h100.md3"
500 */
501
502 /*QUAKED item_health_small (.9 .3 .3) (-30 -30 0) (30 30 48) FLOATING
503 Small Health (default 5 health points)
504 -------- KEYS --------
505 respawntime: time till it respawns (default: 15)
506 health: amount of health it gives (default: 5 (g_pickup_healthsmall))
507 max_health: max of health it increases to (default: 5 (g_pickup_healthsmall_max))
508 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
509 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
510 -------- SPAWNFLAGS --------
511 FLOATING: the item will float in air, instead of aligning to the floor by falling
512 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
513 modeldisabled="models/items/g_h1.md3"
514 */
515
516 /*QUAKED item_invincible (.3 .3 1) (-30 -30 0) (30 30 48) FLOATING
517 Strong Shield
518 In Minstagib, this randomly turns into either an invisibility, an extra lives or a speed power-up with a default respawn time of 120.
519 -------- KEYS --------
520 respawntime: time till it respawns (default: 120)
521 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
522 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
523 -------- SPAWNFLAGS --------
524 FLOATING: the item will float in air, instead of aligning to the floor by falling
525 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
526 modeldisabled="models/items/g_invincible.md3"
527 */
528
529 /*QUAKED item_minst_cells (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
530 Minstagib ammo.
531 Always contains 5 (g_minstagib_ammo_drop) shots.
532 It only appears when playing Minstagib and prevents auto-replacement of weapon_nex & weapon_rocketlauncher when used.
533 -------- KEYS --------
534 respawntime: time till it respawns (default: 45)
535 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
536 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
537 -------- SPAWNFLAGS --------
538 FLOATING: the item will float in air, instead of aligning to the floor by falling
539 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
540 modeldisabled="models/items/a_cells.md3"
541 */
542
543 /*QUAKED item_rockets (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
544 Rocket Launcher, Hagar and Mortar ammo
545 -------- KEYS --------
546 ammo_rockets: rockets gained by this item (if unset, g_pickup_rockets is used)
547 respawntime: time till it respawns (default: 15)
548 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
549 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
550 -------- SPAWNFLAGS --------
551 FLOATING: the item will float in air, instead of aligning to the floor by falling
552 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
553 modeldisabled="models/items/a_rockets.md3"
554 */
555
556 /*QUAKED item_shells (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
557 Shotgun ammo
558 -------- KEYS --------
559 ammo_shells: shells gained by this item (if unset, g_pickup_shells is used)
560 respawntime: time till it respawns (default: 15)
561 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
562 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
563 -------- SPAWNFLAGS --------
564 FLOATING: the item will float in air, instead of aligning to the floor by falling
565 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
566 modeldisabled="models/items/a_shells.md3"
567 */
568
569 /*QUAKED item_strength (.3 .3 1) (-30 -30 0) (30 30 48) FLOATING
570 Strength aka Quad damage
571 In Minstagib, this randomly turns into either an invisibility, an extra lives or a speed power-up with a default respawn time of 120.
572 -------- KEYS --------
573 respawntime: time till it respawns (default: 120)
574 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
575 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
576 -------- SPAWNFLAGS --------
577 FLOATING: the item will float in air, instead of aligning to the floor by falling
578 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
579 modeldisabled="models/items/g_strength.md3"
580 */
581
582 /*QUAKED light (.65 .65 1) (-8 -8 -8) (8 8 8) LINEAR NOANGLE - - NOGRIDLIGHT
583 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.
584 Maximum intensity (in a radius 16 sphere around the light): regular lights have light/256, linear lights have light/8000-16*fade.
585 Falloff radius to a negligible light amount: regular lights have light have 16*sqrt(light), linear lights have light/(fade*8000).
586 By this you see that you HAVE to specify fade for a linear light... use values below 0.01 there.
587 -------- KEYS --------
588 light: intensity factor (default: 300). A linear
589 _color: weighted RGB value of light color (default white - 1.0 1.0 1.0).
590 target: Lights pointed at a target will be spotlights.
591 radius: radius of a spotlight at the target point (default: 64)
592 _anglescale: scales angle attenuation
593 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.
594 _filterradius: filter radius for this light, similar to -light -filter
595 _sun: if 1, this light is an infinite sun light
596 _samples: number of samples to use to get soft shadows from a light
597 _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
598 -------- SPAWNFLAGS --------
599 LINEAR: Use a linear falloff. Default is inverse distance squared (more realistic).
600 NOANGLE: Ignore angle attenuation.
601 NOGRIDLIGHT: Do not affect the light grid (dynamic entity lighting).
602 */
603
604 /*QUAKED lightJunior (.65 .65 1) (-8 -8 -8) (8 8 8) LINEAR NOANGLE
605 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.
606 Maximum intensity (in a radius 16 sphere around the light): regular lights have light/256, linear lights have light/8000-16*fade.
607 Falloff radius to a negligible light amount: regular lights have light have 16*sqrt(light), linear lights have light/(fade*8000).
608 By this you see that you HAVE to specify fade for a linear light... use values below 0.01 there.
609 -------- KEYS --------
610 light: intensity factor (default: 300). A linear
611 _color: weighted RGB value of light color (default white - 1.0 1.0 1.0).
612 target: Lights pointed at a target will be spotlights.
613 radius: radius of a spotlight at the target point (default: 64)
614 _anglescale: scales angle attenuation
615 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.
616 _filterradius: filter radius for this light, similar to -light -filter
617 _sun: if 1, this light is an infinite sun light
618 _samples: number of samples to use to get soft shadows from a light
619 _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
620 -------- SPAWNFLAGS --------
621 LINEAR: Use a linear falloff. Default is inverse distance squared (more realistic).
622 NOANGLE: Ignore angle attenuation.
623 */
624
625 /*QUAKED misc_laser (.5 .5 .5) (-8 -8 -8) (8 8 8) START_ON FINITE NOTRACE INVERT_TEAM
626 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.
627 -------- KEYS --------
628 target: target_position the laser targets (may be another entity, preferably target_position, possibly controlled by misc_follow)
629 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)
630 colormod: color of the laser beam (default: red, that is, 1 0 0)
631 dmg: damage inflicted by the beam per second, or -1 for an instant-death ray
632 targetname: name to target this (then its state is toggled)
633 alpha: when set, makes a dark laser of the given strength; may be combined with colormod
634 scale: scales the beam thickness (default 1)
635 modelscale: scales the dynamic light radius at the endpoint (default 1, -1 to turn off)
636 team: team that gets hurt (5 = red, 14 = blue, etc) (when set, only this team can get hurt)
637 -------- SPAWNFLAGS --------
638 START_ON: when targeted, the laser will start switched on
639 FINITE: the laser does not extend over its target like light would do, but stops there (takes more bandwidth)
640 NOTRACE: the laser passes through solid (faster rendering on clientside); non-FINITE lasers then never display their impact effect "mdl"!
641 INVERT_TEAM: the team that owns this will NOT get hurt
642 -------- NOTES --------
643 Use trigger_monoflop if you want the laser to turn off for a while, then turn back on.
644 When the laser's target has itself target set, its targets are triggered when someone enters or leaves the laser.
645 */
646
647 /*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
648 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.
649 -------- Q3MAP2 KEYS --------
650 model: file name of model to include
651 _frame: frame of model to include
652 _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.
653 angle: view direction of the model
654 angles: view direction of the model in PITCH YAW ROLL
655 modelscale: scaling factor
656 modelscale_vec: scaling vector for non-uniform scaling
657 _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.
658 _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.
659 _lightmapscale: light map resolution factor
660 _celshader: the cel shader for this
661 -------- SPAWNFLAGS --------
662 SOLID: make the model solid
663 FORCE_META: force the model to go through the -meta pipeline and enable lightmapping
664 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)
665 EXTRUDE_TERRAIN: always extrude downwards (for terrain)
666 COLOR_TO_ALPHA: use the color value as alpha (for terrain blending)
667 DONT_FIX_NORMALS: do not regenerate normals
668 */
669
670 /*QUAKED misc_gamemodel (0 .5 .8) (-8 -8 -8) (8 8 8) ALIGN_ORIGIN ALIGN_BOTTOM
671 A way to load models from a map by the engine (e.g. self-animated zym models).
672 Is non-solid by default.
673 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!
674 -------- KEYS --------
675 model: when used as a point entity, file name of model to load; when used as a brush entity, do not specify that
676 frame: animation frame to play (for self-animated zym models)
677 skin: number of skin to load (when model is used)
678 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
679 solid: solidity: one of 0 = NOT, 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE
680 avelocity: vector giving its angular velocity (useful for spinning models)
681 scale: scale factor of the model (range: 0.0625 to 15.9375)
682 colormap: 1024 + 16 * pantscolor + shirtcolor
683 velocity: when movetype isn't 0, initial velocity vector
684 angles: initial looking direction
685 modelscale: scaling factor
686 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
687 loddistance1: distance after which to show the first LOD model replacement (default: 1000)
688 loddistance2: distance after which to show the second LOD model replacement (default: 2000)
689 lodmodel1: file name of the first LOD model replacement
690 lodmodel2: file name of the second LOD model replacement
691 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.
692 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.
693 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.
694 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.
695 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.
696 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.
697 -------- SPAWNFLAGS --------
698 ALIGN_ORIGN: align the origin to the surface below the model
699 ALIGN_BOTTOM: align the bottom of the model to the surface below it
700 */
701
702 /*QUAKED func_illusionary (0 .5 .8) ? 
703 NOTE: THIS ENTITY IS BROKEN REGARDING CLIENT AND PROJECTILE PREDICTION. DO NOT USE IT. USE NONSOLID SHADERS OR FUNC_CLIENTILLUSIONARY INSTEAD.
704 A non-solid brush entity. Use func_wall if you want it solid.
705 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!
706 -------- KEYS --------
707 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
708 avelocity: vector giving its angular velocity (useful for spinning models)
709 scale: scale factor of the model (range: 0.0625 to 15.9375)
710 colormap: 1024 + 16 * pantscolor + shirtcolor
711 velocity: when movetype isn't 0, initial velocity vector
712 angles: initial looking direction
713 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
714 loddistance1: distance after which to show the first LOD model replacement (default: 1000)
715 loddistance2: distance after which to show the second LOD model replacement (default: 2000)
716 lodtarget1: targetname of the first LOD model entity (can be used instead of lodmodel1 to use a brush model instead)
717 lodtarget2: targetname of the second LOD model entity (can be used instead of lodmodel2 to use a brush model instead)
718 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.
719 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.
720 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.
721 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.
722 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.
723 -------- Q3MAP2 KEYS --------
724 _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.
725 _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.
726 _clone: copies brushes from entity with identical _clonename. Still needs a single brush that will get replaced.
727 _clonename: template name so one can clone from it
728 min: override automatically found minimum coordinate bounds
729 max: override automatically found maximum coordinate bounds
730 targetname: if targeted by a misc_model, its brushes get inserted into this
731 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
732 */
733
734 /*QUAKED func_wall (0 .5 .8) ? 
735 A solid brush entity. Use func_clientillusionary if you want it non-solid.
736 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!
737 -------- KEYS --------
738 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
739 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)
740 avelocity: vector giving its angular velocity (useful for spinning models)
741 scale: scale factor of the model (range: 0.0625 to 15.9375)
742 colormap: 1024 + 16 * pantscolor + shirtcolor
743 velocity: when movetype isn't 0, initial velocity vector
744 angles: initial looking direction
745 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
746 loddistance1: distance after which to show the first LOD model replacement (default: 1000)
747 loddistance2: distance after which to show the second LOD model replacement (default: 2000)
748 lodtarget1: targetname of the first LOD model entity (can be used instead of lodmodel1 to use a brush model instead)
749 lodtarget2: targetname of the second LOD model entity (can be used instead of lodmodel2 to use a brush model instead)
750 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.
751 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.
752 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.
753 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.
754 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.
755 -------- Q3MAP2 KEYS --------
756 _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.
757 _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.
758 _clone: copies brushes from entity with identical _clonename. Still needs a single brush that will get replaced.
759 _clonename: template name so one can clone from it
760 min: override automatically found minimum coordinate bounds
761 max: override automatically found maximum coordinate bounds
762 targetname: if targeted by a misc_model, its brushes get inserted into this
763 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
764 */
765
766 /*QUAKED misc_clientmodel (0 .5 .8) (-8 -8 -8) (8 8 8) ALIGN_ORIGIN ALIGN_BOTTOM
767 A way to load models from a map by the engine (e.g. self-animated zym models) on client side.
768 Is non-solid by default.
769 -------- KEYS --------
770 scale: scale factor of the model (range: 0.0625 to 15.9375)
771 colormap: 1024 + 16 * pantscolor + shirtcolor
772 angles: initial looking direction
773 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.
774 bgmscript: emitter class from the BGM script (if prefixed with <, movedir is treated as an angle value)
775 bgmscriptattack: attack time of the effect strength (0 to 3.9)
776 bgmscriptdecay: decay time of the effect strength (0 to 3.9)
777 bgmscriptsustain: sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain)
778 bgmscriptrelease: release time of the effect strength (0 to 3.9)
779 movedir: vector by which the entity moves when "pressed" by the bgmscript
780 lip: alpha change when "pressed" by the bgmscript (if > 0, it fades in when pressed, if < 0, it fades out when pressed)
781 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.
782 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.
783 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.
784 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.
785 -------- SPAWNFLAGS --------
786 ALIGN_ORIGN: align the origin to the surface below the model
787 ALIGN_BOTTOM: align the bottom of the model to the surface below it
788 */
789
790 /*QUAKED func_clientillusionary (0 .5 .8) ? 
791 A client-side non-solid brush entity. Use func_wall if you want it solid.
792 -------- KEYS --------
793 scale: scale factor of the model (range: 0.0625 to 15.9375)
794 colormap: 1024 + 16 * pantscolor + shirtcolor
795 angles: initial looking direction
796 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.
797 bgmscript: emitter class from the BGM script
798 bgmscriptattack: attack time of the effect strength (0 to 3.9)
799 bgmscriptdecay: decay time of the effect strength (0 to 3.9)
800 bgmscriptsustain: sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain)
801 bgmscriptrelease: release time of the effect strength (0 to 3.9)
802 movedir: vector by which the entity moves when "pressed" by the bgmscript
803 lip: alpha change when "pressed" by the bgmscript (if > 0, it fades in when pressed, if < 0, it fades out when pressed)
804 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.
805 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.
806 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.
807 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.
808 -------- Q3MAP2 KEYS --------
809 _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.
810 _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.
811 _clone: copies brushes from entity with identical _clonename. Still needs a single brush that will get replaced.
812 _clonename: template name so one can clone from it
813 min: override automatically found minimum coordinate bounds
814 max: override automatically found maximum coordinate bounds
815 targetname: if targeted by a misc_model, its brushes get inserted into this
816 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
817 */
818
819 /*QUAKED func_clientwall (0 .5 .8) ? 
820 NOTE: THIS ENTITY IS IN MOST USE CASES BROKEN REGARDING CLIENT AND PROJECTILE PREDICTION. DO NOT USE IT. USE FUNC_WALL INSTEAD.
821 A client-side solid brush entity. Use func_clientillusionary if you want it non-solid.
822 -------- KEYS --------
823 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)
824 scale: scale factor of the model (range: 0.0625 to 15.9375)
825 colormap: 1024 + 16 * pantscolor + shirtcolor
826 angles: initial looking direction
827 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.
828 bgmscript: emitter class from the BGM script
829 bgmscriptattack: attack time of the effect strength (0 to 3.9)
830 bgmscriptdecay: decay time of the effect strength (0 to 3.9)
831 bgmscriptsustain: sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain)
832 bgmscriptrelease: release time of the effect strength (0 to 3.9)
833 movedir: vector by which the entity moves when "pressed" by the bgmscript
834 lip: alpha change when "pressed" by the bgmscript (if > 0, it fades in when pressed, if < 0, it fades out when pressed)
835 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.
836 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.
837 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.
838 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.
839 -------- Q3MAP2 KEYS --------
840 _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.
841 _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.
842 _clone: copies brushes from entity with identical _clonename. Still needs a single brush that will get replaced.
843 _clonename: template name so one can clone from it
844 min: override automatically found minimum coordinate bounds
845 max: override automatically found maximum coordinate bounds
846 targetname: if targeted by a misc_model, its brushes get inserted into this
847 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
848 */
849
850 /*QUAKED misc_teleporter_dest (1 .5 .25) (-16 -16 -24) (16 16 45) 
851 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.
852 -------- KEYS --------
853 targetname: make the trigger_teleporter point to this.
854 target: target to activate when a teleporter targeting this is used
855 target2: target to activate when a teleporter targeting this is used
856 target3: target to activate when a teleporter targeting this is used
857 target4: target to activate when a teleporter targeting this is used
858 angle: direction in which player will look when teleported, OR use
859 angles: pitch and yaw when coming out of the teleporter (also specifies the direction the player will aim when coming out)
860 cnt: weight for random selection, in case a teleporter points at multiple misc_teleporter_dest
861 speed: maximum speed cap for the teleported player (if -1, teleported players will have no speed)
862 */
863
864 /*QUAKED onslaught_controlpoint (0 .5 .8) (-32 -32 0) (32 32 128) 
865 Control point.  Be sure to give this enough clearance so that the shootable part has room to exist
866 This should link to an onslaught_controlpoint entity or onslaught_generator entity.
867 -------- KEYS --------
868 targetname: name that onslaught_link entities will use to target this.
869 target: target any entities that are tied to this control point, such as vehicles and buildable structure entities.
870 message: name of this control point (should reflect the location in the map, such as "center bridge", "north tower", etc)
871 */
872
873 /*QUAKED onslaught_generator (0 .5 .8) (-32 -32 -24) (32 32 64) 
874 Base generator.
875
876 onslaught_link entities can target this.
877 -------- KEYS --------
878 team: team that owns this generator (5 = red, 14 = blue, etc), MUST BE SET.
879 targetname: name that onslaught_link entities will use to target this.
880 */
881
882 /*QUAKED onslaught_link (0 .5 .8) (-16 -16 -16) (16 16 16) 
883 Link between control points.
884
885 This entity targets two different onslaught_controlpoint or onslaught_generator entities, and suppresses shielding on both if they are owned by different teams.
886 -------- KEYS --------
887 target: first control point.
888 target2: second control point.
889 */
890
891 /*QUAKED path_corner (.5 .3 0) (-8 -8 -8) (8 8 8) 
892 Path corner entity that func_train will follow.
893 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)
894 -------- KEYS --------
895 target: point to next path_corner in the path.
896 targetname: the train following the path or the previous path_corner in the path points to this.
897 speed: speed of func_train while moving to this path corner. If unset, the value from the func_train will be used.
898 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
899 */
900
901 /*QUAKED runematch_spawn_point (.3 .3 1) (-16 -16 -16) (16 16 16) 
902 Spawn point for runes in a runematch.
903 Runematch can work without runes also, it then spawn runes at random safe locations.
904 */
905
906 /*QUAKED target_assault_roundend (1 0 0) (-8 -8 -8) (8 8 8) 
907 This entity ends the current assault round if triggered or if the timelimit is reached.
908 Ending a round means swapping attacker/defender teams, resetting objectives and rewarding the winning team.
909 Every assault map needs this entity. There should only be one per map.
910 -------- KEYS --------
911 targetname: Name to target this entity
912 */
913
914 /*QUAKED target_assault_roundstart (.5 0 .5) (-8 -8 -8) (8 8 8) 
915 This entity triggers its targets whenever a new assault round is started. This can be used to e.g. activate the first objective.
916 -------- KEYS --------
917 target: targetname of entities to be enabled/triggered on round start (e.g. the first target_objective)
918 target2: targetname of entities to be enabled/triggered on round start (e.g. the func_assault_destructibles targeting the target_objective)
919 target3: targetname of entities to be enabled/triggered on round start
920 target4: targetname of entities to be enabled/triggered on round start
921 */
922
923 /*QUAKED target_objective (.5 0 .5) (-8 -8 -8) (8 8 8) 
924 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.
925 -------- KEYS --------
926 target: targetname of entities to be enabled/triggered on objective fulfilling (e.g. the next target_objective, or target_assault_roundend)
927 target2: targetname of entities to be enabled/triggered on objective fulfilling (e.g. the func_assault_destructibles targeting the target_objective)
928 target3: targetname of entities to be enabled/triggered on objective fulfilling
929 target4: targetname of entities to be enabled/triggered on objective fulfilling
930 targetname: targetname for this entity so it can be triggered by other entities.
931 */
932
933 /*QUAKED target_objective_decrease (0 1 0) (-8 -8 -8) (8 8 8) 
934 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.
935 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.
936 -------- KEYS --------
937 target: The targetname of the target_objective you want to manipulate.
938 targetname: Name for other entities to target this entity.
939 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.
940 */
941
942 /*QUAKED target_position (0 .5 0) (-8 -8 -8) (8 8 8) 
943 Aiming target for entities like light and trigger_push.
944 -------- KEYS --------
945 targetname: the entity that requires an aiming direction points to this.
946 target: target to activate when a jumppad targeting this is used
947 */
948
949 /*QUAKED target_speaker (0 .7 .7) (-8 -8 -8) (8 8 8) 
950 Sound generating entity that plays sound files.
951 If targeted, it plays the sound file every time when triggered.
952 If not targeted, it loops the sound file as an ambient noise.
953 -------- KEYS --------
954 noise: path/name of .wav/.ogg file to play
955 targetname: the activating button or trigger points to this.
956 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)
957 volume: volume of the sound
958 */
959
960 /*QUAKED trigger_counter (.5 .5 .5) ? NOMESSAGE
961 Acts as an intermediary for an action that takes multiple inputs.
962 After the counter has been triggered "count" times, it will fire all of its targets and remove itself.
963 -------- KEYS --------
964 count: how many times this needs to be triggered to activate its targets
965 target: trigger all entities with this targetname when triggered
966 targetname: name that identifies this entity so it can be triggered
967 delay: delay the triggering by the given time
968 message: print this message to the player who activated the trigger
969 killtarget: remove all entities with this targetname when triggered
970 -------- SPAWNFLAGS --------
971 NOMESSAGE: don't print a "2 more to go..."-like message when triggered
972 */
973
974 /*QUAKED trigger_delay (.5 .5 .5) (-8 -8 -8) (8 8 8) 
975 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).
976 -------- KEYS --------
977 wait: delay the triggering by the given time
978 target: trigger all entities with this targetname when triggered
979 targetname: name that identifies this entity so it can be triggered
980 message: print this message to the player who activated the trigger
981 killtarget: remove all entities with this targetname when triggered
982 */
983
984 /*QUAKED trigger_hurt (.5 .5 .5) ? - - INVERT_TEAM
985 Any object touching this will be hurt.
986 Has the useful effect of automatically returning flags, keys and runes when they touch it.
987 -------- KEYS --------
988 dmg: amount of damage to deal (default: 1000)
989 message: kill message when someone gets killed by this (default: "was in the wrong place")
990 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)
991 team: team that gets hurt (5 = red, 14 = blue, etc) (when set, only this team can get hurt)
992 -------- SPAWNFLAGS --------
993 INVERT_TEAM: the team that owns this will NOT jump when touching this
994 */
995
996 /*QUAKED trigger_impulse (.5 .5 .5) ? 
997 An accelerator/dampener/wind field.
998 Can be used in two ways:
999 "dampener field": just set strength to a value from 0 to 1. Entering the field will slow down to this factor.
1000 "accelerator field": just set strength to a value from 1 to infinity. Entering the field will accelerate by this factor.
1001 "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.
1002 "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.
1003 -------- KEYS --------
1004 target: "wind field": points to the target_position to which the player will get pushed.
1005 strength: "wind field", "gravity field": amount of force per second to apply. "dampener/accelerator field": slowdown/speedup factor.
1006 falloff: "gravity field": 0 means no falloff, 1 means linear falloff (zero at the outside), 2 means inverted linear falloff (zero at the inside)
1007 */
1008
1009 /*QUAKED trigger_multiple (.5 .5 .5) ? NOTOUCH ALLENTS - - - - - - NOSPLASH
1010 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.
1011 -------- KEYS --------
1012 health: amount of damage that has to be dealt to the trigger to activate (it then won't respond to merely touching it)
1013 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)
1014 sounds: 1 to play misc/secret.wav, 2 to play misc/talk.wav, 3 to play misc/trigger1.wav
1015 noise: path to sound file, if you want to play something else
1016 target: trigger all entities with this targetname when triggered
1017 target2: trigger all entities with this targetname when triggered
1018 target3: trigger all entities with this targetname when triggered
1019 target4: trigger all entities with this targetname when triggered
1020 targetname: name that identifies this entity so it can be triggered
1021 delay: delay the triggering by the given time
1022 message: print this message to the player who activated the trigger
1023 killtarget: remove all entities with this targetname when triggered
1024 -------- SPAWNFLAGS --------
1025 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)
1026 ALLENTS: the trigger responds to all entities, not just players (useful for targetting trigger_items)
1027 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
1028 */
1029
1030 /*QUAKED trigger_once (.5 .5 .5) ? NOTOUCH - - - - - - - NOSPLASH
1031 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.
1032 Basically, it's a use-once trigger_multiple.
1033 -------- KEYS --------
1034 health: amount of damage that has to be dealt to the trigger to activate (it then won't respond to merely touching it)
1035 sounds: 1 to play misc/secret.wav, 2 to play misc/talk.wav, 3 to play misc/trigger1.wav
1036 noise: path to sound file, if you want to play something else
1037 target: trigger all entities with this targetname when triggered
1038 targetname: name that identifies this entity so it can be triggered
1039 delay: delay the triggering by the given time
1040 message: print this message to the player who activated the trigger
1041 killtarget: remove all entities with this targetname when triggered
1042 -------- SPAWNFLAGS --------
1043 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)
1044 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
1045 */
1046
1047 /*QUAKED trigger_push (1 .5 0) ? - - INVERT_TEAM
1048 Jump pad. What else?
1049 Can be used in three ways:
1050 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.
1051 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.
1052 Quake "movedir/speed" way: player will get velocity movedir * speed * 10 when using the jump pad
1053 -------- KEYS --------
1054 target: point the player will fly to when using the jump pad (use a target_position here)
1055 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
1056 movedir: when target is not set, direction vector to push to
1057 speed: speed of jump pad (default: 1000)
1058 noise: sound to play when jump pad is used; default is misc/jumppad.wav; you can set it to "" to make the pad silent
1059 team: team that owns this jump pad (5 = red, 14 = blue, etc) (when set, only this team can teleport)
1060 targetname: when targeted by a func_button, pressing the button will reassign the teleporter to the team of the activator.
1061 -------- SPAWNFLAGS --------
1062 INVERT_TEAM: the team that owns the teleporter will NOT jump when touching this
1063 */
1064
1065 /*QUAKED trigger_relay (.5 .5 .5) (-8 -8 -8) (8 8 8) 
1066 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.
1067 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.
1068 More than one "trigger event" can be delayed at once, as opposed to trigger_delay.
1069 -------- KEYS --------
1070 target: trigger all entities with this targetname when triggered
1071 target2: trigger all entities with this targetname when triggered
1072 target3: trigger all entities with this targetname when triggered
1073 target4: trigger all entities with this targetname when triggered
1074 targetname: name that identifies this entity so it can be triggered
1075 delay: delay the triggering by the given time
1076 message: print this message to the player who activated the trigger
1077 killtarget: remove all entities with this targetname when triggered
1078 */
1079
1080 /*QUAKED trigger_swamp (.5 .5 .5) ? 
1081 Players getting into the swamp will get slowed down and damaged
1082 -------- KEYS --------
1083 dmg: damage per interval to deal (default is 5)
1084 swamp_interval: interval of damage when in swamp (default is 1)
1085 swamp_slowdown: amount of slowdown caused by the swamp (default is 0.5)
1086 */
1087
1088 /*QUAKED trigger_teleport (.5 .5 .5) ? - - INVERT_TEAM
1089 Touching this will teleport players to the location of the targeted misc_teleporter_dest entity.
1090 Note that in Xonotic, teleporters preserve momentum of the player using them.
1091 -------- KEYS --------
1092 target: this must point to a misc_teleporter_dest entity. If it points to more than one, a destination is randomly selected on teleport.
1093 target2: target to activate when the teleporter is used
1094 target3: target to activate when the teleporter is used
1095 target4: target to activate when the teleporter is used
1096 team: team that owns this teleporter (5 = red, 14 = blue, etc) (when set, only this team can teleport)
1097 targetname: when targeted by a func_button, pressing the button will reassign the teleporter to the team of the activator.
1098 -------- SPAWNFLAGS --------
1099 INVERT_TEAM: the team that owns the teleporter will NOT teleport when touching this
1100 */
1101
1102 /*QUAKED weapon_crylink (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1103 the Crylink
1104 -------- KEYS --------
1105 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1106 respawntime: time till it respawns (default: 15)
1107 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1108 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1109 -------- SPAWNFLAGS --------
1110 FLOATING: the item will float in air, instead of aligning to the floor by falling
1111 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1112 modeldisabled="models/weapons/g_crylink.md3"
1113 */
1114
1115 /*QUAKED weapon_electro (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1116 the Electro
1117 -------- KEYS --------
1118 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1119 respawntime: time till it respawns (default: 15)
1120 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1121 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1122 -------- SPAWNFLAGS --------
1123 FLOATING: the item will float in air, instead of aligning to the floor by falling
1124 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1125 modeldisabled="models/weapons/g_electro.md3"
1126 */
1127
1128 /*QUAKED weapon_grenadelauncher (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1129 the Mortar
1130 -------- KEYS --------
1131 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1132 respawntime: time till it respawns (default: 15)
1133 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1134 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1135 -------- SPAWNFLAGS --------
1136 FLOATING: the item will float in air, instead of aligning to the floor by falling
1137 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1138 modeldisabled="models/weapons/g_gl.md3"
1139 */
1140
1141 /*QUAKED weapon_hagar (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1142 the Hagar
1143 -------- KEYS --------
1144 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1145 respawntime: time till it respawns (default: 15)
1146 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1147 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1148 -------- SPAWNFLAGS --------
1149 FLOATING: the item will float in air, instead of aligning to the floor by falling
1150 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1151 modeldisabled="models/weapons/g_hagar.md3"
1152 */
1153
1154 /*QUAKED weapon_laser (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1155 the Laser. Note that unless you use
1156   settemp_for_type all g_start_weapon_laser 0
1157 in your mapinfo file, everyone will already spawn with one, making this pickup useless.
1158 -------- KEYS --------
1159 respawntime: time till it respawns (default: 15)
1160 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1161 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1162 -------- SPAWNFLAGS --------
1163 FLOATING: the item will float in air, instead of aligning to the floor by falling
1164 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1165 modeldisabled="models/weapons/g_laser.md3"
1166 */
1167
1168 /*QUAKED weapon_nex (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1169 the Nex
1170 In Minstagib, this turns into an item_minst_cells if no explicit item_minst_cells have been placed.
1171 -------- KEYS --------
1172 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1173 respawntime: time till it respawns (default: 15 * g_balance_nex_respawntime_modifier)
1174 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1175 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1176 -------- SPAWNFLAGS --------
1177 FLOATING: the item will float in air, instead of aligning to the floor by falling
1178 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1179 modeldisabled="models/weapons/g_nex.md3"
1180 */
1181
1182 /*QUAKED weapon_rocketlauncher (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1183 the Rocket Launcher
1184 In Minstagib, this turns into an item_minst_cells if no explicit item_minst_cells have been placed.
1185 -------- KEYS --------
1186 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1187 respawntime: time till it respawns (default: 15)
1188 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1189 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1190 -------- SPAWNFLAGS --------
1191 FLOATING: the item will float in air, instead of aligning to the floor by falling
1192 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1193 modeldisabled="models/weapons/g_rl.md3"
1194 */
1195
1196 /*QUAKED weapon_shotgun (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1197 the Shotgun. Note that unless you use
1198   settemp_for_type all g_start_weapon_shotgun 0
1199 in your mapinfo file, everyone will already spawn with one, making this pickup useless.
1200 -------- KEYS --------
1201 ammo_shells: initial shells of the weapon (if unset, g_pickup_shells is used)
1202 respawntime: time till it respawns (default: 15)
1203 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1204 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1205 -------- SPAWNFLAGS --------
1206 FLOATING: the item will float in air, instead of aligning to the floor by falling
1207 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1208 modeldisabled="models/weapons/g_shotgun.md3"
1209 */
1210
1211 /*QUAKED weapon_uzi (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1212 the Machine Gun
1213 -------- KEYS --------
1214 ammo_nails: initial bullets of the weapon (if unset, g_pickup_nails is used)
1215 respawntime: time till it respawns (default: 15)
1216 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1217 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1218 -------- SPAWNFLAGS --------
1219 FLOATING: the item will float in air, instead of aligning to the floor by falling
1220 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1221 modeldisabled="models/weapons/g_uzi.md3"
1222 */
1223
1224 /*QUAKED worldspawn (0 0 0) ? 
1225 The world.
1226 If you see this, the currently selected brush is not of an entity.
1227 -------- KEYS --------
1228 fog: fog parameters of the map (density red green blue alpha mindist maxdist); works just like the "fog" console command
1229 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.
1230 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.
1231 _description: one-line description of the map. Will get copied to the "description" entry of the mapinfo file when none is present.
1232 -------- Q3MAP2 KEYS --------
1233 _blocksize: vector specifying the automatic vis subdivision block size (default: 1024 1024 1024)
1234 gridsize: lightgrid granularity vector (default: 64 64 128)
1235 _color: color of the global light parameters
1236 _ambient: light added to all surfaces
1237 _mingridlight: minimum grid light
1238 _minlight: minimum light value on both surfaces and lightgrid
1239 _keepLights: do not remove light entities from the map (useful e.g. for realtime lighting)
1240 _floodlight: flood light parameters (red green blue distance intensity), start with 240 240 255 1024 128
1241 _farplanedist: range after which everything is completely invisible by fog (when fog is being used)
1242 _noshadersun: turn off sun defined by shaders (useful if you defined your own light entity to be a sun)
1243 _ignoreleaks: ignore leaks when compiling
1244 _lightmapscale: light map resolution factor
1245 _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.
1246 _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.
1247 _celshader: Sets the cel shader used for this geometry. Note: omit the "textures/" prefix.
1248 */
1249
1250 /*QUAKED trigger_race_checkpoint (0 1 0) ? NOTOUCH STRICTTRIGGER CRUSH FINISH
1251 A checkpoint, for the race game mode. Be sure to make them quite long, so they actually catch a player reliably!
1252 -------- KEYS --------
1253 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!
1254 message: Death message, when touching checkpoints in the wrong order.
1255 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)
1256 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.
1257 target: when the checkpoint is passed, these entities are triggered. Useful for forcing items in certain areas using trigger_items
1258 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
1259 race_penalty_reason: reason to display when the penalty time is imposed. Default: "missing a checkpoint"
1260 -------- SPAWNFLAGS --------
1261 NOTOUCH: the checkpoint will not become active when touched, it HAS to be targeted
1262 STRICTTRIGGER: only trigger the targets when the checkpoint actually was reached in a valid way (that is, not when going back)
1263 CRUSH: the checkpoint kills when used at the wrong time
1264 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
1265 */
1266
1267 /*QUAKED trigger_race_penalty (0 1 0) ? NOTOUCH
1268 A penalty trigger.
1269 -------- KEYS --------
1270 race_penalty: this penalty time is given if passing this trigger
1271 race_penalty_reason: reason to display when the penalty time is imposed. Default: "leaving the track"
1272 -------- SPAWNFLAGS --------
1273 NOTOUCH: the trigger will not become active when touched, it HAS to be targeted
1274 */
1275
1276 /*QUAKED info_player_race (1 0.5 0) (-16 -16 -24) (16 16 45) 
1277 Race spawn point.
1278 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.
1279 -------- KEYS --------
1280 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.
1281 target2: trigger all entities with this targetname when someone spawns
1282 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.
1283 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
1284 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)
1285 */
1286
1287 /*QUAKED func_pointparticles (.5 .5 .5) ? START_ON IMPULSE VISCULLING
1288 A brush that emits particles.
1289 -------- KEYS --------
1290 mdl: particle effect name from effectinfo.txt
1291 impulse: when positive, number of particles to emit per second; when negative; number of particles to emit per second and 64^3 block
1292 velocity: particle direction and speed
1293 waterlevel: extra velocity jitter amount
1294 count: particle count multiplier (per spawned particle)
1295 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
1296 noise: sound to play when the particle is emitted
1297 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)
1298 volume: volume of the sound
1299 targetname: name to target this (then its state is toggled)
1300 bgmscript: emitter class from the BGM script
1301 bgmscriptattack: attack time of the effect strength (0 to 3.9)
1302 bgmscriptdecay: decay time of the effect strength (0 to 3.9)
1303 bgmscriptsustain: sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain)
1304 bgmscriptrelease: release time of the effect strength (0 to 3.9)
1305 -------- SPAWNFLAGS --------
1306 START_ON: when targeted, the particle emitter will start switched on
1307 IMPULSE: only send the full amount of impulse particles when the entity is triggered
1308 VISCULLING: only emit particles if the emitter brush is in the current PVS
1309 -------- NOTES --------
1310 Use trigger_monoflop if you want the particles to turn off for a while, then turn back on.
1311 A BGM script is a .bgs file named like the map, in the maps directory. Its format is lines of the form
1312   <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>
1313 e.g.
1314   smokers 4.7 1
1315   smokers 4.9 0
1316 The lines MUST be sorted by emitter class as primary key, and by the time since start of the BGM as secondary key.
1317 */
1318
1319 /*QUAKED trigger_flipflop (.5 .5 .5) (-8 -8 -8) (8 8 8) START_ON
1320 "Flip-flop" trigger gate... lets only every second trigger event through
1321 -------- KEYS --------
1322 target: trigger all entities with this targetname when triggered
1323 targetname: name that identifies this entity so it can be triggered
1324 -------- SPAWNFLAGS --------
1325 START_ON: assume it is already turned on (so the first event is NOT passed through)
1326 */
1327
1328 /*QUAKED trigger_monoflop (.5 .5 .5) (-8 -8 -8) (8 8 8) FIXED
1329 "Mono-flop" trigger gate... turns trigger events into pairs of events
1330 -------- KEYS --------
1331 target: trigger all entities with this targetname when triggered
1332 targetname: name that identifies this entity so it can be triggered
1333 wait: time to wait until the "off" event is fired
1334 -------- SPAWNFLAGS --------
1335 FIXED: do pulses of fixed length (so the "off" delay is NOT extended as usual and new events are just ignored)
1336 */
1337
1338 /*QUAKED trigger_multivibrator (.5 .5 .5) (-8 -8 -8) (8 8 8) START_ON
1339 "Multivibrator" trigger gate... repeatedly sends trigger events. When triggered, turns on or off.
1340 -------- KEYS --------
1341 target: trigger all entities with this targetname when it goes off
1342 targetname: name that identifies this entity so it can be triggered
1343 phase: phase of the multivibrator (it is added to the time)
1344 wait: "on" cycle time (default: 1)
1345 respawntime: "off" cycle time (default: same as wait)
1346 -------- SPAWNFLAGS --------
1347 START_ON: assume it is already turned on (when targeted)
1348 */
1349
1350 /*QUAKED trigger_gamestart (.5 .5 .5) (-8 -8 -8) (8 8 8)
1351 Triggers once when the game starts, then no longer does anything.
1352 -------- KEYS --------
1353 target: trigger all entities with this targetname when starting the game
1354 target2: trigger all entities with this targetname when starting the game
1355 target3: trigger all entities with this targetname when starting the game
1356 target4: trigger all entities with this targetname when starting the game
1357 wait: wait so many seconds before triggering
1358 */
1359
1360 /*QUAKED misc_follow (.5 .5 .5) (-8 -8 -8) (8 8 8) ATTACH LOCAL
1361 Makes one entity follow another. Will not work with all entities.
1362 -------- KEYS --------
1363 target: points to the entity to move (e.g. something that won't move by itself)
1364 killtarget: points to the entity that is to be used as the source (e.g. a func_plat)
1365 message: tag name to attach to (if ATTACH is used)
1366 punchangle: angle modifier (if LOCAL is used, and ATTACH is not)
1367 -------- SPAWNFLAGS --------
1368 ATTACH: attachment will be used instead of MOVETYPE_FOLLOW (mostly useful for attaching stuff to ZYM models)
1369 LOCAL: do not untransform the coordinates (that is, the map specifies local coordinates, not global ones). Mostly useful with ATTACH.
1370 */
1371
1372 /*QUAKED weapon_minstanex (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1373 Placing this entity on a map kills your cat, voids the warranty on your toaster, and makes your map an unenjoyable campers' paradise.
1374 the MinstaGib Nex. Always kills with one shot.
1375 -------- KEYS --------
1376 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1377 respawntime: time till it respawns (default: 15)
1378 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1379 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1380 -------- SPAWNFLAGS --------
1381 FLOATING: the item will float in air, instead of aligning to the floor by falling
1382 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1383 modeldisabled="models/weapons/g_minstanex.md3"
1384 */
1385
1386 /*QUAKED weapon_porto (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1387 the Port-O-Launch. Only can be shot once.
1388 Portals cannot be made on noimpact surfaces, and the portal missile will bounce on slick surfaces.
1389 -------- KEYS --------
1390 respawntime: time till it respawns (default: 120)
1391 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1392 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1393 -------- SPAWNFLAGS --------
1394 FLOATING: the item will float in air, instead of aligning to the floor by falling
1395 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1396 modeldisabled="models/weapons/g_porto.md3"
1397 */
1398
1399 /*QUAKED target_items (0 0 1) (-8 -8 -8) (8 8 8) AND OR ANDNOT
1400 Sets the items of any player who triggers this.
1401 For the number fields, not specifying a value means not changing it. To clear armor, you need to explicitly set "armor" to "-1".
1402 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).
1403 -------- KEYS --------
1404 targetname: used to trigger this
1405 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"
1406 message: message to print
1407 ammo_shells: amount of shells
1408 ammo_nails: amount of bullets
1409 ammo_rockets: amount of rockets
1410 ammo_cells: amount of cells
1411 ammo_fuel: amount of fuel
1412 health: amount of health
1413 armorvalue: amount of armor
1414 strength_finished: if "strength" is specified, the time in seconds for which the strength will hold
1415 invincible_finished: if "invincible" is specified, the time in seconds for which the invincibility will hold
1416 -------- SPAWNFLAGS --------
1417 AND: any items not listed will get removed, and none will get added
1418 OR: the player may keep items not listed
1419 ANDNOT: the items listed will get removed from the player
1420 */
1421
1422 /*QUAKED target_spawn (1 0 1) (-8 -8 -8) (8 8 8) - ONLOAD
1423 Spawns or modifies an entity when triggered.
1424 The entity field list is a single string of the form:
1425 'field' 'value' 'field' 'value' ... 'classname' 'item_bullets' ... 'field' 'value'
1426 The special "field" name $ calls a void(void) function, for example a spawn function.
1427 Special function names available are _setmodel and _setsize.
1428 Field values can use various variable replacements:
1429 $E
1430 $E.field
1431 $E.field+offset
1432 $E.field+offset+randomoffset
1433 where "E" can be self, activator, target (the entity being created/modified), killtarget, target2, target3, target4 and pusher.
1434 Example is a Mario-style question mark block which could throw a new weapon_nex when activated like this:
1435 {
1436 "classname" "func_button"
1437 "angle" "-1"
1438 "wait" "5"
1439 "target" "makenex"
1440 "speed" "1000"
1441 "lip" "64"
1442 ...
1443 }
1444 {
1445 "classname" "target_spawn"
1446 "origin" "0 0 448"
1447 "targetname" "makenex"
1448 "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"
1449 }
1450 -------- KEYS --------
1451 targetname: used to trigger this
1452 message: entity field list
1453 target: when set, target_spawn edits entities, instead of creating new ones; the special value *activator causes the activator to be edited
1454 count: make sure no more than count entities have been created by this (refuse to spawn new ones if exceeded)
1455 killtarget: reference entity (can be used as $killtarget)
1456 target2: reference entity (can be used as $target2)
1457 target3: reference entity (can be used as $target3)
1458 target4: reference entity (can be used as $target4)
1459 -------- SPAWNFLAGS --------
1460 ONLOAD: create a first entity on map load
1461 */
1462
1463 /*QUAKED func_breakable (1 0 0) ? DISABLED INDICATE - - - - - - NOSPLASH
1464 This is a brush model which can be damaged.
1465 Once all health is consumed it'll disappear and trigger the targeted entity/entities.
1466 When triggered, it resets to full health, and unbreaks.
1467 -------- KEYS --------
1468 health: The damage this trigger can take
1469 target: The entity/entities to be triggered once this entity gets invisible
1470 targetname: The name other entities can use to target this entity
1471 mdl: particle effect name to show when destroyed
1472 count: particle effect multiplier
1473 mdl_dead: optional replacement model to show when destroyed
1474 debris: names of debris models to show when destroyed, separated by spaces
1475 noise: sound to play when destroyed
1476 dmg: damage to deal to the environment when destroyed
1477 dmg_edge: edge damage to deal to the environment when destroyed
1478 dmg_radius: damage radius
1479 dmg_force: damage force
1480 message: death message when a player gets hit by the explosion
1481 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)
1482 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
1483 debrissolid: solidity of the debris: one of 0 = NOT, 1 = TRIGGER, 2 = BBOX, 3 = SLIDEBOX, 4 = BSP, 5 = CORPSE
1484 debrisvelocity: initial velocity vector of the debris (static part)
1485 debrisvelocityjitter: initial velocity vector of the debris (random part)
1486 debrisavelocityjitter: initial angular velocity vector of the debris (random part)
1487 debristime: time till the debris fades (average)
1488 debristimejitter: time till the debris fades (random part)
1489 debrisfadetime: how long debris takes to fade
1490 debrisdamageforcescale: how much debris is affected by damage force (e.g. explosions)
1491 debrisskin: skin number of debris
1492 -------- SPAWNFLAGS --------
1493 DISABLED: do not allow damaging this until it is first activated
1494 INDICATE: indicate amount of damage already taken by coloring
1495 NOSPLASH: if set, splash damage cannot activate the door, only direct damage can (requires health to be set)
1496 */
1497
1498 /*QUAKED trigger_relay_if (0 1 0) (-8 -8 -8) (8 8 8) NEGATE
1499 Relays the trigger event if a cvar is set to a specified value.
1500 -------- KEYS --------
1501 target: The entity/entities to relay the trigger events to
1502 targetname: The name other entities can use to target this entity
1503 netname: The name of the cvar to check
1504 message: The value of the cvar to check
1505 count: The count of entities that must be found
1506 -------- SPAWNFLAGS --------
1507 NEGATE: trigger if the cvar does NOT match the value.
1508 */
1509
1510 /*QUAKED weapon_hlac (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1511 the Heavy Laser Assault Cannon.
1512 -------- KEYS --------
1513 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1514 respawntime: time till it respawns (default: 30)
1515 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1516 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1517 -------- SPAWNFLAGS --------
1518 FLOATING: the item will float in air, instead of aligning to the floor by falling
1519 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1520 modeldisabled="models/weapons/g_hlac.md3"
1521 */
1522
1523 /*QUAKED weapon_seeker (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1524 Placing this entity on a map kills your dog, voids the warranty on your car, and makes your map an unenjoyable noobs' paradise.
1525 the T.A.G. Seeker.
1526 -------- KEYS --------
1527 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1528 respawntime: time till it respawns (default: 30)
1529 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1530 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1531 -------- SPAWNFLAGS --------
1532 FLOATING: the item will float in air, instead of aligning to the floor by falling
1533 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1534 modeldisabled="models/weapons/g_seeker.md3"
1535 */
1536
1537 /*QUAKED weapon_hook (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1538 the on-hand Grappling Hook.
1539 -------- KEYS --------
1540 ammo_cells: initial cells of the weapon (if unset, g_pickup_cells is used)
1541 respawntime: time till it respawns (default: 30)
1542 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1543 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1544 -------- SPAWNFLAGS --------
1545 FLOATING: the item will float in air, instead of aligning to the floor by falling
1546 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1547 modeldisabled="models/weapons/g_hookgun.md3"
1548 */
1549
1550 /*QUAKED trigger_heal (.5 .5 .5) ?
1551 Any object touching this will be healed.
1552 -------- KEYS --------
1553 health: health to give per second (default 10)
1554 max_health: max health this trigger will give (default 200)
1555 noise: sound file to play (use misc/null.wav to make it silent), default = item_health_medium sound
1556 */
1557
1558 /*QUAKED weapon_campingrifle (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1559 the Camping Rifle.
1560 -------- KEYS --------
1561 ammo_nails: initial bullets of the weapon (if unset, g_pickup_nails is used)
1562 respawntime: time till it respawns (default: 30)
1563 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1564 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1565 -------- SPAWNFLAGS --------
1566 FLOATING: the item will float in air, instead of aligning to the floor by falling
1567 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1568 modeldisabled="models/weapons/g_campingrifle.md3"
1569 */
1570
1571 /*QUAKED func_fourier (0 .5 .8) ?
1572 Solid entity that oscillates according to a sum of sine waves.
1573 -------- KEYS --------
1574 speed: amount of time in seconds for one complete oscillation cycle in the base frequency (default 4).
1575 height: sets the amount of travel of the oscillation movement (default 32). 
1576 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).
1577 noise: path/name of .wav or .ogg file to play. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
1578 dmg: damage a player who gets crushed by it receives
1579 dmgtime: interval to apply dmg to a player who is s in the way
1580 message: death message when a player gets crushed
1581 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)
1582 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
1583 */
1584
1585 /*QUAKED func_vectormamamam (0 .5 .8) ? PROJECT_ON_TARGETNORMAL TARGET2NORMAL_IS_DIRECTION TARGET3NORMAL_IS_DIRECTION TARGET4NORMAL_IS_DIRECTION
1586 Solid entity that moves according to the movement of multiple given entities (max 4)
1587 -------- KEYS --------
1588 target: first reference entity
1589 targetfactor: factor by which to take the first reference entity (default 1).
1590 targetnormal: if set, the first reference entity's location is first projected onto a plane with that normal
1591 target2: second reference entity
1592 target2factor: factor by which to take the second reference entity (default 1).
1593 target2normal: if set, the second reference entity's location is first projected onto a plane with that normal
1594 target3: third reference entity (optional)
1595 target3factor: factor by which to take the third reference entity (default 1).
1596 target3normal: if set, the third reference entity's location is first projected onto a plane with that normal
1597 target4: fourth reference entity (optional)
1598 target4factor: factor by which to take the fourth reference entity (default 1).
1599 target4normal: if set, the fourth reference entity's location is first projected onto a plane with that normal
1600 noise: path/name of .wav or .ogg file to play. Use looping sounds only (e.g. sound/world/drone6.wav - See Notes).
1601 dmg: damage a player who gets crushed by it receives
1602 dmgtime: interval to apply dmg to a player who is s in the way
1603 message: death message when a player gets crushed
1604 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)
1605 -------- SPAWNFLAGS --------
1606 PROJECT_ON_TARGETNORMAL: target's origin is projected onto the given direction vector, not on the plane perpendicular to it
1607 PROJECT_ON_TARGET2NORMAL: target2's origin is projected onto the given direction vector, not on the plane perpendicular to it
1608 PROJECT_ON_TARGET3NORMAL: target3's origin is projected onto the given direction vector, not on the plane perpendicular to it
1609 PROJECT_ON_TARGET4NORMAL: target4's origin is projected onto the given direction vector, not on the plane perpendicular to it
1610 */
1611
1612 /*QUAKED trigger_relay_teamcheck (.5 .5 .5) (-8 -8 -8) (8 8 8) NOTEAM_TOO INVERT
1613 Works similar to trigger_relay, but only relays trigger events if the team of the activator matches this entity's team
1614 -------- KEYS --------
1615 target: trigger all entities with this targetname when triggered
1616 target2: trigger all entities with this targetname when triggered
1617 target3: trigger all entities with this targetname when triggered
1618 target4: trigger all entities with this targetname when triggered
1619 targetname: name that identifies this entity so it can be triggered
1620 delay: delay the triggering by the given time
1621 message: print this message to the player who activated the trigger
1622 killtarget: remove all entities with this targetname when triggered
1623 team: 5 for red, 14 for blue, 13 for yellow, 10 for pink team
1624 -------- SPAWNFLAGS --------
1625 NOTEAM_TOO: also relay events if the activator has no team set
1626 INVERT: only relay the event if this entity has the matching team
1627 */
1628
1629 /*QUAKED trigger_disablerelay (.5 .5 .5) (-8 -8 -8) (8 8 8) 
1630 Disables a trigger_relay temporarily (until triggered again)
1631 -------- KEYS --------
1632 target: disable/enable all relays with this targetname when triggered
1633 targetname: name that identifies this entity so it can be triggered
1634 */
1635
1636 /*QUAKED nexball_redgoal (1 0 0) ?
1637 Red goal. Defended by the red team.
1638 -------- KEYS --------
1639 noise: sound played when a point is scored
1640 -------- SPAWNFLAGS --------
1641 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1642 */
1643
1644 /*QUAKED nexball_bluegoal (0 0 1) ?
1645 Blue goal. Defended by the blue team.
1646 -------- KEYS --------
1647 noise: sound played when a point is scored
1648 -------- SPAWNFLAGS --------
1649 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1650 */
1651
1652 /*QUAKED nexball_yellowgoal (1 1 0) ?
1653 Yellow goal. Defended by the yellow team. Needs both red and blue goals on the map to work.
1654 -------- KEYS --------
1655 noise: sound played when a point is scored
1656 -------- SPAWNFLAGS --------
1657 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1658 */
1659
1660 /*QUAKED nexball_pinkgoal (1 0 1) ?
1661 Pink goal. Defended by the pink team. Needs red, blue and yellow goals on the map to work.
1662 -------- KEYS --------
1663 noise: sound played when a point is scored
1664 -------- SPAWNFLAGS --------
1665 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1666 */
1667
1668
1669 /*QUAKED nexball_fault (0.6 0.1 0) ?
1670 This acts as a goal that always gives points to the opposing team.
1671 -------- KEYS --------
1672 noise: sound played when a point is scored
1673 -------- SPAWNFLAGS --------
1674 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1675 */
1676
1677 /*QUAKED nexball_out (0.1 0.6 0) ?
1678 When the ball touches this, it is returned.
1679 -------- KEYS --------
1680 noise: sound played when a point is scored
1681 -------- SPAWNFLAGS --------
1682 GOAL_TOUCHPLAYER: The trigger also affects ball-carrying players (the ball is then auto-dropped)
1683 */
1684
1685 /*QUAKED nexball_football (.9 .9 .9) (-16 -16 -16) (16 16 16)
1686 The soccer type Nexball.
1687 -------- KEYS --------
1688 model: set this if you want to use your own model
1689 scale: if you're using your own model, change this to scale it to 32*32*32
1690 noise: played when the ball bounces
1691 noise1: played when the ball is dropped on the map
1692 */
1693
1694 /*QUAKED nexball_basketball (.5 .2 0) (-16 -16 -16) (16 16 16)
1695 The basket ball type Nexball.
1696 -------- KEYS --------
1697 model: set this if you want to use your own model
1698 scale: if you're using your own model, change this to scale it to 32*32*32
1699 noise: played when the ball bounces
1700 noise1: played when the ball is dropped on the map
1701 noise2: played when the ball is stolen from the enemy
1702 */
1703
1704 /*QUAKED item_fuel (.3 .3 1) (-30 -30 0) (30 30 32) FLOATING
1705 Jetpack fuel
1706 -------- KEYS --------
1707 ammo_fuel: fuel units gained by this item (if unset, g_pickup_fuel is used)
1708 respawntime: time till it respawns (default: 15)
1709 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1710 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1711 -------- SPAWNFLAGS --------
1712 FLOATING: the item will float in air, instead of aligning to the floor by falling
1713 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1714 modeldisabled="models/items/g_fuel.md3"
1715 */
1716
1717 /*QUAKED item_fuel_regen (1 .3 1) (-30 -30 0) (30 30 48) FLOATING
1718 Fuel regenerator
1719 -------- KEYS --------
1720 respawntime: time till it respawns (default: 120)
1721 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1722 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1723 -------- SPAWNFLAGS --------
1724 FLOATING: the item will float in air, instead of aligning to the floor by falling
1725 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1726 modeldisabled="models/items/g_fuelregen.md3"
1727 */
1728
1729 /*QUAKED item_jetpack (.3 .3 1) (-30 -30 0) (30 30 48) FLOATING
1730 Jetpack
1731 -------- KEYS --------
1732 ammo_fuel: fuel units gained by this item (if unset, g_pickup_fuel_jetpack is used)
1733 respawntime: time till it respawns (default: 120)
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/items/g_jetpack.md3"
1740 */
1741
1742 /*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
1743 Triggers targets when a given magic word has been said
1744 -------- KEYS --------
1745 message: message to wait for (can start or end with * for wildcards)
1746 netname: replacement text (by default, no replacement is performed if empty)
1747 radius: radius in which the player has to be for this to match
1748 target: all entities with a matching targetname will be triggered.
1749 target2: all entities with a matching targetname will be triggered.
1750 target3: all entities with a matching targetname will be triggered.
1751 target4: all entities with a matching targetname will be triggered.
1752 -------- SPAWNFLAGS --------
1753 IGNORE_SAY: do not respond to "say" messages
1754 IGNORE_TEAMSAY: do not respond to "say_team" messages
1755 IGNORE_TELL: do not respond to "tell" messages
1756 IGNORE_INVALIDTELL: do not respond to "tell" messages of invalid syntax
1757 REPLACE_WHOLE_MESSAGE: replace the whole message by netname, or drop the message if netname is empty
1758 REPLACE_OUTSIDE: also perform the replacement when outside the radius (to hide the "secret word")
1759 CONTINUE: even if this magic ear matched, continue looking for further matches/replacements (useful for swear word filters)
1760 NODECOLORIZE: do not decolorize the input string before matching
1761 */
1762
1763 /*QUAKED weapon_fireball (1 0 .5) (-30 -30 0) (30 30 32) FLOATING
1764 the Fireball
1765 -------- KEYS --------
1766 ammo_rockets: initial rockets of the weapon (if unset, g_pickup_rockets is used)
1767 respawntime: time till it respawns (default: 15)
1768 team: out of items with the same value here, only one (random one) will spawn. Useful to put multiple items on one spot.
1769 cnt: weight of this item for random selection using "team". Set to a lower value for items you want to see less likely.
1770 -------- SPAWNFLAGS --------
1771 FLOATING: the item will float in air, instead of aligning to the floor by falling
1772 -------- MODEL FOR RADIANT ONLY - DO NOT SET THIS AS A KEY --------
1773 modeldisabled="models/weapons/g_fireball.md3"
1774 */
1775
1776 /*QUAKED trigger_warpzone (1 .5 1) ?
1777 A warp zone, i.e. seamlessly connecting two parts of the map.
1778 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.
1779 Must target, or be targeted by, another trigger_warpzone with a congruent common/warpzone surface.
1780 Should target a target_position, or be targeted by a misc_warpzone_position.
1781 Should be thick enough to fit a player entity (i.e. 32 units), preferably even thicker.
1782 -------- KEYS --------
1783 target: must point to another trigger_warpzone, or...
1784 target2: is triggered when a player ENTERS the warpzone (and warps away)
1785 target3: is triggered when a player LEAVES the warpzone (from the other warp zone to this one)
1786 target4: is triggered in both cases
1787 targetname: must be pointed to by another trigger_warpzone. Should be pointed to by a misc_warpzone_position entity, or...
1788 killtarget: should point to a target_position entity, or
1789 warpzone_fadestart: start distance of fading out the warpzone
1790 warpzone_fadeend: end distance of fading out the warpzone (if viewer is further, warpzone is not rendered at all)
1791 */
1792
1793 /*QUAKED trigger_warpzone_reconnect (1 .5 1) (-8 -8 -8) (8 8 8) IGNORE_VISIBLE
1794 Reconnects (randomly) all warpzones/cameras with matching target when triggered
1795 -------- KEYS --------
1796 target: must point to multiple trigger_warpzones, or be not set (then all warpzones may get changed)
1797 targetname: name that identifies this entity so it can be triggered
1798 -------- SPAWNFLAGS --------
1799 IGNORE_VISIBLE: do not rearrange a warpzone if a player can currently see it
1800 */
1801
1802 /*QUAKED misc_warpzone_position (1 .5 .25) (-8 -8 -8) (8 8 8) 
1803 Orientation specification for a trigger_warpzone
1804 -------- KEYS --------
1805 target: must point to a trigger_warpzone
1806 angles: must point perpendicular to the common/warpzone surface of the trigger_warpzone, and away from the trigger brush
1807 origin: must be on the common/warpzone surface of the trigger_warpzone
1808 */
1809
1810 /*QUAKED func_camera (1 .5 1) ?
1811 A camera, i.e. a surface that shows a view from another part of the map.
1812 One surface of this entity must have the common/camera shader, the others should be common/caulk.
1813 Must target a target_position that indicates the view to be shown (and whose angles also indicate the orientation of the view)
1814 -------- KEYS --------
1815 target: must point to a target_position
1816 warpzone_fadestart: start distance of fading out the warpzone
1817 warpzone_fadeend: end distance of fading out the warpzone (if viewer is further, warpzone is not rendered at all)
1818 */
1819
1820 /*QUAKED target_music (1 0 0) (-8 -8 -8) (8 8 8)
1821 Background music target (when this is used, the cdtrack line in mapinfo must not be used, and there MUST be a default target_music).
1822 When triggered, the background music is switched to the given track.
1823 When targetname is not set, this is the default track of the map.
1824 -------- KEYS --------
1825 targetname: The name other entities can use to target this entity (when not set, this one is the default)
1826 noise: the music to play (as full sound file name)
1827 volume: the volume (default: 1)
1828 fade_time: fade-in time
1829 fade_rate: fade-out time
1830 lifetime: when set, the music created by this target is switched back to the default one when this time expires
1831 -------- SPAWNFLAGS --------
1832 START_OFF: the trigger is off initially
1833 */
1834
1835 /*QUAKED trigger_music (1 0 0) ?
1836 Background music trigger (when this is used, the cdtrack line in mapinfo must not be used, and there MUST be a default target_music).
1837 When triggered, its effect is turned off until triggered again.
1838 -------- KEYS --------
1839 targetname: The name other entities can use to target this entity
1840 noise: the music to play (as full sound file name)
1841 volume: the volume (default: 1)
1842 fade_time: fade-in time
1843 fade_rate: fade-out time
1844 -------- SPAWNFLAGS --------
1845 START_OFF: the trigger is off initially
1846 */
1847
1848 /*QUAKED trigger_gravity (.5 .5 1) ? STICKY START_OFF
1849 An area where gravity differs from the rest of the map.
1850 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.
1851 -------- KEYS --------
1852 gravity: gravity offset in this area, defaults to 0 if not set
1853 noise: sound to play when an entity enters the gravity zone, leave empty to disable
1854 targetname: you can use this to target the grazity zone with a trigger, which will toggle it when activated
1855 -------- SPAWNFLAGS --------
1856 STICKY: entities keep their gravity after leaving the gravity zone
1857 START_OFF: when targeted, the gravity zone starts off and is enabled upon triggering
1858 */
1859
1860 /*QUAKED relay_activate (0 1 0) (-8 -8 -8) (8 8 8) 
1861 Activates all .target's
1862 List of currently supported target ents:
1863 trigger_hurt
1864 trigger_heal
1865 trigger_impulse
1866 trigger_push
1867 trigger_teleport
1868 func_rotating
1869 func_bobbing
1870 func_button
1871 func_fourier
1872 func_vectormamamam
1873 -------- KEYS --------
1874 target: trigger all entities with this targetname when triggered
1875 targetname: name that identifies this entity so it can be triggered
1876 */
1877
1878 /*QUAKED relay_deactivate (1 0 0) (-8 -8 -8) (8 8 8) 
1879 Deactivates all .target's
1880 List of currently supported target ents:
1881 trigger_hurt
1882 trigger_heal
1883 trigger_impulse
1884 trigger_push
1885 trigger_teleport
1886 func_rotating
1887 func_bobbing
1888 func_button
1889 func_fourier
1890 func_vectormamamam
1891 -------- KEYS --------
1892 target: trigger all entities with this targetname when triggered
1893 targetname: name that identifies this entity so it can be triggered
1894 */
1895
1896 /*QUAKED relay_activatetoggle (0 1 1) (-8 -8 -8) (8 8 8) 
1897 Toggles all .target's de/active
1898 List of currently supported target ents:
1899 trigger_hurt
1900 trigger_heal
1901 trigger_impulse
1902 trigger_push
1903 trigger_teleport
1904 func_rotating
1905 func_bobbing
1906 func_button
1907 func_fourier
1908 func_vectormamamam
1909 -------- KEYS --------
1910 target: trigger all entities with this targetname when triggered
1911 targetname: name that identifies this entity so it can be triggered
1912 */
1913
1914 /*QUAKED target_changelevel (.5 .5 0) (-8 -8 -8) (8 8 8)
1915 Loads another map when triggered. Useful for single player maps.
1916 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.
1917 -------- KEYS --------
1918 targetname: The name other entities can use to target this entity
1919 chmap: Map file to switch to, leave empty to make this entity just end the match
1920 gametype: Switch to this gametype. If empty, the same gametype stays
1921 */