X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;ds=sidebyside;f=xonotic-server.cfg;h=d1cad0b12308f679d5e4b196ee9005947f36a60b;hb=b8b554363b516af916ff3c7e8ee1349516d5be6c;hp=8593149805835749a9dc9848804a7113836a6f5b;hpb=8738750fed941e32330bc7d92bf0847e0fff02c2;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/xonotic-server.cfg b/xonotic-server.cfg index 859314980..d1cad0b12 100644 --- a/xonotic-server.cfg +++ b/xonotic-server.cfg @@ -26,15 +26,15 @@ alias sv_hook_readyrestart //nifreks lockonrestart feature, used in team-based game modes, if set to 1 and all players readied up no other player can then join the game anymore, useful to block spectators from joining 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, set to 0 to allow all players to join the game" -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 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 they get kicked" // tournament mod -set g_warmup 0 "split the game into a warmup- and match-stage" +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 "minimum percentage of players ready needed for warmup to end" +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" @@ -138,14 +140,11 @@ set bot_ai_dangerdetectioninterval 0.25 "How often scan for waypoints with dange set bot_ai_dangerdetectionupdates 64 "How many waypoints will be considered for danger detection" set bot_ai_aimskill_blendrate 2 "How much correction will be applied to the aiming angle" set bot_ai_aimskill_fixedrate 15 "Distance based scale from which correction will be applied to the aiming angle" -set bot_ai_aimskill_firetolerance 0 "enable fire tolerance" -set bot_ai_aimskill_firetolerance_distdegrees 100 "Rate at which the aiming angle is updated, scales by skill" -set bot_ai_aimskill_firetolerance_mindegrees 2 "Minimum angle tolerance. Used on large distances" -set bot_ai_aimskill_firetolerance_maxdegrees 60 "Maximum firing angle. Used on close range" +set bot_ai_aimskill_firetolerance 1 "enable fire tolerance" set bot_ai_aimskill_mouse 1 "How much of the aiming filters are applied" set bot_ai_keyboard_distance 250 "Keyboard emulation is disabled after this distance to the goal" set bot_ai_keyboard_threshold 0.57 -set bot_ai_aimskill_offset 0.3 "Amount of error induced to the bots aim" +set bot_ai_aimskill_offset 1.8 "Amount of error induced to the bots aim" set bot_ai_aimskill_think 1 "Aiming velocity. Use values below 1 for slower aiming" set bot_ai_custom_weapon_priority_distances "300 850" "Define close and far distances in any order. Based on the distance to the enemy bots will choose different weapons" set bot_ai_custom_weapon_priority_far "vaporizer oknex vortex rifle electro devastator mortar hagar hlac crylink blaster okmachinegun machinegun fireball seeker okshotgun shotgun shockwave tuba minelayer" "Desired weapons for far distances ordered by priority" @@ -200,6 +199,7 @@ set g_shootfromfixedorigin "" "if set to a string like 0 y z, the gun is moved t set g_weapon_stay 0 "1: ghost weapons can be picked up but give no ammo, thrown guns have ammo 2: ghost weapons can be picked up and refill ammo to one pickup size, thrown guns have no ammo (to prevent infinite ammo abuse)" set g_weapon_throwable 1 "if set to 1, weapons can be dropped" set g_powerups -1 "if set to 0 no powerups will spawn, if 1 they will spawn in all game modes, -1 is game mode default" +set g_powerups_drop 0 "allow dropping powerups (1 = timer continues, 2 = timer freezes until picked up)" set g_powerups_drop_ondeath 0 "players will drop their powerups on death (1 = timer continues, 2 = timer freezes until picked up)" set g_powerups_stack 0 "enables stacking of powerup timers when picking up a powerup you already have; otherwise timer is reset to the time granted by the item, if greater than the time you currently have" set g_powerups_strength 1 "allow strength powerups to spawn" @@ -231,6 +231,7 @@ set g_maplist_check_waypoints 0 "when 1, maps are skipped if there currently are set g_maplist_ignore_sizes 0 "when 1, all maps are shown in the map list regardless of player count" set g_maplist_sizes_count_maxplayers 1 "check the player limit when getting the player count so forced spectators don't affect the size restrictions" set g_maplist_sizes_count_bots 1 "include the number of bots currently in the server when counting the number of players for size restrictions" +set g_maplist_sizes_specparty 0 "this fraction of people are expected to only spectate, reduces player count used to select voting GUI maps" set g_items_mindist 4000 "starting distance for the fading of items" set g_items_maxdist 4500 "maximum distance at which an item can be viewed, after which it will be invisible" @@ -376,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)" @@ -390,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_chatban_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,9 +420,8 @@ sv_gameplayfix_delayprojectiles 0 sv_gameplayfix_q2airaccelerate 1 sv_gameplayfix_stepmultipletimes 1 sv_gameplayfix_stepdown 2 -sv_gameplayfix_unstickplayers 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" @@ -436,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)" @@ -497,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 @@ -504,7 +549,7 @@ sv_gameplayfix_consistentplayerprethink 1 sv_gameplayfix_gravityunaffectedbyticrate 1 sv_gameplayfix_nogravityonground 1 -set sv_q3compat_changehitbox 0 "use Q3 player hitbox dimensions and camera height on Q3 maps (maps with an entry in a .arena or .defi file) +set sv_q3compat_changehitbox 0 "use Q3 player hitbox dimensions and camera height on Q3 maps (maps with an entry in a .arena or .defi file)" set g_movement_highspeed 1 "multiplier scale for movement speed (applies to sv_maxspeed and sv_maxairspeed, also applies to air acceleration when g_movement_highspeed_q3_compat is set to 0)" set g_movement_highspeed_q3_compat 0 "apply speed modifiers to air movement in a more Q3-compatible way (only apply speed buffs and g_movement_highspeed to max air speed, not to acceleration)" @@ -531,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" @@ -560,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 : sets the specified position and view angles ("x y z" "pitch yaw roll") +// _posview_save_to_cvars : 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" @@ -588,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" @@ -595,3 +666,8 @@ 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 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