For the last few days I’ve been trying out the new Google Maps SDK for iOS, to see if I can use it to bring Google Maps back to Zombie Outbreak Simulator for iOS. The SDK isn’t yet fully available to all developers as Google are handing out keys progressively, presumably so they can test it to make sure it works okay before going for a full release. I applied for access and Google sent me a key a few days later – thanks Google! :)
I was able to get the new maps SDK into iZOS without too much trouble, but unfortunately it doesn’t quite do what iZOS needs. I can get the zombies and civs to draw okay over the map:
However the zombies/civs don’t synchronize properly with the map. When I pan/zoom, the map lags behind the zombies/civs a bit, so it looks like the zombies and civs are sliding around on the ground.
This is Google’s first release of their new Google Maps SDK for iOS, so I’m hoping that they’ll update it in the future to add support for overlays, which should make it possible to properly synchronize content with the map.
My current plan is to work on both the web and mobile versions of C3O and ZOS in parallel. On the mobile side I submitted an update to add iPhone 5 support to iZOS to Apple about a week ago, and am now waiting for them to review it.
For the web version of C3O, the next feature which I’m working on is the ability for the map’s author to set the map’s start position – ie the location on the map where the initial group of survivors is placed at the start of the game. This is to replace the current default, which is just the centre of the map.
I just thought I’d post a quick work-in-progress screenshot of how this is coming along:
I have this working in the editor now, but not yet in the game itself, so it’ll be a bit longer before it’s ready for release.
While I’m finishing up this feature for C3O, I’m also planning to start trying out Google’s new iOS SDK for Google Maps, to see if I can use it to get Google Maps back into iZOS.
Here’s another post from the “boring things indie game developers do which aren’t game development” file.
A couple of weeks ago I wrote about how I had moved the C3O forum. This was because the old forum was running on Jay’s server, and since Jay left Binary Space a few weeks ago, I needed to move C3O off his server.
Everything for binaryspacegames.com was also running on Jay’s server, so I needed to move that too.
For the forum I decided to go with Forumatic who provide managed phpBB hosting, rather than having to set up and look after my own server. I wanted to avoid maintaining my own server for binaryspacegames.com too.
First, to host the DNS for binaryspacegames.com I’m using Namecheap FreeDNS. It’s hard to argue with the price :) As Binary Space’s domains come up for renewal over the next year or two, I’ll likely switch to having them registered with Namecheap as well.
I moved the email for binaryspacegames.com to Google Apps. If I’d done this three weeks ago it would have been free, but now I have to pay $10 per month. Google used to offer a free version for less than 10 users, but recently removed that option. Oh well!
That just left the main www.binaryspacegames.com website, which was running on WordPress. Just like with our old forum, this was something which Jay set up ages ago, and which neither of us had wanted to spend time maintaining – and so we were running a version of WordPress which was about 3 years old.
I could have installed the WordPress.org software on my own new server, but I looked around at the options which would allow me to avoid doing that.
The first option I experimented with was WordPress’s own hosted blog service, WordPress.com. This is a very easy way to get a simple WordPress site up and running quickly, although it’s less flexible than running WordPress on your own server. This looked as though it could do most of what I needed, but there were a few small limitations which made me decide it wasn’t quite right for Binary Space.
In the end I decided to go with page.ly. They do managed WordPress hosting – so they handle the installation and updates for WordPress, including the themes and plugins and so on. And they also manage a farm of servers to keep the site running fast.
Unlike WordPress.com, which only supports a limited number of themes and built-in plugins, page.ly can support almost any WordPress theme and plugin. I could have tracked down the theme we were using on the old version of www.binaryspacegames.com – although from a quick search it looks as though it hasn’t been updated in 3 years either, and their site is now infected with malware. Here’s how the old website looked:
Instead I figured I’d make a break from the old version of the website, and go with something different. Rather than complicate things, I just browsed the numerous themes available within the theme browser of the WordPress dashboard, eventually settling on a simple theme called zeeSynergie. This is how the website looks now:
The new site is probably not quite as good looking as the old one (Jay had spent a bit of time customizing the graphics on the old one), but it’s functional.
But most of all, it works, it should look after itself, and now I can get back to game development! :)
For those of you more interested in the web version of C3O, I’ve started adding the ability to change the map’s start position. Hopefully I’ll have a work-in-progress screenshot of that up soon, and then release it soon after.
Back with ZOS on iOS, there was some big news about a week ago when Google released their new version of Google Maps for iOS. Along with that they also announced a new Google Maps API for iOS! I’m hoping this new API will make it possible for me to bring the Google Maps back to ZOS on iOS.
Google are currently gradually rolling out access to the new API. I applied for a key and was approved a few days ago. So soon I’m going to jump in and try to get ZOS to work on Google Maps again! :)
It’s been a few months since I last touched XCode, so to get back into the swing of things I thought I’d do a quick update before tackling Google Maps. So I’m going to upgrade iZOS to support the iPhone 5 which was released a few months ago (just after our last update).
All I need to do is stretch iZOS by another 176 pixels. This shouldn’t be too hard, as most of the sizing and positioning is calculated dynamically already. There’ll just be a few full-screen images which I’ll need to update, like the map selection screen.
However, I don’t own an iPhone 5 to test it with – so I’m looking for a few beta testers.
If you’re interested in being a beta tester, send me an email via the contact form. It would be good if you’ve already played iZOS before (either on your iPhone 5, or another iDevice), so you’ll know what to expect, and will notice if it’s doing something strange.
Also, as I mentioned in my blog post a couple of weeks ago, now that I’ve released the first update to the web version of C3O, I’m going to be working on both mobile and web updates in parallel. The next update I have planned for the web version is to let the map author choose where you spawn at the beginning of the game – instead of always being the centre of the map as it is now.
One of the joys of indie game development is… how little time you actually spend developing games!
In addition to the obvious parts of game development (like game design, programming, art, sound, music, etc), there are so many other things to do. ‘Fun’ things like accounting, marketing, running websites, moderating spam, and so on.
One of these things is the Class 3 Outbreak Forum. Jay first set it up about a week or two after we first released the original Zombie Outbreak Simulator, way back in November 2009. But maintaining forum software is not really something Jay or I felt like spending our time doing. I know enough about sysadmin to be dangerous – I first tinkered with Linux around 1997, back when you had to recompile the kernel to add sound support, and by 1999 I was running 4 Linux servers at home. But for Binary Space I mostly concentrated on programming, and let Jay fill the roles of art, sound, music, design, and “everything else”. This mostly left Jay doing the cursing whenever he had to try to set something up on a server, and it inevitably went wrong :) So mostly, we left good enough alone. Which meant we were running a version of phpBB which was about 3 years old.
Back when we were getting ready to release the original ZOS and Class 3 Outbreak, Jay suggested we rent an expensive-ish (approx $150 per month) dedicated server from SoftLayer, instead of cheap shared hosting, “just in case we got Dugg“. We did get on the front page of Digg – and the server still crashed anyway, but SoftLayer were great in helping us through it. But after that initial burst of traffic, and after the additional spike of traffic when we released the original Class 3 Outbreak in April 2010, our traffic dropped to levels where it wasn’t worth continuing to spend so much on hosting the server.
So, we decided to move class3outbreak.com onto the cheaper VPS server which Jay already had for his other business Hyperfocal Design, with Binary Space splitting the cost with Hyperfocal. This included moving the forum.
Fast forward to today, and the forum was still running on Jay’s server… which is a bit awkward now that Jay has left Binary Space. So, I needed to move the forum to some other server.
I could have found another host, set up phpBB on it myself, and then moved the forum to it. But then I’d have another server to look after. I’d rather spend my time making games!
So instead I’ve decided to go with Forumatic. They provide fully managed phpBB hosting – so they set up the servers, install the updates, and make sure it’s running properly. Forumatic is run by a couple of the core phpBB developers, so I presume they know what they are doing – far more than me :) This way I can just use the forum, and I’m free to spend more time on game dev.
As I mentioned in my last blog post, the first update I’m working on is adding infection settings to the editor. So instead of your map always using the same infection settings as every other map, you can choose the settings which make sense for your map.
I thought I’d post a quick screenshot of how the infection settings are coming along:
In my dev version I’ve built the UI which you can see in the screenshot, and the settings are also being saved and restored with the map. I now need to include the settings when the map is published, and then make the game itself use the modified settings. So I’m probably about half-way there at the moment.
If you’ve been playing Class 3 Outbreak or Zombie Outbreak Simulator for a while, and keeping up with what we’re doing, you’ve probably noticed that we’ve been extremely quiet lately. The last major update on our blog was back in April, just after we released Zombie Outbreak Simulator for iOS, with a minor post at the beginning of May when we released v1.1 of ZOS for iOS with support for 10 maps. Our last post on our Facebook page was back in June, and we haven’t posted much on our forums in ages.
So what happened, and where did we go? Were we bitten by zombies? Were we kidnapped by government operatives seeking our expert knowledge on simulating potential zombie outbreaks?
Here, finally, is an update of what we’ve been up to. Followed up with a big announcement of where Binary Space is going next!
At the end of May we released Zombie Outbreak Simulator Free for iOS. By default a single map was enabled, with limited infected options. There was a single in-app purchase for $0.99 to upgrade to the full version, enabling all 10 maps and all of the options.
In June we released an update to ZOS on iOS which added the ability to drop bombs on the unsuspecting hordes (and unlucky civilians).
On the 11th of June 2012 at Apple’s WWDC keynote, Apple announced iOS 6. One of the major features announced was that Apple were replacing Google Maps with their own new mapping platform. We had thought this might happen at some point – there had been widespread speculation that Apple were going to replace Google Maps, since Apple had been acquiring a number of mapping-related companies.
At the time we were working on the bombs update. We finished that off and submitted it to Apple. While we were waiting for it to be reviewed, I downloaded the developer preview of XCode and iOS 6, to test ZOS.
This confirmed that Map Kit, the Apple API which ZOS was using to work with Google Maps, had switched to Apple’s own maps. I checked each of the 10 maps supported by ZOS. At the time the quality of the images at all 10 locations was worse than Google’s – ranging from “not as good as Google” to “really bad”, to even having random static at a couple of locations. Also, none of the locations were available in high enough resolution to be able to zoom in to the level at which ZOS is played. For example, here’s a comparison of how the Netherlands map looked on iOS 5, and with the developer preview of iOS 6:
To be fair to Apple though, their release notes did say “Map data will continue to evolve – only a limited amount of high-resolution satellite imagery is currently available”. By the time iOS 6 was due to be released (rumoured to be mid-September at that point), maybe the image quality would have been better. But we couldn’t exactly bet on that happening. Plus, even if Apple’s imagery was great, it was still different to Google’s. For the couple of maps which were recognizable, the imagery didn’t line up with the walls, trees etc that we’d edited, and which did align with the Google maps – which would have meant re-editing those maps somehow.
I tried asking Google if they were planning to release their own new native API for iOS. If they were going to release something before iOS 6 came out, maybe we could just switch over to it. Their response was “we can’t comment on what our future plans are”.
With no other options available, we figured we had to remove Map Kit, so remove the currently-Google-soon-to-be-Apple maps. Rather than leave ZOS to die when iOS 6 was released, we decided we’d buy some aerial photos, and just embed them directly in the game. We had already bought one map of Leicester England from Bluesky for the original C3O, so we bought another map from them of Coventry England. Huge thankyous to nearmap.com for also allowing us to use some of their aerial photos for three locations in Australia!
We tried to find some aerial photos in the US (as most of our sales of ZOS for iOS have been from the US), but we were unable to find anyone who would sell us aerial photos of a good enough quality.
Embedding the photos into the app instead of using Map Kit to download them as needed from Google increased the size of the app considerably. I didn’t want the app size to increase too much, or else it might become too large to download over the mobile network in a reasonable time. So we decided to reduce the total number of maps to five.
We released the update in mid-September, a few days before iOS 6 was due to be released.
That was over two months ago – since then it’s been basically radio silence from us. What have we been doing?
Mostly, Jay and I have been taking a break, and having lots of discussions about what to do next.
We started porting ZOS to iOS around August last year, and that work required me to rewrite all of the code, but we were able to reuse a lot of Jay’s original artwork. So during that time Jay had much more available time than me, and so for the last year or so Jay has been working on another game by himself. I resigned from my job back in July, so I’ve been enjoying an extended holiday, spending more time with my family, which has been great! :)
In the end, Jay and I have decided that we’re going to split up, and go our separate ways. It’s been over three and a half years since we first started working together on C3O and ZOS, and while we’ve worked together well, we’ve come to realize that we have different ideas about the types of games we’d like to build. Jay is going to release the game he’s been working on for the last year or so under his own new company name. And Jay has agreed to let me take over Binary Space – we’ve come to an agreement where I’ll gradually buy out his share of the company over the next several years.
So what am I going to do with Binary Space?
Despite the obstacles which Google and Apple have created, I’m going to continue development of C3O and ZOS. I think the games still have potential. Despite being unfinished, our web versions at class3outbreak.com still get around 30,000 visitors a month, and have been played a total of over 3.2 million times since first release. And despite being more of a toy than a game, ZOS for iOS has been downloaded by over 100,000 people. And across them all, we’ve gained over 9,000 fans on Facebook. So, I think there are many people out there who still like these games, and I’d like to find out what I can do with them if I keep on trying! :)
Last year more smartphones were sold than PCs, with smartphone sales growing by about 60%, tablet sales growing by about 270%, and PC (desktop, notebook and netbook) sales only growing by about 2%. Although the PC is far from ‘dead’, mobile seems to be the place to be at the moment. So I’m very keen to keep developing for mobile platforms.
So what I’m planning is a two-pronged approach: continuing to develop both the mobile and web-based versions of our games. While we’ve earned some revenue from ZOS on iOS, we’ve earned very little from the web-based versions of C3O and ZOS. So by continuing to develop for mobile I hope to continue earning revenue to help support Binary Space. And by continuing to develop the web version of C3O I hope to keep up a steady stream of players who might be interested in buying the mobile version.
One thing I want to do is build a stronger link between the web and mobile versions. There are about 2000 maps featured on the front page of class3outbreak.com, but the iOS version of ZOS only has 5 maps. What I’d like to do is make it possible for the iOS version of ZOS to play all of those maps which are available on class3outbreak.com. This was something that I always wanted to do with ZOS on iOS, right back from when we first started working on it, but we decided to start small and just support a single map at first. After the initial launch we decided to take it in stages, first increasing that to 10 maps. I had hoped to eventually extend that further.
After that I’d like to keep adding further updates to ZOS on iOS, to help keep it interesting. However it will probably always remain as a kind of ‘toy’, just an amusing LOLfest to pass a bit of time :) In the longer term I’d like to also release Class 3 Outbreak on iOS, to bring some actual gameplay with controllable units to iOS, but that will be a fair way in the future.
At some point I’d also like to try producing an Android version of ZOS. Since announcing that we were building ZOS for iOS, we’ve had a number of people ask for an Android version. I’m not sure if this will be possible – as I’ve found on iOS, getting thousands of zombies roaming around over a map at a decent speed is tricky. Google does have an official Google Maps API for Android, but it doesn’t support satellite images without labels, which is what ZOS needs. Ironically, the current version of ZOS on iOS (with just 5 embedded aerial photos) should be able to be ported to Android without much problem, as there is no mapping to worry about. So I will probably start with that, and then see how it goes from there. When I ported ZOS to iOS, I wrote most of it with fairly standard C++ and OpenGL ES, with a relatively thin layer of iOS-specific Objective C at the front end, to interface with the maps and the iOS UI. The C++ and OpenGL ES back end should be able to work on Android too, so it should be less work to port ZOS to Android than it was to port it to iOS the first time. However it still won’t be a small amount of work, so it will be a while before I’ll have time to start experimenting with this. One of the reasons we initially started on iOS before Android was because the general opinion is that apps usually earn more on iOS. This article from a year ago found that iOS apps earned about 4 times as much as Android apps, although this more recent article from a couple of months ago suggests iOS may only be about 50% higher than Android. The only way to find out what ZOS could do on Android will be to try it! :)
Then there’s the web version of C3O. It’s been forever since we last released an update for it – way back in August last year when we added shotguns. I’m going to start working on updates for the web version again, and the first things I plan to do are centred around giving map editors more control over their maps. At the moment all games use the same infection settings, which were tuned by Jay to feel okay for an ‘average’ suburban map (and the settings can only be changed in ZOS). The first thing I want to do is give the map author the ability to choose the default infection settings, so that you can choose what makes sense for your map.
Currently your starting group of survivors always starts right in the middle of the map, which was just the easiest thing to develop first. Instead I’d like to add the option for you to choose the spawn point for your survivors.
At the moment the game has no objective – you start with some survivors, and have to try to avoid the zombies, but otherwise there’s nothing in particular to do. I’d like to add the ability for the map author to choose an objective. Over time I’d like to add several different objectives which you can choose from, with the ability to change the relevant parameters. For example these might be to survive for X minutes, or to get to location X, or to rescue person X from location Y, and so on.
I’d also like to extend the game from being about a single map each time, so map authors can create a ‘campaign’ across multiple maps. So you could create a collection of maps where once you complete the objective on one map, you can progress onto the next map. Eventually you might also be able to carry your team of survivors from one map to the next.
On top of these kind of editor controls, the actual gameplay itself could do with some more features, like the ability to find and use more kinds of weapons and equipment, equipping your team, forming survivors into squads, building defences, survivor skills, and so on. Maybe there will be other types of people you can find to help your group of survivors – like police or military.
At the moment you need to play out an entire game in a single session. As the game gets more complicated I’ll need to add in some kind of way to save your progress, so you have a persistent game stored on the web site, and you can drop in to the site to play for a few minutes (or longer :) ) whenever you like. Perhaps you’ll have a home base which you can gradually build up over time, adding fortifications while you continue to scavenge for supplies and recruit new survivors. Eventually it would be awesome if there could be some kind of cooperative multiplayer, maybe even make it somewhat MMO-like, so each map has its own set of persistent fortifications.
However, I’m only one person. All of the above will take a lot of work, and I’ll be adjusting priorities as I go, based on what seems like the best idea at the time, and based on the feedback I get from you.
Adding more features to the web version of C3O will hopefully help in advertising the mobile version of ZOS to more people, and it will hopefully help make more maps for mobile players to enjoy. However another benefit of working on the web version of C3O is so that I can try out various gameplay ideas, which I could eventually make use of in a mobile version of C3O. This is why a mobile version of C3O is probably a fair way off yet.
Originally, Jay and I planned to turn the web-based version of C3O into a free-to-play game – we mentioned this back when we launched our crowd-funding campaign. So you would have been able to play the game for free, but have the option of spending real money for extra in-game items if you wanted to. In the long term this may still happen, but it’s not my immediate focus. There are a number of challenges around this, not least of which is that Google won’t allow me to charge for a website which uses Google Maps, without paying them a hefty ($10k+) fee first. My goal isn’t to squeeze every dollar I can out of C3O and ZOS, but the more I can earn, the more I can put back into developing the games. If I do introduce any free-to-play style features, I’ll want to do it in a way which isn’t sleazy, like many of the free-to-play games out there which essentially make you stop playing until you spend some money.
As I mentioned earlier, I’m currently taking a break from work, spending time with my family. I set aside some money from my savings to cover me for about 6 months, so I’ll be returning to full time work around the end of January. That means that from now I’ve got about 2 months, where I’m hoping to be able to get a bit of a head-start on developing some of the above features for C3O and ZOS on iOS. After that I’ll be back to developing C3O and ZOS in my spare time around my work and family, so the pace will be slower, like how I developed the games in the past.
Since it’s been so long since I did anything on the web version of C3O, I’m going to focus on releasing an update to that first – ie the ability for the map author to change the infection settings. After that I’ll switch to working on both the web and mobile versions in parallel – maybe a couple of days on one, then a couple of days on the other. I’ll see how it goes – it may be easier to concentrate on a single feature on one platform at a time.
Jay and I worked together pretty well most of the time, and our skills complemented each other. I did the programming, and Jay did the artwork, game design, sound, music, and many other things. I’m definitely not an artist, as I’ve demonstratedin the past :) When working with Jay, I could just make things ugly, and rely on Jay to make it look good. I will now have to put in some more effort myself – but mostly I’ll be hiring freelancers to help me with the artwork, and everything else. This will be a very different way of working, and it will be interesting to see how that works out :)
I’m also planning on doing things a bit more transparently than we did in the past – so discussing what I’m working on and what I’m planning to work on, posting more on the blog, on Facebook, and on the forums. As well as being not much of an artist, I’m not much of a game designer. Jay did most of the game design (and he is a huge zombie fan), so he mostly came up with the ideas (and then I disagreed with him..). Instead, I’ll be mostly relying on your comments and feedback, for ideas on what I should work on next. While I can’t guarantee to implement everything you ask for (there’s only one of me!), I’d generally like to involve the community more, and work towards building the kind of game which you would like to see!
I’m looking forward to this next chapter of Binary Space, and I’m hoping I can produce something which you will all enjoy playing. I’ve enjoyed working on C3O and ZOS over the last 3.5 years, and what I’ve enjoyed the most is hearing everyone’s comments – and it’s because of you all that I want to keep working on it. I’d like to know what you think, so please let me know your thoughts on the forums, on the Facebook page, or in the comments below. Thanks! :)