從刺客信條英靈殿中一艘飄在空中的船開始 說說開發(fā)者的噩夢BUG
時間: 2021-05-20 19:10:01 來源: 聚俠千機 作者: Noer傳說在英國的土地上時常會出現(xiàn)一些不合邏輯的東西,在近日,一名維京人戰(zhàn)士就在游泳時看到這樣超自然的一幕:

他看著眼前漂浮在空中的船,一股面對這種無法言說的詭異場面的恐懼涌上心頭。
時間一轉(zhuǎn)即逝,數(shù)百年后的英國已經(jīng)有了發(fā)達的文明。某日,一名身穿呢絨風衣的紳士漫步在雨后的巴黎,突然有人從身后向自己搭話,紳士扭頭回應(yīng)卻看到一張驚悚的“面龐”:

這詭異的場面是維持了一瞬,等紳士回過神來卻發(fā)現(xiàn)面前站著的是一個衣著得體,面容清秀的年輕人。
而在他們觸及不到的某個地方,泛著彩色光芒的顯示器的另一端,一名玩家放下手中的手柄,拿起手機跟朋友發(fā)了這樣的一句話:

對于任何一個游戲玩家來說,bug都是非常熟悉,甚至是習以為常的事情,幾乎每一名玩家都或多或少的在不同廠家,不同平臺,不同體量的游戲中遇到過各種各樣的Bug,其中的一些bug更是為大眾所熟知,成為了一個喜聞樂見的“?!薄?/p>

(飛天遁地寒鴉號)
但在肆意玩梗的同時,有的玩家也開始意識到,似乎這兩年的游戲中各種bug的出現(xiàn)開始變得更加頻繁,甚至是一些被認為是業(yè)界標桿的3A游戲也開始出現(xiàn)了很多難以接受的Bug,其中的一些bug甚至會讓人懷疑他們在開發(fā)的時候到底有沒有做測試工作,比如在《賽博朋克2077》中就出現(xiàn)了大量極為低級,觸發(fā)完全沒有門檻的bug。
那么今天就讓我們來聊聊所有開發(fā)人員都深惡痛疾的bug,說說為什么這兩年大成本游戲中的bug數(shù)量開始激增吧。
首先,到底什么是bug?
bug一詞的原意是“飛蟲,昆蟲”,也可以作為動詞表達為“煩擾,打擾”,看起來是一個和計算機八竿子打不到的詞匯,那么為什么現(xiàn)在會使用bug來稱呼計算機中的各種故障呢?這還需要追溯到計算機剛剛被發(fā)明的時候。當時由于集成電路技術(shù)尚未出現(xiàn),計算機的各類元器件無法被小型化,導(dǎo)致當時的計算機都是龐然大物。而這樣一個散發(fā)著較高溫度,內(nèi)部結(jié)構(gòu)復(fù)雜的巨大機器毫無疑問就成為了昆蟲安身定居的好地方,這就導(dǎo)致當時的大部分計算機在發(fā)生故障之后技術(shù)人員要做的往往不僅僅是核對算法有沒有問題,還需要看看計算機里是不是進蟲子了。久而久之人們就開始將計算機的故障稱之為bug(蟲子),并延續(xù)到了現(xiàn)在。

(巨大且溫暖的計算機是昆蟲的理想住處)
順帶一提,現(xiàn)在有的時候計算機機箱里進蟲子也會導(dǎo)致短路等故障,如果你發(fā)現(xiàn)電腦經(jīng)常毫無緣由自動關(guān)機還伴有一股蛋白質(zhì)被烤熟的焦糊味,那么恭喜你,你的電腦機箱里多半有一堆蟑螂安營扎寨了。
講完了這個稍微有些讓人食欲不振的詞匯起源,接下里要說的就是為什么軟件游戲里會有bug了。要說原因其實也非常簡單,畢竟bug就是軟件代碼中的漏洞,因此廣義來說只要游戲的某一個地方出現(xiàn)了bug那么就能夠說明這個地方的代碼是存在問題的。這樣來看修復(fù)bug的過程其實也就是將原本存在問題的代碼進行優(yōu)化調(diào)整的過程,因此很多軟件和游戲都會將這一過程成為“補丁”。

(補丁包)
這時可能有的讀者就會有些困惑,同樣是游戲,一些小體量的獨立游戲就能夠做到基本不出bug,但是一些大體量的3A游戲卻往往會在首發(fā)版本中存在大量bug,難到大廠的技術(shù)實力還不如幾個人的小團隊么?

