ZOS for iOS: Update Submitted to Apple!

In my last post on the ZOS for iOS update I had all the maps, all the actions (bombs, soldiers, helicopters), and all the usual zombie mayhem all working. So it was “almost” ready, right?

Well, not quite. There were a whole bunch of tedious things left to do – like the tutorial, credits, sharing, purchases, ads, crash reporting, analytics, debugging, and fixing featured maps. Plus random issues with the Android version that I had to jump over and fix in the meantime. That’s why it’s been over two months!

However, I have now finally finished, woohoo!!! I’ve just submitted the update to Apple for them to review.

ZOS for iOS update waiting for review

Pretty soon those old app icons will be no more – the update uses the new icon from the Android version.

New ZOS for iOS icon

Now I just have to wait for Apple… hopefully I have better luck with the review process than back in 2012! :)



ZOS for iOS: Player Maps Beta

Hi everyone,

I’ve just released the third beta for the Zombie Outbreak Simulator for iOS update that I’m currently working on. This version includes the ability to play on any of the over 2,500 player maps created at www.class3outbreak.com.

ZOS for iOS update with player maps

There’ll be a few more beta releases before the game is ready for a full release, so there’s still time to sign up to help beta test if you’d like to. Just fill out this form and I’ll send you an invitation within a few days. If you’ve already signed up and haven’t received your invitation, let me know.


ZOS for iOS: Beta Testing Started!

Hi everyone,

Apple has approved my first beta of the Zombie Outbreak Simulator update for iOS! I’ve just sent out invitations to the 60 people who’ve signed up for testing so far.

ZOS for iOS update ready for testing

This is only the first round of beta testing – I’ll be releasing more updates to the beta testers as I complete them. In particular this first version has no sound or music yet (that’ll be in the next update), player maps, tutorial, and a bunch of other things.

There’s still time to sign up to help beta test if you’d like to, just fill out this form and I’ll send you an invitation within a few days. If you’ve already signed up and haven’t received your invitation, let me know.


Zombie Outbreak Simulator Hits One Million Downloads!

A few days ago Zombie Outbreak Simulator reached one million downloads on iOS and Android!!

Zombie Outbreak Simulator downloads

ZOS was released on iOS in April 2012, and has now been downloaded by 373,000 people across both the paid and free versions.

ZOS was released on Android in November 2014. It overtook iOS in March 2016, during its highest month for downloads due (I think) to The Walking Dead TV show. It’s now been downloaded by 627,000 people.

ZOS for iOS now has some catching up to do! :) I’m working now on an update to ZOS for iOS, to finally bring all the new stuff we added to ZOS for Android back to iOS.


ZOS for iOS: Call for Beta Testers!

Hi everyone,

The long-awaited update to Zombie Outbreak Simulator for iOS is well underway! I now have all the core gameplay features ported to the new cross-platform project that I’m building for both iOS and Android.

ZOS for iOS on multiple devices

There’s still lots more to do before it’ll be ready for a full release. However, I’m at the stage now where I can start some very early beta testing in the next week or two.

If you’d like to help me beta test the update, please fill in this form. I’ll be in contact when I’m ready to start testing.



ZOS for Android: Making it More Free to Play

Zombie Outbreak Simulator (ZOS) for Android was released in November 2014. Since then it’s been downloaded by over 550,000 people.

Feedback on the game has been very mixed. Although a lot of people really love it, there are also a lot of people who really hate it.

ZOS for Android ratings November 2014 to June 2016

Although the tutorial update that I released at the end of December 2014 helped improve the ratings (from about 2.9 stars to about 3.5 stars), there’s still a high percentage of 1-star ratings coming in every month.

ZOS for Anroid ratings graph November 2014 to May 2016

The vast majority of the negative feedback received now is about the in-app purchases and pricing.

