Development Workflow – Chapter 2: Brainstorming Ideas

Last time, we discussed researching your game. If you have put together a research document detailing design choices from similar games to your project, then you will no doubt have many ideas of your own and be more than ready to move on to the next phase of development – Brainstorming Ideas.

There are a million and one ways to tackle brainstorming, and every genre of game will have its own unique challenges. I will suggest a few strategies here that are broad enough to be applied over many genres, while also offering some more concentrated examples to aid you in developing an effective workflow.

Strategy 1: Playing with Events

One option is to take a look at GB Studio’s engine. Rather than having an idea for a mechanic and then attempting to code it, the reverse process is taking a look at what the engine can offer and designing a mechanic based on the events provided.

When I first found GB Studio, I noticed there was the [Action: Push Away From Player] event. When placed into the “On Interact” script of an actor, the actor moves away from the player one tile (or will slide until collision) when interacted with. This single event was the basis for my first GB Studio game – Knit Wit – a sliding block logic puzzle game. Because the blocks could slide, I set the game during winter. Sliding ice blocks made conceptual sense. So this one event formed the main mechanic of my game and informed the art asset creation.

A sliding block mechanic becomes a large Ice Block set in a winter setting. Knit-Wit 2021

Strategy 2: Playing with Variables

Why not take a look at the properties of your player character? Changing these properties in-game is a great way to create excitement and a sense of progression. This can form the basis of a widely used and very fun mechanic in many games – Power-ups.

These variable changes may occur over the course of an entire game akin to a metroidvania, or until the player is hit by an enemy or projectile like in the Super Mario series. Some more simple ideas may include changing the jump height of the player in a puzzle platformer, the speed of the player in a shmup, or the rate of weapon fire in an action game. The possibilities are endless and the only limit is your own creativity!

In addition to changing the properties of your player character, this same process can be applied to other actors such as enemies or projectiles in your game. Creating variations of the same enemy can increase the difficulty, such as changing their movement speed or jump height. I could also force the player to tackle the same scenario in a very different way, such as how high an enemy throws a projectile for instance. Just be sure to change how the enemy looks so that the player is more easily aware that each variation acts in a different manner (The green and red Koopa Troopas featured in Super Mario Bros. are a perfect example of this).

Green Koopa Troopas fall off platform edges while Red Koopa Troopas will double back. A change of palette visually reflects the difference in the two enemies’ behavior. Super Mario Bros. 1985

Strategy 3: Tweaking tried and true mechanics

While there is nothing stopping you from borrowing some of the more common mechanics from other games (Mario’s ability to jump in the original Donkey Kong game spawned the whole platformer genre, for instance), a great way to come up with new mechanics is to iterate on mechanics found in other games. This is where your research document really comes in handy. If you have created a comprehensive list of your own, then you will be off to a great start already and many variations on tried and true mechanics will have bubbled to the surface of your mind organically.

The OG jump mechanic! Donkey Kong 1981

Strategy 4: More Spreadsheets!

Just as we set up a spreadsheet to conduct our research, so too is it a good idea to document our brainstorming ideas. A spreadsheet makes it easy to make notes on mechanics and feature ideas, and it will also help to explore the nuts and bolts of each mechanic you come up with. The simple act of writing things down forces you to think more deeply about a concept as you put words to your thoughts. It is up to you how detailed you wish to be when creating a document, but below is a list that will assist in putting one together as a start. Feel free to make changes and add to it as you see fit of course.

  1. Name of mechanic or feature.
  2. Description of how the mechanic or feature functions.
  3. Description of what the mechanic or feature may look like.
  4. Whether it’s possible in GB Studio (Ask the friendly community on the GB Studio discord if you are unsure).
  5. An image or sketch visualizing the mechanic in some way if necessary.
  6. Whether the mechanic or feature would require an actor, a trigger or both.
  7. Notes on how to potentially code the mechanic.

An excerpt from the brainstorming document I put together for my first GB Studio game.

The mechanics you come up with will begin to inform what kind of aesthetics will best suit your game and a story/narrative will begin to emerge as a result. This is precisely why the Koopa Troopas in the Mario universe are turtles. Did Miyamoto want turtles in his game to begin with? Or did he come up with a fun mechanic where the player character kicks the enemy and it goes sliding across the screen? The truth is, the answer to that design choice could have come from either direction. Whether you start from a mechanic and work towards a turtle, or want a turtle and develop a mechanic to suit are both equally valid ways of coming up with an idea!

The strategies I have listed above are just a few you could employ when brainstorming ideas for your next game. Each and every person works in a different way, and some strategies will produce relatively better results for some but not others. There are many more strategies out there waiting to be discovered, invented or tweaked to suit your own needs and you will need to find out what works best for you.

In Chapter 3, we will explore some of the many ways to apply your mechanics in order to create game content – otherwise known as level design.