Game Design Journey

GameMaker as a Design Tool

I just completed the book "The Game Maker's Apprentice: Game Development for Beginners" by Jacob Habgood and Mark Overmars. I was able to pick up a rather inexpensive copy of the book at that included the CD. You should be able to get the kindle version (or pdf version from Apress) and download the game assets from the Apress website.

Each chapter of the book either covers a new aspect of Game Maker or addresses game design issues.

The first chapter covers how to obtain and install the software. You should be familiar enough with installing software on your machine in order to get started. You can pick up a free version of Game Maker at YoYo Games website. If you manage to get through half of the book and want to finish the games at the end (you will not be disappointed . . . it just gets better and better) then I recommend that you obtain the professional version. A price of $39.00 it is a great deal.

The first game you create is rather simple and cute. You move your dragon-looking character up and down on the left side of the screen trying to save you dragon-babies while dodging the evil minions thrown in your direction by your arch enemy.

The game's theme - "You play a mother dragon who must rescue her hatchlings from an unpleasant band of demons that have kidnapped them.The band's boss sends a stream of demons to destroy the dragon as the hatchlings make their escape.The mother can fend off the boss's minions by shooting fireballs,but must be careful not to accidentally shoot the hatchlings! The arrow keys will move the dragon up and down and the spacebar will shoot fireballs. The player will gain points for shooting demons and rescuing young dragons,but will lose points for any hatchlings that accidentally get shot.The game is over if the dragon is hit by a demon,and a high-score table will be displayed. The figure on the left shows an impression of what the final game will look like."

The above represents the game art available throughout all the exercises in the book. This chapter provides step-by-step instructions on creating your first simple game. In chapter 3 you build an asteroids-like game where you deliver mail from planet to planet while trying to avoid the flying space matter that can turn your ship into recyclable junk.

The game enhances the concepts of creating sprites and objects and creating object instances (planets, asteroids). You also learn how to change the state of you ship from flying in space to having landed on a planet to deliver mail. The game also adds an element of timing in order to prevent users from sitting on a planet until it is safe. One of the things you see in this book that each and every game you create has professional quality graphics and sounds.

Chapter 4 is building a game named Lazarus! That you can move left or right and jump on top of boxes. Heavier boxes crush the lighter ones. The goal is to build the blocks up that will enable you to pull the switch in the room.

Chapter 5 covers basic game design elements that make a game fun and challenging. Chapter 6 creates a version of breakout that takes place underwater. An important and key feature of Game Maker that is introduced in this chapter is the use of parent objects. When several entities in your game like blocks or enemies share common features it makes sense to incorporate those features in a parent block that all can inherit rather to have to repeatedly apply the same set of events and actions over and over again. In addition, we start to introduce key aspects of all games a start screen where users can get the instructions, start a new game, load a game or just quit. In addition, the last room or level should always be some "congratulatory" screen followed by the high score screens.

The book demonstrates that you can create all types of 2D games, action games - for example, sports, combat, platform and racing games. There are other game genres that you can try with GM, simulator games, strategy games, adventure games (remember Zork) and role-playing games (e.g. The Adventures of Zelda). The game design elements covered and presented in most of the games in the book are clear acheivable goals and providing the player feedback via sounds, text or in the scoring. The player always feels in control and the objectives are clear and achievable.

Chapter 7 presents cute Koala bears to move around in a maze. In building this game you learn to appreciate the hard work level designers do when they use the elements of the game to build increasingly challenging levels. The game had the spirit of the classic game "Lemmings" since all the bears moved together when you pressed the arrow keys. The authors provided levels to build some easy (as the one shown) or wickedly hard. It was a great deal of fun to add hazards and still make the level possible to complete. I cannot say enough about how hard this particular game shows it is to take a cool concept and make it work. By this point in the book you realize you can use GM to create very good games especially in a Game Jam or a Ludem Dare. In fact, I wonder how many developers use GameMaker in Ludem Dare or Game Jam competitions. It would make sense. (I cover tools to use in game jams under programming!).

