數個月前我寫了 "老 iPad 1 的新生命" 一文,我在文末提到這是老機重生的系列文章之一,也是最無聊的一篇,原因就是 iPad 1 真的太老了,RAM 太小 OS 太舊 (iOS 5),再怎麼樣也只能做些簡單的事。可是 iPad mini 1 可不同,雖然它也很老,OS 也很舊 (iOS 9),但能幹的事多太多了,而且由於 iPad mini 的輕薄屬性,讓我更願意帶著它到處走。我在舊文 "如何將捷徑 (Shortcut) 備份匯入至舊版 Workflow 裡?" 提及如何讓老機器能匯入 Workflow 備份檔,也算是 iPad mini 1 老機重生的第一彈,今次來聊聊第二個應用:如何在老 iPad 上安裝遊戲模擬器,以及我的遊玩心得。
安裝
在老 iPad 上玩復古遊戲一直是我的夢想 (為何不用新 iPad?因為我手中最新的 iPad 就是 iPad mini 1),但這個看似微不足道的心願卻一直難以達成。蘋果死都不讓 App store 上架遊戲模擬器的原因我是理解的:1. 不想讓模擬器傷害了 App store 的商業利益,畢竟遊戲是 App store 的主要收益來源;2. 模擬器的遊戲 ROM 幾乎都是盜版軟體,蘋果不想扯上這類糾紛。不過,儘管我完全理解蘋果的作法,但身為一個玩家,我還是相當不滿意的。
當然,如果越獄的話啥都辦得到,iOS device 一個個都是一台小電腦,但我就是不想越獄 (任性),而如果不越獄,目前有三種方法可以安裝非 App store 內的 App。
- Apple Developer Enterprise Program:這是蘋果讓企業大量部屬公司內部 App 用的,不需經過審核,當年 Pokemon Go 還未在新加坡開放的時候,我周圍的中國朋友都是玩網友提供的版本,而該網友就是用企業帳號。這種方案確實可行,但是企業帳號沒這麼容易申請,而且一旦被發現拿去做別的用途應該就是銷號了。
- TestFlight:這個 iOS 8 的新功能允許開發者在提交正式版 App 前將檔案分享給其他使用者以測試未經審核的 App,好處是極易安裝,使用時限大約數個月,可經由軟體更新延長,而更新也在 TestFlight App 中進行,跟一般 App store 的體驗接近。缺點是開發者對於測試人數有控制權,哪天你被踢了就
不能再使用該 App 了。(更正:只是不能收到開發者提供的更新,但可以繼續使用原有的版本) - Sideload:在 iOS 9 加入的 sideload 使得 "任何" 開發者可以直接將自己的 App 放在 iOS 設備裡試用,為期一週,只要有 App-specific 密碼即可。由於不限制軟體來源,所以免費帳號也可以這樣安裝未經審核的 App,只是必須每週 sideload 一次就是了。
仔細看看上面三種方案,應該能發現 Sideload 是裡面最穩定的解決方案,因為不僅蘋果官方允許我們這樣做 (即使 App 不是我們自己開發的),而且一切的好 (不用擔心被踢) 與壞 (每週要重做一次) 都掌握在自己手裡,而 Sideload 在實作上又分為三種:
- 網頁版:如果你在網上搜尋一些 "絕不可能過審" 的 iOS App,應該會找到一些奇怪的網站,比如說 Ignition,很多 Youtuber 在影片中推薦的網站都屬於一類,但你會發現那些網站很容易就死掉了,或是在上面的很多軟體都不能下載。原因就是他們必須要每週重新給那些 App 數位簽名,誰這麼有閒啊?自然是有一次沒一次的,而且下載速度非常緩慢,有時下載不了還要改天再下載咧!所以這種體驗極差的方案很快被我放棄了。
- ipa 檔案:這種方案是最簡單的,開發者直接把編譯好的 iOS App 程式封裝 (注意,是 "封裝",副檔名是 ipa,不是 app) 釋出,只要安裝 Cydia Impactor 及到 Apple ID 官網取得 App-specific 密碼即可安裝。
- xcodeproj 檔案包:很多 Github 開源的 iOS App 使用這種形式來共享,必須要使用 XCode 去安裝,下次有需要再說。
這次先講上述的第二種方法,也是最簡單的 Sideload 方法。首先下載該 App 的封裝檔 (*.ipa),然後用傳輸線連結 iOS 設備並開啟 Cydia Impactor (下圖上),將 ipa 檔拖入,Cydia Impactor 會提示輸入 Apple ID 及密碼 (下圖中、下)。
用 Apple ID 登入之後,開啟二階段認證 (Two-Step Verification),然後就可以取得 App-Specific 密碼 (取得過程中會要求你為 App 命名,隨便填即可)。如上,交給 Cydia Impactor 去跑,結束之後 App 就安裝好了,只要在 "系統偏好設定" 裡驗證該 App 即可:
驗證過程中你會發現開發者就是你自己,如果使用網站下載 (Sideload 的第一種方法),在 Device Management (裝置管理) 裡就會看到某不知名的帳號或公司名。
OK,以上看起來很簡單對吧?但現實不會這麼美好。首先,不是每個你想要安裝的 App 都會編譯好 ipa 讓你下載,有的連 xcodeproj 檔案包都沒有,只能由網站下載,忍受那不穩定的速度及更新頻率,比如說 "小雞模擬器" (Happy Chick)。再來,這些非官方授權的 App 也有系統要求,有些 App 要求更高的 iOS 版本,老機器還是安裝不了,這部份又有兩個例子:AltStore 及 RetroArch。AltStore 是最近很紅的 "非官方授權" App store,說白了就是 "全自動" 的 Sideload 軟體安裝器,不僅讓你輕鬆安裝 App,AltServer 還能每週自動在背景幫你到期的 App 做數位簽名,可惜它只支援 iOS 12 以上的機器;RetroArch 是另一款模擬器 App,"號稱" 支援 iOS 9 到 iOS 11 以上,官方放出的安裝教學影片就是 Sideload 的標準流程,可惜官方放出的 ipa 檔 (v1.7.7) 只有支援 iOS 11 以上,較早的設備都必須越獄才能安裝 (*.app 檔的 zip 封裝,必須越獄才能裝,舊版 RetroArch 在此下載),我在他們的影片下留言,指出他們這樣有誤導用戶的問題,結果就被刪留言了,這種玻璃心跟詐騙集團真的有 87 像 [1]。
由於以上種種原因,我最後選擇了 Provenance,它能完美支援 iOS 9 以上的機器,包括我的 iPad mini 1,而且它提供穩定的 ipa 檔 (請安裝 v1.4,安裝頁提供的 v1.5b 在安裝時會有錯誤 ),每週自己 Sideload 一次就好,不會丟失遊戲紀錄。
體驗心得
Provenance 支援橫屏及豎屏,由於我比較喜歡往年 Gameboy 的操作模式,所以我都用豎屏。模擬器的核心都有內建,直接將遊戲 ROM 傳入機器就可以玩了。傳輸的方式是無線傳輸,只要按下右上角的 "+" 按鈕,則會跳出通知窗口,用瀏覽器連入指定 IP 即可。
開啟 WebServer 以上傳 ROM
(不是同時擷的圖,IP 不同請見諒)
遊戲 ROM 請存入 roms 資料夾。實際操作會發現上傳有點慢,而且傳完之後檔案不會出現在頁面裡,可見網頁端還需要改進,不過這種跨平台的無線上傳我還是很滿意的。
至於遊戲操作上怎麼樣呢?我只能說:差強人意。為什麼?現今這麼多手遊,怎麼還有操縱上的問題?另一方面,有太多第三方的復古遊戲掌機,網上隨便找都有一堆評測,比如說 "Top 10 Best Retro Handhelds Of 2019" 及 "12 Best Retro Handhelds - Which Emulator Should You Buy?",我為何還要在這台老 iPad mini 1 上浪費時間?而且我不是有 Bittboy 嗎?解答以上問題就是我最想在這篇文章裡說的重點。
電視遊戲主機及掌機在歷史上有著不同的市場,主機百家爭鳴,而掌機一直都是任天堂的天下。除了機器本身的體驗優劣,遊戲也必須為了掌機而適配,如今進入了智慧型手機的時代,好的手遊在操作上也必須為了手機的觸控螢幕適配,而手遊的操作跟掌機雖然有點像,但還是不同,對於一些老遊戲的操作更是如此。以下兩點是我認為挑選好的復古遊戲掌機的要點:
- 遊戲的畫面要大,至少要 iPad mini 一半的尺寸。螢幕太小對於任何主機遊戲都是惡夢一場,人物過小要怎麼玩?這也是掌機遊戲跟主機遊戲最大的不同,掌機遊戲的人物大小及縱向捲軸不容易掌控,優秀的 Gameboy 遊戲都有特別優化這方面的體驗。螢幕太小是絕大多數復古遊戲掌機都不合格的主要原因 (包括 Bittboy 初代,新版好像有加大螢幕)。GameShell 是一款用樹莓派改裝的掌機,可玩性極高,但還是因為螢幕太小而阻止了我下單。反過來說,iPad mini 尺寸剛好又輕便,實在是完美的遊戲掌機。
- 需有實體按鍵,或是可調整位置大小的虛擬按鍵。這一點很少人提,但我覺得太重要了。現今的手遊之所以體驗不錯,其實遊戲設計上還是有動巧思的,其中一點就是 "虛擬按鈕要夠大" (有些連位置都可調整) 及 "不用同時按兩個鍵",用意都一樣,就是防止誤操作。以最具代表性的瑪利歐或洛克人為例,常常需要同時按住兩個鍵以集氣跳躍,如果虛擬按鈕太小或是不在手指熟悉的位置,就會一次又一次地誤操作,連個跳躍都有問題還玩什麼?實體按鍵可以解決這一切,但是虛擬按鈕就不行了。很多手遊的體驗好,就是體現在這些小細節,像對岸的王者榮耀完全沒有這類操作問題,可是復古遊戲本就不是為了觸控螢幕設計,於是只能靠模擬器開發者去試圖解決。小雞模擬器 (Happy Chick) 有很多缺點,但是可以自訂虛擬按鈕位置及尺寸的功能真的太棒了,玩起來就比較舒服,Provenance 這方面沒得比,希望未來能改進吧,我也會嘗試寫信給開發者建議此事。
這次的內容花了不少時間嘗試,特別是 RetroArch 那一段實在是不堪回首。我覺得我的 iPad mini 1 還有其他潛力,有 "玩成功" 的新玩意再來分享給各位 (失敗的就算了),有任何建議請留言,多謝各位~
附註
1. 我跟 RetroArch 奮鬥的時間可長了,首先我不能安裝官方提供的 ipa 檔,所以我打算拿官方的原始碼去編譯,結果看到他們示範的 xodeproj 檔都是 iOS 11 的版本。我又在網上找到 RetroArchBeta10.ipa (Mega)、RetroArch iOS9 (Mega) 及 RetroArch v1.6.7,但它們都有類似的問題,就是模擬器的核心 (Core) 不能載入,這個問題又有一堆老外七嘴八舌地討論。其實我覺得這不該讓用戶去操心,新版就沒有這些問題,前提是你的機器要能支援 iOS 11。
沒有留言:
張貼留言