以前的Windows作業系統有內建許多小遊戲,包括Windows 7遊樂場,是許多人的童年回憶。但是在最新版的Windows作業系統卻移除了!根據Microsoft官方說法,這些小遊戲當初是設計用來測試鍵盤滑鼠用的,現在已經用不著他們啦!
但其實還是有方法安裝舊版小遊戲,譬如網站win7games維護的專案,就提供了簡易安裝器,讓使用者在最新版Windows安裝舊版小遊戲。
那麼有沒有可能在Linux玩這些Windows舊遊戲?有人向我問起這個神奇的操作,便覺有趣,所以就來研究一番。如何在不採用虛擬機的環境下遊玩Windows舊遊戲?
這又延伸出一個問題:Ubuntu有類似Windows內建小遊戲嗎?還真的有。
1. Windows內建小遊戲列表#
Windows 7和Windows XP時代的小遊戲應該是最為人熟知的。
- 立體彈珠台 - 太空軍校生 3D Pinball for Windows – Space Cadet
- 接龍 Solitaire
- 連環新接龍 Spider Solitaire
- 踩地雷 Minesweeper
- 新接龍 FreeCell
- 傷心小棧 Hearts
- 3D西洋棋 Chess Titans
- 3D麻將 Mahjong Titans
- Purble Place
- Internet Spades
- Internet Checkers
- Internet Backgammon
2. 用Wine執行Windows 7 Games exe#
目前測試是失敗的。雖然能夠安裝,但是遊戲無法正常執行。
測試過程:
利用Bottles for Linux,酒瓶設定選Gaming,利用Wine 10.0安裝win7games網站提供的exe。不過遊戲都開不起來。
嘗試解決過程:Reddit有人遇到類似問題,他們是說Wine不支援Windows的MUI組件,需要改原始碼才能支援。裡面有一個Wine的patch分支版,可能要自行編譯。
然後他提供另外一個解決方法,是在Windows用Resource Hacker反編譯Windows遊戲,將同一目錄的.mui包進去,重新打包exe,藉此讓Wine能夠執行Windows 7遊戲。不過我試了遊戲還是崩潰。
3. 尋找原生的類似遊戲#
因為這些Windows遊戲都是常見的桌上遊戲,所以很容易找到Linux開源社群製作的替代品,社群多半有製作中文翻譯界面。
更進一步說,現在Web技術很發達,所以這些遊戲早就有很多人做成網頁版程式了。
但如果要遊戲界面跟Windows版一模一樣的,恐怕做不到哪!
Linux桌面環境的開發團隊在開發附屬應用程式時會順便製作小遊戲,譬如GNOME和KDE都有類似Windows內建的遊戲。但較少Linux發行版內建小遊戲,需要使用者手動安裝。
各大Linux發行版通常會將這些小遊戲打包在一起成為一組套件,Ubuntu的話只要用apt install
指令安裝就行了。
比如Ubuntu的gnome-games
套件,都是用GTK寫成的,包含了以下遊戲:
另外一組kdegames
套件,以QT框架為主,裡面光桌上遊戲類的就有很多種:
如果Linux發行版沒有打包上述的遊戲套件,也可以到Flathub下載個別遊戲。記得安裝Flatpak套件管理器再操作。
此外,Flathub上面有很多獨立小遊戲。以立體彈珠台來說,這個Space Cadet Pinball就做的挺不錯的,屬於逆向工程移植到Linux的版本,不用透過Wine轉譯。還有一款開源,自訂性高的Visual Pinball可以嘗試。