1. 桌面右键,新建文本文档,文件名任意,后缀改为.html

2. 文档右键,编辑,复制代码到文档里

3. 双击打开html页面

直接下载(蓝奏云)

存档本身是一个json对象,
默认的加密就是使用 LZString.compressToBase64 方法,编码json字符串:
json对象 -> json字符串 -> base64字符串

使用时再用 LZString.decompressFromBase64 方法,解码成json字符串:
base64字符串 -> json字符串 -> json对象

修改rpgsave存档.html

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="author" content="hlmio 2020-12-13"><title>修改rpgsave存档</title><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/element-ui@2.14.1/lib/theme-chalk/index.css"><script src="https://cdn.jsdelivr.net/npm/element-ui@2.14.1/lib/index.min.js"></script><script async src="https://cdn.jsdelivr.net/npm/lz-string@1.4.4/libs/lz-string.min.js"></script><script async src="https://cdn.jsdelivr.net/npm/file-saver@2.0.5/dist/FileSaver.min.js"></script>
</head>
<body><div id="app"><el-row :gutter="10"><el-col :xs="24" :sm="10" style="margin-top: 50px;"><div style="display: flex; flex-direction: column; align-items: center;"><!-- (1) 选取文件 --><div><el-uploadclass="upload-demo"drag:auto-upload="1==2":on-change="upload":on-preview="clickFile"action="#"><i class="el-icon-upload"></i><div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div></el-upload></div><!-- (2) 加密内容 --><div style="margin-top: 50px;"><el-input v-model="加密内容" placeholder="未读取文件"><template slot="prepend">原文:</template><el-button slot="append"  v-on:click="ctrl_c(加密内容)" icon="el-icon-document-copy"></el-button></el-input></div><!-- (3) 加密按钮 --><div style="margin-top: 15px;"><el-button v-on:click="decodeText_to_encodeText" icon="el-icon-upload2"></el-button></div><!-- (4) 解密内容 --><div style="margin-top: 15px;"><el-input v-model="解密内容" placeholder="请输入内容"><template slot="prepend">解码:</template><el-button slot="append" v-on:click="ctrl_c(解密内容)" icon="el-icon-document-copy"></el-button></el-input></div></div></el-col><el-col :xs="24" :sm="13" style="margin-top: 40px;"><div style="display: flex; flex-direction: column; align-items: center;"><!-- (5) json内容 --><div style="margin-top: 15px; width: 90%;"><el-input type="textarea" v-model="json内容" placeholder="请输入内容" :rows="18"></el-input></div><!-- (6) 转换按钮 --><div style="margin-top: 15px;"><el-button v-on:click="change_and_encode_and_save(json内容)" icon="el-icon-download"></el-button><el-button v-on:click="change_and_encode_and_ctrlC(json内容)"  type="primary"  icon="el-icon-check"></el-button><el-button v-on:click="ctrl_c(json内容)" icon="el-icon-document-copy"></el-button></div></div></el-col></el-row><el-row style="margin-top: 50px;"><!--左占位--><el-col :xs="3" :sm="8">&nbsp;</el-col><el-col :xs="18" :sm="8" style="margin-top: 10px;"><el-input v-model.number="金钱" type="number" placeholder="未读取"><template slot="prepend">金钱</template></el-input></el-col><!--右占位--><el-col :xs="3" :sm="8">&nbsp;</el-col></el-row><el-row style="margin-top: 15px;"><template v-for="(角色,index) in 角色列表" v-if="index >= 1"><!--左占位--><el-col :xs="3" :sm="1">&nbsp;</el-col><el-col :xs="18" :sm="6" style="margin-top: 15px;"><div><el-input v-model="角色['_name']" placeholder="未读取"><template slot="prepend">姓名</template></el-input><el-input v-model.number="角色['_level']" type="number" placeholder="未读取" style="margin-top: 10px;"><template slot="prepend">等级</template></el-input><el-input v-model.number="角色['_paramPlus']['@a'][0]" type="number" placeholder="未读取"><template slot="prepend">生命</template></el-input><el-input v-model.number="角色['_paramPlus']['@a'][1]" type="number" placeholder="未读取"><template slot="prepend">魔力</template></el-input><el-input v-model.number="角色['_paramPlus']['@a'][2]" type="number" placeholder="未读取" style="margin-top: 5px;"><template slot="prepend">攻击</template></el-input><el-input v-model.number="角色['_paramPlus']['@a'][4]" type="number" placeholder="未读取"><template slot="prepend">魔攻</template></el-input><el-input v-model.number="角色['_paramPlus']['@a'][6]" type="number" placeholder="未读取"><template slot="prepend">敏捷</template></el-input></div></el-col><!--右占位--><el-col :xs="3" :sm="1" style="margin-top: 10px; visibility: hidden"><el-input placeholder="未读取"><template slot="prepend">占位</template></el-input></el-col></template></el-row><el-row style="margin-top: 15px;"><el-col :xs="24" :sm="24" style="margin-top: 15px;"><div style="display: flex; justify-content: center;"><el-button v-on:click="change_and_encode_and_save(json对象)" icon="el-icon-download"></el-button><el-button v-on:click="change_and_encode_and_ctrlC(json对象)"  type="primary"  icon="el-icon-check"></el-button></div></el-col></el-row><el-row><el-col :xs="20" :sm="6" style="margin-top: 50px;"></el-col></el-row><el-backtop></el-backtop></div><script>var app = new Vue({el: '#app',data: {文件路径: null,加密内容: null,解密内容: null,json内容: null,json对象: {},角色列表: []},computed: {金钱: {get: function () {     try {var _ = this.json对象["party"]["_gold"]} catch (error) {console.log(error)_ = "未取到值"}return _},set: function (value){try {this.json对象["party"]["_gold"] = value} catch (error) {console.log(error)}}}},watch: {加密内容(新值, 旧值) {this.解密内容 = this.读取解密内容(新值)},解密内容(新值, 旧值) {this.json内容 = this.读取json内容(新值)},json内容(新值, 旧值) {this.json对象 = this.to_json_obj(新值)try {this.角色列表 = this.json对象["actors"]["_data"]["@a"]} catch (error) {console.log(error)this.角色列表 = []}}},methods: {// (1)upload: function (file, fileList) {this.文件路径 = file.namefile.文件路径 =  this.文件路径this.读取加密内容(file.raw)},clickFile: function (file) {this.读取加密内容(file.raw)this.文件路径 = file.文件路径 },// (2)读取加密内容: function (file) {var _this = thisvar reader = new FileReader()reader.readAsText(file)reader.onload = function(){_this.加密内容 = this.result}},// (3)decodeText_to_encodeText: function () {this.加密内容 = this.encode(this.解密内容)this.ctrl_c(this.加密内容)},// (4)读取解密内容: function (加密内容) {return this.decode(加密内容)},// (5)读取json内容: function (解密内容) {return JSON.stringify(JSON.parse(解密内容),null,2)},// (6)change_and_encode_and_save: function (obj) {this.change_and_encode(obj)this.save(this.加密内容, this.文件路径)},change_and_encode_and_ctrlC: function (obj) {this.change_and_encode(obj)this.ctrl_c(this.加密内容)},// ------------ 辅助方法 ------------change_and_encode: function (obj) {let _ = this.to_json_str(obj)this.加密内容 = this.encode(_)},ctrl_c: function (text) {this.copyText(text)this.$message('已复制');},// ------------ 工具方法 ------------to_json_obj: function (obj) {return JSON.parse(obj)},to_json_str: function (obj) {if(typeof(obj) == "string"){return JSON.stringify(JSON.parse(obj))}return JSON.stringify(obj)},encode: function (text) {return LZString.compressToBase64(text)},decode: function (text) {return LZString.decompressFromBase64(text)},save: function (text, 文件名 = "a1.txt") {let pos = 文件名.lastIndexOf("/")文件名 = 文件名.substring(pos+1)var file = new File([text], 文件名, { type: "text/plain;charset=utf-8" })saveAs(file)},// 复制的方法copyText: function(text, callback){ // text: 要复制的内容, callback: 回调var tag = document.createElement('input');tag.setAttribute('id', 'cp_hgz_input');tag.value = text;document.getElementsByTagName('body')[0].appendChild(tag);document.getElementById('cp_hgz_input').select();document.execCommand('copy');document.getElementById('cp_hgz_input').remove();if(callback) {callback(text)}}}})</script>
</body>
</html>

代码里没写多少修改项,这个网站比较全

https://www.saveeditonline.com/

制作.rpgsave存档修改器相关推荐

  1. 服务器存档修改,云服务器存档修改器

    云服务器存档修改器 内容精选 换一换 修改云服务器信息,目前支持修改云服务器名称及描述.您可以在API Explorer中直接运行调试该接口.PUT /v2.1/{project_id}/server ...

  2. 自由枪骑兵修改服务器端口,自由枪骑兵存档修改器(全版本通用)

    这是自由武器骑兵存档修改器(全版本通用),自由武器骑兵存档修改器一个,这是一个很强大的存档修改器,直接修改存档,让您在游戏中变得更加的强大,可以更好的体验游戏,下面为大家附上详细的使用方法. 游戏说明 ...

  3. 多年前的《曹操传》存档修改器

    sourcecode丢失了,.只剩下了exe和dll文件.原来使用bcb3写的,其实这种静态的存档修改器,主要就是对于文件格式的分析了.及时的存盘和fc/b,基本上就能把一个结构分析的差不多.写过好几 ...

  4. 写一个杀戮尖塔存档修改器

    软件及源码下载 1. 前言 之前杀戮尖塔打折了,然后 买了这个游戏,游戏很好玩,所以我简单研究了一下游戏.游戏是java写的,那么几乎可以看到他的完整源码了. 这个软件前前后后我差不多我写了一周了.所 ...

  5. vb.net 教程 4-9 二进制文件读写 游戏存档修改器

    版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的. 前几节学习了读取二进制文件,实际写入二进制文件操作差不多,本节制作一个简单的游戏存档修改器,来说 ...

  6. 金x修改器连接服务器怎么办,金X存档修改器 天赋物品更新版 附控制台补丁

    请问一下修改器的运行环境要求什么版本的.NET,我这加载存档会报错 有关调用实时(JIT)调试而不是此对话框的详细信息, 请参见此消息的结尾. ************** 异常文本 ******** ...

  7. 云服务器存档修改器,服务器修改器

    服务器修改器 内容精选 换一换 不支持直接加载外接硬件设备(如USB设备.银行U key.外接硬盘.加密狗等).不支持带外管理,您的裸金属服务器资源统一由华为云管理和维护.不支持热迁移,服务器故障后会 ...

  8. 以休闲游戏“植物大战僵尸”为例,制作无限阳光修改器

    制作游戏修改器,应该有很多人对这类内容感兴趣吧. 发现这个游戏纯属巧合,一日我在百度搜索"植物"这个词时,搜索框下方就列出一大堆"植物大战僵尸"的相关内容,于时 ...

  9. [原创][vb6]仙剑3外传的存档修改器

    [原创文章,转载请说明出处] Module1: Option Explicit Public LoadFN As String     '要修改的存档文件 Public LoadFP As Strin ...

  10. [原创][vb6]仙剑3外传的存档修改器--补充说明2存档数据

    [个人原创,如转载请说明出处] 00000152 钱 00008806 人物1 1397 等级 1401 精max 1405 气max 1409 神max 1413 武 1417 防 1421 速 1 ...

最新文章

  1. Java生成Word文档
  2. windows安装两个版本JDK
  3. Android将数据库数据导出成excel格式的文本(CSV)
  4. Qt中的QByteArray和自定义结构体之间的相互转换
  5. linux 为什么要安装gcc和gcc-c++(又叫做g++)
  6. there are so many javascript library
  7. 计算机如何学会自动构图?
  8. ResultSet: 结果集对象
  9. java闰年满五换行_CoreJava练习题
  10. 磁共振立体定向仪行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  11. php把数据表格数据,php怎样把数据添加到数据表
  12. 随机数生成器与线性同余法产生随机数
  13. selenium 清空缓存
  14. 正反斜杠的区别_正斜杠(/)和反斜杠(\)的区别
  15. 通过google插件Thumbnails实现图片指定大小压缩
  16. 中国SaaS企业排名,龙头企业Top10梳理
  17. R机器学习:分类算法之判别分析LDA,QDA的原理与实现
  18. python entry如何清空_Python3 tkinter基础 Entry insert delete 点击按钮 向输入框赋值 或 清空...
  19. 【python作业】编写一个函数,由实参传来一个字符串,统计此字符串中字母和数字的个数,在主函数中输入字符串并输出上述的结果。
  20. Hadoop全分布式部署 - CentOS(结尾附视频)

热门文章

  1. android开发的小程序,一份基于Android平台系统下初学者开发的微信小程序的新
  2. 用Adobe Flex3开发AIR应用程序–入门指南
  3. 使用UniWebView时的内存管理
  4. fast-DTW算法
  5. Java课程设计-学生成绩管理系统
  6. 【微分方程数值解】常\偏微分方程及其常用数值解法概述
  7. C/S和B/S和RIA
  8. 数据挖掘 顶级期刊_数据挖掘顶级期刊与会议
  9. springboot+vue网络课程教学网站系统java源码介绍
  10. python按内容分割txt文件_python 读txt文件,按‘,’分割每行数据操作