Linux部署幻兽帕鲁服务器,PalWorld开服联机教程,保姆级教程

Linux系统搭建幻兽帕鲁服务器,PalWorld开服联机教程,保姆级教程

最近这游戏挺火,很多人想跟朋友联机,如果有专用服务器,就不需要房主一直开着电脑,稳定性也好得多。

幻兽帕鲁简介

《幻兽帕鲁》是一款游戏作品。 它既有类似《宝可梦》的宠物,又有 FPS 战斗系统。在游戏中,玩家可以培养“帕鲁”,使其战斗、繁殖、耕种、制造,还可以出售帕鲁,甚至将其制作成食物。

在广阔的世界中收集神奇的生物“帕鲁”,派他们进行战斗、建造、做农活,工业生产等,这是一款支持多人游戏模式的全新开放世界生存制作游戏。

帕鲁可以进行战斗、繁殖、协助玩家做农活,也可以为玩家在工厂工作。玩家也可以将它们进行售卖,或肢解后食用。

准备

首先需要一台云服务器,这里推荐雨云的:

雨云优惠注册地址:https://www.rainyun.com/ryy_?s=csdn

优惠码:ryy

使用优惠码注册后绑定微信可获得5折优惠券

注册完账号后进到雨云控制台,游戏云入口可以在后台的 总览云产品 部分找到:

点击购买游戏云,选择VPS服务器

接着选择机型和配置,VPS服务器目前有14900KF、13900KF、Ryzen 7950X、5900X、Gold 6146和E5 2666V3这6种配置,选哪个都可以,幻兽帕鲁对CPU性能要求不高,配置建议4核8G以上(幻兽帕鲁官方推荐服务器配置为4核16G,最低8G,最好32G以上,当然如果只是好友几个玩用不着这么高)

计费模式如果是经常玩的建议选固定计费,不常玩的选动态计费即可。

系统选择Ubuntu最新版

选好后就可以点右下角的购买了,年付有7折优惠。可以1元试用1天。

因为这游戏太火了服务器都卖完了,所以截图里都没货,这几天会陆续上架新机器了。

下面教程我都用美国的云服务器演示,操作流程跟游戏云的一样。

购买后即可在我的游戏云这里看到你买的VPS,点击这个卡片或者管理键。

接着就可以看到VPS的信息了,在这里重装/切换系统,可以升级配置。

连接服务器

下载安装并打开ssh客户端软件,ssh客户端软件推荐putty或mobaxterm。

我这里用mobaxterm,在SSH客户端中输入你的服务器的IP地址或域名(雨云控制台获取),还有SSH端口,然后点击好的或者打开。

然后输入账号并按回车,账号一般默认为root,接着输入密码并按回车确定,输入密码时不会显示出来。

温馨提示:在SSH终端中按住鼠标左键选择文字,然后松开鼠标,再在空白处单击一下,这样就把选中的文字复制了;在SSH终端单击右键即为粘贴。

设置端口映射

如果用的服务器有独立公网IP就不需要进行这一步的端口映射设置。

点击NAT端口映射,新建规则,设置需要映射出去的内网端口(幻兽帕鲁服务器默认端口 8211),然后点创建映射规则,外网端口不用改,它会随机生成,如果创建提示外网端口被使用你就手动随便输入一个。

记住映射后的公网地址和端口,下面开好服后联机要用。

然后回到SSH终端输入下面这些命令来关闭系统自带防火墙(也可以不关闭防火墙,只需你自己配置开放所需要的端口即可,这样更安全,不过这里不细讲了)。

# 关闭防火墙,依次执行
systemctl stop firewalld
systemctl disable firewalld
service iptables stop

我下面命令提示是防火墙本就并没有开启,不过为了保证顺利开服照例执行一遍。

开服

操作步骤

有别于Windows的部署教程,Linux的部署操作需要通过命令行来完成,如果您不熟悉Linux的相关操作,建议您使用Windows操作系统进行部署。

