Skip to main content
Coding Quests

Godot Menu System

Menus are the part of a game everyone leaves until last, and they are fiddly. Pausing, saving settings and moving focus with a gamepad all have to work together. This project has all three working, styled by one theme file.

Free Godot 4.7 project · MIT licensed · v1.0.0

No account needed. Or download the v1.0.0 ZIP directly.

Opening Options from the title screen, lowering the music, starting the game, pausing, restarting and quitting to the title.

What is in it

  • A title screen with Play, Options and Quit.
  • A pause menu with Resume, Restart, Options and Quit to Title.
  • An options menu with a volume slider for each audio bus, plus fullscreen and vsync.
  • Settings saved to disk and applied when the game starts.
  • Fade transitions for every scene change.
  • Keyboard, mouse and gamepad navigation.
  • One theme file styles every menu.

Quick start

Download the project from GitHub and unzip it. In the Godot Project Manager, click Import and pick the project.godot file inside the folder.

  1. Press F5. The title screen fades in with Play selected.
  2. Use the arrow keys or a gamepad with Enter, or the mouse.
  3. Open Options, drag the Music slider, and press Esc to go back.
  4. Press Play, then Esc or P to pause.

The README on GitHub explains how each part works and how to copy it into your own game.

Compatibility and limits

Made for
Godot 4.7, standard build. GDScript only, no .NET needed.
Tested on
Godot 4.7.2 stable, on Windows. Earlier versions of Godot 4 are untested. Transitions wait for SceneTree.scene_changed, which needs Godot 4.5 or later.
Renderer
Compatibility
Code license
MIT. You can use it in commercial games. Read the license
Art and fonts
The Pixel Operator 8 font by Jayvee Enaguas and art from Kenney's Pixel Platformer pack, both CC0 1.0.
Release
v1.0.0, commit 07dd0f0, published 2026-10-03

Known limits

  • There is no key rebinding, resolution picker or language setting.
  • Fullscreen and vsync can do nothing inside the editor's embedded game window. Run the game in its own window to see them.
  • Settings save when Options closes, not while a slider moves.
  • On the web, Quit is hidden and fullscreen depends on the browser.

Learn to build it

Copying a system works until you need to change it. These quests build it with you, one small step at a time. You write the GDScript in your browser and each step is checked before you move on.

2D Roguelike: Capstone

Builds a title screen, faded scene transitions and a pause menu, then wires the whole game loop together.

First 3 lessons free

Capstone: Build the Whole Game

Finishes a platformer with music, screen transitions, and main, options and pause menus with three volume sliders.

First lesson free

See all the free Godot projectsReport a problem with this project