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