【叛亂:沙漠風暴】保姆級搭建服務器開服指南(Windows,Linux)

如標題,希望通過更簡單、更快捷的方式建立服務器。

包括Windows系統和Linux系統。

遊戲鏈接及介紹如下:

Insurgency: Sandstorm是一款任務目標明確,融合團隊配合、近距離作戰的第一人稱戰術射擊多人遊戲。體驗現代戰爭的緊張感,在戰鬥中磨練技術,與團隊一起贏取勝利。

指南目錄如下:

  • 前言

  • 一.安裝(Visual C++,SteamCMD,Dedicated Server)

  • 二.啓動 / 運行(.bat文件及.sh文件)

  • 三.配置文件(Game.ini)

  • 四.管理員(遠程權限,命令)

  • 五.統計數據(GameStats,GSLT)

  • 結語

另外,因無法插入表格,表格以圖片代替,圖片來自我的Steam指南。

前言

一.爲什麼要建立服務器?

爲了更低的延遲,也方便進一步自定義遊戲

二.服務器應建在哪裏?

  1. 正在使用的電腦(可能產生問題)

  2. 閒置的電腦

  3. 租用或購買的服務器

三.服主準備需要什麼?

  • 一臺電腦

  • 一個公網IP(iPv4)

  • 較好的動手能力和思考能力

參考:

—————————————

一.安裝(Visual C++,SteamCMD,Dedicated Server)

準備工作

請先確保已在服務器上安裝了必需的先決條件。

Windows

Visual C++ 2015 Redistributable:https://www.microsoft.com/en-us/download/details.aspx?id=53587

VIsual C++ 2017 Redistributable:https://aka.ms/vs/15/release/vc_redist.x64.exe

———————

方案一:SteamCMD

與Steam上發佈的其他遊戲一樣,《叛亂:沙漠風暴》的服務器文件通過名爲SteamCMD的命令行工具發佈。

這個無圖形界面的Steam客戶端允許你安裝和更新服務器文件,並且無需擁有遊戲。

下載

Windows:https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip

Linux:https://developer.valvesoftware.com/wiki/SteamCMD#Linux

對於基本服務器設置,請按照以下說明操作:

  1. 打開SteamCMD並等待其更新。這可能需要幾分鐘

  2. 輸入login anonymous,這將讓你匿名登錄,允許你下載大多數遊戲服務器

  3. 輸入force_install_dir [服務器路徑](示例:force_install_dir D:\sandstorm)

  4. 輸入app_update 581330,這將安裝和驗證《叛亂:沙漠風暴》專用服務器

  5. 收到表明應用程序已完全安裝的消息後,請輸入quit並點擊Enter

你現在可以在Steamapps文件夾中找到你的專用服務器,完整路徑應該如下:SteamCMD\steamapps\common

你可以創建此文件夾的快捷方式,以方便將來訪問。

———————

方案二:Dedicated Server

可以替代SteamCMD使用,但需要擁有遊戲。

如圖所示。

簡而言之,在Steam庫中勾選“工具”選項,

隨後,安裝工具“Insurgency: Sandstorm Dedicated Server”。

—————————————

二.啓動 / 運行(.bat文件及.sh文件)

安裝SteamCMD後,你需要創建一個腳本來啓動具有所需選項和設置的服務器。

在Windows上,這是一個批處理文件;在Linux上,這是一個shell腳本。

示例圖(以Windows的Dedicated Server爲例)

Windows:

1.在服務器根目錄中新建[文件名].txt文件

2.打開該文件,輸入

InsurgencyServer.exe Gap?Scenario_Gap_Checkpoint_Security?MaxPlayers=28 -Port=27102 -QueryPort=27131 -log -hostname="My Server"

3.將文件重命名爲[文件名].bat並確認

(需要開啓顯示擴展名,否則無法直接更改擴展名)

Linux:

1.運行cd .steam/steamapps/common/sandstorm_server以導航至服務器目錄

2.運行touth [文件名].sh並按下Enter

(Linux中,若a.txt不存在,touth a.txt將會新建一個a.txt空白文件)

