幻兽帕鲁Palworld私服搭建教学

幻兽帕鲁最近在社区呈现了爆火的趋势,在线人数已突破百万级别,官方服务器也开始出现不稳定,卡人闪退的情况。对于有一定财力的小伙伴,搭建一个私人服务器是一个最稳定而舒服的解决方案。本文章将讲解一下如何搭建palworld的私服(专用服务器),如果有不明白的,可以参考官方文档作为补充https://tech.palworldgame.com/dedicated-server-guide,或者在评论区留言,我会耐心解答。

总步骤分为三步:准备机器,下载SteamCMD,以及下载PalServer。

1、准备机器,云服务器标配是4核16G,预算大概300/月,最好用Ubuntu/Debian的机器,有现成的apt安装包,别的操作系统没试过。
2、SteamCMD 是 Steam 客户端的命令行版本。它的主要用途是使用命令行界面安装和更新Steam上可用的各种专用服务器。
3、PalServer就是PalWorld私服的启动脚本,运行这个脚本之后,游戏里就能通过地址【云服务器ip:8211】游玩私服。

一、准备

机器准备

第一步是购买云服务器。云服务器的厂商没有特别要求,腾讯云、阿里云、华为云都行。这里以腾讯云为例子~
在这里插入图片描述
系统记得选择Ubuntu,配置的话推荐四核十六GB的服务器,保底也是四核八G(像笔者跟两三个基友玩的话可以),内存太小根本带不动。
在这里插入图片描述
在这里插入图片描述

笔者一开始用了两核两G的机器,内存直接被拉爆了Orz。
在这里插入图片描述

机器登录

有计算机背景的同学可以跳过这部分,比较基础。

登录云服务器,可以直接用ssh命令,当然也可以用会话管理工具,使用起来会比较方便。个人比较喜欢的一个工具是tabby,可以在这个网站下载:https://tabby.sh/

然后在应用中添加新会话
在这里插入图片描述
会话类型选择SSH
在这里插入图片描述
创建ssh会话界面,填写会话标题(随便填个名字)
在这里插入图片描述
然后在下方的连接配置中,第一个箭头指向的部分填入云服务器的ip,第二个箭头指向的地方填用户名,第三个箭头指向的地方填写密码。ip、用户名、密码从哪里获取?可以在云平台的控制台中查看。
在这里插入图片描述

获取ip方法

在这里插入图片描述

获取密码方法

在这里插入图片描述

获取用户名方法

点击控制台的登录按钮后,弹出页面。
在这里插入图片描述
可以看到我的用户名是ubuntu,在tabby的会话设置中填入即可。
在这里插入图片描述
设置密码
在这里插入图片描述
然后会话就配置完成了,点击播放键即可连入机器。
在这里插入图片描述
当出现这个界面的时候,连接就算成功了。
在这里插入图片描述

二、SteamCMD下载

更改账号

在终端执行以下命令生成一个名为steam的云服务器账号

sudo useradd -m steam
sudo passwd steam
# 设置密码时,建议密码8字符以上带特殊符号

密码不要设置的太简单,密码不要设置的太简单,密码不要设置的太简单!!!!!!

重要的事情说三遍,否则你可能会看到这样的画面

在这里插入图片描述

在终端中输入以下命令,这样在steam账号才能使用sudo命令。

sudo echo "steam   ALL=(ALL:ALL) ALL" >> /etc/sudoers

如果sudo之后还是显示没权限,可以用vim编辑/etc/sudoers文件,加上steam ALL=(ALL:ALL) ALL

vim /etc/sudoers

在这里插入图片描述

然后在终端中输入以下命令,切换账号

sudo -u steam -s
cd /home/steam

如果回话关闭,重新登录时需要重新执行sudo -u steam -s指令

下载包

不同的操作系统下载包的方法不一样

Ubuntu系统

sudo add-apt-repository multiverse; sudo dpkg --add-architecture i386; sudo apt update
sudo apt install steamcmd

