Tag Archives: mouse dreams

The Making of Mouse Dreams Part 2 – In One Level

In this article, I examine Mouse Dreams’ evolution of by following a single level from its initial design through to the final game.

1: Sketch

Sketch That sketch is from the very first time I sat down to create what became the final design for Mouse Dreams (if you don’t count the discarded game from whose ashes Mouse Dreams arose). When I had arrived at the core game design (see Part 1 for the full story), I quickly sketched out the first 8 or so levels in a notebook. In the sketch, the larger ‘square’ in the lower-left is the player. Next to the player is a box the player must carry onto the ledge on the right side to block the light (the thing near the top of the screen with two diagonal lines beaming from it) from hitting a light-sensitive switch that controls the moving wall (the rectangle with the downwards arrow near the bottom centre of the image), which is blocking the way to  the exit in the lower-right. If that’s confusing, it should become clearer when you see the level as it looks in the game further down. This early level aims to teach the player about light-sensitive switches, and while the sketch is messy, it’s enough to encapsulate the ideas to transfer into the game. My hints for sketching out levels:
  • Expect to forget what you were thinking when you drew it…write notes and draw arrows.
  • Use colour for different things.
  • Use a key for objects – e.g. the player is a square, a collectable is a pink triangle.
  • Don’t worry about scale – sketches are guides, and the final level will change numerous times anyway.

2: Prototype

Once I had my first bunch of levels, my enthusiasm was high. I had my game idea, and I had some content to get started with. I put my levels into the game with the rudimentary graphics I had at the time: This matches up closely with the original sketch. A collectable (the pink thing) has been added, and a more complex layout forces the player to jump around a bit. With the sketch as a starting point, the level evolved as I built it. It felt too simplistic, hence the extra jumping required. I added the collectable because I decided that every level should have a collectable rather than just a few here and there.

3: Fleshing out the Prototype

I liked the idea of patterned wallpaper for some reason, and this led to turning the player into a Victorian-era man’s head with a hat and moustache. He rotated in mid-air when jumping. In this version of the level you can see some changes that reflect the progression of the game design and the development of the game’s look. I had decided that the game was set in houses, so I started replacing the abstract level geometry with chairs, shelves, and so on. While this looks quite different to the previous image, the actual layout is hardly changed – it just looks different. The other major change here is that the crate has been moved. It is now closer to the light sensor it must be used to block. This is because I decided the player could not jump while carrying a crate. Here is Level 1 from the same build that I think better gets across the game’s aesthetics at that stage:

4: Mouse

As is my tendency, I decided to make the game’s look more cartoony and fun. This was partly informed by the relative simplicity of the game – it was not the serious puzzle game I had first envisioned, but was more accessible with moderate difficulty, suitable for players of all ages. I decided on a mouse theme to go with the cartoon aesthetic:

5: Fleshing Out

As the game progressed, the visuals started to take shape after buying some assets. It took me weeks and lots of experimentation to get those bricks how I wanted. A subtle addition is the skirting along the bottom of the floor.

6: Maturation

As the game matured, I released a beta version, and continually tweaked the look and feel to get closer to a final product. Much of this time period had been spent fixing bugs and implementing the game functionality, with the visual changes being mostly swapping out temporary assets for proper ones. Here is the level as of that first beta: A few changes here:
  • Polish – the bricks now cover all of the main terrain, the wallpaper is more fitting to the cartoony theme, and the cheese is improved.
  • I have added a wire system to show the player which objects are powered by switches. You can see the red wire linking the light-activated switch to a place in the ground (where the moving wall is).
  • The box now starts in front of the light-activated switch. The trick here is that the player needs to move the box in order to climb on it and get the cheese, but doing so will close the moving wall that is currently open. This teaches the player to think less linearly, which will be required when the game gets more difficult.
  • The cheese is moved to increase the challenge. The player cannot reach the cheese without doing something else first. By this time, collecting the cheese is required before the player can exit the level.

7: Ramping up the Colour

