About this manual
This manual covers how to use the save and load screens from the official “Save, Pause & Options Menu” system that ships with ACTION GAME MAKER. It goes through installing it, how the screens are laid out, the rules around slots, how thumbnails are produced, how to open the menu from your game, and where to look when you want to rebuild parts of it.
Saving and loading themselves — the settings on actions like “Save Game Data” and “Load Game Data” — are covered by a separate manual. This one is only about driving the menu you have been given.
What this system gives you
The official system is a set containing a save screen, a load screen, a pause menu and an options menu. Screens, slots, confirmation dialogs, gamepad handling and text in 9 languages are all there from the start, so you can ship a save feature without assembling a menu yourself.
| What you want | How this system handles it |
|---|---|
| Stop the game and bring up a menu | The pause menu (Options / Save / Load / Exit / Back) |
| Let the player save anywhere | The save screen (10 slots) |
| Let the player continue | The load screen |
| Resume from the last autosave | The autosave slot (top row, its own colour) |
| Let the player tell saves apart | A thumbnail, map name and timestamp on every slot |
| Volume, display, language, key bindings | The options menu (not covered in this manual) |
Installing it
- Open the Assets panel and press “Manage Official Systems…” at the top.
- Pick “Save, Pause & Options Menu” from the list and press “Install”.
- It is done once the status reads “Installed”.
Installing puts the following into your project.
| What is placed | Role |
|---|---|
res://ui/OfficialMenuSystem/pause_menu.tscn |
The pause menu (the way into save and load) |
res://ui/OfficialMenuSystem/SaveMenu/save_menu.tscn |
The save screen |
res://ui/OfficialMenuSystem/SaveMenu/load_menu.tscn |
The load screen |
res://ui/OfficialMenuSystem/SaveMenu/save_slot.tscn |
The appearance of a single slot |
res://ui/OfficialMenuSystem/OptionMenu/OptionMenu.tscn |
The options menu |
res://ui/OfficialMenuSystem/menu_theme.tres |
The look of the whole menu (its theme) |
Autoload SaveInfoManager |
Reads and writes slot information and thumbnails |
Autoload SettingsManager |
Saves the options menu’s settings |
Both Autoloads are registered for you during installation. Deleting them by hand stops the menu working, so leave them alone.
To back it out, press “Remove” on the same screen. Files you edited yourself after installing are kept, so a screen you rebuilt will not disappear on you.
Opening it from the game
The save and load screens are built to be reached through the pause menu. The only thing your game has to provide is a single step that opens the pause menu.
- Open the visual script of an object that is always running, such as the player.
- Build the transition for pressing the pause button.
- Put “OpenMenu” on the destination state and set the menu scene to
pause_menu.tscn.
“CloseMenu” is what closes it. Pressing “Back” in the pause menu is handled by the visual script that ships with the system, so your game does not need to provide that.
How the buttons connect to the visual script
The pause menu’s buttons are built so that pressing one emits a signal with the same name as the button.
| Button (node name) | Signal emitted | What the bundled visual script does |
|---|---|---|
Option |
Option |
Shows the options menu |
Save |
Save |
Shows the save screen |
Load |
Load |
Shows the load screen |
Exit |
Exit |
Quits the game after a confirmation dialog |
Back |
Back |
Closes the menu |
On the save and load screens, pressing a slot emits a save / load signal together with the number of the slot pressed. The bundled visual script picks that up and runs the save or load action.
The same convention applies when you add a button. Add a Button under MenuBar/VBoxContainer in the pause menu and its node name becomes the signal name as-is. All that is left is to add a transition starting from a signal of that name in pause_menu_manager.vs (the visual script attached to PauseMenuManager inside the pause menu).
The gamepad’s A / B buttons are added to ui_accept / ui_cancel automatically when the menu opens, so you start out able to confirm and cancel from both keyboard and pad. Cancel (ui_cancel) counts the same as “Back”.
How the save and load screens are laid out
Both screens have 11 slots.
- Top row: the autosave slot
- Below it: the 10 slots 01 to 10
Each slot shows the following.
| Display | Contents |
|---|---|
| Number | 01 to 10. Blank on the autosave slot |
| Thumbnail | The screen as it was when saved (256×144) |
| Map name | The name of the map you were on when you saved |
| Timestamp | In the form 2026/08/03 16:15 |
A slot with no data reads “NO DATA”.
You cannot save to the autosave slot by hand. It has no number and is marked out by the word “Autosave” and the slot’s orange colour; pressing it on the save screen brings up the message “cannot save to the autosave slot”. It only fills up when your game autosaves.
Saving brings up a confirmation dialog after you press. Pressing an empty slot on the load screen gives you a message rather than a confirmation dialog.
Note that the “map name” is simply the node name of the map that was on screen at the time. If you want something player-facing, rename the map’s node to something readable (if none is found, it reads “Unknown”).
Thumbnails
A thumbnail is a shot of the game screen just before the save screen opened. That is why the menu is not in the picture.
For manual saves
Pass through the plugin action “SaveThumbnail” before the save screen opens.
- Open “Other Actions” on the add-action screen.
- Pick the “Save” category on the “OfficialPlugin” tab.
- Choose “SaveThumbnail”.
Put it where the pause menu opens, or immediately before the save screen opens. Without going through this action, the thumbnail used is whatever was taken last (or no thumbnail at all if one was never taken).
For autosaves
You do not have to place anything. SaveInfoManager picks up the autosave completing and turns the screen at that moment into a thumbnail automatically.
Where the files live
A save is split across two sets of files. The engine writes the save itself; this system writes what the screen displays.
| File | Written by | Contents |
|---|---|---|
user://save_data_<number>.actgd |
The engine | The save itself (variables, scene state and so on) |
user://save_data_<number>_info.json |
This system | Map name and timestamp |
user://save_data_<number>_thumb.jpg |
This system | The thumbnail |
user://auto_save_data.actgd |
The engine | The autosave itself |
user://auto_save_data_info.json / _thumb.jpg |
This system | Display data for the autosave |
The number in the file name starts at 0. “01” on screen is slot 0, and “10” is slot 9. Count from 0 when you specify a slot number in your game’s actions too.
_info.json and _thumb.jpg are separate files from the save itself. Deleting only one side leaves you with a slot that has data but reads NO DATA on screen (or the reverse). Delete them together.
Rebuilding parts of it
The installed files can be edited directly. Here is where the common changes live.
| What you want to change | Where to go |
|---|---|
| The look, colours and fonts | menu_theme.tres |
| The layout and size of one slot | SaveMenu/save_slot.tscn |
| Screen titles and button placement | SaveMenu/save_menu.tscn / load_menu.tscn |
| The save/load flow itself | The visual script on the …Manager (an Area2DGameObject) inside each scene |
| Adding a button | Add a Button under MenuBar/VBoxContainer in the pause menu |
| Text (9 languages) | OptionMenu/translations/options_menu.csv |
| The number of slots | for i in range(10) in SaveMenu/save.gd and load.gd |
When you change the slot count, change it to the same number in both the save screen and the load screen. Change only one and you end up with slots you can save to but that never appear in the list.
options_menu.csv holds text in 9 languages (English, Japanese, Simplified Chinese, Traditional Chinese, Korean, Portuguese, Spanish, German, Russian). Adding a key means reimporting in the Godot editor, so if you only want to change wording, editing the contents of an existing key is the safer route.
Things to watch out for
- The
SaveInfoManagerAutoload is required. Delete it and slot information cannot be read, leaving every slot reading NO DATA. Be careful not to sweep it up when tidying Autoloads in the project settings. - You cannot save to the autosave slot by hand. It is not that “one of the 11 slots refuses to fill” — that is what the slot is.
- Thumbnails only update when “SaveThumbnail” has been run. If you wire things to jump straight to the save screen, the thumbnail stays as whatever scene came before.
- The map name is the map’s node name. There is no mechanism for a separate display name.
- Slot numbers start at 0. They are off by one from what is shown (01–10).
- Long translations break the layout. “Autosave” gets long in Russian and Portuguese, so putting it in a Label with no fixed width pushes its neighbours out. When you replace wording, check the length in the other languages too.
- Put text colour on the
LabelSettingsside. A Label that hasLabelSettingsset ignores the theme’s text colour (add_theme_color_override). - When making large changes to the save screen’s appearance, do not rename
SlotButtoninsave_slot.tscn. The code that focuses the first slot looks for that name. - If the official systems list says “Needs Repair”, press “Repair” on that same screen. It cannot be fixed if files are missing, in which case “Remove” it and install it again.