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