fudyou 发表于 2024-2-1 08:43:44

Palworld-Server 自建服务器详解

# Palworld 服务器社区常见问题解答 我在 #pal-server-help 频道中已经有一段时间了,并且这些相同的事情不断出现。这是人们一直要求的一站式清单。

# 服务器设置

## 服务器推荐配置(适合 8-12 名玩家)
- 4x CPU 核心 @3.8Ghz+
- 30GB 存储空间
- 8GB RAM 基础 + 每个玩家 2GB RAM(如果使用计划重启)

-或者-
- 32GB RAM + 48 小时重启(或者崩溃,如果你敢的话)

## 端口
除非您使用命令行或配置文件指定备用端口,否则您需要启用的端口是:
> 游戏:8211/UDP
>
> 查询:27015/UDP

### 转发端口
查看这个方便的链接,了解如何执行此操作:https://portforward.com/

### 公共IP
如果您不知道自己的 IP,可以从以下网站获取:https://icanhazip.com/

> 注意:如果您的 IP 以 192.168.xx、172.10.xx 或 10.0.0.x 开头,您可能位于 CGNAT 后面,这将使托管服务器几乎不可能。

### 端口验证
需要知道您的端口转发是否正常工作?使用此 UDP 站点:https://check-host.net/check-udp
只需输入您的IP:端口,IE:127.0.0.1:8211

## Palworld服务器保存数据
Palworld 的保存数据位于:/Pal/Saved/SaveGames/0

您可以使用以下网站查看 Worldoptions.sav 文件中的当前设置:https://palworld.tf/

## 备份脚本
如果您不想丢失进度,您应该定期备份服务器。

### Linux
下面是一个示例 BASH 脚本 (Linux),可以帮助您入门。
````bash
#!/bin/bash

# 定义源目录和备份目录
SOURCE_DIR="/opt/game/Pal/Saved/SaveGames/0"
BACKUP_DIR =“/路径/到/您的/备份/目录”
日期=$(日期+%Y%m%d_%H%M%S)

# 创建一个 gzip 压缩包
tar -czf“${BACKUP_DIR}/backup_${DATE}.tar.gz”-C“${SOURCE_DIR}”。

echo "${SOURCE_DIR} 的备份已于 ${BACKUP_DIR}/backup_${DATE}.tar.gz 完成"
````

### 窗口
以及用于 Windows 上备份的批处理脚本。它假设您已经安装了 7zip。

````
@回声关闭
设置 SOURCE_DIR="C:\opt\game\Pal\Saved\SaveGames\0"
设置 BACKUP_DIR="C:\path\to\your\backup\directory"
设置 DATE=%日期:~-4,4%%日期:~-10,2%%日期:~-7,2%_%时间:~0,2%%时间:~3,2%%时间: 〜6.2%

“C:\Program Files\7-Zip\7z.exe”a -tzip“%BACKUP_DIR%\backup_%DATE%.zip”%SOURCE_DIR%

echo %SOURCE_DIR% 的备份已于 %BACKUP_DIR%\backup_%DATE%.zip 完成
````

## 安装/更新游戏时需要帮助吗?
或者只是有人为您做所有艰苦的工作?