During the beta period, I subjected my game for feedback, and among the comments, I received one particularly valuable suggestion: make the game more colourful. At first, I thought the advice was awful. My game had a fun, cartoony look! Didn’t it? Stepping back, I realised the advice was perfect. I needed to push the brightness and saturation to an extreme. I also started commissioning what art I could afford, most notably a new main player character. Due to some level shuffling, in this build the level was moved to the game’s second house, where it was House 2, Level 1. The most obvious graphical change is the stylised, brightly coloured bricks (each house has different coloured bricks). The mouse’s night cap represents the game’s central conceit – that the protagonist is a sleeping mouse running around the crazy houses of his dreams. There are a lot more graphical improvements in the game by this point (along with new mechanics, new levels, and plenty of polish), though the early levels, such as this one, were not affected as much due to their simplicity.

8: Near Complete

With the level moved back into the first house, the bricks have changed to that house’s colour – red. You can also see a trick I found to cheaply improve the looks – adding corner pieces to the ceiling for a less boxy shape. As well as the bricks and wallpaper, you’ll notice some subtle changes to the chair, skirting, and shelf colours as well. I went through the game looking for anywhere I could ramp up the colour, and I tried to ensure each level had a good balance of colours – which is why the red wall is paired with a bright yellow wallpaper pattern in this level. With the orange chair and green shelf, most of the rainbow is represented here! Here’s a different level with a few more details:

Spot the Difference

  Now that you’ve seen the final level, take another look at the original sketch back at the start. You’ll see the core level idea is still intact! The visuals developed over time, and some gameplay details changed. This level is a little more complex than it was originally because I made the cheese collection mandatory, and because I now require the player to undo their action in order to complete the level. But this level is still about teaching the player to use the light-detector switch mechanic. The evolution of this level is a microcosm of the game itself. As development progressed, the style and theme gradually fell into place with lots of iteration and experimentation…and playing the levels over and over again…

Coming Soon

Mouse Dreams is coming soon. If you want to see more about the game (including a trailer and a Windows 10 Store Beta), please visit the game’s page at http://grogansoft.com/mouse-dreams/ .

The Making of Mouse Dreams: Part 1 – Getting Game Ideas

The article details how I went from wanting to make a game - but with no idea - through to finding and developing an idea through the process of development and prototyping. After finding myself with the time to make a new game (my third), I lacked one thing: an idea. I had prototyped a few games that didn’t work, and I had many ideas too big to tackle as a lone developer. So how could I get an idea, and one that was suitable to my skills and resources? I had always wanted to make a classic side-scrolling platformer – like Super Mario Bros. or Commander Keen. I also had a few ideas for mechanics that would make the game more interesting, taking inspiration from puzzle platformers like Limbo and Unravel. With the barest germ of an idea, I started to prototype in Unity. As I built my game, I started to see the flaws – some mechanics were not fun, and just served to force the player to do Step A before Step B. One mechanic involved changing the player’s size or color so they could fit in smaller gaps or enter coloured regions. These mechanics worked better on paper. Here’s the first playable level I made:
I built around a dozen full levels of platforming, with moving shelves, puzzles, and enemies, but the game wasn’t much fun. It had nothing particularly original or unique. I wanted the game to be more puzzle based. Should I abandon another prototype, or push on and squeeze an idea out? With no idea to fall back on, I decided to keep pushing forwards and see what happened…

Dawn of the Idea

I like to make simple opening levels to train the player. In Game of Clowns, the first level requires the player to tap a button and watch the physics engine get to work; in the second level the player is shown how to place an object to influence the physics simulation to complete the goal. I liked the short, small opening level of my platformer, and thought it might be a cool idea to have a game of single-screen levels with simple puzzle mechanics – no finding the red key so you can get past the red door, no sharp reflexes needed to navigate fast-moving platforms and avoid cunning enemies. Just simple puzzles. So from the ashes of a failed prototype, I had the start of an idea, and then I had a jolt of inspiration. One particular mechanic I had been using had some potential, and was – at least as far as I knew – original. This mechanic involved moving objects in and out of the path of light to trigger some kind of action, such as opening a doorway. I decided I could make a lot of puzzles with this mechanic. I immediately sketched up the first 8 or 9 levels, combining the light/shadow mechanic with some platformer/puzzle staples like crates and moving platforms. Here’s the first page of scribbled level designs – I design all my levels this way, and tweak them as I build them in Unity: early-levels-sketch The first dozen levels came quickly, which was a good sign that the core mechanic was flexible enough to carry a full game. I decided that this was my game, and I would run with it. I quickly implemented my first set of levels. Here is a short playthrough of the first three levels as they were initially:
The first three levels–early prototype
To compare, here are the first three levels of the near-complete game:
Beta version first three levels
 

