dayz-ctl — 這是 Linux 版 Steam Proton 上的實驗性啟動器(伺服器資源管理器和啟動器)DayZ。
本文檔提供以下語言版本:eng ??、rus ??、ua ??
在這個專案進行時,Bohemia Interactive 仍然無法為遊戲製作一個可以正確安裝修改並連接到遊戲伺服器的工作啟動器。這就是這個計畫誕生的原因。
主要特點:
特別感謝 dayz-linux-cli-launcher 的想法和 dayzsalauncher 的 API。
啟動器演示
主選單 | 伺服器瀏覽器 |
伺服器過濾器 | 按地圖過濾 |
套用選定的過濾器 | 收藏瀏覽器 |
歷史瀏覽器 | 模糊搜尋 |
離線模式 | 離線模式 |
伺服器模組 | 模組資訊 |
配置選單 | 啟動選項 |
關於菜單 | DayZ新聞 |
啟動器有兩種操作模式:使用 SteamCMD 和不使用 SteamCMD 在手動模式下管理 mod。
您可以結合這兩種方法,例如,透過點擊連結訂閱您將來肯定需要的那些修改,並使用啟動器檢查更新或強制更新 mod。此外,您無法訂閱下一台伺服器的“可疑的 50 個 mod”,並透過啟動器中的一個操作輕鬆刪除它們,同時保留您訂閱的所有 mod。
為了方便安裝,有一個小腳本可以為您完成所有操作(至少嘗試這樣做)
執行這個:
curl -sSfLA dayz-ctl bit.ly/3Vf2zz3 | bash
為了使啟動器正常運作,您需要確保已安裝所有依賴項:
ping
( iputils-ping
) - 找出對伺服器的 ping(啟用 ICMP 的情況)geoiplookup
( geoip-bin
) - 找出伺服器所在的國家whois
- geoiplookup 的後備,不太準確且速度較慢,但並非所有條目都在標準 geoip 資料庫中curl
- 用於透過 HTTP/S 與各種 API 進行通訊的實用程式cut, tr, grep, pgrep, pkill, killal, timeout, sed, awk
( gawk
) - 腳本中沒有經典實用程式的地方然後您可以克隆存儲庫:
git clone [email protected]:WoozyMasta/dayz-ctl.git
# or
git clone https://github.com/WoozyMasta/dayz-ctl.git
# and run
cd dayz-ctl
./dayz-ctl
或下載腳本檔案本身:
curl -sSfL -o ~ /.local/bin/dayz-ctl
https://raw.githubusercontent.com/WoozyMasta/dayz-ctl/master/dayz-ctl
chmod +x ~ /.local/bin/dayz-ctl
# and run
dayz-ctl
表情符號可用於正確顯示元素,您可能需要安裝它們,例如,您可以使用 Google 的 Noto 字型。
以下是不同發行版的套件名稱清單:
fonts-noto-color-emoji
- debian/ubuntugoogle-noto-emoji-color-fonts
- centosgoogle-noto-emoji-fonts
- fedoranoto-fonts-emoji
-拱門font-noto-emoji
- 高山noto-coloremoji-fonts
- suse或者,如果您不喜歡表情符號或由於某種原因無法使用它們,您可以應用補丁將它們替換為字串:
sed -e ' s/▫️/•/g ' -e ' s/?/✕/g ' -e ' s/⬛/ /g ' -e ' s//time/g ' -e ' s/❔/?/g '
-e ' s/?/ok/g ' -e ' s/?/no/g ' -e ' s/?/night/g ' -e ' s/☀️/day/g '
-e ' s//yes/g ' -e ' s/?/no/g ' -e ' s/✅/ok/g ' -e ' s//no/g '
-i " $( which dayz-ctl ) "
最好刪除 Steam 中的所有 DayZ 啟動選項並從啟動器管理它們,反之亦然。由於鍵可以重複,這可能會導致混亂,或者在最壞的情況下,切斷一些鍵,因為參數字串有長度限制,並且在具有大量 mod 的伺服器上,非常長的啟動參數是也用過。
那些。將啟動選項留空,或僅指定所需的輔助實用程式和變數集,例如:
MANGOHUD=1 ENABLE_VKBASALT=1 gamemoderun %command%
您可以輸入多個搜尋詞,並用空格分隔。例如^namalsk DE !PVE !RP
代幣 | 匹配類型 | 描述 |
---|---|---|
sbtrkt | 模糊匹配 | 與sbtrkt 匹配的項目 |
wild | 完全符合(引用) | 包含wild 的物品 |
^music | 前綴精確匹配 | 以music 開頭的項目 |
.mp3$ | 後綴精確匹配 | 以.mp3 結尾的項目 |
!fire | 逆向精確匹配 | 不包括fire 的物品 |
!^music | 反向前綴精確匹配 | 不以music 開頭的項目 |
!.mp3$ | 反向後綴精確匹配 | 不以.mp3 結尾的項目 |
具有單一條形字元的術語充當 OR 運算符
P V E | R P
您可以藉助環境變數來微調啟動器的工作方式,您可以像往常一樣將這些變數傳遞給環境或寫入設定檔$HOME/.local/share/dayz-ctl/dayz-ctl.conf
(預設情況下) )
可用變數列表:
DAYZ_CTL_VERSION
— 應用程式版本DAYZ_CTL_NAME
= dayz-ctl
— 應用程式名稱DAYZ_GAME_ID
= 221100
— Steam 遊戲 IDAPPLICATIONS_DIR
= $HOME/.local/share/applications
— 用於儲存應用程式捷徑的目錄DAYZ_CTL_DIR
= $HOME/.local/share/dayz-ctl
— 啟動器工作目錄DAYZ_CTL_BIN_DIR
= $HOME/.local/share/dayz-ctl/bin
— 用於儲存附加執行檔的目錄DAYZ_REQUEST_TIMEOUT
= 10
— HTTP 請求的標準逾時(以秒為單位)DAYZ_CONFIG_FILE
= $DAYZ_CTL_DIR/$DAYZ_CTL_NAME.conf
— dayz-ctl 設定文件DAYZ_SERVER_DB
= $DAYZ_CTL_DIR/servers.json
— 伺服器資料庫文件DAYZ_SERVER_DB_TTL
= 300
— 伺服器資料庫的 TTL(以秒為單位)DAYZ_SERVER_REQUEST_TIMEOUT
= 30
— 取得伺服器清單的逾時時間(以秒為單位)DAYZ_NEWS_DB
= $DAYZ_CTL_DIR/news.json
— 新聞基礎文件DAYZ_NEWS_DB_TTL
= 3600
— 新聞資料庫的 TTL(以秒為單位)DAYZ_MODS_DB
= $DAYZ_CTL_DIR/mods.json
— 修改資料庫文件DAYZ_PROFILE
= $DAYZ_CTL_DIR/profile.json
— 使用者設定檔DAYZ_HISTORY_SIZE
= 10
- 伺服器資源管理器歷史記錄大小DAYZ_FZF_HISTORY
= $DAYZ_CTL_DIR/.$DAYZ_CTL_NAME-history
— 模糊搜尋的歷史文件DAYZ_USERAGENT
= "$DAYZ_CTL_NAME $DAYZ_CTL_VERSION"
— 用於 HTTP 請求的使用者代理DAYZ_API
= https://dayzsalauncher.com/api/v1
— 用於取得伺服器清單的 API 位址DAYZ_STEAMCMD_ENABLED
= true
- 切換以啟用或停用 SteamCMDDAYZ_FILTER_MOD_LIMIT
= 10
- 預設 mod 限制過濾器值DAYZ_FILTER_PLAYERS_LIMIT
= 50
- 預設玩家限制過濾值DAYZ_FILTER_PLAYERS_SLOTS
= 60
— 玩家的預設插槽限制過濾值啟用 MangoHud、vkBasalt 和遊戲模式的 Steam 啟動選項:
MANGOHUD=1 ENABLE_VKBASALT=1 gamemoderun %command%
此外,無需使用第三方實用程序,您就可以顯示包含資源資訊的覆蓋圖並使用標準 DXVK 工具限制 FPS,例如:
DXVK_HUD=fps DXVK_FRAME_RATE=60 gamemoderun %command%
DXVK_HUD=fps
... DXVK_HUD=full
的意思:
devinfo
- 顯示 GPU 的名稱和驅動程式版本。fps
- 顯示目前幀速率。frametimes
- 顯示幀時間圖。submissions
- 顯示每幀提交的命令緩衝區的數量。drawcalls
- 顯示每個畫面的繪製呼叫和渲染通道數。pipelines
- 顯示圖形和計算管道的總數。descriptors
- 顯示描述符池和描述符集的數量。memory
- 顯示分配和使用的設備內存量。gpuload
- 顯示估計的 GPU 負載。可能不準確。version
- 顯示 DXVK 版本。api
- 顯示應用程式使用的 D3D 功能等級。cs
- 顯示工作線程統計資訊。compiler
- 顯示著色器編譯器活動samplers
- 顯示目前使用的採樣器對數量 [僅限 D3D9]scale=x
— 將 HUD 縮放 x 倍(例如 1.5)幀率限制DXVK_FRAME_RATE=0