還原歷史:打造魔獸世界經典懷舊服 座談會回顧

文章推薦指數: 80 %
投票人數:10人

以下內容轉自 新浪遊戲

飽受期待的《魔獸世界》經典懷舊服體驗一直是玩家群體關注的話題,但為了真正實現打造暴雪品質體驗的承諾,軟體工程師Brian Birmingham和Omar Gonzalez,以及遊戲總監Ion Hazzikostas走向幕前,與大家分享他們的見解。

尋找碎片

為簡化打造遊戲的基礎要求,Omar將其歸結為三個主要因素:資料庫數據、美術資源和原始碼。

資料庫數據包括生物的生命值、物品的耐久度、世界各地的刷新位置,以及上百萬的其他數據點。

美術資源包括暗夜精靈在影遁時的外觀、炎爆術的聲效、以獸人揮舞斧子時的動作等所有一切。

原始碼是如何顯示遊戲、處理輸入以及與玩家互動的指令。

首先,我們必須確定我們的原始碼可以追溯到什麼時候。

結果發現我們的代碼庫最早起源於1997年,遠超《魔獸世界》開始開發的時間點。

這是一個良好的開端,但問題在於以前遊戲開發如何處理資料庫數據的更新。

與我們為遊戲設置了多個可加工的分支,並且可以作為單獨部分開發的代碼不同,我們最早的資料庫數據已經被各個相應的更新所覆蓋。

幸好我們在上線之後很快便修復了這個問題,並且在研究的時候,我們發現數據可以追溯到1.12,甚至更早的版本。

最後,我們在古舊的備份中找到了美術資源,並且與我們保存的所有資料庫數據相匹配。

將這三個要素結合在一起之後,我們就能夠進行測試、登錄遊戲、創建新角色、殺死野豬,並完成某些任務。

現代世界裡的經典遊戲

雖然已經創建了可以運行的遊戲版本,但還有很多挑戰等著我們去克服。

自從遊戲首次發行以來,支持該遊戲的技術已經取得了長足的進步,包括:雲支持、戰網應用程式集成、客服功能,以及許多之前修復的錯誤和漏洞。

為克服這些困難,我們針對手頭的資源,確定了我們喜歡什麼(美術和數據)和不喜歡什麼(代碼)。

我們想試試能否在現代的代碼中運用經典的美術資源和數據,讓新與舊和諧相處。

一開始進展並不順利,但經過一些測試和錯誤之後,我們成功得到了融會貫通以及可玩性概念的證明。

這讓我們相信自己一定可以在現代化的平台上提供暴雪品質的體驗。

從原型到試玩

我們的三大要素——資料庫數據、原始碼和美術資源彼此交互,從而實現面向玩家的功能,例如地形、遊戲玩法、動畫和光照。

不同的功能需要各個要素以多種方式相互關聯。

為充分理解這種相互作用,我們以地形為例。

其中包括丘陵和山谷、樹木、建築物等等的放置。

將舊地形數據文件與現代新遊戲系統掛鈎時,我們意識到系統看待數據形狀的方式是不同的。

這導致新系統無法與經典數據對齊,因而出現了水下的科卡爾營火,或者《大地的裂變》時代的燒焦樹木。

幸運的是,我們的現代編輯器能夠執行其中一部分數據轉換,並且對於地形數據,我們可以使用《爭霸艾澤拉斯》的編輯器進行轉換。

現代編輯器知道如何加載舊的地形格式,以及如何將其轉換為新的地形格式,並將其導出到我們的現代引擎。

這就修復了營火位置和樹木外觀等問題。

我們克服的另一個障礙,是如何存儲和合併數據。

《魔獸世界》的開發過程中存在許多補丁,因為每個補丁都位於不同的開發階段。

如果我們將一件美術資源或地形文件添加到一個補丁中,那麼我們希望它能自動顯示在以後的補丁中。

在遊戲十四年的發展中,這個操作向來依照固定的線性時間表完成。

如果我們只是將新的經典懷舊服補丁插入當前的開發中,那就會導致洛克莫丹目前的大壩等元素被以前的還原版所覆蓋。

這將給《爭霸艾澤拉斯》版本帶來問題。

為避免這種情況,我們教會了工具一些新的技巧,從而在不影響當前版本遊戲的情況下為經典懷舊服打補丁。

我們將1.12版本的數據複製到一個新的項目中,並命令我們的工具將其區分開來。

現在,當我們進行補丁時,所有更改都會保留在經典懷舊服的範圍內,而不會與主線補丁互相影響。

