I think that today’s post is a necessary one. I have had it at the pending list since quite weeks ago. Today I’m going to explain the process of puzzle creation for New Sokoban.
Since I started the development of New Sokoban, I have talked and showed the game to various people: family, friends and other developers, specially at the devUp in Barcelona last week. It is very surprising for me that a lot of them make me the following question: “Where do you find the puzzles for the game? The Internet?” The positive interpretation of this question is that people really appreciates the difficulty of designing the puzzles. In fact, they really believe that the most difficult and important aspect in the development of New Sokoban is the puzzles design. And certainly it is.
However, I don’t borrow any puzzle from Internet. I actually design every single puzzle as if it was an individual project, but at the same time, as a building part of the whole game. From the professional perspective, before any other thing, I consider myself a game designer and creator of experiences. So, starting from here, designing the puzzles for New Sokoban by myself is the natural procedure. I don’t conceive any other way.
Usually, the first idea about a puzzle comes from inspiration. I don’t have planned to spent some amount of time thinking about puzzles. I usually don’t push my brain to produce a new puzzle. I work on other aspects of the game and when suddenly inspiration comes I write down the new idea for a new puzzle. Later, I plan some time to work on those puzzle ideas and include them in the game prototype I’m working at this moment to test them.
This way, I can assure that every single puzzle has interest by itself. Inspiration always comes for a good reason. So, every puzzle has a good reason to be there. When I have a list of some potential puzzles I start my own process of puzzle production.
First step: draw it on a squared notebook
First step after inspiration is to draw it on a squared notebook. This serves as a first discard filter. On paper I can see more or less the dynamics of the puzzle. I try to solve it in different ways in order to try to anticipate the game experience that may have a potential player. I like to imagine how the player will approach that puzzle and I try to surprise him. For example, some puzzles have an apparent simple solution but when you try it, you see that that approach doesn’t work. In higher difficulty puzzles, or for a 3 stars solution, I try to produce this experience multiple times on a puzzle, making the player go back and forward. This produces on the player the feeling of challenge. Sometimes, hardcore players take it as a personal issue. “I’m NOT going to stop until beating this f*** puzzle!”. This is the kind of experience that hardcore players love. On the other hand, casual players enjoy visually different puzzle designs and varied simple mechanics for each puzzle, presented one by one and eventually combined in a smooth difficulty curve.
Mental note: use paper to prototype. Some people think that using paper is ridiculous taking into account the incredible tools that exist nowadays. However, pencil and paper have something special that those tools don’t have. Ideas flow more naturally from brain to paper through a pencil or a pen. Is an issue about feeling.
Second step: build up a first prototype on the device and check the puzzle solving experience
When I consider that I have a potential puzzle on paper I build up a first prototype version on my development device to better feel the puzzle solving experience. This version of the puzzle only has the basic elements to play it: board, walls, targets and boxes, everything without fancy graphics.
I didn’t develop a puzzle creator and editor for New Sokoban. It would have been very interesting from the point of view of the experience and learning. However, it would have also been very time consuming. So, I finally decided to use some existing tool. I chose Tiled. Tiled is a very nice tool for creating tile based games. However, New Sokoban is not a tile based game. This is why I use Tiled in a non usual way. At the beginning of this post you can see a screencast using Tiled to create a puzzle. You may also be interested on reading my post about tools used on the development of New Sokoban.
Third step: add visuals and check the overall gaming experience
When I’m comfortable with the puzzle solving experience, I go for the overall gaming experience for that puzzle. This means to include the actual visuals that the puzzle will have in the game. The visual characteristic that most impacts the final gaming experience is the fact that the walls are removed and the moving background is reveled. Sometimes, at this point I have to discard a puzzle. It is very painful after all the hard work done in previous steps but sometimes I consider it necessary. Specially for more casual oriented puzzles, for which the visuals are very important.
Mental note: you will have to learn to discard things. It has been very hard and painful for me but it is necessary to discard things from time to time. Even after some days of work. If the result is not good enough discard it. It will be much better on the long run.
Fourth step: playtest
The fourth step is to playtest it. Test and test and test and… Show the puzzles to friends and family and let them play on the device. Look carefully to them. Let them talk freely, not bother them too much with questions. And afterwards, write down your observations and start over the process, from the first step if necessary.
Fifth step: play it!
Fifth and final step is… play it!! Yes, not only it is necessary to playtest your game, it is also crucial to peacefully play it. Maybe, when you are waiting the bus or while there is advertising on TV. Relax and play your game. It is difficult to not seeing the game as your project and something you need to tweak over and over, but I think that it is important to switch your mind and put yourself on gamer mode. Usually, playing with another person that it is not aware of all the advances of your project can help.
Mental note: play your games. I mean, not only playtest them, try to put yourself on gamer mode, relax and actually play your game. Needs some practice, but it is absolutely possible.
Conclusion
As you can see, it is very important for me the content creation aspects of my games. For me, creating the puzzles of New Sokoban is like preparing a very special present for someone very special. I try to always have players in mind and hand-make the whole game (but specially the puzzles) with care. Hope you will enjoy it!
Interesting idea you have here.
I have to say it, but what you have here is not Sokoban.
Your game is a sliding block game. Believe it or not, Sokoban is not a sliding block game.
People can classify it as such, but it’s not.
Sokoban is a block pushing game and the player’s position makes all the differences.
Sliding block games doesn’t have a player and there is no position to talk about.
Using the word Sokoban in your game is a bit misleading, but I guess that’s why you call it new.
To me, makes more sense if you called it “Not Sokoban”.
Yes, I completely agree with you. I used “sokoban” in the name of this game probably because I started the design process from a sokoban-like core design. You can read about my design process in this post: http://indiedevstories.com/2011/02/05/designing-new-sokoban/
Anyway, I’m planning to change the name of the game in the next major update, probably using the concepts you talk about: slide and block.
Thanks for your feedback!