]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - defaultXonotic.cfg
a couple more
[xonotic/xonotic-data.pk3dir.git] / defaultXonotic.cfg
1 // Xonotic version (formatted for machines)
2 // used to determine if a client version is compatible
3 // this doesn't have to be bumped with every release
4 // bump when clients become incompatible or any other perfectly good reason
5 // (e.g. game data incompatibility, engine version incompatibility, etc
6 // note: this automatically filters the server browser, clients of the new
7 // version won't see old servers, and clients of the old version won't see new
8 // servers either
9 //
10 // e.g. Xonotic 1.5.1 RC1 will be 15101
11 set g_xonoticversion git "Xonotic version (formatted for humans)"
12
13 gameversion 802 // 0.8.2
14 gameversion_min 0 // git builds see all versions
15 gameversion_max 65535 // git builds see all versions
16
17 // compatibility guideline:
18 //   version a.b.c   = a0b0c
19 //   gameversion_min = a0(b-1)00 // show servers of the previous "line"
20 //   gameversion_max = a0(b+1)99 // show servers of the next "line"
21 // so, for a given gameversion, _min and _max calculate as follows:
22 //   gameversion_min = (gameversion / 100) * 100 - 100
23 //   gameversion_max = (gameversion / 100) * 100 + 199
24
25 seta g_configversion 0  "Configuration file version (used to upgrade settings) 0: first run, or previous start was <2.4.1  Later, it's overridden by config.cfg, version ranges are defined in config_update.cfg"
26
27 // FIXME i think this is client cvar but it's also marked BADCVAR in server
28 // merge lightmaps up to 2048x2048 textures
29 mod_q3bsp_lightmapmergepower 4
30
31 exec defaultClient.cfg
32 exec defaultServer.cfg
33
34 set ekg 0       "Throw huge amounts of gibs"
35
36 locs_enable 0
37 pausable 0
38 set samelevel 0 "when 1, always play the same level over and over again"
39
40 set g_throughfloor_debug 0 "enable debugging messages for throughfloor calculations"
41 set g_throughfloor_damage_max_stddev 2 "Maximum standard deviation for splash damage"
42 set g_throughfloor_force_max_stddev 10 "Maximum standard deviation for splash force"
43 set g_throughfloor_min_steps_player 1 "Minimum number of steps for splash damage"
44 set g_throughfloor_min_steps_other 1 "Minimum number of steps for splash damage"
45 set g_throughfloor_max_steps_player 100 "Maximum number of steps for splash damage"
46 set g_throughfloor_max_steps_other 10 "Maximum number of steps for splash damage"
47 // note: for damage X, 0.25 * ((1-g_throughfloor_damage)*X / g_throughfloor_damage_max_stddev)^2 steps are used
48 // for these numbers:
49 //   damage  25: 3
50 //   damage  60: 15
51 //   damage  80: 25
52 //   damage 200: 157
53 //   force  250: 10
54 //   force  300: 15
55 //   force  600: 57
56
57 // effects
58 r_glsl_vertextextureblend_usebothalphas 1 // allows to abuse texture blending as detail texture
59 mod_q3shader_force_terrain_alphaflag 1 // supposedly now required for r_glsl_vertextextureblend_usebothalphas to work
60 r_glsl_postprocess 0 // but note, hud_postprocessing enables this
61 r_picmipsprites 0 // Xonotic uses sprites that should never be picmipped (team mate, typing, waypoints)
62 r_picmipworld 1
63 gl_picmip_world 0
64 gl_picmip_sprites 0
65 gl_picmip_other 1 // so, picmip -1 is best possible quality
66 r_mipsprites 1
67 r_mipskins 1
68 gl_max_lightmapsize 4096
69 r_shadow_realtime_world_lightmaps 1
70 r_shadow_realtime_world_importlightentitiesfrommap 0 // Whether build process uses keepLights is nontransparent and may change, so better make keepLights not matter.
71 cl_decals_fadetime 5
72 cl_decals_time 1
73 seta cl_gunalign 3 "Gun alignment; 1 = center (if allowed by g_shootfromclient) or right, 2 = center (if allowed by g_shootfromclient) or left, 3 = right only, 4 = left only"
74 seta cl_nogibs 0 "reduce number of violence effects, or remove them totally"
75 seta cl_particlegibs 0 "simpler gibs"
76 seta cl_gibs_damageforcescale 3.5 "force to push around gibs"
77 seta cl_gibs_lifetime 2.5 "average lifetime of gibs"
78 seta cl_gibs_velocity_scale 1 "gib throw velocity force scale"
79 seta cl_gibs_velocity_random 1 "gib throw velocity randomness scale"
80 seta cl_gibs_velocity_up 1 "extra z velocity for gibs"
81 seta cl_gibs_ticrate 0.1 "ticrate for gibs"
82 seta cl_gibs_sloppy 1 "sloppy gibs, may temporarily penetrate walls"
83 seta cl_gibs_avelocity_scale 1 "how much angular velocity to use on gibs"
84 seta cl_casings 1 "enable or disable bullet casings"
85 seta cl_casings_shell_time 30 "shell casing lifetime"
86 seta cl_casings_bronze_time 10 "bullet casings lifetime"
87 seta cl_casings_ticrate 0.1 "ticrate for casings"
88 seta cl_casings_sloppy 1 "sloppy casings, may temporarily penetrate walls"
89 seta cl_projectiles_sloppy 1 "sloppy projectiles, may temporarily penetrate walls"
90 cl_stainmaps 0
91 cl_particles_smoke 1
92 vid_gl20 1
93 r_glsl_deluxemapping 1
94 r_glsl_offsetmapping 0
95 r_glsl_offsetmapping_lod 1
96 r_glsl_offsetmapping_reliefmapping 0
97 r_glsl_offsetmapping_scale 0.02
98 // execute effects-normal.cfg to make sure that all effect settings are reset
99 alias menu_sync "" // will be re-aliased later
100
101 // misc
102 fs_empty_files_in_pack_mark_deletions 1 // makes patches able to delete files
103 scr_conalpha 1
104 scr_conbrightness 0.2
105 scr_screenshot_jpeg 1
106 scr_screenshot_jpeg_quality 0.9
107 sv_maxvelocity 1000000000
108 cl_sound_wizardhit ""
109 cl_sound_hknighthit ""
110 cl_sound_tink1 weapons/tink1.wav
111 cl_sound_ric1 weapons/ric1.wav
112 cl_sound_ric2 weapons/ric2.wav
113 cl_sound_ric3 weapons/ric3.wav
114 cl_sound_r_exp3 ""
115 sv_sound_land ""
116 sv_sound_watersplash ""
117
118 seta cl_announcer default "name of the announcer you wish to use from data/sound/announcer"
119 seta cl_announcer_antispam 2 "number of seconds before an announcement of the same sound can be played again"
120 seta cl_announcer_maptime 3 "play announcer sound telling you the remaining maptime - 0: do not play at all, 1: play at one minute, 2: play at five minutes, 3: play both"
121
122 // startmap_dm is used when running with the -listen or -dedicated commandline options
123 set serverconfig server.cfg
124 alias loadconfig "cvar_resettodefaults_saveonly; exec ${* !}"
125 set _sv_init 0
126 alias startmap_dm "set _sv_init 0; map _init/_init; exec $serverconfig; set _sv_init 1"
127
128 // aliases:
129 alias +fire +attack
130 alias -fire -attack
131 alias +fire2 +button3
132 alias -fire2 -button3
133 alias +attack2 +button3 // old alias from Nexuiz
134 alias -attack2 -button3 // old alias name from Nexuiz
135 alias +crouch +button5
136 alias -crouch -button5
137 alias weapnext "_weapnext_${cl_weaponpriority_useforcycling}"
138 alias _weapnext_0 "impulse 18"
139 alias _weapnext_1 "impulse 15"
140 alias _weapnext_2 "impulse 10"
141 alias weaplast "impulse 11"
142 alias weapprev "_weapprev_${cl_weaponpriority_useforcycling}"
143 alias _weapprev_0 "impulse 19"
144 alias _weapprev_1 "impulse 16"
145 alias _weapprev_2 "impulse 12"
146 alias weapbest "impulse 13"
147
148 // experimental zoom toggle (can be in wrong state at start of a game, though)
149 set _togglezoom +
150 alias +zoom "set _togglezoom -; +button4"
151 alias -zoom "set _togglezoom +; -button4"
152 alias togglezoom "${_togglezoom}zoom"
153
154 alias reload "impulse 20"
155
156 // weapons
157 alias weapon_group_1 "impulse 1"
158 alias weapon_group_2 "impulse 2"
159 alias weapon_group_3 "impulse 3"
160 alias weapon_group_4 "impulse 4"
161 alias weapon_group_5 "impulse 5"
162 alias weapon_group_6 "impulse 6"
163 alias weapon_group_7 "impulse 7"
164 alias weapon_group_8 "impulse 8"
165 alias weapon_group_9 "impulse 9"
166 alias weapon_group_0 "impulse 14" // cycles the superweapons
167 // TODO: remove after 0.8.2. Default impulse commands for 0.8.1 servers
168 exec weapons.cfg
169
170 // score log
171 set sv_logscores_console 0      "print scores to server console"
172 set sv_logscores_file 0 "print scores to file"
173 set sv_logscores_filename scores.log    "filename"
174 set sv_logscores_bots 0 "exclude bots by default"
175
176 // spam (frag/capture) log
177 set sv_eventlog 0       "the master switch for efficiency reasons"
178 set sv_eventlog_console 1
179 set sv_eventlog_files 0
180 set sv_eventlog_files_timestamps 1
181 seta sv_eventlog_files_counter 0
182 set sv_eventlog_files_nameprefix xonotic
183 set sv_eventlog_files_namesuffix .log
184
185 set nextmap ""  "override the maplist when switching to the next map"
186 set lastlevel ""
187 set quit_when_empty 0   "set to 1, then the server exits when the next level would start but is empty"
188 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)"
189 set quit_and_redirect_timer 1.5 "set to number of seconds after quit before performing the connect operation of quit_and_redirect"
190
191 // singleplayer campaign
192 set g_campaign 0
193 set g_campaign_forceteam 0 "Forces the player to a given team in campaign mode, 1 = red, 2 = blue, 3 = yellow, 4 = pink"
194 seta g_campaign_name "xonoticbeta"
195 seta g_campaign_skill -1 // -2 easy -1 medium 0 hard
196
197 alias singleplayer_start "g_campaign_index 0; set scmenu_campaign_goto 0"
198 alias singleplayer_continue "set scmenu_campaign_goto -1"
199 alias singleplayer_levellist "set scmenu_campaign_dump 1; togglemenu; wait; togglemenu"
200
201 // Green's fullbright skins, updated by Samual
202 alias sv_fbskin_unique "sv_defaultcharacter 1; sv_defaultplayermodel models/player/megaerebus.iqm; sv_defaultplayerskin 1; sv_defaultplayercolors \"\""
203 alias sv_fbskin_green "sv_defaultcharacter 1; sv_defaultplayermodel models/player/megaerebus.iqm; sv_defaultplayerskin 1; sv_defaultplayercolors 51"
204 alias sv_fbskin_red "sv_defaultcharacter 1; sv_defaultplayermodel models/player/megaerebus.iqm; sv_defaultplayerskin 1; sv_defaultplayercolors 68"
205 alias sv_fbskin_orange "sv_defaultcharacter 1; sv_defaultplayermodel models/player/megaerebus.iqm; sv_defaultplayerskin 1; sv_defaultplayercolors 238"
206 alias sv_fbskin_rainbow "sv_defaultcharacter 1; sv_defaultplayermodel models/player/megaerebus.iqm; sv_defaultplayerskin 1; sv_defaultplayercolors 95"
207
208 alias sv_fbskin_off "sv_defaultcharacter 0; sv_defaultplayerskin 0; sv_defaultplayercolors \"\""
209
210 seta sv_servermodelsonly 1
211
212 cl_curl_enabled 1
213 cl_curl_maxdownloads 3
214 cl_curl_maxspeed 0
215 cl_curl_useragent 1
216 cl_curl_useragent_append "$g_xonoticversion"
217
218 sv_curl_defaulturl "http://www.xonotic.org/contentdownload/getmap.php?file="
219 set sv_curl_serverpackages_auto 1 "automatically add packs with *.serverpackage files to sv_curl_serverpackages"
220
221 set sv_motd ""
222
223 set g_waypoints_for_items 0     "make waypoints out of items, values: 0 = never, 1 = unless the mapper prevents it by worldspawn.spawnflags & 1, 2 = always"
224
225 seta g_maplist_votable 6 "number of maps that are shown in the map voting at the end of a match"
226 seta g_maplist_votable_keeptwotime 15 "show only 2 options after this amount of time during map vote screen"
227 seta g_maplist_votable_timeout 30       "timeout for the map voting; must be below 50 seconds!"
228 seta g_maplist_votable_suggestions 2
229 seta g_maplist_votable_suggestions_override_mostrecent 0
230 seta g_maplist_votable_nodetail 1       "nodetail only shows total count instead of all vote counts per map, so votes don't influence others that much"
231 seta g_maplist_votable_abstain 0        "when 1, you can abstain from your vote"
232 seta g_maplist_votable_screenshot_dir "maps levelshots" "where to look for map screenshots"
233
234 set sv_vote_gametype 0 "show a vote screen for gametypes before map vote screen"
235 set sv_vote_gametype_keeptwotime 10 "show only 2 options after this amount of time during gametype vote screen"
236 set sv_vote_gametype_options "dm ctf ca lms tdm ft"
237 set sv_vote_gametype_timeout 20
238 set sv_vote_gametype_default_current 1 "Keep the current gametype if no one votes"
239
240 set g_chat_flood_spl 3  "normal chat: seconds between lines to not count as flooding"
241 set g_chat_flood_lmax 2 "normal chat: maximum number of lines per chat message at once"
242 set g_chat_flood_burst 2        "normal chat: allow bursts of so many chat lines"
243 set g_chat_flood_spl_team 1     "team chat: seconds between lines to not count as flooding"
244 set g_chat_flood_lmax_team 2    "team chat: maximum number of lines per chat message at once"
245 set g_chat_flood_burst_team 2   "team chat: allow bursts of so many chat lines"
246 set g_chat_flood_spl_tell 1     "private chat: seconds between lines to not count as flooding"
247 set g_chat_flood_lmax_tell 2    "private chat: maximum number of lines per chat message at once"
248 set g_chat_flood_burst_tell 2   "private chat: allow bursts of so many chat lines"
249 set g_chat_flood_notify_flooder 1       "when 0, the flooder still can see his own message"
250 set g_chat_teamcolors 0 "colorize nicknames in team color for chat"
251 set g_chat_tellprivacy 1 "when disabled, tell messages are also sent to the server console log... otherwise they're kept private between players."
252 set g_nick_flood_timeout 120 "time after which nick flood protection resets (set to 0 to disable nick flood checking)"
253 set g_nick_flood_penalty 0.5 "duration of the nick flood penalty"
254 set g_nick_flood_penalty_yellow 3 "number of changes to allow before warning and movement blocking"
255 set g_nick_flood_penalty_red 30 "number of changes to allow before totally disorienting the player"
256
257 set sv_waypointsprite_deployed_lifetime 10
258 set sv_waypointsprite_deadlifetime 1
259 set sv_waypointsprite_limitedrange 5120
260
261 seta g_waypointsprite_uppercase 1
262 set g_waypointsprite_normdistance 512
263 set g_waypointsprite_minscale 0.5
264 set g_waypointsprite_minalpha 0.4
265 set g_waypointsprite_distancealphaexponent 2
266 set g_waypointsprite_timealphaexponent 1
267 set g_waypointsprite_stuffbinds 0
268 seta g_waypointsprite_scale 1
269 seta g_waypointsprite_fontsize 12
270 seta g_waypointsprite_alpha 1 "This allows the client to control transparency of the waypoint"
271 seta g_waypointsprite_edgefadealpha 0.5 "alpha multiplier near the edge"
272 seta g_waypointsprite_edgefadescale 1 "scale multiplier near the edge"
273 seta g_waypointsprite_edgefadedistance 50 "distance in virtual pixels from edge where to start fading"
274 seta g_waypointsprite_edgeoffset_bottom 0 "offset of how close the waypoint can be to the bottom edge of the screen"
275 seta g_waypointsprite_edgeoffset_left 0 "offset of how close the waypoint can be to the left edge of the screen"
276 seta g_waypointsprite_edgeoffset_right 0 "offset of how close the waypoint can be to the right edge of the screen"
277 seta g_waypointsprite_edgeoffset_top 0 "offset of how close the waypoint can be to the top edge of the screen"
278 seta g_waypointsprite_crosshairfadealpha 0.25 "alpha multiplier near crosshair"
279 seta g_waypointsprite_crosshairfadescale 1 "scale multiplier near the crosshair"
280 seta g_waypointsprite_crosshairfadedistance 150 "distance in virtual pixels from crosshair where to start fading"
281 seta g_waypointsprite_distancefadealpha 1 "alpha multiplier near distance"
282 seta g_waypointsprite_distancefadescale 0.7 "scale multiplier near the distance"
283 seta g_waypointsprite_distancefadedistancemultiplier 0.5 "distance in map sizes from distance where to stop fading"
284 seta g_waypointsprite_itemstime 2 "show waypoints to indicate that some important items (mega health, large armor) are about to respawn: 1 when spectating, 2 even playing in warmup stage"
285 set g_waypointsprite_spam 0 "Debugging feature. Set to 10 and load courtfun in race mode to test."
286 alias "g_waypointsprite_personal"       "impulse 30"
287 alias "g_waypointsprite_personal_p"     "impulse 31"
288 alias "g_waypointsprite_personal_d"     "impulse 32"
289 alias "g_waypointsprite_team_helpme"    "impulse 33"
290 alias "g_waypointsprite_team_here"      "impulse 34"
291 alias "g_waypointsprite_team_here_p"    "impulse 35"
292 alias "g_waypointsprite_team_here_d"    "impulse 36"
293 alias "g_waypointsprite_team_danger"    "impulse 37"
294 alias "g_waypointsprite_team_danger_p"  "impulse 38"
295 alias "g_waypointsprite_team_danger_d"  "impulse 39"
296 alias "g_waypointsprite_clear_personal" "impulse 47"
297 alias "g_waypointsprite_clear"  "impulse 48"
298 alias "g_waypointsprite_toggle" "toggle cl_hidewaypoints"
299
300 seta cl_hidewaypoints 0 "disable static waypoints, only show team waypoints"
301
302 seta g_waypointsprite_turrets 1 "disable turret waypoints"
303 seta g_waypointsprite_turrets_maxdist 5000 "max distance for turret waypoints"
304
305 seta cl_damagetext "1" "Draw damage dealt where you hit the enemy"
306 seta cl_damagetext_format "-{total}" "How to format the damage text. {health}, {armor}, {total}, {potential}: full damage not capped to target's health, {potential_health}: health damage not capped to target's health"
307 seta cl_damagetext_format_verbose 0 "{health} shows {potential_health} too when they differ; {total} shows {potential} too when they differ"
308 seta cl_damagetext_format_hide_redundant 0 "hide {armor} if 0; hide {potential} and {potential_health} when same as actual"
309 seta cl_damagetext_color "1 1 0" "Damage text color"
310 seta cl_damagetext_color_per_weapon "0" "Damage text uses weapon color"
311 seta cl_damagetext_size_min 10 "Damage text font size for small damage"
312 seta cl_damagetext_size_min_damage 25 "How much damage is considered small"
313 seta cl_damagetext_size_max 16 "Damage text font size for large damage"
314 seta cl_damagetext_size_max_damage 140 "How much damage is considered large"
315 seta cl_damagetext_alpha_start "1" "Damage text initial alpha"
316 seta cl_damagetext_alpha_lifetime "3" "Damage text lifetime in seconds"
317 seta cl_damagetext_velocity "0 0 20" "Damage text move direction"
318 seta cl_damagetext_offset "0 -40 0" "Damage text offset"
319 seta cl_damagetext_accumulate_range "30" "Damage text spawned within this range is accumulated"
320 seta cl_damagetext_accumulate_alpha_rel "0.65" "Only update existing damage text when it's above this much percentage (0 to 1) of the starting alpha"
321 seta cl_damagetext_friendlyfire "1" "Show damage text for friendlyfire too"
322 seta cl_damagetext_friendlyfire_color "1 0 0" "Damage text color for friendlyfire"
323
324 seta cl_damagetext_2d_pos "0.47 0.53 0" "2D damage text initial position (X and Y between 0 and 1)"
325 seta cl_damagetext_2d_alpha_start 1 "2D damage text initial alpha"
326 seta cl_damagetext_2d_alpha_lifetime 1.3 "2D damage text lifetime (alpha fading) in seconds"
327 seta cl_damagetext_2d_size_lifetime 3 "2D damage text lifetime (size shrinking) in seconds"
328 seta cl_damagetext_2d_velocity "-25 0 0" "2D damage text move direction (screen coordinates)"
329 seta cl_damagetext_2d_overlap_offset "0 -15 0" "Offset 2D damage text by this much to prevent overlapping (screen coordinates)"
330 seta cl_damagetext_2d_close_range 125 "Always use 2D damagetext for hits closer that this"
331 seta cl_damagetext_2d_out_of_view 1 "Always use 2D damagetext for hits that occured off-screen"
332
333 seta cl_vehicles_alarm 1 "Play an alarm sound when the vehicle you are driving is heavily damaged"
334 seta cl_vehicles_hud_tactical 1
335 seta cl_vehicles_hudscale 0.5
336 seta cl_vehicles_notify_time 15
337 seta cl_vehicles_crosshair_size 0.5
338 seta cl_vehicles_crosshair_colorize 1
339
340 set sv_itemstime 1 "enable networking of time left until respawn for items such as mega health/armor and powerups"
341
342 // so it can be stuffcmd-ed still
343 set cl_gravity 800      "but ignored anyway"
344
345 set g_ban_default_bantime 5400  "90 minutes"
346 set g_ban_default_masksize 3    "masksize 0 means banning by UID only, 1 means banning by /8 (IPv6: /32) network, 2 means banning by /16 (IPv6: /48) network, 3 means banning by /24 (IPv6: /56) network, 4 means banning by single IP (IPv6: /64 network)"
347 set g_banned_list ""    "format: IP remainingtime IP remainingtime ..."
348 set g_banned_list_idmode "1"    "when set, the IP banning system always uses the ID over the IP address (so a user in a banned IP range can connect if they have a valid signed ID)"
349
350 r_labelsprites_scale 0.40625 // labels sprites get displayed at 0.5x from 640x480 to 1280x1024, and at 1x from 1600x1200 onwards
351
352 exec binds-xonotic.cfg
353
354 // we must change its default from 1.0 to 1 to be consistent with menuqc
355 set slowmo 1
356
357 seta menu_skin "luma"
358 set menu_slowmo 1
359 seta menu_sounds 0 "enables menu sound effects. 1 enables click sounds, 2 also enables hover sounds"
360 seta menu_tooltips 1 "menu tooltips: 0 disabled, 1 enabled, 2 also shows cvar or console command (when available) changed or executed by the item"
361 set menu_picmip_bypass 0 "bypass texture quality enforcement based on system resources, not recommended and may cause crashes!"
362 set menu_showboxes 0 "show item bounding boxes (debug)"
363 set menu_cvarlist_onlymodified 0 "show only modified cvars in the cvar list"
364 set menu_force_on_disconnection 1 "force to show the menu this number of seconds after you get disconnected (0 to disable)"
365
366 r_textbrightness 0.2
367 r_textcontrast 0.8
368 r_textshadow 0
369 r_font_postprocess_blur 1
370 r_font_postprocess_outline 1
371
372 // good settings for these fonts
373 con_chat 5
374 con_chatpos -9
375 con_chatsize 10
376 con_chatwidth 0.6
377 con_notify 0
378 con_notifysize 10
379 con_notifyalign 0
380 con_textsize 10
381
382 seta sbar_info_pos 0 "Y-axis distance from lower right corner for engine info prints"
383
384 // scoreboard
385 seta scoreboard_columns default
386
387 // keep old scoreboard cvars for compatibility's sake
388 // they've been replaced by hud_panel_scoreboard_* cvars
389 // TODO remove them after a future release (0.8.2+)
390 seta scoreboard_border_thickness 1 "scoreboard border thickness"
391 seta scoreboard_accuracy_border_thickness 1 "accuracy stats border thickness"
392 seta scoreboard_accuracy_doublerows 0 "use two rows instead of one"
393 seta scoreboard_accuracy_nocolors 0 "don't use colors displaying accuracy stats"
394 seta scoreboard_accuracy 1 "show weapon accuracy stats panel on scoreboard; colors can be configured with accuracy_color* cvars"
395 seta scoreboard_color_bg_r 0.125 "red color component of the scoreboard background"
396 seta scoreboard_color_bg_g 0.55 "green color component of the scoreboard background"
397 seta scoreboard_color_bg_b 0.875 "blue color component of the scoreboard background"
398 seta scoreboard_color_bg_team 0.6 "team color multiplier of the scoreboard background"
399 seta scoreboard_alpha_bg 0.7 "scoreboard background alpha"
400 seta scoreboard_alpha_fg 1 "scoreboard foreground alpha"
401 seta scoreboard_alpha_name 0.9 "alpha of player text in scoreboard list other than self"
402 seta scoreboard_alpha_name_self 1 "alpha of player text in scoreboard list of self"
403 seta scoreboard_fadeinspeed 10 "speed at which scoreboard fades in, higher is faster (0 = instant)"
404 seta scoreboard_fadeoutspeed 5 "speed at which scoreboard fades out, higher is faster (0 = instant)"
405 seta scoreboard_highlight 1 "enable highlighting for rows and columns in the scoreboard"
406 seta scoreboard_highlight_alpha 0.08 "highlight alpha value (depends on hud_scoreboard_highlight 1)"
407 seta scoreboard_highlight_alpha_self 0.3 "self highlight alpha value"
408 seta scoreboard_offset_left 0.15 "how far (by percent) the scoreboard is offset from the left screen edge"
409 seta scoreboard_offset_right 0.15 "how far (by percent) the scoreboard is offset from the right screen edge"
410 seta scoreboard_offset_vertical 0.05 "how far (by percent) the scoreboard is offset from the top and bottom of the screen"
411 seta scoreboard_bg_scale 0.25 "scale for the tiled scoreboard background"
412 seta scoreboard_respawntime_decimals 1 "decimal places to show for the respawntime countdown display on the scoreboard"
413 seta scoreboard_dynamichud 0 "apply the dynamic hud effects to the scoreboard"
414
415 seta accuracy_color_levels "0 20 100" "accuracy values at which a specified color (accuracy_color<X>) will be used. If your accuracy is between 2 of these values then a mix of the Xth and X+1th colors will be used. You can specify up to 10 values, in increasing order"
416 seta accuracy_color0 "1 0 0"
417 seta accuracy_color1 "1 1 0"
418 seta accuracy_color2 "0 1 0"
419
420 // for menu server list (eventually make them have engine support?)
421 seta menu_slist_showfull 1 "show servers even if they are full and have no slots to join"
422 seta menu_slist_showempty 1 "show servers even if they are no empty and have no opponents to play against"
423 seta menu_slist_modfilter "" // set to either: !modname or modname. modname of = means "same as we are running now".
424
425 // other serverlist cvars
426 seta menu_slist_categories 1
427 seta menu_slist_categories_onlyifmultiple 1
428 seta menu_slist_purethreshold 0
429 seta menu_slist_modimpurity 0
430 seta menu_slist_recommendations 3
431 seta menu_slist_recommendations_maxping 150
432 seta menu_slist_recommendations_minfreeslots 1
433 seta menu_slist_recommendations_minhumans 0
434 seta menu_slist_recommendations_purethreshold -1
435
436 // serverlist category override cvars
437 seta menu_slist_categories_CAT_FAVORITED_override ""
438 seta menu_slist_categories_CAT_RECOMMENDED_override ""
439 seta menu_slist_categories_CAT_NORMAL_override ""
440 seta menu_slist_categories_CAT_SERVERS_override "CAT_NORMAL"
441 seta menu_slist_categories_CAT_XPM_override ""
442 seta menu_slist_categories_CAT_MODIFIED_override ""
443 seta menu_slist_categories_CAT_OVERKILL_override ""
444 seta menu_slist_categories_CAT_INSTAGIB_override ""
445 seta menu_slist_categories_CAT_DEFRAG_override ""
446
447 seta menu_weaponarena ""
448
449 seta menu_maxplayers 16 "maxplayers value when the menu starts a game"
450
451 // useful vote aliases
452 set timelimit_increment 5
453 set timelimit_decrement 5
454 set timelimit_min 5
455 set timelimit_max 60
456
457 // useful keybind to maximize the chat area temporarily
458 // HUD code takes care of many of these now...
459 //set _backup_con_chatvars_set 0
460 //alias _restore_con_chatvars_0 ""
461 //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; scr_centertime $_backup_scr_centertime;r_track_sprites $_backup_r_track_sprites"
462 //alias _restore_con_chatvars "_restore_con_chatvars_$_backup_con_chatvars_set"
463 //alias _backup_con_chatvars_0 "set _backup_con_chatvars_set 1; set _backup_con_chatpos $con_chatpos; set _backup_con_chat $con_chat; set _backup_con_notify $con_notify; set _backup_con_chattime $con_chattime; set _backup_cl_deathscoreboard $cl_deathscoreboard; set _backup_scr_centertime $scr_centertime;set _backup_r_track_sprites $r_track_sprites"
464 //alias _backup_con_chatvars_1 ""
465 //alias _backup_con_chatvars "_backup_con_chatvars_$_backup_con_chatvars_set"
466 //alias +con_chat_maximize "_backup_con_chatvars; con_chatpos -9; con_chat 100; con_notify 0; con_chattime 3600; cl_deathscoreboard 0; scr_centertime 0; r_track_sprites 0"
467 //alias -con_chat_maximize "_restore_con_chatvars"
468
469 set _con_chat_maximized 0
470 set _backup_con_chatvars_set 0
471 alias _restore_con_chatvars_0 ""
472 alias _restore_con_chatvars_1 "set _backup_con_chatvars_set 0; con_notify $_backup_con_notify; con_chattime $_backup_con_chattime; cl_deathscoreboard $_backup_cl_deathscoreboard; scr_centertime $_backup_scr_centertime;r_track_sprites $_backup_r_track_sprites"
473 alias _restore_con_chatvars "_restore_con_chatvars_$_backup_con_chatvars_set"
474 alias _backup_con_chatvars_0 "set _backup_con_chatvars_set 1; set _backup_con_notify $con_notify; set _backup_con_chattime $con_chattime; set _backup_cl_deathscoreboard $cl_deathscoreboard; set _backup_scr_centertime $scr_centertime;set _backup_r_track_sprites $r_track_sprites"
475 alias _backup_con_chatvars_1 ""
476 alias _backup_con_chatvars "_backup_con_chatvars_$_backup_con_chatvars_set"
477 alias +con_chat_maximize "_con_chat_maximized 1; _backup_con_chatvars; con_notify 0; con_chattime 3600; cl_deathscoreboard 0; scr_centertime 0; r_track_sprites 0"
478 alias -con_chat_maximize "_con_chat_maximized 0; _restore_con_chatvars"
479
480 // tab completion
481 set con_completion_playdemo     *.dem
482 set con_completion_timedemo     *.dem
483 set con_completion_ply          *.dem
484 set con_completion_tdem         *.dem
485 set con_completion_exec         *.cfg
486 set con_completion_chmap        map
487 set con_completion_devmap       map
488 set con_completion_gotomap      map
489 set con_completion_vmap         map
490 set con_completion_vnextmap     map
491 set con_completion_vdomap       map
492 set con_completion_playermodel  "models/player/*.iqm"
493
494 // helper
495 // these non-saved engine cvars shall be saved
496 alias makesaved "seta $1 \"${$1 ?}\""
497 makesaved cl_maxfps_alwayssleep
498 makesaved cl_port
499 makesaved gl_finish
500 makesaved net_slist_queriespersecond
501 makesaved r_ambient
502 makesaved r_drawviewmodel
503 makesaved r_showsurfaces
504 makesaved r_subdivisions_tolerance
505 makesaved skill
506 makesaved vid_gl13
507 makesaved vid_gl20
508 makesaved v_idlescale
509 makesaved v_kicktime
510 makesaved music_playlist_list0
511 makesaved music_playlist_random0
512
513 // ticrate
514 //sys_ticrate 0.0166667 // 60fps. This would be ideal, but kills home routers.
515 sys_ticrate 0.0333333 // Use 30fps instead.
516 cl_netfps 60 // should match or be a multiple
517 sv_gameplayfix_delayprojectiles 0
518 sv_gameplayfix_q2airaccelerate 1
519 sv_gameplayfix_stepmultipletimes 1
520
521 // delay for "kill" to prevent abuse
522 set g_balance_kill_delay 2
523 set g_balance_kill_antispam 5
524
525 // 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)
526 sv_gameplayfix_droptofloorstartsolid 0
527
528 seta gl_texturecompression 0
529 gl_texturecompression_color 1
530 gl_texturecompression_gloss 1
531 gl_texturecompression_glow 1
532 gl_texturecompression_lightcubemaps 1
533 gl_texturecompression_q3bsplightmaps 0
534 gl_texturecompression_sky 1
535
536 cl_maxfps 200
537
538 seta menu_mouse_absolute 1 "use the OS mouse pointer motion for menu"
539 seta menu_mouse_speed 1 "speed multiplier for the mouse in the menu (does not affect in-game aiming)"
540 set menu_use_default_hostname 1
541 alias sethostname "set menu_use_default_hostname 0; hostname $*"
542
543 set sv_foginterval 1 "force enable fog in regular intervals"
544
545 // Audio track names (for old-style "cd loop NUMBER" usage)
546 set _cdtrack_first "1"
547 alias _cdtrack_0 "g_cdtracks_remaplist \"$g_cdtracks_remaplist $1\""
548 alias _cdtrack_1 "g_cdtracks_remaplist \"$1\"; set _cdtrack_first 0"
549 alias _cdtrack "_cdtrack_$_cdtrack_first $2"
550 set g_cdtracks_remaplist ""
551 exec cdtracks.cfg
552 unset _cdtrack_first
553 unalias _cdtrack_0
554 unalias _cdtrack_1
555 unalias _cdtrack
556
557 cd remap $g_cdtracks_remaplist
558 set sv_intermission_cdtrack ""
559
560 set g_cdtracks_dontusebydefault "rising-of-the-phoenix"
561 seta menu_cdtrack "rising-of-the-phoenix"
562
563 set sv_maxidle 0 "kick players idle for more than this amount of time in seconds"
564 set sv_maxidle_spectatorsareidle 0 "when sv_maxidle is not 0, assume spectators are idle too"
565 set sv_maxidle_slots 0 "when not 0, only kick idlers when this many or less player slots are available"
566 set sv_maxidle_slots_countbots 1 "count bots as player slots"
567
568 // these entities are not referenced by anything directly, they just represent
569 // teams and are found by find() when needed
570 prvm_leaktest_ignore_classnames "ctf_team dom_team tdm_team"
571 prvm_backtraceforwarnings 1
572
573 sv_allowdownloads_inarchive 1 // for csprogs.dat
574 sv_allowdownloads 0 // download protocol is evil
575
576 set g_jump_grunt 0      "Do you make a grunting noise every time you jump? Is it the same grunting noise every time?"
577
578 seta cl_weaponpriority "vaporizer hmg rpc vortex fireball mortar machinegun hagar rifle arc electro devastator crylink minelayer shotgun shockwave hlac tuba blaster porto seeker hook" "weapon priority list"
579 seta cl_weaponpriority_useforcycling 0 "when set, weapon cycling by the mouse wheel makes use of the weapon priority list (the special value 2 uses the weapon ID list for cycling)"
580 seta cl_weaponpriority0 "rpc devastator mortar hagar seeker fireball"                   "use weapon_priority_0_prev for prev gun from this list, weapon_priority_0_best for best gun, weapon_priority_0_next for next gun.  Default value: explosives"
581 seta cl_weaponpriority1 "vaporizer vortex crylink hlac arc electro blaster shockwave"   "use weapon_priority_1_prev for prev gun from this list, weapon_priority_1_best for best gun, weapon_priority_1_next for next gun.  Default value: energy"
582 seta cl_weaponpriority2 "vaporizer vortex rifle"                                        "use weapon_priority_2_prev for prev gun from this list, weapon_priority_2_best for best gun, weapon_priority_2_next for next gun.  Default value: hitscan exact"
583 seta cl_weaponpriority3 "vaporizer hmg vortex rifle machinegun shotgun shockwave"       "use weapon_priority_3_prev for prev gun from this list, weapon_priority_3_best for best gun, weapon_priority_3_next for next gun.  Default value: hitscan all"
584 seta cl_weaponpriority4 "mortar minelayer hlac hagar crylink seeker shotgun shockwave"  "use weapon_priority_4_prev for prev gun from this list, weapon_priority_4_best for best gun, weapon_priority_4_next for next gun.  Default value: spam weapons"
585 seta cl_weaponpriority5 "blaster shockwave hook porto"                                  "use weapon_priority_5_prev for prev gun from this list, weapon_priority_5_best for best gun, weapon_priority_5_next for next gun.  Default value: weapons for moving"
586 seta cl_weaponpriority6 ""                                                              "use weapon_priority_6_prev for prev gun from this list, weapon_priority_6_best for best gun, weapon_priority_6_next for next gun"
587 seta cl_weaponpriority7 ""                                                              "use weapon_priority_7_prev for prev gun from this list, weapon_priority_7_best for best gun, weapon_priority_7_next for next gun"
588 seta cl_weaponpriority8 ""                                                              "use weapon_priority_8_prev for prev gun from this list, weapon_priority_8_best for best gun, weapon_priority_8_next for next gun"
589 seta cl_weaponpriority9 ""                                                              "use weapon_priority_9_prev for prev gun from this list, weapon_priority_9_best for best gun, weapon_priority_9_next for next gun"
590 seta cl_weaponimpulsemode 0 "0: only cycle between currently usable weapons in weapon priority order; 1: cycle between all possible weapons on a key in weapon priority order"
591
592 set g_maplist_allow_hidden 0            "allow hidden maps to be, e.g., voted for and in the maplist"
593 set g_maplist_allow_frustrating 0       "allow impossible maps to be, e.g., voted for and in the maplist (if set to 2, ONLY impossible maps are allowed)"
594
595 alias _gl_flashblend_update_00 "gl_flashblend 1"
596 alias _gl_flashblend_update_10 "gl_flashblend 0"
597 alias _gl_flashblend_update_01 "gl_flashblend 0"
598 alias _gl_flashblend_update_11 "gl_flashblend 0"
599 alias gl_flashblend_update "_gl_flashblend_update_$r_shadow_realtime_dlight$r_showsurfaces"
600
601 set sv_clones 0 "number of clones a player may make (reset by the \"kill\" command)"
602
603 set cl_handicap 1       "multiplies damage received and divides damage dealt NOTE: reconnect or use 'sendcvar cl_handicap' to update the choice."
604
605 seta cl_clippedspectating 1 "movement collision for spectators so that you can't pass through walls and such. (client setting) NOTE: reconnect or use sendcvar command to update the choice."
606
607 seta cl_autoscreenshot 1 "Take a screenshot upon the end of a match... 0 = Disable completely, 1 = Allow sv_autoscreenshot to take a screenshot when requested, 2 = Always take an autoscreenshot anyway."
608
609 seta cl_jetpack_jump 1 "Activate jetpack by pressing jump in the air. 0 = Disable, 1 = Stop when touching ground, 2 = Enable"
610
611 seta cl_race_cptimes_showself 1 "Always show your own times as well as the current best on checkpoints in Race/CTS"
612 seta cl_race_cptimes_onlyself 0 "Only show your own times on checkpoints in Race/CTS"
613
614 // must be at the bottom of this file:
615
616 set g_bugrigs 0
617 set g_bugrigs_planar_movement 1 "BROTRR bug emulation"
618 set g_bugrigs_planar_movement_car_jumping 1     "my own bug"
619 set g_bugrigs_reverse_speeding 1        "BROTRR bug emulation"
620 set g_bugrigs_reverse_spinning 1        "BROTRR bug emulation"
621 set g_bugrigs_reverse_stopping 1        "BROTRR bug emulation"
622 set g_bugrigs_air_steering 1    "NFS bug emulation"
623 set g_bugrigs_angle_smoothing 5 "smooth the car angle a bit, looks nice"
624 set g_bugrigs_friction_floor 50 "units/sec friction on floor"
625 set g_bugrigs_friction_brake 950        "units/sec friction for braking"
626 set g_bugrigs_friction_air 0.00001      "(very small) v <- v - v^2 * g_bugrigs_friction_air"
627 set g_bugrigs_accel 800 "acceleration"
628 set g_bugrigs_speed_ref 400     "reference speed for accel and steer responsiveness"
629 set g_bugrigs_speed_pow 2       "reference power for accel and steer responsiveness"
630 set g_bugrigs_steer 1   "steering amount"
631
632 set g_ban_sync_uri ""   "sync using this ban list provider (empty string to disable)"
633 set g_ban_sync_interval 5       "sync every 5 minutes"
634 set g_ban_sync_trusted_servers ""       "request ban lists from these xonotic servers (do not include your own server there, or unbanning may fail)"
635 set g_ban_sync_timeout 45       "time out in seconds for the ban sync requests"
636 set g_ban_sync_trusted_servers_verify 0 "when set to 1, additional bans sent by the servers are ignored, and only bans for the requested IP are used"
637
638 set g_showweaponspawns 1 "1: display waypoints for weapon spawns found on the map when a weapon key is pressed and the weapon is not owned; 2: for dropped weapons too; 3: for all the weapons sharing the same impulse"
639
640 // ballistics use physical units, but qu based
641 //   Quake-Newton: 1 qN  = 1 qu * 1 g / 1 s^2
642 //   Quake-Joule:  1 qJ  = 1 qN * 1 qu
643 //   Quake-Pascal: 1 qPa = 1 qN / 1 qu^2
644
645 set g_ballistics_mindistance 2 // enable ballistics starting from 2 qu
646 set g_ballistics_density_player 0.50 // players are 2x as easy to pass as walls
647 set g_ballistics_density_corpse 0.10 // corpses are 10x as easy to pass as walls
648 set g_ballistics_penetrate_clips 0 "allow ballistics to pass through weapon clips"
649
650 set cl_stripcolorcodes 0        "experimental feature (notes: strips ALL color codes from messages!)"
651
652 sv_status_show_qcstatus 1       "Xonotic uses this field instead of frags"
653 set g_full_getstatus_responses 0        "this currently breaks qstat"
654
655 // Demo camera
656 set camera_enable               0       "Enables the camera for demo playback"
657 set camera_free                 0       "Free camera instead of chasing the player"
658 set camera_reset                0       "Resets the camera position and switch to chase mode"
659 set camera_speed_roll           0.9     "Camera rotation speed"
660 set camera_speed_chase          4       "Camera movement speed on the x/y/z axis while chasing the player"
661 set camera_speed_free           8       "Camera movement speed on the x/y/z axis in free mode"
662 set camera_speed_attenuation    10      "Camera movements attenuation factor. Bigger is smoother. Applies to mouse movements"
663 set camera_mouse_threshold      0.5     "Use to ignore small mouse movements. This allows for smoother camera control"
664 set camera_chase_smoothly       0       "Attenuate player movements (only in chase mode)"
665 set camera_look_player          0       "Always look to the player. Mouse input is ignored in this mode"
666 set camera_look_attenuation     8       "Attenuation of \"looking\" movements, only if camera_look_player is set. Bigger is smoother"
667 set camera_forward_follows      1       "0: Move the camera forwards without changing altitude. 1: Move towards what you are looking"
668
669 // "Gentle mode": show no blood
670 seta sv_gentle 0                "force gentle mode for everyone, also remove references to acts of killing from the messages"
671 seta cl_gentle 0                "client side gentle mode, master switch for removing both gibs and messages"
672 seta cl_gentle_gibs 0           "client side gentle mode (only replaces gibs); when set to 1, white smoke replaces gibs, when set to 2, colorful clouds replace gibs"
673 seta cl_gentle_messages 0       "client side gentle mode (only replaces frag messages/centerprints)"
674 seta cl_gentle_damage 0 "client side gentle mode (only replaces damage flash); when set to 1, a white flash replaces the blood image, when set to 2, a randomly colored flash is used instead"
675
676 set g_jetpack 0 "Jetpack mutator"
677
678 set g_running_guns 0 "... or wonder, till it drives you mad, what would have followed if you had."
679
680 set _urllib_nextslot 0 "temp variable"
681 set cl_warpzone_usetrace 1 "do not touch"
682
683 set cl_effects_lightningarc_simple 0
684 set cl_effects_lightningarc_segmentlength 64
685 set cl_effects_lightningarc_drift_start 0.45
686 set cl_effects_lightningarc_drift_end 0.1
687 set cl_effects_lightningarc_branchfactor_start 0.25
688 set cl_effects_lightningarc_branchfactor_add 0.1
689
690 set g_hitplots 0 "when set to 1, hitplots are stored by the server to provide a means of proving that a triggerbot was used"
691 seta g_hitplots_individuals "" "the individuals, by IP, that should have their hitplots recorded"
692
693 set menu_updatecheck 1 "check for updates"
694 set menu_updatecheck_getpacks 1 "get update packs from update server"
695
696 set bot_navigation_ignoreplayers 0 // FIXME remove this once the issue is solved
697 set bot_sound_monopoly 0 "when enabled, only bots can make any noise"
698
699 set cl_loddistance1 1024
700 set cl_loddistance2 3072
701 seta cl_playerdetailreduction 4 "the higher, the less detailed player models are displayed (LOD)"
702 seta cl_modeldetailreduction 1  "the higher, the less detailed certain map models are displayed (LOD)"
703
704 set g_mapinfo_settemp_acl "+*" "ACL for mapinfo setting cvars"
705
706 seta cl_casings_maxcount 100 "maximum amount of shell casings (must be at least 1)"
707 seta cl_gibs_maxcount 100 "maximum amount of gibs (must be at least 1)"
708
709 //cl_gunalign calculator
710 seta menu_cl_gunalign 3 "Gun alignment; 1 = center (if allowed by g_shootfromclient) or right, 2 = center (if allowed by g_shootfromclient) or left, 3 = right only, 4 = left only"
711 alias _gunalign_01 "cl_gunalign 1"
712 alias _gunalign_02 "cl_gunalign 2"
713 alias _gunalign_03 "cl_gunalign 3"
714 alias _gunalign_04 "cl_gunalign 4"
715 alias _gunalign_11 "cl_gunalign 2"
716 alias _gunalign_12 "cl_gunalign 1"
717 alias _gunalign_13 "cl_gunalign 4"
718 alias _gunalign_14 "cl_gunalign 3"
719 alias _gunalign_update "_gunalign_$v_flipped$menu_cl_gunalign"
720
721 set _menu_alpha "" // will be set by menu QC to the current fading of the menu, can be used by CSQC to fade items
722 set _menu_initialized 0 "is 0 on first menu loading, 1 later"
723
724 set g_triggerimpulse_accel_power 1 "trigger_impulse accelerator power (applied BEFORE the multiplier)"
725 set g_triggerimpulse_accel_multiplier 1 "trigger_impulse accelerator multiplier (applied AFTER the power)"
726 set g_triggerimpulse_directional_multiplier 1 "trigger_impulse directional field multiplier"
727 set g_triggerimpulse_radial_multiplier 1 "trigger_impulse radial field multiplier"
728 set the_goggles "they do nothing" "but the googles, they do"
729
730 set sv_weaponstats_file "" "when set to a file name, per-weapon stats get written to that file"
731
732 seta cl_noantilag 0 "turn this on if you believe antilag is bad"
733
734 set rescan_pending 0 "set to 1 to schedule a fs_rescan at the end of this match"
735
736 set g_mapinfo_allow_unsupported_modes_and_let_stuff_break "0" "set to 1 to be able to force game types using g_ cvars even if the map does not support them"
737
738 // weapon accuracy stats
739 set sv_accuracy_data_share 1 "1 send weapon accuracy data statistics to spectating clients, depends on cl_accuracy_data_share"
740 set sv_accuracy_data_send 1 "1 send weapon accuracy data statistics and improved score info to all the clients at the end of the match, depends on cl_accuracy_data_receive, 0 send the current 'player has won' to all the clients"
741 set cl_accuracy_data_share 0 "1 share my weapon accuracy data statistics with other players, 0 keep my weapon accuracy data statistics hidden"
742 set cl_accuracy_data_receive 0 "1 receive weapon accuracy data statistics at the end of the match"
743
744 set spawn_debug 0 "use all spawns one by one, then abort, to verify all spawnpoints"
745 set loddebug 0 "force this LOD level"
746 set spawn_debugview 0 "display spawnpoints and their rating on spawn to debug spawnpoint rating calculation"
747 set g_mutatormsg "" "mutator message"
748 set speedmeter 0 "print landing speeds"
749 set developer_csqcentities 0 "csqc entity spam"
750 set waypoint_benchmark 0 "quit after waypoint loading to benchmark bot navigation code"
751 set g_debug_bot_commands 0 "print scripted bot commands before executing"
752 set g_debug_defaultsounds 0 "always use default sounds"
753 seta cl_forceplayermodels 0 "make everyone look like your own model (requires server to have sv_defaultcharacter 0)"
754 seta cl_forceplayercolors 0 "make enemies look like your own color (requires server to have sv_defaultcharacter 0); set it to 2 to enable it even in teamplay (only when there is exactly one enemy team)"
755 seta cl_forcemyplayermodel "" "set to the model file name you want to show yourself as (does not affect how enemies look with cl_forceplayermodels)"
756 seta cl_forcemyplayerskin 0 "set to the skin number you want to show yourself as (does not affect how enemies look with cl_forceplayermodels)"
757 seta cl_forcemyplayercolors 0 "set to the color value (encoding is same as _cl_color) for your own player model (ignored in teamplay; does not affect how enemies look with cl_forceplayermodels)"
758 seta cl_movement_errorcompensation 1 "try to compensate for prediction errors and reduce perceived lag"
759 seta cl_movement_intermissionrunning 0 "keep velocity after the match ends, players may appear to continue running while stationary"
760
761 // campaign internal, set when loading a campaign map1G
762 set _campaign_index ""
763 set _campaign_name ""
764 set _campaign_testrun 0 "To verify the campaign file, set this to 1, then start the first campaign level from the menu. If you end up in the menu again, it's good, if you get a QC crash, it's bad."
765
766 // debug
767 set _independent_players 0 "DO NOT TOUCH"
768 set _notarget 0 "NO, REALLY, DON'T"
769 set debugdraw 0
770 set debugdraw_filter ""
771 set debugdraw_filterout ""
772 set debugtrace 0
773
774 // define some engine cvars that we need even on dedicated server
775 set r_showbboxes 0
776
777 // we REALLY need the end pos nudging DP bug workaround for trace-to-end-of-solid to work
778 collision_endposnudge 1
779
780 // FIXME remove this when the engine feature FINALLY MAYBE works
781 r_glsl_skeletal 0
782
783 // animation tuning
784 set cl_lerpanim_maxdelta_framegroups 0.05 // must be faster than fastest weapon refire
785 set cl_lerpanim_maxdelta_server 0.1 // must be slower than slowest server controlled anim (e.g. animinfo stuff)
786
787 // otherwise, antilag breaks
788 sv_gameplayfix_consistentplayerprethink 1
789
790 // support Q1BSP maps
791 mod_q1bsp_polygoncollisions 1
792
793 // match q3map2
794 mod_obj_orientation 0
795
796 // improve some minor details
797 sv_gameplayfix_gravityunaffectedbyticrate 1
798 sv_gameplayfix_nogravityonground 1
799
800 // autodemo deleting
801 seta cl_autodemo_delete_keeprecords 0 "when 1, records with a newly made race/cts demo are kept even if cl_autodemo_delete is used to delete demos"
802
803 // freeze camera
804 set cl_lockview 0 "when 1, the camera does not move any more"
805
806 // we now use mastervolume
807 volume 1
808
809 // sucks less than the old one
810 cl_decals_newsystem 1
811
812 set sv_q3acompat_machineshotgunswap 0 "shorthand for swapping machinegun and shotgun (for Q3A map compatibility in mapinfo files)"
813
814 set g_movement_highspeed 1 "movement speed modification factor (only changes movement when above maxspeed)"
815
816 set g_maxspeed 0 "player speed limit, faster players are killed (0 for unlimited speed)"
817
818 scr_conalpha 1
819 scr_conalpha2factor 0.3
820 scr_conalpha3factor 1
821 scr_conalphafactor 0.8
822 scr_conbrightness 0.35
823 scr_conforcewhiledisconnected 1
824 scr_conscroll2_x 0.11
825 scr_conscroll2_y 0.2
826 scr_conscroll3_x 0
827 scr_conscroll3_y 0
828 scr_conscroll_x -0.1
829 scr_conscroll_y -0.3
830
831 scr_conforcewhiledisconnected 0
832 scr_infobar_height 12
833
834 // DP cannot properly detect this, so rather turn off the detection
835 r_texture_dds_load_alphamode 2
836 r_texture_dds_swdecode 1 // SW decode to quarter res if we want to load DDS but don't support the extension for it
837 r_texture_dds_load_logfailure 0 // this engine feature SUCKS
838 set vid_netwmfullscreen 0 // doesn't support non-native res
839
840 // particles optimization
841 r_drawparticles_nearclip_min 8
842 r_drawparticles_nearclip_max 16
843
844 // sv_cullentities_trace is 1, so the client doesn't have to
845 sv_cullentities_trace 1
846 r_cullentities_trace 0
847
848 // less "lagging" of other players, but also less PL tolerant... let's try this
849 sv_clmovement_inputtimeout 0.066 // slightly less than 2 frames, so only one frame can be compensated
850
851 // exact gloss looks better, e.g. on g-23
852 r_shadow_glossexact 1
853 r_shadow_glossintensity 1
854
855 // use fake light if map has no lightmaps
856 r_fakelight 1
857
858 r_water_hideplayer 1 // hide your own feet/player model in refraction views, this way you don't see half of your body under water
859 r_water_refractdistort 0.019
860
861 set cl_rainsnow_maxdrawdist 2048
862
863 // strength sound settings
864 set sv_strengthsound_antispam_time 0.1 "minimum distance of strength sounds"
865 set sv_strengthsound_antispam_refire_threshold 0.04 "apply minimum distance only if refire of the gun is smaller than this"
866
867 // equalize looks better than fullbright
868 r_equalize_entities_fullbright 1
869
870 // UTF-8
871 utf8_enable 1
872
873 // safe font defaults
874 r_font_hinting 1
875 r_font_disable_freetype 0
876 r_font_size_snapping 4
877
878 // database management
879 set sv_db_saveasdump 0 "write server.db in dump format (loads slower, easier to read/parse)"
880 set cl_db_saveasdump 0 "write client.db in dump format (loads slower, easier to read/parse)"
881
882 // uid2name
883 seta cl_allow_uid2name -1 "-1 = ask if the player wants to disable/enable this feature, 0 = disable, 1 = enable uid2name (allows showing your name in race rankings for instance)"
884 seta cl_allow_uidtracking 1 "-1 = ask if the player wants to disable/enable this feature, 0 = disable, 1 = enable uid tracking (allows associating your data with your player ID)"
885 // FIXME set to -1 before release, once we have a dialog for this!
886
887 // polygonoffset for submodel SUCKS SUCKS SUCKS (only a hack for quake1, we don't need that)
888 r_polygonoffset_submodel_offset 0
889 r_polygonoffset_submodel_factor 0
890 // decals: need a higher polygonoffset than default to not compete with _decal surfaces too much
891 r_polygonoffset_decals_offset -28
892 r_polygonoffset_decals_factor 0
893 // this is mainly for _decal entities (their shaders should use "polygonoffset" shader parameter) - this is "good enough" as it seems, but smaller than the decals one so these don't zfight decals
894 mod_q3shader_default_polygonoffset -14
895 mod_q3shader_default_polygonfactor 0
896
897 // allow fullbright
898 set sv_allow_fullbright 1 "when set, clients may use r_fullbright on this server without getting a night vision effect overlay"
899
900 // auto-teams (team selection by player ID)
901 // any player not listed is forced to spectate
902 set g_forced_team_red "" "list of player IDs for red team"
903 set g_forced_team_blue "" "list of player IDs for blue team"
904 set g_forced_team_yellow "" "list of player IDs for yellow team"
905 set g_forced_team_pink "" "list of player IDs for pink team"
906 set g_forced_team_otherwise "default" "action if a non listed player joins (can be default for default action, spectate for forcing to spectate, or red, blue, yellow, pink)"
907
908 // nice alias to set up a match
909 // example: g_forced_team_matchsetup stormkeep "mzDo0nO2y3XpFPNbQAyeUucyaejZ9xpiXLYMGU2x3qM=" "BRLOGENSHFEGLE/+Mq3x2UGMYLXipx9ZjeaycuUeyAQ="
910 // will set up a match on stormkeep where mzDo0nO2y3XpFPNbQAyeUucyaejZ9xpiXLYMGU2x3qM= and BRLOGENSHFEGLE/+Mq3x2UGMYLXipx9ZjeaycuUeyAQ= play against each other
911 alias g_forced_team_matchsetup "map $1; settemp g_forced_team_red \"$2\"; settemp g_forced_team_blue \"$3\"; settemp g_forced_team_yellow \"$4\"; settemp g_forced_team_pink \"$5\"; settemp g_forced_team_otherwise spectate"
912
913 // random charge stuff :P
914 set g_weapon_charge_colormod_hdrmultiplier 4 "how much to multiply the colors by in the colormod vector"
915 set g_weapon_charge_colormod_red_half 0
916 set g_weapon_charge_colormod_green_half 0.5
917 set g_weapon_charge_colormod_blue_half 1
918 set g_weapon_charge_colormod_red_full 1
919 set g_weapon_charge_colormod_green_full -0.5
920 set g_weapon_charge_colormod_blue_full -1
921
922 // frozen
923 set g_frozen_revive_falldamage 0 "Enable reviving from this amount of fall damage"
924 set g_frozen_revive_falldamage_health 40 "Amount of health player has if they revived from falling"
925 set g_frozen_damage_trigger 1 "if 1, frozen players falling into the void will die instead of teleporting to spawn"
926 set g_frozen_force 0.6 "How much to multiply the force on a frozen player with"
927
928 // player statistics
929 set g_playerstats_gamereport_uri "http://stats.xonotic.org/stats/submit" "Output player statistics information to either: URL (with ://), console (with a dash like this: -), or supply a filename to output to data directory."
930 set g_playerstats_gamereport_ladder ""
931 set g_playerstats_playerbasic_uri "http://stats.xonotic.org"
932 set g_playerstats_playerdetail_uri "http://stats.xonotic.org/player/me"
933 set g_playerstats_playerdetail_autoupdatetime 1800 // automatically update every 30 minutes anyway
934
935 // autoscreenshots
936 set g_max_info_autoscreenshot 3 "how many info_autoscreenshot entities are allowed"
937
938 // mod names for server browser
939 // note: the lowest of these that mismatches default is used
940 set g_mod_physics "" "Current physics config name"
941 set g_mod_balance "" "Current balance config name"
942 set g_mod_config  "" "Current config mod name"
943
944 // session locking
945 locksession 1
946
947 // create this cvar in case the engine did not
948 set snd_soundradius 1200
949 set snd_softclip 1
950 set snd_maxchannelvolume 0
951 set snd_streaming_length 2
952 seta menu_snd_sliderscale 2 "0: decibels; 1: linear percent; 2: 0..10 scale; 3: slider size percent"
953 seta menu_snd_attenuation_method 1 "Use exponential instead of linear falloff for sound attenuation"
954 alias snd_attenuation_method_0 "set menu_snd_attenuation_method 0; set snd_soundradius 1200; set snd_attenuation_exponent 1; set snd_attenuation_decibel 0" // Quake default
955 alias snd_attenuation_method_1 "set menu_snd_attenuation_method 1; set snd_soundradius 2400; set snd_attenuation_exponent 4; set snd_attenuation_decibel 0" // nice approximation for method 2
956 alias snd_attenuation_method_2 "set menu_snd_attenuation_method 2; set snd_soundradius 1200; set snd_attenuation_exponent 0; set snd_attenuation_decibel 10" // warning: plays sounds within up to 6000qu
957 snd_attenuation_method_1
958
959 // declare the channels we use
960 seta snd_channel8volume 1 "QuakeC controlled background music volume"
961 seta snd_channel9volume 1 "QuakeC controlled ambient sound volume"
962
963 // sound randomization
964 snd_identicalsoundrandomization_time -0.1
965 snd_identicalsoundrandomization_tics    1
966
967 // loading screen
968 scr_loadingscreen_background 0
969 scr_loadingscreen_barcolor "0 0.5 1"
970 scr_loadingscreen_barheight 12
971 scr_loadingscreen_count 1
972 scr_loadingscreen_firstforstartup 1
973 scr_loadingscreen_scale 999
974 scr_loadingscreen_scale_base 1
975 scr_loadingscreen_scale_limit 2
976
977 // other config files
978 exec balance-xonotic.cfg
979 exec effects-normal.cfg
980 exec physicsX.cfg
981 exec turrets.cfg
982 exec crosshairs.cfg
983 exec gamemodes.cfg
984 exec mutators.cfg
985 exec notifications.cfg
986 exec monsters.cfg
987 exec minigames.cfg
988 exec physics.cfg
989
990 // load console command aliases and settings
991 exec commands.cfg
992
993 // hud cvar descriptions and common settings
994 exec _hud_common.cfg
995 exec _hud_descriptions.cfg
996 // exec the default skin config
997 // please add any new cvars into the hud_save script in qcsrc/client/hud_config.qc for consistency
998 exec hud_luma.cfg
999
1000
1001 // ... and now that everything is configured/aliased, we can do some things:
1002
1003 // Change g_start_delay based upon if the server is local or not.
1004 if_client set g_start_delay 0   "delay before the game starts, so everyone can join; recommended to set this to like 15 on a public server"
1005 if_dedicated set g_start_delay 15       "delay before the game starts, so everyone can join; recommended to set this to like 15 on a public server"
1006
1007 // enable menu syncing
1008 alias menu_sync "menu_cmd sync"
1009
1010 set sv_join_notices ""
1011 set sv_join_notices_time 15
1012
1013 seta cl_items_nofade 0
1014 seta cl_animate_items 1
1015 seta cl_ghost_items 0.45 "enable ghosted items (when between 0 and 1, overrides the alpha value)"
1016 seta cl_ghost_items_color "-1 -1 -1" "color of ghosted items, 0 0 0 leaves the color unchanged"
1017 set sv_simple_items 1 "allow or forbid client use of simple items"
1018 seta cl_simple_items 0 "enable simple items (if server allows)"
1019 set cl_simpleitems_postfix "_luma" "posfix to add fo model name when simple items are enabled"
1020 set cl_fullbright_items 0 "enable fullbright items (if server allows, controlled by g_fullbrightitems)"
1021 set cl_weapon_stay_color "2 0.5 0.5" "Color of picked up weapons when g_weapon_stay > 0"
1022 set cl_weapon_stay_alpha 0.75 "Alpha of picked up weapons when g_weapon_stay > 0"
1023
1024 set sv_showspectators 1 "Show who's spectating who in the player info panel when client has cl_showspectators on. Shouldn't be used on competitive servers, also disable when watching a suspected cheater"
1025 seta cl_showspectators 0 "Show who's spectating you if server has sv_showspectators enabled"
1026
1027 // Facility for config.cfg use ONLY.
1028 // Interpreted in post-config.cfg.
1029 seta menu_forced_saved_cvars "" "These cvars will always be saved, despite engine/Xonotic cvar saving status"
1030 set menu_reverted_nonsaved_cvars "" "These cvars are currently marked as saved in the flags, but have been reverted and won't stay saved. INTERNAL USE ONLY."