
RMMV游戏通常存档位于www目录下的save文件夹里,使用各种RMMV游戏的修改器,修改save文件夹下的file1.rpgsave之类的存档数据可以使游戏变得更加轻松。
但是少部分RMMV游戏因为Enigma加密之类的原因,存档save文件夹位于www文件夹之外,这个时候使用修改器打开存档,会发现无法修改道具和开关,想看全回想之类的还得把save文件夹手动移到www文件夹内,修改器改完了还得移出来,再想改一次还得再来一次,非常麻烦。

道具空白无法修改
我们可以通过修改脚本的方法修改存档目录,我google搜了一下,发现这么简单的东西居然没有人写,我就首发了。
先找到www文件下的js文件夹里的rpg_managers.js文件,里面定义了save的规则和存储目录。右键点击rpg_managers.js选择编辑



用搜索的方式,把JavaScript代码
StorageManager.localFileDirectoryPath = function() {
var path = window.location.pathname.replace(/(\/www|)\/[^\/]*$/, '/save/');
if (path.match(/^\/([A-Z]\:)/)) {
path = path.slice(1);
}
return decodeURIComponent(path);
};
替换成
StorageManager.localFileDirectoryPath = function() {
var path = require('path');
var base = path.dirname(process.mainModule.filename);
return path.join(base, 'save/');
};
之后保存,再打开游戏,进行存档会发现存档目录已修改至www文件夹内,用修改器打开存档发现道具能改了,开关变量都能改了,全回想不是问题。

道具开关变量全都能改了
如果遇到存档目录还是没有改变的游戏,需要再加步骤,因为有极少游戏是打包成.nw文件的,用的是zip打包er不是Enigma打包,save目录的函数在SavePathRelocation.js文件夹里而不在rpg_managers.js里。

这时我们需要找到www目录下的js文件夹里的plugins文件夹下的SavePathRelocation.js文件右键打开编辑

找到実行環境判定,把从程序文件夹读取存档的函数
execpath;
改成从模块文件夹读取存档的函数
modulepath;
保存就好了
