Summary of "GameMaker Studio 2: Complete Platformer Tutorial (Part 10: Menu screen)"
GameMaker Studio 2: Complete platformer tutorial (Part 10: menu screen) - Summary
This tutorial covers creating a basic but functional menu screen in GameMaker Studio 2, focusing on setting up the menu room, drawing the menu options, and handling user input to navigate and select options.
Storyline / Context
- This is part 10 of a platformer tutorial series.
- The focus is on implementing a simple menu system before the game starts.
- The menu includes options like "New Game," "Continue," and "Quit."
Gameplay Highlights
- The menu is designed to appear as a separate room with a scrolling background for visual interest.
- The menu options are displayed in the bottom right corner.
- The menu smoothly slides in from the right side of the screen.
- User can navigate the menu using keyboard arrow keys and select options with the Enter key.
- Selecting an option triggers corresponding actions:
- New Game: starts the game.
- Continue: currently acts like New Game (no save/load implemented yet).
- Quit: closes the game.
- A subtle screen shake effect is added when selecting an option for polish.
Key Steps & Implementation Details
1. Setting up the menu room
- Create a new room dedicated to the menu.
- Use multiple background layers with different horizontal scroll speeds to create a parallax effect.
- Place persistent objects like transition and camera in this room (with adjustments to avoid unwanted interactions).
- Position the menu object on an instances layer.
2. menu object Creation & Variables
- Create a
menuobject. - In the Create event, initialize variables:
GUI_widthandGUI_heightfor screen size.GUI_marginfor padding from screen edges.menu_x,menu_yfor menu position.menu_x_targetfor smooth movement target.menu_speedfor easing speed.menu_cursorto track currently selected option.menu_committedto track the selected option after confirmation.menu_controlboolean to enable/disable input.menu_itemsarray containing menu option strings ("New Game", "Continue", "Quit").menu_items_countdynamically calculated from array length.- Font setup for menu text.
3. Drawing the Menu (Draw GUI Event)
- Set font and text alignment (right and bottom aligned).
- Use a for-loop to iterate through menu items from bottom to top.
- Highlight the selected menu item with a right arrow and white color; others are gray.
- Draw text with a simple black outline by drawing the text four times offset by 2 pixels in each direction, then draw the main text on top.
4. Menu Controls (Step Event)
- Ease the menu sliding in from off-screen to its target position.
- Handle keyboard input:
- Up arrow: move selection up (wraps around).
- Down arrow: move selection down (wraps around).
- Enter: commit selection, slide menu off-screen, disable input, trigger screen shake.
- After menu slides off-screen and a selection is committed, perform actions using a switch statement:
- Case 2 ("New Game") and default: transition to the game room.
- Case 0 ("Quit"): close the game.
- Case 1 ("Continue"): currently treated same as "New Game."
Strategies and Tips
- Use arrays to store menu options for easy scalability.
- Use dynamic GUI size variables to make the menu resolution-independent.
- Use easing formulas for smooth UI animations.
- Draw text outlines by layering multiple offset draws for pixel fonts.
- Always set font and alignment before drawing text to avoid inconsistent rendering.
- Use a boolean to disable input during menu animations or transitions.
- Use switch statements for clean handling of menu actions.
- Rename layers if camera objects interfere with parallax scrolling in the menu.
Potential Extensions Mentioned
- Adding mouse control support.
- Expanding menu options.
- Adding save/load functionality for "Continue."
Credits / Sources
- Tutorial by the GameMaker developer featured in the video.
- Patreon supporters thanked: Dan in a Mule, Knicks Lavish, Stephen Hagen, John Grimshaw, Nathaniel Walsh, Bowels of the Dog, Louis R Pereira, Charles Montgomery, Harold Guidry, Jason Macmillan, Owen Morgan.
This tutorial provides a foundational menu system that can be expanded with additional features and polish, ideal for beginners working with GameMaker Studio 2.
Category
Gaming
Share this summary
Is the summary off?
If you think the summary is inaccurate, you can reprocess it with the latest model.
Preparing reprocess...