因此,touth [文件名].sh將能新建具有指定名稱的文件,你需要使用操作系統的特定命令行編輯此文件才能啓動服務器

3.編輯文件,輸入

Insurgency/Binaries/Linux/InsurgencyServer-Linux-Shipping Gap?Scenario_Gap_Checkpoint_Security?MaxPlayers=28 -Port=27102 -QueryPort=27131 -log -hostname="My Server"

———————

小結:

在本例中,服務器將在Gap地圖及Checkpoint(Security)模式上啓動,端口爲27102,最多可容納28名玩家。

因此,在本例中

  • Gap?Scenario_Gap_Checkpoint_Security表示在Gap地圖中的Checkpoint_Security模式

  • ?MaxPlayers=28表示服務器最高人數爲28,在PVE服務器裏這個只用來限制玩家人數,而不限制bot數量

  • -Port=27102代表遊戲連接用端口(udp)爲27102

  • -QueryPort=27131代表Steam服務器隊列端口爲27131

  • -log代表允許日誌窗口

  • -hostname=”My Server”代表服務器名稱被設置爲“My Server”

這些參數都是可以修改的,例子如下:

  • 切換爲Farmhouse的Push_Insurgents模式,請將“Gap?Scenario_Gap_Checkpoint_Security”修改爲“Farmhouse?Scenario_Farmhouse_Push_Insurgents”

  • 縮小服務器最大人數至8人,請將“?MaxPlayers=28”更改爲“?MaxPlayers=8”

  • 修改服務器名稱爲“服務器測試”,需要將-hostname=”My Server”更改爲-hostname=”服務器測試”,並保存爲ANSI編碼的文件(若爲英文,無需更改編碼)

如果地圖或場景名稱中存在錯別字,服務器將默認爲Farmhouse。

如果發生這種情況,請驗證你在命令行中拼寫的所有內容是否正確。

ps.更多地圖參數詳見【叛亂:沙漠風暴】服務器配置文件Game.ini及地圖參數指南

創建完此文件後即可運行服務器(Windows可雙擊.bat文件)

如果服務器創建於當前電腦,打開遊戲後進入社區服務器,選擇連接IP,輸入127.0.0.1:27102即可進入服務器(27102爲默認端口)

其它人需要輸入服主的局域網/公網IP:端口連接服務器。

(如果無法正常運行,請修改防火牆設置)

—————————————

三.配置文件(Game.ini) 編輯

大多數服務器配置都是通過.ini文件和啓動參數執行的。

這些文件可以使用Notepad++, Sublime Text, 和VS Code等任何編輯器進行編輯。

配置文件可以在以下目錄中找到(相對於服務器的安裝目錄):

Windows:Insurgency\Saved\Config\WindowsServer

Linux:Insurgency/Saved/Config/LinuxServer

如果該目錄尚不存在,則需要手動創建一個。

你還需要創建新的.ini文件。

Windows:

  1. 在Insurgency\Saved\Config的Config目錄內創建一個名爲WindowsServer的新文件夾

  2. 在WindowsServer文件夾中新建.txt文件,將文件命名爲Engine.ini並按下Enter

  3. 再次新建.txt文件,將文件命名爲Game.ini並按下Enter

Linux:

  1. 輸入mkdir -p Insurgency/Saved/Config/LinuxServer。如果缺少該目錄,這將創建一個新的LinuxServer目錄

  2. 輸入cd Insurgency/Saved/Config/LinuxServer以導航到新創建的Linuxserver目錄

  3. 輸入touch Engine.ini並按下Enter

  4. 輸入touch Game.ini並按下Enter

配置文件內需要輸入的內容詳見【叛亂:沙漠風暴】服務器配置文件Game.ini及地圖參數指南

—————————————

四.管理員(遠程權限,命令)

管理員列表

遊戲內置管理菜單,提供Ban人、更改關卡等基本功能。

要添加管理員,你需要知道他們的64位Steam ID(又名steamID64),你可以通過查看賬戶明細或其它方式來找到steamID64。

然後,你需要在服務器目錄Insurgency/Config/Server中創建一個名爲Admins.txt的文件。