Fleshing Out the Idea

I think brainstorming is the best way to develop an idea. Since my game was based largely around light, I started to note down anything I could think of that related to light and might be interesting in my game. Some of the ideas I have in my notebook are:
  • Mirror mechanics to channel light
  • Items that generate light (e.g. a model lighthouse, lamps)
  • Lasers
  • Moths the player can manipulate with light
  • Torches
  • Windows letting sunlight into the scene.
When brainstorming it’s important to never discount anything. A good idea can evolve from a bad one. Good ideas can emerge from combinations of otherwise poor ones. It’s better to have written down an idea you didn’t use than to have missed out on a great idea because you dismissed it too early. I spent a lot of time implementing the moth mechanic into the game – it moved towards the nearest light, and would flip switches if it got close enough. But the mechanic felt rough and fiddly rather than fun. But from the moth I developed a mechanic that did make the final game.

Brainstorming

The easiest way to brainstorm is to write down a key word in the centre of a page and just add anything that is related to it to the page. Don’t filter anything, just write, draw, whatever. Put everything on the page. You never know which idea is the next great one or triggers the next great one. Brainstorming in groups works even better, as each person plays off the ideas of the next. Your half-formed idea might prompt someone else to come up with pure brilliance (or vice versa).

The Mechanics of Design

Game design isn’t all about inspiration and creativity. You need to balance that with practicality and hard work. I added some standard platformer mechanics to my game in order to guide the player and add complexity and variety. I spent hours and hours testing and tweaking levels, and this process often led to new ideas and new ways to use the mechanics. Don’t be afraid of clichéd mechanics. They are clichés for a reason (i.e. they work and are familiar to players). You may find that you can add a unique spin to these old mechanics when you combine them with your own. It doesn’t hurt to try. On the other hand, the game was feeling less focused than I had hoped – it was a mish-mash of mechanics that weren’t all a natural fit. I decided to push forward with the game even though it was not perfect. On one hand I just wanted to finish a game, and on the other hand I was confident that as time progressed the game would feel become more cohesive.

Coming up with a Theme

For most of the early development, my game was just coloured blocks. I liked the simple aesthetic, but it was not going to be interesting to any audience, and was too similar to Thomas was Alone with the simple shapes and shadows. Since I have no art skills, and no budget for paying an artist, I had to choose my theme carefully. As a placeholder I made the player’s square pink and added a moustache and hat: old_man The idea was that the player would be an old man (maybe a crazy Victorian inventor type) in his house, and I would use nice old-fashioned wallpaper in the different rooms for a cheap, simple aesthetic. The final theme came relatively late. As the game was coming along nicely, I started to think of what would look good, and what I could find in terms of graphics and audio. I have a tendency towards cute, cartoony graphics, so that was a big factor. Since the game was already structured into ‘rooms’, I felt it should be set in a house (or houses, or a large apartment block). I scoured the Unity Asset Store and public domain art for ideas. Around this time I started to realise that the game was quite easy, even in its later levels. I had inadvertently created a kids’ game, so I ran with that and made the protagonist a mouse; the abstract collectable objects became cheese. I found some affordable cartoon graphics to get a nice look. I had intended to replace the mouse with proper, commissioned art, but in the end I decided to avoid the cost, working on the assumption that I would be lucky to sell more than a few dozen copies of the game. I chose the name Mouse Dreams for the simple reason that the game doesn’t make much sense. Why is a mouse jumping on moving shelves? Why do these houses have so many weirdly placed lights and light-sensitive switches? Why is there licorice hidden throughout the levels (and why does a mouse like licorice)? Embracing the fact the game doesn’t make sense, the title hints that maybe this mouse is just dreaming of its adventures in strange, dreamlike houses.