在开始部署之前,您需要首先登录服务器,然后依次在命令框输入并执行以下命令即可(#号后面的是注释,不用执行)。本节选用了官方推荐的Linux操作系统Ubuntu作为演示。

脚本一键部署

在SSH终端输入下面的命令:

# 由于palworld服务端不支持以root用户运行,所以需要创建个ubuntu账号,如果登陆就是ubuntu账号的就忽略这步直接执行下面的一键安装脚本
sudo useradd -s /bin/bash -m ubuntu
# 设置ubuntu用户的密码,运行这条指令后按提示输入两遍密码
sudo passwd ubuntu
# 授予ubuntu用户sudo权限
sudo usermod -aG sudo ubuntu
# 切换到ubuntu用户
sudo su ubuntu
# 切换到用户主目录,通常是“/home/用户名”目录
cd ~# 一键安装脚本
wget -O - https://tc2.zeruns.tech/other/pal-server-install.sh | sh

注意:如果您使用中国内地地域的服务器运行一键部署脚本,则有可能因为网络原因导致脚本运行失败,建议您多次重试或换个时间段再次部署。此处的原因主要是安装过程中需要请求Steam的服务器,网络状况不稳定。

安装成功如下图所示:

一键部署脚本执行成功后,会为您创建一个名为pal-server的服务,如果您后续想管理该服务,可以使用以下命令来进行:

# 启动幻兽帕鲁的服务
sudo systemctl start pal-server
# 重启幻兽帕鲁的服务
sudo systemctl restart pal-server
# 关闭幻兽帕鲁的服务
sudo systemctl stop pal-server
# 查询幻兽帕鲁服务的状态
sudo systemctl status pal-server

如果您想要从零开始一步一步手动部署,可以参考接下来的教程。如没有需要,则可直接跳过

手动部署

第一步:由于palworld服务端不支持以root用户运行,所以需要创建个ubuntu账号,如果登陆就是ubuntu账号的就忽略这步直接执行下面的

# 创建ubuntu账号
sudo useradd -s /bin/bash -m ubuntu
# 设置ubuntu用户的密码,运行这条指令后按提示输入两遍密码
sudo passwd ubuntu
# 授予ubuntu用户sudo权限
sudo usermod -aG sudo ubuntu
# 切换到ubuntu用户
sudo su ubuntu
# 切换到用户主目录,通常是“/home/用户名”目录
cd ~

第二步:在系统中添加multiverse组件,为系统添加32位软件支持,并更新软件包列表。

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

第三步:下载并安装SteamCMD软件包及其依赖项。

sudo apt install steamcmd

第四步:使用SteamCMD登录到Steam服务器并更新ID为2394010的游戏。

steamcmd +login anonymous +app_update 2394010 validate +quit

第五步:在当前用户的家目录下创建一个名为sdk64的子目录,并且如果需要,也会创建其父级目录(如~/.steam/

mkdir -p ~/.steam/sdk64/

第六步:使用 SteamCMD 登录到 Steam 服务器并更新 ID 为 1007 的游戏。更新过程完成后,会退出SteamCMD 。请注意,具体的游戏 ID 可能因实际情况而异,您可以根据需要替换为您要更新的游戏的正确 ID 。

steamcmd +login anonymous +app_update 1007 +quit

第七步:复制文件

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

第八步:进入~/Steam/steamapps/common/PalServer目录中

cd ~/Steam/steamapps/common/PalServer

第九步:运行名为PalServer.sh的脚本文件,并将端口号设置为 8211

./PalServer.sh port=8211

至此,服务器已成功搭建,但是此种模式下启动的游戏服,会在关闭终端时被结束,想要长期保持游戏服启动,需要创建一个服务。

先创建一个脚本,复制下面命令框中全部内容到终端里执行(这里这个不要复制单行,要全部):

cat <<EOF > pal-server-run.sh
#!/bin/bashcd $HOME/Steam/steamapps/common/PalServer(./PalServer.sh >> /tmp/PalServer.log &)
EOF

给脚本权限和移动脚本位置:

chmod +x pal-server-run.sh && mv pal-server-run.sh $HOME/Steam/steamapps/common/PalServer

创建服务,复制下面命令框中全部内容到终端里执行(这里这个不要复制单行,要全部):

cat <<EOF > pal-server.service
[Unit]
Description=pal-server.service[Service]
Type=forking
User=ubuntu
Restart=on-failure
RestartSec=30s
ExecStart=$HOME/Steam/steamapps/common/PalServer/pal-server-run.sh -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS[Install]
WantedBy=multi-user.target
EOF

pal-server.service文件移动到/usr/lib/systemd/system/目录

sudo mv pal-server.service /usr/lib/systemd/system/

设置palworld服务端开机自启并重启一遍

sudo systemctl enable pal-server && sudo systemctl restart pal-server

接下来您可以继续完成后续步骤。

如果您后续想管理该服务,可以使用以下命令来进行:

# 启动幻兽帕鲁的服务
sudo systemctl start pal-server
# 重启幻兽帕鲁的服务
sudo systemctl restart pal-server
# 关闭幻兽帕鲁的服务
sudo systemctl stop pal-server
# 查询幻兽帕鲁服务的状态
sudo systemctl status pal-server

进入服务器

进入游戏,点击加入多人游戏(专用服务器)

在底下这里输入你服务器地址和端口,然后点击联系

然后就进到服务器了,可以开始游戏了,把地址发给别人就可以一起联机了

修改配置文件

先安装nano编辑器

sudo apt install nano

切换到ubuntu用户,如果已经是ubuntu用户就忽略这一步

sudo su ubuntu

复制默认配置文件

sudo cp ~/Steam/steamapps/common/PalServer/DefaultPalWorldSettings.ini ~/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

编辑配置文件

sudo nano ~/Steam/steamapps/common/PalServer/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini

这是编辑器界面,可以用方向键移动光标到要修改的参数,修改后按 Ctrl+O 然后回车保存,接着按 Ctrl+X 退出编辑器。

使用如下命令重启服务,重启完成后即可生效。

sudo systemctl restart pal-server

看不懂英文可以参考下面这个注释版修改:

; 这个配置文件是默认服务器设置的一个样例。 
; 对这个文件的修改不会影响服务器。 
; 要改变服务器设置,请修改 Pal/Saved/Config/LinuxServer/PalWorldSettings.ini 文件。 
[/Script/Pal.PalGameWorldSettings]
OptionSettings=(Difficulty=None, ; 难度,None 或 Difficulty 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, ; 死亡惩罚,None 不掉落,Item 只掉物品不掉装备,ItemAndEquipment 掉物品和装备,All 全都掉 bEnablePlayerToPlayerDamage=False, ; 启用玩家对玩家伤害功能 bEnableFriendlyFire=False, ; 启用友军伤害功能 bEnableInvaderEnemy=True, ; 启用袭击事件功能 bActiveUNKO=False, ; 启用 UNKO 功能 bEnableAimAssistPad=True, ; 启用手柄瞄准辅助功能 bEnableAimAssistKeyboard=False, ; 启用键盘瞄准辅助功能 DropItemMaxNum=3000, ; 掉落物品最大数量 DropItemMaxNum_UNKO=100, ; 掉落物品最大数量_UNKO BaseCampMaxNum=128, ; 大本营最大数量 BaseCampWorkerMaxNum=15, ; 大本营工人最大数量 DropItemAliveMaxHours=1.000000, ; 掉落物品存在最大时长(小时) bAutoResetGuildNoOnlinePlayers=False, ; 自动重置没有在线玩家的公会 AutoResetGuildTimeNoOnlinePlayers=72.000000, ; 无在线玩家时自动重置公会的时间(小时) GuildPlayerMaxNum=20, ; 公会玩家最大数量 PalEggDefaultHatchingTime=72.000000, ; 帕鲁蛋默认孵化时间(小时) WorkSpeedRate=1.000000, ; 工作速度倍率 bIsMultiplay=False, ; 是否为多人游戏 bIsPvP=False, ; 是否为 PvP 游戏 bCanPickupOtherGuildDeathPenaltyDrop=False, ; 是否可以拾取其他公会的死亡掉落物 bEnableNonLoginPenalty=True, ; 是否启用不登录惩罚 bEnableFastTravel=True, ; 是否启用快速旅行 bIsStartLocationSelectByMap=True, ; 是否通过地图选择起始位置 bExistPlayerAfterLogout=False, ; 是否在登出后保留玩家 bEnableDefenseOtherGuildPlayer=False, ; 是否启用对其他公会玩家的防御 CoopPlayerMaxNum=4, ; 合作玩家最大数量 ServerPlayerMaxNum=32, ; 服务器玩家最大数量 ServerName="Default Palworld Server", ; 服务器名称 ServerDescription="", ; 服务器描述 AdminPassword="", ; 管理员密码 ServerPassword="", ; 服务器密码 PublicPort=8211 ; 公共端口 

管理员命令

如果要使用命令,需要设置管理员密码后并使用 /AdminPassword 密码 命令在聊天框获取管理权限。

命令格式作用
/shutdown {秒} {messageText}服务器在秒数后关闭 将收到您的 MessageText 的通知
/DoExit强制停止服务器
/Broadcast {MessageText}向服务器中的所有玩家发送消息
/KickPlayer {SteamID}将玩家从服务器上踢出
/BanPlayer {SteamID}将玩家从服务器上封禁
/TeleportToPlayer {SteamID}传送到目标玩家的当前位置
/TeleportToMe {SteamID}目标玩家传送到您当前的位置
/ShowPlayers显示所有已连接玩家的信息
/Info显示服务器信息
/Save保存服务器数据

内存优化(可选)

收到大量玩家反馈,使用4核8G的服务器开服,在进行一段时间的游戏后会出现内存不足的情况,这里为大家提供一个缓解内存不足的方案作参考:定时重启

为 Linux 配置 Swap

Swap是计算机系统中的一种虚拟内存技术,它允许操作系统将部分内存中的数据暂时存储到硬盘上,以便为其他需要更多内存的任务提供空间。

第一步:检查当前的swap情况,如果您首次配置,运行这个命令将不会返回任何内容。

swapon --show

第二步:创建一个swap文件

命令里的“8G”是指创建一个大小为8GB的文件,这个文件可以用作swap空间,用于临时存储不适合放在内存中的数据。您可以根据需要调整大小。 对于 Linux 来说,建议您将该文件的大小设置为与系统内存一致,此处以8GB内存为例。

sudo fallocate -l 8G /swapfile

第三步:设置文件权限

sudo chmod 600 /swapfile

第四步:将文件格式化为swap格式

sudo mkswap /swapfile

第五步:启用swap文件

sudo swapon /swapfile

第六步:设置永久使用swap文件(系统在启动时自动启用swap文件)

sudo vim /etc/fstab

使用键盘方向键或j、k、h、l键浏览到文件的末尾。按下i进入编辑模式,光标将移动到文件的末尾,并将以下内容添加进文件:

/swapfile   none    swap    sw    0   0

按下Esc键退出编辑模式,并输入:wq并按下回车键保存文件并退出vim。

第七步:重新加载fstab文件

sudo swapon --all

第八步:验证swap设置是否成功

swapon --show

如出现下图内容,则说明设置成功。

当然,说了这么多,最佳实践可能还是升级服务器套餐配置啦。

推荐阅读

  • 雨云服务器快速搭建Cloudreve网盘网站并挂载雨云对象存储的教程:https://forum.rainyun.com/t/topic/6201
  • PicGo+雨云ROS搭建自己的图床,可配合Typora使用:https://forum.rainyun.com/t/topic/5659/
  • 雨云游戏云MCSM面板服使用&我的世界Forge服务端开服教程:https://forum.rainyun.com/t/topic/5727
  • 雨云虚拟主机使用教程&WordPress博客网站搭建教程:https://forum.rainyun.com/t/topic/5769
  • 我的世界(MC)整合包开服教程,Pokehaan Craft 2整合包服务器搭建教程:https://forum.rainyun.com/t/topic/6707
  • 雨云服务器搭建内网穿透服务器教程,NPS搭建和使用教程:https://forum.rainyun.com/t/topic/6008

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/438885.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

快速上手Git

目录 一、Git概述 二、Git的常用命令 Git全局配置 获取Git仓库 基本概念 本地仓库操作 远程仓库操作 分支操作 标签操作 三、在IDEA中使用Git 在IDEA中配置Git 本地仓库操作 远程仓库操作 分支操作 冲突解决 一、Git概述 Git是一个分布式版本控制工具&…

Python算法题集_和为K的子数组

本文为Python算法题集之一的代码示例 题目560&#xff1a;和为K的子数组 说明&#xff1a;给你一个整数数组 nums 和一个整数 k &#xff0c;请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1&#xff1a; 输入&#xff1a;nu…

MOS管驱动电路设计及其中电阻的作用

MOS管驱动电路要求 为了能够充分精确地导通和关断MOS管&#xff0c;设计一种可靠稳定的驱动及保护电路是必要的。一般来说&#xff0c;MOS管的驱动电路需要满足以下要求&#xff1a; ① 开关管的开通过程&#xff0c;驱动电流能够提供较大的充电电流&#xff0c;尽量减少米勒电…

什么是正向代理?为什么要使用它?

在计算机网络中&#xff0c;代理服务器&#xff08;Proxy Server&#xff09;是一种充当客户端和目标服务器之间的中间人的计算机或应用程序。代理服务器可以用于多种目的&#xff0c;其中之一就是正向代理。 正向代理的定义 正向代理是一种代理服务器配置方式&#xff0c;它…

计网Lesson11 - 虚拟机网络环境及socket概述

文章目录 虚拟机的简述socket概述 虚拟机的简述 放张图在这&#xff0c;根本没明白是啥对啥&#xff0c;以后学了Linux再来吧 &#x1f626; socket概述 s o c k e t socket socket 是一种用于应用层的用户态与应用层以下的内核态交互的工具&#xff0c;本意为“插座”。 也就是…

第17节-高质量简历写作求职通关-投递反馈

&#xff08;点击即可收听&#xff09; 投递跟进和感谢信 如果对一家公司特别心仪&#xff0c;但是投递简历后一直得不到回复怎么办&#xff1f; 面试之后觉得自己没有表现好怎么办&#xff1f; 面试完几天了&#xff0c;依然没有得到回应怎么办&#xff1f; 这个时候你需要写一…

大模型:合成数据、安全挑战与知识注入

在如今这个快速发展的AI时代&#xff0c;大语言模型&#xff08;LLM&#xff09;的研究论文数量呈指数级增长&#xff0c;几乎到了人力无法一一阅读和消化的地步。然而&#xff0c;对这些研究成果的归纳和总结至关重要&#xff0c;因为它们描绘了LLM领域的未来发展轮廓。在近期…

kubernetes-kubectl命令行管理工具

一、kubectl与kubeconfig的关系 一个常见的报错&#xff1a; 解释&#xff1a; localhost:8080 - 这是一个kube-apiserver的非安全端口&#xff0c;还有一个对外端口是6443&#xff0c;kubectl默认先连接8080&#xff08;二进制默认开始8080&#xff0c;kubeadmin默认关闭8080&…

STL初识——string的用法

string 一.string的介绍二.string的使用2.1接口&#xff08;构造类型&#xff09;2.2string的遍历和访问第一种遍历方式第二种遍历方式补充&#xff08;反向迭代器&#xff09;rbeign&#xff0c;rend 2.2接口&#xff08;常用函数&#xff09;2.2.1反转字符串&#xff08;reve…

torch与cuda\cudnn和torchvision的对应

以上图片来源于这篇博客 于是&#xff0c;我需要手动下载0.9.0torchvision 直接在网站https://pypi.tuna.tsinghua.edu.cn/simple/后面加上torchvision&#xff0c;就不用ctrlF搜torchvision了&#xff0c;即进入下面这个网站&#xff0c;找到对应版本的包下载安装即可 https…

如何在Microsoft 365中编辑和使用Loop文档(Word篇)

今天我们来介绍一下如何在Microsoft 365的Word中去编辑和使用Loop文档。首先&#xff0c;进入Microsoft 365在线版的Word界面。 创建一个“空白文档”。 在Word菜单中选择“插入”-“Loop组件”。目前仅支持“清单”、“任务列表”和“投票”。以“任务列表”为例。 点击“任务…

十大排序算法之快速排序

快速排序 快速排序也称为分区交换排序&#xff0c;它采用的是分治思想&#xff0c;是冒泡排序的改良版。冒泡排序需要进行比较并交换的次数较多&#xff0c;因为它是在两个相邻数据之间进行比较并交换的操作&#xff0c;每次只能移动一个位置&#xff0c;而快速排序是在两个分…