伺服器
泰拉瑞亞伺服器為玩家提供了通過網際網路及其他網絡進行多人遊戲的平台。泰拉瑞亞的 Windows 安裝版自帶伺服器軟體。若要在 Linux 上運行,就需要單獨下載伺服器文件(參見下載部分)。
伺服器也可以被用於獨立的單人遊戲玩法,這提供了按需求調整遊戲內時間的功能。
開服之前
伺服器默認運行在 7777 埠,對使用 NAT(網絡地址轉換)的用戶(例如普通居民)來說,必須經過埠轉發才能讓別的玩家加入。如果某種限制導致你不能配置埠轉發,可以試試使用 VPN 服務作為代替,如 Hamachi 或 Radmin VPN(這種情況下每個玩家都需要安裝 VPN 客戶端)。伺服器默認的最大玩家數是 8(在 1.4.0.1 中則為 16)名,可以在伺服器開啟狀態下修改,也可以修改伺服器配置文件(serverconfig.txt)。不使用 NAT 的用戶(例如商業用戶、或數據中心的用戶)則無需埠轉發,但需要讓埠可以通過防火牆。
如果在 AWS 或 GCP 等雲端遊玩,就需要打開 TCP 與 UDP 的 7777 埠,才能允許其他用戶連接至伺服器。
公共伺服器
伺服器可以在下面的伺服器列表中進行查找:
- 官方泰拉瑞亞論壇上的伺服器論壇
- https://www.tserverweb.com
- https://topg.org/terraria-servers/
- http://terraria-servers.com
- https://terraria.21yunbox.com
加入伺服器
玩家可以通過選擇主菜單上的多人模式來加入伺服器。在此之後,玩家需要選擇人物,然後輸入伺服器的 IP 地址和埠號。
通常不同的伺服器對玩家加入有不同的要求。一些伺服器需要玩家擁有軟核或中核角色,還有的需要玩家在加入遊戲之前達到一定的等級。通常一個公共伺服器會有 /register 和 /login 系統,這需要玩家有一個名稱獨一無二的人物和密碼。
公眾伺服器通常由一群管理員或協調者來運營,他們制定規則。通常這些規則不允許使用模組、破解和仿冒他人等。某些伺服器可以讓玩家使用單人模式人物進行在線遊戲,而不丟失單人模式的物品欄。
最近遊玩的伺服器會保存在多人模式的「通過IP加入」中。
開服方法(Windows)
默認情況下,在 32 位的 Windows 系統中,TerrariaServer.exe 可以在目錄 %programfiles%\Steam\steamapps\common\terraria
中找到。
- 64 位的 Windows 系統中,TerrariaServer.exe 可以在目錄
%programfiles(x86)%\Steam\steamapps\common\terraria
中找到。 - 如果無法在上面的路徑中找到,那麼就需要打開 Steam,右鍵單擊「庫」中的泰拉瑞亞,然後點擊 「Properties」 > 「LOCAL FILES」 > 「BROWSE LOCAL FILES...」 以便打開相應的文件夾。
- 如果沒有 Steam,請查找
%programfiles(x86)%\terraria 或 %programfiles%\terraria
- 如果使用的是 GOG,那麼需要查找
GOG Games\terraria
玩家可以通過選擇遊戲菜單上的多人模式選項來加入伺服器。
開服方法(Linux)
預先配置
我們首先需要運行安裝伺服器所需的工具。它們可能已經預先安裝在了你的系統的分發版本中。
對於基於 Debian 的系統(Ubuntu),請運行:sudo apt update && sudo apt install -y wget tmux unzip
對於基於 Arch 的系統(Manjaro),請運行:sudo pacman -Sy wget tmux unzip
啟動伺服器
- 下載文件:
wget https://terraria.org/api/download/pc-dedicated-server/terraria-server-.zip
。參見下載部分以獲取其他版本的連結。 - 解壓文件:
unzip terraria-server-.zip
- 進入剛剛的解壓目錄:
cd
- 進入 Linux 目錄:
cd Linux
- 為伺服器的二進位程序添加可執行權限:
chmod +x TerrariaServer.bin.x86*
- 打開伺服器。64 位的版本是 TerrariaServer.bin.x86_64,而 32 位的版本是 TerrariaServer.bin.x86:
./TerrariaServer.bin.x86_64
- 將世界文件放置以下目錄中,以便伺服器進行讀取:
~/.local/share/Terraria/Worlds/
為了使伺服器啟動並且在後台運行,你可以使用類似於tmux或screen的程序。
默認情況下TerrariaServer.exe 可以在這裡找到:
~/GOG\ Games/Terraria/game/
使用Steam的情況下:
~/.steam/steam/steamapps/common/Terraria/
驗證
Linux 下的二進位文件被稱為TerrariaServer.bin.x86_64 ( 64位) 或TerrariaServer.bin.x86(32位)。
玩家可以通過選擇主菜單上的多人模式來加入伺服器。
如果你想使用 screen 命令, 只需要開啟screen:
screen
然後現在啟動伺服器。按下Ctrl + a + d可以在退出screen的情況下使伺服器保持運行。恢復會話可以使用以下命令:
screen -r
下載
官方的泰拉瑞亞伺服器軟體包含在泰拉瑞亞安裝包中,你也可以單獨下載:
- Terraria Server 1.3.3.3
- Terraria Server 1.3.4.4
- Terraria Server 1.3.5.3
- Terraria Server 1.4.0.1
- Terraria Server 1.4.0.2
- Terraria Server 1.4.0.3
- Terraria Server 1.4.0.4
- Terraria Server 1.4.0.5
- Terraria Server 1.4.1
- Terraria Server 1.4.1.1
- Terraria Server 1.4.1.2
- Terraria Server 1.4.2.3
- Terraria Server 1.4.3
- Terraria Server 1.4.3.1
- Terraria Server 1.4.3.2
- Terraria Server 1.4.3.3
- Terraria Server 1.4.3.4
- Terraria Server 1.4.3.5
- Terraria Server 1.4.3.6
- Terraria Server 1.4.4
- Terraria Server 1.4.4.1
- Terraria Server 1.4.4.2
- Terraria Server 1.4.4.3
- Terraria Server 1.4.4.4
- Terraria Server 1.4.4.5
- Terraria Server 1.4.4.6
- Terraria Server 1.4.4.7
- Terraria Server 1.4.4.8
- Terraria Server 1.4.4.8.1
- Terraria Server 1.4.4.9
Dedicated Server GUI是官方伺服器的第三方插件,提供了圖形化的控制(伺服器只是一個命令行程序):
Tshock 和 TDSM 是添加了附加功能的第三方軟體,比如遊戲內命令,白名單,用戶密碼,和一個用於添加特性的插件接口(比如工會):
伺服器文件
伺服器包括以下三個文件:
- TerrariaServer.exe - 主伺服器文件,可以獨立運行。
- serverconfig.txt - 伺服器配置文件,定義了伺服器的所有參數(下述)。
- start-server.bat - 一個Windows命令行程序,使用serverconfig.txt,還包含了一個循環,方便伺服器崩潰時重啟。
控制台命令列表
只要專用伺服器運行,就可以使用以下的命令:
- help - 顯示命令列表。
- playing - 顯示玩家列表。可以在遊戲內聊天輸入/player來使用。
- clear - 清空控制台。
- exit - 關閉並保存伺服器。
- exit-nosave - 關閉並不保存伺服器。
- save - 保存遊戲世界。
- kick <player> - 踢人。
- ban <player> - 禁止一個玩家進入伺服器。
- password - 顯示密碼。
- password <pass> - 更改密碼。
- version - 顯示版本號。
- time - 顯示遊戲時間。
- port - 顯示監聽的埠。
- maxplayers - 顯示最大玩家數目。
- say <words> - 向全體成員發生消息,他們會在聊天框中看到以黃色前綴<Server>開頭的全體消息。
- motd - 顯示 MOTD。
- motd <words> - 更改 MOTD。
- dawn - 調整時間為黎明 (4:30 AM)。
- noon - 調整時間為中午 (12:00 PM)。
- dusk - 調整時間為黃昏 (7:30 PM)。
- midnight - 調整時間為午夜 (12:00 AM)。
- settle - 使所有水平衡。
注意:命令中不需要以正斜槓 / 作為前置,因為一些命令接口需要。對於 Tshock 命令列表,參考這個文檔.
命令行參數
下面是一個參數列表,可以在初次運行泰拉瑞亞伺服器時輸入:
- -config <config file> - 指定配置文件(詳見伺服器配置文件)。
- -port <port number> - 指定需要監聽的埠。
- -players <number> / -maxplayers <number> - 設置最大玩家數。
- -pass <password> / -password <password> - 設置伺服器密碼。
- -motd <text> - 設置第二天的格言。
- -world <world file> - 加載世界並自動啟動伺服器。
- -autocreate <#> - 如果沒有在-world參數指定的路徑找到世界,那麼創建一個新世界。世界大小分為:1(小),2(中),3(大)。
- -banlist <path> - 指定封禁名單文件的路徑。默認情況下為工作路徑下的banlist.txt文件。
- -worldname <world name> - 當使用 -autocreate 參數時設定世界名稱。
- -secure - 為伺服器添加增強型作弊保護。
- -noupnp - 關閉通用即插即用(UPNP)。
- -steam - 開啟 Steam 支持。
- -lobby <friends> or <private> - 允許朋友加入伺服器或設為私人伺服器(開啟 Steam 情況下)。
伺服器配置文件
使用一個寫入了上述參數的配置文件來自動開啟專用伺服器時可行的。配置文件必須通過 -config 參數進行調用。配置文件的名稱可以自定義,但是必須位於 TerrariaServer.exe 的同一文件夾下。在伺服器啟動時,如果定義了配置文件但是沒有被伺服器定位到,伺服器會要求用戶輸入參數,這樣伺服器可以啟動而無需配置文件。
下面是可用的配置文件命令表:
- maxplayers=8 - 設置伺服器的最大玩家數,數值必須介於1到255。
- world=C:\Users\Defaults\My Documents\My Games\Terraria\Worlds\world1.wld - 加載一個世界並自動啟動伺服器。
- port=7777 - 設置埠號,
- password=p@55w0rd* - 設置伺服器密碼。
- motd=Please don’t cut the purple trees! - 設置當日的消息。
- worldpath=C:\Users\Defaults\My Documents\My Games\Terraria\Worlds\ - 設置世界文件的存儲位置。
- autocreate=3 - 如果沒有在 -world 參數指定的路徑找到世界,那麼創建一個新世界。世界大小分為:1(小),2(中),3(大)。
- difficulty=0 - 設置在使用 -autocreate 參數下的難度。可選項: 0(普通),1(專家)。1.4版本難度分為0(普通), 1(專家), 2(大師), 3(旅途)
- worldname=World - 當使用 -autocreate 參數時設定世界名稱。
- banlist=banlist.txt - 指定封禁名單文件的路徑。默認情況下為工作路徑下的banlist.txt文件。
- secure=1 - 為伺服器添加增強型作弊保護。
- language - 通過語言碼設置伺服器語言。
- 可用的語言碼:
- en/US = 英語
- de/DE = 德語
- it/IT = 義大利語
- fr/FR = 法語
- es/ES = 西班牙語
- ru/RU = 俄語
- zh/Hans = 中文
- pt/BR = 葡萄牙語
- pl/PL = 波蘭語
可以使用 (#) 進行注釋。以#開始的行會被完全跳過。
Ban 和 un-ban
命令 ban <player>
可以禁止指定玩家進入伺服器。被禁止進入的玩家嘗試登錄時,伺服器會顯示消息:「你在【時間端】內被禁止進入:【理由】-【操作人】」。可以通過修改banlist.txt文件來恢復玩家進入。這個文件包含當前被禁止進入的玩家列表。要恢復某個玩家進入,在列表中刪除玩家姓名和 IP 即可。
系統需求
- Windows 作業系統
- 500 MB 空閒內存(僅小世界,所需內存取決於世界大小和玩家數量)
- .NET Framework 4.0
- XNA Framework
泰拉瑞亞客戶端內置了 .NET 和 XNA,在安裝客戶端就的同時可以安裝這兩個運行庫。
備註
- 伺服器偶爾會自動保存世界,但只有使用退出命令,伺服器才能在關閉時保存世界。也就是說,請優先考慮手動保存世界,而不是關閉伺服器。
- 當你啟動伺服器時,伺服器會提示你是否要開啟自動埠轉發,不過這個有時不怎麼奏效。
- 通常我們使用 Hamachi開服,它避免了埠轉發,但是依賴於第三方程序。
LAN(區域網)
下述是十分基礎的區域網聯機指南。一開始,所有電腦必須連接到相同的網絡。如果你覺得這太簡單的話,可以給這個伺服器設置一個區域網靜態 IP,這沒什麼必要。請注意,這份指南是面向那些幾乎沒有網絡經驗、僅僅是想玩遊戲的人。
- 確保所有電腦連接到相同的網絡。
- 儘可能讓電腦通過有線網絡連接,因為有線網絡比無線網絡穩定的多。
- 如果你有一台常見的家用路由器,想要連接多人遊戲,你可以使用交換機來連接更多電腦。只要把交換機的任意埠插入路由器,然後把其他電腦和伺服器接入交換機就可以了。如果沒有交換機,至少把伺服器所在的電腦接入有線網絡。如果這樣也不行的話,只要確保所有電腦都接入了同一 WiFi 就可以了,只是可能延遲有點高。
- 獲取伺服器信息
- 首先,確保伺服器被連接到網際網路,或者至少連接到路由器。可以通過訪問路由器管理界面來測試路由器連通性。通常你可以在路由器的貼紙上找到登錄信息。如果頁面加載了,恭喜你!只要確保其他電腦都連接到同一網絡即可。
- Windows:
- 打開命令提示符(cmd),運行
ipconfig
命令來得到網絡信息。記錄IP位址(一般在"IPV4 Address......"後面),格式是192.168.1.27, 172.16.0.55 10.0.0.42這種。如果IP位址是127開頭,尋找下一個開頭不是這個的。如果以169開頭,那麼你的網絡配置可能有問題。
- 打開命令提示符(cmd),運行
- Mac OS X
- 打開系統偏好>網絡,然後記錄IP位址。
- GNU/Linux
- 在終端窗口運行"ifconfig"或"ip address"命令來得到IP。
- 讓客戶端連接到伺服器
- 打開泰拉瑞亞,點擊多人遊戲,然後連接到你第二步記錄的IP位址。
- 應該能進入伺服器了。
- 疑難解答 (如果連接有問題)
- 確保計算機的防火牆已經關閉,或者至少放行7777埠。
- 如果IP位址是169開頭,請先檢查電腦能否上網。
- 伺服器的IP位址可能會改變,尤其在路由器重啟過的情況下。如果連接不到伺服器,再做一遍步驟2看看IP有沒有變。
- 如果這個問題經常復現,你應該了解一下如何"在【你的系統】上設置靜態IP位址"。
- 如果你設置的伺服器埠不是7777,確保客戶端連接的是你設置的埠。
歷史
- 電腦版 1.3.0.4:
- 現在可以使用 -forcepriority 啟動專用伺服器,來覆蓋伺服器設定文件的優先級。
- 現在恢復了使用 -ip 來設定專有伺服器的本地 IP。
- 電腦版 1.3.0.3:現在報告發生在伺服器上的錯誤更加容易。
- 電腦版 1.3.0.2:
- 現在你可以每次輸入密碼,在啟動或進入伺服器時。
- 解決了大部分專用伺服器和它的配置文件的問題。
- 解決了用戶在「僅能邀請」模式下不能互相邀請的問題。
- 電腦版 1.2.3.1:修復了伺服器以英語之外的語言啟動時發生的崩潰。
- 電腦版 1.0.2:
- 伺服器現在監聽宿主機的所有 IP,不論有多少連接是活躍的。
- 輸入 "localhost" 而不是你的本地 IP 也會連接到相同的本地伺服器。
- 伺服器的默認埠 31337 變為 7777。
- 客戶端可以把主機名解析為 IP。
- 電腦正式版:引入。
- 主機正式版:引入。
- 移動正式版:引入。
- 3DS正式版:引入。