Debian系统

sudo apt update
sudo apt install software-properties-common 
sudo apt-add-repository non-free
sudo dpkg --add-architecture i386 
sudo apt update
sudo apt install steamcmd

CentOS

没有RPM包,而且手动安装有bug,笔者没亲自尝试过,不过评论区有个大佬@加蛙练习生试了出来
可以参考一下他的操作

yum install glibc.i686
yum install libstdc++.i686
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -zxvf steamcmd_linux.tar.gz

其他系统

更多系统下的steamcmd下载方法请参考https://developer.valvesoftware.com/wiki/SteamCMD#Linux

运行SteamCMD

如果是ubuntu系统或者debian系统安装的steamcmd,路径在/usr/games/steamcmd,可以通过以下指令把二进制链接到系统路径。

sudo ln -s /usr/games/steamcmd /usr/bin/steamcmd

然后在终端直接输入steamcmd,就能启动服务。
第一次启动steamcmd,程序会下载包,完成下载后会弹出报错,提示缺少steamservice.so,这个报错可以先不管。
在这里插入图片描述
完成steamcmd安装后输入quit退出steamcmd
请添加图片描述

下面可以开始安装幻兽帕鲁的专用服务器程序了。

三、Palserver下载

执行以下命令,即可开始下载服务器程序

steamcmd +login anonymous +app_update 2394010 validate +quit

在这里插入图片描述
这里有小概率连接不成功,一直retry,可以多尝试几次输入该命令。
在这里插入图片描述
出现Success提示,表明安装完成。

steamcmd会在/home/steam/目录下生成.steam文件夹或者Steam文件夹,新版本生成的文件夹都是Steam,要注意
如果没有生成.steam文件夹,要手动创建一个

mkdir /home/steam/.steam
mkdir /home/steam/.steam/sdk64

服务ini配置修改【非必需步骤】

配置服务的ini不是强制的,如果没有特别要求,可以直接跳过该步骤,游戏会自动使用默认的配置。

启动PalServer前可以修改一下配置文件,可以把默认的配置文件DefaultPalWorldSettings.ini 拷贝一份,重命名为
PalWorldSettings.ini,然后手动修改里面的内容,用vim修改内容。

cd ~/Steam/steamApps/common/PalServer
cp ./DefaultPalWorldSettings.ini Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
vim Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

vim的使用方法可以上网找

启动PalServer

下一步就是进入palserver的目录中,然后执行以下命令:

