> 电竞 > 昔日回顾
大千世界存档速度过慢解决方法
2020-10-27 09:18:17 作者:网络转载

大千世界存档速度慢怎么解决?不少玩家在游玩本作时能感觉到存档速度过慢,下面带来存档速度的优化方法,供各位玩家们参考。

大千世界存档速度过慢解决方法

直接拆包, 找到存档部分的代码, 发现就是简单的Base64,

Base64后都有3M, 意味着....

动手将Base64的过程去掉, 然后发现, 原始存档内容高达21M......

你到底存了什么能有这么多数据啊

打开一看, 简直崩溃

不仅存了无数个Null, 而且还有大量没必要存的数据

什么物品描述之类的满屏可见, 甚至还有地图的提示文本都在其中

做了下实验, 去商店买了几十件装备, 然后马上卖掉再保存

存档文件都肉眼可见的增长, 装备虽然卖掉了, 但是还有数据保存

这就是为啥我们的存档在无限的增大而且保存越来越慢的原因了

动手解决问题

最初的想法是把存档中的垃圾数据手动清理掉

后来发现实在是太天真了, 简直无从下手

干脆一不做二不休, 把Base64的步骤去掉就好

20M的读写能花多少时间? 主要慢在Base64

1.先正常打开游戏, 将10号存档位空出来, 关闭游戏, 之后10号位置就是我们的快速存档位了

2. 解包

直接搜 "RPGMakerMV 解包" 即可, 这里就不多说了.

3.修改

找到解包后的文件, 在游戏目录下 %DEFAULT FOLDER% / js / rpg_managers.js

打开, 搜索 StorageManager.saveToLocalFile

StorageManager.saveToLocalFile = function(savefileId, json) { var data = LZString.compressToBase64(json); var fs = require('fs'); var dirPath = this.localFileDirectoryPath(); var filePath = this.localFilePath(savefileId); if (!fs.existsSync(dirPath)) { fs.mkdirSync(dirPath); } fs.writeFileSync(filePath, data); };

修改为

StorageManager.saveToLocalFile = function(savefileId, json) { var fs = require('fs'); var dirPath = this.localFileDirectoryPath(); var filePath = this.localFilePath(savefileId); if (!fs.existsSync(dirPath)) { fs.mkdirSync(dirPath); } if (savefileId == 10) { fs.writeFileSync(filePath, json); } else { fs.writeFileSync(filePath, LZString.compressToBase64(json)); } };

然后将接下来的

StorageManager.loadFromLocalFile = function(savefileId) { var data = null; var fs = require('fs'); var filePath = this.localFilePath(savefileId); if (fs.existsSync(filePath)) { data = fs.readFileSync(filePath, { encoding: 'utf8' }); } return LZString.decompressFromBase64(data); };

修改为

StorageManager.loadFromLocalFile = function(savefileId) { var data = null; var fs = require('fs'); var filePath = this.localFilePath(savefileId); if (fs.existsSync(filePath)) { data = fs.readFileSync(filePath, { encoding: 'utf8' }); } if (savefileId == 10) { return data; } else { return LZString.decompressFromBase64(data); } };

4.运行解包后的游戏

将原来的save文件夹整个复制到www下

将%DEFAULT FOLDER%下的所有内容移动到www下

运行TheWorld_unpacked.exe进入游戏

(也可以把原来的TheWorld.exe删掉, 把unpacked.exe改名, 这样就可以从steam启动了)

5.接下来在10号位存档, 体验一下游戏最开始时的秒存速度吧

注意事项

1.每次游戏更新都要重复以上步骤

(第一步除外)

(第四步中save文件夹复制除外)

2.初次操作注意备份好原始存档

3.存档体积会变大很多, 如果云存档太慢, 推荐先关闭云存档

4.尽量使用游戏自带的快速存档功能(~), 从菜单的"存档"进入保存依然会很卡

5.修改后你实际使用的是www文件夹下的save存档, 正常游戏更新后默认使用的是游戏目录下的save存档, 注意不要搞混了, 以为存档丢了


相关文章

234游戏网站地图
子站导航

大家都在搜