Sonic Advance 2 反編譯專案為經典 GBA 遊戲帶來現代平臺新生

BigGo Editorial Team
Sonic Advance 2 反編譯專案為經典 GBA 遊戲帶來現代平臺新生

遊戲儲存社群又取得了一項重大成就,成功完成了 Sonic Advance 2 的反編譯工作,這是2000年代初期備受喜愛的 Game Boy Advance 遊戲。該專案已達到100%的構建匹配度和92%的程式碼匹配度,使這款經典的 Sonic 遊戲能夠在現代平臺上原生執行,包括 Linux、macOS 和 Windows。

反編譯專案為經典遊戲注入新生命

Sonic Advance 2 的反編譯代表了遊戲儲存工作中日益增長的趨勢。社群成員已經精心提取並記錄了原始遊戲的所有元素,包括精靈動畫、圖塊地圖和 MIDI 音樂檔案。該專案已成功構建出與原始美國版、歐洲版和日本版遊戲匹配的 ROM,併為現代系統提供了額外的移植版本。最值得注意的是,這些移植版本支援426x240解析度的寬屏顯示,使遊戲擺脫了 GBA 小螢幕的限制。

「GBA 上的 Sonic 遊戲常常被忽視,但我認為它們在重現原始 Mega Drive 遊戲感覺方面做得非常出色,音樂和精靈作品也很棒。我一直認為它們應該像 Sonic 1 Forever 或 Sonic Origins 那樣有一個現代 PC 移植版,將它們從狹小的 GBA 螢幕中解放出來。」

這個專案加入了越來越多的反編譯工作行列,這些工作使經典遊戲能夠在現代硬體上執行。社群討論中提到了類似的專案,如 The Legend of Zelda: Ocarina of Time、Majora's Mask、Perfect Dark 和 Sonic Unleashed。這些專案通常能夠實現原始硬體無法實現的增強功能,如超寬顯示器支援、更高的幀率和改進的控制。

專案狀態

  • 構建匹配度:100%
  • 程式碼匹配度:92%
  • 貢獻者:10
  • 相容的 ROM:
    • sa2.gba(美國版)
    • sa2_europe.gba(歐洲版)
    • sa2_japan.gba(日本版)(進行中)
  • 現代平臺移植:
    • Linux/MacOS SDL 64位
    • Windows SDL 64位
    • Win32 原生移植(尚未功能完善)
  • 解析度:寬屏移植(426x240)

SEGA 對粉絲專案的寬容態度

圍繞這個專案的討論中一個值得注意的方面是 SEGA 對粉絲製作內容相對寬容的立場。與一些積極透過 DMCA 下架通知保護其智慧財產權的發行商不同,SEGA 歷來允許粉絲專案蓬勃發展,只要它們不從公司的智慧財產權中獲利。這種寬容的態度培養了一個充滿活力的 Sonic 粉絲遊戲和儲存專案社群。

社群成員將此與 Nintendo 通常更嚴格的版權執法進行了對比。專案開發者自己也指出,如果他們面臨法律挑戰,他們計劃轉向開發能夠自動提取資產而非直接分發資產的工具。然而,他們指出 SEGA 長期以來的寬容歷史,引用了像 Sonic Robo Blast 2 這樣自2000年代初期就存在而沒有受到干擾的粉絲專案。

反編譯的技術挑戰

反編譯過程涉及艱苦的工作,將編譯後的程式碼逆向工程回人類可讀的原始碼。專案貢獻者透露,人工智慧工具目前在這一過程中提供的幫助有限。雖然 AI 可以提供函式佈局的粗略輪廓,但它在建立必須從彙編程式碼推斷出的合理類人結構方面存在困難。

相反,開發者依靠像 Ghidra 這樣的工具進行反編譯輔助,儘管這些工具也有侷限性。該專案代表了數千小時的手動努力,以一種在編譯時產生相同二進位制輸出的方式重新建立遊戲程式碼。這種匹配反編譯方法確保遊戲的行為與原始遊戲完全相同,同時能夠為現代系統進行修改。

討論還涉及了遊戲引擎本身。Sonic Advance 2 是基於 Dimps 開發的一個最小引擎構建的,該引擎首先在 Sonic Advance 1 中實現,並在後續遊戲中得到改進。這個引擎提供了渲染精靈和背景的基本功能,以及一個任務系統,以彌補 GBA 缺乏原生執行緒能力的不足。

遊戲儲存和原始碼保留

社群討論中的一個有趣的切入點是遊戲公司如何管理其歷史原始碼。幾位評論者推測,許多較舊的遊戲原始碼已經丟失,因為在行業早期,遊戲常被視為一次性專案。今天標準的版本控制系統在遊戲開發中直到最近才變得普遍,甚至像 DOOM 這樣的主要遊戲也是透過在團隊成員之間傳遞帶有原始檔的磁碟來開發的。

雖然2000年代初期的一些遊戲可能是用 CVS 或 SVN 等版本控制系統開發的,但 Sonic Advance 2 的所有權情況很複雜。該遊戲在西方由 THQ 發行,後者後來破產,留下了關於誰目前擁有權利的問題。這種不確定性使官方重新發行的可能性變小,進一步凸顯了社群儲存工作的重要性。

Sonic Advance 2 反編譯專案不僅代表技術成就,還代表文化儲存。透過使這款經典 GBA 遊戲在現代系統上可玩並具有增強功能,該專案確保新一代玩家可以體驗 Sonic 歷史中這一常被忽視的篇章。正如一位評論者所指出的,Advance 系列在 2D Sonic 遊戲的討論中經常被遺忘,儘管它捕捉了使原始遊戲特別的本質。多虧了這項社群努力,這些遊戲可能會在一個平臺上找到新的受眾,這個平臺有些出人意料地成為了玩這些較老 Sonic 遊戲的最終平臺——PC。

參考:Sonic Advance 2