mkdir /home/steam/.steam/sdk64
cd ~/Steam/steamapps/common/PalServer
cp linux64/* ~/.steam/sdk64

上面这段命令,无论是steamcmd生成的是.steam文件夹还是Steam文件夹,都要执行
不然启动服务后,会显示没有steamclient.so报错,导致服务启动失败

最后就是启动服务器的脚本

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

可以看到,一切运行正常。
在这里插入图片描述
这个时候已经可以用游戏连接私服了,但我们想把程序挂在后台,这样哪怕会话结束进程也不会被杀死。先输入ctrl+c把当前服务杀掉,然后输入以下命令挂起服务。

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

这样幻兽帕鲁的私服就成功拉起来了。
这个时候,别忘了看一下云服务器的安全规则,有些云服务器对8211端口不放行,需要手动添加出入站规则。

在控制台中点击机器的查看详情
在这里插入图片描述
点击红箭头处的添加规则按钮,增加端口为8211的UDP和TCP放行规则。
在这里插入图片描述

这样一来,流量就不会被云服务器的防火墙阻挡。

连入私服

我们在游戏的专用服务器页面,把127.0.0.1换成云服务器的公网ip,点击“联系”,就能进入私服。
在这里插入图片描述

四、Q&A

Q1: 云主机重启之后怎么重新启动服务器

A1:

登录切换到steam账户
sudo su steam
然后执行
cd /home/steam/Steam/steamapps/common/PalServer
nohup ./PalServer.sh &

Q:如果我想重启服务器怎么办

A:终端输入

sudo su steam
ps -aux | grep Pal

能看到两个进程,以及它们对应的进程号
在这里插入图片描述
kill杀掉进程,然后执行重启命令即可

# 杀进程示例
kill -9 556582
kill -9 556589
# 根目录为Steam的用户执行这条
cd /home/steam/Steam/steamapps/common/PalServer
# 根目录为.steam的用户执行这条
cd /home/steam/.steam/SteamApps/common/PalServer
nohup ./PalServer.sh &

Q2: 第一次运行steamcmd后没找到~/.steam文件夹

A2: 有些主机的下载路径是~/Steam,可以把命令中的.steam换成Steam再试试


Q3: 启动PalServer后报错,显示找不到steamclient.so文件

A3: 说明~/.steam/sdk64/下面没有steamclient.so

如果主机的下载路径是~/.steam,可以执行以下操作

mkdir ~/.steam/sdk64
cd ~/.steam/SteamApps/common/PalServer
cp linux64/* ~/.steam/sdk64

主机的下载路径是Steam,但是PalServer.sh读的还是.steam/sdk64,所以可以执行以下操作

sudo mkdir ~/.steam
mkdir ~/.steam/sdk64
cd ~/Steam/SteamApps/common/PalServer
cp linux64/* ~/.steam/sdk64

Q4: 怎么上传文件到机器

A4: 如果是linux用户

cd 指定目录
rz

然后会有文件选择框弹出,选择文件即可上传


Q5: 我想用Windows做服务器,应该怎么办

A5: 自己的主机可以参考https://cloud.tencent.com/developer/article/2382150,然后用一个弹性公网IP来做公网转发,如果要用云主机服务器可以参考https://cloud.tencent.com/developer/article/2382000


Q6: vim是什么,我没接触过linux不是很懂

A6: vim是linux下最常用的文档编辑器,其实主要的用法就是

  • 打开文件sudo vim xxx文件上下左右键移动光标
    键盘打i,进入编辑模式
    编辑完了键盘打esc键,退出编辑模式
    保存输入:wq!然后回车

​Q7: 重启服务器之后存档无了,怎么办

A7:可以参考https://cloud.tencent.com/developer/article/2382998

这个攻略的pallbackup.sh是关键,原理是定期把存档数据压缩,然后拷贝到/palbackup文件夹。

数据桶看需选用,也可以直接把备份文件下载到本地(用sz命令下载),需要的时候解压到~/.steam/SteamApps/common/PalServer/Pal/Saved/SaveGames/0或者~/Steam/steamapps/common/PalServer/Pal/Saved/SaveGames/0即可

对于技术大佬,可以研究一下这个防丢存档的补丁https://github.com/xNul/palworld-host-save-fix


Q8:设置好了密码,怎么进房

A8:可参考视频https://www.bilibili.com/video/BV1EK4y1i7Lx


Q9:搭好了私服,还要用加速器吗

A9:不需要,直连即可


Q10: 游戏客户端更新了,服务端怎么更新?

A10:跟安装PalServer的指令一样,输入

steamcmd +login anonymous +app_update 2394010 validate +quit 

如果原来安装的目录是/home/steam/.steam,那么新版本可能会下载到/home/steam/Steam下,这种情况要先kill原来的服务,然后执行

cd /home/steam/Steam/steamapps/common/PalServer 
 nohup ./PalServer.sh &

然后把存档文件拷贝到/home/steam/Steam/steamapps/common/PalServer目录下,重启服务即可


Q11: 如何挑选云服务器?

A11: 如果对OS没有特别的要求,又特别想参考本教程搭建服务器,建议选操作系统为Ubuntu 20.0 TLS或Ubuntu 22.0 TLS的机器,机器的地域没有特别需求,就近即可。

  • 49
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 48
    评论
评论 48
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值