
找了一圈儿也没在中文互联网找到靠谱的es3存档文件解密和编辑教程,不过好在搜到了国外大神的帖子,虽然照着做还是碰壁了一会儿,但好歹是修改成功了,不得不在此记录一下。
原帖链接就不发了,NSFW的论坛,CN也上不去。原贴主的ID是Henry1887,标题是How to edit/decrypt EasySave 3(.es3) Save Files,应该很容易能搜索到,如果方法失效了可以搜原帖看看有没有更新,至少我上去的时候贴主还在维护。
首先找到你游戏的存档文件,并确认你的es3存档是否真的被加密了,也就是说记事本打开是不是乱码,如果不是乱码,那直接编辑就完事儿了。

如果你的es3存档被密钥加密了,那我们首先要做的就是想办法翻出密钥。这里我先把我成功操作的办法放上来,后面再放我没有成功或没尝试过的办法
这个办法有两个条件:1.你的游戏没有禁止BepInEx运行,2.这是一个PC游戏,不是Android游戏,不满足条件的往后面看
我们需要两个东西:1.BepInEx架构,用以给游戏打mod/安装插件,2.ES3SaveHook插件,原贴主自己做的插件。
1) 下载插件,如果失效了可以自己顺着名字去找。我使用的BepInEx版本是25年6月21日发布的6.0.0 Build738,ES3SaveHook是2025年6月4日发布的,由于两个程序的版本兼容问题可能导致失败,我尝试了几次才成功,可以去找原帖看看有没有新版本。下载链接(腾讯微云):https://share.weiyun.com/fpF3Xqmh


2) 确认你的游戏使用的Unity后端是IL2CPP还是Mono,使用相应版本的BepInEx和ES3SaveHook。确认的方法是看看你的游戏文件内有没有一个叫GameAssembly.dll的文件,有就是IL2CPP,没有就是Mono

3) 将BepInEx解压到你的游戏根目录,然后把ES3SaveHook的dll文件放在BepInEx/plugins文件夹内,现在的结构应该是“游戏根目录/BepInEx/plugins/ES3SaveHookMONO.dll或者ES3SaveHookIL2CPP.dll”

4) 打开你的游戏,随便执行一个存读档操作。打开游戏时可以在同时开启的BepInEx日志窗口看一下ES3SaveHook有没有加载成功,或者报错,我将两个程序都更新到最新版本后才能兼容。
5) 存读档后,现在你应该能直接在游戏根目录下面找到一个decryption.key文件,用记事本打开就能看到存档密钥了。

这里我们感谢另一位大神Alex Tusinean制作了存档编辑器EasySave3 Editor,网址:https://es3.tusinean.ro/

1) 如图,把你解出来的密钥放到Password栏目,你也可以点下面的known game passwords按钮下面找到一些作者自己解出来的游戏的存档密钥。
2) 点击Choose File上传你的存档,然后你可以选择直接在线编辑Open editor或是download下来编辑,下载下来的注意编辑完后要重新回到网页上,用Encryption功能再进行加密。
3) 使用在线编辑器的话还是比较直观的,直接翻找所需的项目点开,修改数值就可以了,当然具体哪一项是什么意思,就只能对照名称和游戏内数值来猜了。修改完后右下角save按钮下载下来,就是已经重新加密好的存档文件了。

Henry1887还列出了一些其他获取密钥的方法
同样是Henry1887制作的ES3KeyExtractor,被打包为了search.exe,我同样放在了上方的下载链接中,也可以去github上看看有没有更新,但需要自己打包exe。这里需要用到windows的命令行,Android游戏使用此命令: "search.exe {game apk file}",其他游戏使用此命令: "search.exe {game_Data folder}",稍等片刻(或更久),直到游戏命令行窗口直接显示出密钥。
这看起来就专业一些了,大概也用不上,分为使用BepInEx和UnityExplorer的控制台;使用DnSpy(只支持Mono);使用BepInEx和UnityExplorer来hook三种办法。
这里简要介绍一下第一种,将BepInEx和插件UnityExplorer如同ES3SaveHook一样安装好,进入游戏,按F7打开UnityExplorer的控制台界面,使用命令
ES3Settings es3Settings = new ES3Settings();
System.IO.File.AppendAllText("decryption.key", es3Settings.encryptionPassword);
现在应该可以在根目录找到decryption.key了
其余两种方法能用的应该都能找到原帖并看懂,找不到原帖的八成也操作不了,我就不放了。
记得备份存档,祝大家成功