操作環境:
- Fedora 40
- OpenMoHAA v0.81.1
《榮譽勳章:反攻諾曼第》(Medal of Honor: Allied Assault,2002)是 FPS 遊戲《榮譽勳章》(Medal of Honor)系列中的第一款 PC 作品。也因此就 PC 玩家的角度而言,這款作品才算是首作,所以本文後續會簡略以《榮譽勳章》來稱呼這款遊戲。
倘若姑且不計《戰慄時空》(Half-Life,1998)的附加模組《決勝之日》(Day of Defeat,2000),這款在早期階段並非獨立發售的作品,則《榮譽勳章》可能算是 PC 平台上第一款標榜寫實體驗的二戰題材 FPS。遊戲內容受到電影《搶救雷恩大兵》(Saving Private Ryan,1998)很大的啟發,在體驗、音效及場景上,都竭盡所能地在當時的技術條件下呈現出貼近電影般的質感。例如在基於《雷神之鎚 III》(Quake III Arena,1999)遊戲引擎的技術上,重現出廣闊的奧馬哈搶灘作戰;以及由知名的電影作曲家 Michael Giacchino 所編寫的遊戲配樂。
《榮譽勳章》後續雖然也出了不少續作,然而擁有此 IP 的發行商 EA,與此同時也擁有另一在題材上有所重疊、但更為著重多人遊戲的《戰地風雲》(Battlefield)系列。最終在後續發展上,《榮譽勳章》系列相形之下就變得有些沉寂下來。不過儘管初代的《榮譽勳章》以現代玩家的觀點來說,可能更多是當作古董來賞析,而不是說它的遊戲性有這麼地歷久彌新。然而玩家也可能會從中發覺到,《榮譽勳章》在許多方面都彷彿是存在著《決勝時刻》(Call of Duty)系列的原始 DNA。這是因為事實上《決勝時刻》正是由初代《榮譽勳章》開發團隊中的主創人員,跳槽至 Activision 旗下後所打造出的新系列。所以某種程度而言,可以說《決勝時刻》部份地繼承了《榮譽勳章》的遊戲特色,算是後者的精神延續作品。
雖然是 Windows 平台的遊戲,不過在許多年以前,《榮譽勳章》也曾經存在著非正式支援的 Linux 移植版本。但始終沒有脫離 Beta 階段,也沒有任何進一步的修正與維護,所以這勢必不是現今可以利用的解決方案。然而所幸如今有一項 OpenMoHAA 社群專案,設法以開源碼的《雷神之鎚 III》引擎為基礎,重構出開源版本的《榮譽勳章》。儘管也仍是處於持續開發中的狀態,但已是目前包含 Linux 在內的現代系統環境上,順利執行《榮譽勳章》的最可靠途徑。
1. 購買及安裝遊戲
在 GOG.com 上有提供《榮譽勳章》及其兩部資料片的合集,這應該是目前最便利的取得來源。在 Linux 上可以使用例如 Wine 來執行其安裝程式:
- wine setup_medal_of_honor_2.0.0.21.exe
本文範例是將遊戲安裝在使用者家目錄下的 mohaa 目錄內,在安裝好的遊戲目錄中,會分別有 main、mainta 及 maintt 三個子目錄,分別代表著主程式及兩款資料片(Spearhead 和 Breakthrough)的遊戲檔案。
2. 安裝及執行 OpenMoHAA
在專案的 GitHub 頁面上找尋最新的 Linux 版本,例如 openmohaa-v0.81.1-linux-amd64.zip,下載後將壓縮檔內的所有檔案皆解開至前一安裝步驟所建立的 mohaa 目錄裡。再進入到該目錄內,對所有的遊戲執行檔給予可執行權限:
- cd ~/mohaa/
- chmod +x *.x86_64
然後以下便分別是主程式及兩款資料片的遊戲執行指令:
- ./launch_openmohaa_base.x86_64
- ./launch_openmohaa_spearhead.x86_64
- ./launch_openmohaa_breakthrough.x86_64
3. 自訂遊戲解析度
遊戲本身提供的解析度選項很有限,諸如寬螢幕比例的調整需求需要人工編輯。以主程式為例,於遊戲的 main 目錄內新增一純文字檔 autoexec.cfg,然後寫入以下內容:
set r_customwidth <寬>
set r_customheight <高>
set r_mode -1
儲存後就能夠以指定的解析度來執行遊戲。另外兩款資料片也是以此類推,於相應的目錄內編輯 autoexec.cfg,若該檔案已存在則是編輯現有檔案。
4. 於多人遊戲中加入 Bot
《榮譽勳章》本身並沒有為多人遊戲模式內建 Bot 功能,所以玩家基本上的選擇,若不是玩單人劇情模式,或者就是在多人模式中與真人玩家對戰。然而若是真的有 Bot 需求,那麼 OpenMoHAA 是有提供一個粗淺但可行的解決方案。首先是在此 GitHub 頁面下載一支 Bot 路徑檔,例如 mp-navigation-v0.0.1.pk3,放置到遊戲的 main 目錄內。然後基本的實現流程,舉例來說同樣是在 main 目錄內,新增一個名稱任意的純文字設定檔,例如 bots.cfg,以利於在遊戲中呼叫及執行。該設定檔的編寫範例如下,並且可以使用「//」作為註解:
// 數字 1-4 即依序為多人遊戲的四種模式,4 為 Objective 模式
set g_gametype 4
// 最大 Bot 數目
set sv_maxbots 16
// 最小玩家數目,也就是會自動以 Bot 填補的數目
set sv_minplayers 16
// Objective 模式的 Omaha Beach 關卡
map obj/obj_team3
完成編輯後,執行遊戲,然後於遊戲主畫面內【Options】→【Advanced】選項中,將【Console】勾選起來並套用變更。接著就可以按下「~」鍵呼叫出遊戲的命令行,然後在命令行中執行以下指令:
- exec bots(具體名稱以先前所建立的檔名為準)
倘若設定一切正常無誤,便會有能力相當陽春、但可用的 Bot 加入到遊戲中。
5. 其它參考資料