### 设置指南:
- (https://hub.tcno.co/games/palworld/steam_dedicated_serv er/)

### 配置生成器!
首先是一个很酷的配置生成器:
https://pal-conf.bluefissure.com/

### SteamCMD
如果您使用 STEAMCMD 安装服务器,只需重新运行相同的安装脚本即可。它将为您下载更新。

- 关闭你的服务器
- 更新您的服务器

SteamCMD 的基本命令如下。
```steamcmd +登录匿名 +app_update 2394010 验证 +退出```

如果您使用自定义安装目录,则需要对其进行修改。
```steamcmd +force_install_dir "/PATH/TO/DIRECTORY" +登录匿名 +app_update 2394010 验证 +退出```

- 下载完成后打开您的服务器。

### 游戏提供商
请注意,每个游戏服务器提供商都不同,我们无法真正告诉您在此采取的正确操作。

- 通过面板重新启动服务器
- 请他们的支持人员为您更新。

免责声明:我并不是通过列出任何提供商来认可他们,只是让您知道他们的存在并且可能能够为您提供您正在寻找的东西。

在从新公司购买服务之前,请务必检查 Google、Trustpilot 等评论网站。

- https://lilypad.gg/palworld Discord 上的 #joshmiles!
- https://low.ms/game-servers/palworld-server-hosting
- https://physgun.com

### 手动安装
查看这个记录的安装脚本! https://github.com/mdrain18/InstallPalworld

### GSM(游戏服务器管理器)
要为 Linux 设置 GSM:
- https://linuxgsm.com/

要为 Windows 设置 GSM:
- https://github.com/WindowsGSM/WindowsGSM

现在甚至还有专门针对 Palworld 的分店!
- https://github.com/ohmcodes/WindowsGSM.Palworld

### 码头工人
有几个已知的 Docker 镜像:
- https://github.com/thijsvanloef/palworld-server-docker
- https://hub.docker.com/r/jammsen/palworld-dedicated-server
- https://hub.docker.com/r/yatsuku/palworld
- https://github.com/hmes98318/palworld-docker

对于稍微高级的 docker 版本,您可以在这里查看:
- https://www.reddit.com/r/Palworld/comments/19ce4q5/run_palworld_dedicated_server_in_docker_container/

Oracle 免费套餐的 ARM64 变体。
- https://github.com/nirog0d/palworld-arm64
- https://hub.docker.com/r/nirog0d/palworld-arm64

### 翼手龙
目前正在为 Pal 制作一个 Egg:https://github.com/parkervcp/eggs/issues/2669

### 启动参数
从一开始就使用它们来覆盖服务器的行为。

- -端口=xxxx
--publicport=xxxx

> 将这两个设置为相同的数字,这是您的游戏服务器可连接的数字。即 8211。
--queryport=xxx

> 这是Steam的默认查询端口,如果与27015发生绑定冲突,请设置此端口
--RCONEnabled=true

> 您要启用 RCON 吗? (这是一个远程服务器管理工具,你不需要它)
- -RCON端口=29027

> 您希望 RCON 设置为哪个端口?如果您打算远程管理服务器,还需要进行端口转发。
- -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS

> 这些是开发人员提供的可选性能参数。
- -玩家=16

> 超越玩家限制
--服务器密码=“”

> 覆盖连接密码
- - 管理员密码=“”

> 覆盖默认管理员密码
- EpicApp=PalServer

> 在公共服务器列表中启用显示。

--服务器名称=“”
> 覆盖默认的服务器名称。



# 多人游戏

## 我可以通过 Steam 加入 Xbox 上的好友吗?
不,目前没有交叉游戏。显然 PocketPair 正在努力解决这个问题。


## 我可以在 Xbox / Windows Store 上与 4 名以上的玩家一起玩吗?
不可以,目前只有 Steam 的专用服务器可以托管多个玩家。与上述相同,正在处理中。

# 已知的问题
## 内存泄漏
游戏中发生的一些事件被认为会导致内存泄漏。

目前有两种方法可以解决这个问题。
- 在“PalWorldSettings.ini”中设置“bEnableInvaderEnemy=False”
- 为您的服务器设置自动重启。以下是当前的一些建议,您需要找出最适合您的:
- 16GB RAM,每 8 小时 8 个用户。
- 32GB RAM,每 12 小时 16 个用户
- 32GB RAM,每 24 小时 8 个用户

被认为导致问题的事件:
- 反复加入地下城
- 突袭事件
- 在基地工作的派对伙伴,人们看到他们四处“移动”物品,但超出范围,然后反复扔掉它们。这会导致 Pals 路径中出现大量资源。

## Forever Black 加载屏幕 - 可能在 v0.1.3.0 中修复
值得尝试的事情,
- 重新启动游戏后重新连接。
- 尝试直接连接

如果此后您卡在加载屏幕上,则您的玩家个人资料可能已损坏。

这是由于其他成员离线时加入/离开公会造成的。

如果你是官方的,除了加入另一个服务器之外没有其他解决方案。

## 我的角色已被擦除/我收到输入新角色的提示
两件事之一已经发生,没有人能真正帮助你解决这些问题。
- 您已加入不同的服务器
- 服务器数据已被擦除


## 公共服务器未显示在服务器列表中。
服务器没有关闭,服务器管理器显示服务器已损坏。

- 在这里找到你的服务器的IP:https://www.battlemetrics.com/servers/palworld?sort=score&status=online
- 然后使用直接连接选项。


## 使用密码直接连接
有一个解决方法,因为当前直接连接不会提示您输入密码。
(Mlem Mlem) 在 Discord 中发布了此内容。

- 打开社区服务器列表。
- 单击任何密码服务器
- 输入“您的”服务器的密码
- 单击“确定”,然后单击“否”
- 使用您的 IP:Port 直接连接到您的服务器


## 如何正确更改服务器设置。
- 关闭你的服务器
- 修改配置
- 保存配置
- 启动服务器

# 保存

## 如何重置我的服务器?
要删除服务器上的当前进度,请转到上述保存位置并删除内容。

## 我可以修改我的保存数据吗?
有一种方法可以修改您的保存数据,其中包括将其从 .sav 转换为 .json 格式。然后进行更改,然后将其转换回来。

当前的方法是利用这个python脚本:https://gist.github.com/cheahjs/300239464dd84fe6902893b6b9250fd0#file-convert-to-json-py

## 我可以在不同的服务器上使用我的保存吗?
不,您不能在具有相同配置文件的不同服务器上玩游戏,每个配置文件对于该服务器来说都是唯一的。

## 您可以将服务器保存迁移到另一台计算机吗?
从技术上讲是可以的,但是需要考虑一些因素。

- 从公共服务器到私人服务器:否
> 无法从公共服务器获取数据

- 从本地保存转换为专用:是
> 有一个正在开发的修改工具可以让你做到这一点,请在官方 Discord 上查看#palworld-modding。
https://github.com/xNul/palworld-host-save-fix

——从专注到专注
是的,以下步骤可实现此目的。

### 警告这是一次性传输,可能会发生一些数据丢失(玩家角色被重置)。到目前为止,不同服务器类型的结果差异很大。
````
1)创建新服务器,运行一次并停止。
2)从旧服务器获取SaveGames文件夹
3)修改新服务器DedicatedServerName = 旧DedicatedServerName
发现于 Pal/Saved/Config/LinuxServerGameUserSettings.ini
4) 将 SaveGames 文件夹从旧的复制到新的
5) 启动新服务器
````

