XEricSin 发表于 2018-2-18 10:53:38

本帖最后由 XEricSin 于 2018-2-18 10:58 编辑

贤知有您 发表于 2018-2-17 23:39
如果使用HOOK钩子来处理估计会很容易处理。
如果单纯改几个内存地址,很难更改数据的。因为硬编码(汇编 ...
复活点数的确翻倍了,但是复活门槛没有变。也就是说生命值大于100的点生物仍然不能复活。这个小问题可以用erm的触发战场提示解决,强制对符合条件的单位施法。

另外我在想,如果没有内存修改的情况下,是否可以临时更改目标的生命上限,从而起到加倍复活个数的作用。

贤知有您 发表于 2018-2-18 11:11:04

本帖最后由 贤知有您 于 2018-2-18 11:14 编辑

XEricSin 发表于 2018-2-18 10:53
复活点数的确翻倍了,但是复活门槛没有变。也就是说生命值大于100的点生物仍然不能复活。这个小问题可以 ...
一个大天使,不能复活1个大于100HP的生物,是这意思吗?
忘记机制了。貌似大天使的复活机制是颇有讲究的。
你的意思是,不论点数,就像那个超级复活函数一样,直接叠加复活的HP上去?
想起了了,好像是检测的是能复活的个数,公式直接以 能复活HP除以目标HP,所以如果不够1个,就不能复活。
你的意思是想去掉这个限制,叠加HP?

XEricSin 发表于 2018-2-18 15:43:41

本帖最后由 XEricSin 于 2018-2-18 15:45 编辑

贤知有您 发表于 2018-2-18 11:11
一个大天使,不能复活1个大于100HP的生物,是这意思吗?
忘记机制了。貌似大天使的复活机制是颇有讲究的 ...
原版的大天使复活力是100点,复活的个数=大天使数量*100/目标的生命最大值。那么一个大天使不能复活一个200血的小天使,而两个大天使可以。

我希望大天使复活力为200点。一个大天使正好复活一个小天使。

加上你上面的码后,在强制大天使对小天使施法时,的确正好复活一个小天使,但是如果按照正常过程,鼠标悬浮在小天使上时,是不会显示能够复活的,因此一个大天使仍然不能对小天使施法。

所以,目前在鼠标悬浮时的检测阶段,差一个对复活点数的更改。
如过能通过内存直接改掉当然更好。不过也可以通过模拟来强制大天使对小天使施法。

贤知有您 发表于 2018-2-18 21:37:46

XEricSin 发表于 2018-2-18 15:43
原版的大天使复活力是100点,复活的个数=大天使数量*100/目标的生命最大值。那么一个大天使不能复活一个2 ...

想了很久,终于想起一个对空地施法的问题。
如果小天使没有全部死掉,是可以复活一个的,但如果全部死掉,就不能复活了。变成了对空地施法的过程。

!!UN:C4485241/1/3 C4489947/1/3 C5932992/1/3 C4485546/1/3;[天使重生效果翻倍]

XEricSin 发表于 2018-2-19 18:42:21

贤知有您 发表于 2018-2-18 21:37
想了很久,终于想起一个对空地施法的问题。
如果小天使没有全部死掉,是可以复活一个的,但如果全部死掉 ...

这个码厉害了,初测有效

Archer30 发表于 2021-4-20 12:21:00

这里贴一个俄文论坛的UN:C集合帖吧,包含大量的实例

UN:C

junk717 发表于 2024-11-12 14:30:53

挖个坟,有没有大佬研究出来能给任意生物添加任意特技,比如,给枪兵+麻痹、石化这种特技,相当于所有生物特技可以选择任意数量附加给任何生物,原始的生物数据只有4个字节共32个效果,包含了状态控制等等,并没有覆盖全部生物特技,单纯修改内存数据是不是无法达到这个目的呢

Archer30 发表于 2024-11-12 15:24:24

junk717 发表于 2024-11-12 14:30
挖个坟,有没有大佬研究出来能给任意生物添加任意特技,比如,给枪兵+麻痹、石化这种特技,相当于所有生物 ...

不hook做不到的
页: 1 2 3 [4]
查看完整版本: ERM内存修改和函数调用探讨专题

捐赠