黃易群俠傳M脫機外掛應用程式黃易神行
54005
106

[討論] 用CE找完美基址操作與提問(一)之反推與結論

bayno0928 發表於 2008-7-4 02:16:34 | 只看該作者 回帖獎勵 |倒序瀏覽 |
針對早上做的完美當前血量基址搜索做了一個反推實驗。

1.首先打開遊戲和CE,用CE附加完美主程序 elementclient.exe

2.點按CE中右方 "手動添加位址"


3.將早上搜尋到最後沒有偏移值的位址 0092A4B4 在位址欄填上,按確定。


4.我們可以在CE下方位址列表中發現,我們添加的位址 0092A4B4 中存放了一個十進制的數值 9612048


5.我們在數值 9612048上按右鍵,選擇顯示為十六進制。


6.該數值轉為十六進制後為 0092AB10(數值前0x表示為十六進制)0092AB10 是不是感覺很熟析,沒錯就是早上找到最後一個有偏移值 1C 的位址。


7.接下來我們再按 "手動添加位址",位址欄輸入 0092AB10 + 1C(偏移值) = 0092AB2C(十六進制加法,不會不要問我喔QQ),按確定。


8.我們可以看到位址 0092AB2C 中放了一個十進制數值 56120864。


9.一樣將它顯示為十六進制 = 03585620


10.再按 "手動添加位址" ,這次我們在位址欄輸入 03585620 + 20(早上找到的第2個偏移值) = 03585640,然後按確定。


11.在位址 03585640 中,一樣存放著一個十進制數值 91955216


12.將數值 91955216 顯示為十六進制 = 057B2010


13.再按一次 "手動添加位址" ,位址欄輸入 057B2010 + 450(早上找到的第一個偏移值) = 057B2460 ,按下確定


