Playchilla logo

Making a puzzle game in 4 days

Howdy hackers, once again I got side tracked from the tower defense game and decided to create a puzzle game. The goal was to make it as quickly as possible and not spend time on building overly complicated stuff. The puzzle game is inspired from one of the Machinarium in-game puzzles:

I found this puzzle a lot of fun and decided to create a dedicated game. The objective is to move over all tiles without getting trapped. Select a starting point then choose a direction in which the tiles will be lit all the way until a wall is hit, then select a new direction. You can’t move through yourself so you need to make sure you don’t get trapped.

Last weekend was extra long and that was the time span I sat out to do this within.

Initial development

I started by created a level format, I kept it simple and used a char matrix to describe the board. Then I implemented a simple view on this that drew rectangles in different colors. And on top of this I added the ability to move over tiles. This was all straight forward and playable within a couple of hours.

Level Generation

Once I could actually play some test levels I went ahead and wrote a level generator. This was also pretty straight forward and very brute force. The only thing I had to put some effort in was the difficulty calculations so the levels could be categories into easy, medium and hard. I ended up using the number of choices needed to solve a puzzle going the easiest way (fewest moves). Another thing that I had to do was to remember to throw away duplicates, to do this I mirrored and rotated each solvable to make sure every level was unique. Totally more than 300 levels are used for the game. All in all I probably spent 10 hours on this.

Adding some nice graphics

Once this was done, the boring programming was left. Building some kind of menu, making games save, showing dialogs upon level completion or failure. This took the rest of the time. Anna did some cool buttons and tiles for the game to make it look better. This probably took 20 hours. All the fiddling with mouse overs etc. Phew.


Name: Touch All Puzzle

For now the game is available for free in the Android market. The name is “Touch All Puzzle”. I’m not very happy with the name, but it will do. I will make an IOS and flash version as well.

Whats next

Also I would like to experiment with monetizing it as well. This is something I am really bad at. I’ve written free software for 15 years now but starting to feel that some money would be nice.



    Well done. The puzzles are quite challenging, and I have not yet found a general strategy or heuristic to solve them, other than trying all combos in your head.

    About monetization…. first create the most fun gaming experience for the player, if you manage to get a really large user base, just slap on an AdMob ad, or think about an in app purchase for more levels, level editor, puzzle sharing, etc. Once hooked, players will pay, I have learned. I doubled my in app purchase twice in the past, from 99 to 1.99 to 3.99 and both times the sales volume only went down a bit. It is with the free portion you really need to wow your players.

    Your shadow stealth game probably has a better chance at captivating the players for a long time than the touch all though, but that it just my personal opinion. Touch all may lake some long term interest. Once you have done a few, interest wanes for me. Lastly a technical note… the game will only play in landscape orientation on my tablet, where as the game is portrait, thus waistinhg screen space.

    • Yes they are, I’ve played it a lot now and it seems like I can solve the medium ones almost instantly (I found some clues, e.g. usually a tile with no neighbor blockers is a good place to start, also it usually (not always) ends in a dead end – then backtracking seems to work well). But for the harder still takes testing to solve.

      Thanks for the hints! I will start to see if I get any installs at all first and some general feedback – if it gets good rating I might make a free version with less levels. And yes the shadow game would be cool to run as well. I would make it simpler then since it’s even harder to control on the phone. What would you say is a large enough user base that makes it worthwhile to implement ads/payment?

      About the orientation – it might be that some devices have different definition of width and height? Should perhaps use w = min(w, h) I guess.

      • I am using AdMob and iAd.
        AdMob pays per click, and I see roughly 1% of click throughs.
        Per 1000 impressions, or 10 clicks, I earn 40 cents or so.
        How many users generate those 1000 impressions I don’t know.

        For iAd, I see roughly $1.50 per 1000 impressions, but iAd has a horrible fillrate.
        Only 15% of ad requests are filled, so effectively you need multiply the $1.50 by a 0.15 factor.
        A single user session creates multiple requests of course. Not sure how many.

        Another rough indication: 3000 downloads per day pays me roughly $35 on iAd.
        But that depends on how long you can retain your players as well.

        Lastly, click-through ratios can be influenced by developer, if you are the sneaky kind.
        I consider this cheating, and would never do it myself, but some games place a button near an ad.
        I believe fruit ninja android does this: an ad, with very close the ‘skip ad’ button.
        My Acer tablet has super poor touch accuracy, so it is easy to click the ad.
        I strongly advice against cheat.

        About iAd versus AdMob: my preference goes to iAd.
        Even though the low fill rate makes it earn less than AdMob, it will give the users a better experience:
        less ads shown, but if they DO show, they pay more.
        Also, it avoids having to link in third party libraries.
        If you use a third party library, you will not know what information is sent from player device to ad provider.
        You as dev could be responsible for privacy leaks perpetrated by third party.


        • Thanks Bram, this is really helpful since I’m completely new to this. Still not getting any downloads on the puzzle game so I guess I will wait with the ads for now.

    Much worse after update….. board only partly visible, not centered.
    Cut off at bottom.
    Also no autorotate.

    • Ghaaa, ok, thanks will take a look.

    Hi there!
    Very cool puzzle you got going in only 4 days.
    I’m looking to pay someone to create a puzzle that I have in mind, and create a level generator, similar to what you have created, and includes different difficulties.

    If you have the chance to e-mail and help me create this, i would appreciate it!

    Thank you!

    • Hi!

      Thanks for the request. I’m sorry I don’t have much time now days so I will have to pass :/

      Good luck,