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