]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - xonotic-server.cfg
create round_enddelay for CA, FT and Surv, default 1s, whitelisted
[xonotic/xonotic-data.pk3dir.git] / xonotic-server.cfg
index 1821fa1d7a56662efb77bb69da71ccbabc198bfb..6bc987f677eb37772c78ce4697b84c135383d7f3 100644 (file)
@@ -27,14 +27,14 @@ alias sv_hook_readyrestart
 set teamplay_lockonrestart 0 "lock teams once all players readied up and the game restarted (no new players can join after restart unless using the server-command unlockteams)"
 
 set g_maxplayers 0 "maximum number of players allowed to play at the same time, 0 means unlimited, -1 uses the map setting or unlimited if not set (rounded to multiple of team number)"
-set g_maxplayers_spectator_blocktime 5 "if the players voted for the \"nospectators\" command, this setting defines the number of seconds a observer/spectator has time to join the game before he gets kicked"
+set g_maxplayers_spectator_blocktime 5 "if the players voted for the \"nospectators\" command, this setting defines the number of seconds a observer/spectator has time to join the game before they get kicked"
 
 // tournament mod
-set g_warmup 0 "split the game into a warmup- and match-stage, -1 means stay in warmup until enough (set by map, lower bound of 2 or 2 per team) players join, then g_warmup_limit and readiness apply"
+set g_warmup 0 "splits the game into warmup and match stages, 1 means the match starts when g_warmup_majority_factor of players are ready OR g_warmup_limit is hit, >1 also requires at least g_warmup players (including bots) to join, -1 means that minimum player requrement is set by the map (lower bound of 2 or 2 per team)"
 set g_warmup_limit 180 "limit warmup-stage to this time (in seconds); if set to -1 the warmup-stage is not affected by any timelimit, if set to 0 the usual timelimit also affects warmup-stage"
 set g_warmup_allow_timeout 0 "allow calling timeouts in the warmup-stage (if sv_timeout is set to 1)"
 set g_warmup_allguns 1 "provide more weapons on start while in warmup: 0 = normal start weapons, 1 = all guns available on the map, 2 = all normal weapons"
-set g_warmup_majority_factor 0.8 "fraction of joined players sufficient to end warmup before g_warmup_limit by readying up"
+set g_warmup_majority_factor 0.8 "fraction of joined players (not including bots) sufficient to end warmup before g_warmup_limit by readying up"
 
 alias sv_hook_warmupend
 
@@ -51,6 +51,8 @@ set sv_timeout_number 2 "how many timeouts one player is allowed to call (gets r
 set sv_timeout_leadtime 4 "how long the players will be informed that a timeout was called before it starts, in seconds"
 set sv_timeout_resumetime 3 "how long the remaining timeout-time will be after a player called the timein command"
 
+set sv_autopause 1 "Single player or listen server: pause while all clients have the menu, console or chat open. Dedicated server: pause after starting a map if the server is empty and unpause when the first player joins the empty server."
+
 set g_telefrags 1 "telefragging, i.e. killing someone who stands in the way of someone who is teleporting"
 set g_telefrags_teamplay 1 "never telefrag team mates"
 set g_telefrags_avoid 1 "when teleporters have a random destination, avoid teleporting to locations where a telefrag would happen"
@@ -375,7 +377,11 @@ set g_chat_flood_burst_team 2 "team chat: allow bursts of so many chat lines"
 set g_chat_flood_spl_tell 1 "private chat: seconds between lines to not count as flooding"
 set g_chat_flood_lmax_tell 2 "private chat: maximum number of lines per chat message at once"
 set g_chat_flood_burst_tell 2 "private chat: allow bursts of so many chat lines"
-set g_chat_flood_notify_flooder 1 "when 0, the flooder still can see his own message"
+set g_chat_flood_notify_flooder 1 "when disabled, the flooder still can see their own message"
+set g_chat_allowed 1 "allow players to communicate via in-game chat"
+set g_chat_private_allowed 1 "allow players to communicate via in-game private chat"
+set g_chat_spectator_allowed 1 "allow spectators to communicate via in-game chat"
+set g_chat_team_allowed 1 "allow players to communicate via in-game team chat"
 set g_chat_teamcolors 0 "colorize nicknames in team color for chat"
 set g_chat_tellprivacy 1 "when disabled, tell messages are also sent to the server console log... otherwise they're kept private between players."
 set g_nick_flood_timeout 120 "time after which nick flood protection resets (set to 0 to disable nick flood checking)"