# 联网
## 端口转发故障排除
### 本地连接
首先,检查您是否可以通过本地IP连接到您的服务器,即192.168.xx或10.0.xx
- 如果您不能,并且端口正确,则服务器上可能有防火墙,您需要允许连接通过。

### 广域网连接
如果您可以在本地连接,接下来您需要尝试您的公共IP。
- 使用 https://www.showmyip.com/ 之类的东西来收集您的公共 IP。
- 尝试连接到您的公共IP。

如果您无法连接,无论您的朋友如何,您可能正在经历 NAT Hairpining,它会在本地重定向您的请求。您的路由器设置中应该有一个选项来启用处理 NAT Hairpin。

如果您无法连接到您的公共 IP,您的路由器或 ISP 可能设有防火墙规则来阻止该流量。
您可以先检查您的路由器,只需搜索有关如何使用 ISP 路由器进行端口转发的手册即可。


fudyou 发表于 2024-2-1 08:50:05

Palworld服务器安装脚本

# Palworld服务器安装脚本

本自述文件解释了“install_palworld.bat”脚本的功能,该脚本旨在设置Palworld服务器。

## 概述

SteamCMD 、设置Palworld服务器以及准备服务器管理所需脚本的过程。该脚本会执行多项检查,以确保在已安装某些组件的情况下不会发生冗余安装。

## 怎么运行的

1. ** SteamCMD安装检查**:脚本首先通过在 ` steamcmd`文件夹中查找 `steam.dll` 和 `crashhandler.dll` 来检查SteamCMD是否已安装。如果未找到,它将继续安装SteamCMD 。

2. ** Palworld安装检查**:该脚本通过验证特定目录(`Engine`、`Pal`、` steamapps` )和文件(`tier0_s.dll`)是否存在来检查Palworld是否已安装。友世界文件夹。

