Quick Tip: Running Moai build from Sublime Text using OSX

I’m planning a longer post about setting up a dev environment for Moai using a Mac, but for now I thought I’d put out this quick tip about using Sublime. It took me a few minutes to figure this out, as I couldn’t find it in the documentation for the Sublime build command.

When setting up your build command in Sublime, you’ll need to add the shell property to build config object, and set the value to true. Here’s mine:

{
   "cmd": ["${project_path:${folder}}/run.sh"],
   "shell": true
}

Prototypes and Post-mortems

I was planning on doing a post-mortem for Amazing Brok tonight, but I can’t figure out what I want to say. I’m working on it, and will try to have it finished by Monday. In the meantime, you may be interested to know that we’ve come up with an idea for our next project that we think will be a lot of fun. We’ve worked out what we want to see in the prototype, and will hopefully have something for you guys to play with soon.

Monthly Report – July 2012

The month of July, 2012. The month we released our first project ever, Amazing Brok. The lessons learned are coming hard and fast, but that’s for another post. This will be all about the numbers. So let’s get to it, shall we?

To start, I should briefly mention the setup. We released Brok on the Apple AppStore as a free app with limited content, and an in-app purchase for more. Currently there is only one level pack you can buy, priced at $.99. On Google Play, we have a paid app with all the levels, also for $.99. How well did that work out?

Downloads

iOS Downloads for July 2012

The huge spike is the initial release day, and it’s been slowly going down ever since. Total downloads for the month landed at 6616. For our first attempt ever, we’ve been pretty pleased with this number. Sure, we had no frame of reference. But still, we were fairly pessimistic at how many people would even see the game.

Sales

Sales for July 2012

With such a small sample size, the graph isn’t exactly helpful. Other than showing that sales are going down roughly with downloads, not much can be gleaned. It’s maybe a bit interesting to note that a paid app for Android devices did much better than an in-app purchase for iOS. Total sales for both stores for the month were 122 units (76 for Android, 46 for iOS), for a total of $83.79.

Store Rankings

It may be relevant or interesting to some of you, so here are the ranking charts for the Apple and Play store separately.

Apple Store Rankings for US in July 2012

I shortened the time frame. After July 11, Brok doesn’t appear again in Apple’s store rankings. Here’s the Play store.

Play Store Rankings for US in July 2012

It seems like there is an issue with AppFigures collecting data from the Play store¬†occasionally. It will sometimes go several hours without an update. I’m not sure if AppFigures fails to collect data, or if there’s an issue finding the rankings off the Play store. Either way, you can still see the plot points showing the declining curve after the 16th. That sudden spike at the end of the month is when I released an update (I’m still waiting for Apple to review that update for iOS devices).

Marketing

We’ve done practically zero marketing. I posted in a few subreddits, and told friends and family that the game was released. We haven’t spent any money on ads. We haven’t done any press releases. I haven’t emailed any review sites. It looks bad when I put it all together like that.

I do plan on emailing sites when I get the first update approved. That update really improves the levels, adds some graphical niceties, includes more free content, and more. The update gets the game closer to what we wanted to release. Once it’s approved and live, I’ll feel better about people reviewing the game.

That said, we have had 3 or 4 sites review the game already. They were small sites, but the reviews were favorable. I’m not sure if they helped with downloads or not.

Pirates

One fun thing to learn was the piracy rate. I knew it could be high; I’d heard numbers as high as 95%. Also, lots of posts had mentioned it being worse on Android than iOS. I’m not sure if that’s true or not. However, in this case it almost certainly has been. It’s a bit more difficult to set up the reasoning, but we saw a minimum of about 98% piracy of the Android version. Here’s my data.

We used CoronaSDK to build this app, which bakes in it’s own data collection code unless you explicitly turn it off. I decided to leave it in, since I could see the data via their dashboard and I was curious about what it would reveal (did I mention that this has been a major learning experience?). They collect a few pieces of data which interest me, but in this case I was looking at the number of unique daily users broken down by OS. (They claim it’s unique users, but my guess is that it’s really unique device IDs).

Unique Users by OS

