CINXE.COM

ServerAdministration - The Battle for Wesnoth Wiki

<!DOCTYPE html> <html class="client-nojs" lang="en" dir="ltr"> <head> <meta charset="UTF-8"/> <title>ServerAdministration - The Battle for Wesnoth Wiki</title> <script>document.documentElement.className = document.documentElement.className.replace( /(^|\s)client-nojs(\s|$)/, "$1client-js$2" );</script> <script>(window.RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"ServerAdministration","wgTitle":"ServerAdministration","wgCurRevisionId":65110,"wgRevisionId":65110,"wgArticleId":1758,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Troubleshooting and Bugs","Server Documentation"],"wgBreakFrames":false,"wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgMonthNamesShort":["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"wgRelevantPageName":"ServerAdministration","wgRelevantArticleId":1758,"wgRequestId":"221fef4a8630bfff66b13cd2","wgIsProbablyEditable":false,"wgRelevantPageIsProbablyEditable":false,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgWikiEditorEnabledModules":[]});mw.loader.state({"site.styles":"ready","noscript":"ready","user.styles":"ready","user":"ready","user.options":"ready","user.tokens":"loading","ext.CookieWarning.styles":"ready","mediawiki.legacy.shared":"ready","mediawiki.legacy.commonPrint":"ready","mediawiki.sectionAnchor":"ready"});mw.loader.implement("user.tokens@15y0z4f",function($,jQuery,require,module){/*@nomin*/mw.user.tokens.set({"editToken":"+\\","patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); });mw.loader.load(["site","mediawiki.page.startup","mediawiki.user","mediawiki.hidpi","mediawiki.page.ready","mediawiki.toc","mediawiki.searchSuggest","ext.CookieWarning","skins.wesmere.js"]);});</script> <link rel="stylesheet" href="/load.php?debug=false&amp;lang=en&amp;modules=ext.CookieWarning.styles%7Cmediawiki.legacy.commonPrint%2Cshared%7Cmediawiki.sectionAnchor&amp;only=styles&amp;skin=Wesmere"/> <script async="" src="/load.php?debug=false&amp;lang=en&amp;modules=startup&amp;only=scripts&amp;skin=Wesmere"></script> <meta name="ResourceLoaderDynamicStyles" content=""/> <link rel="stylesheet" href="/load.php?debug=false&amp;lang=en&amp;modules=site.styles&amp;only=styles&amp;skin=Wesmere"/> <meta name="generator" content="MediaWiki 1.31.16"/> <meta name="description" content="The Wesnoth server, wesnothd provides a simple interface for administering the server from within the game itself."/> <link rel="shortcut icon" href="/favicon.ico"/> <link rel="search" type="application/opensearchdescription+xml" href="/opensearch_desc.php" title="The Battle for Wesnoth Wiki (en)"/> <link rel="EditURI" type="application/rsd+xml" href="https://wiki.wesnoth.org/api.php?action=rsd"/> <link rel="alternate" type="application/atom+xml" title="The Battle for Wesnoth Wiki Atom feed" href="/index.php?title=Special:RecentChanges&amp;feed=atom"/> <meta name="viewport" content="width=device-width,initial-scale=1" /> <link rel="stylesheet" type="text/css" href="https://www.wesnoth.org/wesmere/css/wesmere-1.2.0.css" /> <script src="https://www.wesnoth.org/wesmere/js/modernizr.js"></script> <link rel="apple-touch-icon" type="image/png" href="https://www.wesnoth.org/wesmere/img/apple-touch-icon.png" sizes="180x180" /> <link rel="icon" type="image/png" href="https://www.wesnoth.org/wesmere/img/favicon-32.png" sizes="32x32" /> <link rel="icon" type="image/png" href="https://www.wesnoth.org/wesmere/img/favicon-16.png" sizes="16x16" /> <meta name="theme-color" content="#0f1421" /> <!--[if lt IE 9]><script src="/load.php?debug=false&amp;lang=en&amp;modules=html5shiv&amp;only=scripts&amp;skin=Wesmere&amp;sync=1"></script><![endif]--> </head> <body class="mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-ServerAdministration rootpage-ServerAdministration skin-Wesmere action-view"><div class="mw-cookiewarning-container"><div class="mw-cookiewarning-text"><span>Cookies help us deliver our services. By using our services, you agree to our use of cookies.</span><form method="POST"><input name="disablecookiewarning" class="mw-cookiewarning-dismiss" type="submit" value="OK"/></form></div></div> <div id="main"> <div id="nav" role="banner"> <div class="centerbox"> <div id="logo"> <a href="https://www.wesnoth.org/" aria-label="Wesnoth logo"></a> </div> <ul id="navlinks"> <li><a href="https://www.wesnoth.org/">Home</a></li> <li><a href="https://forums.wesnoth.org/viewforum.php?f=62">News</a></li> <li><a href="https://wiki.wesnoth.org/Play">Play</a></li> <li><a href="https://wiki.wesnoth.org/Create">Create</a></li> <li><a href="https://forums.wesnoth.org/">Forums</a></li> <li><a href="https://wiki.wesnoth.org/Project">About</a></li> </ul> <div id="sitesearch" role="search"> <form method="get" action="/index.php"> <input id="searchbox" type="search" name="search" placeholder="Search" value="" title="Search this wiki [Alt+Shift+f]" accesskey="f" /> <span id="searchbox-controls"> <button id="search-go" class="search-button" type="submit" title="Search"> <i class="search-icon" aria-hidden="true"></i> <span class="sr-label">Search this wiki</span> </button> </span> </form> </div> <div class="reset"></div> </div> </div> <div id="content" class="mw-content" role="main"> <a id="top"></a> <div id="wm-wiki-toolbar" role="toolbar"><ul class="wm-toolbar" role="toolbar" aria-label="Wiki"><li id="ca-nstab-main" class="selected"><a href="/ServerAdministration" role="button" title="View the content page [c]" accesskey="c"><i class="wm-toolbar-icon" aria-hidden="true"></i><span class="sr-label">Page</span></a></li><li id="ca-talk" class="new"><a href="/index.php?title=Talk:ServerAdministration&amp;action=edit&amp;redlink=1" rel="discussion" role="button" title="Discussion about the content page (page does not exist) [t]" accesskey="t"><i class="wm-toolbar-icon" aria-hidden="true"></i><span class="sr-label">Discussion</span></a></li><li id="ca-history"><a href="/index.php?title=ServerAdministration&amp;action=history" role="button" title="Past revisions of this page [h]" accesskey="h"><i class="wm-toolbar-icon" aria-hidden="true"></i><span class="sr-label">History</span></a></li><li id="wm-places-menu" class="wm-dropdown"><a class="wm-dropdown-trigger" href="#" title="Places" role="button"><i class="wm-toolbar-icon" aria-hidden="true"></i><span class="sr-label">Places</span><i class="wm-toolbar-dropdown-marker" aria-hidden="true"></i></a><ul class="wm-dropdown-menu" role="menu"><li id="n-mainpage-description"><a href="/Main_Page" role="menuitem" title="Visit the main page [z]" accesskey="z"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Main page</span></a></li><li id="n-recentchanges"><a href="/Special:RecentChanges" role="menuitem" title="A list of recent changes in the wiki [r]" accesskey="r"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Recent changes</span></a></li><li id="n-randompage"><a href="/Special:Random" role="menuitem" title="Load a random page [x]" accesskey="x"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Random page</span></a></li><li id="n-help-mediawiki"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents" role="menuitem"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Help about MediaWiki</span></a></li></ul><li id="wm-advanced-menu" class="wm-dropdown"><a class="wm-dropdown-trigger" href="#" title="Advanced" role="button"><i class="wm-toolbar-icon" aria-hidden="true"></i><span class="sr-label">Advanced</span><i class="wm-toolbar-dropdown-marker" aria-hidden="true"></i></a><ul class="wm-dropdown-menu" role="menu"><li id="ca-viewsource"><a href="/index.php?title=ServerAdministration&amp;action=edit" role="menuitem" title="This page is protected.&#10;You can view its source [e]" accesskey="e"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>View source</span></a></li><li id="t-whatlinkshere"><a href="/Special:WhatLinksHere/ServerAdministration" role="menuitem" title="A list of all wiki pages that link here [j]" accesskey="j"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>What links here</span></a></li><li id="t-recentchangeslinked"><a href="/Special:RecentChangesLinked/ServerAdministration" rel="nofollow" role="menuitem" title="Recent changes in pages linked from this page [k]" accesskey="k"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Related changes</span></a></li><li id="t-specialpages"><a href="/Special:SpecialPages" role="menuitem" title="A list of all special pages [q]" accesskey="q"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Special pages</span></a></li><li id="t-permalink"><a href="/index.php?title=ServerAdministration&amp;oldid=65110" role="menuitem" title="Permanent link to this revision of the page"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Permanent link</span></a></li><li id="t-info"><a href="/index.php?title=ServerAdministration&amp;action=info" role="menuitem" title="More information about this page"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Page information</span></a></li></ul></ul><ul class="wm-toolbar" role="toolbar" aria-label="User"><li id="wm-account-menu" class="wm-dropdown"><a class="wm-dropdown-trigger" href="#" title="Your account" role="button"><i class="wm-toolbar-icon" aria-hidden="true"></i><span class="sr-label">Not logged in</span><i class="wm-toolbar-dropdown-marker" aria-hidden="true"></i></a><ul class="wm-dropdown-menu" role="menu"><li id="pt-login"><a href="/index.php?title=Special:UserLogin&amp;returnto=ServerAdministration" role="menuitem" title="You are encouraged to log in; however, it is not mandatory [o]" accesskey="o"><i class="wm-toolbar-icon" aria-hidden="true"></i><span>Log in</span></a></li></ul></ul></div> <!-- wm-wiki-toolbar --> <h1 class="firstHeading" lang="en">ServerAdministration</h1> <div id="bodyContent"> <div id="siteSub">From The Battle for Wesnoth Wiki</div> <div id="contentSub"></div> <!-- start wikipage --> <div id="mw-content-text" lang="en" dir="ltr" class="mw-content-ltr"><div class="mw-parser-output"><div id="toc" class="toc"><div class="toctitle" lang="en" dir="ltr"><h2>Contents</h2></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#Overview"><span class="tocnumber">1</span> <span class="toctext">Overview</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#Available_commands"><span class="tocnumber">2</span> <span class="toctext">Available commands</span></a></li> <li class="toclevel-1 tocsection-3"><a href="#Future_extensions"><span class="tocnumber">3</span> <span class="toctext">Future extensions</span></a></li> <li class="toclevel-1 tocsection-4"><a href="#See_Also"><span class="tocnumber">4</span> <span class="toctext">See Also</span></a></li> </ul> </div> <h2><span class="mw-headline" id="Overview">Overview</span></h2> <p>The Wesnoth server, <a href="/Wesnothd" title="Wesnothd">wesnothd</a> provides a simple interface for administering the server from within the game itself. </p><p>To issue an administrative command to the server, you must be connected to the server using Wesnoth, and in the lobby. Any text you type into the chat box that <b>begins with '/query ' (or '/q ')</b> will be considered an administrative command instead of a normal chat message. It will not be relayed to other users, but instead treated as a command by the server. </p><p>Most commands are not accessible to normal users. They are only accessible once you have authenticated yourself to the server as an administrator. The way to authenticate yourself as an administrator is to use the command, </p><p><b>/query admin &lt;password&gt;</b> </p><p>where &lt;password&gt; is the administrative password to the server. The administrative password is specified as the passwd attribute in wesnothd.cfg. Naturally the password for a server should be kept a secret. One danger is that if you forget to type '/query ' at the start of a command you may accidentally type the password in a chat message, and let all users on the server know it. If you do this, then notify an administrator who has access to the box as soon as possible, so they can reset the password in wesnothd.cfg. We may provide features to prevent this kind of accident in future versions. </p><p>A message from the server should tell you that you have successfully authenticated yourself as an administrator. The server will recognize you as an administrator until the next time you log out of the server. If the server has support for accounts it may also remember and authenticate you automatically as an administrator next time. </p> <h2><span class="mw-headline" id="Available_commands">Available commands</span></h2> <p>Note: Moderators of the official Wesnoth servers can utilize these commands <a href="/ServerAdministration_FromIRC" title="ServerAdministration FromIRC">via IRC</a>. </p><p><br /> <b>/query report &lt;message&gt;</b>: sends a message to all moderators which also gets logged in case none is on. You can use this to report abuse, rule violations, etc. (available to non-administrators, duh) </p><p><b>/query games</b>: shows how many games have ended in various ways. (available to non-administrators) </p><p><b>/query metrics</b>: shows a simple metrics report of how the server has been performing. (available to non-administrators) </p><p><b>/query netstats</b>: shows some network stats. (available to non-administrators) </p><p><b>/query stats</b>: shows the current number of users and games. (available to non-administrators) </p><p><b>/query wml</b>: shows stats about WML documents and their current memory consumption. (available to non-administrators) </p><p><b>/query status [&lt;nickname mask&gt;]</b>: this command will show you a list of users (matching the nickname mask) connected to the server, with IP addresses, and how long they have been connected. Note that IP addresses of users are not available to non-administrators, and should be treated as confidential. When used as a non-administrator it just returns the entry of the user. </p><p><b>/query motd [&lt;message&gt;]</b>: this command sets the message of the day that appears as the first message users get when they log on to the server. Without argument it returns the current motd. (available to non-administrators) </p><p><b>/query msg &lt;message&gt;</b>: this command will relay the message 'message' to all users on the server, even if they are in a game. The message will appear to come from 'server', so you should write your name as part of the message if it is necessary to show who it comes from. </p><p><b>/query lobbymsg &lt;message&gt;</b>: this command will relay the message 'message' to all users in the lobby of the server. The message will appear to come from 'server', so you should write your name as part of the message if it is necessary to show who it comes from. </p><p><b>/query pm &lt;nick&gt; &lt;message&gt;</b>: sends a private message to a user. Sender name will be visible to receiver. </p><p><b>/query clones</b>: shows a list of all users that have the same IP address as another one. </p><p><b>/query kick &lt;mask&gt; [&lt;reason&gt;]</b>: this command will disconnect the user matching the given nickname or ip mask from the server. </p><p><b>/query ban &lt;mask&gt; &lt;time&gt; &lt;reason&gt;</b>: this command will make the server refuse connections from users matching the given IP mask or the IPs of users matching the nickname mask. Existing bans (and their reason!) will be overwritten so you can change the reason for a ban by adding it again. </p><p><b>/query gban &lt;mask&gt; &lt;group&gt; &lt;time&gt; &lt;reason&gt;</b>: this command will make a ban that belongs to a group. They function just like ordinary bans but only the group name is mentioned in the ban listing. </p><p><b>/query bans</b>: shows a list of currently banned IP masks and the reasons for the bans. </p><p><b>/query kban &lt;mask&gt; &lt;time&gt; &lt;reason&gt;</b>: this command is equivalent to 'kick &lt;mask&gt;' 'ban &lt;mask&gt; &lt;time&gt; &lt;reason&gt;' -- i.e. bans the users matching the IP mask or the IPs of users matching the nickname mask and disconnects them all in one go. The most common way to ban someone from the server. </p><p><b>/query unban &lt;ipmask&gt;</b>: this command removes the specified IP mask from the ban list. To unban a user, unban the corresponding IP address. </p><p><b>/query ungban &lt;group&gt;</b>: this command removes all bans in the group. </p><p><b>/query searchlog &lt;mask&gt; (or /q sl &lt;mask&gt;)</b>: this returns the IP a nickname matching the mask has used or the nicknames that used a matching IP. Unlike status this searches the IP log. </p><p><b>/query deny_unregistered_login [yes|no]</b>: If set to yes the server will refuse to let unregistered users log in. Without an argument the current setting is displayed. There is an alias 'dul' for convenience. </p><p><b>/query stopgame &lt;nick&gt; [&lt;reason&gt;]</b>: Stops the game &lt;nick&gt; is in, forcing all players and observers back to the lobby. </p><p><br /> Masks are arguments that can contain wildcards ('*' and '?'). '*' matches any number of characters (including none), and '?' any one character. IP masks are masks that contain at least one '.'. </p><p>The time parameter is used to set the time when a ban expires. A simple example is 2D12h which means after 2 days and 12 hours the ban gets removed. Modifiers are: s=seconds, m=minutes, h=hours, D=days, M=months and Y=years (case doesn't actually matter except for minutes (m) and months (M); also you can write the modifiers (partially) out as in 2days12hours). Permanent bans can be set with 'permanent' or '0' as the time argument. We can also set shortcuts like LONG, MEDIUM and SHORT for common ban lengths but none is set yet. </p> <h2><span class="mw-headline" id="Future_extensions">Future extensions</span></h2> <p>The current administrative interface is fairly primitive. We plan to provide some further extensions in the future, such as, </p><p><b>/query mute &lt;nickname&gt;</b>: makes it so that any messages sent by the user with the given nickname will not be received by any other user on the server unless they share an IP address with 'nickname'. Any games created by 'nickname' will likewise not be seen by other users. 'nickname' may observe games but will not appear in the observer list, and players of the game will not see any messages they type. </p> <h2><span class="mw-headline" id="See_Also">See Also</span></h2> <ul><li><a href="/CommandMode" title="CommandMode">CommandMode</a></li> <li><a href="/DebugMode" title="DebugMode">DebugMode</a></li> <li><a href="/ChatCommands" title="ChatCommands">ChatCommands</a></li> <li><a href="/ServerAdministration_FromIRC" title="ServerAdministration FromIRC">Server Administration via IRC</a></li></ul> <!-- NewPP limit report Cached time: 20250304011018 Cache expiry: 86400 Dynamic content: false CPU time usage: 0.007 seconds Real time usage: 0.008 seconds Preprocessor visited node count: 14/1000000 Preprocessor generated node count: 20/1000000 Post‐expand include size: 0/2097152 bytes Template argument size: 0/2097152 bytes Highest expansion depth: 2/40 Expensive parser function count: 0/100 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 0/5000000 bytes --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 0.000 1 -total --> </div> <!-- Saved in parser cache with key wiki-mw_:pcache:idhash:1758-0!canonical and timestamp 20250304011018 and revision id 65110 --> </div> <!-- end wikipage --> <div class="printfooter"> Retrieved from "<a dir="ltr" href="https://wiki.wesnoth.org/index.php?title=ServerAdministration&amp;oldid=65110">https://wiki.wesnoth.org/index.php?title=ServerAdministration&amp;oldid=65110</a>" </div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/Special:Categories" title="Special:Categories">Categories</a>: <ul><li><a href="/Category:Troubleshooting_and_Bugs" title="Category:Troubleshooting and Bugs">Troubleshooting and Bugs</a></li><li><a href="/Category:Server_Documentation" title="Category:Server Documentation">Server Documentation</a></li></ul></div></div><div id="lastmod"> This page was last edited on 23 November 2019, at 22:00.</div> <div class="visualClear"></div> </div> <!-- bodyContent --> </div> <!-- end content --> </div> <!-- end main --> <div id="footer-sep"></div> <div id="footer"><div id="footer-content"><div> <a href="https://wiki.wesnoth.org/StartingPoints">Site Map</a> &#8226; <a href="https://status.wesnoth.org/">Site Status</a><br /> Copyright &copy; 2003&ndash;2024 by <a rel="author" href="https://wiki.wesnoth.org/Project">The Battle for Wesnoth Project</a> — Powered by <a href="https://www.mediawiki.org/">MediaWiki</a><br /> Site design Copyright &copy; 2017&ndash;2024 by Iris Morelle </div></div></div> <script>(window.RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgPageParseReport":{"limitreport":{"cputime":"0.007","walltime":"0.008","ppvisitednodes":{"value":14,"limit":1000000},"ppgeneratednodes":{"value":20,"limit":1000000},"postexpandincludesize":{"value":0,"limit":2097152},"templateargumentsize":{"value":0,"limit":2097152},"expansiondepth":{"value":2,"limit":40},"expensivefunctioncount":{"value":0,"limit":100},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":0,"limit":5000000},"timingprofile":["100.00% 0.000 1 -total"]},"cachereport":{"timestamp":"20250304011018","ttl":86400,"transientcontent":false}}});});</script><script>(window.RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgBackendResponseTime":23});});</script></body></html>

Pages: 1 2 3 4 5 6 7 8 9 10