顯示具有 WOW 標籤的文章。 顯示所有文章
顯示具有 WOW 標籤的文章。 顯示所有文章

2008年5月16日 星期五

魔獸 2.4.2 patch 出爐

等了好久終於改版了

這段時間比較沒空玩 game ( 也有點懶 )

趁著更新完的空檔搜尋了一下程式碼 , 沒想到很容易就找到位置了 ( 可見改版的幅度不大 )

隨手找了兩個較常用的修改:

2.4.2 爬山:

offset: 005fbd1c
0f 85 47 01 00 00 -> e9 48 01 00 00 90

2.4.2 空照:
offset: 0068bfba
75 -> eb

直接修改記憶體內容可以使用 Cheat Engine , 參考 http://unknowlab.blogspot.com/2008/04/cheat-engine.html

2008年4月26日 星期六

魔獸世界 Debug Console 模式

首先 , 在 cmd 命令列模式中輸入 wow -console (要在 wow 安裝目錄下)


執行 wow 時登入角色後就可以按下 " ~ " 鍵 , 把 console 視窗叫出來...

此時輸入 help , 則會顯示可以使用的命令項目 ( 黃色字的 )



輸入 help [黃色字] , 則會顯示黃色字項目底下可以使用的細項

例如 :

1. 輸入 help console , 則會顯示 console 所有可以執行的命令項目 ... (看到 consolelines 命令)

2. 接著我再輸入 consolelines 70 , 就可以把 console 視窗的大小增加為 70 行 (變大)



另外一個例子 , 輸入 heapusage 取得遊戲中各物件的大小 (這些資訊對外掛程式師來說很有幫助)



其中的 CGPlayer_C 就是玩家角色的物件...

很多命令都可以自行去玩看看...

2008年4月12日 星期六

Cheat Engine 使用設定

對於遊戲修改界來說 Cheat Engine 是目前最熱門的修改工具

但是如果想要拿 CE 來修改魔獸,可就要特別注意...

因為B社在魔獸程式中加入了個叫 Warden 的東東,來對遊戲程式進行保護...

如果傻傻的直接執行 CE ,就會產生下面的結果:



這就是 Warden 無所不在的證明啊 !!...

但是 CE 也不是簡單角色 , 只要有設定好 , Warden 也是拿他沒辦法的...

設定方式如下

1. 按下 Cheat Engine 程式右上角圖示下方的 "Settings" 鍵:


2. 出現 "Cheat Engine settings" 設定頁,選擇 "Extra" 標籤頁,勾選 "Stealth Mode(Usermode)" 項目,然後按下 "OK" 離開即可


此時再執行魔獸程式時,就可以騙過 Warden 程式的檢查了..



PS:

這只是暫時閃過 Warden 各種保護檢查的其中一項而已,Warden 還是有在正常運作中,所以打算惡搞的人請自己小心...

神奇的 WOWINFINITY

上一篇有介紹一個 觀賞模式 影片,原來出處就是來自這邊 WOWINFINITY

這東東是一個遊戲外掛,當然也是要付費的($24.95USD/年)

這東東可以讓你做到以下功能:

穿牆
碰撞
追蹤任何東西
無重力跳躍
可控制的超級緩降
攀爬
飄浮
穿牆傳送
空中傳送
飛行穿越
安全降落
設定時間
設定時間速度
空中漫步
移動/刪除任何物件
攝影機鏡頭控制
角色透明度/大小控制

直接看示範的影片比較快....



魔獸世界之空間設計師? (這也是 WOWINFINITY 功能之一)



魔獸影片賞析: 飛行模式 及 觀賞模式

帶大家來看看國外的高手們,玩到甚麼樣的程度....


飛行模式

應該是透過修改角色的移動狀態,並且攔截 PacketSend(),修改封包以達到這樣的效果...

推測:

1. 將用戶端的移動狀態改成漂浮在空中的狀態
2. 攔截用戶端送出至伺服器端的資料封包,將飄浮狀態改成正常的移動狀態(以避開伺服器端的檢查)
3. 由於伺服器端收到為正常且合理的資料封包,通過檢查後傳回至用戶端執行 (因此沒有斷線)




觀賞模式

這個修改實在很屌,可以切換成自由觀賞模式,打個戰場好像在看記錄片一樣,這可以做成很多應用啊...

推測:

應該是修改視角攝影機的坐標,原本的攝影機應該只能繞在角色周圍,但他做了任意移動的修改所以就可以自然運鏡....真是太夢幻了,我也想要來研究一下...

2008年4月11日 星期五

二點四點一測試檔


先前測試的幾個功能整合在一個執行檔中

