WESNOTHD(6)

名稱
wesnothd - 韋諾之戰多人網路伺服器

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

描述
管理韋諾之戰的多人遊戲。參閱 http://www.wesnoth.org/wiki/ServerAdministration 來查看透過韋諾客戶端(/query ...)或 fifo，伺服器接受什麼指令。

選項

-c path, --config path
    告訴 wesnothd 要去哪裡找到設定檔來用。參閱下面的 SERVER CONFIG 來了解語法。你可以藉由傳送 SIGHUP 給伺服器的行程來重新載入設定檔。

-d, --daemon
    執行 wesnothd 作為一個系統服務。

-h, --help
    告訴你命令列的選項是做什麼用的。

--log-level=domain1,domain2,...
    設定日誌域的嚴重等級。all 可以用來匹配任何日誌域。可使用的等級有：error, warning, info, debug。預設的情況下，error 等級會被使用，而 server 日誌域會預設為 info 等級。

-p port, --port port
    綁定伺服器到指定的連接埠。如果不指定埠號，將會使用連接埠 15000。

-t number, --threads number
    為網路 I/O 設定工作執行緒的最大數量為 n（預設值：5；最大值：30）。

-T number, --max-threads number
    設定會被建立的工作執行緒的最大數量。如果設定為 0，則將沒有限制（預設值：0）。

-V, --version
    顯示版本號碼並退出。

-v, --verbose
    開啟偵錯日誌。

伺服器設定

  常用語法是：

[tag]

    key="value"

    key="value,value,..."

[/tag]

  全域鍵值：

allow_remote_shutdown
    如果設置為 no （預設值），shut_down（關閉）和 restart（重啟）請求將被忽略，除非它們來自 fifo。設為 yes 可允許被一個管理員透過 /query 來遠程關閉。

ban_save_file
    伺服器可讀可寫的（經gzip壓縮的）檔案的完整路徑或相對路徑。封禁清單將會被保存到這個檔案裡，並在伺服器啟動時再次讀取。

compress_stored_rooms
    指定房間檔案是否應該以壓縮形式讀寫。預設值為 yes。

connections_allowed
    同一IP允許的連接數。（預設值：5）

deny_unregistered_login
    是否在 user_handler 被使用時，防止沒有註冊的玩家進行登入。（預設值：false）

disallow_names
    伺服器不允許使用的名稱/暱稱。支援使用 * 和 ? 這兩個萬用字元。參閱 glob(7) 來了解細節。預設值（如果沒有東西被指定就會用這個值）是：*admin*,*admln*,*server*,ai,ai?,computer,human,network,player。

fifo_path
    你可以送出伺服器指令到（與透過韋諾客戶端使用「/query ...」相同）的 fifo 檔案的路徑。如果不指定，則預設為編譯階段所設定的路徑（預設：/var/run/wesnothd/socket）。

max_messages
    messages_time_period 中允許的訊息數量。（預設：4）

messages_time_period
    訊息氾濫的檢測時間間隔（秒）。（預設：10 秒）

motd
    當天的消息。

new_room_policy
    指定誰能在伺服器上建立新房間。可使用的值為 everyone, registered, admin, nobody，分別給所有人、有註冊的使用者、管理員使用者、沒有人，建立新房間的權限。預設值為 everyone。

passwd
    用來取得管理員權限的密碼（透過 /query admin password）。

