How-To:Linux 安裝 Heavy Gear II
操作環境:
- Fedora 30
- Heavy Gear II 1.00b
1999 年的《重裝機甲兵 II》(Heavy Gear II),是一款在技術上相當先進的機甲戰鬥模擬遊戲。而隔年發行的 Linux 版本,也在 Linux 遊戲歷史上有著重要的里程碑。因為它是第一款從 Direct3D 移植到 OpenGL 的 Linux 遊戲,同時也是第一款實作立體環繞音效的 Linux 遊戲。
然而無論是 Windows 版還是 Linux 版,目前皆已無官方管道可購買到這款遊戲。考量到此遊戲形同廢棄軟體(abandonware)的處境,現在的玩家如果有興趣的話,多半只能從網路上找尋光碟映像檔來安裝。雖然由於其骨灰級程度,在現今的 Linux 環境執行這款遊戲也是會遇到一些毛病,不過整體而言遊戲仍是可以運作的。
1. 安裝遊戲
本文不會特別說明如何取得 Linux 版的安裝映像檔,玩家可以自行在網路上找尋。一旦取得映像檔後,首先第一個步驟是從 liflg.org 網站下載由社群所製作的新版安裝程式。然後將映像檔掛載起來,接著便執行安裝:
- chmod +x hg.2_1.00b-english_x86.mojo.run
- ./hg.2_1.00b-english_x86.mojo.run
安裝程式預設會將遊戲安裝在使用者家目錄的 hg2 目錄內。
2. 執行遊戲
由於遊戲啟動腳本對執行路徑有依賴,所以得先明確地切換到遊戲所在目錄:
- cd hg2
接著一般執行、視窗模式執行、以及透過 padsp 來解決無聲音問題的執行方式分別如下:
- ./hg2.sh
- ./hg2.sh -w
- padsp-32 ./hg2.sh
3. 畫面問題疑難排解
在使用 NVIDIA 官方驅動程式的情況下,如果覺得畫面上下區塊的撕裂感有些嚴重,可以執行 nvidia-settings 設定工具,前往【OpenGL Settings】,將【Sync to VBlank】取消勾選試試看。以及為了解決材質之間接縫處有明顯格線的問題(如附圖),則將【Use Conformant Texture Clamping】取消勾選。
4. 遊戲音樂的播放
《重裝機甲兵 II》是使用 CD 音軌作為遊戲音樂的儲存及播放方式,這對 90 年代的 PC 遊戲來說是蠻常見的作法,其具體的實作則有數位及類比的差異。然而現代主機的光碟機與音效卡之間,已無可直接播放 CD 音軌的類比輸出入介面相連。因此倘若遊戲所設計的音軌播放方式是依賴類比介面,而非經由光碟機的數位傳輸介面,那麼即便放入遊戲光碟也不會播放音樂出來。由於《重裝機甲兵 II》的 Linux 版即是屬於這樣的狀況,因此 DR 設想的解決方案,是修改及替換遊戲所使用的 SDL 函式庫,讓原本播放 CD 音軌的函式,實際上是播放指定的音訊檔。
hg2_music.7z 是 DR 將原版 Linux 遊戲光碟的音軌轉存出來的音訊檔。下載後將其內的 music 資料夾解開到 hg2 目錄下,接著再下載 hg2_sdl-20200110.7z,解開後用其內的 libSDL-1.1.so.0(實際版本為 SDL 1.2.15)替換掉原先遊戲目錄裡的同名檔案。以及檔案包裡的 cd_wrapper 檔案同樣也需要放置在遊戲目錄內,並確認是否有給予可執行權限。
cd_wrapper 是一支 Python 程式,會在遊戲嘗試播放 CD 音軌時被呼叫。它會背景執行 VLC 播放軟體來播放 music 資料夾中的曲目,因此系統上需要安裝 VLC,或者也可以自行修改程式內容來變更其播放途徑。而藉由自訂的 SDL 函式庫及外部程式,就能夠解決沒有遊戲音樂的問題了。