14.這個位址應該就是存放我們目前血量的位址了。(驚!!!!!!!怎麼不是我們早上的血量 75 ?,而是 105 ?? 因為~~~晚上在做反推的時候,遊戲中有個人跟我組隊,我跟他解釋我在忙,他還是要跟我組,他在我旁邊打怪,我的測試人物吸了經驗值,升級了= =",所以當前血量變成 105)


從 efun大大 和 dece大大 的回覆,以及這個反推實驗得到:

1.如果要說完美的基址,應該為 0092A4B4 ,因在搜索各項數值的過程中會發現,找到最後都是這個位址。

2. 0092A4B4 此位址中,放了一個"固定"數值 0092AB10 (你關掉遊戲再開,還是放這個數值,除非改版才可能改變)。

3. 0092AB10 + 1C(一個"固定"的偏移值) = 0092AB2C ,因為位址 0092AB10 是"固定"的,偏移值 1C 也是"固定"的,所以有人會認為 0092AB2C 為基址,或 0092AB10 為基址(很多外掛程式碼的寫法也是這樣認為)。

4. 0092AB2C 這個位址裡面放了一個"不固定"的數值 03585620 (以十六進制顯示的話),遊戲重開這個數值就可能會改變。

5. 03585620 + 20 (一個"固定"的偏移值) = 03585640 (如果以 efun大大的著作來看,此偏移值是用來區分存放人物資料[20]或環境資料[08]的)

6. 03585640 這個位址裡面也放了一個"不固定"的數值 057B2010 (十六進制),遊戲重開這個數值就可能改變。

7. 057B2010 + 450 (一個"固定"的偏移值) = 057B2460 ( 450 這個偏移值,就是為了指向遊戲人物的當前血量)

8. 位址 057B2460 中存放的數值就是人物當前血量。

9.以上固定以及不固定的定義是,如果遊戲沒有改版,程式沒有改寫的情況下,你重新啟動遊戲會不會改變數值來定義。

結論:
1.完美世界的基址為 0092A4B4
2.有些外掛的程式碼寫法會將 0092AB10 或 0092AB2C 當成基址是因為,除非遊戲程式改寫(改版),不然 0092AB10 和偏移值 1C 是不會變動的
3.偏移值 20 是為了指向人物資料存放的位址( 08 指向環境資料,還未查證)
4.偏移值 450 是為了指向人物資料中當前血量的位址


遊戲(以下說明稱為程式)寫入人物當前血量到記憶體後,讀出顯示在遊戲畫面的流程:
程式從遠端資料庫讀出人物當前血量(例如 75 ) ->
程式讀取記憶體位址 0092A4B4 中的數值(目前版本固定為 0092AB10) ->
程式讀取記憶體位址 (0092AB10 + 1C) 中的數值 X (目前版本 X 為一個不固定的數值,每次重啟都會變化) ->
程式讀取記憶體位址 (X + 20) 中的數值 Y (目前版本 Y 為一個不固定的數值,每次重啟都會變化) ->
程式將人物當前血量(例如75)寫入記憶體位址 Y + 450 ->
程式讀取記憶體位址 Y + 450 的數值(例如 75 )顯示在遊戲畫面上(結束)
(流程看起來複雜,其實在程式的運算上是一瞬間的)

P.S 以上為 小菜鳥 我自己的認知,如有謬誤希望大大能提出指正,讓 小菜鳥 我能即時更正,以免誤導他人QQ

菜味很重的小菜鳥 敬上

[ 本帖最後由 bayno0928 於 2008-7-4 02:37 編輯 ]

評分

!number_of_participants! 1經驗 +10 論壇幣 +20 收起 理由
小荷才露尖尖角 + 10 + 20 我很贊同

查看全部評分

收藏收藏 分享分享 讚1 幹 分享分享 FB分享
回覆

使用道具 舉報


dece 當前離線
UID
833464
熱心
745 值
嘉獎
1 次
違規
0 次
在線時間
1268 小時
經驗
790 點
積分
170276
精華
0
最後登錄
2014-3-12
閱讀權限
55
註冊時間
2008-4-21
論壇幣
167368 幣
聯合幣
2 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 5Rank: 5Rank: 5
dece 2008-7-4 09:23:28
寫的真好~~給你拍拍手~~yociexp196.gif
我的研究精神沒有你好~~~
回覆

使用道具 舉報

felix578095 當前離線
UID
635856
熱心
732 值
嘉獎
0 次
違規
0 次
在線時間
434 小時
經驗
697 點
積分
5607
精華
0
最後登錄
2018-8-6
閱讀權限
50
註冊時間
2007-11-10
論壇幣
3664 幣
聯合幣
69 枚
幸運鑽
0 顆
招待卷
50000 點
查看詳細資料
Rank: 6Rank: 6
felix578095 2008-7-4 09:48:48
寫的真好   反向推論  恩  實用喔
回覆

使用道具 舉報

hondon 當前離線
UID
790621
熱心
267 值
嘉獎
1 次
違規
0 次
在線時間
266 小時
經驗
306 點
積分
0
精華
1
最後登錄
2016-11-26
閱讀權限
2
註冊時間
2008-3-14
論壇幣
2758 幣
聯合幣
12 枚
幸運鑽
0 顆
招待卷
4900 點
查看詳細資料
hondon 2008-7-4 10:30:25
完全正確
樓主說的非常的正確
我也是這樣子找出來的呦..
yociexp102.gif
回覆

使用道具 舉報

zaba 當前離線
UID
911870
熱心
167 值
嘉獎
0 次
違規
0 次
在線時間
88 小時
經驗
167 點
積分
167
精華
0
最後登錄
2010-11-20
閱讀權限
20
註冊時間
2008-6-30
論壇幣
312 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 2Rank: 2
5
zaba 2008-7-4 13:50:14
恩 看起來是這樣也沒錯 可惜的是沒辦法自己在客戶端修改資料 還是得從伺服器端讀取
回覆

使用道具 舉報

poschfang 當前離線
UID
114524
熱心
83 值
嘉獎
0 次
違規
0 次
在線時間
60 小時
經驗
98 點
積分
98
精華
0
最後登錄
2010-8-15
閱讀權限
20
註冊時間
2006-12-12
論壇幣
181 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 2Rank: 2
6
poschfang 2008-7-4 16:33:37
解釋得非常詳細呢
謝謝大大的這篇解說囉
看起來應該是沒錯才對~~因為我照著efun大大的code來看,大致上也是這樣
目前朝向抓怪物相關屬性研究中...不過已經快死心了yociexp195.gif
回覆

使用道具 舉報

eone9 當前離線
UID
884164
熱心
53 值
嘉獎
0 次
違規
0 次
在線時間
35 小時
經驗
47 點
積分
207
精華
0
最後登錄
2017-10-8
閱讀權限
25
註冊時間
2008-6-10
論壇幣
74 幣
聯合幣
3 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 3
7
eone9 2008-7-4 16:52:26
寫的真好~~給你拍拍手~~ 我目前還在研究怎麼用~~~yociexp194.gif yociexp194.gif
回覆

使用道具 舉報

QOO7 當前離線
UID
844332
熱心
48 值
嘉獎
0 次
違規
0 次
在線時間
38 小時
經驗
48 點
積分
48
精華
0
最後登錄
2010-8-17
閱讀權限
20
註冊時間
2008-5-2
論壇幣
60 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 2Rank: 2
8
QOO7 2008-7-9 00:01:15
樓主大大
我想做個寵物自動加血的
可以幫忙找妖精寵物的當前血量的偏移?
我的CE每次找到第2層就跳出
拜託拜託..yociexp145.gif
回覆

使用道具 舉報

sunglin 當前離線
UID
840134
熱心
320 值
嘉獎
0 次
違規
0 次
在線時間
213 小時
經驗
259 點
積分
1388
精華
0
最後登錄
2018-8-6
閱讀權限
30
註冊時間
2008-4-27
論壇幣
518 幣
聯合幣
75 枚
幸運鑽
0 顆
招待卷
3299 點
查看詳細資料
Rank: 4Rank: 4
9
sunglin 2008-7-9 03:04:42
高手
學之有成
讓小弟拜讀一下
回覆

使用道具 舉報

a5200219 當前離線
UID
923435
熱心
85 值
嘉獎
0 次
違規
0 次
在線時間
31 小時
經驗
75 點
積分
338
精華
0
最後登錄
2018-8-6
閱讀權限
25
註冊時間
2008-7-8
論壇幣
140 幣
聯合幣
6 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 3
10
a5200219 2008-7-9 04:56:43
感謝大大無私的分享

讓小弟對CE有嚕更進一部的了解
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊


手機版 | Archiver | 外掛聯合國

GMT+8, 2024-11-22 06:13 , Processed in 0.066497 second(s), 16 queries , Memcache On.

版權說明:
  本站不會製作、經銷、代理外掛程式。僅免費提供外掛程式下載前之掃毒及掃木馬等安全檢測驗證,協助會員遠離盜號危險程式。本站所有資料均來自網際網路收集整理,說明文字暨下載連結轉載自原程 式開發站。站上出現之公司名稱、遊戲名稱、程式等,商標及著作權,均歸各公司及程式原創所有,本站程式所有權歸外掛聯合國所有。本程式所有權歸外掛聯合國所有.......

回頂部
第二步?
第三步?