seta cl_announcer_antispam 2 "number of seconds before an announcement of the same sound can be played again"
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"
+set snd_softclip 1
+set snd_maxchannelvolume 0
+// Only streaming-decode music, not any sound effects. RAM is cheap nowadays.
+// Sadly, our longest sound effect is 36 seconds.
+set snd_streaming_length 40
+seta menu_snd_sliderscale 2 "0: decibels; 1: linear percent; 2: 0..10 scale; 3: slider size percent"
+
+// declare the channels we use
+seta snd_channel8volume 1 "QuakeC controlled background music volume"
+seta snd_channel9volume 1 "QuakeC controlled ambient sound volume"
+
set snd_cdautopause 0
// sound randomization
seta menu_weaponarena ""
-seta menu_maxplayers 16 "maxplayers value when the menu starts a game"
-
seta menu_mouse_absolute 1 "use the OS mouse pointer motion for menu"
seta menu_mouse_speed 1 "speed multiplier for the mouse in the menu (does not affect in-game aiming)"
set menu_use_default_hostname 1
fs_empty_files_in_pack_mark_deletions 1 // makes patches able to delete files
+// maxplayers will be set to this value later (in quake.rc)
+seta menu_maxplayers 16 "maxplayers value when the menu starts a game"
+
// singleplayer campaign
set g_campaign 0
set g_campaign_forceteam 0 "Forces the player to a given team in campaign mode, 1 = red, 2 = blue, 3 = yellow, 4 = pink"
//sys_ticrate 0.0166667 // 60fps. This would be ideal, but kills home routers.
sys_ticrate 0.0333333 // Use 30fps instead.
+// FIXME g_cdtracks_remaplist is a common cvar but server can't set it properly
+// because cdtracks.cfg is not available
// Audio track names (for old-style "cd loop NUMBER" usage)
set _cdtrack_first "1"
alias _cdtrack_0 "g_cdtracks_remaplist \"$g_cdtracks_remaplist $1\""
unalias _cdtrack_1
unalias _cdtrack
+// FIXME cd is not available in the server
cd remap $g_cdtracks_remaplist
set sv_intermission_cdtrack ""
set g_debug_defaultsounds 0 "always use default sounds"
// define some engine cvars that we need even on dedicated server
-set r_showbboxes 0
// match q3map2
mod_obj_orientation 0
// create this cvar in case the engine did not
set snd_soundradius 1200
-set snd_softclip 1
-set snd_maxchannelvolume 0
-// Only streaming-decode music, not any sound effects. RAM is cheap nowadays.
-// Sadly, our longest sound effect is 36 seconds.
-set snd_streaming_length 40
-seta menu_snd_sliderscale 2 "0: decibels; 1: linear percent; 2: 0..10 scale; 3: slider size percent"
seta menu_snd_attenuation_method 1 "Use exponential instead of linear falloff for sound attenuation"
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
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
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
snd_attenuation_method_1
-// declare the channels we use
-seta snd_channel8volume 1 "QuakeC controlled background music volume"
-seta snd_channel9volume 1 "QuakeC controlled ambient sound volume"
+// dedicated server only needs snd_soundradius
+if_dedicated unset menu_snd_attenuation_method
+if_dedicated unset snd_attenuation_exponent
+if_dedicated unset snd_attenuation_decibel
+if_dedicated unalias snd_attenuation_method_0
+if_dedicated unalias snd_attenuation_method_1
+if_dedicated unalias snd_attenuation_method_2
set debug_deglobalization_logging 0 "bitfield: 1 logs usage of the old functions which use globals implicitly, 2 logs usage of the new wrappers; support for this can be disabled at compile time for better performance"
set debug_deglobalization_clear 0 "make the new wrappers set globals to NaN after use, this helps find bugs but can result in crashes; support for this can be disabled at compile time for better performance"