With most free-to-play games there’s some kind of progression. Through playing the game you earn something, like coins, gems, points, whatever. In the game you can spend these credits to keep progressing with the game. You can keep playing for free more-or-less forever, although it gets harder. Or, if you want to you can spend real money on an in-app purchase to buy something extra, like more credits or extra items, which help you in the game.

The problem with ZOS is that it’s not like this. There’s no progression of game play, instead it’s more of a toy that you can tinker with and see what happens. It’s up to you whether you supercharge the zombies to make them win, or the humans to make them win. You can choose whether to use the bombs, soldiers and helicopters to help the humans, or not. There’s no way to reward you for winning (you can’t win!), and there’s no progression between games. So the usual free-to-play approach for in-app purchases doesn’t work.

So, the approach I used was more of a free trial. There is limited functionality available for free – a couple of maps, limited settings, a couple of bombs / soldiers / helicopters per game. The idea is that this is enough to get a feel for what the game is like. If you like the game, then you can pay to unlock the full game (or just parts of it). Separate features cost from 99c, up to $4.99 for everything. I think this is better than entirely paid-up-front, because this gives you a chance to try it out first.

Unfortunately, a lot of people hate this…

ZOS for Android one star reviews on purchases

So, for some time I had been thinking about how to let people keep playing for free, rather than hit the limit of the free features and get annoyed. The most obvious choice was some kind of rewarded video – temporarily unlocking part of the game by watching an ad. People could then either keep playing for free by watching ads, or choose to pay to upgrade if they got tired of the ads.

Coincidentally, in early January of this year I was contacted by AppGrade, offering their platform for rewarded videos. After some discussions with them I decided to give it a try.

On the 18th of February I released an update which added the ability to watch a video to get extra bombs, soldiers and helicopters (10 of each), in addition to the existing options to purchase. I’d decided to trial video ads with just the bombs / soldiers / helicopters first, to see how it went. That way if it didn’t work out, I wouldn’t have wasted too much effort on it.

ZOS for Android - watch a video for bombs, soldiers, helicopters

The response to the video ads has been good. Soon after release there was a dip in revenue from purchases. I suspected this might happen, as people who previously felt ‘forced’ into buying an upgrade, might have decided to watch ads instead. However the revenue soon picked back up again, back to around its previous levels. And the ads themselves have brought in some extra revenue on top of that. (This chart is in USD).

ZOS for Android revenue when adding rewarded video ads

One statistic that I thought was most interesting was that there was an immediate increase in the amount of time people played the game per session. Before the update sessions averaged around 7 to 8 minutes, after they averaged around 8 to 10 minutes. For reference I’ve coloured the Sundays in red (there’s always a dip in session time every Monday).

ZOS for Android average session time with rewarded videos update

Unfortunately, the update didn’t do anything to improve the ratings :|

ZOS for Android ratings after adding rewarded videos

However, I still think it’s been a worthwhile update, and so I’m planning on making more features of ZOS for Android free by unlocking them with rewarded videos.

At the moment I’m working on an update to be able to unlock the settings (in parallel with working on the iOS update). And then after that I plan to add the ability to unlock the online and offline maps (the player maps will stay as a paid feature).

My goal is to complete both of these free-with-videos unlock features before the ZOS for iOS update is complete. The paid version of ZOS for iOS will of course have everything unlocked in the original download. However the free version of ZOS for iOS will have the same purchase and video unlocks as ZOS for Android, and so I want to make sure I get it ‘right’ on Android before releasing the update on iOS.


ZOS for iOS: Update started!

Zombie Outbreak Simulator on Nexus 5X and iPhone 6s Plus

TL;DR: Development of the ZOS for iOS update has finally started! Details below…

Hi everyone,

Zombie Outbreak Simulator (ZOS) for iOS was first released in April 2012. A few updates followed, but the last update was way back in May 2013.

Focus then shifted to Android when in late 2013 I received funding to make an Android version of ZOS. ZOS for Android was released in November 2014, and I’ve made a few updates to it since, but most have been minor things like adding a tutorial, or bug fixes of various kinds.

