]> icculus.org git repositories - divverent/nexuiz.git/blob - data/defaultNexuiz.cfg
put the descriptions from the old cvars.txt to good use
[divverent/nexuiz.git] / data / defaultNexuiz.cfg
1 // Nexuiz version (formatted for humans)
2 set g_nexuizversion 2.4svn
3
4 // changes a cvar and reports it to the server (for the menu to notify the
5 // server about changes)
6 alias setreport "set \"$1\" \"$2\" ; sendcvar \"$1\""
7
8 // detect dedicated server
9 alias "_detect_dedicated_$qport" "$*"
10 alias "_detect_dedicated_0" ""
11 alias if_dedicated "_detect_dedicated_$qport $*"
12
13 // Configuration file version (used to upgrade settings)
14 // 0: first run, or previous start was <2.4.1
15 // later, it's overridden by config.cfg, version ranges are defined in config_update.cfg
16 seta g_configversion 0
17
18 // default.cfg versioning (update using update-cvarcount.sh; run that every time after adding a new cvar)
19 set cvar_check_default 913e35a06d0542e7ba625bfe0e0844c9
20
21 // Nexuiz version (formatted for machines)
22 // used to determine if a client version is compatible
23 // this doesn't have to be bumped with every release
24 // bump when clients become incompatible or any other perfectly good reason
25 // (e.g. game data incompatibility, engine version incompatibility, etc
26 // note: this automatically filters the server browser, clients of the new
27 // version won't see old servers, and clients of the old version won't see new
28 // servers either
29 //
30 // e.g. Nexuiz 1.5.1 RC1 will be 15101
31 gameversion 20000
32
33 // say aliases
34 alias asay_ctf_flagcarrier "say_team flag carrier at %y"
35 alias asay_ctf_haveflag "say_team (%l) have the flag"
36 alias asay_willgo "say_team will go to %y"
37 alias asay_support "say_team (%l) need help, %h%%"
38 alias asay_killed "say_team got killed at %d"
39 alias asay_noammo "say_team (%l) need %W for %w"
40 alias asay_drop "say_team (%l) dropped %w ; impulse 17"
41
42 // other aliases
43 alias +hook +button6
44 alias -hook -button6
45 alias ready "cmd ready"
46 alias lockteams "sv_cmd lockteams"
47 alias unlockteams "sv_cmd unlockteams"
48 alias nospectators "sv_cmd nospectators"
49 alias cointoss "sv_cmd cointoss"
50 alias timeout "cmd timeout" //use this command to call a timeout
51 alias timein "cmd timein" //use this command to resume the game before timeout is finished
52
53 alias bsp "ls maps/*.bsp"
54 alias chmap "changelevel $*"
55 alias gotomap "sv_cmd gotomap \"$1\""
56
57 alias rec "record demos/$1"
58 alias ply "playdemo $1"
59 alias tdem "timedemo $1"
60
61 alias dropweapon "impulse 17"
62 alias +show_info +button7
63 alias -show_info -button7
64
65 alias team_red "cmd selectteam red; cmd join"
66 alias team_blue "cmd selectteam blue; cmd join"
67 alias team_pink "cmd selectteam pink; cmd join"
68 alias team_yellow "cmd selectteam yellow; cmd join"
69 alias team_auto "cmd selectteam auto; cmd join"
70 bind f6 team_auto
71
72 alias movetoteam_red "sv_cmd movetoteam $1 red"
73 alias movetoteam_blue "sv_cmd movetoteam $1 blue"
74 alias movetoteam_pink "sv_cmd movetoteam $1 pink"
75 alias movetoteam_yellow "sv_cmd movetoteam $1 yellow"
76 alias movetoteam_auto "sv_cmd movetoteam $1 auto"
77
78 // merge lightmaps up to 1024x1024 textures
79 // the default of 2048x2048 is too heavy for my rig (SavageX)
80 mod_q3bsp_lightmapmergepower 3
81
82 // player defaults
83 _cl_color 102
84 _cl_name Player
85 _cl_playermodel models/player/marine.zym
86 _cl_playerskin 0
87 crosshair 5
88 seta crosshair_per_weapon 0
89 seta crosshair_color_override 0 // when 1, crosshair_color_* overrides the per-weapon color
90 seta crosshair_laser ""
91 seta crosshair_laser_color_red 1
92 seta crosshair_laser_color_green 0.65
93 seta crosshair_laser_color_blue 0.2
94 seta crosshair_laser_color_alpha 0.75
95 seta crosshair_laser_size 1
96 seta crosshair_shotgun ""
97 seta crosshair_shotgun_color_red 0.75
98 seta crosshair_shotgun_color_green 0.75
99 seta crosshair_shotgun_color_blue 0.75
100 seta crosshair_shotgun_color_alpha 1
101 seta crosshair_shotgun_size 1
102 seta crosshair_uzi ""
103 seta crosshair_uzi_color_red 1
104 seta crosshair_uzi_color_green 1
105 seta crosshair_uzi_color_blue 0.2
106 seta crosshair_uzi_color_alpha 1
107 seta crosshair_uzi_size 1
108 seta crosshair_grenadelauncher ""
109 seta crosshair_grenadelauncher_color_red 1
110 seta crosshair_grenadelauncher_color_green 0.2
111 seta crosshair_grenadelauncher_color_blue 0.2
112 seta crosshair_grenadelauncher_color_alpha 1
113 seta crosshair_grenadelauncher_size 1
114 seta crosshair_electro ""
115 seta crosshair_electro_color_red 0.35
116 seta crosshair_electro_color_green 0.5
117 seta crosshair_electro_color_blue 1
118 seta crosshair_electro_color_alpha 0.90
119 seta crosshair_electro_size 1
120 seta crosshair_crylink ""
121 seta crosshair_crylink_color_red 0.85
122 seta crosshair_crylink_color_green 0.25
123 seta crosshair_crylink_color_blue 1
124 seta crosshair_crylink_color_alpha 0.85
125 seta crosshair_crylink_size 1
126 seta crosshair_nex ""
127 seta crosshair_nex_color_red 0
128 seta crosshair_nex_color_green 1
129 seta crosshair_nex_color_blue 1
130 seta crosshair_nex_color_alpha 0.85
131 seta crosshair_nex_size 1
132 seta crosshair_hagar ""
133 seta crosshair_hagar_color_red 1
134 seta crosshair_hagar_color_green 0.75
135 seta crosshair_hagar_color_blue 0.5
136 seta crosshair_hagar_color_alpha 1
137 seta crosshair_hagar_size 1
138 seta crosshair_rocketlauncher ""
139 seta crosshair_rocketlauncher_color_red 1
140 seta crosshair_rocketlauncher_color_green 0.85
141 seta crosshair_rocketlauncher_color_blue 0.2
142 seta crosshair_rocketlauncher_color_alpha 1
143 seta crosshair_rocketlauncher_size 1
144 seta crosshair_porto ""
145 seta crosshair_porto_color_red 0.5
146 seta crosshair_porto_color_green 1
147 seta crosshair_porto_color_blue 0.5
148 seta crosshair_porto_color_alpha 0.85
149 seta crosshair_porto_size 1
150 seta crosshair_minstanex ""
151 seta crosshair_minstanex_color_red 0.65
152 seta crosshair_minstanex_color_green 0.65
153 seta crosshair_minstanex_color_blue 1
154 seta crosshair_minstanex_color_alpha 1
155 seta crosshair_minstanex_size 1
156 seta crosshair_hook ""
157 seta crosshair_hook_color_red 0.65
158 seta crosshair_hook_color_green 1
159 seta crosshair_hook_color_blue 0.85
160 seta crosshair_hook_color_alpha 0.85
161 seta crosshair_hook_size 1
162 seta crosshair_hlac ""
163 seta crosshair_hlac_color_red 1
164 seta crosshair_hlac_color_green 0.65
165 seta crosshair_hlac_color_blue 0.2
166 seta crosshair_hlac_color_alpha 1
167 seta crosshair_hlac_size 1
168 seta crosshair_seeker ""
169 seta crosshair_seeker_color_red 1
170 seta crosshair_seeker_color_green 0.35
171 seta crosshair_seeker_color_blue 0.35
172 seta crosshair_seeker_color_alpha 0.9
173 seta crosshair_seeker_size 1
174 seta crosshair_campingrifle ""
175 seta crosshair_campingrifle_color_red 1
176 seta crosshair_campingrifle_color_green 1
177 seta crosshair_campingrifle_color_blue 0.2
178 seta crosshair_campingrifle_color_alpha 1
179 seta crosshair_campingrifle_size 1
180 fov 90
181 seta cl_zoomfactor 5  // how much +zoom will zoom (1-16)
182 seta cl_zoomspeed 3.5 // how fast it will zoom (0.5-16), negative values mean instant zoom
183 seta cl_zoomsensitivity 0 // how zoom changes sensitivity (0 = weakest, 1 = strongest)
184 freelook 1
185 sensitivity 6
186 v_gamma 1.125000
187 viewsize 110
188 bgmvolume 1
189 volume 0.5
190 // fullscreen 1024x768x32bit
191 vid_bitsperpixel 32
192 vid_fullscreen 1
193 vid_width 1024
194 vid_height 768
195 // 2D resolution 800x600
196 vid_conwidth 800
197 vid_conheight 600
198 set sbar_hudselector 1 // use the new nexuiz hud layout
199 v_deathtilt 0 // needed for spectators (who are dead to avoid prediction)
200
201 // these settings determine how much the view is affected by movement/damage
202 cl_bobcycle 0 // how long the cycle of up/down view movement takes (only works if cl_bob is not 0), default is 0.6
203 cl_bob 0.02 // how much view moves up/down when moving (does not move if cl_bobcycle is 0, but still enables cl_bobmodel), default is 0.02
204 cl_bobmodel 1 // whether to have gun model move around on screen when moving (only works if cl_bob is not 0), default is 1
205 cl_rollangle 0 // amount of view tilt when strafing, default is 2.0
206 v_kicktime 0   // how long damage kicks of the view last, default is 0.5 seconds
207 gl_polyblend 1 // whether to use screen tints, default is 1
208
209 // nexuiz-linux-*.sh will use this
210 seta vid_x11_display ""
211 // This can have three possible settings:
212 //   ""            run as usual
213 //   ":n"          use DISPLAY=:n, create it if needed
214 //   ":n/layout"   use DISPLAY=:n, create it if needed with ServerLayout layout
215
216 cl_autodemo_nameformat demos/%Y-%m-%d_%H-%M
217
218 // taunts and voices
219 seta cl_autotaunt 0.65
220 seta cl_voice_directional 1 // 0 = all voices are non-directional, 1 = all voices are directional, 2 = only taunts are directional
221 seta cl_voice_directional_taunt_attenuation 0.5
222
223 // server settings
224 hostname "Nexuiz Server"
225 set sv_mapchange_delay 5
226 set minplayers 0
227 sv_cullentities_trace 1
228 r_cullentities_trace 1
229
230 // restart server if all players hit "ready"-button
231 set sv_ready_restart 0
232 set sv_ready_restart_after_countdown 0 //if set to 1 the players and map items are reset after the countdown ended, otherwise they're reset already at the beginning of the countdown
233 set sv_ready_restart_repeatable 0 //allows the players to restart the game as often as needed
234
235 //nifreks lockonrestart feature, used in team-based game modes, if set to 1 and all players readied up no other player can then join the game anymore, useful to block spectators from joining
236 set teamplay_lockonrestart 0
237
238 set g_maxplayers 0 //maximum number of players allowed to play at the same time, set to 0 to all players to join the game
239 set g_maxplayers_spectator_blocktime 5 //if the players voted for the "nospectators" command, this setting defines the number of seconds a observer/spectator has time to join the game before he gets kicked
240
241 //tournament mod
242 set g_warmup 0 //split the game into a warmup- and match-stage when set to 1
243 set g_warmup_limit 60 //if set to -1 the warmup-stage is not affected by any timelimit, if set to 0 the usual timelimit also affects warmup-stage, otherwise warmup will be limited to this time (useful for public matches)
244 set g_warmup_allow_timeout 0 //if set to 0 you cannot use the calltimeout command during the warmup-stage but only during the match stage
245 set g_warmup_allguns 0 //if set players start with all guns in warmup mode
246 set g_warmup_start_health 250 //starting values when being in warmup-stage
247 set g_warmup_start_armor 100
248 set g_warmup_start_ammo_shells 50
249 set g_warmup_start_ammo_nails 150
250 set g_warmup_start_ammo_rockets 50
251 set g_warmup_start_ammo_cells 50
252
253 set g_chat_nospectators 0 //if set the chat sent by spectators or observers while being in match-stage can only seen by other specs/observers
254 set sv_vote_nospectators 0 //if set only players can call a vote during the match-stage (thus spectators and observers can't call a vote then)
255
256 alias g_tourney "g_tourney_$1"
257 alias g_tourney_1 "g_warmup 1; g_chat_nospectators 1; sv_vote_nospectators 1"
258 alias g_tourney_0 "g_warmup 0; g_chat_nospectators 0; sv_vote_nospectators 0"
259
260 set sv_timeout 0 //allows a player to call a timeout, this will pause the game for some time
261 set sv_timeout_length 120 //how long the game will be paused at max, in seconds
262 set sv_timeout_number 2 //how many timeouts one player is allowed to call (gets reset after a restart)
263 set sv_timeout_leadtime 4 //how long the players will be informed that a timeout was calledbefore it starts, in seconds
264 set sv_timeout_resumetime 3 //how long the remaining timeout-time will be after a player called the resumegame command
265
266 // use default physics
267 exec physics25.cfg
268
269 set sv_pogostick 0 // don't require releasing the space bar for jumping again
270 set sv_doublejump 0 // allow Quake 2-style double jumps
271
272 seta sv_precacheplayermodels 1
273 seta sv_precacheweapons 0
274 seta sv_precacheitems 0
275 set sv_spectator_speed_multiplier 1.5
276 seta sv_spectate 1
277 seta sv_defaultcharacter 0
278 seta sv_defaultplayermodel models/player/nexus.zym
279 seta sv_defaultplayerskin 0
280 seta sv_defaultplayermodel_red "" // "" means see sv_defaultplayermodel
281 seta sv_defaultplayerskin_red 0
282 seta sv_defaultplayermodel_blue ""
283 seta sv_defaultplayerskin_blue 0
284 seta sv_defaultplayermodel_yellow ""
285 seta sv_defaultplayerskin_yellow 0
286 seta sv_defaultplayermodel_pink ""
287 seta sv_defaultplayerskin_pink 0
288 seta sv_defaultplayercolors "" // set to 16*shirt+pants to force a color, note: it does NOT depend on defaultcharacter! Set to "" to disable
289 set sv_autoscreenshot 0
290 net_messagetimeout 300
291 net_connecttimeout 30
292 sv_jumpstep 1 // step up stairs while jumping, makes it easier to reach ledges
293 set ekg 0 "Throw huge amounts of gibs"
294
295 cl_movement 1
296 cl_stairsmoothspeed 200
297 cl_forwardspeed $sv_maxspeed
298 cl_backspeed $sv_maxspeed
299 cl_sidespeed $sv_maxspeed
300 cl_upspeed $sv_maxspeed
301 cl_movement_accelerate $sv_accelerate
302 cl_movement_airaccel_qw $sv_airaccel_qw
303 cl_movement_airaccel_sideways_friction $sv_airaccel_sideways_friction
304 cl_movement_airaccelerate $sv_airaccelerate
305 cl_movement_edgefriction $edgefriction
306 cl_movement_friction $sv_friction
307 cl_movement_jumpvelocity $sv_jumpvelocity
308 cl_movement_maxairspeed $sv_maxairspeed
309 cl_movement_maxspeed $sv_maxspeed
310 cl_movement_stepheight $sv_stepheight
311 cl_movement_stopspeed $sv_stopspeed
312 cl_movement_track_canjump 0 // till DP bug gets fixed
313 cl_movement_wallfriction $sv_wallfriction
314 cl_movement_wateraccelerate $sv_wateraccelerate
315 cl_movement_waterfriction $sv_waterfriction
316
317 seta cl_autoswitch 1
318 alias autoswitch "set cl_autoswitch $1 ; cmd autoswitch $1"
319
320 seta cl_playerdetailreduction 0 // the higher, the less detailed
321
322 set bot_number 0 "Minimum number of bots"
323 seta bot_usemodelnames 0 "Use player model names for bot names"
324 set bot_nofire 0 "When set, bots never fire. Mainly for testing in g_waypointeditor mode"
325 seta bot_prefix [BOT] "Prefix in front of the bot names"
326 seta bot_suffix "" "Suffix behind the bot names"
327 seta skill_auto 0 // when 1, "skill" gets adjusted to match the best player on the map
328 // general bot AI cvars
329 set bot_ai_thinkinterval 0.05
330 set bot_ai_strategyinterval 2
331 set bot_ai_enemydetectioninterval 0.5
332 set bot_ai_dodgeupdateinterval 0.1
333 set bot_ai_chooseweaponinterval 0.3
334 set bot_ai_dangerdetectioninterval 0.1
335 set bot_ai_dangerdetectionupdates 64
336 set bot_ai_aimskill_blendrate 2
337 set bot_ai_aimskill_fixedrate 15
338 set bot_ai_aimskill_firetolerance_distdegrees 180
339 set bot_ai_aimskill_firetolerance_mindegrees 2
340 set bot_ai_aimskill_firetolerance_maxdegrees 45
341 set bot_ai_aimskill_mouse 1
342 set bot_ai_keyboard_distance 250
343 set bot_ai_keyboard_treshold 0.57
344 set bot_ai_aimskill_offset 1
345 set bot_ai_aimskill_think 1
346 // Better don't touch these, there are hard to tweak!
347 set bot_ai_aimskill_order_mix_1st 0.01
348 set bot_ai_aimskill_order_mix_2nd 0.1
349 set bot_ai_aimskill_order_mix_3th 0.01
350 set bot_ai_aimskill_order_mix_4th 0.05
351 set bot_ai_aimskill_order_mix_5th 0.01
352 set bot_ai_aimskill_order_filter_1st 0.2
353 set bot_ai_aimskill_order_filter_2nd 0.2
354 set bot_ai_aimskill_order_filter_3th 0.05
355 set bot_ai_aimskill_order_filter_4th 0.25
356 set bot_ai_aimskill_order_filter_5th 0.3
357 set bot_ai_custom_weapon_priority_distances "200 1000" // Define close and far distances in any order, the bots will detect middle distances automatically. 
358 set bot_ai_custom_weapon_priority_far   "11 7 15 14 4 5 8 13 6 1 3 9 2" // Desired weapons in any order. Up to the max ammount of weapons available in the system 
359 set bot_ai_custom_weapon_priority_mid   "11 9 4 5 3 7 15 14 6 13 8 2 1" // same as previous 
360 set bot_ai_custom_weapon_priority_close "11 3 9 13 14 8 6 4 2 5 7 15 1" // same as previous
361 set bot_ai_weapon_combo 1 // Enable weapon combos 
362 set bot_ai_weapon_combo_threshold 0.3 // Try to make a combo N seconds after the last attack
363 set bot_ai_friends_aware_pickup_radius "500"
364
365 // waypoint editor enable
366 set g_waypointeditor 0
367 set bot_ignore_bots 0  "When set, bots don't shoot at other bots"
368 set bot_join_empty 0 "When set, bots also play if no player has joined the server"
369 set bot_vs_human 0 "Bots and humans play in different teams when set. positive values to make an all-bot blue team, set to negative values to make an all-bot red team, the absolute value is the ratio bots vs humans (1 for equal count)"
370
371 alias g_waypointeditor_spawn "impulse 103"
372 alias g_waypointeditor_remove "impulse 104"
373 alias g_waypointeditor_relinkall "impulse 105"
374 alias g_waypointeditor_saveall "impulse 106"
375
376 locs_enable 0
377 pausable 0
378 set g_antilag 2 "AntiLag (0 = no AntiLag, 1 = verified client side hit scan, 2 = server side hit scan in the past, 3 = unverified client side hit scan)"
379 set g_shootfromeye 0
380 set g_shootfromcenter 0
381 set g_weapon_stay 0
382 set g_powerup_superhealth 1
383 set g_powerup_strength 1
384 set g_powerup_shield 1
385 set g_use_ammunition 1
386 set g_pickup_items 1
387 set g_minstagib 0               // enable minstagib
388 set g_minstagib_extralives 2    // how many extra lives you will get per powerup
389 set g_minstagib_ammo_start 10   // starting ammo
390 set g_minstagib_ammo_drop 5     // how much ammo you'll get for weapons or cells
391 set g_minstagib_invis_alpha 0.05
392 set g_minstagib_speed_jumpheight 1.8
393 set g_minstagib_speed_moverate 1.25
394 set g_vampire 0
395 set g_weaponarena "0" // put in a list of weapons to enable a weapon arena mode, or try "all" or "most"
396 set g_shocknex 0
397 set g_laserguided_missile 0
398 set g_midair 0
399 set g_midair_shieldtime 0.3
400 set g_spawnshieldtime 0
401 set g_spawnsound 1
402 set g_spawnpoints_autodrop 0
403 set g_spawnpoints_auto_move_out_of_solid 0
404 set g_forced_respawn 0
405 set g_fullbrightplayers 0
406 set g_fullbrightitems 0
407 set g_casings 2
408 set g_norecoil 0
409 set g_throughfloor 1
410 set g_maplist_mostrecent ""
411 seta g_maplist_mostrecent_count 3 // number of most recent maps that are blocked from being played again
412 seta g_maplist "aggressor aneurysm basement basementctf bleach bloodprison bloodprisonctf bluesky darkzone dieselpower dismal downer evilspace farewell final_rage reslimed ruiner runningman_1on1remix runningman runningmanctf silvercity skyway slimepit soylent starship stormkeep strength toxic warfare"
413 seta g_maplist_index 0 // this is used internally for saving position in maplist cycle
414 seta g_maplist_selectrandom 0 // if 1, a random map will be chosen as next map - DEPRECATED in favor of g_maplist_shuffle
415 seta g_maplist_shuffle 1 // new randomization method: like selectrandom, but avoid playing the same maps in short succession. This works by taking out the first element and inserting it into g_maplist with a bias to the end of the list.
416 // timeout for kill credit when your damage knocks someone into a death trap
417 set g_maplist_check_waypoints 0 // when 1, maps are skipped if there currently are bots, but the map has no waypoints
418 set g_maxpushtime 8.0
419
420 set g_cloaked 0
421 set g_player_alpha 1
422 set g_player_brightness 0 // set to 2 for brighter players
423 seta g_balance_cloaked_alpha 0.25
424
425 set welcome_message_time                8
426
427 alias clearmap  "disconnect"
428
429 set g_grappling_hook 0
430 set g_balance_grapplehook_health 130
431 exec newhook.cfg
432
433 // this means that timelimit can be overidden globally and fraglimit can be overidden for each game mode: DM/TDM, Domination, CTF, and Runematch.
434 seta timelimit_override -1 "Time limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)"
435 seta fraglimit_override -1 "Frag limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)"
436 seta capturelimit_override -1 "Capture limit limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)"
437 seta g_ctf_capture_limit -1 "CTF capture limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)"
438 seta g_domination_point_limit -1 "Domination point limit limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)"
439 seta g_runematch_point_limit -1 "Runematch point limit limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)"
440 seta g_keyhunt_point_limit -1 "Keyhunt point limit limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)"
441 seta g_race_laps_limit -1 "Race laps limit limit overriding the mapinfo specified one (use 0 to play without limit, and -1 to use the mapinfo's limit)"
442
443 seta g_ctf_win_mode 0 // 0: captures only, 1: captures, then points, 2: points only
444 seta g_ctf_ignore_frags 0 // 1: regular frags give no points
445
446 // 50% of the spawns shall be far away from any players
447 set g_spawn_furthest 0.5
448 // respawn delay
449 set g_respawn_delay 2
450 set g_respawn_waves 0
451 // when variables are set to 0, they take over the global setting...
452 // to force disable delay or waves, set them to 0.125
453 set g_ctf_respawn_delay 0
454 set g_ctf_respawn_waves 0
455 set g_dm_respawn_delay 0
456 set g_dm_respawn_waves 0
457 set g_dom_respawn_delay 0
458 set g_dom_respawn_waves 0
459 set g_lms_respawn_delay 0
460 set g_lms_respawn_waves 0
461 set g_rune_respawn_delay 0
462 set g_rune_respawn_waves 0
463 set g_tdm_respawn_delay 0
464 set g_tdm_respawn_waves 0
465 // honor g_respawn_mapsettings_delay and g_respawn_mapsettings_waves
466 set g_respawn_mapsettings 1
467
468 // maximum overtime
469 seta timelimit_maxovertime 5
470
471 // common team values
472 set  g_tdm                              0
473
474 seta teamplay_default                   4       // default teamplay setting in team games
475   // 1 = no friendly fire, self damage
476   // 2 = friendly fire and self damage enabled
477   // 3 = no friendly fire, but self damage enabled
478   // 4 = obey the following four cvars
479 seta g_mirrordamage 0.3              // for teamplay 4: mirror damage factor
480 seta g_friendlyfire 0.1              // for teamplay 4: fiendly fire factor
481 seta g_teamdamage_threshold  50      // for teamplay 4: threshold over which to apply mirror damage
482 seta g_teamdamage_resetspeed 30      // for teamplay 4: how fast player's teamdamage count decreases
483
484 set deathmatch_force_teamplay           0       "Always play TDM instead of DM"
485 seta g_balance_teams                    0       // automatically balance out players entering instead of asking them for their preferred team
486 seta g_balance_teams_force              0       // automatically balance out teams when players move or disconnect
487 seta g_balance_teams_prevent_imbalance  0       // prevent players from changing to larger teams
488 seta g_tdm_teams                        2       // how many teams are in team deathmatch
489 set g_changeteam_banned                 0       // not allowed to change team
490 set g_changeteam_fragtransfer           0       // % of frags you get to keep when you change teams (rounded down)
491
492 // dm
493 set g_dm 1
494 set gamecfg 1 // deathmatch
495
496 // ctf
497 set g_ctf 0
498 set g_ctf_flag_returntime 30
499 set g_ctf_flagcarrier_selfdamage 1
500 set g_ctf_flagcarrier_selfforce 1
501 set g_ctf_fullbrightflags 0
502 set g_ctf_dynamiclights 0
503 set g_ctf_allow_drop 1 // dropping allows circumventing carrierkill score, so enable this with care!
504 set g_ctf_reverse 0 // when 1, bases/flags are switched :P you have to capture your OWN flag by bringing it to the ENEMY's
505 set g_balance_ctf_delay_collect 1.0
506 set g_balance_ctf_damageforcescale 1
507
508 set g_ctf_shield_max_ratio 0 // shield at most 0% of a team from the enemy flag (try: 0.4 for 40%)
509 set g_ctf_shield_min_negscore 20 // shield the player from the flag if he's got -20 points or less
510 set g_ctf_shield_force 100 // push force of the shield
511                                                
512 exec ctfscoring-div0.cfg
513
514 // runematch
515 set g_runematch                                         0
516 set g_runematch_pointrate                               5
517 set g_runematch_pointamt                                        1
518 set g_runematch_shuffletime                             30 // how often runes change position
519 set g_runematch_respawntime                             15 // how soon after being dropped to respawn
520 set g_runematch_frags_killedby_runeholder               4
521 set g_runematch_frags_killed_runeholder                 5
522 set g_runematch_frags_norune                            0
523 set g_runematch_drop_runes_max                          2 // only drop up to 2 runes, the rest should respawn
524 set g_runematch_allow_same                              0 // allow matching rune-curse pairs
525 set g_runematch_rune_alpha                              0.78
526 set g_runematch_rune_effects                            544 // EF_ADDITIVE + EF_FULLBRIGHT
527 set g_runematch_rune_glow_size                          0
528 set g_runematch_rune_glow_color                         0
529 set g_runematch_rune_color_strength                     1.0 //1.5
530 // strength/weakness
531 set g_balance_rune_strength_damage                      2.0 //1.5
532 set g_balance_rune_strength_force                       1.5
533 set g_balance_curse_weak_damage                         0.5 //0.6
534 set g_balance_curse_weak_force                          0.6
535 set g_balance_rune_strength_combo_damage        0.9
536 set g_balance_rune_strength_combo_force                 1.0
537 // defense/vulner
538 set g_balance_rune_defense_takedamage                   0.5
539 set g_balance_curse_vulner_takedamage                   2.0
540 set g_balance_rune_defense_combo_takedamage             1.0
541 // vampire/empathy
542 set g_balance_rune_vampire_absorb                       0.4
543 set g_balance_curse_empathy_takedamage                  -0.4
544 set g_balance_rune_vampire_combo_absorb                 -0.1
545 set g_balance_rune_vampire_maxhealth                    500
546 set g_balance_curse_empathy_minhealth                   20
547 set g_balance_rune_vampire_combo_minhealth              40
548 // regen/venom
549 set g_balance_rune_regen_hpmod                          1.75
550 set g_balance_curse_venom_hpmod                         0.6
551 set g_balance_rune_regen_combo_hpmod                    0.9
552 set g_balance_rune_regen_regenrate                      3.0
553 set g_balance_curse_venom_rotrate                       3.0 //2
554 set g_balance_rune_regen_combo_regenrate        0.5
555 set g_balance_rune_regen_combo_rotrate                  1.5
556 set g_balance_rune_regen_limitmod                       1
557 set g_balance_curse_venom_limitmod                      1
558 set g_balance_rune_regen_combo_limitmod                 1
559 // speed/slow
560 set g_balance_rune_speed_atkrate                                0.66
561 set g_balance_curse_slow_atkrate                                1.5
562 set g_balance_rune_speed_combo_atkrate                  1.2
563 set g_balance_rune_speed_moverate                       1.25
564 set g_balance_curse_slow_moverate                       0.8
565 set g_balance_rune_speed_combo_moverate                 0.9
566 set g_balance_rune_speed_jumpheight                     1.4
567 set g_balance_curse_slow_jumpheight                     1.0
568 set g_balance_rune_speed_combo_jumpheight               1.0
569
570 // domination
571 set g_domination                        0
572 set g_domination_default_teams          2 // default number of teams for maps that aren't domination-specific
573 set g_domination_disable_frags          0 // players can't get frags normally, only get points from kills
574 set g_domination_point_amt              0 // override: how many points to get per ping
575 set g_domination_point_rate             0 // override: how often to give those points
576 set g_domination_point_capturetime      0.1 // how long it takes to capture a point (given no interference)
577 set g_domination_point_glow             0 // domination point glow (warning, slow)
578 //set g_domination_balance_team_points  1 // # of points received is based on team sizes
579
580 // last man standing
581 set g_lms 0
582 set g_lms_lives_override -1
583 set g_lms_start_health 250
584 set g_lms_start_armor 100
585 set g_lms_start_ammo_shells 50
586 set g_lms_start_ammo_nails 150
587 set g_lms_start_ammo_rockets 50
588 set g_lms_start_ammo_cells 50
589 set g_lms_regenerate 0
590 set g_lms_campcheck_interval 10
591 set g_lms_campcheck_message "^1Don't camp!"
592 set g_lms_campcheck_damage 100
593 set g_lms_campcheck_distance 1800
594 set g_lms_last_join 3                   // if g_lms_join_anytime is false, new players can only join if the worst active player has more than (fraglimit - g_lms_last_join) lives
595 set g_lms_join_anytime 1                // if true, new players can join, but get same amount of lives as the worst player
596
597 // arena
598 set g_arena 0
599 set g_arena_maxspawned 2        // maximum number of players to spawn at once (the rest is spectating, waiting for their turn)
600 set g_arena_roundbased 1        // if disabled, the next player will spawn as soon as someone dies
601 set g_arena_warmup 5            // time, newly spawned  players have to prepare themselves in round based matches
602 set g_arena_powerups 0          // enables powerups (superhealth, strength and shield), which are removed by default
603
604 // onslaught
605 set g_onslaught 0
606 set g_onslaught_gen_health 10000
607 set g_onslaught_cp_health 1000
608
609 // assault
610 set g_assault 0
611
612 // race
613 set g_race 0
614 set g_race_qualifying 2
615 // Qualifying uses timelimit, and the one with the best time wins. Fraglimit is nonfunctional then.
616 // Normal race uses fraglimit as a limit for the laps.
617 // Special mode: g_race_qualifying 2. First runs a qualifying, after
618 // ready-restart it turns into a race. TODO not done yet (e.g. timing display)
619 set g_race_teams 0 // when 2, 3, or 4, the race is played as a team game (the team members can add up their laps)
620
621 // server game balance settings
622 set g_balance_armor_regen 0
623 set g_balance_armor_rot 0.1
624 set g_balance_armor_regenlinear 0
625 set g_balance_armor_rotlinear 0
626 set g_balance_armor_stable 100
627 set g_balance_armor_limit 999
628 set g_balance_armor_start 0
629 set g_balance_armor_blockpercent 0.6
630 set g_balance_health_regen 0.1
631 set g_balance_health_rot 0.1
632 set g_balance_health_regenlinear 0
633 set g_balance_health_rotlinear 0
634 set g_balance_health_stable 100
635 set g_balance_health_limit 999
636 set g_balance_health_start 150
637 set g_balance_selfdamagepercent 0.6
638 set g_balance_weaponswitchdelay 0.15
639 // powerup balance settings
640 set g_balance_powerup_invincible_takedamage 0.2
641 set g_balance_powerup_invincible_time 30
642 set g_balance_powerup_strength_damage 3
643 set g_balance_powerup_strength_force 4
644 set g_balance_powerup_strength_time 30
645 set g_balance_powerup_strength_selfdamage 1.5
646 set g_balance_powerup_strength_selfforce 1.5
647
648 // weapon balance settings follow
649 exec weapons.cfg
650
651 set g_balance_falldamage_deadminspeed 150
652 set g_balance_falldamage_minspeed 1400
653 set g_balance_falldamage_factor 0.15
654 set g_balance_falldamage_maxdamage 25
655
656 set g_balance_pause_armor_rot 5
657 set g_balance_pause_health_rot 5
658 set g_balance_pause_health_regen 5
659 set g_balance_pause_armor_rot_spawn 10
660 set g_balance_pause_health_rot_spawn 10
661 set g_balance_pause_health_regen_spawn 0
662
663 set g_footsteps 0 // serverside footstep sounds
664
665 // effects
666 r_picmipsprites 0 // Nexuiz uses sprites that should never be picmipped (team mate, typing, waypoints)
667 r_mipsprites 1
668 r_mipskins 1
669 r_shadow_realtime_world_lightmaps 1
670 seta r_ambient 4
671 cl_decals_fadetime 1
672 cl_decals_time 2
673 seta cl_nogibs 0
674 cl_stainmaps 0
675 cl_particles_smoke 1
676 r_glsl 1
677 r_glsl_deluxemapping 1
678 r_glsl_offsetmapping 0
679 r_glsl_offsetmapping_reliefmapping 0
680 r_glsl_offsetmapping_scale 0.02
681 // execute normal.cfg to make sure that all effect settings are reset
682 alias menu_sync "" // will be re-aliased later
683 exec normal.cfg
684
685 // misc
686 fs_empty_files_in_pack_mark_deletions 1 // makes patches able to delete files
687 scr_conalpha 0.8
688 scr_conbrightness 0.2
689 scr_screenshot_jpeg 1
690 scr_screenshot_jpeg_quality 0.9
691 sv_maxvelocity 1000000000
692 cl_sound_wizardhit ""
693 cl_sound_hknighthit ""
694 cl_sound_tink1 weapons/tink1.wav
695 cl_sound_ric1 weapons/ric1.wav
696 cl_sound_ric2 weapons/ric2.wav
697 cl_sound_ric3 weapons/ric3.wav
698 cl_sound_r_exp3 ""
699 sv_sound_land ""
700 sv_sound_watersplash ""
701
702 seta cl_hitsound 1
703
704 // startmap_dm is used when running with the -listen or -dedicated commandline options
705 alias startmap_dm "set _sv_init 1; map aggressor"
706
707 // aliases:
708 alias +attack2 +button3
709 alias -attack2 -button3
710 alias +zoom +button4
711 alias -zoom -button4
712 alias +crouch +button5
713 alias -crouch -button5
714 alias weapnext "_weapnext_${_supports_weaponpriority}${sbar_hudselector}${cl_weaponpriority_useforcycling}"
715 alias _weapnext_000 "impulse 10"
716 alias _weapnext_001 "impulse 10"
717 alias _weapnext_010 "impulse 10"
718 alias _weapnext_011 "impulse 10"
719 alias _weapnext_100 "impulse 10"
720 alias _weapnext_101 "impulse 15"
721 alias _weapnext_110 "impulse 18"
722 alias _weapnext_111 "impulse 15"
723 alias weaplast "impulse 11"
724 alias weapprev "_weapprev_${_supports_weaponpriority}${sbar_hudselector}${cl_weaponpriority_useforcycling}"
725 alias _weapprev_000 "impulse 12"
726 alias _weapprev_001 "impulse 12"
727 alias _weapprev_010 "impulse 12"
728 alias _weapprev_011 "impulse 12"
729 alias _weapprev_100 "impulse 12"
730 alias _weapprev_101 "impulse 16"
731 alias _weapprev_110 "impulse 19"
732 alias _weapprev_111 "impulse 16"
733 set _supports_weaponpriority 0 // set to 1 by csqc if supported, and to 0 on disconnect
734 alias weapbest "impulse 13"
735
736 alias reload "impulse 20"
737
738 // movement
739 bind w +forward
740 bind a +moveleft
741 bind s +back
742 bind d +moveright
743 bind UPARROW +forward
744 bind LEFTARROW +moveleft
745 bind DOWNARROW +back
746 bind RIGHTARROW +moveright
747 bind SHIFT +crouch
748 bind ENTER +jump
749 bind SPACE +jump
750
751 // weapons
752 bind 1 "impulse 1"
753 bind 2 "impulse 2"
754 bind 3 "impulse 3"
755 bind 4 "impulse 4"
756 bind 5 "impulse 5"
757 bind 6 "impulse 6"
758 bind 7 "impulse 7"
759 bind 8 "impulse 8"
760 bind 9 "impulse 9"
761 bind 0 "impulse 14" // cycles the superweapons
762 bind MOUSE1 +attack
763 bind MOUSE2 +attack2
764 bind MOUSE3 +zoom
765 bind MOUSE4 weaplast
766 bind MOUSE5 +hook
767 bind MWHEELUP weapnext
768 bind MWHEELDOWN weapprev
769 bind r reload
770 bind BACKSPACE dropweapon
771 bind g dropweapon
772 bind f +use
773
774 // misc
775 bind e +hook
776 bind ` toggleconsole
777 bind ~ toggleconsole
778 bind TAB +showscores
779 bind ESCAPE togglemenu
780 bind t messagemode
781 bind y messagemode2
782 bind z messagemode2
783 bind u "+con_chat_maximize"
784 bind i +show_info
785 bind PAUSE pause
786 bind F10 quit
787 bind F11 disconnect
788 bind F12 screenshot
789 bind F4 ready
790 bind m radar
791
792 // Gamepad defaults. Tested with Logitech Rumblepad 2, I hope similar ones works as well.
793 bind JOY1 "+crouch"
794 bind JOY2 "+jump"
795 bind JOY3 "weapprev"
796 bind JOY4 "weapnext"
797 bind JOY5 "+attack2"
798 bind JOY6 "+attack"
799 bind JOY7 "+zoom"
800 bind JOY8 "dropweapon"
801 bind JOY9 "menu_showteamselect"
802 bind JOY10 "+show_info"
803 bind JOY11 "+showscores"
804 bind JOY12 "+con_chat_maximize"
805 set joyadvanced "1"
806 set joyadvaxisr "2"
807 set joyadvaxisx "3"
808 set joyadvaxisy "1"
809 set joyadvaxisz "4"
810 set joysidesensitivity "1.0"
811 set joypitchsensitivity "0.9"
812 set joyyawsensitivity "-1.8"
813 // SDL only
814 set joy_deadzoneforward "0.05"
815 set joy_deadzonepitch "0.05"
816 set joy_deadzoneside "0.05"
817 set joy_deadzoneup "0.05"
818 set joy_deadzoneyaw "0.05"
819 set joy_sensitivitypitch "0.9"
820 set joy_sensitivityyaw "-1.8"
821
822 // team say
823 bind kp_ins messagemode
824 bind kp_del messagemode2
825 bind kp_end "+userbind 1"
826 bind kp_downarrow "+userbind 2"
827 bind kp_pgdn "+userbind 3"
828 bind kp_leftarrow "+userbind 4"
829 bind kp_5 "+userbind 6"
830 bind kp_rightarrow "+userbind 7"
831 bind kp_home "+userbind 9"
832 bind kp_uparrow "+userbind 10"
833 bind kp_pgup "+userbind 11"
834 bind kp_multiply "+userbind 12"
835 bind kp_slash "+userbind 13"
836 bind kp_enter "+userbind 16"
837 bind kp_plus "+userbind 17"
838 bind kp_minus "+userbind 18"
839
840 // these commands can be voted
841 set sv_vote_commands "restart fraglimit chmap gotomap endmatch reducematchtime extendmatchtime allready kick cointoss"
842 set sv_vote_only_commands ""
843 set sv_vote_master_commands "" // maybe add kickban here (but then sv_vote_master 0)
844 set rcon_restricted_commands "restart fraglimit chmap gotomap endmatch reducematchtime extendmatchtime allready kick kickban \"sv_cmd bans\" \"sv_cmd unban\" status \"sv_cmd teamstatus\""
845 // users can call a vote for the above commands
846 set sv_vote_call 1
847 // users can call a vote to become master
848 set sv_vote_master 1
849 // when set, users can use "vdo login (password)" to log in as master
850 set sv_vote_master_password ""
851 // set to 1 to allow to change you vote/mind
852 set sv_vote_change 0
853 // set to 1 to count votes once after timeout or to 0 to count with every vote
854 set sv_vote_singlecount 0
855 // a vote will timeout after this many seconds
856 set sv_vote_timeout 60
857 // a player can not call a vote again for this many seconds
858 set sv_vote_wait 120
859 // which quotient of the PLAYERS constitute a majority? (try: 0.667, 0.75 when using the above)
860 set sv_vote_majority_factor 0.5
861 // which quotient of the VOTERS constitute a majority too? (0 = off, otherwise it must be higher than or equal to sv_vote_majority_factor)
862 set sv_vote_simple_majority_factor 0
863 // note: set these two equal to JUST support simple majorities
864 // when disabled, don't allow game type changes
865 set sv_vote_override_mostrecent 0
866 alias vhelp "cmd vote help"
867 alias vstatus "cmd vote status"
868 alias vcall "cmd vote call $*"
869         alias vmap "vcall gotomap $1"
870 alias vstop "cmd vote stop"
871 alias vmaster "cmd vote master"
872 alias vlogin "cmd vote login $*"
873 alias vdo "cmd vote do $*"
874         alias vdomap "vdo gotomap $1"
875 alias vyes "cmd vote yes"
876 alias vno "cmd vote no"
877 alias vdontcare "cmd vote dontcare"
878 alias vabstain "cmd vote abstain"
879 alias lsmaps "cmd lsmaps" // lists all maps on server (for vmap, suggestmap)
880 bind F1 vyes
881 bind F2 vno
882
883 //used for spectate/observer mode
884 alias spec "cmd spectate"
885 bind F3 spec
886
887 // NixNex (No-Items x Nexuiz) - at each time, everyone uses the same weapon,
888 // and in regular intervals, this weapon is cycled
889 set g_nixnex 0
890 set g_nixnex_with_laser 0
891 // TODO these need balancing:
892 set g_balance_nixnex_roundtime 25
893 set g_balance_nixnex_incrtime 1.6
894 // initial ammo
895 set g_balance_nixnex_ammo_shells 15
896 set g_balance_nixnex_ammo_nails 45
897 set g_balance_nixnex_ammo_rockets 15
898 set g_balance_nixnex_ammo_cells 15
899 // ammo increment per second
900 set g_balance_nixnex_ammoincr_shells 2
901 set g_balance_nixnex_ammoincr_nails 6
902 set g_balance_nixnex_ammoincr_rockets 2
903 set g_balance_nixnex_ammoincr_cells 2
904
905 // score log
906 set sv_logscores_console 0              // print scores to server console
907 set sv_logscores_file 0                 // print scores to file
908 set sv_logscores_filename scores.log    // filename
909 set sv_logscores_bots 0                 // exclude bots by default
910
911 // spam (frag/capture) log
912 set sv_eventlog 0 // the master switch for efficiency reasons
913 set sv_eventlog_console 1
914 set sv_eventlog_files 0
915 set sv_eventlog_files_timestamps 1
916 seta sv_eventlog_files_counter 0
917 set sv_eventlog_files_nameprefix nexuiz
918 set sv_eventlog_files_namesuffix .log
919
920 set nextmap "" // override the maplist when switching to the next map
921 set lastlevel ""
922 set quit_when_empty 0 // set to 1, then the server exits when the next level would start but is empty
923 set quit_and_redirect "" // set to an IP to redirect all players at the end of the match to another server. Set to "self" to let all players reconnect at the end of the match (use it to make seamless engine updates)
924
925 // singleplayer campaign
926 set g_campaign 0
927 seta g_campaign_name ""
928 seta g_campaign_index 0
929 set g_campaign_skill 0
930
931 alias singleplayer_start "g_campaign_index 0; set scmenu_campaign_goto 0"
932 alias singleplayer_continue "set scmenu_campaign_goto -1"
933 alias singleplayer_levellist "set scmenu_campaign_dump 1; togglemenu; wait; togglemenu"
934
935 // Green's fullbright skins
936 alias player_fbskin_green "playermodel models/player/nexus.zym; playerskin 6; color 3 3"
937 alias player_fbskin_red "playermodel models/player/nexus.zym; playerskin 6; color 4 4"
938 alias player_fbskin_orange "playermodel models/player/nexus.zym; playerskin 6; color 14 14"
939 alias player_fbskin_off "playermodel models/player/nexus.zym; playerskin 0"
940 alias sv_defaultplayer_fbskin_green "g_fullbrightplayers 1; sv_defaultcharacter 1; sv_defaultplayermodel models/player/nexus.zym; sv_defaultplayerskin 6; sv_defaultplayercolors 51"
941 alias sv_defaultplayer_fbskin_red "g_fullbrightplayers 1; sv_defaultcharacter 1; sv_defaultplayermodel models/player/nexus.zym; sv_defaultplayerskin 6; sv_defaultplayercolors 68"
942 alias sv_defaultplayer_fbskin_orange "g_fullbrightplayers 1; sv_defaultcharacter 1; sv_defaultplayermodel models/player/nexus.zym; sv_defaultplayerskin 6; sv_defaultplayercolors 238"
943 alias sv_defaultplayer_fbskin_off "g_fullbrightplayers 0; sv_defaultcharacter 0; sv_defaultplayerskin 0; sv_defaultplayercolors \"\""
944
945 seta sv_servermodelsonly 1
946
947 cl_curl_enabled 1
948 cl_curl_maxspeed 300
949 sv_curl_defaulturl "http://www.nexuiz.com/contentdownload/getmap.php?file="
950
951 set sv_motd ""
952
953 seta cl_shownames 1 // show player names pointed to (0: never, 1: teamplay only, 2: always)
954 set sv_allow_shownames 1
955
956 net_banlist ""
957 seta _alientrap_net_banlist ""
958
959 set g_waypoints_for_items 1 // make waypoints out of items,  values: 0 = never, 1 = unless the mapper prevents it by worldspawn.spawnflags & 1, 2 = always
960
961 set g_projectiles_newton_style 2
962 // possible values:
963 //   0: absolute velocity projectiles (like Quake)
964 //   1: relative velocity projectiles, "Newtonian" (like Tribes 2)
965 //   2: relative velocity projectiles, but aim is precorrected so projectiles hit the crosshair (note: strafe rockets then are SLOWER than ones shot while standing, happens in 1 too when aiming correctly which is hard)
966 //   3: absolute velocity + player velocity component in shot direction (note: does NOT yield the right relative velocity, but may be good enough, but it is somewhat prone to sniper rockets)
967 //   4: just add the player velocity length to the absolute velocity (tZork's sniper rockets)
968
969 seta g_maplist_votable 6
970 seta g_maplist_votable_keeptwotime 15
971 seta g_maplist_votable_timeout 30 // note: must be below 50 seconds!
972 seta g_maplist_votable_suggestions 2
973 seta g_maplist_votable_suggestions_override_mostrecent 0
974 seta g_maplist_votable_nodetail 1 // nodetail only shows total count instead of all vote counts per map, so votes don't influence others that much
975 seta g_maplist_votable_abstain 0 // when 1, you can abstain from your vote
976 seta g_maplist_votable_screenshot_dir "maps" // where to look for map screenshots
977 seta g_maplist_textonly 0 // use old style centerprint
978 alias suggestmap "cmd suggestmap $1"
979
980 set g_chat_flood_spl 3            // seconds between lines to not count as flooding
981 set g_chat_flood_lmax 2           // maximum number of lines per chat message at once
982 set g_chat_flood_burst 2          // allow bursts of so many chat lines
983 set g_chat_flood_spl_team 1       // \
984 set g_chat_flood_lmax_team 2      //  } same for say_team
985 set g_chat_flood_burst_team 2     // /
986 set g_chat_flood_notify_flooder 1 // when 0, the flooder still can see his own message
987 set g_chat_teamcolors 0           // colorize nicknames in team color for chat
988 set g_voice_flood_spv 4           // seconds between voices to not count as flooding
989 set g_voice_flood_spv_team 2      //  } same for say_team
990
991 set g_waypointsprite_normdistance 512
992 set g_waypointsprite_minscale 1
993 set g_waypointsprite_minalpha 0.4
994 set g_waypointsprite_distancealphaexponent 2
995 set g_waypointsprite_timealphaexponent 1
996 set g_waypointsprite_deployed_lifetime 10
997 set g_waypointsprite_deadlifetime 1
998 set g_waypointsprite_limitedrange 5120
999 set g_waypointsprite_stuffbinds 0
1000 set g_waypointsprite_scale 1
1001 alias "g_waypointsprite_personal"       "impulse 30"
1002 alias "g_waypointsprite_personal_p"     "impulse 31"
1003 alias "g_waypointsprite_personal_d"     "impulse 32"
1004 alias "g_waypointsprite_team_helpme"    "impulse 33"
1005 alias "g_waypointsprite_team_here"      "impulse 34"
1006 alias "g_waypointsprite_team_here_p"    "impulse 35"
1007 alias "g_waypointsprite_team_here_d"    "impulse 36"
1008 alias "g_waypointsprite_team_danger"    "impulse 37"
1009 alias "g_waypointsprite_team_danger_p"  "impulse 38"
1010 alias "g_waypointsprite_team_danger_d"  "impulse 39"
1011 alias "g_waypointsprite_clear_personal" "impulse 47"
1012 alias "g_waypointsprite_clear"          "impulse 48"
1013 alias "g_waypointsprite_toggle"         "impulse 49"
1014 // key for that?
1015 seta cl_hidewaypoints 0
1016
1017 // command extension
1018 alias qc_cmd               "sv_cmd $*" // menu QC will override this to menu_cmd
1019 alias adminmsg             "sv_cmd adminmsg $*"
1020 alias teamstatus           "cmd teamstatus; sv_cmd teamstatus" // yes, it is broken on listen servers that way, but well, who cares :P
1021 alias printstats           "sv_cmd printstats" // print status on demand
1022 alias g_maplist_add        "qc_cmd maplist add $*"
1023 alias g_maplist_remove     "qc_cmd maplist remove $*"
1024 alias g_maplist_putfirst   "qc_cmd maplist remove $* ; qc_cmd maplist add $*"
1025 alias g_maplist_shufflenow "qc_cmd maplist shuffle"
1026 alias gametype             "sv_cmd gametype $*"
1027
1028 // key hunt
1029 set g_keyhunt 0
1030 set g_balance_keyhunt_delay_return 60
1031 set g_balance_keyhunt_delay_round 5
1032 set g_balance_keyhunt_delay_tracking 10
1033 set g_balance_keyhunt_delay_fadeout 2
1034 set g_balance_keyhunt_delay_collect 1.5
1035 set g_balance_keyhunt_delay_drop 0.4
1036 set g_balance_keyhunt_maxdist 150
1037 set g_balance_keyhunt_score_collect 3
1038 set g_balance_keyhunt_score_carrierfrag 2
1039 set g_balance_keyhunt_score_capture 100
1040 set g_balance_keyhunt_score_push 60
1041 set g_balance_keyhunt_score_destroyed 50
1042 set g_balance_keyhunt_score_destroyed_ownfactor 1
1043 set g_balance_keyhunt_dropvelocity 300
1044 set g_balance_keyhunt_throwvelocity 400
1045 set g_balance_keyhunt_protecttime 0.8
1046 set g_balance_keyhunt_damageforcescale 1
1047 set g_keyhunt_teams_override 0
1048 set g_keyhunt_teams 0
1049
1050 // so it can be stuffcmd-ed still
1051 set cl_gravity 800 // but ignored anyway
1052
1053 set g_ban_default_bantime 5400 // 90 minutes
1054 set g_ban_default_masksize 3   // whole 255.255.255.0 networks (set to 4 for single IPs)
1055 set g_banned_list ""           // format: 1 ip remainingtime ip remainingtime ...
1056 alias bans "sv_cmd bans"
1057 alias ban "sv_cmd ban $*"         // usage: ban address(maybe incomplete, like 1.2.3) bantime(seconds)
1058 alias kickban "sv_cmd kickban $*" // usage: kickban # playerno bantime(seconds) masksize(bytes)
1059 alias unban "sv_cmd unban $*"     // usage: unban 3 (number from bans)
1060
1061 r_labelsprites_scale 0.40625 // labels sprites get displayed at 0.5x from 640x480 to 1280x1024, and at 1x from 1600x1200 onwards
1062
1063 // settemp subsystem. Do not touch. Usage: settemp variable value, next map resets it.
1064 set settemp_list 0
1065 set settemp_var _settemp_x
1066 alias settemp "settemp_list \"1 $1 $settemp_var $settemp_list\"; set $settemp_var \"${$1}\"; settemp_var ${settemp_var}x; $1 \"$2\""
1067 alias settemp_restore "_settemp_restore_${settemp_list asis}"
1068 alias _settemp_restore_0 "set settemp_var _settemp_x; set settemp_list 0"
1069 alias _settemp_restore_1 "$1 \"${$2}\"; _settemp_restore_${3- asis}"
1070
1071 // usercommands. These can be edited and bound by the menu.
1072 seta "userbind1_press" "say_team quad soon";  seta "userbind1_release" "";  seta "userbind1_description" "team: quad soon"
1073 seta "userbind2_press" "say_team free item %x^7 (l:%y^7); g_waypointsprite_team_here_p";  seta "userbind2_release" "";  seta "userbind2_description" "team: free item, icon"
1074 seta "userbind3_press" "say_team took item (l:%l^7); g_waypointsprite_team_here";  seta "userbind3_release" "";  seta "userbind3_description" "team: took item, icon"
1075 seta "userbind4_press" "say_team negative";  seta "userbind4_release" "";  seta "userbind4_description" "team: negative"
1076 seta "userbind5_press" "say_team positive";  seta "userbind5_release" "";  seta "userbind5_description" "team: positive"
1077 seta "userbind6_press" "say_team need help (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_helpme; cmd voice needhelp";  seta "userbind6_release" "";  seta "userbind6_description" "team: need help, icon"
1078 seta "userbind7_press" "say_team enemy seen (l:%y^7); g_waypointsprite_team_danger_p; cmd voice incoming";  seta "userbind7_release" "";  seta "userbind7_description" "team: enemy seen, icon"
1079 seta "userbind8_press" "say_team flag seen (l:%y^7); g_waypointsprite_team_here_p; cmd voice seenflag";  seta "userbind8_release" "";  seta "userbind8_description" "team: flag seen, icon"
1080 seta "userbind9_press" "say_team defending (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind9_release" "";  seta "userbind9_description" "team: defending, icon"
1081 seta "userbind10_press" "say_team roaming (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind10_release" "";  seta "userbind10_description" "team: roaming, icon"
1082 seta "userbind11_press" "say_team attacking (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind11_release" "";  seta "userbind11_description" "team: attacking, icon"
1083 seta "userbind12_press" "say_team killed flagcarrier (l:%y^7); g_waypointsprite_team_p"; seta "userbind12_release" ""; seta "userbind12_description" "team: killed flag, icon"
1084 seta "userbind13_press" "say_team dropped flag (l:%d^7); g_waypointsprite_team_here_d"; seta "userbind13_release" ""; seta "userbind13_description" "team: dropped flag, icon"
1085 seta "userbind14_press" "say_team dropped gun %w (l:%l^7); g_waypointsprite_team_here; wait; dropweapon"; seta "userbind14_release" ""; seta "userbind14_description" "team: drop gun, icon"
1086 seta "userbind15_press" "say_team dropped flag/key %w (l:%l^7); g_waypointsprite_team_here; wait; +use"; seta "userbind15_release" "-use"; seta "userbind15_description" "team: drop flag/key, icon"
1087 seta "userbind16_press" "say :-) / nice one"; seta "userbind16_release" ""; seta "userbind16_description" "chat: nice one"
1088 seta "userbind17_press" "say good game"; seta "userbind17_release" ""; seta "userbind17_description" "chat: good game"
1089 seta "userbind18_press" "say hi / good luck and have fun"; seta "userbind18_release" ""; seta "userbind18_description" "chat: hi / good luck"
1090 seta "userbind19_press" "+showscores; +con_chat_maximize"; seta "userbind19_release" "-showscores; -con_chat_maximize"; seta "userbind19_description" "scoreboard / chat history"
1091 seta "userbind20_press" "toggle cl_capturevideo"; seta "userbind20_release" ""; seta "userbind20_description" "toggle recording .avi"
1092 seta "userbind21_press" "toggle vid_fullscreen; vid_restart"; seta "userbind21_release" ""; seta "userbind21_description" "toggle fullscreen"
1093 seta "userbind22_press" ""; seta "userbind22_release" ""; seta "userbind22_description" ""
1094 seta "userbind23_press" ""; seta "userbind23_release" ""; seta "userbind23_description" ""
1095 seta "userbind24_press" ""; seta "userbind24_release" ""; seta "userbind24_description" ""
1096 seta "userbind25_press" ""; seta "userbind25_release" ""; seta "userbind25_description" ""
1097 seta "userbind26_press" ""; seta "userbind26_release" ""; seta "userbind26_description" ""
1098 seta "userbind27_press" ""; seta "userbind27_release" ""; seta "userbind27_description" ""
1099 seta "userbind28_press" ""; seta "userbind28_release" ""; seta "userbind28_description" ""
1100 seta "userbind29_press" ""; seta "userbind29_release" ""; seta "userbind29_description" ""
1101 seta "userbind30_press" ""; seta "userbind30_release" ""; seta "userbind30_description" ""
1102 seta "userbind31_press" ""; seta "userbind31_release" ""; seta "userbind31_description" ""
1103 seta "userbind32_press" ""; seta "userbind32_release" ""; seta "userbind32_description" ""
1104 alias _userbind_call "${$1}"
1105 alias +userbind "_userbind_call userbind${1}_press"
1106 alias -userbind "_userbind_call userbind${1}_release"
1107
1108 seta menu_skin "wickedz"
1109 set menu_slowmo 1
1110
1111 // loadfont console     gfx/vera-mono
1112 // loadfont sbar        gfx/vera-mono
1113 loadfont notify      gfx/vera-sans
1114 loadfont chat        gfx/vera-sans
1115 // loadfont centerprint gfx/vera-mono
1116 // loadfont infobar     gfx/vera-mono
1117 loadfont user0       gfx/vera-sans
1118 r_textbrightness 0.2
1119 r_textcontrast 0.8
1120 r_textshadow 1
1121
1122 // good settings for these fonts
1123 con_chat 5
1124 con_chatpos -7
1125 con_chatsize 10
1126 con_chatwidth 0.6
1127 con_notifysize 10
1128 sbar_alpha_bg 0.4
1129 sbar_flagstatus_pos 115
1130
1131 // for menu server list (eventually make them have engine support?)
1132 seta menu_slist_showfull 1
1133 seta menu_slist_showempty 1
1134 set menu_slist_modfilter "!havoc"
1135
1136 // for menu weapon arena
1137 set menu_weaponarena_with_laser 0
1138
1139 // Q3A
1140 set sv_q3acompat_machineshotgunswap 0 // settemp this in mapinfo for instant Q3A map conversion
1141
1142 seta menu_maxplayers 8 // maxplayers value when the menu starts a game
1143
1144 // useful vote aliases
1145 set timelimit_increment 5
1146 set timelimit_decrement 5
1147 set timelimit_min 5
1148 set timelimit_max 60
1149 alias extendmatchtime "sv_cmd rpn /timelimit timelimit timelimit_max timelimit timelimit_increment add bound def"
1150 alias reducematchtime "sv_cmd rpn /timelimit timelimit timelimit_decrement sub timelimit_min timelimit bound def"
1151 alias endmatch "timelimit -1"
1152
1153 // useful keybind to maximize the chat area temporarily
1154 set _backup_con_chatvars_set 0
1155 alias _restore_con_chatvars_0 ""
1156 alias _restore_con_chatvars_1 "set _backup_con_chatvars_set 0; con_chatpos $_backup_con_chatpos; con_chat $_backup_con_chat; con_notify $_backup_con_notify; con_chattime $_backup_con_chattime; cl_deathscoreboard $_backup_cl_deathscoreboard; sbar_flagstatus_right $_backup_sbar_flagstatus_right; scr_centertime $_backup_scr_centertime;r_track_sprites $_backup_r_track_sprites"
1157 alias _restore_con_chatvars "_restore_con_chatvars_$_backup_con_chatvars_set"
1158 alias _backup_con_chatvars_0 "set _backup_con_chatvars_set 1; set _backup_con_chatpos $con_chatpos; set _backup_con_chat $con_chat; set _backup_con_notify $con_notify; set _backup_con_chattime $con_chattime; set _backup_cl_deathscoreboard $cl_deathscoreboard; set _backup_sbar_flagstatus_right $sbar_flagstatus_right; set _backup_scr_centertime $scr_centertime;set _backup_r_track_sprites $r_track_sprites"
1159 alias _backup_con_chatvars_1 ""
1160 alias _backup_con_chatvars "_backup_con_chatvars_$_backup_con_chatvars_set"
1161 alias +con_chat_maximize "_backup_con_chatvars; con_chatpos -7; con_chat 100; con_notify 0; con_chattime 3600; cl_deathscoreboard 0; sbar_flagstatus_right 1; scr_centertime 0; r_track_sprites 0"
1162 alias -con_chat_maximize "_restore_con_chatvars"
1163
1164 // tab completion
1165 set con_completion_playdemo *.dem
1166 set con_completion_timedemo *.dem
1167 set con_completion_ply      *.dem
1168 set con_completion_tdem     *.dem
1169 set con_completion_exec     *.cfg
1170 set con_completion_chmap    map
1171 set con_completion_gotomap  map
1172 set con_completion_vmap     map
1173 set con_completion_vdomap   map
1174
1175 // these non-saved engine cvars shall be savedG
1176 seta cl_port $cl_port
1177 seta r_showsurfaces $r_showsurfaces
1178 seta r_ambient $r_ambient
1179 seta skill $skill
1180 seta gl_finish $gl_finish
1181 seta v_kicktime $v_kicktime
1182 seta r_subdivisions_tolerance $r_subdivisions_tolerance
1183
1184 // ticrate
1185 // engine default is too CPU intensive on 16p servers, so let's go back
1186 sys_ticrate 0.05
1187
1188 // delay for "kill" to prevent abuse
1189 set g_balance_kill_delay 5
1190
1191 // this feature is currently buggy in the engine (it appears to PREVENT any dropping in lots of maps, leading to weirdly aligned entities, and in some cases even CAUSES them to drop through solid, like in facing worlds nex)
1192 sv_gameplayfix_droptofloorstartsolid 0
1193
1194 gl_texturecompression_color 1
1195 gl_texturecompression_gloss 1
1196 gl_texturecompression_glow 1
1197 gl_texturecompression_lightcubemaps 1
1198 gl_texturecompression_q3bsplightmaps 0
1199 gl_texturecompression_sky 1
1200
1201 set menu_mouse_absolute 0 // TODO make this seta if the engine understands this right
1202 seta menu_mouse_speed 1
1203 set menu_use_default_hostname 1
1204 alias sethostname "set menu_use_default_hostname 0; hostname $*"
1205
1206 // force fog for people who turn it off in game (set this to like 5 if you suspect people are "cheating" that way)
1207 set sv_foginterval 0
1208
1209 // Audio track names (for old-style "cd loop NUMBER" usage)
1210 cd remap digital-pursuit breakdown-easy brainsukker chaos-fog infight neuronal-diving subcities thru-the-mirror calling-bogus beast-of-insanity
1211 set sv_intermission_cdtrack brainsukker
1212 set menu_cdtrack digital-pursuit
1213
1214 // maxidle (in seconds): kick players idle for more than that amount of time
1215 set sv_maxidle 0
1216 // when sv_maxidle is not 0, assume spectators are idle too
1217 set sv_maxidle_spectatorsareidle 0
1218
1219 // CTF capture limit placeholder cvar
1220 set capturelimit 0
1221
1222 // sbar: font size
1223 seta sbar_fontsize 11
1224 seta sbar_width 480
1225 alias sbar_font "loadfont user1 $*; loadfont user2 ${*}-big; sbar_columns_set"
1226 seta sbar_columns default
1227 sbar_font gfx/vera-sans
1228 seta sbar_showbinds 1 // 0 disables display of keybinds, 1 enables it, 2 displays longer strings
1229 seta sbar_showbinds_limit 2 // display so many found keybinds, 0 for unlimited
1230
1231 // these entities are not referenced by anything directly, they just represent
1232 // teams and are found by find() when needed
1233 prvm_leaktest_ignore_classnames "ctf_team dom_team tdm_team"
1234
1235 sv_allowdownloads_inarchive 1 // for csprogs.dat
1236
1237 set g_jump_grunt 0 // Do you make a grunting noise every time you jump? Is it the same grunting noise every time?
1238
1239 alias allready "sv_cmd allready"
1240
1241 // note: these cvars use weapon NUMBERS. Use the menu to edit this cvar, or look the numbers up in qcsrc/common/constants.qh.
1242 seta cl_weaponpriority "14 13 9 8 11 7 6 5 4 15 3 2 1 10 12" // default porto and hook as LOW priority, use the weapon key numbers otherwise
1243 seta cl_weaponpriority_useforcycling 0
1244 // impulse 200, 210, 220:
1245 seta cl_weaponpriority0 "14 9 8 4"    // explosives    (RL Hagar Mortar)
1246 // impulse 201, 211, 221:
1247 seta cl_weaponpriority1 "13 7 6 5 1"  // energy        (Nex Crylink Electro Laser)
1248 seta cl_weaponpriority2 "15 11 7 3"   // hitscan exact (Nex MG)
1249 seta cl_weaponpriority3 "15 11 7 3 2" // hitscan all   (Nex MG Shotgun)
1250 seta cl_weaponpriority4 "13 8 6 5 2"  // spam          (Hagar Crylink Electro Shotgun)
1251 seta cl_weaponpriority5 "1 12 10"     // for moving    (Laser Hook Port-O-Launch)
1252 seta cl_weaponpriority6 ""
1253 seta cl_weaponpriority7 ""
1254 seta cl_weaponpriority8 ""
1255 // impulse 209, 219, 229:
1256 seta cl_weaponpriority9 ""
1257
1258 // NOTE: this only replaces weapons on the map
1259 // use g_start_weapon_* to also replace the on-startup weapons!
1260 // example: g_weaponreplace_nex "nex minstanex", then Nexes become MinstaNexes 50% of the times
1261 // set the cvars to "0" to totally disable a weapon
1262 set g_weaponreplace_laser ""
1263 set g_weaponreplace_shotgun ""
1264 set g_weaponreplace_uzi ""
1265 set g_weaponreplace_grenadelauncher ""
1266 set g_weaponreplace_electro ""
1267 set g_weaponreplace_crylink ""
1268 set g_weaponreplace_nex ""
1269 set g_weaponreplace_hagar ""
1270 set g_weaponreplace_rocketlauncher ""
1271 set g_weaponreplace_porto ""
1272 set g_weaponreplace_minstanex ""
1273 set g_weaponreplace_hook ""
1274 set g_weaponreplace_seeker ""
1275 set g_weaponreplace_hlac ""
1276 set g_weaponreplace_campingrifle ""
1277
1278 seta sv_status_privacy 1 // hide IP addresses from "status" replies shown to clients
1279
1280 seta cl_teamradar 1
1281 seta cl_teamradar_background_alpha 0.4 // set to -1 to disable
1282 seta cl_teamradar_foreground_alpha 0.8 // alpha of the map
1283 seta cl_teamradar_scale 4096
1284 seta cl_teamradar_rotation 0 // rotation mode: you set what points up. 0 = player, 1 = west, 2 = south, 3 = east, 4 = north
1285 seta cl_teamradar_size "128 128"
1286 seta cl_teamradar_position "0 0" // 1 1 would be lower right corner, 0.5 0.5 the center (ARGH) :P
1287 seta cl_teamradar_zoommode 0 // zoom mode: 0 = zoomed by default, 1 = zoomed when +zoom, 2 = always zoomed, 3 = always zoomed out
1288 alias cl_teamradar_rotate "toggle cl_teamradar_rotation 0 1 2 3 4"
1289
1290 set g_maplist_allow_hidden 1 // allow hidden maps to be, e.g., voted for and in the maplist
1291
1292 set g_start_delay 0 // delay before the game starts, so everyone can join; recommended to set this to like 15 on a public server
1293         if_dedicated set g_start_delay 15
1294
1295 alias ons_map           "cl_cmd radar" // legacy alias
1296 alias radar             "cl_cmd radar"
1297 alias sbar_columns_set  "cl_cmd sbar_columns_set $*"
1298 alias sbar_columns_help "cl_cmd sbar_columns_help $*"
1299
1300 alias _gl_flashblend_update_00 "gl_flashblend 1"
1301 alias _gl_flashblend_update_10 "gl_flashblend 0"
1302 alias _gl_flashblend_update_01 "gl_flashblend 0"
1303 alias _gl_flashblend_update_11 "gl_flashblend 0"
1304 alias gl_flashblend_update "_gl_flashblend_update_$r_shadow_realtime_dlight$r_showsurfaces"
1305
1306 set sv_clones 0 // number of clones a player may make (reset by the "kill" command) a04191b92fbd93aa67214ef7e72d6d2e
1307
1308 set cl_handicap 1 // the higher, the more damage you will receive (client setting)
1309
1310 exec turrets.cfg
1311
1312 // must be at the bottom of this file:
1313 // alias for switching the teamselect menu
1314 alias menu_showteamselect "menu_cmd directmenu TeamSelect"
1315 alias menu_sync "menu_cmd sync"
1316 bind f5 menu_showteamselect
1317
1318 set g_bugrigs 0
1319 set g_bugrigs_planar_movement 1 // BROTRR bug emulation
1320 set g_bugrigs_planar_movement_car_jumping 1 // my own bug
1321 set g_bugrigs_reverse_speeding 1 // BROTRR bug emulation
1322 set g_bugrigs_reverse_spinning 1 // BROTRR bug emulation
1323 set g_bugrigs_reverse_stopping 1 // BROTRR bug emulation
1324 set g_bugrigs_air_steering 1 // NFS bug emulation
1325 set g_bugrigs_angle_smoothing 5 // smooth the car angle a bit, looks nice
1326 set g_bugrigs_friction_floor 50 // units/sec friction on floor
1327 set g_bugrigs_friction_brake 950 // units/sec friction for braking
1328 set g_bugrigs_friction_air 0.00001 // (very small) v <- v - v^2 * g_bugrigs_friction_air
1329 set g_bugrigs_accel 800 // acceleration
1330 set g_bugrigs_speed_ref 400 // reference speed for accel and steer responsiveness
1331 set g_bugrigs_speed_pow 2 // reference power for accel and steer responsiveness
1332 set g_bugrigs_steer 1 // steering amount
1333
1334 set g_touchexplode 0
1335 set g_touchexplode_radius 50
1336 set g_touchexplode_damage 10
1337 set g_touchexplode_edgedamage 0
1338 set g_touchexplode_force 150
1339
1340 sbar_miniscoreboard_size 0 // this mode is broken in current csqc
1341
1342 set g_ban_sync_uri "" // sync using this ban list provider (empty string to disable)
1343 set g_ban_sync_interval 5 // sync every 5 minutes
1344 set g_ban_sync_trusted_servers "" // request ban lists from these nexuiz servers (do not include your own server there, or unbanning may fail)
1345 set g_ban_sync_timeout 45 // time out in seconds for the ban sync requests
1346 set g_ban_sync_trusted_servers_verify 0 // when set to 1, additional bans sent by the servers are ignored, and only bans for the requested IP are used
1347
1348 set g_showweaponspawns 0 // 1: display sprites for weapon spawns found on the map when a weapon key is pressed and the weapon is not available
1349
1350 alias records "cmd records"
1351
1352 // ballistics use physical units, but qu based
1353 //   Quake-Newton: 1 qN  = 1 qu * 1 g / 1 s^2
1354 //   Quake-Joule:  1 qJ  = 1 qN * 1 qu
1355 //   Quake-Pascal: 1 qPa = 1 qN / 1 qu^2
1356
1357 set g_ballistics_materialconstant 1414213562
1358 // unit: qJ / qu^3 (energy needed per volume unit of solid to push/burn away
1359 // parameter: bullet constant: mass / area in g/qu^2
1360 // = mass / (pi/4 * caliber^2)
1361 // with caliber in inches, mass in grams:
1362 // = 1.273239544735163 * mass / caliber^2
1363 // with caliber in inches, mass in grains:
1364 // = 0.082633246453312 * mass / caliber^2
1365
1366 // bullet max travel distance inside solid:
1367 //   0.5 * v^2 * bulletconstant / g_ballistics_materialconstant
1368
1369 // some bullet constants:
1370 //   http://hypertextbook.com/facts/2000/ShantayArmstrong.shtml
1371 //     second bullet: caliber .45, mass 16.2g, bullet constant 101.859163578813
1372 //     third bullet: caliber .338, mass 16.2g, bullet constant 180.5476053421592
1373 //     fourth bullet: caliber .25, mass 2.3g, bullet constant 46.85521524625399
1374 //   http://en.wikipedia.org/wiki/.50_BMG
1375 //     caliber .5, 360 grains, bullet constant 118.9918748927693
1376 //   AK-47:
1377 //     caliber .3, 62 grains, bullet constant 56.92512533450383
1378 //   .3 winchester magnum:
1379 //     caliber .3, 150 grains, bullet constant 137.7220774221867
1380
1381 set g_ballistics_force 0 // 1: make all bullets use the ballistics code instead of hitscan
1382 set g_ballistics_force_uzi_speed 18000 // speed of uzi bullets if g_ballistics_force is 1
1383 set g_ballistics_force_uzi_bulletconstant 115 // 13.1qu
1384 set g_ballistics_force_shotgun_speed 12000 // speed of shotgun bullets if g_ballistics_force is 1
1385 set g_ballistics_force_shotgun_bulletconstant 75 // 3.8qu
1386
1387 set cl_stripcolorcodes 0 // experimental feature (notes: strips ALL color codes from messages!)
1388
1389 sv_status_show_qcstatus 1 // Nexuiz uses this field instead of frags
1390 set g_full_getstatus_responses 0 // this currently breaks qstat
1391
1392 // Defaults and aliases for the demo camera
1393 alias camera_enable "set cl_demo_mousegrab 1; set _chase_active $chase_active; chase_active 2;" // Enables the camera for demo playback
1394 alias camera_disable "set cl_demo_mousegrab 0; chase_active $_chase_active;" // Disables the camera for demo playback
1395
1396 set camera_speed_roll 0.9               // Camera rotation speed 
1397 set camera_speed_chase 4                // Camera movement speed on the x/y/z axis while chasing the player
1398 set camera_speed_free 8                 // Camera movement speed on the x/y/z axis in free mode
1399 set camera_speed_attenuation 30         // Camera movements attenuation factor. Bigger is smoother. Applies to mouse movements.
1400 set camera_free 0                       // Free camera instead of chasing the player
1401 set camera_reset 0                      // Reset the camera position
1402 set camera_direction_x 0                // Move the camera on the x axis (relative to the camera angle)
1403 set camera_direction_y 0                // Move the camera on the y axis (relative to the camera angle)
1404 set camera_direction_z 0                // Move the camera on the z axis (relative to the camera rotation)
1405 set camera_mouse_treshold 0.5           // Use to ignore small mouse movements. This allows for smoother camera control
1406 set camera_chase_smoothly 0             // Attenuate player movements (only in chase mode)
1407 set camera_look_player  0               // Always look to the player. Mouse input is ignored in this mode.
1408 set camera_look_attenuation     8       // Attenuation of "looking" movements, only if camera_look_player is set. Bigger is smoother.
1409 set camera_forward_follows 0            // 0: Move the camera forwards without changing altitude. 1: Move towards what you are looking.
1410
1411 alias +camera_move_forward "set camera_direction_x 1"
1412 alias -camera_move_forward "set camera_direction_x 0"
1413 alias +camera_move_backward "set camera_direction_x -1"
1414 alias -camera_move_backward -camera_move_forward
1415
1416 alias +camera_move_left "set camera_direction_y 1"
1417 alias -camera_move_left "set camera_direction_y 0"
1418 alias +camera_move_right "set camera_direction_y -1"
1419 alias -camera_move_right -camera_move_left
1420
1421 alias +camera_move_up "set camera_direction_z 1"
1422 alias -camera_move_up "set camera_direction_z 0"
1423 alias +camera_move_down "set camera_direction_z -1"
1424 alias -camera_move_down -camera_move_up
1425
1426 alias +camera_roll_right "set camera_roll 1"
1427 alias -camera_roll_right "set camera_roll 0"
1428 alias +camera_roll_left "set camera_roll -1"
1429 alias -camera_roll_left -camera_roll_right
1430
1431 // "Gentle mode": show no blood
1432 seta sv_gentle 0 // force gentle mode for everyone, also remove references to acts of killing from the messages
1433 seta cl_gentle 0 // client side gentle mode (only replaces gibs)