前往
大廳
主題

【攻略】簡單實現 DayZ 單機版 (新手架服)

椎梧 | 2020-12-05 19:48:45 | 巴幣 4 | 人氣 560

※2020年底筆記的檔案更新過來,差異部分可能需要自行嘗試

前幾天剛好看到百度的教學文,就順手試了一下,發覺還挺簡單的
不過不曉得過程哪裡出了毛病,本來應該只會在LAN出現的服務器有時候會跑到社群網路...

請懂得人幫忙解釋了一下

以下為架服流程

0. 下載SteamCMD
於SteamCMD資料夾內建立一個 .bat 文件檔
內容為:
steamcmd +login 帳號 密碼 +app_update 223350 validate +quit
設定完後儲存為 .bat 檔後執行一次

1. 到 Steam 上下載 DayZ Server (約6xxMB)

2. 右鍵安裝好的 DayZ Server 內容→本機檔案→瀏覽本機檔案...

3. 進入本機檔案的資料夾後,用文字檔軟體打開 serverDZ.cfg 這個擋案

4. 修改以下三個必要資訊,修改完畢後存檔關閉
hostname = "伺服器名稱,可以用中文";  // Server name
password = "玩家密碼";              // Password to connect to the server
passwordAdmin = "管理員密碼";         // Password to become a server admin


5. 製作一個 bat 啟動器,用任何一種文字檔編輯軟體都可以,複製以下語法貼到文字檔編輯軟體:
@echo off
cls

set version=1.17
set wat=Dayz SA

title %wat% Watchdog

cd E:\Steam\steamapps\common\DayZServer

:watchdog
echo (%time%) %wat% started.
start "Dayz_SA" /wait /affinity FF /high "DayZServer_x64.exe" -config=serverDZ.cfg
echo (%time%) %wat% closed or crashed, restarting.
goto watchdog
要特別注意的是紅色字串的硬碟位置,要改為實際安裝 DayZ Server 的位置
修改完畢後,儲存檔案時請記得尾巴加上 .bat
或是下載我製作的 .bat 檔來做修改 → 點這裡下載
※ 免責聲明:本人乾淨使用電腦,WIN10正常更新+防火牆開啟+卡巴斯基常駐+定期掃毒,已做到最大防毒責任,服用後電腦若有任何不適,一律與本人無關XD

6. 然後執行剛剛的 .bat 檔讓伺服器啟動,它會跑許多資料,等到最後2行為下列圖示時就代表伺服器啟動完畢

7. 縮小上圖的兩個程式(他們就是伺服器,關閉就沒用了),正常啟動 DayZ

8. 伺服器的地方選擇 LAN,正常來說就能看見剛剛設置伺服器名稱

9. 開心當個邊緣人吧

【Sever 參數設置】
進入..\steamapps\common\DayZServer\mpmissions\dayzOffline.chernarusplus\db 資料夾,裡面的文件就是伺服器的參數設定,可以做個人化設定。

economy.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<economy>
<!--數值:1=關閉/0=開啟-->
<!--項目:init=初始 / load=載入 / respawn=重生 / save=儲存-->
    <dynamic init="1" load="1" respawn="1" save="1"/> <!--動態-->
    <animals init="0" load="0" respawn="0" save="0"/> <!--動物-->
    <zombies init="1" load="1" respawn="0" save="0"/> <!--喪屍-->
    <vehicles init="0" load="0" respawn="0" save="0"/> <!--車輛-->
    <randoms init="0" load="0" respawn="1" save="0"/> <!--隨機-->
    <custom init="0" load="0" respawn="0" save="0"/> <!--世界傳承-->
    <building init="1" load="0" respawn="0" save="0"/> <!--建築-->
    <player init="1" load="1" respawn="1" save="1"/> <!--玩家-->
</economy>

