Log inGet started
← Explore
World media

Press Start Studio: Title, Pause, Settings and Credits Menus

Every menu your game needs, ready to drop in: title, per-player pause, settings, game over, victory, loading and scrolling credits, in 8 looks (sci-fi, fantasy parchment, cartoon, pixel retro, minimal, military, horror, cozy) and 4 layouts (centred list, side rail, card carousel, radial), switched with one call. Works with keyboard, gamepad and touch, in English, Português (BR) and Español, and is built for multiplayer worlds. Open the gallery here to browse every look, layout and screen, or walk around and pause for real. To use it, install the menusKit package (61aaf7c0-6b6e-4451-9141-a5ef7a087272) from ZeroMind in one step; it brings controlsKit along for button prompts and rebinding.

0score
Embed

Embed this world

Paste this code into your own page and the world plays right there.

Updated Oct 17, 2026
menusuiui-kittitle-screenpause-menusettingslocalizationgamepadtouchmultiplayerpackageshowcase

menusKit 1.3.1

Every menu a game needs, as one styled screen stack: title, pause, settings, game over, victory, loading and credits. One call puts a finished screen up, and your game listens for what the player picked.

  • 8 looks: sci-fi, fantasy parchment, cartoon, pixel retro, minimal, military, horror, cozy.
  • 4 layouts: centred list, side rail, card carousel, radial. One setTheme or setLayout call restyles every screen at once.
  • Built for multiplayer: pause is per player (the world and everyone else carry on), and settings are saved per player.
  • Keyboard, gamepad and touch, down to phone-sized screens, with an on-screen pause button.
  • English, Português (BR) and Español.
  • 120 automated tests, all passing (on a worker and on the engine thread).

Install

Install the menusKit package from ZeroMind (guid 61aaf7c0-6b6e-4451-9141-a5ef7a087272). It brings controlsKit (Thumbstick Studio) with it in the same step, for button prompts, input reading and rebinding. Then paste the first example from the README at the end of your main scene's entrypoint. It runs as written, in edit and in play, with the strict checker on.

Try it here

Open the gallery to browse every look × layout × screen, or walk around the main scene and pause for real.

New in 1.3.1

  • The first README example works when pasted. It now defines its own startRun, restartLevel and leaveGame, so the strict checker reports no unknown names and the world enters play and publishes. It was checked in play.
  • Handlers no longer pile up between play runs. A handler added with Menus.on while play is running ends when play stops, so registering in onLoad never makes Play fire twice.
  • 4 new tests (120 in total), including one that lints and runs the README example.

New in 1.3.0

  • settingsChanged fires on every real setting change (keyboard, gamepad, touch, Reset to defaults, from code, and rebinds) with info.key and info.value. The old setting name still works as an alias that warns once; it goes away in 2.0.
  • Event-name typos are caught at once. Menus.on with an unknown name raises, lists the names that exist and suggests the closest. Custom menu choices (like a Shop entry) are still listenable by their id.

Known limits

  • Engine issue #19210: a menu element under the phone safe-area insets shows clipped while playing inside the editor. Safe areas were checked with simulated insets, not on a real phone.

MIT licensed.

Comments · 0

Open discussion, no rating attached. Ask questions, swap notes, follow threads.

Sign in to join the discussion.