dogfort studios

RSS
May 1

Creating a Language for Complex Puzzle Design

One of the important design tenents that I am sticking to in order to set Lost in Transit apart is that I want to avoid the “samey” feel of puzzle design that many current games out there that I have played tend to employ. (How many times have we seen the “move blocks on switches” puzzle since the original Zelda on the NES now?) While sketching out level design ideas, I hit a brick wall early on when it came to creating complex puzzles. Initially, I would get several steps into sketching a more complicated puzzle idea and suddenly realize that I had not accounted for the possibility of players getting “locked” into a state that would cause the puzzle to be unsolvable if they made the wrong choices. The only recourse at this point is to completely throw out everything up to the point where the players can get themselves permanently stuck and fix it. As such, I became wary of exploring greater levels of complexity in a puzzle idea unless I made sure to circumvent the possibility of a progression blocker. Unfortunately, this precaution trapped me in “2-basic-action” puzzle territory, which is probably best illustrated by the “find hidden block and move it on switch” puzzles in Zelda. The conclusion I came to at this point was that I needed to create a puzzle language that could get me past the complexity roadblock, and with Adam’s assistance, we came up with our own 2-tiered process, the first of which I will delve into below.

The first step is to focus only on the amount of possible actions in a puzzle and charting the series of actions that represent the solution.  The important thing at this point is to completely ignore what any of those actions might be in the game. To arrive at our method we first charted what we described as a 1-level puzzle, which appears as follows:

An easy way to visualize how this would manifest itself, an every example hereafter, is to imagine that an action is a button press. However, this could be anything from knocking out a support beam to pulling on a rope, to pushing a block to a new location. Regardless, imagine that the above example is a giant button in a room that, when pressed, opens a door. This can barely even be defined as a puzzle (if at all), and is EXTREMELY easy to solve. 

In a 2-level puzzle, or in other words a puzzle that requires two actions to complete, its complexity immediately jumps when charting it out, despite the fact that these are still very easy for players to solve. Take this for example:

To continue the simple “actions as buttons” analogy, this chart conveys the following: Initially, there are two buttons to press. If the player hits button B, a “wrong answer” buzzer will sound and the button will go back to its default state and the player can press it again (which will always result in the same “wrong answer” response. The “X” written after the B in the above chart is extremely important, as that represents an available incorrect option that must not block player progress if chosen. The 1 states how many steps in the chart the puzzle reverts if the X action is chosen, which in this case simply bring it back one step to the initial state of the puzzle. If the player presses A in the initial state, then the A button must return to the exact same “pressable “ state because it is also listed as a subsequent available option. If the player then chooses B, the game tells the player “wrong answer” as before, but sends back the player two steps to the initial state. If the player hits button A twice, the player solves the puzzle. 

This is a 2-level puzzle because if you follow I to S, there are two steps. However, added complexity was added by the fact that after committing action A once it is available a second time.  Thus, as a second method of quantifying the difficulty of the above puzzle, we count the amount of Xs, which makes the above a 2-2 level puzzle.

Now lets try and chart out a 3-level puzzle:

The solution path is as follows: The player does A (which causes C to appear, then B (which results in B disappearing), and then does A to solve the puzzle. Since there are four Xs, we can then rank this level as a 3-4 level puzzle.

The ranking system has three main benefits. One, it will allow us to chart them in a difficulty curve in an effort keep the pacing smooth. Second, through user-testing especially, we will be able to find a sweet spot for how many “wrong action,” or X, options there are in a given puzzle–none being way too easy, too many being too frustrating. Third, it will allow me as a designer to set out to make a difficult puzzle by choosing how many steps to the solution there are, and charting it out from there. Of course, translating these flow charts into a realized puzzle with defined actions on in-game assets is still a daunting task, but using a “blueprint” so to speak makes the process of designing a complex puzzle much easier. 

Although untested at higher levels of our imposed ranking method, I will be sure to report back on how the above method works out in helping me to create complex puzzles from concept to implementation.

Feb 1

Inspiration

The following games have been hugely inspiring for us, and have directly influenced the development of Lost in Transit:

  • Portal 2
  • Limbo
  • Rayman Origins

Of course, loads of other games inspire us as well, and we plan on subtly including as many references to other games as possible.

Feel free to judge my personal gamer cred by looking at any of the following accounts!

  • Xbox LIVE: zenel
  • Steam: zenj
  • PSN: yayzenel
  • iOS Game Center: yayzenel

-Matt Zenel, Lead Designer

Feb 1

General Mobile Design Guidelines

I firmly believe that immersive, meaningful and thought-provoking experiences are possible on mobile. This is not actually a declaration of love for the platform itself; it’s a belief that those types of experiences can be had on any and all platforms, regardless of whether or not it’s been proven yet. Some of the best experiences I’ve had in gaming have been on the DS, so small form factor is definitely not an issue.

As such, the best question to ask is how exactly I plan to create that experience on mobile. My initial (and current) design guidelines for Lost in Transit are as follows in no particular order:

No in-game text

I am attempting to achieve this by having no dialogue whatsoever, and also by having no expository text explaining context or important story elements.

Experience and location-based story telling

Story will be told via level art and in-game interaction. Since the player character is a cardboard box whose only way to experience the world and interact with it is through movement, I will be telling a story through how levels, animal interactions and puzzles make the player feel. (This of course puts a heavy burden on level art, which I will let our artist and lead engineer discuss in another post)

Progress within a 5-minute window

Since this is a mobile game, I don’t want the player to feel like they are missing out on the “true” experience if they don’t have an ideal amount of time to play it.

Only ambient sound

Again, I don’t want the player to ever feel like they are missing out on the “true” experience. On the mobile platform, players may not always have headphones, or may be unable to have sound playing. As such, I want the sound design of the game to be complementary but not necessary.

Natural touch controls

This is VERY important. This is still very much a work in-progress, but for now I believe we are almost there.  THERE WILL BE NO VIRTUAL PAD! (They are so awful, aren’t they?) I would like to point out that Rocketcat’s Mage Gauntlet continues to be an inspiration for my touch control design, and if anyone out there hasn’t played it yet, DO SO IMMEDIATELY.

-Matt Zenel, Lead Designer

Feb 1

Early Prototyping Blog

All posts below are imported from a private word press we used to prototype Lost in Transit.  The process we used was as follows:

1) Designer posts very basic requirements

2) Engineer implements and commits changes, and then posts the build on the wordpress in a web-playable format

3) Designer discusses what worked and what didn’t, what to change, and new requirements

4) Repeat step 2 and 3.

The engine we used to prototype was Unity. After development is finished, we will release the early prototype builds that are linked in the screencaps of those early dev posts as part of our post mortem. I personally look forward to seeing the reaction of anyone who may be interested in playing them down the line.

The posts are imported in the order that they appeared from bottom to top.

-Matt Zenel, Lead Designer

Feb 1
Feb 1
Feb 1
Feb 1
Feb 1
Feb 1