globals.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<variables>
    <var name="AnimalMaxCount" type="0" value="200"/> <!--動物最大數量-->
    <var name="CleanupAvoidance" type="0" value="100"/> <!--清除垃圾-->
    <var name="CleanupLifetimeDeadAnimal" type="0" value="3600"/> <!--清除死亡動物-->
    <var name="CleanupLifetimeDeadInfected" type="0" value="3600"/> <!--清除死亡喪屍-->
    <var name="CleanupLifetimeDeadPlayer" type="0" value="86400"/> <!--清除死亡玩家-->
    <var name="CleanupLifetimeDefault" type="0" value="45"/> <!--清除生存時間默認值-->
    <var name="CleanupLifetimeLimit" type="0" value="50"/> <!--清除期限-->
    <var name="CleanupLifetimeRuined" type="0" value="330"/> <!--清除已破壞物品期限-->
    <var name="FlagRefreshFrequency" type="0" value="432000"/> <!--標記刷新頻率-->
    <var name="FlagRefreshMaxDuration" type="0" value="3456000"/> <!--標記刷新最大持續時間-->
    <var name="FoodDecay" type="0" value="1"/> <!--食物腐爛-->
    <var name="IdleModeCountdown" type="0" value="60"/> <!--空閒模式倒計時-->
    <var name="IdleModeStartup" type="0" value="1"/> <!--空閒模式啟動-->
    <var name="InitialSpawn" type="0" value="100"/> <!--初始生成-->
    <var name="LootProxyPlacement" type="0" value="1"/> <!--戰利品代理安置-->
    <var name="RespawnAttempt" type="0" value="2"/> <!--重生嘗試-->
    <var name="RespawnLimit" type="0" value="3"/> <!--重生限制-->
    <var name="RespawnTypes" type="0" value="12"/> <!--重生類型-->
    <var name="RestartSpawn" type="0" value="0"/> <!--重新啟動Spawn-->
    <var name="SpawnInitial" type="0" value="1200"/> <!--產生初始-->
    <var name="TimeHopping" type="0" value="60"/> <!--跳時-->
    <var name="TimeLogin" type="0" value="3"/> <!--記錄時間-->
    <var name="TimeLogout" type="0" value="3"/> <!--登出時間-->
    <var name="TimePenalty" type="0" value="3"/> <!--處罰時間-->
    <var name="WorldWetTempUpdate" type="0" value="1"/> <!--世界濕溫度更新-->
    <var name="ZombieMaxCount" type="0" value="5"/> <!--殭屍最大數-->
    <var name="ZoneSpawnDist" type="0" value="1000"/> <!--區域產生區-->
</variables>


【MOD安裝教學】
安裝GM MOD
先到工坊訂閱 ZomBerry Admin Tools 與 CF
..\steamapps\common\DayZ\!Workshop 資料夾底下的 @ZomBerry Admin Tools@CF 複製到 ..\SteamLibrary\steamapps\common\DayZServer 資料夾

接著將@ZomBerry Admin Tools 資料夾名稱修改為 @ZomBerry

然後將兩個 @ZomBerry@CF 資料夾內的 AddonsKeys 資料夾都複製到 ..\SteamLibrary\steamapps\common\DayZServer 覆蓋

然後在 ..\SteamLibrary\steamapps\common\DayZServer 創建兩個目錄,讓路徑成為 ..\SteamLibrary\steamapps\common\DayZServer\Profiles\Mod

@ZomBerry 底下的 Config 資料夾複製到 ..\SteamLibrary\steamapps\common\DayZServer\Profiles\Mod
並將 Config 資料夾改名為 ZomBerry

打開 ..\SteamLibrary\steamapps\common\DayZServer\Profiles\Mod\ZomBerry 資料夾中的 admins.cfg

裡面寫的是Steam的ID碼,將它修改成自己的Steam ID碼,然後儲存關閉

接著設置含有MOD的Sever啟動器
@echo off
cls

set version=1.17
set wat=Dayz SA

title %wat% Watchdog

cd H:\SteamLibrary\steamapps\common\DayZServer

:watchdog
echo (%time%) %wat% started.
start "Dayz_SA" /wait /affinity FF /high "DayZServer_x64.exe" -config=serverDZ.cfg -profiles=H:\SteamLibrary\steamapps\common\DayZServer\Profiles\Mod -freezecheck -noFilePatching "-mod=@CF;@ZomBerry"
echo (%time%) %wat% closed or crashed, restarting.
goto watchdog
需要留意2點:
1. 必須將紅色的路徑位置改成自己的DayZSever位置及DayZSever Mod位置
2. 綠色雙引號包住的是啟動Mod的指令,如果後面有增加其他Mod則需要繼續增加

儲存後就可以啟動Sever了。
附帶一提,玩家登入遊戲時,也必須開啟相同的Mod才會正常。

如果無法啟動GM模式,將 admins.cfg 這個檔案直接複製一個丟在 ..\steamapps\common\DayZServer 資料夾中即可

遊戲內按O打開GM模式,地圖上點Alt+左鍵飛行。

同場加映
不知道我哪裡設定錯誤,有時候伺服器會跑到社群那邊被公開
如果你在 LAN 那邊找不到你的伺服器,找找看社群的地方吧(?


因為這是伺服器,所以每次要單人 Play 的時候都要用 .bat 檔啟動伺服器喔
然後伺服器刷不刷新這個問題,當然就是由你自己控制了

伺服器的詳細設定不在本教學範圍內,有請其他架服專業人士教學,謝謝

另外提供我看的伺服器架設教學的作者影片&論壇:

新手先把影片耐心看完再動手做,因為作者的影片是沒剪接的,中間有時候會有錯誤

創作回應

更多創作