請至便當狗下載 (8782204)

純粹測試用,怕病毒怕木馬怕被盜帳號的就不要冒險了

也不建議在自己的帳號下使用
建議去申請個測試帳號來玩吧,不用錢又可以玩的很愉快 ...
更不用怕被鎖帳號!!


警告!!!!
任何修改遊戲的行為都違反遊戲中的使用者條款!!
保證一定會被 warden 偵測到並被停權!!
本文只是提供個人的測試心得分享,
若因而造成任何損失或傷害一概與本人無關!!

2008年4月9日 星期三

如何反制 Warden ?

先來看看幾個名詞

Inner Space

ISXWarden

ISXWoW




Inner Space

是個支援 DirectX 的遊戲工具,他的定位是在於作業系統跟遊戲中間的一種像是橋樑的東西,

由於他跟系統核心緊密結合在一起,因此他能對應用程式(遊戲)達到完全的掌控 (我猜應該就是一種 hook 技術,像 rootkit一樣)

也因此,這種東東若想要避開遊戲中的 Warden 檢查,根本就是殺雞用牛刀,跟吃飯一樣...


ISXWarden

這東東是 Inner Space 的擴充組件,主要用途就是用來抑制 Wow Warden 對於外掛程式,用戶端程式存取/修改的各種檢查

由於 wow 常常會更新(目前版本為 2.4.1) , 因此 ISXWarden 就必需要緊跟著 WoW 的腳步,推出同一版本的 ISXWarden

由於程式開發時每次 Build 出來的執行檔都不會一樣,因此許多原本已經偵測出來的 Warden 檢查方式或位址就會跟著不一樣

所以就要等 ISXWarden 也跟著出相同的版本才能正常運作...


ISXWoW

這東東也是 Inner Space 的擴充組件,主要的用途是在增加 WOW 的特殊功能開發

如果你是個程式師,想想你可以用 .NET 來開發 WOW 相關的程式,只要直接使用 ISXWoW 的物件就好,真是快速又方便... ( 與 ISXWarden 相同,必需要跟著 WOW 的版本去更新才能夠正常使用 )


以他的範例程式來說

只要使用以下一行程式碼,就可以開始使用 ISXWoW 物件內的很多東西...

" ISXWoW.ISXWoW isxwow = new ISXWoW.ISXWoW(); "



接下來在程式中使用以下兩行程式碼,就可以取得遊戲中角色物件的名稱

"string myName = isxwow.Me.Name;"
"MessageBox.Show(myName);"

即然可以取得角色名稱,當然也可以取得角色相關的屬性,例如 MP ....
"int myMana = isxwow.Me.Mana;"
"MessageBox.Show(myMana.ToString());"

或是直接輸出屬性數值
"MessageBox.Show("My Mana Is: "+myMana.ToString());"



就這樣果然很簡單吧,當然這只是最簡單的示範...

要開發自己的修改外掛甚至是各種用途的 Bot , 這都是目前 ISXWoW 較主流的應用...

看了一些他的範例,他甚至可以直接去呼叫 WoW 本身的 API

用傳統的外掛工具大概只能模擬送出一堆鍵盤滑鼠訊息來去操控角色而已吧...

這東東對於會寫程式的人來說應該很有殺傷力...但是天下沒有白吃的午餐...

ISXWarden 是免費的

ISXWoW 也是免費的

Inner Space 只給 Gameing Tools Pro 的訂購會員使用...

Gameing Tools Pro 是一個線上論壇,

入會的費用是 90 天/USD$10 , 一年/US$36 元...

看到這裡我就冷掉了,看的到吃不到果然是很令人沮喪....

算了先來去吃晚飯先...

有好心人士願意贊助我或分享 Gameing Tools Pro 會員帳號的話請留言

我會邀請你當我的一號白老鼠,提供我自己開發出來的各式玩具讓你測試 (被 BAN 不負責!)

2008年4月7日 星期一

魔獸 2.4.1 距離修改

首先跟大家介紹幾個關於戰鬥的系統參數命令

PVP玩家的戰鬥訊息探測距離加大到49碼:
/console SET CombatLogRangeHostilePlayers "49"

怪物的戰鬥訊息探測距離加大到49碼:
/console SET CombatLogRangeCreature "49"

將TAB選擇敵對目標的距離加大到49碼:
/console SET targetNearestDistance "49"

將TAB選擇身後敵對目標的距離加大到49碼:
/console SET targetNearestDistanceRadius "49"


使用方式很簡單,登入角色後在交談列輸入以上命令即可 ( 可以設成巨集 )

