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