How-To:Linux 安裝 Serious Sam

操作環境:

  • Fedora 40
  • SeriousSamClassic-VK 1.10.6d

 

倘若以簡而言之的描述來形容,則《重裝武力》(Serious Sam)的遊戲性基本上就是一款較為歡樂的《毀滅戰士》(Doom),並且更加著重於廣大的室外場景。當年 DR 第一次玩到這款 FPS 遊戲時,便對當中頗不嚴肅的遊戲內容,以及滿坑滿谷(又稀奇古怪)的敵人感到非常印象深刻。《重裝武力》是一款在設計概念上非常單純的遊戲,它並沒有什麼認真的故事劇情,也不是很重視玩家之間的連線對戰;主要的遊戲價值幾乎都是體現在多人合作通關、一同消滅滿坑滿谷敵人的那種混戰感。也因此,除了網路連線外,遊戲還提供了本機分割畫面的多人模式,以 PC 平台上的 FPS 遊戲來說相當罕見。

 

最初代的《重裝武力》實際上分成了兩款先後推出的遊戲作品,遊戲名稱含副標題分別是《Serious Sam: The First Encounter》(2001)和《Serious Sam: The Second Encounter》(2002),這兩款作品當年在台灣發行時分別是以《重裝武力》及《重裝武力 2》稱呼之。但由於後來真的出了個二代(Serious Sam 2,2005),使得中文命名上變得容易混淆,所以本文會採原文來作為區隔。《The First Encounter》和《The Second Encounter》是使用相同的遊戲引擎(Serious Engine)開發而成,而遊戲內容也並無很大的差異,即有點類似於《毀滅戰士》(Doom,1993)與《毀滅戰士 II》(Doom II,1994)之間的情形。

 

《重裝武力》雖然如今也算是一款相當古老的遊戲,但其實遊戲的延壽性做得很不錯,有不只一種可行途徑能夠獲取及執行此遊戲。首先是遊戲的原始碼在 2016 年以 GPLv2 許可證釋出,因此衍生出許多經過現代化改良且具備跨平台支援的分支版本,可搭配原版遊戲執行起來。接著是官方的 HD 版本,僅針對 Windows 平台(Steam)。最後一種途徑,則是官方的 Fusion 2017 新引擎強化版(Steam),支援 Windows、macOS 及 Linux 平台,不過玩家的 Steam 遊戲庫需要同時擁有 HD 版本。

 

在這些方案裡面,倘若是希望在 Linux 平台上,以無 DRM 限制的方式來安裝遊戲。那麼 DR 會認為最佳方案是從 GOG.com 上購買原始版本(The First EncounterThe Second Encounter),然後使用 SeriousSamClassic-VK 這個開源碼分支來執行遊戲,而這便是本文所採取的途徑。除了跨平台支援外,此分支版本是以 Vulkan 為預設的繪圖模式。不過如果 Vulkan 跑起來有些問題的話,也是能夠在遊戲中切換至遊戲引擎起初所支援的 OpenGL 繪圖模式。

 

本文將一併說明《The First Encounter》與《The Second Encounter》的安裝及執行流程。倘若只希望安裝其中一款,則可以自行跳過其它多餘的步驟。

 

1. 安裝 SeriousSamClassic-VK

使用 Flatpak 是較為便利的方式之一,而本文的後續操作也將是基於 Flatpak 環境來作為示範。首先的第一步驟,可單純地執行以下安裝指令:

  • flatpak install flathub io.itch.tx00100xt.SeriousSamClassic-VK

 

2. 安裝遊戲檔案

建立以下兩個目錄,分別是用於存放《The First Encounter》和《The Second Encounter》的遊戲檔案:

  • mkdir -p ~/.var/app/io.itch.tx00100xt.SeriousSamClassic-VK/data/Serious-Engine/serioussam
  • mkdir -p ~/.var/app/io.itch.tx00100xt.SeriousSamClassic-VK/data/Serious-Engine/serioussamse

 

然後便安裝遊戲檔案,可以使用 Wine 來執行 GOG.com 所提供的安裝程式,再將安裝後的檔案全數複製到指定目錄。不過更快速的作法,應該是使用 innoextract 工具(若無就先安裝起來),將安裝程式中的檔案直接解開至指定目錄:

  • innoextract setup_serious_sam_the_first_encounter_1.05_\(21759\).exe -d ~/.var/app/io.itch.tx00100xt.SeriousSamClassic-VK/data/Serious-Engine/serioussam
  • innoextract setup_serious_sam_the_second_encounter_1.07_\(21759\).exe -d ~/.var/app/io.itch.tx00100xt.SeriousSamClassic-VK/data/Serious-Engine/serioussamse

 

3. 執行遊戲

倘若是以命令行的方式,《The First Encounter》的執行指令如下:

  • flatpak run io.itch.tx00100xt.SeriousSamClassic-VK

 

《The Second Encounter》則為:

  • flatpak run --command=serioussamse io.itch.tx00100xt.SeriousSamClassic-VK

 

遊戲會在首次執行後,建立設定檔於以下路徑:

  • ~/.var/app/io.itch.tx00100xt.SeriousSamClassic-VK/data/Serious-Engine/serioussam/Scripts/PersistentSymbols.ini
  • ~/.var/app/io.itch.tx00100xt.SeriousSamClassic-VK/data/Serious-Engine/serioussamse/Scripts/PersistentSymbols.ini

 

所以在一旦有需要時,也可以手動編輯該設定檔,來調整遊戲設定。例如以透過遊戲選單以外的方式,在 Vulkan 及 OpenGL 繪圖模式之間做切換,分別是將 sam_iGfxAPI=(INDEX) 值設為 1 及設為 0。或者若因故需要重設整個遊戲設定,則可以將設定檔刪除,使其自動重建。

 

4. 其它參考資料