《飢荒》搭建伺服器圖文教程 好基友來聯機

配置需求

·Steam帳號內必須擁有Don’t Starve Together,擁有DST即可建立多個獨立伺服器(Dedicated Server)。

·獨立伺服器沒有使用DST游戲內建立伺服器的路由穿透技術,伺服器必須為游戲客戶端開放一個合適的埠,伺服器默認通信方式:UDP協議,埠號:10999。

建立一個穩定的獨立伺服器必須確保系統滿足以下要求:

1.網絡上傳速度:8KB/玩家/秒。如果按照獨立伺服器最大人數為6人來換算,網絡上傳速度必須達到50KB/秒或以上才能讓6個玩家同時進行游戲,當然網絡上傳帶寬越大越好,較差的網絡通信會導致連接獨立伺服器的玩家動作卡頓以及卡屏。

2.記憶體:大約65MB/玩家。如果按照獨立伺服器最大人數為6人來換算,可用記憶體大小必須達到500MB或以上才能讓6個玩家同時進行游戲。

3.CPU:官方網站沒有明確說明。

4.游戲運行庫:VCRedist_2008(x86),DST游戲根目錄文件夾內有,對著DST右鍵->屬性->本地文件->瀏覽本地文件

建服准備工作

獲取令牌

如果要建立一個向公眾開放的獨立伺服器,則必須要獲得伺服器令牌,這樣做的目的是能夠讓開發者關停違反了服務條款的伺服器。

根據以下步驟獲得令牌:

注意:所有符號及標點全部使用半角模式輸入。

1.運行Don’t Starve Together。

2.點擊Play !。

3.按~(數字鍵1左邊的按鍵)開啟控制台輸入指令,再按一次關閉控制台,若還有控制台文字信息顯示在螢幕上按CTRL+L關閉。

4.如下圖在控制台內輸入指令:TheNet:GenerateServerToken()

5.如下圖在Documents\Klei\DoNotStarveTogether下已經生成了server_token.txt文件。

《飢荒》搭建伺服器圖文教程 好基友來聯機

修改配置文件

配置文件路徑

如下圖settings.ini位於C:\Users\你的用戶名\Documents\Klei\DoNotStarveTogether路徑下。

《飢荒》搭建伺服器圖文教程 好基友來聯機

注意:因為DST不支持Unicode,以下內容請全部使用英文。

若以下內容settings.ini內沒有可自行加上,也可不加,伺服器出現任何問題後果自負。

[network]網絡配置

1.default_server_name = 這里填伺服器名。

2.default_server_description = 描述一下你的伺服器(可不填)。

3.server_port = 10999,伺服器通信埠,最好不要改動,對埠映射及網絡類型熟悉的人員可自行更改。

4.server_password = 這里填伺服器密碼,如果要對公眾開放則不填,如果想和妹紙或基友單獨干羞羞的事自行填寫密碼。

5.max_players =[1-64]最大玩家數1到64,根據計算機性能和網絡負載能力填寫,默認6。

6.pvp = true [ true | false ]是否開啟PVP(玩家可以互相攻擊)。

7.game_mode = [ endless,survival,wilderness ]游戲模式三個里面選一個填。

8.override_dns = [填寫DNS伺服器]覆蓋DNS設置,如果log in很慢的情況下,可以改成8.8.8.8,8.8.8.8。

9.enable_vote_kick = [ true | false ]是否允許投票踢人,默認true。

10.enable_snapshots = [ true | false ]是否允許伺服器回退到一個之前的狀態(等同於回檔,可用來防止燒家的熊孩子),開發者稱這項功能在一些伺服器上會導致問題的發生,默認false。

11.enable_autosaver = [ true | false ]是否開啟自動保存功能,默認開啟,新的一天開始伺服器會自動保存。

12.tick_rate = [ 10 | 15 | 30 | 60 ]類似於FPS,這個值越高客戶端動作越流暢,這取決於伺服器的網絡帶寬和CPU,默認30。

13.connection_timeout = [填寫毫秒數,1秒=1000毫秒],中斷與沒有響應的客戶端的等待時間,默認8000。

14.server_save_slot = [1-5]伺服器加載哪一個存檔,默認1。

15.pause_when_empty = [ true | false ]伺服器空閒時是否自動暫停,當有玩家進入時繼續,最好用於有密碼的私人伺服器,默認false。

[account]帳號配置

· dedicated_lan_server = false [ true | false ]是否只允許區域網游戲,默認關閉。

埠映射

注意:伺服器開啟無法正常運行(游戲右邊列表沒有自己的伺服器,其他玩家無法加入自己的伺服器)再嘗試以下步驟:

確定網絡類型

· ADSL撥號上網

1.有路由器(市面上路由器種類太多,不單獨作某一型號路由器說明,方法大同小異。):進入路由器設置頁面,找到埠映射功能,添加需要映射的埠:協議選UDP,埠號填10999。

2.無路由器:打開控制面板->系統和安全->windows防火牆->高級設置->入站規則右鍵新建規則->勾選埠->勾選UDP,特定本地埠:填10999。

· FTTH光纖入戶

1.無超級管理員密碼

根據光貓型號自行百度方法破解(請自行斟酌!破解失敗導致的各種問題與作者無關),得到超級管理員密碼後請看下文。

2.有超級管理員密碼

1.光貓有埠映射功能:在光貓內設置埠映射,方法上文已經提及,自行查閱。

2.光貓沒有埠映射功能:此方法適合有一定技術水平及動手能力的人員(操作不當可能導致網絡中斷及家庭固話無法撥打和接通),將光貓更改為橋接模式,使用路由器撥號上網,在路由器內設置埠映射,方法上文已經提及,自行查閱。

確定是否擁有獨立公網IP

測試是否擁有獨立公網IP[www.ip138.com]

開啟伺服器

測試是否成功運行伺服器

根據以下步驟來開啟伺服器:

1.打開DST Dedicated Server。

2.打開Don’t Starve Together。

3.點擊Play!,稍等片刻。

4.Server-Type伺服器類型篩選選擇Dedicated Server。

5.若自己的伺服器出現在右邊列表中並且顯示Dedicated Server,說明伺服器成功運行(並且邀請其他玩家測試是否能夠進入自己的伺服器)如下圖第一個伺服器(不小心暴露了伺服器名)。

《飢荒》搭建伺服器圖文教程 好基友來聯機

6.檢查是否成功開啟伺服器點這里[my.jacklul.com]

區域網伺服器

1.區域網伺服器只能使用指定范圍埠10998到11018。

2.在配置文件settings.ini內[account]下添加dedicated_lan_server = true即可被區域網內其他終端發現。

運行多個伺服器

首先確保計算機硬體和網絡帶寬是否強大到能夠同時運行多個伺服器。

創建新的伺服器路徑:

· 在伺服器的啟動選項內輸入-conf_dir

新的文件夾會存儲在Documents\Klei下,此時就可以開啟一個新的伺服器。

伺服器管理

控制台指令

根據以下步驟獲取管理員權限:

1.生成令牌的用戶會自動獲得管理員權限。

2.擁有管理員權限的用戶能夠從伺服器內踢出其他用戶或者封禁其他用戶,也能執行LUA腳本。

3.如果想授予其他用戶管理員權限,需要在Documents\Klei\DoNotStarveTogether\save\下新建一個名為adminlist的txt文件。

4.伺服器關閉狀態下在新建的adminlist文件里添加User ID(格式為KU_****),每行只能填寫一個User ID,保存後關閉文件,開啟伺服器後所添加的用戶即擁有了管理員權限。

目前有3種方法能夠獲取USER ID

o 玩家在游戲內通過Klei官方查詢網站查詢,Play->Host server->Account info。

《飢荒》搭建伺服器圖文教程 好基友來聯機

o 服主通過查詢服務端獲得USER ID

《飢荒》搭建伺服器圖文教程 好基友來聯機

o 玩家在游戲內通過Backspace鍵(←)在螢幕右下角查詢自身USER ID

《飢荒》搭建伺服器圖文教程 好基友來聯機

管理員指令

按~(數字鍵1左邊的按鍵)開啟控制台後再按CTRL切換到Remote模式輸入指令,再按一次~鍵關閉控制台,若還有控制台文字信息顯示在螢幕上按CTRL+L關閉。

1.c_reset(true)true:刪除當前世界的存檔並且新建一個全新的世界,false:重新加載當前世界。

2.c_shutdown(true)true:保存並且關閉伺服器,false:不保存直接關閉伺服器。

3.c_spawn(「prefab name」)在滑鼠所指的位置刷出物品。

4.c_give(「item name」)在物品欄內刷出物品。

伺服器指令

使用以下指令會覆蓋settings.ini的配置內容。

1.-port [1024-65535]強制伺服器使用特定的埠。

2.-tick [15-60]強制伺服器使用特定的tickrate(類似於FPS)。

3.-players [1-64]強制更改伺服器的最大玩家數量。

4.-lan強制更改伺服器為區域網伺服器,只有在同一網絡下的玩家才能加入。