@@ -389,11 +395,20 @@ set sv_waypointsprite_limitedrange 5120 "default maximum viewing distance of way
 
 set sv_itemstime 1 "enable networking of time left until respawn for items such as mega health/armor and powerups"
 
+// bans
 set g_ban_default_bantime 5400 "90 minutes"
 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)"
+set g_ban_sync_uri "" "sync using this ban list provider (empty string to disable)"
+set g_ban_sync_interval 5 "sync every 5 minutes"
+set g_ban_sync_trusted_servers "" "request ban lists from these xonotic servers (do not include your own server there, or unbanning may fail)"
+set g_ban_sync_timeout 45 "time out in seconds for the ban sync requests"
+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"
 set g_ban_telluser 1 "notify the banned player about it when they try to join"
 set g_banned_list "" "format: IP remainingtime IP remainingtime ..."
 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)"
+set g_muteban_list "" "list of banned players from chat, format: IP playerkey ..."
+set g_playban_list "" "list of banned players from playing (forced to spectate), format: IP playerkey ..."
+set g_voteban_list "" "list of banned players from voting, format: IP playerkey ..."
 
 // useful vote aliases
 set timelimit_increment 5 "number of minutes added to the timer when voting for extendmatchtime"
@@ -406,7 +421,7 @@ sv_gameplayfix_q2airaccelerate 1
 sv_gameplayfix_stepmultipletimes 1
 sv_gameplayfix_stepdown 2
 // only available in qc physics
-set sv_gameplayfix_stepdown_maxspeed 0 "maximum speed walking entities can be moving for stepping down to apply - requires sv_qcphysics 1"
+set sv_gameplayfix_stepdown_maxspeed 0 "maximum speed walking entities can be moving for stepping down to apply"
 
 // delay for "kill" to prevent abuse
 set g_balance_kill_delay 2 "timer before death when using the kill command"
@@ -434,12 +449,6 @@ set g_maplist_allow_frustrating 0 "allow impossible maps to be, e.g., voted for
 
 set sv_clones 0 "number of clones a player may make (reset by the \"kill\" command)"
 
-set g_ban_sync_uri "" "sync using this ban list provider (empty string to disable)"
-set g_ban_sync_interval 5 "sync every 5 minutes"
-set g_ban_sync_trusted_servers "" "request ban lists from these xonotic servers (do not include your own server there, or unbanning may fail)"
-set g_ban_sync_timeout 45 "time out in seconds for the ban sync requests"
-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"
-
 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"
 
 set g_ballistics_mindistance 2 "when shooting through walls thinner than this, treat them as this thick (useful because patches (curved surfaces) have no thickness)"
@@ -495,6 +504,44 @@ set debug_text_3d_default_align 0 "Default text alignment for debug_text_3d()"
 set debug_text_3d_default_duration 10 "Default duration for debug_text_3d()"
 set debug_text_3d_default_velocity "0 -10 0" "Default velocity for debug_text_3d() in screen coords (X and Y from top left)"
 
+///////// qc debugger shortcuts /////////
+// breakpoint
+alias ps_b "prvm_breakpoint server ${* ?}"
+alias pc_b "prvm_breakpoint client ${* ?}"
+alias pm_b "prvm_breakpoint menu ${* ?}"
+
+// entity
+alias ps_e "prvm_edict server ${* ?}"
+alias pc_e "prvm_edict client ${* ?}"
+alias pm_e "prvm_edict menu ${* ?}"
+
+// field get
+alias ps_fg "prvm_edictget server ${* ?}"
+alias pc_fg "prvm_edictget client ${* ?}"
+alias pm_fg "prvm_edictget menu ${* ?}"
+// field set
+alias ps_fs "prvm_edictset server ${* ?}"
+alias pc_fs "prvm_edictset client ${* ?}"
+alias pm_fs "prvm_edictset menu ${* ?}"
+// field watchpoint
+alias ps_fw "prvm_edictwatchpoint server ${* ?}"
+alias pc_fw "prvm_edictwatchpoint client ${* ?}"
+alias pm_fw "prvm_edictwatchpoint menu ${* ?}"
+
+// global get
+alias ps_gg "prvm_globalget server ${* ?}"
+alias pc_gg "prvm_globalget client ${* ?}"
+alias pm_gg "prvm_globalget menu ${* ?}"
+// global set
+alias ps_gs "prvm_globalset server ${* ?}"
+alias pc_gs "prvm_globalset client ${* ?}"
+alias pm_gs "prvm_globalset menu ${* ?}"
+// global watchpoint
+alias ps_gw "prvm_globalwatchpoint server ${* ?}"
+alias pc_gw "prvm_globalwatchpoint client ${* ?}"
+alias pm_gw "prvm_globalwatchpoint menu ${* ?}"
+///////// qc debugger shortcuts END /////////
+
 // otherwise, antilag breaks
 sv_gameplayfix_consistentplayerprethink 1
 