The Android version of ZOS included some new features over the iOS version (soldiers, helicopters, player maps, and an entirely new UI). Ever since the first Android release the plan has been to port all of the new stuff back to iOS, however during 2015 I was too busy to get around to it. A couple of months ago I posted a sales update for ZOS on Android, and mentioned that I was finally in a position where I could get back to the iOS update.

For a while now I’ve been tinkering with how exactly I was going to update the iOS version. The core of ZOS for iOS was developed during 2011 to 2012, eons ago. The core of ZOS for Android was developed in 2014, and even that’s ages ago in mobile app development time-frames. Some of the factors I had to consider were:

  • The core game of ZOS for iOS was developed with C++ and OpenGL. However the UI and interaction with Google Maps was developed with Apple-specific Objective-C and UIKit.
  • When developing ZOS for Android, I was able to port over the C++ and OpenGL without too much effort. However the UI had to be completely rebuilt from scratch. We used the cross-platform Cocos2d-x to do this. However then a bunch of Android-specific Java code was added, to interact with Google Maps and other utilities. And then on top of that I added the new features like soldiers, helicopters and player maps.
  • ZOS for iOS was originally designed to work with iOS version 4.0. We’re now at iOS version 9.3 – that’s how old ZOS for iOS is!
  • ZOS for Android was built with Cocos2d-x version 2.2.2, which was released in December 2013. It’s now at version 3.11.
  • ZOS for Android was built with the Eclipse ADT (Android Developer Tools), the best option at the time. Google discontinued support for this in June 2015 – now Android Studio is the recommended development tool.

So some of my options:

  • I could grab the C++ and OpenGL code for the soldiers, helicopters and player maps from ZOS on Android and merge it back into the old ZOS for iOS code base. But then how do I fit the buttons / screens / etc for those features back into the old iOS UI?
  • I could grab all of the current version of ZOS for Android, which includes a UI built on the cross-platform Cocos2d-x, and port that back to iOS. But this is using a version of Cocos2d-x which is already 2.5 years old.
  • How much longer will I be able to keep developing ZOS for Android with Eclipse, before I’ll be forced to update to Android Studio anyway? I already got hit a few months ago where one small update rippled through to needing updates to 3 other components. How long until this falls apart?

In the end I decided to start over from scratch! I’m creating a brand new project with the latest version of Cocos2d-x (version 3.11). On Android I’m using the latest Android Studio 2.2 (an early release version which Google just released 9 days ago with new better support for Cocos2d-x development). And on iOS I’ll be building a new app designed from scratch to work with the latest devices and version of iOS.

Most of the core game and UI code in ZOS for Android should be able to be ported over to the new app, with a few tweaks here and there due to changes in Cocos2d-x. The major new work will be in separating off the Android-specific parts and implementing the equivalent on iOS. For most of this I’ll be able to grab bits and pieces from the old ZOS on iOS.

One major advantage of building a new app is that I’ll now have both iOS and Android running from the one set of code. This means any new updates in the future will automatically work on both platforms. No more cases where there’s a 2 year delay converting from one to the other! This is why people use cross-platform games libraries like Cocos2d-x or Unity in the first place. Unfortunately way back when I started ZOS for iOS this wasn’t an option, due to the integration I required with Google Maps at the time.

So to get to the point of this post: Now that I’ve figured out the how, I’ve finally started! The photo at the top of this post shows the new app, with the same home screen from the same code, running on both an Android Nexus 5X, and an iPhone 6s Plus!

The next question of course is “when will the iOS version be ready?” It’s too early for any kind of estimate at this stage, but at least I’m working on it! :D



ZOS for Android: Ten Thousand Devices


