Jigsaw Master+ postmortem

[Update 4/26/13] Revised numbers at the bottom of the post.

As Jigsaw Master+ has just been released into the App Store a couple days ago, I figured I should do a postmortem on it, to detail what went right and what went wrong during the process, and to give some info on how sales and downloads are going so far.

As usual, I anticipated this would be a quick 3-4 week project, assuming that the graphic design would be lock-step with the programming side. As usual, I was totally wrong.

I began the project mid-February (it is now April 21st), taking another game template I was working on, and re-working it to provide a very simplified game view so that I could prototype it easily. That game template was a Cocos2D full project, including menuing, level selects, and a whole slew of helper classes. It is based on my Preschool Funtime! educational app, and provides a great starting point for new projects.

My first task was to figure out how to create dynamically-sized puzzles. So, for instance, you can have a 4×4 puzzle, or 9×7 puzzle, etc. That meant figuring out how to choose what piece type belong in what slot and then proceed to place pieces that conformed to the previously chosen piece (or any that were above it). This was a tougher problem than I originally anticipated, and took me a good 2-3 days (not working on it full-time at this point) to finally reach a solution which involved creating every iteration of piece types, 64 in all.

Here’s an early screenshot with non-locking pieces using a Preschool Funtime! background. I still hadn’t gotten the proper section of art from the original image.


The masking and creation of the final puzzle pieces from a source image wasn’t so tough. Since it is something that’s only done once at the start of the puzzle, I figured I could just use standard iOS Quartz/CoreGraphics routines. There’s plenty of sample code available for this, including in the API documentation. I also created an overlay to the pieces so that it would give them a proper beveled look like real pieces have due to the cutting process.

I then tested things out with some real-life photos to see if everything looked good. Here a puzzle using a photo of my cat (Spit — short for Spitfire). He’s wondering when I’ll get a ‘real job’ too.


At this point, I had spent maybe a week on this and felt like the project had some legs. I got in touch with my designer friend (and ex-coworker) Ben Buysse, who has helped me out with many of my previous projects, including Preschool Funtime! (menus, UI, about pages), and DrawPals (all UI). We spoke about the look and feel, and he set out to create the UI for the app. After not-too-many iterations, we settled on what you see before you in the app store.

I really like it, as it’s nice and clean and easy to comprehend. You should all shower Ben with compliments and offers for work.

As I began working on the UI for displaying the art packs and the images within those art packs, working in Cocos2D became a bit of a hindrance as it wasn’t easy to get good scrolling icon views that updated asynchronously from the network as the app received thumbnails. What I decided to do was rip out all the Cocos2D code from the project with the exception of the game view, and re-write it all in standard UIKit, using the iOS 6.0 UICollectionView as the driver for the pack and thumbnail views. I was looking for an excuse to mess around with UICollectionView and this was the perfect one. It was quite easy to implement, and I’m glad I made that decision, as the rest of the menus were easily built with standard UIKit controls and methods.

While there weren’t too many iterations, there was long lag times, unfortunately, on both the development and design sides. As I was tightening up code, and implementing features, I was also working on client projects, which take precedence. Ben was in the same situation, working some freelance gigs and helping me on his free time. So a 1 month project turned into a 2 month slog. Finally, on April 11th, I submitted the app.

On the evening of April 18th, the app was reviewed and approved by Apple to get on the App Store. Keep in mind this was a small side project, so no marketing was done (and the numbers support that). So what are the current numbers? At this point there are only two days worth of data, so not much can be gleamed from it, other than the numbers will most likely keep shrinking :)

So far in 2 days, Jigsaw Master+ has gotten 1,614 downloads. It’s a free game, with ads and options (via IAP) to upgrade to the Pro version, which allows you to pick some of the larger puzzle piece options (up to 400 pieces), use your photo roll or take a picture with your camera to use as the puzzle image, gives you 15 new photos, and removes all the ads. There are also photo packs available for IAP which contain high-resolution images to use as your puzzles.

So far, those downloads have led to revenue of $84.94. The first day, there were 1,108 downloads and revenue of $46 and yesterday it was 503 downloads for revenue of $38.94. There were 3 downloads that came in that Thursday night, most likely from Australian or New Zealand app stores, that got the release first.

Certainly not encouraging numbers, but I wasn’t really expecting much to begin with. Still, this was a fun project, and I got to mess around with some stuff I hadn’t before which I will be using in future projects. I am also working on an update, as well as 5-6 new art packs that will be getting pushed out in the next couple of weeks.

I’ll look to update this once more time passes and the data is better.

[Update 4/26/13] So now a whole week has passed, so here’s the current chart (including numbers):

Screen Shot 2013-04-26 at 10.12.05 AM

So the totals for the week (well, almost week, I think today’s sales would complete the week) are:

Downloads: 2,756

Profit via IAP: $162.38

Returns/Refunds: 3

There’s also ads in the app, so here are the numbers on those:

AdMob revenue: $19.23

Chartboost: $11.74

I’m working on some improvement updates to the app, and have a few more art packs that I will release in the coming days as well. I don’t believe they’ll impact the numbers, but it will certainly make the product better.

As always, if you want to get in touch, I can be reached on Twitter at @AbovegroundDan, dan at aboveground, or for business inquiries, info at aboveground.

Last word: Support indie devs. There’s very few that make any money on the App Store, and its usually the big companies with deep pockets that are garnering all the profits. If it weren’t for consulting work, I’d be broke if I had to rely on App Store profits.