WESNOTHD(6)

πŸ‘‘ NAME πŸ‘‘

wesnothd β€” the Battle for Wesnoth multiplayer network daemon. That's the whole vibe. Section 6 of the manual, games wing, main character energy, no cap. πŸŽ€


✨ SYNOPSIS ✨

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

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so, wesnothd runs and manages Battle for Wesnoth multiplayer games. That's it, that's the job. πŸ’…

Wanna know what commands the server actually accepts β€” like from the wesnoth client via /query ..., or through the fifo? Bestie, go read https://www.wesnoth.org/wiki/ServerAdministration. It's all there. πŸ“–


πŸ’– OPTIONS πŸ’–

  • -c path, --config path β€” tells wesnothd where to find the config file to use. The syntax lives down in SERVER CONFIG, keep scrolling. Also: you can reload the config by sending SIGHUP to the server process. Hot. πŸ”₯
  • -d, --daemon β€” runs wesnothd as a daemon.
  • -h, --help β€” tells you what the command line options do. (Iconic behaviour honestly.)
  • --log-level=domain1,domain2,... β€” sets the severity level of the log domains. You can use all 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 you don't specify one, port 15000 will be used. She has a default and she's sticking to it. πŸ’…
  • -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 you set it to 0 there will be no limit (default: 0). Unhinged. I respect it. 🫢
  • -V, --version β€” shows version number and exits. Slay, show and go. ✨
  • -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 (the 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. ⚠️ Yes that's the dangerous one, be normal about it.
  • ban_save_file β€” full or relative path to a (gzip compressed) file that the server can read and write. Bans get 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 they give the permission respectively to everyone, registered users, admin users, or disable new room creation entirely. 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. That's it, those are the two moods. 😭


🫢 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/ 🌐


Copyright Β© 2003-2024 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. (Read it again, bestie. NO warranty. None. Zero. Periodt. πŸ’…)

⭐ SEE ALSO ⭐


And that's the whole page, gorgeous. ✨ This little masterpiece is from the wesnothd manual, version 2022, dated 2022 β€” so go forth, run your server, and remember: exit status 0 is the goal, exit status 2 means the command line options ate. πŸŒΈπŸ’– Byeee!

πŸ“¦ where this page comes from