UE4でゲームを作成するときに、実際にセーブデータってどこに出来るの?という件を調べたのでメモ。
Windowsの場合です。UE4のバージョンは4.22で調べましたが、4.25でも同じだと思います。
SteamやEpic Games Storeにゲームをリリースする際にクラウドセーブに対応する場合、実際に保存するフォルダがわからないと困りますよね。
結論
エディタの場合
プロジェクトフォルダ/Saved/SaveGames
パッケージビルドの場合
Shipping以外
作成されたパッケージの実行ファイルから起動した場合
パッケージフォルダ/WindowsNoEditor/{プロジェクト名}/Saved/SaveGames
Visual Studiosから実行した場合
プロジェクトフォルダ/Saved/Coocked/WindowsNoEditor/{プロジェクト名}/Saved/SaveGames
Shippingビルド
%USERPROFILE%\AppData\Local\{プロジェクト名}\Saved\SaveGames
%USERPROFILE%はユーザーごとのドキュメントフォルダ、「ドキュメント」のひとつ上のフォルダです。
Explolerのアドレスバーに%USERPROFILE%と入力してEnterを押すとこのフォルダが開きます。
もうすこし詳しく
要は開発中はプロジェクトフォルダのSavedに保存されますが、Shippingビルドしてゲームとしてリリースするバージョンではユーザーごとのフォルダに保存されます。
ここから応用編、Developmentでデバッグしながら実際のゲームと同じセーブデータを使用したい場合の方法。
起動時のオプションに "-SaveToUserDir"を指定してやると、Shippingビルドと同様にユーザーごとのフォルダがセーブデータのフォルダになります。
また、Savedというフォルダ名を変更したい場合は "-saveddirsuffix={追加フォルダ名}"というオプションを指定することで、Saved_{追加フォルダ名}というフォルダ名にすることができます。デバッグ時に対象セーブデータを切り替える場合などに使えそうです。
まとめ
まあ、UE4のソースコードを見ればわかることですが、自分が忘れたときのために書いておきました。