存檔狀態 vs 存檔文件:有什麼區別?
存檔狀態會快照你整個模擬器的記憶體;存檔文件則複製卡帶上的電池備份。以下介紹何時使用各自以及它們如何儲存。
作者: Mira Köhler · 發布: · 更新:
由 Mira Köhler 於 最後審閱
存檔狀態——記憶體快照
存檔狀態是模擬器 RAM、CPU 暫存器、GPU 狀態、音訊緩衝——所有內容的完整快照。當你載入它時,模擬器會在你凍結的確切位置恢復,無論是在跳躍中、攻擊中還是對話中。存檔狀態通常介於 64 KB 到 4 MB,取決於系統,儲存在瀏覽器的 IndexedDB 中,附帶一個位置識別符。
存檔狀態是僅限模擬器的功能——原始硬體沒有對應功能。它們是模擬提供勝於真實卡帶的最大便利。
存檔文件——卡帶電池
存檔文件(常稱為 SRAM 、savedata 或 .sav)是原始卡帶會寫入其板載電池備份 SRAM 的資料。精靈寶可夢 紅版的存檔文件持有你的隊伍、物品和徽章。最終幻想 VI 的存檔文件持有你的三個存檔位。模擬器會將此文件保留到磁碟(或瀏覽器儲存空間)並在下次啟動時重新載入,就像原始硬體會做的一樣。
存檔文件通常介於 8 KB 到 128 KB。因為它們只在遊戲內存檔點進行遊戲內存檔時保存,它們不像存檔狀態那樣讓你能從無法贏的戰鬥中倒帶。
何時使用各自
- 存檔狀態——在難度高的老闆前的快速救援點、探索分支對話、為稀有掉落物而存檔刷新。
- 存檔文件——你期望在原始硬體上存活的長期進度。為你希望感到權威的遊戲用存檔文件。
- 兩者——大多數人使用存檔狀態進行戰術救援,並依賴存檔文件進行敘事進度。兩個系統共存;它們不會互相覆蓋。
它們儲存在哪裡
在像 EmulatorJS 這樣的瀏覽器模擬器中,存檔狀態和存檔文件都存放在作用於頁面來源的 IndexedDB 中。它們不會跨裝置同步,除非主機網站明確實現雲端同步。清除瀏覽器資料會刪除兩者。大多數瀏覽器模擬器公開匯出/匯入按鈕,以便將它們備份為本地檔案系統上的文件。
常見問題
- 原始遊戲知道存檔狀態嗎?
- 不知道。遊戲完全不知道正在進行存檔狀態——它只是像在硬體上一樣運行。存檔狀態完全是模擬器端功能。
- 我能在模擬器之間共享存檔文件嗎?
- 通常可以共享存檔文件(.sav 格式在 libretro 核心間相當便攜)。存檔狀態是模擬器特定的,因為它們包含核心內部狀態。
- 我的存檔會轉移到另一個裝置嗎?
- 僅當模擬器網站支援雲端同步時,或者你手動匯出並重新匯入它們時。