5.-conf_dir DoNotStarveServerDirectory強制伺服器讀取備用目錄的數據和設定。

自定義世界

目前有2種方法可以自定義世界(更改生物群落數量,季節長短等)。

1.通過Lua文件自定義世界(無法覆蓋當前世界選項,只對創建新世界有效)

o 如果server_save_slot對應的存檔為空,則會自動創建新世界。

o 首先在Documents\Klei\DoNotStarveTogether下新建一個名為worldgenoverride後綴為lua的文件

o 使用記事本打開,並根據以下提供網址內的代碼修改,請注意查看網址中的各行options語句所提供的選項。

點擊查看[notepad.cc]

2.通過客戶端自定義世界

o 打開DST客戶端,點擊Play!後,確保Save Slot有空位可用,點擊HOST SERVER創建好自定義世界後記住保存在哪一個Save Slot位,Save Slot位共有5個,分別對應1,2,3,4,5。

《飢荒》搭建伺服器圖文教程 好基友來聯機

o 打開settings.ini文件,將server_save_slot = 填寫數字(1,2,3,4,5)修改為之前創建好的自定義世界所對應的Save Slot位,保存後關閉。

《飢荒》搭建伺服器圖文教程 好基友來聯機

MOD管理

開啟MOD,官方提供了2個方法啟用伺服器Mod

首先將SteamLibrary\SteamApps\common\Don’t Starve Together Beta\mods路徑下的文件全部復制到SteamLibrary\SteamApps\common\Don’t Starve Together Dedicated Server\mods路徑下

1.修改dedicated_server_mods_setup.lua文件

ServerModSetup(“此處填寫Mod的創意工坊ID”)

這種方法默認不啟用MOD,需要通過以下2種方法來啟用MOD。

2.修改modsettings.lua文件

這種方法要保證客戶端也有伺服器的Mod,所以不推薦。

modsettings.lua文件位於SteamLibrary\SteamApps\common\Don’t Starve Together Dedicated Server\mods路徑下。

在文件內添加ForceEnableMod(“workshop-*********”)則強制啟用Mod,Mod ID可以在mods文件夾下找到,將需要啟用Mod ID分別用ForceEnableMod(“****”)語句填入modsettings.lua文件並保存。

3.新建modoverrides.lua文件(推薦)

在Documents\Klei\DoNotStarveTogether下新建一個名為modoverrides後綴為lua的文件,使用記事本(任何編輯器即可)打開。

輸入以下語句,圖中MOD ID僅供參考,請根據實際安裝MOD填寫。(請使用半角或者純英文輸入法):

《飢荒》搭建伺服器圖文教程 好基友來聯機

開啟伺服器,進入游戲,進入自己的伺服器後查看Mod是否成功啟用。

如何讓其他玩家查看伺服器已經啟用的Mods

《飢荒》搭建伺服器圖文教程 好基友來聯機

1.用記事本打開位於DST Dedicated Server路徑下各個MOD的modinfo.lua文件和modoverride.lua文件如下圖。

《飢荒》搭建伺服器圖文教程 好基友來聯機

2.修改文件中欄位client_only_mod = true:伺服器View Mods里不顯示此Mod;false:伺服器View Mods里顯示此Mod

3.修改文件中欄位all_clients_require_mod = true:客戶端都必須擁有此Mod才能加入游戲;false:客戶端沒有此Mod也能加入游戲。

《飢荒》搭建伺服器圖文教程 好基友來聯機

常見問題解決方法

1.問:為什麼退出伺服器後下次進入人物物品全部丟失?

答:將配置文件內[network]下修改pause_when_empty = false關閉此功能即可解決。

2.問:為什麼伺服器是Good host,但人物動作卻很不流暢?

答:將配置文件內[network]下tick_rate的值更改為60。

3.問:為什麼開啟了伺服器卻在客戶端里找不到自己的伺服器?

答:映射協議為UDP的10999埠(修改過默認埠,根據實際情況映射埠)

4.問:無法在游戲內打開控制台怎麼辦?

答:在settings.ini文件內[MISC]項下CONSOLE_ENABLED = true [false改為true]

5.問:關閉了控制台螢幕上有很多文字怎麼辦?

答:按CTRL+L關閉

6.問:為什麼按照指南步驟做伺服器沒成功開啟呢?

答:請看建服准備工作——埠映射

7.問:使用控制台指令後沒有效果或者程序崩潰

答:所有命令一定要用Remote模式發送給伺服器,Remote模式:開啟控制台後再按CTRL即可開啟。

來源:steam

guest
0 Comments
Inline Feedbacks
View all comments