資源描述:
《網(wǎng)頁游戲外掛制作》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、教你網(wǎng)頁游戲外掛制作網(wǎng)頁游戲外掛制作和網(wǎng)絡(luò)游戲外掛是一樣的,那么讓我了解一下如何進(jìn)行網(wǎng)頁游戲外掛制作。一、先說一下寫一個(gè)網(wǎng)頁游戲外掛制作需要什么條件1、熟練的C語言知識(shí)目前的外掛大部分都是用BC或者是vc寫的,擁有熟練的C語言知識(shí)是寫外掛的基本條件2、具有很強(qiáng)的匯編基礎(chǔ)一般游戲都不可能有原代碼的,必須靠反匯編或者跟蹤的辦法來探索其中的機(jī)理,所以有強(qiáng)的匯編基礎(chǔ)也是必不可少的條件3、熟練掌握跟蹤和調(diào)試的工具有了上面2個(gè)條件后,掌握一些工具也是很有必要的跟蹤的工具,softice當(dāng)然是不二之選,至于反匯編的工具,我推薦用IDAPRO
2、這個(gè)工具反匯編出來的代碼結(jié)構(gòu)清晰,非常好讀如果你不具有上面的條件,還是先把基礎(chǔ)打好,再來寫外掛吧,一分耕耘,一分收獲,天下沒有白掉的餡餅的二、寫外掛面臨的基本技術(shù)問題1、修改進(jìn)程的執(zhí)行代碼要修改進(jìn)程的執(zhí)行代碼,要先取得進(jìn)程的ID,如果是由外掛程序啟動(dòng),返回值里就有進(jìn)程ID,如果不是的話,需要用findwindow找到窗口句柄,再用GetWindowProcessID取得進(jìn)程ID,取得進(jìn)程ID以后,就可以用writeprocessmemory來修改進(jìn)程的執(zhí)行代碼了,使程序按照我們的意愿來執(zhí)行,石器外掛里的不遇敵、寸步遇敵就是用這
3、樣的方法來實(shí)現(xiàn)的2、截獲外掛發(fā)送和接收的封包除了通過修改代碼來實(shí)現(xiàn)的功能以外,很多的功能都是通過修改封包來實(shí)現(xiàn)的,要修改封包,首先要能截獲它。第一步是要跟蹤出發(fā)和收的位置,至于怎么跟蹤,我以后會(huì)提到,找到位置以后,有個(gè)辦法,一是在那個(gè)位置加一2個(gè)jmp語句,跳到你的處理函數(shù)位置,處理完后,再跳回來,這種方法要求比較高,需要處理好很多事情,另一種辦法是往那個(gè)位置寫條能造成例外的指令,比如int3,然后用DebugActiveProcess調(diào)試游戲進(jìn)程,這樣每當(dāng)游戲執(zhí)行到那個(gè)位置的時(shí)候,就會(huì)停下來,到外掛程序里面去,等
4、外掛程序處理完以后,用ContinueDebugEvent繼續(xù)運(yùn)行程序。今天先寫這么多,下回將討論外掛的具體功能該怎么實(shí)現(xiàn)今天來談?wù)劸W(wǎng)頁游戲外掛制作中地址的調(diào)查問題,地址調(diào)查是寫外掛中最艱辛,最富有挑戰(zhàn)性的事情,很多朋友問我要外掛的原程序,其實(shí)有了外掛原程序,如果你不會(huì)調(diào)查地址,還是沒用的,原程序和地址的關(guān)系就象武學(xué)中招式與內(nèi)功的關(guān)系,沒有內(nèi)功的招式,只是一個(gè)花架子。而內(nèi)功精深以后,任何普通的招式,都有可能化腐朽為神奇,外掛中的地址分為兩類,一類是程序地址,一類是數(shù)據(jù)地址。象石器中的雙石器,真彩,不遇敵,寸步遇敵,發(fā)送接收封包
5、等,都屬于第一類,而人物坐標(biāo),狀態(tài)等,都屬于第二類。對(duì)于第一類地址,主要依靠softice來調(diào)查地址,對(duì)第二類地址,可以用一些游戲工具,比如fpe,gameexpert,gamemaster等來調(diào)查,我一直用gameexpert,因?yàn)槲艺也坏?000下能用的fpe,各位以前用fpe改游戲的時(shí)候,沒想過他也能用來干這個(gè)吧對(duì)于第二類數(shù)據(jù)的調(diào)查方法,大部分人都很熟習(xí)了,我就不多說了,現(xiàn)在主要來談?wù)劦谝活悢?shù)據(jù)的詳細(xì)調(diào)查過程,比如我們要調(diào)查發(fā)送封包的位置,如何著手呢,客戶端往服務(wù)器要發(fā)很多封包,但最簡單的辦法莫過從說話的封包入手,先說一
6、句很長的話,最好是英文,查起來方便,說完以后,用任意一種辦法進(jìn)入游戲程序的進(jìn)程空間(比如先用spy查出游戲程序的窗口句柄,再切換到softice打入bmsg窗口句柄wm_lbuttondown,這樣在游戲程序中一點(diǎn)鼠標(biāo)就進(jìn)入了他的進(jìn)程空間)然后用s命令查出這句話所放的內(nèi)存地址,記下這個(gè)地址,在softice中打入bpm剛才調(diào)查到的地址,這個(gè)指令的意思是只要有訪問這個(gè)內(nèi)存的動(dòng)作,立刻中斷,然后再切換到游戲,說一句話,你會(huì)發(fā)現(xiàn)softice自動(dòng)中斷到某一個(gè)位置了,從這個(gè)位置跟蹤下去,發(fā)送封包的位置也就不遠(yuǎn)了。上面所說的都是針對(duì)一個(gè)
7、全新的游戲程序而言,如果是一個(gè)老的程序,有前輩做了大量的工作,還可以用些別的辦法,如反匯編等,來調(diào)查。以后游戲版本的更新也是如此,只要把老版本的地址位置附近的代碼記下來,去新版本的代碼里面search一下,就ok了。恩,休息一會(huì)兒,休息一會(huì)兒我主要對(duì)網(wǎng)頁游戲外掛制作的技術(shù)進(jìn)行分析,至于游戲里面的內(nèi)部結(jié)構(gòu)每個(gè)都不一樣,這里就不做講解了,我也沒有那么厲害,所有的都知道,呵呵!1首先網(wǎng)頁游戲外掛制作的原理外掛現(xiàn)在分為好多種,比如模擬鍵盤的,鼠標(biāo)的,修改數(shù)據(jù)包的,還有修改本地內(nèi)存的,但好像沒有修改服務(wù)器內(nèi)存的哦,呵呵!其實(shí)修改服務(wù)器也
8、是有辦法的,只是技術(shù)太高一般人沒有辦法入手而已!(比如請(qǐng)GM去夜總會(huì),送禮,收黑錢等等辦法都可以修改服務(wù)器數(shù)據(jù),哈哈)修改游戲無非是修改一下本地內(nèi)存的數(shù)據(jù),或者截獲api函數(shù)等等,這里我把所能想到的方法都作一個(gè)介紹,希望大家能做出很好的外掛來使游戲廠商更好的完善自己的技術(shù).我