3. **服务器安装**:如果尚未安装Palworld ,脚本会在Palworld文件夹中创建一个 `install_server.bat` 文件。然后执行该批处理文件来安装Palworld服务器。

4. **服务器启动脚本**:该脚本还创建一个`start_server.bat`文件用于运行Palworld服务器。该批处理文件执行几个关键功能来管理Palworld服务器:
- **设置当前目录**:它将当前工作目录设置为批处理文件的位置。
- **备份服务器配置**:它检查“ ServerBackups ”文件夹,如果不存在则创建它,并备份服务器配置。
- **更新服务器**:脚本使用SteamCMD更新Palworld服务器。
- **更新服务器设置**:它复制新的`. ini ` 文件从“ updateSettings ”文件夹复制到服务器的配置目录。
- **启动服务器**:最后,脚本使用特定的命令行参数启动Palworld服务器以实现性能和服务器设置。

## 手动SteamCMD安装

如果您希望手动安装SteamCMD ,请按照以下步骤操作:

1. **下载SteamCMD **:前往【 SteamCMD官方页面】( https://developer.valvesoftware.com/wiki/SteamCMD)下载SteamCMD 包裹。

2. **解压并放置SteamCMD **:解压下载的包并将`steamcmd.exe`放在与`install_palworld.bat`文件相同的文件夹中。

3. **准备批处理文件**:
- 从存储库复制“install_palworld.bat”的代码。
- 将其粘贴到新的文本文件中。
- 使用名称“install_palworld.bat”保存文件。

4. **运行脚本**:双击`install_palworld.bat`开始安装过程。

## 存储库克隆(替代)

作为替代方案,您可以克隆包含“install_palworld.bat”文件的整个存储库。如果您想获取最新版本的脚本以及任何其他相关文件,这非常有用。

## 注释

- 确保您拥有在脚本位置创建目录和文件所需的权限。
- 该脚本假定某些文件的存在表明安装成功。确保这些文件未被手动更改或删除。


fudyou 发表于 2024-2-1 08:59:31

SteamCMD

下载 SteamCMD
Windows
1. 创建一个为 SteamCMD 准备的文件夹。

例如

C:\steamcmd
2. 下载适用于 Windows 系统的 SteamCMD:https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip


3. 提取 zip 中的文件至文件夹。

运行 SteamCMD
在第一次运行 SteamCMD 时将自动更新并显示一个Steam>的输入提示。输入help来获取更多信息。

Windows
打开一个命令行窗口并启动 SteamCMD。

cd C:\steamcmd
steamcmd

登录 SteamCMD
匿名登录
下载大多数游戏服务端,你可以选择匿名登录。

login anonymous
使用 Steam 帐户登录
一些服务端需要你使用一个 Steam 帐户来登录。

注意:
为了安全起见建议您创建一个服务端专用的 Steam 帐户。
注意:
一个用户同时只能在一处登录(无论是在图形界面客户端还是在 SteamCMD 登录)。
login <用户名>
下一步请输入您的密码。

如果 Steam 令牌已经在用户帐户上激活,查看你电子邮箱中的 Steam 令牌验证码并输入它。这仅仅只是第一次登录时需要(以及当你删除了 SteamCMD 用于存储登录信息文件的时候)。

如果你已经成功登录了你的帐户,你应该会看到一条消息。

Windows 软件/脚本
condenser
condenser 是一个用于下载,配置和启动 Steam 专用服务器应用的引导程序。

SteamCMD AutoUpdater
安装和自动更新任何游戏服务端

GitHub仓库: https://github.com/C0nw0nk/SteamCMD-AutoUpdate-Any-Gameserver

SteamCMD GUI
这个工具可以使用户在 Windows 上不通过命令行或批处理文件来使用 SteamCMD。

GitHub 仓库: https://github.com/DioJoestar/SteamCMD-GUI

SteamCMD Guardian 1.2
在这里查看并下载:http://pastebin.com/BRUbsGQh

fudyou 发表于 2024-2-1 17:22:09

新建了一台32人服务器,地址如下:
xyh-moon.com:8211



enjoy yourself !

页: [1]
查看完整版本: Palworld-Server 自建服务器详解