註1: 每次登入時都要輸入一次
註2: 距離的上限為 50 ft(碼) , 輸入數值超過的話不會有作用...

這幾個參數設定指令,對於PVP伺服器環境或是常打競技場,戰場的玩家,應該是蠻實用的...

因為TAB選怪的距離拉大的話,遠遠的就可以用TAB鍵點選到對方,早一步先選到應該想要的目標

而戰鬥訊息探測距離拉大的話,對於想要找敵人報仇或是想找練功的人來補刀的玩家來說,更是如魚得水

另外在出RAID時,由於某些BossMod UI必需要聽到王的戰鬥訊息才能夠做出回應,站太後面跟王距離較遠的玩家可能就無法正常作用,此時把戰鬥訊息探測距離拉長對於PVE也是有蠻大的幫助...

但因為系統本身有設定數值上限,來確保遊戲執行的公平性,所以還是無法達到"只有我可以遠遠點到別人,別人別想遠遠點到我"的優越感...


但以下這個修改,可以突破系統的上限,將距離再增加50碼,達到99碼(50+49),保證比正常人看的更遠...


修改位址 原本的程式碼

0054fech ret 0004

修改成

mov byte ptr[edi],39
ret 0004


註1: 登入角色後再進行修改
註2: 修改後需要再執行一次上述四個系統參數命令,使修改過的程式碼生效
註3: 若直接修改記憶體,修改內容如下:

Hex Edit:

0054fecf c2,04,00,cc,cc,cc -> c6,07,39,c2,04,00

2008年4月2日 星期三

魔獸 2.4 獵人追蹤 patch

for WOW 2.4


獵人追蹤第一個位址: [00E7D9E0]+0x3AD0

填入內容
Nothing: 0
Beasts: 1
Dragonkin: 2
Demons: 4
Elementals: 8
Giants: 16
Undead: 32
Humanoids: 64
Misc: 132
Everything: 255

獵人追蹤第二個位址: [00E7D9E0]+0x3AD1

填入內容
Machines: 1
Slimes: 2

草/礦/寶箱追蹤: [00E7D9E0]+0x3AD4


修改技巧

我個人是比較不愛直接去修改存放數值的記憶體位址,因為這樣將來若改版的話要追出新的位址比較困難,因此我偏好直接去改程式碼,由其是判斷數值的地方,這樣也可以閃過記憶體數值的檢查(Check SUM之類的)陷阱

首先在 [00E7D9E0]+0x3AD0 填入FF(255),然後在這位置設定個中斷點

然後找到 005a4206 mov eax,[eax+000010e0] 這行程式碼會去存取上面那個記憶體位址

向下追了幾行程式發現他 ret 回上一個副程式段:

005a8bdc call 005a41e0 <--- 上面那行的程式碼,返回時 EAX 存的內容為 FF
005a8be1 lea ecx,[esi-01]
....
005a8bed test eax,edx <--- 測試那個位址存的資料,符合就會顯示出來

edx 內存的應該是要顯示的類別,由於我們填入 FF , 因此所有的類別測試後都會成立,因而通通都顯示

此時只要將這行程式碼改成 test edx,edx , 就可以達到相同的效果,無論 eax 取得的數值為何 , 測試結果都會成立,所以不需要再去那個記憶體位址中填入任何數值,直接 bypass 掉檢查的程式碼讓我們把要顯示的東西顯示出來

這樣做的好處是

1. 不修改使用者資料區 , 以避免被 warden 發現
2. 直接修改程式碼可以避開較多的未知陷阱
3. patch 後要轉移到新版上較為容易
4. 練功,訓練自己反組譯的能力

這樣做要注意的地方是 wow 在載入時會對自己的程式碼做檢查,如果發現被修改過,會顯示檔案損毀而不讓你執行,這時必需要結束 wow 程式,重新再載入未修改過程式碼的 wow 程式...

因此最好將此 patch 寫成像 Trainer 的外掛執行檔,登入遊戲後再切換至 Trainer 把 patch 啟動,當不需要時可以還原回來 (on/off 切換)由於是自己寫的程式執行檔,wow 內建的 warden 想要從 process 名稱去判斷是否為外掛也會有困難

測試畫面 :


魔獸 2.4.1 patch 出爐

台版今天沒有更新到 2.4.1 所以也無從測試

原文連結在此


Speedhack Forwards:
[00E849E0]+0xC70

Speedhack Backwards:
[00E849E0]+0xC74

Speedhack Swimming:
[00E849E0]+0xC78

Speedhack Flying:
[00E849E0]+0xC80

X Coord:
[00E849E0]+0xBF4

Y Coord:
[00E849E0]+0xBF0

