Package: palworld-server-toolkit
Palworld Server Toolkit幻兽帕鲁服务端工具包简体中文|English世界上最高速的帕鲁服务器存档编辑器, 1.9秒 打开对应转换时间 4分54秒 的约 5.1GB 的JSON。这个工具包可用于在 Palworld 世界间转移角色，允许朋友们将他们的角色转移到彼此的服务器上，而不会失去任何进度。亦可以用于编辑玩家所持有的帕鲁、参数、持有物品、金钱等等数据。亦可以移动玩家的公会、删除营地、删除玩家Palworld Server Toolkit如何安装找到存档文件操作示例跨服务器迁移玩家数据服务器存档转本地感谢基础视频教学  - 哔哩哔哩存档转移视频 - 哔哩哔哩有偿协助 / 请喝咖啡 - 闲鱼有偿协助 - 闲鱼GUI直接运行访问Release Pages下载运行即可。手动安装Python 3.9或以上版本.Windows用户: 可从Microsoft Store下载Python 3.12orpython.org安装pip包管理器For Linux users:python -m ensurepip --upgradeFor Windows users:py -m ensurepip --upgrade安装包pip3 install palworld-server-toolkit运行python3 -m palworld_server_toolkit.editor [options] <Level.sav>使用源码前置安装需求Python 3.9或以上版本.Windows用户: 可从Microsoft Store下载Python 3.12orpython.org通过git clone https://github.com/magicbear/palworld-server-toolkit.git下载源码执行git submodule update --init --recursive问题交流QQ群 139107098palworld-save-editor清理捕捉日志，改名，合并不同服务器玩家，删除玩家，迁移坏档等工具包[!CAUTION]:warning: 此工具是实验性的。 小心数据丢失并务必进行备份。选择的Level.sav需要在游戏原存档目录下、或者连同Players一起复制的完整存档、程序会对Players下的存档文件同时进行操作，否则可能损坏存档。[!WARNING]删除用户、删除营地、清理未引用的物品库均为测试功能，有导致服务端闪退可能性，请务必进行备份，如碰到问题请提交您的存档到Issues。[!NOTE]未加-o参数默认保存文件为Level_fixed.sav使用源码版本 以下命令-m palworld_server_toolkit.editor部份 修改为palworld_server_toolkit/editor.py运行即可使用GUI修改Level.sav文件 -python -i -m palworld_server_toolkit.editor -g -o Level.sav Level.sav修改Level.sav文件 -python -m palworld_server_toolkit.editor -i -o Level.sav Level.savShowPlayers()- 列出玩家FixDuplicateUser()- 删除多余用户数据ShowGuild()- 列出公会及成员列表BindGuildInstanceId(uid,instance_id)- 修改公会成员绑定IDRenamePlayer(uid,new_name)- 修改玩家名字为new_nameDeletePlayer(uid,InstanceId=None, dry_run=False)- 删除玩家数据InstanceId: 删除指定InstanceIdDeleteGuild(group_id)- 删除公会DeleteBaseCamp(base_id)- 删除基地EditPlayer(uid)- 快速指定玩家数据至变量playerMoveToGuild(uid,guild_id)- 移动玩家至公会guild_idOpenBackup(filename)- 打开备份Level.sav文件并指向变量backup_wsdMigratePlayer(old_uid,new_uid)- 从old_uid向new_uid迁移玩家数据CopyPlayer(old_uid,new_uid, backup_wsd)- 复制玩家数据backup_wsd为OpenBackup备份文件wsd为当前主文件BatchDeleteUnreferencedItemContainers()- 删除未引用的物品库FixBrokenDamageRefItemContainer()- 删除损坏对象FindInactivePlayer(day)- 找出天未上线的玩家Save()- 保存修改并退出操作示例[!IMPORTANT]以下操作均需先退出服务端最后均为把Level_fixed.sav替换至Level.sav并启动服务端跨服务器迁移玩家数据提前工作复制旧服务器Level.sav至SaveGames/0/<Server ID>/Old-Level.sav复制旧服务器所有需迁移玩家Players/xxxxxxxx000000000000000000000000.sav至SaveGames/0/<Server ID>/Players/xxxxxxxx000000000000000000000000.savGUI模式操作Source Player Data Source选择Backup File点击Open File选择旧服务器存档Old-Level.savSource Player选择要迁移的旧玩家Target Player选择要被替换的玩家（如果目标玩家ID不变，可从Source Player拷贝UUID)点击Copy Player点击Save & Exit替换文件Level_fixed.sav到Level.sav命令模式操作使用编辑模式运行python -i -m palworld_server_toolkit.editor Level.sav使用以下命令 并所有需迁移玩家执行CopyPlayer:warning: UUID 可相同，数据自backup_wsd拷贝OpenBackup("Old-Level.sav")
CopyPlayer("xxxxxxxx-0000-0000-0000-000000000000", "xxxxxxxx-0000-0000-0000-000000000000", backup_wsd)
Save()(Optional) 最后删除旧xxxxxxxx000000000000000000000001.sav,服务器存档转本地GUI模式操作Source Player选择要迁移的旧玩家Target Player输入00000000-0000-0000-0000-000000000001点击Migrate Player点击Save & Exit替换文件Level_fixed.sav到Level.sav其他迁移示例本地存档迁移至服务器示例复制本地Level.sav至SaveGames/0/<Server ID>/Old-Level.sav本地存档通常在C:\Users\<username>\AppData\Local\Pal\Saved\SaveGames\<SteamID>\<World Folder>复制本地Players/00000000000000000000000000000001.sav至SaveGames/0/<Server ID>/Players/00000000000000000000000000000001.sav使用编辑模式运行python -i -m palworld_server_toolkit.editor Level.sav使用以下命令OpenBackup("Old-Level.sav")
CopyPlayer("00000000-0000-0000-0000-000000000001", "xxxxxxxx-0000-0000-0000-000000000000", backup_wsd)
Save()(Optional) 最后删除旧00000000000000000000000000000001.sav和Old-Level.sav迁移用户示例使用编辑模式运行python -i -m palworld_server_toolkit.editor Level.sav使用以下命令MigratePlayer("xxxxxxxx-0000-0000-0000-000000000000","yyyyyyyy-0000-0000-0000-000000000000")
Save()清理7天未上线玩家使用编辑模式运行python -i -m palworld_server_toolkit.editor Level.sav使用以下命令for player_uid in FindInactivePlayer(7): DeletePlayer(player_uid)
Save()palworld-player-listusage: palworld-playey-list [-h] [--host HOST] [--port PORT] [--password PASSWORD] [filename]

