能力值:
( LV2,RANK:10 )
|
-
-
2 楼
只要思路,看网上的教程,
|
能力值:
( LV3,RANK:20 )
|
-
-
3 楼
网上教程我都看过了 不能用过时了
|
能力值:
( LV3,RANK:20 )
|
-
-
4 楼
自己顶起自己顶起自己顶起
|
能力值:
( LV3,RANK:20 )
|
-
-
5 楼
自己顶起自己顶起自己顶起
|
能力值:
( LV3,RANK:20 )
|
-
-
6 楼
自己顶起自己顶起自己顶起
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
自己顶起自己顶起自己顶起
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
如果会找别的call其实思路都差不多。
思路1:技能 - 应该有技能ID 索引技能文字信息描述 从技能文字信息为入口,用ce检字符或数组 缩小范围定位到技能处理逻辑 - 找到关键技能call
思路2:通过游戏的数据收发机制 跟踪send 函数,(用条件过滤,保证send的是释放技能数据)看函数堆栈反推技能call ,诛仙用这个方法很好用
思路3:先分析游戏的按键,鼠标点击处理机制 顺藤摸瓜找到技能处理逻辑
一般为以上3条路 所有游戏都差不多
刚好分析暗黑3的技能 就是用思路3的方法。你可以试试手
00951850 FF15 1C8B3401 call dword ptr ds:[<&USER32.ClipCursor>] ; USER32.ClipCursor
00951856 > C705 20AA6201 0>mov dword ptr ds:[0x162AA20],0x0
00951860 > 8B75 08 mov esi,dword ptr ss:[ebp+0x8]
00951863 F606 02 test byte ptr ds:[esi],0x2
00951866 74 42 je short <Diablo_I.loc_9518AA>
00951868 8D55 F8 lea edx,dword ptr ss:[ebp-0x8]
0095186B 52 push edx
0095186C FF15 FC8A3401 call dword ptr ds:[<&USER32.GetCursorPos>; USER32.GetCursorPos
00951872 8D45 F8 lea eax,dword ptr ss:[ebp-0x8]
00951875 50 push eax
00951876 53 push ebx
00951877 FF15 F48A3401 call dword ptr ds:[<&USER32.ScreenToClie>; USER32.ScreenToClient
0095187D 8B4D F8 mov ecx,dword ptr ss:[ebp-0x8]
00951880 8B55 FC mov edx,dword ptr ss:[ebp-0x4]
00951883 8D45 F0 lea eax,dword ptr ss:[ebp-0x10]
00951886 894D F0 mov dword ptr ss:[ebp-0x10],ecx
00951889 50 push eax
0095188A 8D4D E8 lea ecx,dword ptr ss:[ebp-0x18]
0095188D 51 push ecx
0095188E 8955 F4 mov dword ptr ss:[ebp-0xC],edx
00951891 E8 9AFEFFFF call <Diablo_I.sub_951730>
00951896 8B10 mov edx,dword ptr ds:[eax]
00951898 8996 20030000 mov dword ptr ds:[esi+0x320],edx ; 获得鼠标屏幕位置 x
0095189E 8B40 04 mov eax,dword ptr ds:[eax+0x4]
009518A1 83C4 08 add esp,0x8
009518A4 8986 24030000 mov dword ptr ds:[esi+0x324],eax ; 获得鼠标屏幕位置 y
009518AA > 57 push edi
009518AB 6A 17 push 0x17
009518AD BF 01000000 mov edi,0x1
009518B2 C745 08 0200000>mov dword ptr ss:[ebp+0x8],0x2
009518B9 FF15 9C8B3401 call dword ptr ds:[<&USER32.GetSystemMet>; USER32.GetSystemMetrics
|
|
|