多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

零基础把《幻兽帕鲁》存档改成JSON:palworld-save-tools转换实战全攻略

零基础把《幻兽帕鲁》存档改成JSON:palworld-save-tools转换实战全攻略 零基础把《幻兽帕鲁》存档改成JSONpalworld-save-tools转换实战全攻略【免费下载链接】palworld-save-toolsTools for converting Palworld .sav files to JSON and back项目地址: https://gitcode.com/gh_mirrors/pa/palworld-save-tools第一次拿到《幻兽帕鲁》的Level.sav时我顺手用记事本打开了它——满屏跳出来的全是乱码符号和不知名的字节碎片。那一刻我彻底明白这游戏把整个世界的状态都压成了一坨二进制想靠肉眼改数据基本等于徒手拆原子弹。直到我遇见了 palworld-save-tools这个能把.sav存档转成 JSON、改完再转回去的 Python 工具我才真正体会到存档自由是什么感觉。今天这篇文章就是把我从翻车到熟练的全过程原原本本讲给你听。那天晚上我对着乱码发呆事情的起因很朴素我养的一只帕鲁被自己的稀有被动坑惨了六维属性惨不忍睹扔了可惜、留着占格子。朋友劝我直接改存档啊可我连存档里写的是什么都看不清——二进制文件不像文档没有任何文字可读更没有等级、经验值这种字段摆在明面上。palworld-save-tools 解决的就是这件事它把游戏内部序列化把数据压成二进制存起来的.sav文件解压、解析成结构清晰的 JSON一种用键值对书写的纯文本格式你改完后再原路打包回去。更难得的是项目宣称SAV → JSON → SAV 能做到逐字节一致压缩前也就是说只要你不乱删字段转回去的存档和原始存档一模一样游戏读起来毫无违和感。同一件事两种活法没有它之前我改存档的路径是这样的打开某个十六进制编辑器对着偏移量猜字节含义改错一位存档直接报废重开新档网上找改存档教程结果教程里的工具早已失效有了它之后路径变成了这样convert一条命令存档变 JSON字段名、数值、结构一目了然想改什么在 JSON 里搜索定位改数字保存再转回去放回存档目录进游戏验收前者是盲人摸象后者是看着地图逛街。关键还在于JSON 格式本身是通用标准你甚至可以写脚本批量处理比如一次性给十个存档的帕鲁球数量翻倍。一次完整实战把养废的帕鲁改回神兽下面这条主线我全程用第一人称演示一遍。目标是把我那只属性垫底的帕鲁直接改到接近满级。你跟着做一遍就能举一反三改任何数据。第一步装好工具两分钟搞定我是在 Windows 上做的环境要求只有一个Python 3.9 或更高版本。装好后运行pip install palworld-save-tools安装完会生成一个同名命令palworld-save-tools这就是我们一会儿要用的主入口。想折腾源码的同学也可以克隆仓库后pip install .本地安装git clone https://gitcode.com/gh_mirrors/pa/palworld-save-tools第二步把存档请出来Steam 版《幻兽帕鲁》的存档藏在用户目录下路径大致是%LOCALAPPDATA%\Pal\Saved\SaveGames\SteamID\SaveID\Level.sav在动手之前先把Level.sav复制一份备份到别处。这不是客套话——这是我后来用血泪换来的习惯具体原因见文末踩坑部分。第三步.sav 变 .json把路径填进命令回车palworld-save-tools convert D:\saves\Level.sav --to-json预期输出同目录下多出一个Level.sav.json文件。注意这个文件可能很大几十到几百 MB强烈建议用 VSCode 这类现代编辑器打开记事本会直接卡死。第四步在 JSON 里找到目标用编辑器的全局搜索功能直接搜我那只帕鲁的名字。结果会定位到CharacterSaveParameterMap这一大块——这是所有角色和帕鲁的数据区每个条目对应一个RawData里面有Level、Exp、Talent之类的字段几乎每个都自带可读的键名。第五步改数值把Level后面的数字改成我想要的等级顺手把对应的经验值也调高。保存文件。就这么简单——你不用懂任何二进制知识改的就是纯文本数字。第六步转回去放回存档palworld-save-tools convert D:\saves\Level.sav.json --from-json预期输出还原出一个新的Level.sav。把它覆盖回存档目录覆盖前记得把上一步的备份再确认一遍进游戏——那只废柴帕鲁已经脱胎换骨了。我踩过的三个坑新手最容易犯坑一忘了备份然后存档坏了。我曾在改 JSON 时手滑删掉一个逗号转回.sav后游戏直接报存档损坏。那一刻我只想抽自己。规则很简单每次动手前先备份改完验证没问题再删备份。坑二扩展名惹的祸。工具默认根据文件扩展名判断转换方向.sav转 JSON.json转 SAV。有次我输出文件名没带.json结果方向判断错了。后来我养成习惯双向转换都显式加上--to-json或--from-json参数杜绝歧义。坑三内存不够卡死在转换中。大型存档转换很吃内存。如果存档特别大可以用--custom-properties只解析关心的数据块比如palworld-save-tools convert Level.sav --to-json --custom-properties .worldSaveData.CharacterSaveParameterMap.Value.RawData,.worldSaveData.ItemContainerSaveData.Value.RawData这条命令只处理角色和物品容器两类数据转换速度快不少内存占用也降下来了。想要更紧凑的输出可以再加--minify-json输出文件已存在想免确认用--force。写在后头一句话总结palworld-save-tools 把《幻兽帕鲁》的二进制存档翻译成了人人都能读、能改的 JSON让改存档这件事从黑客技术变成了普通玩家的日常操作。接下来你可以这样继续深入把Level.sav转成 JSON 后翻翻palworld_save_tools/rawdata/目录下的源码对照理解基地、公会、物品容器等数据结构Windows 用户可以直接把.sav文件拖到convenience_tools/convert.cmd上免敲命令改完第一个数值后试着写个小脚本批量修改多个存档体验自动化记得每次修改都走备份 → 转换 → 小改 → 验证 → 再大改的流程工具是死的规矩是活的。备份做足、小步验证你就能在《幻兽帕鲁》里当一回自己的管理员。【免费下载链接】palworld-save-toolsTools for converting Palworld .sav files to JSON and back项目地址: https://gitcode.com/gh_mirrors/pa/palworld-save-tools创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表