第296章 道高一尺魔高一丈
遊戲測試,可不僅僅只是隨便玩一下,找找BUG什麽的,最基本的至少要有策劃測試、程序測試、可玩性測試、遊戲流程測試、壓力測試,其中策劃測試又包括遊戲平衡、職業平衡、經濟平衡等測試。
當然,一般的網遊公司並不會搞的這麽複雜,尤其是現在這個年代,大家的遊戲都是代理過來的,想的是怎麽快速撈錢,測試什麽的,讓玩家們自己試毒就好,找到問題直接甩給遊戲開發商。
但對於沸騰公司來說,這一步不能省,畢竟遊戲是自己開發的,自己有責任也有能力對遊戲軟件進行全面測試並作出相應的調整。
所以作為沸騰的第一款自製網遊《傳奇》,公司上下都非常重視,方傑下達的指示是,所有遊戲開發人員必須參與這次為期半個月的遊戲測試,順便也是給大家放放假,休息休息。
方傑自己也參與了這次遊戲測試,但他所進行的測試,顯然就不是那種常規測試了,而應該稱之為破壞性測試。
首先,他把老《傳奇》裡的所有複製BUG,對新《傳奇》也使了一遍,結果發現,這方面新《傳奇》做的很好,沒有任何問題。
其實也不是遊戲程序做的好,而是服務器端數據交換和架構做的好,從根本上杜絕了複製BUG。
老《傳奇》的複製BUG,利用的是因網絡延遲,服務器與服務器之間數據交換形成的漏洞。
這種漏洞如果在網速快、玩家少的韓國那邊,根本察覺不了,韓國遊戲開發商就沒遇到過嚴重的網絡延遲問題,但在華國這邊,網絡狀況環境差,且服務器人數爆滿的情況下,網絡延遲時有發生。
但現在沸騰有自己的IDC數據中心,服務器也是自己架構,而且是十分奢侈地采用了幾台服務器建組來運營遊戲服務器端,所謂的網絡延遲複製BUG就自動不存在了。
然後方傑又測試了刷錢BUG,暫時也沒發現什麽問題,至少老《傳奇》的那一套刷錢手段在新《傳奇》裡是無用武之地的。
畢竟遊戲策劃理念雖然是借鑒的,但遊戲程序又不是,那是旗下碼農辛辛苦苦親手碼出來的,就算出問題,也絕不會出現同類問題。
接下來就是交易BUG測試,結果發現新《傳奇》裡也出現了類似的問題,這個BUG就是遊戲程序編寫得有問題,邏輯有漏洞,但問題不大,改起來十分方便,加一段代碼就能解決問題。
除此之外,還測試了一下老《傳奇》的城主刷錢BUG、倉庫困金條BUG。
前世《傳奇》裡,城主只要與沙巴克使者對話,選擇貯存資金,然後輸入-5,000,000,當晚12點後,自己包袱裡就會多出5,000,000了,當然,如果輸入-5000萬,也一樣可以。
捆金條BUG則更簡單,身上留1002000錢,找倉庫管理員把錢捆成金條,因手續費需要2000,結果金條捆好後,背包裡的錢數是0,因此判定捆金條操作失敗,返還1002000。
於是,金條依然存在,而玩家只需要不斷點擊捆金條操作,就可以無限刷金條……
這些刷錢BUG,其實原理都是利用了“背包裡的錢不能小於0”這個程序邏輯BUG,一旦小於0,系統就會自動判斷交易失敗,資金原路返還,但另一方面,卻又忘了對關聯道具或數值進行核查和回收。
改掉相關程序代碼後,這些相關刷錢BUG就被全部封死。
以上這些BUG測試,還僅僅只是方傑進行測試的開胃菜而已。
隨後,他還用WPE對遊戲進行了欺騙性封包測試。
測試到這個程度,就不是測試什麽遊戲BUG了,封包程序跟遊戲BUG其實沒什麽關聯,這屬於反封包程序功能測試。
最後測試的結果是……沸騰開發的這款《傳奇》,對封包程序毫不設防,一地雞毛!
通過WPE封包程序,方傑能夠輕易做到無限刷錢、刷經驗、刷道具,而且整個操作也沒費什麽時間,隻研究了個把兩個小時,就已經能夠做到這些了。
出現這樣的嚴重問題,不能怪遊戲開發團隊,畢竟這會兒大家根本沒有這方面的意識,甚至大家連WPE這樣的封包工具都沒聽說過,又何談防范?
要防范服務器被WPE封包程序欺騙,方法也不難,只要將正常遊戲封包加密解密獨立成一個動態連接庫,即DLL文件,供遊戲主程序調用進行封包加解密,就能解決大部分問題,工作量並不大。
之所以說只能解決“大部分”問題,是因為道高一尺魔高一丈。
封包和反封包技術,就像黑客攻防戰一樣,沒有永遠攻不破的盾,也沒有永遠防不住的矛,關鍵還是看誰的技術更厲害。
即便封包進行了加密,技術高超的人,也能對其破解,即便單獨建立一個DLL動態鏈接庫,人家也可以拿自己製作的DLL文件將其的替換掉,即便再加入對DLL文件的自檢程序,人家還能直接用老客戶端登陸遊戲,直接繞過自檢,即便……
總之,攻與防、矛與盾,說下去沒完沒了。
方傑即便了解這些技術,但也不敢保證自己一定能防住所有封包手段。
頂多就是提高對手的破解技術難度和封包製作門檻,同時也提高對手的研究成本。
這個只能以後見招拆招,在鬥爭中學習和進步,不斷推拉改進防護手段,僅此而已。
當然話又說回來,現在能在封包技術上跟他一較長短的對手,恐怕屈指可數。
而這些屈指可數的技術大牛,如果不是有特殊的原因,也不可能投入大量的時間精力和研究成本,去幹這種下三濫的事情,所以其實也沒啥好擔心的。
真正值得方傑關注的,不是遊戲BUG和封包程序,而是遊戲外掛程序。
因為遊戲BUG和封包程序,很容易被系統檢測出來,亡羊補牢完全來得及,但遊戲外掛,調用的是客戶端裡的內存地址,服務器一般情況下很難查得出來。
尤其是一些模擬鍵盤鼠標的簡單功能,比如按鍵精靈那些能夠實現的功能,服務器基本上是不可能檢測出來的,如果只靠玩家舉報,很容易被誤封。
比如《傳奇》練技能,有的玩家連按鍵精靈都不會,拿著易拉罐的環扣或者用紙折疊一下,卡在快捷技能的鍵盤按鍵上,以達到持續施展技能的目的,你能說這是用了外掛?
所以外掛如何界定,底線標準是什麽,就是個首先要考慮的問題。
(本章完)