第8章 BUG的誘因(第3頁)

 莉莉絲站在一旁,看著黑底白字的代碼不斷地從屏幕上閃過,又看到顧凡不斷地操作著什麼,甚至期間還在網上搜索了一些信息,頗有一種不明覺厲之感。

 她也沒法多說什麼,只能耐心等待。

 足足一個多小時之後,顧凡才總算是露出了恍然大悟的表情。

 他指著其中的一行代碼說道:“好吧,我搞清楚了,問題在這裡。”

 莉莉絲皺著眉頭仔細看,但很顯然,她看得一頭霧水,全然不懂。

 顧凡解釋道:“這套模板,是官方用一個很老的遊戲《反恐行動》改的。這款遊戲當初就曾經出過一個類似的b,只不過很快就被修復了,所以並沒有引起太多的注意。”

 莉莉絲眉頭緊皺:“《反恐行動》?”

 她並沒有聽說過這個名字,不過顧凡已經提前在網上找好了資料。

 從資料上看,這應該是一款十多年前的遊戲了。

 也正是因為這款遊戲太過古老,也有很強的紀念意義,所以才會被官方買下版權和代碼,製作成遊戲模板,供一般的獨立遊戲製作人們使用。

 資料中還顯示,這款遊戲確實出過一個很特別的b,叫做『甩狙』b!

 它會造成玩家在『甩狙』的時候,同時對甩狙的一整條線造成傷害,在當時可謂是轟動一時。

 不過這個嚴重破壞平衡性的b很快就被修復了,所以到目前為止,除非特意地去搜索當時的信息,大部分玩家都不記得了。

 但這顯然並不能讓莉莉絲信服。

 “不對啊,這個b不是早就被修復了嗎?為什麼還會觸發?而且這b看起來跟我們遊戲的b也不是同一個啊!”

 顧凡嘆了口氣:“是被修復了,但你要知道,我們程序員修b,從來都不能『從根源上徹底解決問題』,我們只能做到『讓b看起來消失了』,但底層代碼到底還存不存在其他誘發b的部分?這沒法確定。

 “就像醫生看病,我們只能保證病人當下看起來好了,至於以後還會不會復發?這不能保證。

 “顯然,這個隱患一直都還藏在底層代碼裡。

 “恰好,我們的遊戲中出現了一個特殊的誘因。”

 莉莉絲問道:“什麼誘因?”

 顧凡看了看她:“就是你在遊戲設計稿中寫的,這遊戲要用真實彈道。”

 莉莉絲有些費解:“真實彈道怎麼了?我就是想模擬一下子彈下墜,這應該是一個很正常、也很合理的需求吧?”

 顧凡點頭:“對,這確實是一個很正常、也很合理的需求。

 “所謂的真實彈道,無非就是子彈在受到重力的時候會影響飛行軌跡,我確實是這麼做的,但很顯然,這似乎誘發了原本底層代碼的漏洞,導致遊戲判定錯誤,玩家在甩狙的時候也莫名其妙地給子彈施加了一個外力,讓它像『受到重力下墜』一樣的拐彎了……

 “總之,情況就是這麼個情況,問題就是這麼個問題。

 “我畢竟只是個程序員,不是神。”

 顧凡小手一攤,把鍋甩得乾乾淨淨。

 (本章完)