Chapter 8 presents more discussions of levels and features that make a game playable and enjoyable to the average gamer. It presents common sense advice on game design - "Good level design is about providing players with new and interesting challenges as they progress through the game." That would include adding something new to level at each level of the game. I am going to have to go back to see how games like "Age of Empires" and "Command and Conquer" managed to consume days of my life!

As the player progresses through your game you want to add new abilities, equipment, characters and buildings. It adds to the game play to get the players brain working at figuring out the use and purpose as they conquer their opponents and overcome obstacles.

The next set of chapters discuss multiplayer games or the more familiar two-player games. Chapter 9 presents the airplane fighting game (similar to a classic SHUMP game) named Wingman Sam. Notice the professional looking heads-up-display with score, damage indicator and game logo. This game presents the concepts behind creating a two-player game and creating "time lines" in order to introduce wave after wave of enemy planes within certain time frames. In addition, this example has our first "End Boss."

Chapter 10, presents the classic Atari Tank War game with some features only available in later console games.

The game level is larger than the typical 640x480 screen. The new concept of views is introduced in this chapter. Views is what allows you to create a large game field, split the screen so that player one was his view and player two the right half. Another cool feature was the small map view of the entire space that both players have (the mini-map).

Another feature presented in this chapter was the introduction of pick-ups that provided different capabilities with respect to weapons and defense. It would have been nice to see how to develop this game into a network based games so that you and your friends could play against each other. That topic was never discussed in this book. I only know that a network-based game is possible since the YoYo games website has an example. It would be a great exercise to take this game and convert. The reason this comes to mind is that games where players share the same keyboard is rather rare . . .which again presents another topic that was not covered in the book - using joysticks. (In TODO LIST: network game and joystick based game).

Chapter 11 presented ideas and concepts pertinent to two-player games - balance, competition and cooperation.

Chapter 12 was all about the internal "Game Maker Language" or GML. It is too short to really teach anyone how to program. Hopefully, most GM know some type of programming. GM provides the game maker the capability to extend the functionality presented by the user-interface by directly invoking one of the thousands of built-in GM functions. Users can create their own scripts and learn how to debug their programs.

Chapter 13 presents a cute Tic-Tac-Toe game where you program the intelligence of a computer opponent using GM.

The authors used this chapter to solidify concepts in GML as well was demonstrate that some games will just require that game builders use programming skills to make a intelligent opponents.

Leaving the Best for Last

Chapter 14 took several days to complete. It did not present any new concepts but did present a 2D scrolling game (Pyramid PANIC!) that you would be proud to show to your friends. The game took time to construct since the world was large (scroller) and required placing solid blocks and sliding blocks (vertical or horizontal) in strategic configuration so that the level was playable. (Note: This is the only game where I showed the startup screen but almost all the games had attractive intro screens where you can start the game, load a previous game, get help or instructions and quit!. In addition, all the games had end game screens for displaying the highscore.)

You are the adventurer (tomb raider anyone?) trying to pick up treasures while dodging beetles and scorpions and mummies! The mummies are the hardest since they know when you are close and go after you with a vengeance! The good news is that you can gain extra lives if you pick up potion bottle. Another cool feature presented was the "fog of war" concept. In the game if you pick the "sword of Ra" you only have a limited view of the world around you.

You can use your trusted sword to see the entire screen but that power only lasts from a brief time since it consumes your score! This is a delightful game to play and took extra time due to the complexity of the game elements.

The final chapter discusses how to use free tools such as Audacity and Gimp to create your own music and images. Another great resource is the Game Maker Community.

After going through this book I realize that I will need to "practice" the concepts I learned by either going over the game lessons in the book of building similar games with similar game elements.

If you don't get to love Game Maker as the tool to use to prototype game concepts then you really have to let me know what could be any simpler and easy to use tool (Please don't say "Unity" it is a bear and most folks end up building 2D games!).

For now I am going to work on book 2 from these authors - "The Game Maker's Companion: Game Development: The Journey Continues." Given the high quality of games, graphics and sounds I can only get better at this!


Previous Game Design Topic

The Victory Lap