I first started development of Zombie Outbreak Simulator for iOS back in mid-2011. At the time I bought an iPhone 4 (released about 6 months earlier), and an iPad 2 (released a couple of months earlier), to use for development and testing. Later during development I bought a second hand iPad 1, and a reconditioned 3rd generation iPod touch (which was basically the same hardware as an iPhone 3GS), to use for more testing.

This meant that with only 4 devices, I had basically every possible combination of hardware which the game could run on (the two older-generation iPhones from 2007 and 2008 were incompatible as they were too slow). When I released the game I could therefore be quite sure that it would work for everyone.

Of course now there are more iOS devices, but it’s still only a handful. There’s only 8 current plus 11 discontinued-but-still-supported iOS devices across the iPhone, iPod, iPad, iPad mini and iPad Pro.

In contrast there are literally thousands of different Android devices out there. When I first started beta testing ZOS on Android in mid 2014, there were over 4000 Android devices compatible with ZOS.

Recently I noticed that there are now over 10,000 devices compatible with ZOS!


So what does this mean? It means that although I’ve developed and tested ZOS for Android on a bunch of different devices, it’s impossible for me to test on all of them. And that inevitably means there’ll be bugs :( Usually obscure ones which only show up on a handful of devices.

For example, recently some people were reporting a crash on startup. This seemed to be happening on the Sony Xperia M4 Aqua consistently, but also on a few other devices.

ZOS for Android crash reports

Many thanks to Darren who was able to help me out by connecting his phone to a computer to get the log messages from the crash. I was able to track down the problem to an obscure bug in Android which only occurs in this situation:

  • On Android 5.0 (Lollipop), and
  • With a 64 bit CPU, and
  • When using SQLite (a database library I’m using), and
  • When storing the database outside the app folder

Google fixed this bug in Android 5.1 (Lollipop MR1), but that didn’t help anyone still on 5.0.

Luckily there was a workaround I could use to avoid the problem, and I released an update a few weeks ago which seems to have fixed the crashes for people.

Now it seems a new bug has surfaced – a few people have reported that the online and player maps just stay grey without ever loading any of the map images. So this is my next challenge to try to figure out :)

ZOS for Android missing map tiles

If you’re having any issues with ZOS on Android, get in contact and I’ll see what I can do to help.


ZOS for Android: “The Walking Dead” Effect?

A couple of months ago I posted about sales for ZOS on Android, and I noted that sales had jumped a lot in October last year.

ZOS for Android sales November 2014 to February 2016

At the time I theorized that this was because the latest season of The Walking Dead started airing in October.

The Walking Dead airing dates

At the time I wondered if there’d be a drop in players when the season finished.

Well, it looks like there was! Here’s the number of players per day for a while before and after the final airing date on Sunday the 3rd of April:

ZOS for Android players per day for March and April 2016

For reference I’ve coloured the Sundays in red. The number of players generally peaks over the weekend, dropping during the week. However after the season finale of The Walking Dead there was an immediate larger-than-normal drop, and during the following week the number of players dropped to the lowest point it had been in over a month.

Sales peaked at their highest ever in March, were slightly less in April, and so far are looking to be a bit lower again in May.

I wonder if other zombie games have seen a similar effect from the TV show?

If anything, this tells me that I really need to get the updated version of ZOS for iOS done well before the next season starts (presumably October 2016). I’ve started on it, but it’s very early days yet.



ZOS for Android: Adding a Tutorial

Zombie Outbreak Simulator (ZOS) for Android was first released on Friday the 7th of November 2014.

By the end of November 2014 it had been downloaded by 45,000 people. While a lot of people loved it, even more people hated it, resulting in an average rating of only 2.9 stars. This was very disappointing in comparison with ZOS on iOS, which has an average rating of 4.5 stars.

ZOS for Android November 2014 ratings

There was a lot of negative feedback from the pricing and in-app purchases (I’ll be writing up more on that in another blog post some time). However going through the reviews, there was another common theme: some people didn’t know what to do.

ZOS for Android reviews 2014

