フリーゲームサイト等にあるWebブラウザゲームのセーブデータの保存場所はどこか?(スマホorPC /RPGツクールMV Unity-Naninovel)
結論
ゲーム、ブラウザによる。
といっては元も子もないので、
Windows10 Chromeバージョン: 89.0.4389.128(Official Build) (64 ビット)の例を出す。
※そのゲームがセーブの時に使用するデータベースのAPIによって
ブラウザ内での保存されてる位置は変わる、基本的にはPCのローカルストレージのどこかに保存されている。
RPGツクールMVの場合
LevelDB APIを使っているっぽい
Chromeブラウザ使用してRPGアツマールやふりーむなどでゲームプレイした場合
保存場所:
C:\Users\(ユーザー名)\AppData\Local\Google\Chrome\User Data\Default\Local Storage\leveldb
※ユーザー名やChromeのバージョンによっては違うかもしれないので適宜読み替えてください
その中の
xxxxxx.ldbなどのファイルがゲームのセーブデータ本体にあたる。
セーブファイル毎にこの.ldbがあるとは限らない。まとめて書き出されている可能性もある。APIを介さずにファイルを直接弄るのはデータ破損につながる。
全消去(他のゲーム含む)でかまわない場合はleveldbのフォルダ毎削除すればOK。leveldbのフォルダと初期ファイル自体はChrome起動時に自動生成されるので問題なかった。
参考
https://1-notes.com/rpg-atumaru-local-save-data/
UnityのNaninovel(WebGL版)の場合
Naninovelのセーブシステムはマニュアルを見ると
Indexed Database APIを使用しているらしい
https://naninovel.com/guide/save-load-system.html
保存場所:
C:\Users\(ユーザー名)\AppData\Local\Google\Chrome\User Data\Default\IndexedDB\https_(アプリ名).indexeddb.leveldb
xxxxxx.logなどのファイルがゲームのセーブデータ本体にあたる。
セーブファイル毎にこの.logがあるとは限らない。まとめて書き出されている可能性もある。APIを介さずにファイルを直接弄るのはデータ破損につながる。全消去でかまわない場合はhttps_(アプリ名).indexeddb.leveldbのフォルダ毎削除すればOK
ブラウザからデータを消すには?
Chromeであればデべロッパーツールからも消すことができる。
対象のゲームページ開いてF12押してchromeデベロッパーツール起動。
参考:https://www.searchlight8.com/chrome-cache-delate/
Storageを選んでIndexedDBにチェックをいれて削除実行(Clear site data)
削除できる項目リスト
Storage
-Local and session storage
-IndexedDB
-Web SQL
-Cookies
Cache
-Cache storage
-Application cache
強引に消す場合はDBが保存されてるフォルダを直接削除!
Iphoneとかのスマホブラウザの場合、どこに保存されているのか?簡単に消せるのか?(環境iOS14.4.2)
Safariを例にして少し調べた感じ、SafariがどこにIndexedDBとかleveldbを保存しているかはちょっとわからなかった。UI上からDBだけを削除するというのはハードル高そう。※有識者の方、教えていただけると助かります。
Root取得してSafariのインストールディレクトリの中のそれらしきものをgrepするしかなさそうにみえる。
一応下記の手順で消えることは確認したが、他サイトの履歴とかCookieが一気に消えるのでお勧めはしない。
「設定」>「Safari」> 「履歴とWebサイトデータを消去」>「履歴とデータを消去」
これを実行すると "消去すると、履歴、Cookie、その他のブラウズデータが削除されます。" と忠告がでる。
「その他のブラウズデータ」の中にDB群が含まれていると思われる。
「設定」>「Safari」>「詳細」>「Web サイトデータ」で個別のWebサイト毎に消せそうにみえるが、消されるのはCookieだけらしく、DBは削除されなかった。
leveldb とかIndexed Database とかなんやねん、て方は下記リンクが参考になるかも。自分もよくわかってない。難しかったので深入りはせず撤退。
基本的にはブラウザ側のデータベースシステムで、クライアント側ストレージにデータを保存するときに使うもの。という理解
https://qiita.com/sachiko-kame/items/aebd618ef39de982ed7b
https://en.wikipedia.org/wiki/Indexed_Database_API
https://yosuke-furukawa.hatenablog.com/entry/2014/05/05/095207
RPGツクールMV制作のRPG無料公開中!!