Windows:

  1. 在服務器根目錄中的Insurgency文件夾內創建一個名爲Config的新文件夾

  2. 在新創建的Config文件夾內創建一個名爲WindowsServer的新文件夾,你的路徑現在應該像這樣:Insurgency/Config/WindowsServer

  3. 在WindowsServer文件夾中創建名爲Admins.txt的新文本文檔

Linux:

  1. 運行mkdir -p Insurgency/Config/LinuxServer,如果缺少該目錄,這將創建一個新的目錄

  2. 運行cd Insurgency/Config/LinuxServer導航到新創建的服務器目錄

  3. 運行touch Admins.txt

對於想要添加的每個管理員,你需要將他們的steamID64放在Admins.txt文件內的新行中,例如:

1234567890987654321(示例,請更換爲需要設定管理員的玩家的steamID64)

1234567890987654321(管理員2,換行寫)

你可以爲你想添加的任何數量的管理員,添加新管理員需要重新啓動服務器,以便在遊戲中應用任何更改。

當具有管理員權限的玩家連接到服務器時,他們將能夠打開綁定到小鍵盤“-”(減號)按鈕的管理菜單,並可以在按鍵綁定菜單中重新綁定按鍵。

———————

遠程訪問(Rcon)

啓用Rcon能爲不需要加入服務器的管理員提供對服務器的遠程訪問。

可以通過修改Game.ini文件或通過服務器的命令行啓用Rcon。

要通過命令行啓用需要提供以下參數:

-Rcon -RconPassword=password -RconListenPort=27015

通過Game.ini,可以添加:

[Rcon]

bEnabled=True

Password=password

ListenPort=27015

還可以使用以下附加配置:

命令

你可以隨時通過在控制檯中輸入help來獲取命令列表,這將顯示所有可用命令的摘要、用途以及命令功能的說明。

下表爲可用的命令,必要參數顯示爲“”,而可選參數用“[”和“]”括起來。

默認情況下,任何未知命令都將作爲控制檯命令執行。

—————————————

五.統計數據(GameStats,GSLT)

GameStats

任何《叛亂:沙漠風暴》社區服務器都能支持統計數據。

在服務器上啓用統計數據還可以使玩家在服務器上玩遊戲時獲得經驗,但要求必須使用Steam GSLT,並且不能設置服務器密碼。

1.訪問GameStats Token Generator並通過個人資料進行身份驗證

https://gamestats.sandstorm.game/

2.點擊“Generate Token”來獲取GameStats令牌

令牌看起來像這樣:

-GameStatsToken=1417264D1C6549CC95E10CA1E9BE8F09

將生成的令牌添加到服務器啓動參數中(之前建立的.bat或.sh文件),統計數據就會被啓用。

不要共享GameStats令牌,否則可能導致其被撤銷,並被調查相關賬戶。

———————

GSLT認證

爲了讓你的服務器通過統計服務器進行身份驗證,你必須通過Steam GSLT驗證你的服務器。

GSLT可以從Steam的遊戲服務器帳戶管理頁面獲取。

https://steamcommunity.com/dev/managegameservers

如圖,在基礎遊戲的App ID中填入《叛亂:沙漠風暴》的581320後,點擊創建即可。

創建後Steam會爲你生成登陸令牌。

要通過GSLT身份驗證啓動你的服務器,請將-GSLTToken=[登陸令牌]添加到服務器的命令行中。

可選:官方規則

《叛亂:沙漠風暴》附帶一個被視爲官方規則的規則集;這將鎖定你可以在服務器上更改的選項,但可以使你的服務器顯示在“官方規則”過濾器下。

要使用此規則集,請將-ruleset=OfficialRules添加到服務器的命令行。

結語

通過使用服務器,我和朋友一起完成了不少成就,這證明此方法確實可行。

但我並非專業人士,因此指南可能會出現很多錯誤,並且我無法解決相關問題。

希望大家理解。

感謝閱讀。

(請別忘記查看【叛亂:沙漠風暴】服務器配置文件Game.ini及地圖參數指南

更多遊戲資訊請關註:電玩幫遊戲資訊專區

電玩幫圖文攻略 www.vgover.com