Steam 上面的 Project Zomboid 因爲帶有 VAC 所以建服開服需要 Steam服務器認證,這也是出現 steam is not enabled 錯誤主要原因,也是無法和普通零售正版所建的服務器聯機的罪魁禍首。
分兩種情況(下面 Project Zomboid 均簡稱PZ):
1、steam版PZ和零售正版PZ服務器聯機
2、steam版PZ自己建服開服聯機
解決方法
第一種情況:
開啟steam的庫,選擇PZ右鍵 - 屬性 - 常規 - 設定啓動選項 ,填寫上
-nosteam
最後確認完成。在這個啓動參數下,steam版PZ就可以和普通零售版PZ正常聯機。
第二種情況:
上文說過,steam版PZ需要steam認證,所以直接按照普通零售版PZ建服必定會出現 steam is not enabled 錯誤,我們得開一個 steam認證服務器。
首先,下載、解壓並安裝SteamCMD
SteamCMD for Windows:
接着執行,它會自動更新,更新完關掉再開啟,然後輸入以下命令回車:
login anonymous
獲取授權成功後會顯示:
接着輸入以下命令回車:
force_install_dir C:PZServer
意思是設定服務器檔案安裝目錄爲 C:PZServer 這可以更改到別的地方,這裏僅舉例。
接着輸入以下命令回車:
app_update 380870 validate
接着會自動從steam服務器下載大約1.02GB的建服檔案。
下載到100%後,輸入 quit 命令退出關閉SteamCMD。
然後到剛纔設定的下載目錄 C:PZServer 裏面找到 下面兩個bat檔案
根據自己的系統選擇32位或者64位,雙擊開始初次執行,防火牆會攔截,記得放通。
初次執行會強制要求設定管理員密碼,設定後會提示重複輸一遍。
然後會顯示下面的資訊,此爲初步設定完畢,可以進行本地端口 的聯機了,但別人基本無法聯機進來玩,因爲還得設定服務器配置表以及設定幾個特殊端口轉發。
接着輸入 quit 儲存並關閉服務器,然後到 C:Users 自己的用戶名 ZomboidServer 目錄下找到 配置檔案,我們需要對服務器進行進一步設定。
可以直接右鍵編輯 ,以下爲主要修改的地方,其餘可以自己斟酌。
DefaultPort=16261 【默認服務器聯機端口,可自訂】
Public=false 【是否公共服務器,默認否】
PublicName=My PZ Server 【服務器名稱】
MaxPlayers=64 【最大聯機人數】
RCONPort=27015 【遠程控制檯端口】
RCONPassword= 【遠程控制檯密碼,默認爲空】
Password= 【服務器密碼,默認爲空】
SteamPort1=8766 【steam認證端口】
SteamPort2=8767 【steam備用端口】
SteamVAC=true 【VAC反作弊插件,默認開啓】
(因爲沒有條件測試,所以我不知道關閉VAC之後普通零售版PZ是否也能聯機進來)
接着視自己的網絡狀態設定端口轉發。
如果是單機獨立公網IP,那麼無需設定。
如果有用路由器的,都需要設定路由轉發,特別需要注意以下兩點:
1、有多少人連服務器就需要提供多少端口,假如服務器限制10個人,那麼除了默認16261 UDP 識別端口外,還需要另外提供10個端口 16262 - 16272 TCP 讓別人聯機進來。
2、必須保證 steam 端口可用【默認的 8766、8767 均可自訂】
我以10人的服務器舉個例子, 自訂端口如下面這樣:
DefaultPort=27016
RCONPort=27015
SteamPort1=27014
SteamPort2=27013
那麼路由器上端口轉發規則只需要添加一條即可:
27013 - 27026 192.168.X.X TCP/UDP(ALL)
當然,可以設定DMZ主機全部轉發,雖然省功夫但非常不建議那樣設定。