GBA4iOS 折騰記

GBA4iOS 玩高級戰爭2

掌機時代玩得最多的是 GBM(這貨就是 GBA 的改良版),當年無聊的高中課堂都是在光明之魂和高級戰爭中度過的。iPhone 時代有 GBA4iOS 這款模擬器來重溫 GBA 游戲也算一大幸事。這里記錄下安裝方式和一個『bug』的定位過程。

美好的過去一去不返(目前只有開發者能夠安裝)

App Store 從來是禁止模擬器 APP 上架的,不過就算蘋果讓商家,任天堂的律師團也不會放過開發者吧。早期 GBA4iOS 是可以通過企業證書來分發安裝的,蘋果封掉這個企業證書后,用戶也可以通過修改系統時間的漏洞來安裝。
iOS7 蘋果修復這個漏洞后,一般用戶是無法安裝了。還好 GBA4iOS 是開源的,開發者安裝沒有問題。

開發者如何安裝

GBA4iOS 的源代碼托管在這。官方更新代碼并不及時,在最新的 iOS9 Xcode7.1 下會有兩個類庫和 bitcode 不兼容的錯。想省事的朋友可以直接拉取 saagarjha 的這個分支 。代碼拉下來 pod install 一下,導入 GBA 游戲,Enjoy!

一個『bug』的定位過程

GBA4iOS 功能界面都很完善,不過我在玩《高級戰爭2》的時候卻碰到了一個無法容忍的 bug:

游戲中假設金錢數是 4000,這時只要切到其它應用,比如去看個微信,再切回來,游戲其它進程一切正常,金錢數就變成了 0!

這個……這個……第一反應,切到后臺緩存數據的機制有很大問題啊!可也想不通為什么只是游戲中金錢這部分有問題。
真機調試試試發現每次切到后臺都會調用 [[GBAEmulatorCore sharedCore] updateCheats] ,并且都會報 Warning: Codes seem to be for a different game.\nCodes may not work correctly. 警告。
順著代碼才發現每次切到后臺都會 reload 金手指,注掉這行代碼金錢丟失的問題神奇的好了。
這才想明白當時隨手上網搜的金手指有幾個是錯誤的,這些錯誤的金手指每次后臺切換都會重新加載,間接導致金錢丟失(金手指原因不清楚,細節不明)。
解決方法也很簡單:

刪除多余的幾個錯誤金手指,重新讀取游戲,反復測試,金錢數一切正常 ;)


create time: 2015-11-09 00:16

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,227評論 25 708
  • 一只水鳥住進了燕子窩 燕子窩在房梁上 房梁架在粗糙的泥磚里 泥磚縫里有只老鼠 干瘦干瘦的 老房子倒在轟隆里 房梁折...
    深目閱讀 130評論 0 0
  • 昨晚一位家鄉的女生朋友微信給我留言,因為跟男朋友價值觀不合,分手了(講真,天地良心,真的只是女生朋友哦),看到微信...
    汪彪閱讀 1,533評論 0 0
  • 生活從來不會展現溫柔的一面,即便你努力的想要討好生活。有時候我們想要精致的活著,在慵懶的午后,亦或是斜陽氤...
    夫子閑云孫寧富閱讀 328評論 0 0
  • 我喜歡八卦,也喜歡看娛樂新聞。在沒跑步之前,我沒什么興趣愛好。每天除了刷盆友圈,就是看娛樂八卦。曾記得看過一句話,...
    好西好閱讀 240評論 0 0