魔兽脚本执行点的查找方法(两个万能断点):
用ODB装载魔兽后注意Alt+B禁用断点列表里的所有断点,然后再F9运行起来。魔兽经常会检测断点直接异常退出,特别是登进游戏之前一定要注意。
1、用任意一个带参的宏脚本函数,推荐使用GetPlayerMapPosition函数
通过对wow.exe模块的Ansi字符串进行查找,并在结果中进一步查找 "GetPlayerMapPosition" 字符串。
双击(汇编窗口中跟随),找到的就是显示出错提示字符串的代码,所在函数即为GetPlayerMapPosition函数。
2、在GetPlayerMapPosition函数头处,下断点(F2键)。在魔兽中使用宏脚本:
/script localposX,posY=GetPlayerMapPosition("player") message(posX.."\n"..posY)
断入后,查看调用堆栈(Alt+K键)如图:
Script 1处的相关代码:(此处下断点在宏函数脚本执行时才会断入)
Script 2处的相关代码:(此处下断点会经常性断入)
找到这两个宏脚本入口的万能断点后,以后调试任何带参或不带的宏函数一般都可以用这种方法查找到对应的WowAPI。
杜晶 2008年著