Making the Main Menu

After publishing the early prototype of Super Snow Fight to Newgrounds, I thought making the main menu or making any menu at all would be the next step. Not to mention that people really need a menu so that they know where they are and what the hell is going on. So here is the result. I imagined two characters of the game standing in front of each other, staring at each other, knowing that they will meet on the battlefield to throw as much snow as possible in their opponents’ face.

I used the new UI System of Unity 4.6 called uGUI. In my opinion it’s a great improvement. You have the freedom to set anchors so that your GUI elements look good in every resolution. They resize themselves, change their position, even stretch if you want them to. In addition you can change the color in the editor, the font size, alignment of text, images/sprites and so on. In essence there’s no need any more for GuiStyles and that’s awesome. And everything is done without a single script. Although I added one script component to my text, which is an outline. And this stuff even is built into Unity. I love it.

Character Selection Menu
Character Selection Menu

For the character selection screen I used the new worldspace canvas. This way you can attach any GUI element to a gameobject in the scene, in my case the player characters. Also very neat is the way you can add the controller or keyboard/mouse buttons. First I want to thank Nicolae Berbece for making these awesome icons. You can simply import these images into Unity, use them as sprites and then just add the image as child to your label, text, button, whatever. Exactly how you do it with your three and two dimensional gameobjects or prefabs.

The scripting part is also pretty easy with uGUI. If you want to react on a button click, you add the script of your choice to the button and call a certain method on the desired event. Again, everything can be done in the Unity Editor. The script comes into place when you want to do some custom logic. I use scripts to jump between different menus and disable or enable specific buttons. For example, my MenuSetup script listens to the current gamestate returned by the so-called GameManager and enables the suitable menu (gameobject with canvas and gui elements). This way I can easily jump from the main menu, to the brawl selection mode, to the character selection and then to the ingame HUD. Oh, the HUD. The heads up display was a complete new chapter for me. But more on that in a later blog post.

In summary, making a game menu with the new Unity UI system uGUI is fun, you can create amazing art with the worldspace canvas (if you have the artistic eye, I don’t) and I think it’s suited for all needs of game development.

Here’s a little gallery of the creation progress of the main menu:

Judgment on Newgrounds

I struggled with the idea of doing that, but I did it. I put a really really early prototype of Super Snow Fight on Newgrounds. In many forums and blogs people say, that you should share the progress of your indie game ridiculously early. That’s my way of doing so. Newgrounds is a wonderful place to share your creative ideas and products and I always wondered how it would feel of going this step. Well, it feels great. In the beginning I was kind of nervous, because I was afraid people would run it down and I will break out in tears of shame and never want to write a line of code again. But this was not the case! There was some constructive criticism, people seem to like the idea, and I am really happy and motivated to go on. :)

After submitting a game, it will be “Under Judgment”. This means it’s mentioned in a certain zone where people can review your product and vote for it. After a certain amount of votes and number of stars your game will either make it through or it will be deleted forever. Maybe you won’t be able to sleep during this period, but this are things you have to live with as an indie game developer. I am glad to tell you that the early prototype of Super Snow Fight made it! Approx. 24 hours after submit with almost no sleep and the game got 100 votes with 3 stars on average. I think the concept of the game can’t be that bad then. :)

If you are interested in the reviews, you can check them out here.

[well]
AequitasVeritas333 wrote:
Cool idea, and it looks like you put some good work into it, but it seems like you just finished the gameplay mechanics and said “good enough” and put it out. This game has real potential. First thing I’d do is add a menu in the beginning, instead of just throwing the player into the mix right off the bat, because for a tiny bit I had no idea what color I was or what to press to move. Once I figured out that it is WASD to move, i had an idea of what to do. So maybe have a way to choose color in the menu, along with instructions. It would be cool if you could choose game modes, like Capture the Flag, or even just a team battle. like Red Vs. Blue. It would also be neat if this eventually became a multiplayer game! As of now, the game seems vanilla
[/well]
My response:
Hey, thank you very much for your kind words. You’re right. I just wanted to put a prototype into the wild before I put any more work into the game. Saying “this game has real potential” makes me really happy! ;) So the next thing to implement might be a menu with mode and character selection. Of course, there are more features planned for the game. Like you already said, other playmodes, at least a local multiplayer for up to four players with gamepad controls, maybe even a short story mode to introduce the characters and the gameplay mechanics. Also several other gameplay mechanics are on the list, like power-ups, picking up and throwing objects like the crates, secondary weapons like traps or pursuing little snowmans and maybe some spells, but only if they really fit in the concept of the game. Again, thanks for your review!

[well]
iammekiz wrote:
This game is kinda glitchy. Eveyr time I re-spawn I die immediately. The game is kind of hard to control and the game just started after it finished loading without any warning and I died.
[/well]
My response:
Hi and thanks for your review! The game really needs a menu with controls instructions. I think I got that now. ^^ I’m sorry that you die all the time. Maybe the AI is to harsh. If you spawn right next to another player, they immediately focus on you and throw their snowballs at you. Maybe a little delay would help or being invulnerable for a second. I’ll think about that. Thanks!

[well]
LiveSystem wrote:
Nice, very creative. Another + because Unity. XD
5/5
[/well]
My response:
Thank you for calling it very creative! This is motivating! And I love Unity, too. It’s awesome that newgrounds makes submitting games built in Unity possible. :)