2007年3月17日星期六

[tc]魔兽3 1.21内存修改器 V4

  由于Blood+缺了一集,一边等候下载,一边就写了这个V4版。有些代码写的实在垃圾,懒得改了,于是又贴了几个补丁。
  这次除了补完上次说的“攻击力”、“攻击类型”、“防御类型”之外,“防御力”也被我“一不小心”改出来了。“智力”还是像以前一样,有找不到的几率,暂时还没有想到解决方案。

  因为此次更新并不完全是一时兴起,所以那个修改金钱的难题是一定要解决的。
  6F088E78: mov eax,[edx+78] 8b 42 78
  金钱和智力一样,代码是公用的,有一定的几率会变成无用的地址,好在几率不大,大部分时间是在一个区域内不停的变动,[tc]仔细一看:edx的低16位居然是固定的!比如P1的金钱始终是[0190],P2是[1410],只有高16位是不固定的。这就好办了,取下上16位,补上我们自己的下16位即可!该问题完美解决!
  编程的时候值得一提的是:这次[tc]决意尽可能少的修改原来游戏的代码。此前的修改存在冗余!比如“力量”、“敏捷”,我是分开搜索的。但是明眼人很快会发现,这两个地址是相关的,只要找到其中一个,另一个也能推算出来。这次修改金钱也是一样的道理。
  [tc]修改了Player 1-10(注:魔兽最多可以有12个在线玩家,我一时偷懒只作了10个)的金、木、人口、最大人口,但是这些数据是相关的:对于同一个人而言,偏移地址是这样的:
    金      0x 0
    木      0x 80
    最大人口   0x180
    当前人口   0x200

  不出意外的话,这是我最后一次更新这个修改器了。因为基本上能想到的东西都已经写了。

9 条评论:

Unknown 说...

你这个人有毛病,核心功能没什么差别的修改器做了4个版本,不同之处只有外观和修改的偏移量…………我不跟你说话!!

[tc]天驰 说...

可以修改的东西越来越多了。

Unknown 说...

没看出有什么不同。

[tc]天驰 说...

每次改的东西都不一样。比如V4版可以改的东西比V3版多出一倍。

Unknown 说...

就这点不同?程序上不是一样的吗。
这样是不足以成为新的一代的。

[tc]天驰 说...

你的意思我应该写:
V0.01、V0.02、V0.03、V0.04……?

Unknown 说...

就是这样!!
你终于明白了!
或者xxx
xxx.改

Unknown 说...

为什么要执著于窗口模式?
偶的cnc2就是在全屏下调得。

[tc]天驰 说...

感觉比较方便,切换速度很快。