Electronic Arts 做出了一個令人驚訝的舉動,開源了四款經典的《命令與征服》遊戲:《紅色警戒》、《泰伯利亞黎明》、《叛逆者》和《將軍:零時》。這一出人意料的決定在遊戲社群中引起了轟動,特別是在這些有影響力的即時戰略遊戲的長期粉絲中。
這次釋出提供了在 GPL v3 許可下的原始碼訪問許可權,但有一些限制。根據儲存庫資訊,《紅色警戒》的程式碼在當前狀態下無法完全編譯,需要替換幾個依賴項,包括 DirectX 5 SDK、DirectX Media 5.1 SDK、Greenleaf Communications Library 和 Human Machine Interface Sound Operating System。原始構建環境使用 Watcom C/C++ 和 Borland Turbo Assembler。
開源的命令與征服遊戲:
- Command & Conquer: Red Alert
- Command & Conquer: Tiberian Dawn
- Command & Conquer: Renegade
- Command & Conquer: Generals Zero Hour
所需依賴項(用於 Red Alert):
- DirectX 5 SDK
- DirectX Media 5.1 SDK
- Greenleaf Communications Library (GCL)
- Human Machine Interface (HMI) "Sound Operating System" (SOS)
原始構建環境:
- Watcom C/C++(v10.6)用於 C/C++ 原始檔
- Borland Turbo Assembler(TASM v4.0)用於彙編檔案
許可證: GPL v3 及附加條款
社群反應和意義
社群反應非常積極,許多人對 EA 儲存這些遊戲經典表示感謝。一些評論者指出,在大型企業中獲得此類倡議的批准是很困難的,這表明這次釋出代表了內部的重大支援。
「無論是誰在 EA 推動了這件事 - 我對你表示最深的敬意!原版《命令與征服》早已被從頭重寫,但開源版本的《將軍:零時》是如此令人驚喜的禮物。」
這次釋出對《將軍:零時》特別重要,許多人沒有預料到它會在系列中的其他遊戲之前被開源。一些使用者對《紅色警戒2》和《泰伯利亞陽光》沒有被包括在內表示驚訝,討論揭示這些遊戲的原始碼可能多年前就已丟失。
程式碼質量和開發者幽默
檢查程式碼庫的開發者發現,對於那個時代來說,它的結構出奇地好。《紅色警戒》的程式碼包含詳細的註釋和良好的文件實踐,打破了成功遊戲通常程式碼質量差的刻板印象。使用者還發現了貫穿程式碼的有趣開發者評論,讓人一窺 1990 年代遊戲開發中個人的、有時令人沮喪的經歷。
一些突出的例子包括像 poo 和 silly 這樣有趣的變數名,以及對 Windows API 和除錯挑戰的沮喪評論。這些文物為那個時期的軟體開發實踐提供了一個引人入勝的歷史記錄。
模組製作和未來潛力
這次開源與現有的社群努力(如 OpenRA,一個已經重新實現了這些經典遊戲的專案)很好地契合。許多評論者表示希望這次官方釋出將進一步增強模組製作的可能性和儲存工作。
對於那些想要使用程式碼和遊戲資產的人,EA 指出使用者必須擁有遊戲。方便的是,包含所有開源遊戲的完整 C&C 合集目前在 Steam 上以約 6 美元的價格提供,為獲取必要資產提供了一種經濟實惠的方式。
社群已經在討論潛在的改進,包括 4K 渲染、光線追蹤、原生 Linux 構建和用於瀏覽器遊戲的 WebAssembly 移植。雖然程式碼需要一些工作才能編譯,但這次釋出為這些增強功能提供了基礎。
EA 的這一舉動追隨了像 id Software 這樣的公司的腳步,後者開創了開源老遊戲引擎的先例。對於遊戲儲存愛好者和有興趣研究經典遊戲架構的開發者來說,這次釋出代表了對遊戲歷史和文化的寶貴貢獻。