Life’s not always a beach. This is one of those times, as content is slower than usual here on All Around Gaming Hub. Without a key game to review or preview, let’s take a drastic approach: we’ll make our own game.
Update: On November 5th, 2013, after countless hours of work, this game was actually finished and published to the world. You can find out more here.
I don’t know the first thing about making games (the last decent games I made were written in BASIC back in DOS using QBasic, if that tells you older folks anything). Still, with GameMaker Studio, I feel like I have a fighting chance. The first thing I noticed after firing it up was a swift kick of nostalgia for Klik & Play, a game making tool from way back in 1994. I’d forgotten all about K&P until I fired up GameMaker, and remembered that I had made a Breakout clone while using Klik, so maybe I wasn’t as out of my league as I thought.
First thing’s first: We need a premise. I think I’ll make a spin on those “endless runner” games where the player is always moving in one direction and has to dodge obstacles as they come upon them. I draw up a really ugly head-down picture of a person, and then make a tile sheet featuring grass, dirt and stone blocks. They’re not real attractive but they’re functional. Using Klik… err, GameMaker I can quickly use the tile sheet I made to lay out a map, but my avatar won’t respond to bumping into background textures. I make a texture-less box the same size as my stone wall tiles to fill mark their position and register them as ‘solid’ objects in their interface. After setting up some rudimentary controls for moving my person (start moving right, and tilt up or down) I compile the game and run it.
He moves! I set the game to reset the level if the player touches a wall and spend the next hour or so tweaking the level so it’s beatable. Now, with a level that’s playable, I’m hit with an impulse: I don’t like my character graphic. He needs to walk, but that’d be a pain for me to animate from the perspective I chose. I also don’t like the “touching a wall resets the level” mechanic because it feels so jarring. What to do? Change my character from a person to a ball and make the ball bouncy. I thought about what kind of ball it should be, and opted for a beach ball because the colorful pattern would make the rolling movement easy to see.
The ball bouncing was easy to handle but I fussed over the art for a good while. With some trial and error I eventually get my animation frames drawn up and test them in GameMaker, and they look good. In fact, I’m rather pleased with them. However, a beach ball rolling on grass and dirt is a little weird. A beach ball needs a beach, so I retexture the area to make the grass sand and the dirt into loose stones.
Of course, one level does not a game make, so I had to make more. With the bouncing mechanic in place, my level designs could get allot more creative.
I love the use of viewports to restrict player view to what I want them to see. It’s a great way to both control the gameplay and make the levels feel bigger than they are. Around level three I began to add hazards that restarted the level, adding a further layer of challenge. What originally was supposed to be water ended up looking more like holes in the beach (to me, anyway).
With five levels down I added cola cups as a collectable bauble that in no way influences the game. They were originally going to be required to complete each level but that got unwieldy rather fast so it was dropped.
So, we have control, animation, and levels, now we need audio. I can’t just rip Mario music for this, I need something of my own. I found an online midi maker and toyed with it to create some sound effects that I liked, and then fought putting them into GameMaker for about 30 minutes. I was convinced (for whatever reason) that I had to make the .wav files I had into .mp3s and got input lag as a result. Once I went back to .wav everything worked fine.
Now with sounds, animation, five levels (the limit of the free version of GameMaker) and working controls, I’m happy. It’s basic as all hell but after a few days of work I’m pleased with my first attempt. You can try it out yourself via the link at the top of this post, or watch this video trailer I made for it. If you’ve ever made a game, even a silly little one like mine, I’d love to hear your story.