ZOS is a bit of an unusual game – it’s not really a game, more of a ‘toy’. There’s no real objective, instead you tinker with settings and then watch what happens. How you play is up to you. I mention this in the description for the app on the Google Play store, in the very first sentence:

Zombie Outbreak Simulator is a sandbox app where you can customize your own zombie outbreak.

And a bit further down:

Watch a zombie outbreak unfold in real world environments, and alter the outbreak parameters to your liking. Do you prefer old-school slow movers, or the new fast movers? Is the population armed? How well can they shoot? How many police will be on patrol? Customize your own outbreak then watch the chaos unfold.

However, I know many people don’t read the app description, or even if they did, it’s not super clear that the player needs to make up their own game.

In hindsight, I should have included a tutorial in the game to explain what to do. So why didn’t I?

Jay and I never set out to develop ZOS. Actually, way back in 2009 we started developing the web game Class 3 Outbreak (C3O). In the original C3O, the idea was to control a small group of police officers against a background of a zombie outbreak. Initially the goal was to squash some small outbreaks, then to rescue some scientists, then to rescue a helicopter pilot and then evacuate.

While we were developing C3O, before even adding the police I started with the basic background zombie simulation – civs walking around, zombies chasing them, civs shooting back, civs getting infected, etc. Before the actual game went in, we thought this was pretty fun to watch :)

So when we were about ready to release C3O, we decided to make a cut-down version of the game containing just the simulation. We came up with the imaginative title of Zombie Outbreak Simulator, and we planned to release this first as a ‘teaser’ for the full game.

There was only a single map of Washington DC. The only thing you could do was change the infection settings – to make this obvious, we put in a “where the fun is” prompt for the infection settings button. So there was no need for a tutorial.

Original Zombie Outbreak Simulator 2009

Then in 2012 we released ZOS for iOS. Again, there was only one map, and the only thing you could do was change the infection settings. Again we put in a prompt to make the settings obvious.

Original ZOS for iOS outbreak settings prompt

During 2012 to 2013, ZOS for iOS gradually expanded. We increased the number of online maps to 10, added bombs, dropped to 5 offline maps, then increased up to 10 online plus 5 offline maps.

ZOS for iOS map selection 2013

ZOS for iOS bombs

Then in 2014 we released ZOS for Android, which expanded even more. As well as the 10 online plus 5 offline maps, there were now 2,500 player maps to choose from. And in addition to bombs, players could also send in soldiers and helicopters.

ZOS for Android map selection

ZOS for Android menus

By this point there was a confusing array of features to choose from, with no guidance on what to do. This time around I didn’t even include an arrow to point out where the infection settings were.

So why didn’t I include any tutorials or even prompts?

One reason is that I was keen to get ZOS for Android released. I was supposed to release it in May 2014, but it didn’t end up being released until November 2014. Even if I’d thought of it, I probably would have cut it, to get the game released as soon as possible.

But the main reason is that I was too close to the project. I’d been there since the project began, so I knew that the core gameplay was about watching a simulation and adjusting the parameters. I knew that choosing a map was just about what backdrop the simulation was running against. And I knew that the bombs, solders and helicopters were just a bit of added entertainment. However, most players who downloaded and installed the game wouldn’t have known any of this.

So, in December 2014 I started work on adding a tutorial. The first time someone loads the game, instead of all the map options, there’s only a single Play button. This takes the player straight into the default map, and then provides a guided tour through each of the game’s basic features.

ZOS for Android tutorial

The tutorial update was released on the 26th of December 2014. Coming off the low average rating of 2.9 stars from November, ratings increased to an average of 3.6 stars during January to April 2015, and have maintained roughly that level ever since.

The takeaway? When developing a game, it’s a good idea to step back from it every now and then, and imagine how it will look to someone who has never seen it before. Does the game still make sense? If not, try to make it more obvious.

I’m putting this away in my “things I did wrong” file, along with all my other mistakes. Now off to find something else to mess up! :)