@@ -529,6 +576,9 @@ set sv_db_saveasdump 0 "write server.db in dump format (loads slower, easier to
 // allow fullbright
 set sv_allow_fullbright 1 "when set, clients may use r_fullbright on this server without getting a night vision effect overlay"
 
+// forbid pickup timer
+set sv_forbid_pickuptimer 0 "when set, clients won't be able to see the time they picked up an item"
+
 // auto-teams (team selection by player ID)
 // any player not listed is forced to spectate
 set g_forced_team_red "" "list of player IDs for red team"
@@ -558,6 +608,27 @@ set g_playerstats_playerdetail_autoupdatetime 1800 // automatically update every
 // autoscreenshots
 set g_max_info_autoscreenshot 3 "how many info_autoscreenshot entities are allowed"
 
+
+// commands for saving and reloading the current posistion and view, even after a map restart
+// useful for taking screenshots and comparing things
+alias posview_load "_posview_set \"$_posview_pos\" \"$_posview_angles\""
+alias posview_save "_posview_save_to_cvars _posview_pos _posview_angles; _posview_save_$posview_verbose"
+alias _posview_save_0 ""
+alias _posview_save_1 "posview_info"
+
+// NOTE without ^7 the quote mark wouldn't be printed
+alias posview_info "echo saved player posview:; echo _posview_pos ^7\"$_posview_pos\"; echo _posview_angles ^7\"$_posview_angles\""
+seta posview_verbose 1 "also print posview on save so that a previously saved posview can be restored by copying it from the OS console log and pasted to the Xonotic console"
+
+// internal commands:
+//  _posview_set <position> <view angles>: sets the specified position and view angles ("x y z" "pitch yaw roll")
+//  _posview_save_to_cvars <pos_cvar> <angles_cvar>: saves current position and view angles to the specified cvars
+alias _posview_set "prvm_edictset server 1 origin \"$1\"; prvm_edictset server 1 fixangle 1; prvm_edictset server 1 angles \"$2\""
+alias _posview_save_to_cvars "prvm_edictget server 1 origin ${1 ?}; prvm_edictget server 1 v_angle ${2 ?}"
+seta _posview_pos "0 0 0"
+seta _posview_angles "0 0 0"
+
+
 // mod names for server browser
 // note: the lowest of these that mismatches default is used
 set g_mod_physics "" "Current physics config name"
@@ -586,6 +657,8 @@ set sv_showspectators 1 "Show who's spectating who in the player info panel when
 
 set sv_damagetext 2 "<= 0: disabled, >= 1: visible to spectators, >= 2: visible to attacker, >= 3: all players see everyone's damage"
 
+set sv_show_entnum 0 "Show the number and some info of the entity you're aiming at"
+
 set sv_showfps 0 "Show player's FPS counters in the scoreboard. This setting acts as a delay in seconds between updates. NOTE: this feature gathers performance telemetry, it may require consent from players on the server depending on your legislation"
 set sv_doors_always_open 0 "If set to 1 don't close doors which after they were open"
 
@@ -594,4 +667,7 @@ set sv_warpzone_allow_selftarget 0 "do not touch"
 // don't notify cvar changes in the chat
 sv_disablenotify 1
 
-set sv_quickmenu_file "" "filename of the quickmenu that appears in client's default quickmenu, file must be located in a subfolder with an unique name"
+set sv_quickmenu_file "" "filename of a custom server's quickmenu that will be selectable from the default client's quickmenu. This file must be sent in a pk3 archive and should have an unique name (e.g. quickmenu-servername.txt) to prevent overriding existing quickmenus"
+
+// Avoid perf problems near '0 0 0'; `set` without a description is because only current DP has this engine cvar
+set sv_areagrid_link_SOLID_NOT 0