As you can see, at a high point we had 4630 unique devices playing Brok in a single day. That establishes a minimum number of Android devices that Brok could be on. All the other days’ users could just be a subset of the users from July 12. Some (slightly oversimplified) math shows us that 76 (legit users) / 4630 (min # of devices with Brok) = 1.64% legitimate users.

Now obviously it’s not quite that simple. There could have been legit users with multiple devices. Or pirates with multiple devices. Maybe I should be counting the number of units sold by July 12th, instead of using the total for the month. Lots of different ways you may want to look at the data. (I’m happy to oblige, btw, if you want a specific piece of data that I haven’t given here. Let me know in the comments).

Looking Forward

I’m considering releasing a second version of Brok on Play as a free app, with ads and an in-app purchase to remove those ads. I’m also considering putting the app on the Amazon AppStore for Android and Kindle Fire, as well as the Barnes & Noble store for Nook Color and Tablet. We’ll see what happens.

Closing

Despite the terrible sales, we have both been really stoked about the whole process. This is something I do in off-hours, so I’m not depending on the income for anything. My first milestone goal for the company is to just break even after the CoronaSDK license and developer fees, and I have 5 more months for that.

I intend to post a report every month about how we’re doing. I think that’s something people would like to see, especially other developers. Also, I’d love to hear any comments or criticisms you may have, about our overall approach, the game, this report, whatever. And thanks for reading!

Edit: Added in rankings data and marketing info as per user onewayout in /r/gamedev

Amazing Brok v1.1: There were… complications

So, we’ve released an update for the Android version of Brok. Complete with the new levels, some bug fixes, graphical and performance improvements, etc. We also removed the permissions that Corona bakes into your app. We had a (small) boost to purchases after releasing the update, and at the time of writing this we’re are in the top 200 again (after dropping off the chart). So updating does appear to help. And based on an incredibly small sample size, I’m guessing the permissions thing was the cause of about half of the cancelled orders we were getting before.

But…

There’s this Apple AppStore thing, and it’s causing me some issues. Convoluted story time. When we originally released Brok, we were using CoronaSDK build version 704. I didn’t know it at the time (probably wasn’t paying attention), but there was a newer build, version 840. In 704, both armv6 and armv7 architectures were supported. To people who don’t know or care what that means, basically all generations of iPhones could “run” my game (although older phones, like 3Gs couldn’t render fast enough to actually let you play it).

After releasing, I set out to fix the terrible performance on the older devices. I noticed that the 840 (newest Corona version) build included some features that would improve performance in a huge way. As I said, the game was unplayable on 3Gs, and even iPhone 4’s struggled on a few of the levels. Using 840 and including the new features, I produced a build of Brok that ran smooth as butter on Adam’s iPhone 4. I was excited. Then I got another friend to test on his iPhone 3G. My excitement turned to fear, then anger, then hate.

My friend couldn’t get the game to install. We were using TestFlightApp.com, which we had used before. We figured out that the app itself was failing to install, since it was only built for armv7 architectures. The iPhone 3G is armv6. So this new udpate that I’ve been building, the one that would make the game playable on this older model of phone, couldn’t be actually be played on it. Awesome.

Well, after I deliberated for a while, I decided that dropping support of the 3G phones (supposedly only ~6% of the iOS market) was the way to go, since that still gave the noticeable improvement to those with iPhone 4 or better. This will make some people upset (possibly) but it seemed like the right thing to do. Ah, doing the right thing. That’s just not the world I live in, however.

It turns out, Apple has a policy that I’m not allowed to submit an update to an app that would eliminate support for a particular hardware spec. If the app previously worked on armv6, I will always have to support it. I can up the minimum OS requirement, but I can’t drop hardware.

Sorry this is getting so long. But here’s the current plan: submit the update anyway, upping the minimum OS version required, and see if they notice. If they do, I’ll have to figure out other ways to improve performance. If not, however, then yay me!

Amazing Brok v1.1 Nearing Completion

We’ve made all the bug fixes, changes, and improvements that we’re going to make. Starting tonight, Adam and I are just doing playtesting on the new levels, and adjusting the timings and scoring system to make it a bit harder to get gold.

I’m not allowed to show you all the visual changes we made. However, I can tell you that getting gold on all levels in any stage unlocks a surprise. Further, each stage holds it’s own surprise. Further still, getting golds on all levels will get you yet another surprise. Lots of surprises. Surprise!

On iOS, there will be a significant performance improvement. Several of the images have been touched up for higher resolution displays. We added a Facebook link on the title screen. We also added a periodic prompt for the user to rate the game. Finally, we added a banner in the level select menu to make it easier to buy the game. Some users mentioned not knowing how to buy the full game; we had previously hidden the buy button in the settings screen, or you had to complete all the levels before it prompted you to buy.

If all goes well, we’ll be submitting the update this weekend. Then it’s on to the next project!

Adding in a Facebook “Like Us” Button using CoronaSDK

We’re going there. We’re moving a little bit closer to this newfangled social media fad the kids are talking about these days. I decided to add in a Facebook icon on the title screen of Brok, just for the purposes of giving our players an easy way to keep up with our¬†scuttlebutt.

The idea is to offer the most painless way possible for players to “like” us on FB (btw, we have a FB page, you should check it out). I began by looking at the various Corona tutorials and examples to see how the integration should work. Corona has a Facebook api baked in, giving the developer an easy way to get a user logged in and make requests against the FB social graph. Below are a handful of the many posts that could help you get up and running.

Continue reading

Amazing Brok is now available on Google Play!

Forgot to post this here on Sunday, but Brok went live sometime Sunday morning. We’re trying an experiment. We’re testing the semi-conventional wisdom that says paid apps are ok on iOS, but you must go F2P on Android. We’re doing nearly the opposite. The app is available for free on iOS with a limited number of levels, and an in-app purchase of $.99 unlocks the rest. On Google Play, we’re doing a straight-forward paid app, $.99 for the complete game. I plan on posting the results after the month ends for all to see. Stay tuned!

Get it on Google Play!

Cross-platform Mobile App Development Showcase