修改DLL文件实现龙崖Dragon Cliff作弊

本文详细介绍了如何使用Reflector和reflexil修改游戏DragonCliff的代码,以改变英雄、居民及武器的品质,使其均为远古品质。教程包括下载工具、找到游戏DLL、修改代码及覆盖原文件等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为Steam打折所以入的这款游戏,评价还是不错的。入手之后感觉挂机的过程过于枯燥,卡关的感觉很难受,因此考虑使用修改器来让这个游戏变得“爽”一点。在网上没有找到可用的修改器,但是发现了有关修改教程:

https://bbs.3dmgame.com/thread-5856105-1-1.html

由于对于整个过程还是蛮有兴趣的,并且希望完成游戏的修改,因此开始了相应的尝试。

1、下载安装Reflector v10以及reflexil 1.6(或更高版本)

因为游戏的编写使用的C#版本较高,Reflect v8并不能对其完成解析,因此使用了当前最新的v10。

2、找到游戏DLL所在位置

这一步可以通过Steam中的“管理”——>“打开文件所在位置”完成,或是找到进入到SteamLibrary下所在路径:SteamLibrary\steamapps\common\Dragon Cliff。打开后就是游戏文件的所在位置。游戏的DLL则是在游戏目录下的 \game_Data\Managed\Assembly-CSharp.dll文件。

3、打开Reflector并将该文件拖入界面中

这就是需要对其进行修改文件。

4、找到关键词所在位置并修改

由于代码还是很庞大的,需要使用关键词对于有关文件进行定位。(相关的关键词附在文章末尾)

以修改等级判定(一般稀有史诗传说远古)为例,所在函数Type:GenerationDistribution

Member:GetGrade

使用搜索功能找到相关位置。

这便是生成随机等级判定的函数(或者说品质更为合适)。主要是通过生成一个随机数,对其数值所在区间进行判定实现品质的随机。以下是修改后的文件,不论生成什么数值都会返回QualityGrade.Ancient。

public QualityGrade GetGrade()
{
    float num = Random.Range((float) 0f, (float) 1f);
    return ((num < (((this.RareChance + this.LegendaryChance) + this.EpicChance) + this.AncientChance)) ? ((num < ((this.LegendaryChance + this.EpicChance) + this.AncientChance)) ? ((num < (this.LegendaryChance + this.AncientChance)) ? ((num < this.AncientChance) ? QualityGrade.Ancient : QualityGrade.Ancient) : QualityGrade.Ancient) : QualityGrade.Ancient) : QualityGrade.Ancient);
}

如果可以修改代码就可以修改为返回远古品质不需要再进行判定,很可惜的是不能完成相应的操作。因此使用Tools——>reflexil来完成。

在Instruction(指令)一栏中可以看到最终生成底层代码,找到返回指令所在位置

这是修改过的文件,ldc.i4.5所在位置便是该函数的返回值。将所有的返回值修改为远古品质的值ldc.i4.5即可完成生成的英雄、居民以及制造的武器均为远古品质。

5、完成修改并覆盖游戏中的原文件,以下为输出方法

将生成的DLL文件覆盖掉原文件即可,如果对于操作没有信心可以备份原文件后进行覆盖。如果游戏报错闪退可以将原文件重新写入后修改,或者使用Steam中的“检测游戏完整性”功能来实现修复。

以下为游戏中测试图片:

 

以下为一些搜索关键词:

Type:GenerationDistribution
Member:GetGrade
作用:等级判定(一般稀有史诗传说远古)

Type:AttributePotentialDescriptor
Member:GetMean
作用:随机装备属性

Type:DifficultyLevelMeasurement
Member:GetStarChance
作用:装备星辰率

Type:GemGeneratorBase
Member:GetRandomCoeff
作用:随机宝石属性

Type:UnitGrowthProfile
Member:GetRandomAttributeValue
作用:升级英雄的属性随机

Type:UnitExtensions
Member:GenerateGradeQualitySettingValueForAdventurer
作用:英雄评分随机

Type:DifficultyLevelMeasurement
Member:GetAdvancedCommodities
作用:粉尘物品价格

Type:Shop
Member:GetCommodities
作用:异界钥匙价格

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值