聽起來雖然簡單——就像複製通訊錄一樣——但最棘手的部分是如何教會我們所有的工具去理解這種操作,以便自動進行編輯。

內部工具的運用助益良多,並且我們希望確保經典懷舊服可以訪問我們所有的基礎架構和數據。

經典模型和動畫

我們還花時間完全還原了模型的經典外觀,但在還原的過程中,我們發現一些模型已經損壞。

有時我們會缺少紋理,因而不得不做一些調查,以確定這些物品的正確外觀,並在系統內進行修復。

原版的動畫也已經還原,但我們的動畫系統與遊戲代碼關聯密切。

我們必須同時對數據和代碼進行修改,才能使動畫還原為1.12版本的樣子。

在這個過程中,我們遇到了一些錯誤,比如那些應該傾斜的模型顯示為垂直,反之亦然。

但我們通過一些修復解決了這些錯誤。

還原職業系統

在將數據轉換成代碼方面,我們取得了長足的進展,但有些系統並沒有現代的替代品。

受其影響最大的職業可能就是獵人。

寵物的快樂值和忠誠度系統,以及寵物訓練、使用遠程武器和近戰武器的技能都被移除了。

在這種情況下,將舊數據轉換為新系統並不可行,因為它們沒有新的系統。

此時,我們就必須沿用舊代碼——我們也確實這麼做了。

好在還原工作很順利,儘管購買箭矢或餵養寵物的需求令一部分人頗感意外。

這個問題並不僅限於獵人。

潛行者的連擊點也必須修改代碼,因為我們的現代資源系統知道如何獲取和使用連擊點,但不知道如何在變更目標時丟失點數。

並且還要考慮到舊的戰鬥公式。

在這種情況下,我們沿用了以前的戰鬥公式的代碼,包括爆擊和碾壓。

觸發幾率也依據防禦者的防禦值和攻擊者的武器技能之間的差異進行了修正。

沒錯,武器技能回來了。

我們手上有數據,但必須還原代碼,才能在你使用技能的時候提高數值,並使你的技能等級影響到命中或造成爆擊的幾率。

用戶介面與光照

角色介面是代表性的用戶介面範例。

我們顯然必須予以還原,並努力重現當時的感覺,甚至細微到介面特效和角色背後的光線。

雖然我們不想承諾完美,但我們可以保證,我們正在並列比較,並盡力打造原汁原味的體驗。

再舉一個光照的例子——艾爾文森林。

在《魔獸世界》的歷史中,我們曾改變過所有的光照公式。

因此,我們的環境美術師不得不回顧所有地區,以改善光照和實裝新的公式。

為重現原版體驗,我們不得不回滾這些更改。

我們做的第一件事,就是還原舊的光照數據。

這讓我們可以更加接近原始光照,並通過對距離公式、霧公式和陰影的變更,使事物更接近原始光照。

你們完成了嗎?

經過上述說明,我們相信你肯定想知道我們到底有沒有完成,還是我們其實只需要更新標準客戶端即可。

經歷過去一年的項目投入,以及克服各種錯誤和挑戰的努力後,我們所擁有的和我們所想要的之間,依然存在顯而易見的差距。

在如今的《魔獸世界》中,我們可以清楚地看到它和經典懷舊服之間的區別。

如果我們嘗試更新標準客戶端,就必須追蹤許多無形的變化,比如可能被利用的漏洞,或者只有數百萬玩家在線時才會出現的崩潰等等。

所以我們選擇通過一種能讓我們的工作更加清晰明了,而非困難和隱晦的方式去解決問題。

我們還沒有完成,我們還有很多主城的功能需要處理,比如銀行和拍賣行。

我們需要測試地下城和副本,以確保首領們的技能正常運作,並且我們還需要核驗所有的PvP系統。

理念與未來計劃

通過還原《魔獸世界》經典懷舊服,我們希望能夠提供原汁原味的體驗,即使玩家在遊戲剛發行後不久便離開,也依然能夠無縫重拾當年的感覺。

程序的運行也許會更流暢,並且硬體環境早已今非昔比,但遊戲本身應該保留你在2006年玩《魔獸世界》時的原汁原味。

其中很大一部分不僅涉及到戰鬥公式和技能,還包括社交和與他人的協作,例如組隊的難度,以及在地下城或其他戰鬥中對團隊的依賴。

我們還想確保自己無需改變1.12版本的數據,以及由此產生的遊戲體驗。



我們做出的許多決定都是相當明確的。

比如地下城查找器就是絕對的「否」。

