Programming 版 (精华区)

发信人: ffzh (★铁马冰河★), 信区: Programming
标  题: 游戏汉化教程--3 
发信站: 哈工大紫丁香 (2001年03月29日16:45:47 星期四), 站内信件

忘记说说怎么跟踪DrawChar()这个函数了。 

当然,需要前面的基础。 

  

在找到DrawString()这个函数之后,再接着找DrawChar,就是顺藤摸瓜,非常方便 

的事情。回想一下DrawString()函数中的那个for循环,一直跟进去,就能找到地 

方了。 

再向大家讲述一些精要,关于如何确定地址。 

1. 不妨修改程序,把某个函数的第一句话改成ret (或者ret xxx, 其中xxx参数是 

原来程序的返回参数,表示对esp的修改,照抄就行了,抄错了你就死定了)。看看 

是否所有的文字都消失了? 

2. 不妨修改参数,把那些成对出现的,值域在[0,640],[0,800],[0,1024](依据显 

示分辨率而定,差不多就可以了)之间的数值修改修改,看看会不会影响字符的位 

置。 

3. 在DrawChar最最内部,不再出现任何的call的地方,如果遇上内存操作指令, 

而来源/目的指针指向的地方有大量重复,有规则的内容,则非常有可能是位图。 

不妨向里面fill它一千个字节,看看屏幕变化,可能出人意料哦。 

4. 不妨……自己摸索去 

  



  

--
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: vilab.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:5.089毫秒