小刻都能學會的《幻獸帕魯》服務器部署全攻略!

大家好啊,這裏是肥狗, 最近幻獸帕魯很火,正好給大家做一個開服攻略,歡迎大家自行開服來和好友們暢玩遊戲。

說在前面的話

目前《幻獸帕魯》的服務器進程處於早期測試版本,沒有設計內存釋放功能,因此會導致不管是在windows聯機和linux聯機情況下,服務器主機的內存會爆,如果是windows聯機的話在這個機子上游玩的玩家也會變卡,因此一下的部署內容完全是爲了滿足上述問題,如果Pal官方有修復這個問題我也會在第一時間更新新的部署方法。

服務器購買

想要遊玩幻獸帕魯,你首先需要一臺雲服務器,並且爲linux系統,雖然官方推薦的服務器配置爲4核8G內存,但根據盒友的實際操作來看,2核4G也可以跑起來,只是重啓的頻率會高上不少,這裏我們選擇選用騰訊雲的2核8G雲服務器(目前價格是130一個月),操作系統選擇的是:CentOS 7.6 64bit

使用SSH鏈接服務器

肥狗這裏使用的是Xshell來遠程操作服務器,大家也可以自行下載,或者在騰訊雲或者其他運營商的控制檯在線登錄使用,這裏請自行鏈接,等成功登錄上服務器,接下來就是安裝steamcmd。

部署SteamCMD

這一步可以參考steam官方的部署教程,當然因爲steamcmd網站的教學過於簡略,肥狗選擇重新給大家走一遍流程。

首先創建一個新的用戶,用戶名爲steam,並且爲steam用戶設置一個密碼

sudo useradd -m steam

sudo passwd steam

將用戶切換爲steam,然後來到home文件夾路徑下

sudo -u steam -s

cd /home/steam

接下來我們選擇手動安裝steamcmd,這裏選擇創建一個名爲Steam的文件夾來儲存steamcmd,並前往該文件夾

mkdir ~/Steam && cd ~/Steam

下載steamcmd並解壓

curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -

此時你的當前目錄下會出現一個叫做steamcmd.sh的腳本文件,執行它

./steamcmd.sh

此時大概率會出現報錯:

[steam@VM-16-17-centos Steam]$ ./steamcmd.sh ./steamcmd.sh: /home/steam/Steam/linux32/steamcmd: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

這是因爲我們沒有安裝steamcmd的相關依賴,這裏選擇切換回root用戶,並安裝依賴。

su root

yum install glibc.i686 libstdc++.i686

之後再切換回steam用戶,重新執行steamcmd.sh文件

su steam./steamcmd.sh

這個時候就能看到steamcmd的檢查更新和加載內容了。

安裝完成之後就進入了steam的操作界面,如下圖所示:

此時,選擇匿名登錄並下載幻獸帕魯服務進程:

login anonymous

app_update 2394010 validate

quit

這裏可能會有問題是匿名登錄會超時,這是受限於服務器和主機的連通性,這個多嘗試幾次就就好,或者把服務器位置選擇爲其他地區,更簡單的方法是直接本地下載linux文件包上傳到主機上。等這三步解決完畢之後,前往PalServer文件夾

cd ~/Steam/steamapps/common/PalServer

運行當前文件夾下的PalServer.sh文件。

./PalServer.sh

此時會報錯,是一個沒有運行庫的問題:

解決方法也非常簡單

mkdir -p ~/.steam/sdk64/

cd /home/steam/Steam/

./steamcmd.sh

login anonymous

app_update 1007quit

cp ~/Steam/steamapps/common/Steamworks\ SDK\ Redist/linux64/steamclient.so ~/.steam/sdk64/

這些步驟操作完成之後,就可以按照之前的步驟再來一遍

cd ~/Steam/steamapps/common/PalServer./PalServer.sh

如果當你看到如下輸出信息:

那麼就說明,你的服務器已經架設成功了,恭喜你。

等等,行百里者半九十!現在你還沒有辦法進服務器遊玩!請聽我繼續說。

使用pm2對Pal服務進程進行管理

這一點我在上文已經說過了,Pal服務器進程沒有內存釋放,會越積越多,導致整個服務器進程卡頓,因此我們選擇使用pm2進行進程管理,並使用腳本文件對pm2進行監視,如果內存到達限額就控制pm2重啓。

首先我們按ctrl+c退出已經打開的服務器進程:

切換我們的身份到root:

su root

之後首先安裝npm包管理工具:

yum -y install npm

npm install pm2 -g

這裏也是和steam匿名登錄同樣的問題,npm和國內的連通性一直也是好好壞壞反反覆覆,只能說如果不成功的話反覆嘗試幾次,總有一次能夠成功(心裏憔悴,如果可以的話建議直接買香港服務器)。

安裝好之後的提示信息是這樣的。

驗證pm2可用性

/usr/local/bin/pm2 -v

之後再切換回steam用戶:

su steam

使用pm2打開幻獸帕魯的服務器進程

/usr/local/bin/pm2 start ./PalServer.sh

如果成功了之後會提示:

這樣就算開服成功了!等等,先別急,忘記了我說過的內存不釋放的問題了嗎?這個時候我們需要編寫腳本文件來監視pm2。

使用腳本進行內存自動釋放

這裏的知識涉及到了linux腳本內容以及服務進程,最好有一點計算機基礎再來操作,肥狗我儘可能的講的詳細一點。

首先,我們來到PalServer目錄,並創建一個pm2配置文件

cd /home/steam/Steam/steamapps/common/PalServer/

vi pm2.config.js

將以下代碼粘貼進文件中:

module.exports = {

 apps: [

 {

 name: 'PalWorld',

 script: 'PalServer.sh',

 autorestart: true,

 max_memory_restart: '6G',

 exec_mode: 'fork',

 instances: 1,

 args: [],

 },

 ],

};

這裏的max_memory_restart根據你選擇的服務器最大內存來進行控制,linux服務器的話建議爲最大服務器內存-1G。

之後運行js進程文件,並同樣查看輸出內容:

/usr/local/bin/pm2 start pm2.config.js/usr/local/bin/pm2 log 0

如果輸出內容爲:

那麼就意味着你的監控進程已經開始工作了!等等,不要着急!還有一步!

最後一步,防火牆!

都到這裏了馬上就能見到曙光了,可以把SSH鏈接程序關了,接下來來到騰訊雲控制檯,選擇防火牆。

添加規則:

添加TCP和UDP的8211端口開放

這些都操作完畢的話,你應該就可以在幻獸帕魯遊戲裏通過你當前服務器的IP+端口的形式訪問了!希望盒友們都能學會並玩得愉快!

這裏是肥狗,下一期打算講講幻獸帕魯服務器世界設置和存檔遷移!

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

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