#20 Menu Structural Overhaul
Menu Needed Work
I was so ready to put the remaining polish on Boogie Bashers' gameplay. Only there was one big issue: Players sometimes couldn't actually start a game because there were so many ways to get deadlocked in the menu. Of all components in the game, the menu especially was full of spaghetti code and references.
We'd like to start getting feedback from complete strangers instead of just people who know or meet me in person. And for that, it's pretty important that people can play the game without assistance. So I decided it was time to give the menu a good scrub at the structural level.
GameObjects as States
Menus are frequently implemented using state machines in games. I remember a colleague saying something along the lines of "I can't believe Unity doesn't provide a state machine implementation. It's such a common need in most games." It seemed pretty sillly that they didn't do this, but then I came across this brilliant comment on Reddit about how you can use GameObjects as states.
Thinking about state design this way opens up so many new possibilities, and so began the task of making our menu state machine with GameObjects. This was also a great time to make this a system that could toggle menu screens with animations and in a more performance friendly way than disabling the Canvas's GameObject.
This video shows a fairly minimal workflow of setting up a new sub-menu
Menus can now be created and rearranged around much more quickly without breaking other things. And this is just in time for the menu overhaul, where we'll tackle the beast of the online Matchmaking workflow shown below.
Without a system that simplifies menus and submenu, this deep hierarchy would be very tedious and error-prone to implement.
Changes in 0.14.3
- Add settings menu and move volume slider into it
- Add ability to go back from any screen in the menu, with memory of what your selection was where appropriate
- Players can now switch between online and offline mode without having to restart the game
- Fixed bugs related to joining and leaving a room causing loss of control
- Fixed all known deadlock situations that could occur in the menu
- Fixed bug where players sometimes couldn't control their characters
- Menu performs better on less powerful machines
- Add labels for character and dance selection for clarity
We're planning to do a visual overhaul of the menu and the in-game UI very soon. Until next time!!
Files
Get Boogie Bashers
Boogie Bashers
Dance in the spotlight and shove others out of it
Status | Prototype |
Author | jmarsh411 |
Tags | dance, Local multiplayer, Multiplayer, online, party |
Languages | English |
More posts
- #19 Streamlined Multiplayer MenuJul 31, 2024
- Small Project Management?Apr 29, 2024
- AADL Game Con 2024Apr 22, 2024
- Changes a PlentyApr 03, 2024
- Canal FaceliftFeb 13, 2024
- New Stage In ProgressDec 15, 2023
- Green Light!Nov 16, 2023
- Choose Your DancerAug 05, 2023
- On the HorizonJun 01, 2023
Leave a comment
Log in with itch.io to leave a comment.