Z Coord:
[00E849E0]+0xBF8

Facing Direction:
[00E849E0]+0xBFC

Movement State:
[00E849E0]+0xC23

/* Not sure if the ones commented out are correct so inspect them first!! I did not update them at all.
Map ID (credits to Flos):
009230EC

Zone ID:
00DD1B98

??Something to do with zones??:
0093B2AC
*/

Tilt Forward:
[00E849E0]+0xC08

Tilt Backward:
[00E849E0]+0xC04

Weird Movement Thing: (mostly useful on P-Servers since setting to -1 or -2 results in walking up stairs)
[00E849E0]+0xC20

Minutes: (can effect the hour)
00C6FD30

Jumphack: (you may have trouble editing the address but I was successful with a debugger)
008D6080

Viewhack: (Requires asm editing. Change to an unconditional jump)
0068B93A

New Walljump Hack: (Requires asm editing. Change to an unconditional jump) (look at a wall and jump to see the effect.)
005FB75CP.S.

-You can change your movement state to walking (value 128) while flying, move some, and then switch back to your normal form to remain at that z coord and still fly! (only tested on a druid with flight form)
-Freeze the Zone ID to 4092 and you can use the Arcane Charges wherever you want, although it wont actually let you USE it.
-Change the weird movement thing to -2 and its like your walking up stairs (i think).

淺談 WOW Memory Edit

常見的遊戲記憶體修改有幾種方式

1. trainer

由hacker寫好的針對目標程式所使用的 .exe 執行檔,使用上通常蠻簡單,按個鍵就可以完成特定的功能...
由於是可執行檔,因此使用上有很大的風險,有可能會被插木馬或是病毒等等,當執行程式時,你很難知道除了修改的功能完成之外是不是也一併偷偷的幫你把電腦的大門開啟...

2. memory editor

記憶體編輯工具,通常也包含資料搜尋的功能,讓使用者可以找出想要修改的位址,有的工具也提供除錯,設定中斷點,反組譯程式碼的功能,方便分析修改,甚至可以幫助你產生修改外掛執行檔(Trainer)...

功能強大,但較適合進階的玩家,因為所有的修改資料都要自己從頭找起,找到後如何修改也是門學問;各大遊戲的駭客討論區較常出現的修改資訊大多也是某個較關鍵的記憶體位址,這些資訊很容易就可以讓有經驗的修改玩家直接拿來套用,由於修改資訊內容透明,因使用來修改遊戲時而遭受入侵的風險較小 ...
( 但是記憶體編輯工具也是執行檔,不排除下載回來的記憶體工具本身就包含木馬病毒 .... )

這類型的工具很多,從DOS時期的整人專家,FPE,GameIce,GameMaster,TrainerMaker,GameHack,GameWiz,TSearch...等等,目前較熱門用來修改 WOW 的工具為 Cheat Engine

3. Debug Tools

除錯器本來是用在程式開發除錯,但由於功能實在是太強大,不只修改遊戲,破解程式,安全漏洞的開發調用都需要用到他;使用上與記憶體修改工具相同的地方是,你必需要知道如何找到要修改的地方,以及如何修改,使用這樣的工具才有意義;較適合程式開發人員,瞭解組合語言及反組譯程式碼的能力,對作業系統有一定的掌握能力,才能夠輕鬆的駕馭這樣的工具...
常見的工具為 Softice,TRW2000,OllyDBG,W32DASM ...


WOW 可以使用記憶體修改 ?

這要追溯到B社早期的一個大作 Diablo , 雖然他是單機遊戲,但他提供了 Battle.net 連線功能
而且在遊戲中並未完整的保護好玩家角色資料,因此只要直接修改記憶體,各種神奇的能力就出來了..
地圖全開,無敵,單擊百萬傷害,穿牆,城鎮內殺人,那段時期我們稱之為史上最大作弊戰爭...

若干年後的 WOW , B社當然不會允許這樣的情況發生,因此加入了相當多的檢查機制,來防止遊戲中的作弊行為一般稱之為 warden , 傳言這東東會在不明的時間點進行檢查,行程中是否有在黑名單上的"工具程式"進駐,
在玩家電腦中的程式碼,遊戲數據資料是否有異常的變動...等等,一旦發現了有違反他檢查原則的地方,就自動切斷與伺服器的連線,並停用帳號...

但我個人惡搞研究後的心得是, warden 比較可能是建立在伺服器端,當玩家直接修改了本機記憶體內的數值後,一但數值傳到伺服器端,馬上就現出原形,立刻斷線,並被列入班(BAN)的好友名單之中...

