您好,歡迎來(lái)到一站式眾包服務(wù)平臺(tái)-威客牛網(wǎng)!
當(dāng)前位置:威客牛首頁(yè) > 知識(shí)百科 > IT軟件 > 程序修改 > 游戲程序修改原理

游戲程序修改原理

2022-12-04作者:網(wǎng)友投稿
所謂游戲外掛,其實(shí)是一種游戲外輔程序,它可以協(xié)助玩家自動(dòng)產(chǎn)生游戲動(dòng)作、修改游戲網(wǎng)絡(luò)數(shù)據(jù)包以及修改游戲內(nèi)存數(shù)據(jù)等, 以實(shí)現(xiàn)玩家用最少的時(shí)間和金錢(qián)去完成功力升級(jí)和過(guò)關(guān)斬將。雖然,現(xiàn)在對(duì)游戲外掛程序的“合法”身份眾說(shuō)紛紜,在這里我不想對(duì)此發(fā)表任何個(gè)人意見(jiàn),讓時(shí)間去 說(shuō)明一切吧。以下是贏在威客網(wǎng)小編整理的游戲程序修改原理?! ?br />

不管游戲外掛程序是不是“合法”身份,但是它卻是具有一定的技術(shù)含量的,在這些小小程序中使用了許多高端技術(shù),如攔截Sock技術(shù)、攔截API技術(shù)、模擬鍵盤(pán)與鼠標(biāo)技術(shù)、直接修改程序內(nèi)存技術(shù)等等。本文將對(duì)常見(jiàn)的游戲外掛中使用的技術(shù)進(jìn)行全面剖析。   

一、認(rèn)識(shí)外掛   


游戲外掛的歷史可以追溯到單機(jī)版游戲時(shí)代,只不過(guò)當(dāng)時(shí)它使用了另一個(gè)更通俗易懂的名字??游戲修改器。它可以在游戲中追蹤鎖定游戲主人公的各項(xiàng)能力數(shù)值。這樣玩家在游戲中可以達(dá)到主角不掉血、不耗費(fèi)魔法、不消耗金錢(qián)等目的。這樣降低了游戲的難度,使得玩家更容易通關(guān)。   

隨著網(wǎng)絡(luò)游戲的時(shí)代的來(lái)臨,游戲外掛在原有的功能之上進(jìn)行了新的發(fā)展,它變得更加多種多樣,功能更加強(qiáng)大,操作更加簡(jiǎn)單,以至有些游戲的外掛已經(jīng)成為一個(gè)體系,比如《石器時(shí)代》,外掛品種達(dá)到了幾十種,自動(dòng)戰(zhàn)斗、自動(dòng)行走、自動(dòng)練級(jí)、自動(dòng)補(bǔ)血、加速、不遇敵、原地遇敵、快速增加經(jīng)驗(yàn)值、按鍵精靈……幾乎無(wú)所不包。   

游戲外掛的設(shè)計(jì)主要是針對(duì)于某個(gè)游戲開(kāi)發(fā)的,我們可以根據(jù)它針對(duì)的游戲的類(lèi)型可大致可將外掛分為兩種大類(lèi)。   

一類(lèi)是將游戲中大量繁瑣和無(wú)聊的攻擊動(dòng)作使用外掛自動(dòng)完成,以幫助玩家輕松搞定 攻擊對(duì)象并可以快速的增加玩家的經(jīng)驗(yàn)值。比如在《龍族》中有一種工作的設(shè)定,玩家的工作等級(jí)越高,就可以駕馭越好的裝備。但是增加工作等級(jí)卻不是一件有趣 的事情,毋寧說(shuō)是重復(fù)枯燥的機(jī)械勞動(dòng)。如果你想做法師用的杖,首先需要做基本工作--?砍樹(shù)??硺?shù)的方法很簡(jiǎn)單,在一棵大樹(shù)前不停的點(diǎn)鼠標(biāo)就可以了,每 10000的經(jīng)驗(yàn)升一級(jí)。這就意味著玩家要在大樹(shù)前不停的點(diǎn)擊鼠標(biāo),這種無(wú)聊的事情通過(guò)"按鍵精靈"就可以解決。外掛的"按鍵精靈"功能可以讓玩家擺脫無(wú) 趣的點(diǎn)擊鼠標(biāo)的工作。   

另一類(lèi)是由外掛程序產(chǎn)生欺騙性的網(wǎng)絡(luò)游戲封包,并將這些封包發(fā)送到網(wǎng)絡(luò)游戲服務(wù)器,利用這些虛假信息欺騙服務(wù)器進(jìn)行游戲數(shù)值的修改,達(dá)到修改角色能力數(shù)值的目的。這類(lèi)外掛程序針對(duì)性很強(qiáng),一般在設(shè)計(jì)時(shí)都是針對(duì)某個(gè)游戲某個(gè)版本來(lái)做的,因?yàn)槊總€(gè)網(wǎng)絡(luò)游戲服務(wù)器與客戶(hù)端交流的數(shù)據(jù)包各不相同,外掛程序必須要對(duì)欺騙的網(wǎng)絡(luò)游戲服務(wù)器的數(shù)據(jù)包進(jìn)行分析,才能產(chǎn)生服務(wù)器識(shí)別的數(shù)據(jù)包。這類(lèi)外掛程序也是當(dāng)前最流利的一類(lèi)游戲外掛程序。   

