前言:
上次制作了一个python类,可惜没人用,这几天抽出了几个小时的时间,将其制作为了exe程序,但是因为全部知识都是新学的,制作的程序可能还有些问题,但是基本功能已经实现,实现不使用mod,添加独立物品,原理是直接修改原版的json文件,只可用于3.7.0,其他版本出错了概不负责,如果在3.7.0中出错了,内置数据恢复功能,使用的文件是3.7.0版本的,其他版本数据与3.7.0不一致恢复了也是错的。现已适配3.6.0以上的所有版本。
注意:
如果有自己改过items文件的,请先使用自己的items文件覆盖database\itemData\items.json此文件,否则会造成自己修改过的数据被覆盖
软件使用注意事项:
1、首先需要配置自己的database文件夹路径,才可以正确保存
2、有添加独立物品和独立buff的功能,原理是按照超级模组的独立物品原理,使用原版物品作为模板,然后修改其中的属性,达到制作独立物品的效果
3、要自己添加独立物品,首先肯定要能知道一些基本知识,首先,每个物品可以修改的字段,这是最基本的,你别连食物都加一些护甲等级属性,那当然不得行。然后,在给一个物品添加buff时,首先要创建一个对应名称的独立buff才可以使用。最后,在给独立物品设置新id时,请使用数字或者字母或者两者组合,不要使用中文,buff名称也如此,给物品设置跳蚤市场价格时,输入-1则默认为模板物品的价格
4、写入一个独立物品或者独立buff时,请认真思考后再添加,否则某个属性写错,就要重新按照原来的写一次,将其覆盖,实现字段修改,无法直接修改一个独立物品的字段(暂时没实现这个功能),这比较蛋疼,但是写错这件事情,只要在写之前就想好,一般是不会有不满意需要修改的字段的
5、写入独立物品或者独立buff后,只是暂时保存在内存中,还需要将其写入文件,持久化存储,否则退出软件就不存在了
因为是使用pyinstaller和pyqt5制作的程序,所以大小已经超过了可上传文件的最大大小(所需的第三方库太多了),所以只能提供百度和夸克的连接
使用教程(新):
最重要的一个步骤:配置自己游戏的database文件夹路径(若没有配置,保存独立物品时失败)
配置好就可以开始写独立物品和独立buff了
1、添加独立物品
先了解基本的添加思路,仿照超级模组,使用一个物品作为模板,然后修改模板物品的字段,实现独立物品的制作
所以要添加一个独立物品,最重要的一步当然是找模板物品,模板选好再做修改
找模板物品在我提供的IdData.json里查找,搜索物品名称,然后名称值对应的键就是id,例如:查找牛奶的id
这样就方便查找物品的id(注:说一下json文件的数据存储方式,也就是键值对的存储形式,原版物品的json文件也是这样,一个键对应一个值,这个键只能是字符串,这个字符串必须使用双引号,单引号是错的,而值可以是布尔值(true or false)、数字、字符串、空值(null)、对象( {}括起来的就是对象,json文件最外层就是{} )、数组( []就是数组),其中,数组又可以存放上述的所有值,对象也能存储上面的所有值,对象中有对象,数组中有数组,键值对反复嵌套,就得到了一个json文件,其中,每一个键值对之间都需要一个英文逗号,分隔,最后一个键值对不需要,数组中的数据之间也需要一个英文逗号,分隔,这就是json文件,当然如果说的有什么不对,也可以跟我讲,我也学习一下 )
在找到模板物品后,就可以开始添加独立物品了:
可以看到需要的最基本的字段就是模板物品id,新物品id,名称,短名称,描述,价格(填-1就是默认模板物品的价格)
这里的填写只是一个示例(添加好后,名称是在跳蚤市场搜索时用的):
填写好这些字段后就可以开始添加属性修改了(添加的属性不是添加就一定有,比如给一盒牛奶添加防弹属性肯定不行)
其中一些普通的属性只能添加一次,而防护区域和头部防护区域可以添加多次
例如添加以下属性(当然,有些属性不会生效,只是演示一下):
设置食物使用后的效果,这里是设置食物和水分都加100,其他字面意思应该能看懂
添加时的数据类型就四种int,float,bool,str,其中int是整数,float是小数,bool是true or false,str是字符串
写数值时要按照数据类型说明来写,不然数据类型不对,添加出错,需要选择的有bool和str,这两个选择好就可以,不用担心出错
特殊的:设置物品使用的模型时,先到整理好的prefabs.json里面搜索需要的物品的模型,然后填写到PrefabPath中,因为太多了,所以这个自己搜索,然后填写,其他的str类型的数据都是有选项的
这里新物品的模型依旧使用一盒牛奶的模型
填写好后点击添加独立物品按钮
提示添加成功
2、添加独立buff
和独立物品一样,这里不过多讲解,只做示例:
添加一个名为new_milk_buff的独立buff,属性为提高专注等级1级,延迟一秒持续300秒几率100%,疼痛300秒延迟1秒几率100%
点击添加独立buff
添加成功
3、最后一步,保存,每次添加完或者修改完物品或者buff1的属性,都要点击保存数据按钮
提示保存成功即可
4、修改一个已经写好的独立物品或者buff的属性
查询已有的物品或者buff
选择一个要修改的物品或者buff
选择好后即可自动重新写入修改过的字段
最后修改保存即可
4、删除一个独立物品或者独立buff
一样的操作,先查询到自己要删除的独立物品或者buff,选择后,点击删除物品或者删除buff按钮即可
版本迭代:
更新至1.0.1:修复查询物品多次点击的重复添加问题
更新至1.0.2:添加功能,在添加独立物品和buff时,如果添加成功,则会有弹窗提示,无需自己查询
更新至1.0.3:添加可修改属性,弹夹最大装弹数
更新至1.0.4:添加可修改属性,配件的后坐力减益,修复原水平后坐力和垂直后坐力属性为枪械水平后坐力和枪械垂直后坐力
更新至1.0.5:修复原手榴弹爆炸效果的类型选项添加后出错的问题,添加修改已创建的独立物品和独立buff属性的功能(需要使用当前版本添加的独立物品和buff才可以修改,否则无法找到对应字段,无法修改,所以以前写的独立物品和buff现在需要重新写一遍,才可以使用此功能,略显麻烦,但是我能力不够只能做到这个程度 ,谅解一下),查询已有的独立物品或者buff,然后选择对应的独立物品或者buff就会自动填写对应的字段,如果突然不想改了,可以选择空选项,就会自动清空
更新至1.0.6:修改后座力属性为子弹后坐力,添加可修改属性子弹精准度,子弹跳弹概率
更新至1.0.7:添加可修改属性子弹的发热值
更新至1.0.8:修改部分错误逻辑,添加新逻辑,将独立物品id自动添加到原模板物品所在的所有slots下,实现新物品拥有原模板物品一样的装配效果
更新至1.0.9:修复独立子弹id无法自动添加到filter中的问题
更新至1.1.0:添加可修改属性,配件的精准度
更新至1.1.1:修复物品添加到filter中的覆盖问题
更新至1.1.2:修复子弹不能填充到枪械filter而导致无法使用的问题,修复独立物品和独立buff信息显示问题
更新至1.1.3:优化部分代码,可以单独删除一个独立物品或者独立buff(选择好需要删除的buff或者物品,点击删除按钮后即可)
更新至1.1.4:添加可修改属性prefab(物品的模型),提供prefabs.json文件方便查找物品模型,修改防护区域属性可以多次添加
更新至1.1.5:修改护甲等级属性为防弹等级,修改护甲防护区域属性为防护区域,添加可修改属性头盔防护区域,修复护甲材质添加失效问题,修复其余bug若干
更新至1.1.6:使用upx工具将exe可执行文件压缩为原可执行文件大小的78.89%,体积减小21%,仅压缩体积没有其余更新,而且upx压缩的可执行文件会导致部分程序报毒(软件本身并没有病毒),酌情使用
更新至1.1.7:修复给物品添加stimulatorbuff属性时的软件退出问题
更新至1.1.8:修复删除独立物品或者buff的按钮点击之后的一些问题
更新至1.1.9:增加新功能,由于没有删除一个多余属性的方法,所以现在将不想要的属性里的字段全部置空(复选框也提供了空选项),即可遗弃该属性。修复删除一个物品后该物品不会从Filters中移除而造成的游戏打开报错
更新至1.2.0:添加了可修改属性容器格子,为路径修改成功添加弹窗
更新至1.2.1:为属性修改添加搜索功能,稍微调整了一下字体
更新至1.2.2:添加可修改属性弹夹装弹速度修正,稍微修改了一下显示的参数信息,可在设置中修改为中文
更新至1.2.3:修复恢复数据点击no依旧会恢复的bug,修复所有bool值的属性添加后是字符串的错误,修改软件打开后会自动查询所有的独立物品和buff,不用再次手动点击,修复物品模型属性和装弹速度修正属性消失的问题,修复恢复数据点击否也会恢复的错误
软件链接:
彩云盘(不限速,3.9的版本在这里,注意:3.9以上版本有了新的受击区域,但是我并未添加,如要使用,尽量别碰护甲一类的东西)
链接: https://caiyun.139.com/m/i?125ClojNIPZkt
提取码: yYfc
最后,还是一样
不喜勿喷,喜欢就支持一下,不做强制要求
有问题可以在评论区反馈,我会修复
大佬3.7.2能用吗?
补充:
我提取了一份json文件,可以使用这个json文件搜索物品名字,查找对应的物品,方便寻找作为模板物品的id,
另外点击App.exe打开程序
大神666
能否提供说明书?不知道怎么使用,无法添加
厉害了