WESNOTHD(6)

NAME
wesnothd - Battle for Wesnoth multiplayer network daemon

SYNOPSIS
wesnothd [-dv] [-c path] [-p port] [-t number] [-T number]
wesnothd -V

DESCRIPTION
Manages Battle for Wesnoth multiplayer games. See http://www.wesnoth.org/wiki/ServerAdministration on what commands the server accepts via the wesnoth client (/query ...) or the fifo.

OPTIONS

-c path, --config path
    tells wesnothd where to find the config file to use. See the section SERVER CONFIG below for the syntax. You can reload the config with sending SIGHUP to the server process.

-d, --daemon
    runs wesnothd as a daemon.

-h, --help
    tells you what the command line options do.

--log-level=domain1,domain2,...
    sets the severity level of the log domains. all can be used to match any log domain. Available levels: error, warning, info, debug. By default the error level is used and the info level for the server domain.

-p port, --port port
    binds the server to the specified port. If no port is specified, port 15000 will be used.

-t number, --threads number
    sets the maximum number of waiting worker threads for network I/O to n (default: 5, max: 30).

-T number, --max-threads number
    sets the maximum number of worker threads that will be created. If set to 0 there will be no limit (default: 0).

-V, --version
    shows version number and exits.

-v, --verbose
    turns debug logging on.

SERVER CONFIG

  The general syntax is:

[tag]

    key="value"

    key="value,value,..."

[/tag]

  Global keys:

allow_remote_shutdown
    If set to no (default), shut_down and restart requests are ignored unless they come from the fifo. Set it to yes to allow remote shutdown via a /query by an administrator.

ban_save_file
    Full or relative path to a (gzip compressed) file that the server can read and write. Bans will be saved to this file and read again on server start.

compress_stored_rooms
    Determines whether the rooms file should be read and written to in compressed form. Default value is yes.

connections_allowed
    The number of allowed connections from the same IP. 0 means infinite. (default: 5)

disallow_names
    Names/nicks that are not accepted by the server. * and ? from wild-card patterns are supported. See glob(7) for more details. Default values (used if nothing is specified) are: *admin*,*admln*,*server*,ai,ai?,computer,human,network,player.

fifo_path
    The path to the fifo you can echo server commands into (same as /query ... from wesnoth). If not specified defaults to the compile-time path (default: /var/run/socket/wesnothd/socket).

max_messages
    The number of allowed messages in messages_time_period. (default: 4)

messages_time_period
    The time period (in seconds) message flooding is detected in. (default: 10 seconds)

motd
    The message of the day.

new_room_policy
    Determines who can create new rooms on the server. Available values are everyone, registered, admin and nobody, and give the permission respectively to everyone, registered users, admin users or disables new room creation. Default value is everyone.

passwd
    The password used to gain admin privileges (via /query admin password).

replay_save_path
    The directory where the server stores game replays. (Don't forget the trailing /!) Defaults to `' which means the directory wesnothd was started in.

restart_command
    The command that the server uses to start a new server process via the restart command. (Can only be issued via the fifo. See the allow_remote_shutdown setting.)

room_save_file
    Path to a file where the room info should be stored. This file is read on server start-up and written to later. If empty or not set, rooms are not loaded and not saved.

save_replays
    Defines whether the server will automatically save replays of games. (default: false)

versions_accepted
    A comma separated list of version strings to be accepted by the server. * and ? from wild-card patterns are supported. (defaults to the corresponding wesnoth version)
    Example: versions_accepted="*" accepts any version string.

user_handler
    The name of the user handler to use. Currently available user handlers are forum (to connect wesnothd to a phpbb forum database) and sample (a sample implementation of the user handler interface, if you use this on anything real you are insane). The default value is forum. You must also add a [user_handler] section, see below.

  Global tags:

[redirect] A tag to specify a server to redirect certain client versions to.

    host
        The address of the server to redirect to.

    port
        The port to connect to.

    version
        A comma separated list of versions to redirect. Behaves the same way as versions_accepted in regard to wild-card patterns.

[ban_time] A tag to define convenient keywords for temporary ban time lengths.

    name
        The name used to reference the ban time.

    time
        The time length definition. The format is: %d[%s[%d%s[...]]] where %s is s (seconds), m (minutes), h (hours), D (days), M (months) or Y (years) and %d is a number. If no time modifier is given minutes (m) are assumed. Example: time="1D12h30m" results in a ban time of 1 day, 12 hours and 30 minutes.

[proxy] A tag to tell the server to act as a proxy and forward the connected client's requests to the specified server. Accepts the same keys as [redirect].

[user_handler] Configures the user handler. Available keys vary depending on which user handler is set with the user_handler key. If no [user_handler] section is present in the configuration the server will run without any nick registration service.

    db_host
        (for user_handler=forum) The hostname of the database server

    db_name
        (for user_handler=forum) The name of the database

    db_user
        (for user_handler=forum) The name of the user under which to log into the database

    db_password
        (for user_handler=forum) This user's password

    db_users_table
        (for user_handler=forum) The name of the table in which your phpbb forums saves its user data. Most likely this will be <table-prefix>_users (e.g. phpbb3_users).

    db_extra_table
        (for user_handler=forum) The name of the table in which wesnothd will save its own data about users. You will have to create this table manually, e.g.: CREATE TABLE <table-name>(username VARCHAR(255) PRIMARY KEY, user_lastvisit INT UNSIGNED NOT NULL DEFAULT 0, user_is_moderator TINYINT(4) NOT NULL DEFAULT 0);

    user_expiration
        (for user_handler=sample) The time after which a registered nick expires (in days).

[mail] Configures an SMTP server through which the user handler can send mail. Currently only used by the sample user handler.

    server
        The hostname of the mail server

    username
        The user name under which to log into the mail server.

    password
        This user's password.

    from_address
        The reply-to address of your mail.

    mail_port
        The port on which your mail server is running. Default is 25.

EXIT STATUS
Normal exit status is 0 when the server was properly shutdown. An exit status of 2 indicates an error with the command line options.

AUTHOR
Written by David White <davidnwhite@verizon.net>. Edited by Nils Kneuper <crazy-ivanovic@gmx.net>, ott <ott@gaon.net>, Soliton <soliton.de@gmail.com> and Thomas Baumhauer <thomas.baumhauer@gmail.com>. This manual page was originally written by Cyril Bouthors <cyril@bouthors.org>.
Visit the official homepage: http://www.wesnoth.org/

COPYRIGHT
Copyright © 2003-2013 David White <davidnwhite@verizon.net>
This is Free Software; this software is licensed under the GPL version 2, as published by the Free Software Foundation. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO
wesnoth(6).