我們也明確不會添加跨服組隊系統、成就系統、通用拍賣行,還有——沒錯——不會加入飛行系統。

而另一些決定則沒有那麼一刀切。

曾經有一段時間,減益效果的上限為8個。

這個限制後來提高到16,而如今則沒有減益效果數量限制。

這種變化從根本上改變了職業的平衡,以及玩家在使用這些減益效果來克服障礙時的策略。

為了避免破壞1.12版本的數據,我們決定在經典懷舊服中採取16的上限。

公會成員之間的郵件現在是即時送達的,但過去則有一個小時的延遲,與陌生人之間的郵件往來一樣。

即時郵件的改變加強了便利性,但抹殺了想要快速交易時,必須與某人見面的社交互動。

因此,我們重新加入了這個延遲。

而自動填寫姓名或快速清理郵箱等便利措施則予以保留。

這個決定看起來很簡單,因為玩家只需要編寫插件即可產生同樣的效果,而且我們覺得刪除這些功能並沒有什麼意義。

在以前的戰利品交易中,如果有人無意中拾取了不需要的東西,那麼通常會需要客服的支持。

在更現代的系統中,玩家在一段時間內可以將戰利品交易給其他人。

我們認為這項便利措施值得保留在經典懷舊服中,以免出現大量根本無需存在的客服表單。

(抱歉了,黑裝備愛好者!)

對於那些依賴能量恢復的職業,比如潛行者來說,經典版之後的遊戲也發生了巨大的變化。

在過去,由於伺服器的「心跳」,能量恢復並非以單點計算。

因此,20點能量的恢復需要整整兩秒。

而現在,由於系統更加流暢,所以每十分之一秒就能恢復1點能量。

這種差異改變了某些技能的施展時機。

如今看來微不足道的改善實際上改變了經典玩法中的整個技能循環和爆發。

為了原汁原味的體驗,我們認為這一點必須還原。

這些年來,插件的功能不斷提升,並且隨著編寫者們的經驗和閱曆日漸豐富,其複雜程度也與日俱增。

針對這件事對經典懷舊服的影響,我們目前尚未得出100%的定論,但有一點我們可以確定,那就是不會還原1.12版本的插件API。

這樣將為幾乎完全自動化的戰鬥決策制定打開方便之門,滋生所謂的「腳本」行為,與WOW的核心遊戲體驗背道而馳。

我們肯定不願意看到這樣的情況。

從另一方面來說,現代API為額外的社交功能提供了機會,同時也破壞了原汁原味的經典體驗。

我們依然在研究細節,儘量採取折中的辦法。

我們將密切關注來自社區和插件作者們的反饋,以便確定如何設定界線。

內容發布計劃

雖然首發版本為1.12,但我們也希望能夠提供玩家們所期望的旅程。

關於這段旅程的路線圖,我們劃分了四個額外的階段,並計劃逐漸整合到體驗之中。

第1階段:熔火之心、奧妮克希亞的巢穴、厄運之槌、卡扎克、艾索雷苟斯

第2階段:黑翼之巢、戰場和PvP獎勵、祖爾格拉布

第3階段:安其拉(包括開門事件)、T0.5套裝、希利蘇斯內容、綠龍

第4階段:納克斯拉瑪斯團隊副本、天災入侵

這些計劃可能會發生變化,但我們希望能夠提供一定的前瞻。

我們期待繼續傾聽你們的想法,並且明白我們還有很多工作要做。


請為這篇文章評分?


相關文章 

魔獸世界:懷舊服正在開發 將還原經典年代

比起《魔獸世界》8.0,相信玩家們更期待的還是懷舊服。雖然暴雪在嘉年華上宣布了要出懷舊服的消息,但也只是停留在「要出」這一層面上。近日,《魔獸世界》開發團隊公布了關於懷舊服開發的最新消息,遊戲日...

經典未必完美:懷舊服開啟也要理智選擇

自從嘉年華公布了懷舊服的消息之後,各種討論已經開始甚囂塵上,以至於原本作為主角的8.0CG也幾乎被人遺忘,當然其中小王子揮舞著父親大人留下的利劍還有希爾瓦娜斯女王嫵媚而又霸氣的微笑依然給人們留...

魔獸世界懷舊服,你,還會回來嗎

魔獸世界 8.0「爭霸艾澤拉斯」已經全球同步上線了!相信也有不少小夥伴回歸開始體驗新的資料片了,但是還有一部分期待懷舊服的小夥伴們,暴雪於之前也公布了關於懷舊伺服器的最新消息。讓我們看到了回歸最...