冰楓論壇
標題:
自動解輪思路分享以及遺留問題求助
[打印本頁]
作者:
ningmeng
時間:
2021-10-7 02:31
標題:
自動解輪思路分享以及遺留問題求助
經過一周多的學習和求問,自動解輪功能基本完成,我先講講我的思路,再拋出我的問題。中途也踩了不少坑
1. 獲得輪的XY坐標 (第一個坑就在這裡,也是後面我想問的問題)
2.瞬移到輪的坐標上去
3.獲取輪界面的方向
4.根據獲得的方向,依次按方向鍵 (這裡我遇見了第二坑,下面細講)
在按方向鍵時,我有兩種選擇:
1. 用彙編寫,在遊戲裡調用call,來按方向鍵。這種方法我嘗試了,不知道我寫得是不是有錯,在輸入方向鍵時,遊戲可能會崩潰,我先貼代碼
right_jmp:
pushad
call right_call
popad
right_call:
mov esi,[041F90BC]
mov ecx,[esi+00000100]
push 00
push 27
mov eax,[ecx]
call dword ptr [eax+4]
ret
實在不知道為什麼,應該是我的寫法有問題,大大們可以告訴我哪裡寫錯了
2.用高級語言寫,用postMessage發送消息,這就意味著我需要將方向的數據拿到手裡,而不是在遊戲裡了,這裡我花了1天的時間去嘗試alloc的各種winApi,然後終於將數據拿到手了。
至此,初略的自動解輪功能已經完成,我上遊戲已試,沒啥問題。
但是問題隨之而來,我解了輪,但輪的pointer的xy以及type並不為0,或者我進入另一個有輪的地圖,我還在不斷重複以上操作。 。 。 。 。 。 。 。 。 。
所以我想請問各位大大,我如何獲得右上角buff欄的那個輪的pointer,我需要拿它再做一次判斷,這個功能才算完成,求各位大大幫幫忙,不然這個功能只算個半成品。
我懷著學習和交流的態度,絕不會以此謀利。
作者:
rhg59321
時間:
2021-10-7 03:52
按鍵call是createthread調用的? 如果是的話換成遊戲內會一直執行到的位址調用試試看
或者改成這樣試試看
right_call:
mov esi,[041F90BC]
test esi,esi
je right_call_Exit
mov ecx,[esi+00000100]
test ecx,ecx
je right_call_Exit
push 00
push 27
mov eax,[ecx]
call dword ptr [eax+4]
right_call_Exit:
ret
作者:
xlChen
時間:
2021-10-7 09:31
用一个计时器啊,解轮成功倒计时15分钟不去执行解轮判断了。
作者:
ke90927
時間:
2021-10-7 13:09
你干嘛非得要用数据呢!
直接获取坐标 → 瞬移坐标 → 程序写个按键【空格】采集 → 读取方向界面 → 判读方向界面直接写按键
非要折腾数据,累不累!!
用后台按键消息数据,然后程序读取指针判断按键不就可以了!
作者:
lgf328
時間:
2021-10-7 13:55
在这个地方,个个都是大佬
作者:
ningmeng
時間:
2021-10-7 15:15
ke90927 發表於 2021-10-7 13:09
你干嘛非得要用数据呢!
直接获取坐标 → 瞬移坐标 → 程序写个按键【空格】采集 → 读取方向界面 → 判读 ...
我现在实现的方式就是你说的这样,一小部分数据加我自己写的程序来做按键的工作,但我还需要一个判断条件,自身是否有轮来判断我是否去解轮,不然的话,这样会有我解了轮,来人换线后,另一条线有轮,我不断地去解,但又解不掉的bug
作者:
ke90927
時間:
2021-10-8 15:12
读取人物BUFF状态,有指针的!去动态搜索
作者:
aa4763198
時間:
2021-10-12 01:36
本帖最後由 aa4763198 於 2021-10-12 01:38 編輯
有個當前人物狀態是否存在輪buff的地址,可用作判斷。
歡迎光臨 冰楓論壇 (https://bingfong.com/)
Powered by 冰楓