[心得] Valheim 多人LAG解法

作者: germun (ger)   2021-02-23 17:44:32
最近打到後期跟朋友連線開始偶有LAG情形出現
目前試了兩種方法,有遇到的可以參考
懶得看前面的可以直接跳到第二段後面的修改
這裡有一篇統整LAG的討論
https://steamcommunity.com/app/892970/discussions/0/4939856028569039376/
解一、首先是官方回覆的說法
https://tinyurl.com/5azsyyul
簡單說為了減輕server負擔,玩家間的連線有用到 p2p 的概念
最先進入活動區域的玩家會當 "主控" 負責該區域的主要運算,再傳送資料給他人
所以只要其中一人電腦運算或網路比較差的話 (例如筆電) 且當主控就有可能lag
短暫的解法就是當主控的人先登出再登入或離開區域,讓給電腦好的人來負責運算
不過這種方法治標不治本,畢竟一直登出登入也是麻煩
去新區域還要注意誰先誰後
解二、玩家提出的修改server參數方法
我們自己是三個人玩,試了以後確實很有感
參考這篇:
https://tinyurl.com/fpwl86f8
有玩家發現上述提到的資料傳輸上限在獨立伺服只有 64KB/s 左右(遊戲內可以按F2查看)
所以試著去調高它的上限,結果發現有改善,即使10個玩家同時打樹老也不再LAG
但修改的方式比較麻煩點,要去解譯某個DLL檔改參數後再打包回去
不過用工具就可以簡單做到
個人或獨立伺服器都適用
唯一麻煩的是每次遊戲更新後就要重新修改一次,直至官方自己把參數調高改善為止
建議不要拿舊版本or修改好的覆蓋過去,避免版本有問題造成遊戲出錯
除非你很確定版本沒問題
這是他提出的簡易教學
https://tinyurl.com/qs5r1oxy
PS. 開伺服器的人才需要改,連線的玩家不用改
如果是獨立伺服器(DSL),從server端改就好,玩家只改自己的也沒用
我這邊大概翻一下做法:
1. 先關掉 server
2. 下載工具 dnspy: https://github.com/dnSpy/dnSpy/releases
3. 找到 valheim_Data 或 valheim_server_Data 之下的
\Managed\assembly_valheim.dll
4. 建議先備份,然後用工具開啟它
5. dll內找到 ZDOMan 之下的 m_dataPerSec 這個參數,預設應該是 61440 (=60KB)
https://i.imgur.com/QBFn9Qh.png
找到後右鍵 -> Edit Class
將這個值調高,視每個人的網路而定,例如加個0改成10倍
以台灣目前網路的平均上傳能力,500KB甚至1000KB以上應該也沒問題
我們自己三個人玩調成5倍也就是 300KB 就已經改善很多了
6. 按右下的 compile 重新編譯
7. 左邊再次確認有選對修改好的dll,左上File -> Save Module,然後儲存該dll
ps.
A. 玩家自己開連線的話檔案就是在遊戲安裝目錄
B. 工具不熟或找不到參數請自己摸熟或上網找教學,本篇不負責工具操作教學
C. 如果你是連線到獨立伺服器(DSL),必須架DSL的人從伺服端去修改,你只改自己
的遊戲安裝目錄是沒用的
D. 如果是非DSL,似乎這個參數會在安裝時根據你的網路能力決定
所以非DSL預設不一定是60KB
作者: fcshden (軒仔)   2021-02-23 18:18:00
作者: poornow (破惱)   2021-02-24 00:55:00
作者: YuzanJhang (Yuzan)   2021-02-24 03:57:00
推啦 但我朋友都不玩了哭啊
作者: lovejay6602 (Mr yee)   2021-02-24 15:10:00
推個
作者: npc776 (二次元居民)   2021-02-24 15:21:00
我們團兩個工程師兩個網管前天搞伺服器搞到快發瘋(ry

Links booklink

Contact Us: admin [ a t ] ucptt.com