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