# Set where saves are kept

> Choose the prefix of your save files, the storage they go to and how strongly they are compressed, and see which files Rolly Save writes and which it leaves...

Product: Rolly Save 1.0.0 | Sheet: guide | Updated: 2026-10-31 | HTML: https://rolly-docs.pages.dev/save/guides/save-storage/

## Pick the settings

Project Settings > Plugins > Rolly Save, saved in `DefaultGame.ini`:

| Setting | Default | What to choose |
|---|---|---|
| File Prefix | `rollysave` | A short name of your game: 1 to 16 lowercase letters and digits, starting with a letter. Set it before release: saves under an old prefix no longer show after a change. |
| Storage Backend | Platform Save Storage | Platform Save Storage for a shipped game. Memory Only (not saved) for kiosk demos and tests. A C++ subclass of Rolly Save Backend for storage of your own, such as a cloud store. |
| Compression | Balanced | Balanced for most games, Fast for large worlds saved often, Smallest for small saves or tight storage quotas, Off for the fastest saves. Every setting loads files written with any other. |

A prefix or backend that cannot be used falls back to `rollysave` or Platform Save Storage, and a setup error in the Message Log and on screen says what to fix.

## Find the save files

Platform Save Storage writes through the platform's save system: `Saved/SaveGames` on Windows, Mac, Linux and Android (`%LOCALAPPDATA%\<Project>\Saved\SaveGames` in a packaged Windows game), the platform's save storage on iOS and consoles.

| File | Holds |
|---|---|
| `<prefix>_slot_<key>_a.sav` and `_b.sav` | A save slot: two copies, so a crash during a save never loses the save before it |
| `<prefix>_profile_<key>_a.sav` and `_b.sav` | A player profile |
| `<prefix>_index_a.sav` and `_b.sav` | The slot index: each slot's newest copy and its header, for slot lists |

The key is the slot's name in lowercase, so `Slot1` and `slot1` are one slot on every platform. A name with other characters, or longer than 40 characters, keeps its letters and digits and gains eight hex digits: `My Slot!` becomes `my_slot_7537df76`. The name as your game gave it stays inside the file.

Two names can make one key, such as `My Slot!` and a slot your game names `my_slot_7537df76`. Rolly Save refuses the second save with `NameCollision` and a setup error that names both, instead of letting one slot replace the other. Put the slot's name in the file's display name (`FRollySaveFileHeader::DisplayName`) so the check can see it.

## Keep other files safe

Rolly Save lists, reads, writes and deletes only files of its prefix and these names, compared with case. Enhanced Input's key files, Rolly Settings' files and your game's other saves in the same folder are never touched. Give no other file a name that starts with your prefix: on Windows, names that differ only in case are one file.

Run one copy of the game per save folder at a time. Each running game remembers which copy holds the newest save; a second copy writing the same files is not noticed and can write over a save the first one just made.

## List the saves

`URollySaveStore::List` returns every slot and profile of a prefix from the slot index, with the display name, save time, versions and metadata of its newest copy, without reading a save. The index is written after each save, load or delete that changes it.

- On storage that can list its files (desktop, mobile), the first listing of a session checks the index against the files: a slot copied into the folder is added, a slot whose files are gone is dropped.
- On storage that cannot list its files, as on some consoles, the index is the only list. A slot missing from it, such as after both index files were deleted, returns when it is loaded by name.
- A slot whose newest copy is damaged or made by a newer version is left out of a list rebuilt from the files.