Visual Ideas

I use a ‘lightbox’ to keep all my visual style ideas and influences. I create a folder somewhere – usually OneDrive, and look all over the place for images to put in there that might inform the look of my game. Image searches, Pinterest, clipart sites, asset stores, etc. all have tons of material. It’s like visual brainstorming. Throw in any image that might have some influence on how your game looks. If you’re like me you already have a vague idea of how your game should look, and finding images will help solidify that idea. For my previous game, Game of Clowns, I was able to send these lightbox images to an artists to draw some custom art, and it seemed to work well because her art was exactly what I had in my head!

Takeaways

In my previous games, the whole game was more-or-less in my head before I started, and the final results didn’t differ much from those original plans. Because I started game #3 without any ideas, I learned a lot on the way about finding, nurturing, and letting go of ideas.

Finding Ideas

There is no recipe for ideas. There is no way to generate them. You just have to keep an eye out for them. Keep your mind open to ideas whenever you play games, watch movies, read. Ideas will come if you’re open to them. If you don’t have any ideas, you can still work on prototypes and other ways to force ideas out. You might find that your ideas are triggered by the act of coding or building prototype scenes. As my game neared completion I ended up reworking a huge amount of the code, and it led to a few surprising bugs, one of which is a nice idea for a mechanic, either for a new game or perhaps to add to Mouse Dreams if I ever make additional levels. As I mentioned earlier, I draw my levels in a notebook. When I’m stuck for an idea I sometimes just start drawing and find that an idea flows from that stimulation. The mere act of drawing a rectangle and placing the player somewhere in it can open the floodgates. How does the player get from where they start to the exit? What if I add an enemy blocking the cheese? Before long you can force out a level idea. It doesn’t always work, but when it does it’s great. The main lesson I’ve learned from building Mouse Dreams is to just do it. Ideally, you’ll have a great idea, well planned out, before you start. But that can’t always be the case. If you go through the motions of coding, building levels, prototyping, brainstorming, and so on, you have nothing to lose. You might trigger something that gives you the idea you want. Just as fortune favours the bold, ideas favour those who are receptive to them and probing for them.

Throw Away Failed Ideas, but NEVER Throw Away ANY Idea

Yes, that heading is deliberately contradictory. Don’t be afraid to discard ideas that you love. If an idea isn’t working, throw it out like I did with most of my original core mechanics. If it’s not fun, doesn’t fit the game, or just doesn’t work well, kill it. Kill those failed ideas from your project, but keep them somewhere for future use. When I threw out my moth mechanic, I eventually reworked it back into the game in a different way – as ghosts to chase the player. I doubt the idea for a ghost would have occurred to me without first thinking of – and discarding – the moth idea. You never know when an old, abandoned idea might be useful in another project or in another form. The core light mechanic in Mouse Dreams was originally an idea for a different type of game, but I couldn’t think of a way for that game to work. If you have an idea - even if it seems totally dumb - write it down immediately. Get a note taking app on your phone, carry around a small notebook and pencil, use a voice recording app, whatever it takes. You will be amazed at how easy it is to forget an idea, even a great one. And if the idea you get isn’t great – I hope by now you understand that it is still valuable.

Bonus Video

If you’ve got this far, thanks for reading. Here is a bonus video of my first attempt at a platformer prototype. I made this to try out the new UWP (Universal Windows Platform) option in Unity and Xbox One. The reason the video is poor is that I was filming with my phone with one hand and trying to play the game with my other hand:
Early prototype on Xbox One
 

My Games

Mouse Dreams will be my 3rd game. Information about my previous games can be found at the following links: Puzzle Detective (Windows Phone 7+, Windows 8+) Game of Clowns (Windows Phone 8+, Android, iOS, Windows Store 8+, Windows desktop)   Play a slightly buggy early beta version of Mouse Dreams here: http://grogansoft.com/md/index.html