Sponsor:

Your company here, and a link to your site. Click to find out more.

wesnothd - Man Page

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 https://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: errorwarninginfodebug. 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. Defaults to yes.

connections_allowed

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

deny_unregistered_login

Whether to prevent users who are not registered with the user_handler being used from logging in. (default: false)

disallow_names

Names/nicks that are not accepted by the server. * and ? from wildcard 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/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 startup 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)

tls_enabled

Enable use of TLS. If true, requires 3 following options to be set too.

tls_fullchain

TLS full certificate chain in .pem format

tls_private_key

private key for TLS in .pem format

tls_dh

TLS DH parameters, as .pem file. Generate with openssl dhparam -out filename.pem 4096

versions_accepted

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

id

The ID of the server when using the database functionality to store game information. Generally is the major.minor version of accepted clients, such as 1.16 or 1.17.

Global tags

[redirect] A tag to specify a server to redirect certain client versions to. Is not used if versions_accepted is not set.

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 wildcard 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. If no [user_handler] section is present in the configuration the server will run without any nick registration service. All additional tables that are needed for the forum_user_handler to function can be found in table_definitions.sql in the Wesnoth source repository. Requires mysql support enabled. For cmake this is ENABLE_MYSQL and for scons this is forum_user_handler.

db_host

The hostname of the database server

db_name

The name of the database

db_user

The name of the user under which to log into the database

db_password

This user's password

db_users_table

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

db_extra_table

The name of the table in which wesnothd will save its own data about users.

db_game_info_table

The name of the table in which wesnothd will save its own data about games.

db_game_player_info_table

The name of the table in which wesnothd will save its own data about the players in a game.

db_game_modification_info_table

The name of the table in which wesnothd will save its own data about the modifications used in a game.

db_user_group_table

The name of the table in which your phpbb forum saves its user group data. Most likely this will be <table-prefix>_user_group  (e.g. phpbb3_user_group).

db_connection_history_table

The name of the table in which to store login/logout times. Also used for matching IPs to users and vice versa.

db_topics_table

The name of the table in which your phpbb forum saves its topic (thread) information. Most likely this will be <table-prefix>_topics  (e.g. phpbb3_topics).

db_banlist_table

The name of the table in which your phpbb forum saves its user bans data. Most likely this will be <table-prefix>_banlist  (e.g. phpbb3_banlist).

mp_mod_group

The ID of the forum group to be considered as having moderation authority.

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: https://www.wesnoth.org/

See Also

wesnoth(6)

Referenced By

wesnoth(6).

2022 Battle for Wesnoth multiplayer network daemon