replay_save_path
    伺服器用於存放遊戲錄影的目錄。（不要忘了以「/」結尾！）預設為「`'」，意思是 wesnothd 的工作目錄。

restart_command
    這是伺服器用來透過 restart 命令開啟新的伺服器行程的命令。（只能通過 fifo 來調用。參見 allow_remote_shutdown 設定。）

room_save_file
    房間資訊應該要被存到哪的檔案路徑。這個檔案在伺服器啟動時被讀取，之後會被寫入。如果留空或者不設置，房間不會被讀取，也不會被保存。

save_replays
    設置伺服器是否自動保存遊戲錄影。（預設值：false）

tls_enabled
    啟用 TLS 時。 如果為 true，則還需要設定以下 3 個選項。

tls_fullchain
    TLS 完整的信任鍊，格式為.pem

tls_private_key
    TLS私鑰，格式為.pem

tls_dh
    TLS Diffie-Hellman 參數，為.pem檔案。使用 openssl dhparam -out filename.pem 4096生成

versions_accepted
    用逗號分隔的版本字串清單，伺服器會接受清單上面的版本。支援使用 * 和 ? 這兩個萬用字元。（預設為對應的韋諾版本）
    例如：versions_accepted="*" 允許任意版本字串。

id  使用資料庫功能儲存遊戲資訊時伺服器的ID。 一般是接受客戶端的 major.minor 版本，例如1.16或1.17。

  全域標籤：

[redirect] 一個用來設定指定的客戶端版本要重新導向到哪個伺服器的標簽。如果 versions_accepted 沒有設定就不會被使用。

    host
        重新導向到的伺服器地址。

    port
        連結的連接埠。

    version
        用逗號分隔的版本清單，作為重新導向的依據。支援使用 * 和 ? 這兩個萬用字元。

[ban_time] 一個用來替臨時性的封禁時間長度定義方便的關鍵字的標籤。

    name
        名稱用來參照到封禁時間。

    time
        時間長度定義。格式為：%d[%s[%d%s[...]]]。其中 %s 是s（秒）, m（分鐘）, h（小時）, D（天）, M（月）, Y（年），%d 是一個數字。如果不指定時間單位，預設為分鐘(m)。例如：time=

[proxy] 一個告訴伺服器扮演代理伺服器的角色，把連入的使用者請求導向到指定的伺服器的標籤。與 [redirect] 接受一樣的鍵值。

[user_handler] 配置使用者處理程序。如果配置中沒有 [user_handler] 區塊，伺服器將以不提供任何暱稱註冊服務的方式來運行。所有額外的 forum_user_handler 所需要用來運行的表格可以在韋諾的原始碼倉庫中的 table_definitions.sql 中被找到。需要啟用 MySQL 支援，以 cmake 來說要使用 ENABLE_MYSQL；以 scons 來說要使用 forum_user_handler

    db_host
        資料庫伺服器的主機名

    db_name
        資料庫的名稱

    db_user
        用來登入資料庫的使用者名稱

    db_password
        這個使用者的密碼

    db_users_table
        phpbb 論壇中存放使用者資料的表單。很可能是 <table-prefix>_users（例如：phpbb3_users）。

    db_extra_table
        wesnothd 將在其中保存其自己的有關使用者資料的表格。

    db_game_info_table
        wesnothd 將在其中保存其自己的有關遊戲資料的表格。

    db_game_player_info_table
        wesnothd 將在其中保存其自己的有關每場遊戲中的玩家資料的表格。

    db_game_modification_info_table
        wesnothd 將在其中保存其自己的有關每場遊戲中被使用的模組的資料的表格。

    db_user_group_table
        phpbb 論壇中存放使用者群組資料的表單。很可能是 <table-prefix>_user_group（例如：phpbb3_user_group）。

    db_connection_history_table
        用於儲存登入/登出時間的表單。也用於將IP與使用者交互比對。

    db_topics_table
        phpbb 論壇中存放主題（帖子）資訊的表單。很可能是 <table-prefix>_topics（例如：phpbb3_topics）。

    db_banlist_table
        phpbb 論壇中存放封鎖使用者資料的表單。很可能是 <table-prefix>_banlist（例如：phpbb3_banlist）。

    mp_mod_group
        被視為具有審核權限的論壇組的 ID。

退出狀態碼
正常退出的狀態碼為 0，此時伺服器被適當地關閉。退出狀態碼 2 表示命令列選項有錯誤。

作者
由 David White <davidnwhite@verizon.net> 編寫。經 Nils Kneuper <crazy-ivanovic@gmx.net>, ott <ott@gaon.net> 和 Soliton <soliton.de@gmail.com> 修改。這個手冊最早由Cyril Bouthors <cyril@bouthors.org> 編寫。
拜訪官方網站：http://www.wesnoth.org/

著作權
Copyright © 2003-2024 David White <davidnwhite@verizon.net>
這是一個自由軟體，這個軟體採用由自由軟體協會(FSF)所發佈的GPLv2授權協議。沒有保證，甚至對「可銷售性」和「對某一特定目的的適用性」也沒有保證。本段翻譯文字不具法律效力，如有需要請參閱原文或者是 GPLv2 授權條款。

參見
wesnoth(6)