實則不然,之所以會出現(xiàn)高投入大游戲反而比低投入小游戲bug更多這樣的情況并不是說大廠的技術(shù)實力更差,而是因為隨著游戲體量的提升游戲的代碼內(nèi)容會呈幾何倍數(shù)的復(fù)雜化。以今年有不低討論度的《戴森球計劃》舉例,在前期你想要生產(chǎn)東西的時候僅僅需要簡簡單單的幾樣原材料就能夠完成,這時你即便是隨便亂搭流水線都沒啥問題,可到了后期一個成品需要的數(shù)十個環(huán)節(jié)堆疊嵌套,這時再用原本的邏輯搭建流水線就只會出現(xiàn)一團漿糊。在游戲開發(fā)中也是一樣,一個開發(fā)者可以自學莽出來一個《鬼谷八荒》還不出知名bug,但如果開發(fā)《軒轅劍》還這么干那就只能造就一場開發(fā)災(zāi)難了。

代碼復(fù)雜度的提升不僅會提升開發(fā)的難度,還會導(dǎo)致各個不同模塊的代碼之間會出現(xiàn)一些“玄學”問題。在我上學的時候某次期末項目中就曾經(jīng)出現(xiàn)過小組每個成員負責的模塊單獨運行毫無問題,但整合起來就會出現(xiàn)一堆莫名其妙的bug的詭異情況。幾個人的小項目尚是如此,上百人的大項目就更為夸張了。

那難到游戲公司就沒有debug(測試,消除故障)人員么?有,但是很多游戲的開發(fā)時間往往并不充裕。以首發(fā)時bug成山的《賽博朋克2077》為例,CDPR肯定是有一支專業(yè)的debug團隊的,但是再專業(yè)的團隊進行測試也依舊需要時間,面對火燒眉毛的發(fā)售日和剛剛做好的游戲這些工作人員也只能優(yōu)先檢查閃退,壞檔,死機等惡性問題的bug確保游戲能夠正常運行了。

(這些惡性bug往往是需要最先檢測的)
而其他的游戲雖然大部分不會出現(xiàn)《賽博朋克2077》這么災(zāi)難的情況,但在項目瀕臨結(jié)束開始debug工作的時候時間往往也并不寬裕,面對現(xiàn)在3A游戲越來越夸張的體量很多測試人員也只能盡量保證沒有惡性,嚴重的bug出現(xiàn)了。至于更多亂七八糟測試不到的地方,直接做成測試版讓玩家進行測試反而會省掉不少功夫。

(先行測試還能順帶給游戲打波廣告)
說完了大型游戲為什么會有不少bug,這兩年游戲bug數(shù)量增加的原因也就呼之欲出了。
隨著2020年疫情的全球化,世界各國紛紛開始提倡居家辦公,但對于游戲開發(fā)這樣一個極為依賴團隊合作的工作來說,所有的開發(fā)者居家辦公,只能通過打字或者視頻會議聯(lián)系的方式無疑大幅增加了開發(fā)者之間交流的成本,而交流的不到位不僅會體現(xiàn)在游戲的玩法內(nèi)容不足上,更是會在無形中為游戲埋下很多可能成為bug的地方。

3A游戲本身的復(fù)雜度,居家辦公帶來的交流成本提升和開發(fā)效率下降,以及投資方白紙黑字規(guī)定的游戲發(fā)售日期的結(jié)合導(dǎo)致了這兩年各種原本玩家給予厚望的游戲開始頻繁出現(xiàn)各種讓玩家啼笑皆非的bug。這些bug中確實有一部分在玩家的旅途中提供了一些不同尋常的光彩,但也有一些導(dǎo)致了玩家游戲體驗的欠佳,更是讓不少玩家質(zhì)疑:“我為什么要花三四百的價錢買一個半成品?”

隨著次世代的到來,游戲的開發(fā)有著更高的硬件基礎(chǔ),畫面的表現(xiàn)能夠獲得更高的上限。但上限雖然得到了提高,可下限卻隨著游戲的進一步復(fù)雜化再一次降低,在這個新的世代中我們又將看到多少啼笑皆非的bug,又能夠看到多少因為bug而沉沙折戟的游戲呢?現(xiàn)在我們還不得而知。
本文系作者投稿,不代表聚俠網(wǎng)觀點


罪惡尖塔
獨自生活3
戰(zhàn)火與永恒
六月衷曲
代號深淵之歌
忍界對決
this war of mine
探索飛行員行星物語
莫伊動物園
廢物大戰(zhàn)僵尸
無敵極光俠手游
無限旅程
無盡噩夢6怨靈咒
太乙仙門
數(shù)字油畫游戲
TCG卡牌商店模擬器中文
黑神話悟空風靈月影修改器
三國殺奶殺版
沙威瑪傳奇存檔版
捕盜行紀內(nèi)置菜單版
傳奇發(fā)布網(wǎng)互通最新版
光遇
與惡魔的賭局游戲
反恐精英全球攻勢
三國群英傳單機版
阿瑞斯病毒2內(nèi)購版
崩壞星穹鐵道
原神天理服
明日方舟
劍與遠征啟程