A compact main-menu template for Godot 4.7.1 using the Compatibility renderer.
The sample project includes:
- A start menu with Play, Options, and Quit actions.
- A reusable settings menu with Video, Audio, and Controls tabs.
- Fullscreen, borderless-window, and VSync settings.
- Independent Master, Music, and Sound Effect volume controls.
- Keyboard remapping for movement actions.
- Persistent settings stored in
user://settings.cfg. - A sample scene with pause, settings, resume, and main-menu navigation.
- Keyboard-first focus navigation throughout the menus.
- A reproducible Web export preset.
- Godot 4.7.1 Standard (GDScript), or a newer compatible 4.7 patch release.
- Matching Godot 4.7 export templates for Web export.
SceneManageris an autoload that owns scene IDs and performs safe scene changes. It clears paused and time-scale state before every transition.SettingsManageris an autoload that owns defaults, validation, migration, persistence, and application of video, audio, and input settings.AudioManageris an autoload that owns music, menu sounds, and a configurable pool for queued sound effects.settings.tscnis shared by the main menu and pause menu. UI scripts call the manager APIs instead of accessingConfigFiledirectly.
The settings loader migrates values written by the original Godot 4.2 template, including the old Up, Down, Left, and Right action names and numeric audio keys.
The sample player uses these actions:
move_up— Wmove_down— Smove_left— Amove_right— Dui_cancel— opens or closes the pause menu
Remapping accepts keyboard keys only. Escape cancels the current remapping operation, and duplicate movement bindings are rejected.
Open project.godot with Godot 4.7.1 and run the project. The default scene is scenes/main_menu.tscn.
For Web export, install the matching 4.7 export templates and use the tracked Web preset. The preset writes outside the repository to ../SimpleTemplateMainMenuWebBuild/index.html.