sv_maxidle_spectatorsareidle
[divverent/nexuiz.git] / data / defaultNexuiz.cfg
1 // changes a cvar and reports it to the server (for the menu to notify the
2 // server about changes)
3 alias setreport "set $1 $2 ; sendcvar $1"
4
5 // Nexuiz version (formatted for humans)
6 set g_nexuizversion 2.4svn
7
8 // Configuration file version (used to upgrade settings)
9 // 0: first run, or previous start was <2.4.1
10 // later, it's overridden by config.cfg, version ranges are defined in config_update.cfg
11 seta g_configversion 0
12
13 // Nexuiz version (formatted for machines)
14 // used to determine if a client version is compatible
15 // this doesn't have to be bumped with every release
16 // bump when clients become incompatible or any other perfectly good reason
17 // (e.g. game data incompatibility, engine version incompatibility, etc
18 // note: this automatically filters the server browser, clients of the new
19 // version won't see old servers, and clients of the old version won't see new
20 // servers either
21 //
22 // e.g. Nexuiz 1.5.1 RC1 will be 15101
23 gameversion 20000
24
25 // say aliases
26 alias asay_ctf_flagcarrier "say_team flag carrier at %y"
27 alias asay_ctf_haveflag "say_team (%l) have the flag"
28 alias asay_willgo "say_team will go to %y"
29 alias asay_support "say_team (%l) need help, %h%%"
30 alias asay_killed "say_team got killed at %d"
31 alias asay_noammo "say_team (%l) need %W for %w"
32 alias asay_drop "say_team (%l) dropped %w ; impulse 17"
33
34 // other aliases
35 alias +hook +button6
36 alias -hook -button6
37 alias ready "cmd ready"
38 alias lockteams "sv_cmd lockteams"
39 alias unlockteams "sv_cmd unlockteams"
40 alias nospectators "sv_cmd nospectators"
41 alias calltimeout "cmd calltimeout" //use this command to call a timeout
42 alias resumegame "cmd resumegame" //use this command if you don't need the remaining time of the timeout anymore
43
44 alias bsp "ls maps/*.bsp"
45 alias chmap "changelevel $*"
46 alias gotomap "sv_cmd gotomap \"$1\""
47 alias reset "exec game_reset.cfg"
48
49 alias rec "record demos/$1"
50 alias ply "playdemo $1"
51 alias tdem "timedemo $1"
52
53 alias dropweapon "impulse 17"
54 alias +show_info +button7
55 alias -show_info -button7
56
57 alias team_red "cmd selectteam red; cmd join"
58 alias team_blue "cmd selectteam blue; cmd join"
59 alias team_pink "cmd selectteam pink; cmd join"
60 alias team_yellow "cmd selectteam yellow; cmd join"
61 alias team_auto "cmd selectteam auto; cmd join"
62 bind f6 team_auto
63
64 alias movetoteam_red "sv_cmd movetoteam $1 red"
65 alias movetoteam_blue "sv_cmd movetoteam $1 blue"
66 alias movetoteam_pink "sv_cmd movetoteam $1 pink"
67 alias movetoteam_yellow "sv_cmd movetoteam $1 yellow"
68 alias movetoteam_auto "sv_cmd movetoteam $1 auto"
69
70 // merge lightmaps up to 1024x1024 textures
71 // the default of 2048x2048 is too heavy for my rig (SavageX)
72 mod_q3bsp_lightmapmergepower 3
73
74 // player defaults
75 _cl_color 102
76 _cl_name Player
77 _cl_playermodel models/player/marine.zym
78 _cl_playerskin 0
79 crosshair 5
80 fov 90
81 seta cl_zoomfactor 5  // how much +zoom will zoom (1-16)
82 seta cl_zoomspeed 3.5 // how fast it will zoom (0.5-16), negative values mean instant zoom
83 freelook 1
84 sensitivity 6
85 v_gamma 1.125000
86 viewsize 110
87 bgmvolume 1
88 volume 0.5
89 // fullscreen 1024x768x32bit
90 vid_bitsperpixel 32
91 vid_fullscreen 1
92 vid_width 1024
93 vid_height 768
94 // 2D resolution 800x600
95 vid_conwidth 800
96 vid_conheight 600
97 set sbar_hudselector 0 // use the old nexuiz hud layout
98 v_deathtilt 0 // needed for spectators (who are dead to avoid prediction)
99
100 // these settings determine how much the view is affected by movement/damage
101 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
102 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
103 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
104 cl_rollangle 0 // amount of view tilt when strafing, default is 2.0
105 v_kicktime 0   // how long damage kicks of the view last, default is 0.5 seconds
106 gl_polyblend 1 // whether to use screen tints, default is 1
107
108 // nexuiz-linux-*.sh will use this
109 seta vid_x11_display ""
110 // This can have three possible settings:
111 //   ""            run as usual
112 //   ":n"          use DISPLAY=:n, create it if needed
113 //   ":n/layout"   use DISPLAY=:n, create it if needed with ServerLayout layout
114
115 cl_autodemo_nameformat demos/%Y-%m-%d_%H-%M
116
117 // server settings
118 hostname "Nexuiz Server"
119 set sv_mapchange_delay 5
120 set minplayers 0
121 sv_cullentities_trace 1
122 r_cullentities_trace 1
123
124 // restart server if all players hit "ready"-button
125 set sv_ready_restart 0
126 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
127 set sv_ready_restart_repeatable 0 //allows the players to restart the game as often as needed
128 set sv_ready_restart_nag 0 //whether to nag players who are not ready yet, the message is shown in intervals
129 set sv_ready_restart_nag_duration 6 //how long to show the ready-nag, in seconds
130 set sv_ready_restart_nag_interval 10 //how long the pause between the ready-nags is, in seconds
131
132 //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
133 set teamplay_lockonrestart 0
134
135 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
136 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
137
138 //tournament mod
139 set g_tourney 0 //enables tourney mode which splits the game into a warmup- and match-stage
140 set g_tourney_warmup_unlimited_time 1 //if set the warmup-stage is not affected by any timelimit, otherwise the usual timelimit also affects warmup-stage
141 set g_tourney_warmup_allow_timeout 0 //if set to 0 you cannot use the calltimeout command during the warmup-stage but only during the match stage
142 set g_tourney_disable_spec_chat 1 //if set the chat sent by spectators or observers while being in match-stage can only seen by other specs/observers
143 set g_tourney_disable_spec_vote 1 //if set only players can call a vote during the match-stage (thus spectators and observers can't call a vote then)
144 set g_tourney_start_health 250 //starting values when being in warmup-stage
145 set g_tourney_start_armor 100
146 set g_tourney_start_ammo_shells 50
147 set g_tourney_start_ammo_nails 150
148 set g_tourney_start_ammo_rockets 50
149 set g_tourney_start_ammo_cells 50
150
151 set sv_timeout 0 //allows a player to call a timeout, this will pause the game for some time
152 set sv_timeout_length 120 //how long the game will be paused at max, in seconds
153 set sv_timeout_number 2 //how many timeouts one player is allowed to call (gets reset after a restart)
154 set sv_timeout_leadtime 4 //how long the players will be informed that a timeout was calledbefore it starts, in seconds
155 set sv_timeout_resumetime 3 //how long the remaining timeout-time will be after a player called the resumegame command
156
157 // use default physics
158 exec physicsQBR.cfg
159
160 seta sv_precacheplayermodels 1
161 seta sv_precacheweapons 0
162 seta sv_precacheitems 0
163 set sv_spectator_speed_multiplier 1.5
164 seta sv_spectate 1
165 seta sv_defaultcharacter 0
166 seta sv_defaultplayermodel models/player/nexus.zym
167 seta sv_defaultplayerskin 0
168 seta sv_defaultplayermodel_red "" // "" means see sv_defaultplayermodel
169 seta sv_defaultplayerskin_red 0
170 seta sv_defaultplayermodel_blue ""
171 seta sv_defaultplayerskin_blue 0
172 seta sv_defaultplayermodel_yellow ""
173 seta sv_defaultplayerskin_yellow 0
174 seta sv_defaultplayermodel_pink ""
175 seta sv_defaultplayerskin_pink 0
176 seta sv_defaultplayercolors "" // set to 16*shirt+pants to force a color, note: it does NOT depend on defaultcharacter! Set to "" to disable
177 set sv_autoscreenshot 0
178 net_messagetimeout 300
179 net_connecttimeout 30
180 sv_jumpstep 1 // step up stairs while jumping, makes it easier to reach ledges
181 set ekg 0
182
183 cl_movement 1
184 cl_netinputpacketlosstolerance 0
185 cl_stairsmoothspeed 200
186 cl_forwardspeed $sv_maxspeed
187 cl_backspeed $sv_maxspeed
188 cl_sidespeed $sv_maxspeed
189 cl_upspeed $sv_maxspeed
190 cl_movement_accelerate $sv_accelerate
191 cl_movement_edgefriction $edgefriction
192 cl_movement_friction $sv_friction
193 cl_movement_jumpvelocity $sv_jumpvelocity
194 cl_movement_maxairspeed $sv_maxairspeed
195 cl_movement_maxspeed $sv_maxspeed
196 cl_movement_stepheight $sv_stepheight
197 cl_movement_track_canjump 0 // till DP bug gets fixed
198
199 seta cl_autoswitch 1
200 alias autoswitch "set cl_autoswitch $1 ; cmd autoswitch $1"
201
202 seta cl_playerdetailreduction 0 // the higher, the less detailed
203
204 set bot_number 0 // number of bots in server
205 seta bot_usemodelnames 0 // whether bots should be named after the models
206 set bot_nofire 0 // makes bots not attack at all, mainly for testing in g_waypointeditor mode
207 seta bot_prefix [BOT]
208 seta bot_suffix ""
209 seta skill_auto 0 // when 1, "skill" gets adjusted to match the best player on the map
210 // general bot AI cvars
211 set bot_ai_thinkinterval 0.05
212 set bot_ai_strategyinterval 2
213 set bot_ai_enemydetectioninterval 0.5
214 set bot_ai_dodgeupdateinterval 0.1
215 set bot_ai_chooseweaponinterval 0.3
216 set bot_ai_dangerdetectioninterval 0.1
217 set bot_ai_dangerdetectionupdates 64
218 set bot_ai_aimskill_blendrate 2
219 set bot_ai_aimskill_fixedrate 15
220 set bot_ai_aimskill_firetolerance_distdegrees 180
221 set bot_ai_aimskill_firetolerance_mindegrees 2
222 set bot_ai_aimskill_firetolerance_maxdegrees 45
223 set bot_ai_aimskill_mouse 1
224 set bot_ai_keyboard_distance 250
225 set bot_ai_keyboard_treshold 0.57
226 set bot_ai_aimskill_offset 1
227 set bot_ai_aimskill_think 1
228 // Better don't touch these, there are hard to tweak!
229 set bot_ai_aimskill_order_mix_1st 0.01
230 set bot_ai_aimskill_order_mix_2nd 0.1
231 set bot_ai_aimskill_order_mix_3th 0.01
232 set bot_ai_aimskill_order_mix_4th 0.05
233 set bot_ai_aimskill_order_mix_5th 0.01
234 set bot_ai_aimskill_order_filter_1st 0.2
235 set bot_ai_aimskill_order_filter_2nd 0.2
236 set bot_ai_aimskill_order_filter_3th 0.05
237 set bot_ai_aimskill_order_filter_4th 0.25
238 set bot_ai_aimskill_order_filter_5th 0.3
239
240 // waypoint editor enable
241 set g_waypointeditor 0
242 set bot_ignore_bots 0
243 set bot_join_empty 0
244 set bot_vs_human 0 // set to positive value to make an all-bot blue team, set to negative value to make an all-bot red team, the absolute value is the ratio bots vs humans (1 for equal count)
245
246 alias g_waypointeditor_spawn "impulse 103"
247 alias g_waypointeditor_remove "impulse 104"
248 alias g_waypointeditor_relinkall "impulse 105"
249 alias g_waypointeditor_saveall "impulse 106"
250
251 locs_enable 0
252 pausable 0
253 set g_antilag 1
254 set g_shootfromeye 0
255 set g_shootfromcenter 0
256 set g_weapon_stay 0
257 set g_powerup_superhealth 1
258 set g_powerup_strength 1
259 set g_powerup_shield 1
260 set g_use_ammunition 1
261 set g_pickup_items 1
262 set g_instagib 0
263 set g_minstagib 0               // enable minstagib
264 set g_minstagib_extralives 2    // how many extra lives you will get per powerup
265 set g_minstagib_ammo_start 10   // starting ammo
266 set g_minstagib_ammo_drop 5     // how much ammo you'll get for weapons or cells
267 set g_minstagib_invis_alpha 0.05
268 set g_minstagib_speed_jumpheight 1.8
269 set g_minstagib_speed_moverate 1.25
270 set g_rocketarena 0
271 set g_vampire 0
272 set g_shocknex 0
273 set g_laserguided_missile 0
274 set g_midair 0
275 set g_midair_shieldtime 0.3
276 set g_spawnshieldtime 0
277 set g_spawnsound 1
278 set g_spawnpoints_autodrop 0
279 set g_forced_respawn 0
280 set g_fullbrightplayers 0
281 set g_fullbrightitems 0
282 set g_casings 0
283 set g_norecoil 0
284 set g_throughfloor 1
285 set g_maplist_mostrecent ""
286 seta g_maplist_mostrecent_count 3 // number of most recent maps that are blocked from being played again
287 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"
288 seta g_maplist_index 0 // this is used internally for saving position in maplist cycle
289 seta g_maplist_selectrandom 0 // if 1, a random map will be chosen as next map - DEPRECATED in favor of g_maplist_shuffle
290 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.
291 // timeout for kill credit when your damage knocks someone into a death trap
292 set g_maplist_check_waypoints 0 // when 1, maps are skipped if there currently are bots, but the map has no waypoints
293 set g_maxpushtime 8.0
294
295 set g_cloaked 0
296 set g_player_alpha 1
297 set g_player_brightness 0 // set to 2 for brighter players
298 seta g_balance_cloaked_alpha 0.25
299
300 set welcome_message_time                8
301
302 set exit_cfg empty.cfg
303 alias clearmap  "disconnect; exec $exit_cfg"
304
305 seta g_grappling_hook 0
306 set g_balance_grapplehook_health 130
307 exec newhook.cfg
308
309 // this means that timelimit can be overidden globally and fraglimit can be overidden for each game mode: DM/TDM, Domination, CTF, and Runematch.
310 seta timelimit_override -1
311 seta fraglimit_override -1
312 seta g_ctf_capture_limit -1
313 seta g_domination_point_limit -1
314 seta g_runematch_point_limit -1
315 seta g_keyhunt_point_limit -1
316
317 // 50% of the spawns shall be far away from any players
318 set g_spawn_furthest 0.5
319 // respawn delay
320 set g_respawn_delay 2
321 set g_respawn_waves 0
322 // when variables are set to 0, they take over the global setting...
323 // to force disable delay or waves, set them to 0.125
324 set g_ctf_respawn_delay 0
325 set g_ctf_respawn_waves 0
326 set g_dm_respawn_delay 0
327 set g_dm_respawn_waves 0
328 set g_dom_respawn_delay 0
329 set g_dom_respawn_waves 0
330 set g_lms_respawn_delay 0
331 set g_lms_respawn_waves 0
332 set g_rune_respawn_delay 0
333 set g_rune_respawn_waves 0
334 set g_tdm_respawn_delay 0
335 set g_tdm_respawn_waves 0
336 // honor g_respawn_mapsettings_delay and g_respawn_mapsettings_waves
337 set g_respawn_mapsettings 1
338
339 // maximum overtime
340 seta timelimit_maxovertime 5
341
342 // common team values
343 set  g_tdm                              0
344
345 seta teamplay_default                   4       // default teamplay setting in team games
346   // 1 = no friendly fire, self damage
347   // 2 = friendly fire and self damage enabled
348   // 3 = no friendly fire, but self damage enabled
349   // 4 = obey the following two cvars
350 seta g_mirrordamage 0.2              // for teamplay 4: mirror damage factor
351 seta g_friendlyfire 0.0              // for teamplay 4: fiendly fire factor
352
353 set deathmatch_force_teamplay           0       // always play TDM on dm maps
354 seta g_balance_teams                    0       // automatically balance out players entering instead of asking them for their preferred team
355 seta g_balance_teams_force              0       // automatically balance out teams when players move or disconnect
356 seta g_balance_teams_complain   0   // when 1, complain when team balance is off
357 seta g_balance_teams_prevent_imbalance  0       // prevent players from changing to larger teams
358 seta g_tdm_teams                        2       // how many teams are in team deathmatch
359 set g_changeteam_banned                 0       // not allowed to change team
360 set g_changeteam_fragtransfer           0       // % of frags you get to keep when you change teams (rounded down)
361
362 // dm
363 set g_dm 1 // actually, this is a dummy cvar just to make the menu happy
364
365 // ctf
366 set g_ctf                               0
367 set g_ctf_flag_returntime               30
368 set g_ctf_flagscore_capture             20
369 set g_ctf_flagscore_capture_team        0
370 set g_ctf_flagscore_pickup              1
371 set g_ctf_flagscore_return              5
372 set g_ctf_flagscore_return_rogue        10
373
374 // runematch
375 set g_runematch                                         0
376 set g_runematch_pointrate                               5
377 set g_runematch_pointamt                                        1
378 set g_runematch_shuffletime                             30 // how often runes change position
379 set g_runematch_respawntime                             15 // how soon after being dropped to respawn
380 set g_runematch_frags_killedby_runeholder               4
381 set g_runematch_frags_killed_runeholder                 5
382 set g_runematch_frags_norune                            0
383 set g_runematch_drop_runes_max                          2 // only drop up to 2 runes, the rest should respawn
384 set g_runematch_allow_same                              0 // allow matching rune-curse pairs
385 set g_runematch_rune_alpha                              0.78
386 set g_runematch_rune_effects                            544 // EF_ADDITIVE + EF_FULLBRIGHT
387 set g_runematch_rune_glow_size                          0
388 set g_runematch_rune_glow_color                         0
389 set g_runematch_rune_color_strength                     1.0 //1.5
390 // strength/weakness
391 set g_balance_rune_strength_damage                      2.0 //1.5
392 set g_balance_rune_strength_force                       1.5
393 set g_balance_curse_weak_damage                         0.5 //0.6
394 set g_balance_curse_weak_force                          0.6
395 set g_balance_rune_strength_combo_damage        0.9
396 set g_balance_rune_strength_combo_force                 1.0
397 // defense/vulner
398 set g_balance_rune_defense_takedamage                   0.5
399 set g_balance_curse_vulner_takedamage                   2.0
400 set g_balance_rune_defense_combo_takedamage             1.0
401 // vampire/empathy
402 set g_balance_rune_vampire_absorb                       0.4
403 set g_balance_curse_empathy_takedamage                  -0.4
404 set g_balance_rune_vampire_combo_absorb                 -0.1
405 set g_balance_rune_vampire_maxhealth                    500
406 set g_balance_curse_empathy_minhealth                   20
407 set g_balance_rune_vampire_combo_minhealth              40
408 // regen/venom
409 set g_balance_rune_regen_hpmod                          1.75
410 set g_balance_curse_venom_hpmod                         0.6
411 set g_balance_rune_regen_combo_hpmod                    0.9
412 set g_balance_rune_regen_regenrate                      3.0
413 set g_balance_curse_venom_rotrate                       3.0 //2
414 set g_balance_rune_regen_combo_regenrate        0.5
415 set g_balance_rune_regen_combo_rotrate                  1.5
416 set g_balance_rune_regen_limitmod                       1
417 set g_balance_curse_venom_limitmod                      1
418 set g_balance_rune_regen_combo_limitmod                 1
419 // speed/slow
420 set g_balance_rune_speed_atkrate                                0.66
421 set g_balance_curse_slow_atkrate                                1.5
422 set g_balance_rune_speed_combo_atkrate                  1.2
423 set g_balance_rune_speed_moverate                       1.25
424 set g_balance_curse_slow_moverate                       0.8
425 set g_balance_rune_speed_combo_moverate                 0.9
426 set g_balance_rune_speed_jumpheight                     1.4
427 set g_balance_curse_slow_jumpheight                     1.0
428 set g_balance_rune_speed_combo_jumpheight               1.0
429
430 // domination
431 set g_domination                        0
432 set g_domination_default_teams          2 // default number of teams for maps that aren't domination-specific
433 set g_domination_disable_frags          0 // players can't get frags normally, only get points from kills
434 set g_domination_point_amt              0 // override: how many points to get per ping
435 set g_domination_point_teamamt  0 // override: how many team points to get per ping
436 set g_domination_point_rate             0 // override: how often to give those points
437 set g_domination_point_capturetime      0.1 // how long it takes to capture a point (given no interference)
438 set g_domination_point_glow             0 // domination point glow (warning, slow)
439 //set g_domination_balance_team_points  1 // # of points received is based on team sizes
440
441 // last man standing
442 set g_lms 0
443 set g_lms_lives_override -1
444 set g_lms_start_health 250
445 set g_lms_start_armor 100
446 set g_lms_start_ammo_shells 50
447 set g_lms_start_ammo_nails 150
448 set g_lms_start_ammo_rockets 50
449 set g_lms_start_ammo_cells 50
450 set g_lms_regenerate 0
451 set g_lms_campcheck_interval 10
452 set g_lms_campcheck_message "^1Don't camp!"
453 set g_lms_campcheck_damage 100
454 set g_lms_campcheck_distance 1800
455 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
456 set g_lms_join_anytime 1                // if true, new players can join, but get same amount of lives as the worst player
457
458 // arena
459 set g_arena 0
460 set g_arena_maxspawned 2        // maximum number of players to spawn at once (the rest is spectating, waiting for their turn)
461 set g_arena_roundbased 1        // if disabled, the next player will spawn as soon as someone dies
462 set g_arena_warmup 5            // time, newly spawned  players have to prepare themselves in round based matches
463 set g_arena_powerups 0          // enables powerups (superhealth, strength and shield), which are removed by default
464
465 // onslaught
466 set g_onslaught 0
467 set g_onslaught_gen_health 10000
468 set g_onslaught_cp_health 1000
469
470 // assault
471 set g_assault 0
472
473 // server game balance settings
474 set g_balance_armor_regen 0
475 set g_balance_armor_rot 0.1
476 set g_balance_armor_regenlinear 0
477 set g_balance_armor_rotlinear 0
478 set g_balance_armor_stable 100
479 set g_balance_armor_limit 999
480 set g_balance_armor_start 0
481 set g_balance_armor_blockpercent 0.6
482 set g_balance_health_regen 0.1
483 set g_balance_health_rot 0.1
484 set g_balance_health_regenlinear 0
485 set g_balance_health_rotlinear 0
486 set g_balance_health_stable 100
487 set g_balance_health_limit 999
488 set g_balance_health_start 150
489 set g_balance_selfdamagepercent 0.6
490 set g_balance_weaponswitchdelay 0.15
491 // powerup balance settings
492 set g_balance_powerup_invincible_takedamage 0.2
493 set g_balance_powerup_invincible_time 30
494 set g_balance_powerup_strength_damage 3
495 set g_balance_powerup_strength_force 4
496 set g_balance_powerup_strength_time 30
497
498 // weapon balance settings follow
499 exec weapons.cfg
500
501 set g_balance_falldamage_deadminspeed 150
502 set g_balance_falldamage_minspeed 1400
503 set g_balance_falldamage_factor 0.15
504 set g_balance_falldamage_maxdamage 25
505
506 set g_balance_pause_armor_rot 5
507 set g_balance_pause_health_rot 5
508 set g_balance_pause_health_regen 5
509 set g_balance_pause_armor_rot_spawn 10
510 set g_balance_pause_health_rot_spawn 10
511 set g_balance_pause_health_regen_spawn 0
512
513 set g_footsteps 0 // serverside footstep sounds
514
515 // effects
516 r_picmipsprites 0 // Nexuiz uses sprites that should never be picmipped (team mate, typing, waypoints)
517 r_mipsprites 1
518 r_mipskins 1
519 r_shadow_realtime_world_lightmaps 1
520 seta r_ambient 4
521 cl_decals_fadetime 1
522 cl_decals_time 2
523 seta cl_nogibs 0
524 cl_stainmaps 0
525 cl_particles_explosions_smokes 1
526 r_glsl 1
527 r_glsl_deluxemapping 1
528 r_glsl_offsetmapping 0
529 r_glsl_offsetmapping_reliefmapping 0
530 r_glsl_offsetmapping_scale 0.02
531 // execute normal.cfg to make sure that all effect settings are reset
532 alias menu_sync "" // will be re-aliased later
533 exec normal.cfg
534
535 // misc
536 fs_empty_files_in_pack_mark_deletions 1 // makes patches able to delete files
537 scr_conalpha 0.8
538 scr_conbrightness 0.2
539 scr_screenshot_jpeg 1
540 scr_screenshot_jpeg_quality 0.9
541 sv_maxvelocity 1000000000
542 cl_sound_wizardhit ""
543 cl_sound_hknighthit ""
544 cl_sound_tink1 weapons/tink1.wav
545 cl_sound_ric1 weapons/ric1.wav
546 cl_sound_ric2 weapons/ric2.wav
547 cl_sound_ric3 weapons/ric3.wav
548 cl_sound_r_exp3 ""
549 sv_sound_land ""
550 sv_sound_watersplash ""
551 sv_clmovement_waitforinput 4
552
553 // startmap_dm is used when running with the -listen or -dedicated commandline options
554 alias startmap_sp "set _sv_init 1; map aggressor"
555 alias startmap_dm "set _sv_init 1; map aggressor"
556
557 // aliases:
558 alias +attack2 +button3
559 alias -attack2 -button3
560 alias +zoom +button4
561 alias -zoom -button4
562 alias +crouch +button5
563 alias -crouch -button5
564 alias weapnext "impulse 10"
565 alias weaplast "impulse 11"
566 alias weapprev "impulse 12"
567
568 // movement
569 bind w +forward
570 bind a +moveleft
571 bind s +back
572 bind d +moveright
573 bind UPARROW +forward
574 bind LEFTARROW +moveleft
575 bind DOWNARROW +back
576 bind RIGHTARROW +moveright
577 bind SHIFT +crouch
578 bind ENTER +jump
579 bind SPACE +jump
580
581 // weapons
582 bind 1 "impulse 1"
583 bind 2 "impulse 2"
584 bind 3 "impulse 3"
585 bind 4 "impulse 4"
586 bind 5 "impulse 5"
587 bind 6 "impulse 6"
588 bind 7 "impulse 7"
589 bind 8 "impulse 8"
590 bind 9 "impulse 9"
591 bind 0 "impulse 210"
592 bind MOUSE1 +attack
593 bind MOUSE2 +attack2
594 bind MOUSE3 +zoom
595 bind MOUSE4 weaplast
596 bind MOUSE5 +hook
597 bind MWHEELUP weapnext
598 bind MWHEELDOWN weapprev
599 bind BACKSPACE dropweapon
600 bind g dropweapon
601 bind f +use
602
603 // misc
604 bind e +hook
605 bind ` toggleconsole
606 bind ~ toggleconsole
607 bind TAB +showscores
608 bind ESCAPE togglemenu
609 bind r messagemode2
610 bind t messagemode
611 bind y messagemode2
612 bind i +show_info
613 bind PAUSE pause
614 bind F10 quit
615 bind F11 disconnect
616 bind F12 screenshot
617 bind F4 ready
618
619 // Gamepad defaults. Tested with Logitech Rumblepad 2, I hope similar ones works as well.
620 bind JOY1 "+crouch"
621 bind JOY2 "+jump"
622 bind JOY3 "weapprev"
623 bind JOY4 "weapnext"
624 bind JOY5 "+attack2"
625 bind JOY6 "+attack"
626 bind JOY7 "+zoom"
627 bind JOY8 "dropweapon"
628 bind JOY9 "menu_showteamselect"
629 bind JOY10 "+show_info"
630 bind JOY11 "+showscores"
631 bind JOY12 "+con_chat_maximize"
632 set joyadvanced "1"
633 set joyadvaxisr "2"
634 set joyadvaxisx "3"
635 set joyadvaxisy "1"
636 set joyadvaxisz "4"
637 set joysidesensitivity "1.0"
638 set joypitchsensitivity "0.9"
639 set joyyawsensitivity "-1.8"
640 // SDL only
641 set joy_deadzoneforward "0.05"
642 set joy_deadzonepitch "0.05"
643 set joy_deadzoneside "0.05"
644 set joy_deadzoneup "0.05"
645 set joy_deadzoneyaw "0.05"
646 set joy_sensitivitypitch "0.9"
647 set joy_sensitivityyaw "-1.8"
648
649 // team say
650 bind kp_ins messagemode
651 bind kp_del messagemode2
652 bind kp_end "+userbind 1"
653 bind kp_downarrow "+userbind 2"
654 bind kp_pgdn "+userbind 3"
655 bind kp_leftarrow "+userbind 4"
656 bind kp_5 "+userbind 5"
657 bind kp_rightarrow "+userbind 6"
658 bind kp_home "+userbind 7"
659 bind kp_uparrow "+userbind 8"
660 bind kp_pgup "+userbind 9"
661 bind kp_multiply "+userbind 10"
662 bind kp_slash "+userbind 11"
663 bind kp_enter "+userbind 13"
664 bind kp_plus "+userbind 14"
665 bind kp_minus "+userbind 15"
666
667 // these commands can be voted
668 set sv_vote_commands "restart timelimit fraglimit chmap gotomap g_grappling_hook sv_defaultplayer_fbskin_green sv_defaultplayer_fbskin_red sv_defaultplayer_fbskin_orange sv_defaultplayer_fbskin_off endmatch reducematchtime extendmatchtime"
669 // users can call a vote for the above commands
670 set sv_vote_call 1
671 // users can call a vote to become master
672 set sv_vote_master 1
673 // when set, users can use "vdo login (password)" to log in as master
674 set sv_vote_master_password ""
675 // set to 1 to allow to change you vote/mind
676 set sv_vote_change 0
677 // set to 1 to count votes once after timeout or to 0 to count with every vote
678 set sv_vote_singlecount 0
679 // a vote will timeout after this many seconds
680 set sv_vote_timeout 60
681 // a player can not call a vote again for this many seconds
682 set sv_vote_wait 120
683 // a simple majority suffices to accept a vote (meaning: YES votes > NO votes, otherwise: YES votes > half of the players)
684 set sv_vote_simple_majority 0
685 // which quotient of the players constitute a majority? (try: 0.667, 0.75 when using the above)
686 set sv_vote_majority_factor 0.5
687 // when disabled, don't allow game type changes
688 set sv_vote_override_mostrecent 0
689 alias vhelp "cmd vote help"
690 alias vstatus "cmd vote status"
691 alias vcall "cmd vote call $*"
692         alias vmap "vcall gotomap $1"
693 alias vstop "cmd vote stop"
694 alias vmaster "cmd vote master"
695 alias vlogin "cmd vote login $*"
696 alias vdo "cmd vote do $*"
697         alias vdomap "vdo gotomap $1"
698 alias vyes "cmd vote yes"
699 alias vno "cmd vote no"
700 alias vdontcare "cmd vote dontcare"
701 alias vabstain "cmd vote abstain"
702 alias lsmaps "cmd lsmaps" // lists all maps on server (for vmap, suggestmap)
703 bind F1 vyes
704 bind F2 vno
705
706 //used for spectate/observer mode
707 alias spec "cmd spectate"
708 bind F3 spec
709
710 // alias for switching the teamselect menu
711 alias menu_showteamselect "menu_cmd directmenu TeamSelect"
712 alias menu_sync "menu_cmd sync"
713 bind f5 menu_showteamselect
714
715 // NixNex (No-Items x Nexuiz) - at each time, everyone uses the same weapon,
716 // and in regular intervals, this weapon is cycled
717 set g_nixnex 0
718 set g_nixnex_with_laser 0
719 // TODO these need balancing:
720 set g_balance_nixnex_roundtime 25
721 set g_balance_nixnex_incrtime 1.6
722 // initial ammo
723 set g_balance_nixnex_ammo_shells 15
724 set g_balance_nixnex_ammo_nails 45
725 set g_balance_nixnex_ammo_rockets 15
726 set g_balance_nixnex_ammo_cells 15
727 // ammo increment per second
728 set g_balance_nixnex_ammoincr_shells 2
729 set g_balance_nixnex_ammoincr_nails 6
730 set g_balance_nixnex_ammoincr_rockets 2
731 set g_balance_nixnex_ammoincr_cells 2
732
733 // score log
734 set sv_logscores_console 0              // print scores to server console
735 set sv_logscores_file 0                 // print scores to file
736 set sv_logscores_filename scores.log    // filename
737 set sv_logscores_bots 0                 // exclude bots by default
738
739 // spam (frag/capture) log
740 set sv_eventlog 0 // the master switch for efficiency reasons
741 set sv_eventlog_console 1
742 set sv_eventlog_files 0
743 set sv_eventlog_files_timestamps 1
744 seta sv_eventlog_files_counter 0
745 set sv_eventlog_files_nameprefix nexuiz
746 set sv_eventlog_files_namesuffix .log
747
748 set nextmap "" // override the maplist when switching to the next map
749 set lastlevel ""
750 set quit_when_empty 0 // set to 1, then the server exits when the next level would start but is empty
751 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)
752
753 // singleplayer campaign
754 set g_campaign 0
755 seta g_campaign_name ""
756 seta g_campaign_index 0
757 set g_campaign_skill 0
758
759 alias singleplayer_start "g_campaign_index 0; set scmenu_campaign_goto 0"
760 alias singleplayer_continue "set scmenu_campaign_goto -1"
761 alias singleplayer_levellist "set scmenu_campaign_dump 1; togglemenu; wait; togglemenu"
762
763 // Green's fullbright skins
764 alias player_fbskin_green "playermodel models/player/nexus.zym; playerskin 6; color 3 3"
765 alias player_fbskin_red "playermodel models/player/nexus.zym; playerskin 6; color 4 4"
766 alias player_fbskin_orange "playermodel models/player/nexus.zym; playerskin 6; color 14 14"
767 alias player_fbskin_off "playermodel models/player/nexus.zym; playerskin 0"
768 alias sv_defaultplayer_fbskin_green "g_fullbrightplayers 1; sv_defaultcharacter 1; sv_defaultplayermodel models/player/nexus.zym; sv_defaultplayerskin 6; sv_defaultplayercolors 51"
769 alias sv_defaultplayer_fbskin_red "g_fullbrightplayers 1; sv_defaultcharacter 1; sv_defaultplayermodel models/player/nexus.zym; sv_defaultplayerskin 6; sv_defaultplayercolors 68"
770 alias sv_defaultplayer_fbskin_orange "g_fullbrightplayers 1; sv_defaultcharacter 1; sv_defaultplayermodel models/player/nexus.zym; sv_defaultplayerskin 6; sv_defaultplayercolors 238"
771 alias sv_defaultplayer_fbskin_off "g_fullbrightplayers 0; sv_defaultcharacter 0; sv_defaultplayerskin 0; sv_defaultplayercolors \"\""
772
773 seta sv_servermodelsonly 1
774
775 cl_curl_enabled 1
776 cl_curl_maxspeed 300
777 sv_curl_defaulturl "http://www.nexuiz.com/contentdownload/getmap.php?file="
778
779 set sv_motd ""
780
781 seta cl_shownames 1 // show player names pointed to (0: never, 1: teamplay only, 2: always)
782 set sv_allow_shownames 1
783
784 net_banlist ""
785 seta _alientrap_net_banlist ""
786
787 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
788
789 set g_projectiles_newton_style 2
790 // possible values:
791 //   0: absolute velocity projectiles (like Quake)
792 //   1: relative velocity projectiles, "Newtonian" (like Tribes 2)
793 //   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)
794 //   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)
795 //   4: just add the player velocity length to the absolute velocity (tZork's sniper rockets)
796
797 seta g_maplist_votable 5
798 seta g_maplist_votable_keeptwotime 15
799 seta g_maplist_votable_timeout 30 // note: must be below 50 seconds!
800 seta g_maplist_votable_suggestions 2
801 seta g_maplist_votable_suggestions_override_mostrecent 0
802 seta g_maplist_votable_nodetail 0 // nodetail only shows total count instead of all vote counts per map, so votes don't influence others that much
803 seta g_maplist_votable_abstain 0 // when 1, you can abstain from your vote
804 alias suggestmap "cmd suggestmap $1"
805
806 set g_chat_flood_spl 0                   // seconds between lines to not count as flooding
807 set g_chat_flood_lmax 0                  // maximum number of lines per chat message at once
808 set g_chat_flood_burst 0                 // allow bursts of so many chat lines
809 set g_chat_flood_spl_team 0              // \
810 set g_chat_flood_lmax_team 0             //  } same for say_team
811 set g_chat_flood_burst_team 0            // /
812 set g_chat_flood_notify_flooder 1        // when 0, the flooder still can see his own message
813 set g_chat_teamcolors 0                  // colorize nicknames in team color for chat
814
815 set g_waypointsprite_normdistance 512
816 set g_waypointsprite_minscale 1
817 set g_waypointsprite_minalpha 0.4
818 set g_waypointsprite_distancealphaexponent 2
819 set g_waypointsprite_timealphaexponent 1
820 set g_waypointsprite_deployed_lifetime 10
821 set g_waypointsprite_deadlifetime 1
822 set g_waypointsprite_limitedrange 5120
823 set g_waypointsprite_stuffbinds 0
824 alias "g_waypointsprite_personal"       "impulse 30"
825 alias "g_waypointsprite_personal_p"     "impulse 31"
826 alias "g_waypointsprite_personal_d"     "impulse 32"
827 alias "g_waypointsprite_team_helpme"    "impulse 33"
828 alias "g_waypointsprite_team_here"      "impulse 34"
829 alias "g_waypointsprite_team_here_p"    "impulse 35"
830 alias "g_waypointsprite_team_here_d"    "impulse 36"
831 alias "g_waypointsprite_team_danger"    "impulse 37"
832 alias "g_waypointsprite_team_danger_p"  "impulse 38"
833 alias "g_waypointsprite_team_danger_d"  "impulse 39"
834 alias "g_waypointsprite_clear_personal" "impulse 47"
835 alias "g_waypointsprite_clear"          "impulse 48"
836 alias "g_waypointsprite_toggle"         "impulse 49"
837 // key for that?
838 seta cl_hidewaypoints 0
839
840 // command extension
841 alias qc_cmd               "sv_cmd $*" // menu QC will override this to menu_cmd
842 alias adminmsg             "sv_cmd adminmsg $*"
843 alias teamstatus           "sv_cmd teamstatus"
844 alias printstats           "sv_cmd printstats" // print status on demand
845 alias g_maplist_add        "qc_cmd maplist add $*"
846 alias g_maplist_remove     "qc_cmd maplist remove $*"
847 alias g_maplist_putfirst   "qc_cmd maplist remove $* ; qc_cmd maplist add $*"
848 alias g_maplist_shufflenow "qc_cmd maplist shuffle"
849 alias gametype             "sv_cmd gametype $*"
850
851 // key hunt
852 set g_keyhunt 0
853 set g_balance_keyhunt_delay_return 60
854 set g_balance_keyhunt_delay_round 5
855 set g_balance_keyhunt_delay_tracking 10
856 set g_balance_keyhunt_delay_fadeout 2
857 set g_balance_keyhunt_delay_collect 1.5
858 set g_balance_keyhunt_delay_drop 0.4
859 set g_balance_keyhunt_maxdist 150
860 set g_balance_keyhunt_score_collect 3
861 set g_balance_keyhunt_score_carrierfrag 2
862 set g_balance_keyhunt_score_capture 100
863 set g_balance_keyhunt_score_push 60
864 set g_balance_keyhunt_score_destroyed 50
865 set g_balance_keyhunt_score_destroyed_ownfactor 1
866 set g_balance_keyhunt_dropvelocity 300
867 set g_balance_keyhunt_throwvelocity 400
868 set g_balance_keyhunt_protecttime 0.8
869 set g_balance_keyhunt_damageforcescale 1
870 set g_keyhunt_teams_override 0
871 set g_keyhunt_teams 0
872
873 // so it can be stuffcmd-ed still
874 set cl_gravity 800 // but ignored anyway
875
876 set g_ban_default_bantime 5400 // 90 minutes
877 set g_ban_default_masksize 3   // whole 255.255.255.0 networks (set to 4 for single IPs)
878 set g_banned_list ""           // format: 1 ip remainingtime ip remainingtime ...
879 alias bans "sv_cmd bans"
880 alias ban "sv_cmd ban $*"         // usage: ban address(maybe incomplete, like 1.2.3) bantime(seconds)
881 alias kickban "sv_cmd kickban $*" // usage: kickban # playerno bantime(seconds) masksize(bytes)
882 alias unban "sv_cmd unban $*"     // usage: unban 3 (number from bans)
883
884 r_labelsprites_scale 0.40625 // labels sprites get displayed at 0.5x from 640x480 to 1280x1024, and at 1x from 1600x1200 onwards
885
886 // settemp subsystem. Do not touch. Usage: settemp variable value, next map resets it.
887 set settemp_list 0
888 set settemp_var _settemp_x
889 alias settemp "settemp_list \"1 $1 $settemp_var $settemp_list\"; set $settemp_var \"${$1}\"; settemp_var ${settemp_var}x; $1 \"$2\""
890 alias settemp_restore "_settemp_restore_${settemp_list asis}"
891 alias _settemp_restore_0 "set settemp_var _settemp_x; set settemp_list 0"
892 alias _settemp_restore_1 "$1 \"${$2}\"; _settemp_restore_${3- asis}"
893
894 // usercommands. These can be edited and bound by the menu.
895 seta "userbind1_press" "say_team quad soon";  seta "userbind1_release" "";  seta "userbind1_description" "team: quad soon"
896 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"
897 seta "userbind3_press" "say_team took item (l:%l^7); g_waypointsprite_team_here";  seta "userbind3_release" "";  seta "userbind3_description" "team: took item, icon"
898 seta "userbind4_press" "say_team negative";  seta "userbind4_release" "";  seta "userbind4_description" "team: negative"
899 seta "userbind5_press" "say_team need help (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_helpme";  seta "userbind5_release" "";  seta "userbind5_description" "team: need help, icon"
900 seta "userbind6_press" "say_team enemy seen (l:%y^7); g_waypointsprite_team_danger_p";  seta "userbind6_release" "";  seta "userbind6_description" "team: enemy seen, icon"
901 seta "userbind7_press" "say_team defending (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind7_release" "";  seta "userbind7_description" "team: defending, icon"
902 seta "userbind8_press" "say_team roaming (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind8_release" "";  seta "userbind8_description" "team: roaming, icon"
903 seta "userbind9_press" "say_team attacking (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind9_release" "";  seta "userbind9_description" "team: attacking, icon"
904 seta "userbind10_press" "say_team killed flagcarrier (l:%y^7); g_waypointsprite_team_p"; seta "userbind10_release" ""; seta "userbind10_description" "team: killed flag, icon"
905 seta "userbind11_press" "say_team dropped flag (l:%d^7); g_waypointsprite_team_here_d"; seta "userbind11_release" ""; seta "userbind11_description" "team: dropped flag, icon"
906 seta "userbind12_press" "say_team dropped gun %w (l:%l^7); g_waypointsprite_team_here; wait; dropweapon"; seta "userbind12_release" ""; seta "userbind12_description" "team: drop, icon"
907 seta "userbind13_press" "say :-) / nice one"; seta "userbind13_release" ""; seta "userbind13_description" "chat: nice one"
908 seta "userbind14_press" "say good game"; seta "userbind14_release" ""; seta "userbind14_description" "chat: good game"
909 seta "userbind15_press" "say hi / good luck and have fun"; seta "userbind15_release" ""; seta "userbind15_description" "chat: hi / good luck"
910 seta "userbind16_press" ""; seta "userbind16_release" ""; seta "userbind16_description" ""
911 seta "userbind17_press" ""; seta "userbind17_release" ""; seta "userbind17_description" ""
912 seta "userbind18_press" ""; seta "userbind18_release" ""; seta "userbind18_description" ""
913 seta "userbind19_press" ""; seta "userbind19_release" ""; seta "userbind19_description" ""
914 seta "userbind20_press" ""; seta "userbind20_release" ""; seta "userbind20_description" ""
915 seta "userbind21_press" ""; seta "userbind21_release" ""; seta "userbind21_description" ""
916 seta "userbind22_press" ""; seta "userbind22_release" ""; seta "userbind22_description" ""
917 seta "userbind23_press" ""; seta "userbind23_release" ""; seta "userbind23_description" ""
918 seta "userbind24_press" ""; seta "userbind24_release" ""; seta "userbind24_description" ""
919 seta "userbind25_press" ""; seta "userbind25_release" ""; seta "userbind25_description" ""
920 seta "userbind26_press" ""; seta "userbind26_release" ""; seta "userbind26_description" ""
921 seta "userbind27_press" ""; seta "userbind27_release" ""; seta "userbind27_description" ""
922 seta "userbind28_press" ""; seta "userbind28_release" ""; seta "userbind28_description" ""
923 seta "userbind29_press" ""; seta "userbind29_release" ""; seta "userbind29_description" ""
924 seta "userbind30_press" ""; seta "userbind30_release" ""; seta "userbind30_description" ""
925 seta "userbind31_press" ""; seta "userbind31_release" ""; seta "userbind31_description" ""
926 seta "userbind32_press" ""; seta "userbind32_release" ""; seta "userbind32_description" ""
927 alias _userbind_call "${$1}"
928 alias +userbind "_userbind_call userbind${1}_press"
929 alias -userbind "_userbind_call userbind${1}_release"
930
931 seta menu_skin ""
932 set menu_slowmo 1
933
934 // loadfont console     gfx/vera-mono
935 // loadfont sbar        gfx/vera-mono
936 loadfont notify      gfx/vera-sans
937 loadfont chat        gfx/vera-sans
938 // loadfont centerprint gfx/vera-mono
939 // loadfont infobar     gfx/vera-mono
940 loadfont user0       gfx/vera-sans
941 r_textbrightness 0.2
942 r_textcontrast 0.8
943 r_textshadow 1
944
945 // good settings for these fonts
946 con_chat 5
947 con_chatpos -7
948 con_chatsize 10
949 con_chatwidth 0.6
950 con_notifysize 10
951 sbar_alpha_bg 0.4
952 sbar_flagstatus_pos 115
953
954 // for menu server list (eventually make them have engine support?)
955 seta menu_slist_showfull 1
956 seta menu_slist_showempty 1
957
958 // Q3A
959 set sv_q3acompat_machineshotgunswap 0 // settemp this in mapinfo for instant Q3A map conversion
960
961 seta menu_maxplayers 8 // maxplayers value when the menu starts a game
962
963 // useful vote aliases
964 set timelimit_increment 5
965 set timelimit_decrement 5
966 set timelimit_min 5
967 set timelimit_max 60
968 alias extendmatchtime "sv_cmd rpn /timelimit timelimit timelimit_max timelimit timelimit_increment add bound def"
969 alias reducematchtime "sv_cmd rpn /timelimit timelimit timelimit_decrement sub timelimit_min timelimit bound def"
970 alias endmatch "timelimit -1"
971
972 // useful keybind to maximize the chat area temporarily
973 set _backup_con_chatvars_set 0
974 alias _restore_con_chatvars_0 ""
975 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"
976 alias _restore_con_chatvars "_restore_con_chatvars_$_backup_con_chatvars_set"
977 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"
978 alias _backup_con_chatvars_1 ""
979 alias _backup_con_chatvars "_backup_con_chatvars_$_backup_con_chatvars_set"
980 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"
981 alias -con_chat_maximize "_restore_con_chatvars"
982
983 // tab completion
984 set con_completion_playdemo *.dem
985 set con_completion_timedemo *.dem
986 set con_completion_ply      *.dem
987 set con_completion_tdem     *.dem
988 set con_completion_exec     *.cfg
989 set con_completion_chmap    map
990 set con_completion_gotomap  map
991 set con_completion_vmap     map
992 set con_completion_vdomap   map
993
994 // these non-saved engine cvars shall be savedG
995 seta cl_port $cl_port
996 seta r_showsurfaces $r_showsurfaces
997 seta r_ambient $r_ambient
998 seta skill $skill
999 seta gl_finish $gl_finish
1000 seta v_kicktime $v_kicktime
1001
1002 // ticrate
1003 // engine default is too CPU intensive on 16p servers, so let's go back
1004 sys_ticrate 0.05
1005
1006 // delay for "kill" to prevent abuse
1007 set g_balance_kill_delay 5
1008
1009 // 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)
1010 sv_gameplayfix_droptofloorstartsolid 0
1011
1012 gl_texturecompression_2d 0 // who turned THIS on in the engine?
1013 gl_texturecompression_color 1
1014 gl_texturecompression_gloss 1
1015 gl_texturecompression_glow 1
1016 gl_texturecompression_lightcubemaps 1
1017 gl_texturecompression_normal 0 // hm... they eat lots of RAM, but TC typically assumes specifics about human eye perception, which is false for normalmaps
1018 gl_texturecompression_q3bspdeluxemaps 0
1019 gl_texturecompression_q3bsplightmaps 0
1020 gl_texturecompression_sky 1
1021
1022 set menu_mouse_absolute 0 // TODO make this seta if the engine understands this right
1023 seta menu_mouse_speed 1
1024
1025 // force fog for people who turn it off in game (set this to like 5 if you suspect people are "cheating" that way)
1026 set sv_foginterval 0
1027
1028 // Audio track names (for old-style "cd loop NUMBER" usage)
1029 cd remap digital-pursuit breakdown-easy brainsukker chaos-fog infight neuronal-diving subcities thru-the-mirror calling-bogus beast-of-insanity
1030 set sv_intermission_cdtrack brainsukker
1031 set menu_cdtrack digital-pursuit
1032
1033 // maxidle (in seconds): kick players idle for more than that amount of time
1034 set sv_maxidle 0
1035 // when sv_maxidle is not 0, assume spectators are idle too
1036 set sv_maxidle_spectatorsareidle 0