游戏狂人
 
- 贡献度
- 111
- 金元
- 11443
- 积分
- 1588
- 精华
- 0
- 注册时间
- 2012-9-8
|
本帖最后由 Roul'Soul 于 2025-8-16 22:43 编辑
分享下真菌朋克的dll静态修改记录,同时分享一下版本1.1.5h1的dll文件
对其他版本未必通用,请记得备份
可惜不会做mod,不然就更方便了,有兴趣可以自己做一下,thunderstore站就有这个游戏的mod,就是没几个,可安装重复升级还是从里面的Mod找到的代码位置
dll文件是
Mycopunk\Mycopunk_Data\ManagedMycopunk\Mycopunk_Data\Managed\Assembly-CSharp.dll
这个文件
dnspy无法直接修改这个dll,因为缺乏一些依赖项会报错,所以使用【编辑IL指令】来进行局部修改
修改时鼠标点击需要修改的部分位置,然后右键选择【编辑IL指令】,从弹出来的界面里,从高亮部分找到需要的参数,对操作码和操作符进行修改
技能无冷却
手雷/主技能/副技能,无冷却,但是手雷有动作冷却
结构:CooldownData
方法:AddCharge
找到
this.charge = Mathf.Clamp(this.charge + amount, 0f, (float)this.maxCharges);
改为
this.charge = Mathf.Clamp(this.charge + amount, 1f, (float)this.maxCharges);
修改方法:选择0f,右键编辑il指令,找到弹出界面高亮部分的操作码里的ldc.r4的右边的0,0改为1,保存
常态掉落升级
原本是小概率掉落升级,现在是小概率不掉落升级
类:EnemyManager
方法:SpawnEnemy_Server
找到
if (random.NextFloat() <= Global.Instance.GetEnemyUpgradeDropChance((EnemyType)Mathf.Min((int)enemyClass.config.enemyType, 1), enemyClass))
改为
if (random.NextFloat() > Global.Instance.GetEnemyUpgradeDropChance((EnemyType)Mathf.Min((int)enemyClass.config.enemyType, 1), enemyClass))
修改方法:选择<=右键编辑il指令,找到弹出来窗口中高亮部分的操作码bgt.un.s,点击选中,查找弹出来的下拉窗口里的ble.un.s操作码,选择后保存
注:这两个是IL代码里的符号代码,想要具体了解可以搜搜IL代码集看看
可安装同样的升级
普通的原本不能同效果安装的升级也可以多个叠加安装了
类:ModuleEquipSlots
方法:CancelStackingEquip
找到两个return true;
改为return false;
修改方法:选择true右键编辑il指令,找到弹出来窗口中高亮部分的操作码ldc.i4.1,点击选中,查找弹出来的下拉窗口里上一个的ldc.i4.0,选择后保存
注:这里的代码逻辑是0=false错误,1=true正确
随意叠加升级
随意重叠叠放升级,超出一些格子都可以,但是叠加后再拿下来会有图像残留,重新打开升级界面即可清除
类:ModuleEquipSlots
方法:CanEquip
找到
return false;
改为
return true;
修改方法:同上,不过是找到ldc.i4.0改成ldc.i4.1
本来还想找一下资源解锁方面的,但是想了想算了,资源如果真的不想打干脆自己用ce随便改改就完事了,没必要这么麻烦
没有测试过多人联机会如何,我猜会报错?总之不建议尝试多人这么做,单机玩玩算了
以下是改好的几个dll分享,可能仅能用于1.1.5h1版本,覆盖替换记得备份
1.【技能无冷却】
2.【常态掉落升级】+【可安装同样的升级】
3.【可安装同样的升级】+【随意叠加升级】
4.【常态掉落升级】+【可安装同样的升级】+【随意叠加升级】-我在用的版本,升级流
5.【技能无冷却】+【常态掉落升级】+【可安装同样的升级】+【随意叠加升级】
链接: https://pan.baidu.com/s/1dU-TfT4DWpH2aS2SVcJt5Q?pwd=uafi 提取码: uafi
|
评分
-
1
查看全部评分
-
|