游迅网
游迅网 > 单机攻略 > 游戏秘籍 > 正文

人类无需金币立即建造代码分享

2021-08-18 14:08:32来源:NGA论坛编辑:钟离评论(0)

人类是一款策略游戏,游戏之中有很多的文明可以选择,随着游戏的后期,建造的时间会影响游戏的局势,有没有方法可以立即完成建造呢,这里小编带来了一份详细攻略,希望可以帮助到大家!

dnspy打开Amplitude.Mercury.firstpass.dll

找到Amplitude.Mercury.Simulation包下的DepartmentOfIndustry类

找这个方法private void ProcessOrderBuyoutConstructionAt(OrderBuyoutConstructionAt order)

其中有一行是this.majorEmpire.DepartmentOfTheTreasury.Pay(buyoutCost);

括号里给它改成this.majorEmpire.DepartmentOfTheTreasury.Pay(FixedPoint.Zero);

具体改法就是右键编辑IL指令(因为反编译会因为引用外部dll无法再次编译,为了省事直接干IL)

找到调用Pay的这句:

26 004E callvirt instance void Amplitude.Mercury.Simulation.DepartmentOfTheTreasury::Pay(valuetype [Amplitude.Framework]Amplitude.FixedPoint)

然后找它前面一句,就是加载buyoutCost的那句,应该是ldloc.3,如果不是就看看前面的一个函数GetBuyoutCost之后存到第几个位置了,应该有一句stloc.3和这个ldloc.3是对着的先存后读的。

把ldloc.3给改成

25 0049 ldsfld valuetype [Amplitude.Framework]Amplitude.FixedPoint [Amplitude.Framework]Amplitude.FixedPoint::Zero

就是加载了一个FixedPoint.Zero这个静态变量。如果怕写错就找一下这个变量,然后查它的引用,找一行读取的IL指令复制过来,我就是这么搞的。

保存进游戏,造个建筑,用金币直接买,然后金币不减少,修改成功。

其他修改应该也都不远。有什么好玩的修改希望大家多分享呀。小编我就不多废话虐电脑去了。

以上就是本次的攻略啦,希望可以对小伙伴们有所帮助!

人类

人类

  • 游戏类别:即时战略
  • 游戏平台:/PC/
  • 开发商:AMPLITUDE Studios
  • 发行商:SEGA
  • 发行时间:2021年8月18日
游戏介绍:《人类(Humankind)》是一款全新休闲益智类型的古代历史游戏,AMPLITUDE Studios所研发的巨作,游戏主要采用了历史题材战略作为游戏背景,融合了多元化的元素、众多历史故事和价值观,打造了一款前所未有的独特文明游戏。

推荐阅读

更多>>48小时热评资讯

更多>>精华推荐