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