用于列出服务器Players目录中的玩家名字，PlayerUId，Steam ID

positional arguments:
  filename              Filename of the player sav

options:
  -h, --help            show this help message and exit
  --host HOST, -H HOST  Host for PalWorld Server RCON
  --port PORT, -P PORT  PalWorld Server RCON Port
  --password PASSWORD, -p PASSWORD  RCON密码列出玩家 - 在工作目录/PalSaved/SaveGames/0/<server id>/Players中运行python3 list.py玩家详细 -python3 list.py <PLAYER HEX UID>palworld-server-taskset把服务端绑定至CPU性能核 (Linux only)FAQ复制玩家为将角色及其所有队伍和终端中的伙伴、角色身上的物品以及进度转移，但不会转移任何地图对象、原世界中箱子里的物品以及基地中工作的伙伴。（如果你想将它们一起转移，请将它们移动到身上/终端中）对于合作模式的存档，存档文件通常位于%LocalAppData%\Pal\Saved\SaveGames<SteamID><世界文件夹>对于Xbox Game Pass玩家的存档，存档文件通常位于C:\Users\<用户名>\AppData\Packages\ PocketpairInc.Palworld_ad4psfrxyesvt\SystemAppData\wgs对于服务器存档，请通过 Steam 进入服务器的文件位置。你需要至少 3 个文件来完成转移：源玩家角色存档文件（在 Players/中），源世界的 level.sav 文件，以及目标世界的 Level.sav 文件对于本地合作模式的存档，如果你是主机，角色文件始终是000000...001.sav对于其他玩家的存档，只需知道他们的ID在不同世界间不会改变，因此他们在你的合作世界和服务器世界的角色文件名是相同的。Windows 用户建议使用Windows Terminal取代cmd，否则不显示色彩存档结构如下源世界SaveGames
 └── <steam-id>
     └── <source-world-id>
         ├── backup
         ├── Level.sav  ----------  <- The source world save-file
         ├── LevelMeta.sav
         ├── Players
         │   ├── 00000...0001.sav
         │   └── 12345...6789.sav   <- character save-file we want to transfer
         └── WorldOption.sav目标世界SaveGames
 └── <steam-id>
     └── <destination-world-id>
         ├── backup
         ├── Level.sav  ----------  <- The target world save-file
         ├── LevelMeta.sav
         ├── Players
         │   ├── 00000...0001.sav   <- the target player-placeholder save-file
         │   └── 98765...4321.sav
         └── WorldOption.savTODOCleanup the data onFoliageGridSaveDataMapPAYMENT感谢palworld-save-tools提供了存档解析工具实现PalEdit- 提供了帕鲁编辑器PalworldCharacterTransfer- 参考了其中的动态物品数据迁移引用概念Palworld Host Save Fix- 提供了最早期迁移玩家数据的概念palworld-steam-id-to-player-uidhttps://afdian.net/a/magicbear- 赞助我