GameMaker (2.3)

Menu and Input System

Milán Várady

You must be logged in to obtain assets


This extension adds a menu and input system to GameMaker Studio 2 version 2.3.3+.

Main features

  • Create a title and pause menu in no time. 
  • Organize multiple inputs of any type into actions, like vk_rightord("D"), and gp_padr into a single category/action right
  • And combine these two to create a controls menu based on an input system in one line of code where the player can edit the inputs.

You can buy this extension on as well which also contains an example project and a free demo version.


Menu system

You can create menu pages where you can put different elements like:

  • sliders
  • toggles
  • credits
  • shifts (multi-option select)
  • controls as previously mentioned

And then access their values from anywhere.

Additional features of the menu:

  • Automatic sizing - the menu adjusts the size of its elements to your window size
  • Pause system - pause any game with one function
  • Presets - change or even remove buttons in different situations easily
  • Saving and loading - saves the settings and even the controls automatically
  • Easily customizable look

Input System

The input system makes dealing with any type of inputs very easy. Basically, you can organize a bunch of inputs (keyboard, mouse, gamepad) into categories like right or jump. And then check them all in one line.

But it can do much more than that. Here is a list of other things it can do:

  • Checking any type of input with the inputCheck() function
  • Getting the last gamepad input pressed similar to keyboard_key
  • Getting the last input pressed from any type
  • Getting the type of any input
  • Turning an input into a string (good for drawing and debugging)
  • Drawing inputs with nice-looking icons
  • Replacing ord("X")  with "x"
  • Replacing gamepad_axis_value() with new constants like gp_axislr
  • Checking gamepad axis inputs as pressed
  • Saving and loading Input Systems in one line
  • More vk constants

And I have to mention FriendlyCosmonaut because the basic idea of the menu was from her Menus  tutorial series. To be clear the code is completely rewritten to use the functionality of gms2.3 for instance, it uses structs instead of ds grids as the base of storing the menu, and also it has a ton of new features. The arrangement of buttons though is inspired by her system.

Games made with the systems:

Ragnor by 2 Bit Determine

Ultimate Battle Animals by me

Feel free to submit yours!


If you have any questions or want to request a feature dm me on Twitter: @MilanVarady

Or email me: [email protected]

And if you tried the system please let me know, maybe I can improve something.

End User Licence Agreement (EULA).

Age Rating: 4+


GMS2.3 - Version 1.2.7. Published October 14, 2022

Bug fixes

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait