Pocketpair出品的生存类游戏《幻兽帕鲁》最近非常火,最高在线人数已逼近200万。官方服务器亚历山大,游戏开发商也提供了搭建私人专用服务器的方案,既可以保证稳定的游戏体验,也可以和朋友一起联机游戏,而且还能自定义经验翻倍等游戏里的一些选项。
那么如何构建一个专属于您和您的小伙伴的游戏服务器呢?这也是本文将要描述的主要内容,我们将引导您在亚马逊云科技上从最基础的服务器选型创建到Step By Step搭建游戏服务器环境,其主要步骤如下:
- 服务器的选型及创建
- 脚本部署
- 游戏优化
- 存档备份及导入
视频教程
【亚马逊云科技】幻兽帕鲁-风口抓猪-借助亚马逊云科技EC2服务器即刻构建PalWorld(幻兽帕鲁)私服~~~持续更新中
Palworld / 幻兽帕鲁
在PalWorld中,您可以在广阔的世界中收集神奇的生物"帕鲁",派他们进行战斗、建造、做农活,工业生产等,这是一款支持多人游戏模式的全新开放世界生存制作游戏。
在帕鲁的世界,你可以选择与神奇的生物「帕鲁」一同享受悠闲的生活,也可以投身于与偷猎者进行生死搏斗的冒险。
帕鲁可以进行战斗、繁殖、协助你做农活,也可以为你在工厂工作。当然你也可以将它们进行售卖,或肢解后食用。
利用亚马逊云科技EC2实例快速搭建私服
推荐配置
EC2服务器选型及创建
建议配置
首先参阅《Palworld tech guild》中的Requirements,我们需要4H16G的配置,那么此处建议选型m6i/7i的通用服务器,其规格比例为1:4
服务器创建
首先进入EC2控制台台,启动新实例
设置服务器名称、操作系统选择
选择实例类型、登录密钥对、网络及安全组设置
设置存储
设置User-Data
填充如下内容
bash
#!/bin/bash
wget -O - https://raw.githubusercontent.com/flying1574/PalServerInstallScript/main/ubuntuInstall.sh|sh
sleep 5
export steam_user=steam
export log_path=/tmp/pal_server.log
export steam_user_path=~steam
export steamcmd_path=$(whereis steamcmd|awk '{print $2}')
sudo \cp $steam_user_path/Steam/steamapps/common/PalServer/DefaultPalWorldSettings.ini $steam_user_path/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
sudo chmod 777 $steam_user_path/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
# 更新游戏(可选)
# sudo -u $steam_user $steamcmd_path +login anonymous +app_update 2394010 validate +quit >> $log_path
sudo systemctl restart pal-server
登入服务器,查看pal-server是否正常运行
bash
netstat -nulp
systemctl status pal-server
登入游戏
加入多人游戏
填入已配置好的EC2实例的公网IP地址
开始游戏
查看PalWorld Server连接状况
进阶配置
游戏优化-第三方优化patch
bash
# 定义初始变量
steam_user=steam
log_path=/tmp/pal_server.log
steam_user_path=~steam
steamcmd_path=$(whereis steamcmd|awk '{print $2}')
# 定义Binaries路径
bindir=`find /home/ -name Pal`/Binaries/Linux
# 下载并替换文件
sudo systemctl stop pal-server
sudo cp $bindir/PalServer-Linux-Test $bindir/PalServer-Linux-Test.bak
sudo wget -O $bindir/PalServer-Linux-Test https://github.com/VeroFess/PalWorld-Server-Unoffical-Fix/releases/download/1.3.0-Update-3/PalServer-Linux-Test-Patch-Update-3
sudo chmod 775 $bindir/PalServer-Linux-Test
sudo systemctl restart pal-server
自定义配置(设置密码为例)
第三方前端页面配置
https://palworld-config.liziyi0914.com/
bash
palConf=`find / -name PalWorldSettings.ini`
vi $palConf
重启游戏
bash
systemctl restart pal-server
备份及恢复
备份游戏
bash
# 安装zip/unzip命令
sudo apt install zip unzip
# 定义Saved路径
sd=`find /home/steam/ -name 'Pal'|awk '{print $1}'`/Saved
# 以时间为文件名打包,存储在当前目录下
zip -r PalWorld-$(date +"%Y-%m-%d_%H-%M-%S").zip $sd
恢复游戏
服务器恢复服务器存档(Linux)
请先确保您已成功上传备份的Saved压缩文件
bash
# 定义初始变量
steam_user=steam
log_path=/tmp/pal_server.log
steam_user_path=~steam
steamcmd_path=$(whereis steamcmd|awk '{print $2}')
# 安装unzip命令
sudo apt install unzip
# 定义Saved路径
sd=`find /home/steam/ -name 'Pal'|awk '{print $1}'`/Saved
# 解压您的PalWorldSave压缩包到Saved,其中需要替换为您自己的PalWorld.zip
unzip -o PalWorld-xxx.zip -d $sd
# 替换LinuxServer
LSN=$(ls -tr $sd/SaveGames/0/|awk 'NR==1{print $1}')
sed -i "s/^DedicatedServerName=.*/DedicatedServerName=$LSN/" $sd/Config/LinuxServer/GameUserSettings.ini
chmod 777 -R $sd
# 更新并重启游戏
sudo -u $steam_user $steamcmd_path +login anonymous +app_update 1007 validate +quit >> $log_path
sudo -u $steam_user $steamcmd_path +login anonymous +app_update 2394010 validate +quit >> $log_path
sudo -u $steam_user $steamcmd_path +login anonymous +app_update 1007 +quit >> $log_path
sudo cp $steam_user_path/Steam/steamapps/common/Steamworks\ SDK\ Redist/linux64/steamclient.so $steam_user_path/.steam/sdk64/
systemctl restart pal-server
参考文档
Palworld tech guide:https://tech.palworldgame.com/dedicated-server-guide#linux
How to Host a Dedicated Server in Palworld:https://beebom.com/how-host-dedicated-server-palworld/
【玩转轻量云】幻兽帕鲁服务器部署保姆级教程(持续更新):https://cloud.tencent.com/developer/article/2382000