【開發(fā)日志補(bǔ)全計(jì)劃】修正BUG:帶給玩家更好的EVE游戲體驗(yàn)
原作者:CCP Redundancy
原文:http://community.eveonline.com/devblog.asp?a=blog&nbid=2978?
?
在第一次將艦長(zhǎng)室開放給玩家的過程中,我們確實(shí)學(xué)到了很多東西,其中的一個(gè)就是:我們并沒有與時(shí)俱進(jìn)使用那些最先進(jìn)的核心技術(shù)去把我們的作品做得更好。
在這次更新中,我們加入了大量新的C++代碼,而且我們覺得我們會(huì)因此遺留下許多問題。當(dāng)我藏在桌子底下,忐忑地查看論壇和Bug反饋網(wǎng)頁上關(guān)于崩潰問題的各種抱怨時(shí),我卻發(fā)現(xiàn)根本就沒收到什么相關(guān)信息。原因很簡(jiǎn)單,那個(gè)要求玩家去收集Bug、發(fā)現(xiàn)Bug并且把它們發(fā)送給我們的流程非常的不合理。
Firefox、Chrome以及Steam都不會(huì)出現(xiàn)這樣的問題。
這些產(chǎn)品的共同之處在于,它們使用一個(gè)自動(dòng)上傳系統(tǒng)來報(bào)告崩潰問題,而且它們會(huì)在后臺(tái)生成各種漂亮的圖表來告訴那些工程師:如果你們修復(fù)了X個(gè)Bug并且在兩天后應(yīng)用這個(gè)修復(fù),那么每天就會(huì)有Y個(gè)用戶不再會(huì)于做某些重要事情的時(shí)候突然跳回桌面,收到崩潰信息了。
所以,在暑期里我們開始著手開發(fā)一個(gè)好用的報(bào)告系統(tǒng)。當(dāng)秋風(fēng)吹來的時(shí)候,我們先在CCP內(nèi)部試驗(yàn)性地應(yīng)用了這個(gè)系統(tǒng)早期的版本。從那時(shí)起我們也一直在持續(xù)改進(jìn)它的覆蓋面和基礎(chǔ)結(jié)構(gòu)。結(jié)果,我們確實(shí)改進(jìn)了這個(gè)工具的穩(wěn)定性并且也修復(fù)了大量崩潰——都是些連開發(fā)人員都懶得報(bào)告的內(nèi)部問題。不過,EVE世界服務(wù)器上每天還是會(huì)發(fā)生大概1500個(gè)崩潰問題。
因此,我們將這個(gè)新的報(bào)告系統(tǒng)的應(yīng)用提上了日程并且在最近正式發(fā)布了它,我們將持續(xù)跟進(jìn)這個(gè)系統(tǒng)并且盡快修復(fù)收到的報(bào)告中提到的各種問題。
我們的工作成效
在這個(gè)新系統(tǒng)的幫助下,我們已經(jīng)發(fā)現(xiàn)了測(cè)試服務(wù)器上發(fā)生的兩個(gè)比較嚴(yán)重的崩潰,并且已經(jīng)在這次更新中將它們修復(fù)。對(duì)于其他那些崩潰,我們將按照它們?cè)跍y(cè)服上發(fā)生的頻率,逐個(gè)對(duì)它們進(jìn)行研究。
?
它會(huì)侵犯我的隱私嗎?
我們要求上傳的這些小型存儲(chǔ)文件中只包含EVE程序中與崩潰相關(guān)的信息——我們收集這些信息的方式與Windows系統(tǒng)采取的是同樣的機(jī)制,其中主要包括了導(dǎo)致崩潰的一系列函數(shù)相關(guān)的一些值以及變量。這些報(bào)告中絕不包含玩家的個(gè)人信息,也不會(huì)查看你電腦中已經(jīng)安裝或正在運(yùn)行的任何程序(除非其中有一些外部的惡意程序已經(jīng)侵入到了EVE程序中)。
我們正努力以公開而透明的方式告訴玩家我們正在做這樣的事情,不過你也可能在不知道的情況下已經(jīng)開始使用這樣的程序了,例如Steam、Chrome和Firefox。
這樣我就不會(huì)再遇到崩潰問題了嗎?
這個(gè)我們無法做出保證,因?yàn)榭傆行﹩栴}是我們從未遇到過的,或是正在測(cè)試中的,或是由非CCP開發(fā)的代碼所引起的(比如有些程序會(huì)覆蓋掉語音聊天界面并且試圖“混入”我們的代碼中,或是你的顯卡驅(qū)動(dòng)程序什么的)。
?
我們可以承諾玩家的是,我們已經(jīng)極大地改善了發(fā)現(xiàn)導(dǎo)致崩潰的問題的能力,并且會(huì)在測(cè)試階段就截獲更多這樣的問題——無論是內(nèi)部測(cè)試還是在公共測(cè)試服務(wù)器上。
無圖無真相
?

我們的主代碼分支是由公司大部分開發(fā)人員共同努力完成的(大概400人),而這張圖片就展示了每天主代碼分支發(fā)生的崩潰數(shù)量。有時(shí)候我們會(huì)遇到一個(gè)新的崩潰問題,影響到一定數(shù)量的玩家(或是一個(gè)自動(dòng)化系統(tǒng)),不過我們解決問題的速度也比以前快得多了。
?

這是一個(gè)曾導(dǎo)致上述某一問題的崩潰歷史記錄。
我們可以得知有記載的第一個(gè)類似的崩潰問題發(fā)生在什么時(shí)候,這樣我們可以更容易地處理它并且查明是什么樣的更改導(dǎo)致了問題的發(fā)生。
總而言之
我們并不想帶給玩家一些做的很爛的代碼或是長(zhǎng)時(shí)間放任它不管,同時(shí)也希望我們的這次努力向著解決問題的方向前進(jìn)了一大步。我希望在接下來的幾周中,EVE世界中的崩潰問題可以得到有效的控制。