魔獸世界懷舊服開發進程相關匯報:千呼萬喚始出來!

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

Dev Watercolors 是暴雪開發團隊的博客. 主要發布一些內部開發運作情況和深層次遊戲設計取捨上的背景和思考.

P.S. 自翻, 有疏漏請指出(尤其是編程相關詞彙), 共勉

大家好. 魔獸世界經典懷舊服正在進行有條不紊地開發. 我們很高興能分享我們開發時面臨的一些挑戰和解決方案. 正如我們在上次暴雪嘉年華里提到過的, 恢復經典舊世的過程並不簡單. 我們需要花費很多精力和時間去做好, 而這一點很重要 這其中涵蓋了無數的遊戲版本、數據以及代碼;以及仔細審視過去多年我們所做的改變. 請放心: 懷舊服團隊正在努力實現這個目標. 現在的開發階段使我們可以展示部分開發成果.

經典舊世:第一個原型

我們面臨的第一個, 也是最重要的決定就是要選擇哪一個遊戲版本. 正如你們許多人所指出的, 經典舊世延續的兩年, 而這其中又充滿了變化. 一些核心遊戲內容, 例如戰場, 是在後續的補丁里引入的. 職業的設計也隨時間的推移而改動.

經過深思熟慮後, 我們決定以1.12版 - 戰鼓震天為基準,因為這個版本代表了最完整的經典舊世體驗.

一旦有了出發點, 我們開始評估原始碼,以及我們能從中呈現的內容, 而其中又包括從備份中恢復原始開發資料庫. 在把各個關鍵部分整合後, 我們在內部重建了一個本地的1.12版原型. 在這個原型里, 團隊可以建立人物並進行簡單的做任務、練級以及死亡. 處於測試目的, 顯然我們已經進行了很多次.

在我們的初次測試中, 遊戲暴露了一些(預期中的)問題: 遊戲會時不時的崩潰、無法識別現在的顯卡, 不兼容現在的登陸系統. 同時, 這個版本也不支持現在所用的安全和反作弊系統. 自然,我們有很多工作才能使懷舊服達到暴雪遊戲的質量標準並提供玩家所期待的遊戲體驗.

前進的道路:第二個原型

說到遊戲工程, 魔獸世界是一個十分依賴於數據驅動的遊戲. 即遊戲代碼十分的靈活, 而其展現形式卻由資料庫里的信息內容所控制. 譬如任務、怪物、物品道具和互動規則都是由設計師在數據里定義的.

所以我們捫心自問, 如果用現在的代碼改進遊戲的所有後端並處理1.12版的原始遊戲數據, 我們是否依舊可以提供最真實懷舊體驗? 雖然看上去有違直覺, 本質上是要繼承所有的經典舊世系統, 如技能等級、舊的任務和地形以及天賦等等, 而後來新加入的內容, 如幻化和天賦將不存在, 因為它們並不存在於原始數據中. 經過數周的研發、實驗和原型開發, 我們認為我們有信心在不犧牲過去13年里數以百萬小時的後端開發的前提下, 提供經典的遊戲世界內容以及玩法.

我們最初的努力幫助我們確立了我們想提供的遊戲體驗. 第二個原型指明了我們如何達到目標. 基於現代的代碼構築 包括所有的安全和穩定性的改動 意味著, 團隊可以更加專注於實現真實的經典遊戲體驗. 在開發中的任何與原版1.12的差異都可以系統的歸類和修正, 同時又不會影響系統的安全和穩定.

深入

那麼我們要怎樣以現代的遊戲工程技術來重現純粹的經典遊戲體驗? 讓我們以對構建魔獸世界的各種類型數據分類展開這個話題:

表格數據: 這類信息幾乎總以數字來表達. 怪物的生命值、道具提供的力量值以及怪物刷新地點和時間都是資料庫中眾多數值數據的幾個典型例子. 我們也可以存儲和執行各個數據片段的關聯.

文件數據: 這類數據通常是一些非常密集的數據, 例如3D模型、皮膚紋理、動畫和地形等. 我們的交互介面是由XML和Lua構建而成. 許多藝術文件都不能用商業軟體直接提取的. 因為這些原始藝術文件被轉換成更易於遊戲的讀取和處理的格式.

Lua腳本: 一些由設計師編寫的基於Lua腳本的遊戲內容使得它們易於伺服器端的邏輯自定義處理, 而不需要十分深入的工程知識.

遊戲工程的改變

我們面臨的一個挑戰, 就是所有經典舊世的數據是以遊戲發布時的原始格式存儲的, 而這種格式已經有了很大的變化. 這塊內容需要大量的工作使經典舊世的遊戲數據兼容於現在的客戶端.

例如, 法術在最初只能在目標上執行3個動作. 在表格中, 法術是這樣的:

如你所見, 表格中有很多冗餘的空位. 在魔獸世界的一生中, 我們對改進並規範了大部分的數據. 如今, 同樣的數據將以如下格式分離

表格:法術

表格:法術特效

表格:法術光環

在這種格式下, 浪費的數據空間少得多. 法術也不再局限於三種特效. 在調用資料庫中任一數據之前, 所有的數據格式都需要轉制進新的格式. 這種轉制不限於法術, 幾乎遊戲中的任何系統(包括裝備道具、怪物、玩家人物、刷新、AI等等)的數據格式多年來都有所改變.

展望未來

我們的終極目標是以一個更優化高效穩定的平台重現經典舊世的遊戲體驗, 並同時減少延遲和穩定性問題. 其他現代化的改進將包括當前反作弊掛機檢測、客戶服務和戰網集成以及不影響核心遊戲體驗的一些便利改動.

我們期待未來的挑戰, 共享您對經典舊世的熱忱; 每一段代碼數據轉換都讓懷舊服更接近於為您 以及我們 提供原汁原味的經典舊世體驗. 感謝您加入我們的旅程.

來自NGA 作者:BenBen豬


請為這篇文章評分?


相關文章 

《魔獸世界:經典版》將採用1.12為製作基礎

暴雪近日放出《魔獸世界:經典版》的最新消息,透露遊戲採用的版本內容,以及遊戲程序更動與調整。自去年暴雪嘉年華公布《魔獸世界:經典版》後,官方今日再次公開進一步資訊,開發團隊強調:「重現經典遊戲不...