但是如果是在私服上使用同樣的修改,你改到翻過去也不會被斷線,因此我一直認為這些檢查機制是在伺服器端做的...

但就是表示記 WOW 的記憶體是完全不能修改? 答案是不一定...

如果只是單純的讀取記憶體中的數值資料,我想應該是不會有問題 , 但是如果要修改數值資料 , 這時可分成兩個部份..

1. 極為敏感的數據資料 (層層保護) : 像是玩家角色的屬性數值,錢,生命,法力,傷害...等等

其實玩家的真正資料應該是要存在伺服器上才對,所以修改玩家本機電腦上的數值,一旦送出去伺服器端,一比對就會有出入...這部份的運算我認為應該也是在伺服器端,使用者端電腦內的數值只是方便即時運算使用,直接修改可能不會有效果...(另一種說法是運算還是在使用者端的電腦上,只是傳輸出去的數值會包含檢查標記,只有正確且合法的數值伺服器才會採用)

2. 較不敏感的數據資料(不被保護),例如像是使用者端的顯示設定,不同陣營語言設定...

這一類型的資料純粹為使用者端這邊使用,所以不需要再傳回到伺服器端,所以理論上你怎麼修改,伺服器端都不會知道但前提是數值應該要在合理範圍內,這邊用戶端程式應該會去做控管及檢查,所以如果要修改這類型的數值,有可能還要一併修改檢查的程式碼,把他的查驗機制拿掉,如此才能夠正確的修改 (範例: 空照 , 敵對陣營說話的內容 ...等等)


好吧,不能隨意修改的 WOW 記憶體我們可能拿來幹嘛? 讀取那些狀態數值可以做甚?...

答案就是開發自動外掛機器人(BOT)

目前常見的幾款 WOW 自動外掛機器人本身都內建存取 WOW 記憶體的能力...

因為像角色所有的資料都存在記憶體中,BOT可以先從記憶體中取得角色的 x,y,z 座標,然後送出 "Tab" 鍵給遊戲程式讓角色來選取最近的怪物(TARGET), 此時BOT再去記憶體中取得目標怪物的坐標位置,就可以操控角色移動到怪物的位置去打怪了...

除了自動種田,自動釣魚,自動拍賣等等各種應用都可以自行開發,這也是目前較安全且有用的 memory hack 應用...

2008年4月1日 星期二

魔獸如何站在天空中?

魔獸如何站在天空中

1. 騎上飛行坐騎飛到天上

2. 輸入 /Logout

3. 點掉飛行坐騎的狀態 Buff

4. 享受 19 秒站在天空上的快感

5. 取消登出然後再重覆動作 ....

未經測試,請小心使用 ~

2008年3月31日 星期一

聽懂敵對陣營說的話

是有可能的...



魔獸 2.4 patch 測試


patch 2.4 相關位址也陸續出爐了...


可以參考以下連結

http://www.mmowned.com/forums/bots-programs/104664-code-2-4-0-wallclimb.html

http://www.mmowned.com/forums/wow-memory-editing/104889-release-wow-2-4-addresses.html


今天利用一點時間試了其中幾個 2.4 patch , 確實可以運作...

使用者資料的位址存放在 [00E7D9E0]

Offset :

[00E7D9E0]+ C70 前進的移動速度

[00E7D9E0]+ C74 後退的移動速度

[00E7D9E0]+ C78 游泳的移動速度

[00E7D9E0]+ C23 移動的狀態 ( 例: 128 為跑 , 130 為飛... )


[00E7D9E0]+BF4 X 座標

[00E7D9E0]+BF0 Y座標

[00E7D9E0]+BF8 Z坐標


89DE50 爬山修改 , 可以直接爬上任何地方 ...

範例圖片 , 從新手村直接爬山上山頂...


任何地方都可以爬上去 .....


遠眺鐵爐堡.....


警告!!!!
任何修改遊戲的行為都違反遊戲中的使用者條款!!
保證一定會被 warden 偵測到並被停權!!
本文只是提供個人的測試心得分享,
若因而造成任何損失或傷害一概與本人無關!!

2008年3月29日 星期六

魔獸的暗黑面

wow 2.4 更新了...

上班時跟兩個朋友 msn 聊到 wow 的修改 , 突然又點燃以前沉迷於修改遊戲的那種熱情....

把幾個跟 WOW xxxx 相關的網址在此做個註記

http://www.mmowned.com/forums/world-warcraft/

http://www.madx.dk/wowdev/forum/viewtopic.php?f=1&t=348

http://forum.cheatengine.org/index.php

http://www.wowwiki.com/World_of_Warcraft_API