另外,現(xiàn)在很多外掛程序功能強(qiáng)大,不僅實(shí)現(xiàn)了自動(dòng)動(dòng)作代理和封包功能,而且還提供了對(duì)網(wǎng)絡(luò)游戲的客戶(hù)端程序的數(shù)據(jù)進(jìn)行修改,以達(dá)到欺騙網(wǎng)絡(luò)游戲服務(wù)器的目的。我相信,隨著網(wǎng)絡(luò)游戲商家的反外掛技術(shù)的進(jìn)展,游戲外掛將會(huì)產(chǎn)生更多更優(yōu)秀的技術(shù),讓我們期待著看場(chǎng)技術(shù)大戰(zhàn)吧......   

二、外掛技術(shù)綜述   

可以將開(kāi)發(fā)游戲外掛程序的過(guò)程大體上劃分為兩個(gè)部分:   

前期部分工作是對(duì)外掛的主體游戲進(jìn)行分析,不同類(lèi)型的外掛分析主體游戲的內(nèi)容也不相同。如外掛為上述談到的外掛類(lèi)型中 的第一類(lèi)時(shí),其分析過(guò)程常是針對(duì)游戲的場(chǎng)景中的攻擊對(duì)象的位置和分布情 況進(jìn)行分析,以實(shí)現(xiàn)外掛自動(dòng)進(jìn)行攻擊以及位置移動(dòng)。如外掛為外掛類(lèi)型中的第二類(lèi)時(shí),其分析過(guò)程常是針對(duì)游戲服務(wù)器與客戶(hù)端之間通訊包數(shù)據(jù)的結(jié)構(gòu)、內(nèi)容以及 加密算法的分析。因網(wǎng)絡(luò)游戲公司一般都不會(huì)公布其游戲產(chǎn)品的通訊包數(shù)據(jù)的結(jié)構(gòu)、內(nèi)容和加密算法的信息,所以對(duì)于開(kāi)發(fā)第二類(lèi)外掛成功的關(guān)鍵在于是否能正確分 析游戲包數(shù)據(jù)的結(jié)構(gòu)、內(nèi)容以及加密算法,雖然可以使用一些工具輔助分析,但是這還是一種堅(jiān)苦而復(fù)雜的工作。   

后期部分工作主要是根據(jù)前期對(duì)游戲的分析結(jié)果,使用大量的程序開(kāi)發(fā)技術(shù)編寫(xiě)外掛 程序以實(shí)現(xiàn)對(duì)游戲的控制或修改。如外掛程序?yàn)榈谝活?lèi)外掛時(shí),通常會(huì)使用到鼠標(biāo)模擬技術(shù)來(lái)實(shí)現(xiàn)游戲角色的自動(dòng)位置移動(dòng),使用鍵盤(pán)模擬技術(shù)來(lái)實(shí)現(xiàn)游戲角色的自 動(dòng)攻擊。如外掛程序?yàn)榈诙?lèi)外掛時(shí),通常會(huì)使用到擋截Sock和擋截API函數(shù)技術(shù),以擋截游戲服務(wù)器傳來(lái)的網(wǎng)絡(luò)數(shù)據(jù)包并將數(shù)據(jù)包修改后封包后傳給游戲服 務(wù)器。另外,還有許多外掛使用對(duì)游戲客戶(hù)端程序內(nèi)存數(shù)據(jù)修改技術(shù)以及游戲加速技術(shù)。   

本文主要是針對(duì)開(kāi)發(fā)游戲外掛程序后期使用的程序開(kāi)發(fā)技術(shù)進(jìn)行探討,重點(diǎn)介紹的如下幾種在游戲外掛中常使用的程序開(kāi)發(fā)技術(shù):   

動(dòng)作模擬技術(shù):主要包括鍵盤(pán)模擬技術(shù)和鼠標(biāo)模擬技術(shù)。   

封包技術(shù):主要包括擋截Sock技術(shù)和擋截API技術(shù)。

三、動(dòng)作模擬技術(shù)   

我們?cè)谇懊娼榻B過(guò),幾乎所有的游戲都有大量繁瑣和無(wú)聊的攻擊動(dòng)作以增加玩家的功力,還有那些數(shù)不完的迷宮,這些好 像已經(jīng)成為了角色游戲的代名詞?,F(xiàn)在,外掛可以幫助玩家從這些繁瑣而無(wú)聊的工作中擺脫出來(lái),專(zhuān)注于游戲情節(jié)的進(jìn)展。外掛程序?yàn)榱藢?shí)現(xiàn)自動(dòng)角色位置移動(dòng)和自 動(dòng)攻擊等功能,需要使用到鍵盤(pán)模擬技術(shù)和鼠標(biāo)模擬技術(shù)。
免費(fèi)查詢(xún)商標(biāo)注冊(cè)