一、购买与连接服务器
1.购买服务器
官方文档推荐的服务器要求CPU4核心内存8GB,所以我们要准备好一个4核8GB的服务器。(实测2核4GB的大概在5人左右就特别容易崩溃,CPU占用率在98%,内存占用很快就超过100%溢出,所以想要稳定最低最低也要2核6GB)
服务器这里采用莱卡云国内服务器
购买和启动服务器后需要做的操作是获取服务器的IP地址,设置root账号密码,还有开放8211的端口,8211的TCP协议和UDP协议都要开放。
服务器系统可以选择Debian或者Ubuntu,Debian统中可能没有预安装 add-apt-repository
命令,这个命令通常包含在 software-properties-common
包中。您可以通过以下命令来安装这个包:
sudo apt-get update
sudo apt-get install software-properties-common
当您安装了这个包后,就应该能够使用 add-apt-repository
命令了。然后,您可以再次尝试执行您的原始命令:
sudo add-apt-repository multiverse
如果您的系统是 Ubuntu,那么 multiverse
仓库可能已经存在,但默认是禁用的。您可以通过以下命令来启用它:
sudo add-apt-repository multiverse
sudo apt-get update
这样,您就可以从 multiverse
仓库安装软件了。
2.连接服务器
使用xshell连接服务器,xshell有官方的免费许可版本,下载网址放置顶评论区。下载打开后点击左上角文件新建,新建一个会话。
名称可以自定义,主机端写上自己的服务器IP,之后点击连接输入密码即可成功连接。
二、安装SteamCMD
官方的文档链接放在评论区内。
服务器是不能在root用户上运行的,而且SteamCMD在root用上运行不安全,所以一定要创建新用户运行SteamCMD和服务器
创建新用户:
sudo useradd -m steam
sudo passwd steam
(steam账号的密码输入需要两遍)
赋予新用户权限
usermod -G sudo steam
重启
进入新用户的home文件夹
sudo -u steam -s
cd /home/steam
安装SteamCMD和依赖项:
sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install steamcmd
安装Manually:
sudo apt-get install lib32gcc-s1
新建文件夹,下载并解压SteamCMD
mkdir ~/Steam && cd ~/Steam
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
三、下载服务器:
运行steamcmd
./steamcmd.sh
下载服务器:
匿名模式登陆:
login anonymous
(显示OK后就登陆成功了)
下载服务器
app_update 2394010
还需要下载一个服务器依赖的包
app_update 1007
下载可能有点慢,多等等
退出SteamCMD
quit
建立库链接:
新建.steam文件夹
mkdir ~/.steam
新建sdk64文件夹
mkdir ~/.steam/sdk64
cp ~/Steam/steamapps/common/Steamworks\SDK\Redist/linux64/steamclient.so ~/.steam/sdk64/
四、配置运行服务器
进入服务器文件夹:
cd ~/Steam/steamapps/common/PalServer
调整配置文件:
默认配置文件是
[/Script/Pal.PalGameWorldSettings]
OptionSettings=(Difficulty=None,DayTimeSpeedRate=1.000000,NightTimeSpeedRate=1.000000,ExpRate=1.000000,PalCaptureRate=1.000000,PalSpawnNumRate=1.000000,PalDamageRateAttack=1.000000,PalDamageRateDefense=1.000000,PlayerDamageRateAttack=1.000000,PlayerDamageRateDefense=1.000000,PlayerStomachDecreaceRate=1.000000,PlayerStaminaDecreaceRate=1.000000,PlayerAutoHPRegeneRate=1.000000,PlayerAutoHpRegeneRateInSleep=1.000000,PalStomachDecreaceRate=1.000000,PalStaminaDecreaceRate=1.000000,PalAutoHPRegeneRate=1.000000,PalAutoHpRegeneRateInSleep=1.000000,BuildObjectDamageRate=1.000000,BuildObjectDeteriorationDamageRate=1.000000,CollectionDropRate=1.000000,CollectionObjectHpRate=1.000000,CollectionObjectRespawnSpeedRate=1.000000,EnemyDropItemRate=1.000000,DeathPenalty=All,bEnablePlayerToPlayerDamage=False,bEnableFriendlyFire=False,bEnableInvaderEnemy=True,bActiveUNKO=False,bEnableAimAssistPad=True,bEnableAimAssistKeyboard=False,DropItemMaxNum=3000,DropItemMaxNum_UNKO=100,BaseCampMaxNum=128,BaseCampWorkerMaxNum=15,DropItemAliveMaxHours=1.000000,bAutoResetGuildNoOnlinePlayers=False,AutoResetGuildTimeNoOnlinePlayers=72.000000,GuildPlayerMaxNum=20,PalEggDefaultHatchingTime=72.000000,WorkSpeedRate=1.000000,bIsMultiplay=False,bIsPvP=False,bCanPickupOtherGuildDeathPenaltyDrop=False,bEnableNonLoginPenalty=True,bEnableFastTravel=True,bIsStartLocationSelectByMap=True,bExistPlayerAfterLogout=False,bEnableDefenseOtherGuildPlayer=False,CoopPlayerMaxNum=4,ServerPlayerMaxNum=32,ServerName="Default",ServerDescription="",AdminPassword="",ServerPassword="",PublicPort=8211,PublicIP="",RCONEnabled=False,RCONPort=25575,Region="China",bUseAuth=True,BanListURL="https://api.palworldgame.com/api/banlist.txt")
把这段内容,修改最后几项的
ServerName服务器名
AdminPassword管理员密码
ServerPassword服务器密码
PublicIP 服务器IP
这几项修改后复制粘贴到下列文件中
Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
注意要把值写在引号里,比如服务器密码:ServerPassword=""改成ServerPassword="123456"
如果想让自己的服务器能在社群服务器中被搜索到,可以在括号里加上
EpicApp=PalServer
简单的办法是复制好内容后,输入指令
vim~/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
然后把内容粘贴到新弹出来的框里
按ESC,输入 :wq 后按回车(注意要英文输入法,冒号也要打)
运行服务器
./PalServer.sh
五、进入服务器
进入游戏后选择 加入多人游戏(专用服务器)
在最下面输入IP地址以及端口号即可进入服务器
如果设置了密码,在连一次后会弹窗提示没有输入密码,这时候再选择加入多人游戏(专用服务器),选择最近访问过的服务器列表,即可找到服务器输入密码进入服务器。