本帖最后由 hiayongs 于 2018-6-25 18:39 编辑
有人说为啥不好好玩游戏,好好玩自定义模式。非得要修改参数作弊呢。 冠冕堂皇的解释就是,我觉得自定义模式无法满足一些更细的变量调整,让新手(我)更加逐步地适应完全体入侵者难度体验。故先抛为敬。 之前拜大神所赐,只修改一个Assembly-CSharp.dll就能自动生成ini修改文件,还能直接关联DLL串值。很牛很强大。自从弃坑,我也想做一个研究,就算没那么强大全面的功能,至少每次版本更新自己能手动修改一些东西也好,这也是学习收获嘛。本人稍后会附上Steam时间,这游戏确实是挚爱,否则不会如此研究。无关其他,只求交流经验,再续大神昔日辉煌!但修正一点,辉煌是美好的,本人还是觉得人人都是大神才是最好。
废话说完,本人完全不懂汇编等东西,自己瞎捉摸,各种百度,终于误打误撞找到了无限油灯的修改方法。先行献上了。 准备材料: A、.net Reflector9.0或以上版本,可自行百度,有官网下载,就用试用版就行。试用版14天呢。 B、再行下载ReflexilV1.5以上版本的这个插件,至于如何挂载,可百度。1分钟的事情。 我具体的方法如下:
1、.net reflector9.0先打开Assembly-CSharp.dll,顺便打开Search搜索项,打开插件(位于工具选项底部)。DLL文件位于:STEAM\steamapps\common\TheLongDark\tld_Data\Managed下。
TOOLS点击SEARCH(搜索),搜索reduce(减少)关键字。在reduceFuel下就是灯油减少的设定(应该这么说没问题)。按照选中的三行编辑。
2、具体第一步:先选中第三行(03)右键EDIT,第一行OpCode选择成ldc.i4,下面一行Operandtype下拉菜单选int32格式,最后底部值填入0即可。
具体第二步:选中的第一行(01)选中右键EDIT,OpCode不动。OperandType不动,最下方下拉,选-》(3)ldc.i4 0这一项。然后点击Update(重新生成) 然后就会变成我选中行的样子,至此全部修改完毕。进游戏各地图各天气状况各油灯油量、灯耐久值。。。所有情况下测试均无限点亮。 我以完全外行人的理解,包括经查阅微软官方字段介绍,粗俗的理解下为何如此修改: 此段ReduceFuel应该意为灯油减少,所属类应为搜索结果第二列所说的KeroseneLampItem(煤油灯物品)类。此三句从上往下结合上下句应该说的是先引入灯油减少,Brfalse是如果灯油不减少,下一行则ret结束循环。如减少(就是点着煤油灯的情况),继续往下执行(Brfalse对应的就是Brture)。则跳转第03行执行。03行应该就是规定在煤油灯被点燃,灯油消耗定义激活情况下具体耗油的量。这行Opcode意思就是这个量的类,int32是这个类对应的值的类型(也不知道怎么表述好,但务必匹配,否则无法生成修改),最后填写0.就是消耗是0,这样带入别的函数计算应该结果均为0,即无耗。而且此种修改不涉及关联当前灯油余量及灯本身状况的句子。故对其他变量无影响。新开档及老档均可使用,且应该任何版本都可行。 好了,说了这么多我是真心想交流学习,我只是改了一个值,但大神也联系不上,曾经能修改那么多值,也都是在这一个DLL文件里面。可见我还有很多没有发现的。如大家不弃,欢迎交流其他值的修改方法,我也渴望学习了。。。感激不尽!真心欢迎就修改问题进行探讨。就如开头说的,别的什么好好玩游戏的话就不用说了吧,就想交流学习下修改手艺。最后贴上时长,确实是用修改器了很长一段时间,但自己修改也未尝不是游戏魅力的延伸! 不管游戏怎么更,春天来不来,我们自有自己的玩法!
|