Saturday, August 29, 2009

Relativia is Submitted

Well, I just submitted Relativia to the Android Developer Challenge II. It was a hell of a slog, and I have mixed feelings about the project.

I think the idea and the basic design was good. I think the puzzle combat system is fun, unique, and well-designed. I think the map interface is somewhat simple, but stable and good.

But here are some concerns:

1) Right up until submission I was getting a force close error in the emulator after closing the application for the first time. I don't get this on the hardware device, but it has to do with inflating views, and I'm a little worried about how it will perform on different devices. For the contest, the app may be on any of the currently released devices.

2) I'm worried about bugs in general. I wasn't able to do much testing, so there are probably errors. I'm sure users will find them. I just hope the core gameplay is intact.

3) I added music the last week, and the Android media support in the SDK is pretty horrible. I had several looping music tracks that are seamless when wrapped, but I was getting an audible gap when using the looping feature in Android's MediaPlayer. I read that .ogg files worked better than .wav or .mp3, so I used .ogg files instead. The pause was less pronounced, but still there. I thought about fading the audio in and out, but there isn't a native function for that either, and I didn't have time to mess with doing my own. Ah well.

Things I would have done if given more time/resources:

1) Added much more polish to the game, mostly in the form of custom interface elements, such as buttons and drop-down menus. I use a lot of pre-built stuff, and it doesn't look that slick.

2) Added sounds to nearly every user function, such as screen transitions and button presses. Just didn't have time.

3) Play tested in multiple geographic regions. The three search terms I'm using are "hotel", "coffee+shop", and "grocery". I didn't do any testing in Google maps for non-English speaking locales, and I don't know how it will perform.

I'm just worried in general about the overall complexity of the programming. There's a ton of code and a thousand things could go wrong. If I released it on the market and got feedback, I could make corrections, but the contest does not allow upgrades to submissions, so what I just sent in is the final deal.

Still, I learned a great deal this summer, and got a ton more experience with Android, some good and some bad. I learned how to handle multiple activities, to transition between a main activity and a map activity. I learned how better to handle data with XML, and I learned a lot more about handling media such as graphics and audio.

I can safely say I'm in no hurry to write another RPG, even as small-scale as this one was. I only have 4 species, 4 classes, 3 spells per class, 8 types of enemies, with 3 spells each, 12 items of armor and weaponry, and 5 quests, but it felt like a damn mountain of stuff to handle.

Still, I'm glad I did it, but even more glad to be done with it. If the game is stable and playable on most phones, I hope to do reasonably well, at least make it to the first cut, into the top 20 in the division. But I expect that my category Games: Casual/Puzzle will most likely be the one with the most entrants and the most competition.

Even if it's buggy and gets thrashed in the first round of judging, hopefully I'll get some feedback about how to either make it better. I've also considered massively paring it down and just releasing the puzzle game as a stand-alone.

We'll see.

Friday, August 28, 2009

Some Android vs. iPhone Stats

The Androinica blog points to some estimates of usage and purchases by Android and iPhone users:

* AdMob says Android users download about 9 apps per month with a ratio of 1 paid to 8 free. On the other hand, iPhone users report 10 apps with 2.6 paid.

* Only 19% Android users buy an app each month; 50% iPhone users buy at least one paid app a month.

* The estimated number of Android users is 3 million compared to 26.4 million iPhone users and 18.6 million iPod Touch users.

They point out that these stats should not be surprising. The iPhone user base is much more diverse, while Android users are still probably mostly early adopters, techie types much less likely to impulse buy.

Still, the numbers are a bit scary. Nearly 45 million people own either an iPhone or an iPod Touch? Holy crap.

I have to admit being impatient for the slew of new Android phones coming out and the talk of growth. I want to see it now, dammit.

Monday, August 24, 2009

ADC II Submission Site Opens...Finally

On the Android Developers Blog, they've announced the opening of the site to submit entries to the Android Developer Challenge II. They said submissions would start "beginning in August". I guess a week is plenty of time, but I'd expected it sooner.

Of course, Relativia is still not finished. I still need to finish some of the quest functionality, as well as add music and sounds. But that will be easily done in the next few days.

I'm also debating on whether or not to enter my new word game, Prolixity. It's very basic, and not too flashy, so I don't think it would have much of a chance to do well, but the exposure of the app through the contest might be a good marketing opportunity. Dunno. I have a week to figure it out.

Tuesday, August 18, 2009


I'm very nearly finished with Relativia. What still strikes me as strange is that the ADC II submission site is still not open, and there's been no word from Google. Ah well.

Anyway, I was getting a bit burned out working on the current game, so I started in a bit on a word game I've been itching to make. It's called Prolixity. Here's a screenie:

It's a very simple, straightforward game with the features I like most in a word game. Each round you're given 10 tiles. The interface allows you to reorder the tiles on your rack by clicking and dragging to swap two tiles. To move tiles up to the play area to form a word, you just tap them with your finger.

Easy tiles are worth 1 point, medium are worth 5, and hard are worth 10. The point value for a given word is the sum of the tiles times the length of the word (e.g. if you make "exempt" it's:

1(e) + 10(x) + 1(e) + 5(m) + 5(p) + 1(t) = 23 * 6 (word length) = 138 pts.

You hit submit to check if the word is in the lexicon. If it is, you earn points, your progress bar progresses, and you get fresh tiles. When the progress bar is full, you level up, and it takes progressively more points to reach the next level. You can redraw a fresh rack of tiles, but that costs 5% of your current point total.

The game will store every word you make for review later (a feature I never see in word games, but would like). I just finished Bookworm Adventures 2, and it was fun, but it really annoys me when I can't rearrange my tiles, and that's not allowed in BWA2. It also only saves your top 10 words and doesn't keep track of how much they were worth.

I like word games that are untimed, and that are Scrabble-like in that you have to manage your tiles by looking ahead to what your rack will be like after you've played.

Technically, the game has been pretty straightforward, with the exception of word checking. I found a linke to a nice word list from an old thread on the PopCap Developer's Forum. The file was about 3.5MB and contained about 350,000 words. I started out by trimming it down to words between 3-10 letters (words formed in Prolixity have to be at least 3 letters). That got me down to 2.4MB. I wrote the code to run the check when a word is submitted, and Android blew up. After browsing around a bit, it turns out that Android's file I/O doesn't like files larger than 1MB. Okay. So I broke it down into about 20 files, roughly by starting letter. Android would now work, but larger files like those for "c" and "s" registered a notable pause. So to optimize even further, I divided the lexicon even further, ultimately into about 40 files. Speed seems reasonably now.

Anyway, it shouldn't take too much more work to have it good to go, but I need to get back to finishing up Relativia. I've flirted with the idea of entering both...that would be ironic, to have a game that took about a week outperform a game that took over 3 months. I may just release Prolixity as a $0.99 app in the next couple of weeks. Not sure yet.

Thursday, August 13, 2009

Totemo: Competition for the ADC II

Android and Me has a vague semi-review of an upcoming release from Hexage, a game called Totemo. They've even got a teaser trailer. A teaser trailer? For a little puzzle game for Android? Okay. I guess that's one way to try to build anticipation. This is the same team that worked on Buka, which I played the demo for. It was kind of fun. Definitely had personality and polish, but wasn't really all that compelling...not enough for me to purchase, anyway.

Anyway, there's this bit in the article:

Look for Totemo in the Market as soon as the Android Developers Challenge (ADC2) submission site goes up.

Which is a strong indicator that the game is an entrant for the challenge. And since there are only two game categories:

* Games: Casual/Puzzle
* Games: Arcade/Action

That means that Totemo will in all likelihood be in the Casual/Puzzle category, which puts it in direct competition with my app. They will likely be tough competition, too. Like I said, their first game had a lot of polish, and has apparently done will in the market.

Booyah Society

Booyah is a new startup game company that just released their first iPhone app, Booyah Society, which is a social network app supposedly based on your real-life achievements.

Here's an interview with the CEO Keith Lee, who used to work at Blizzard.

How do you design the achievements and determine what's going to be appealing to people to try to get?

KL: Well, that's a two-fold thing. One thing we did is actually hire a lot of people in our company that have very diverse interests -- I think, hiring the right people, that understand the pulse of what's going on, is critical.

At the same time, we've been approaching it from a content standpoint: what could actually be the most mainstream achievements that people would want to share with their friends?

So, in this case, being able to go to the Louvre in Paris, that's Art & Culture; or to say that they've been to the Statue of Liberty. Those are the sort of things that we've seen that people would like to at least log and say that they've done.

That sounds kind of cool, and he talks about how the GPS functionality can actually validate achievements, but unfortunately the app is currently not very well rated on iTunes (2 1/2 stars as of this writing), though there does seem to be more recent positive reviews...maybe their updates have improved it.

A lot of the complaints seemed to center around the fact that you don't earn accomplishments by actually doing things, even on the honor system, but by posting to social networking sites like Twitter and Facebook. Honestly, that does sound a little lame. But the people who like the app really do seem to love it.

At least the app is free, so how are they going to monetize?

It's a free app, so what's the monetization route for the company?

KL: The great thing is that we have the digital, as well as we're overlaying the digital with the real world, and so that's really rare and unusual. Because we can almost make our world and all the content that's in there our playground.

And so the great thing is, there's no shortage of potential monetization opportunities. There's the opportunity to work with real-world partners that isn't possible with just, say, an alternate fantasy world. To be able to drive people to go to certain locations -- individually, as well as in a group -- so there's a lot of flash mob theory behind that.

There aren't new ideas, I suppose. This is, of course, very similar to the monetization plan behind Relativia, although from a single player, rather than a networked, multiplayer perspective.

I'm interested to see how well the app does, and if they actually make money. Booyah apparently got $4.5 million in startup money, so they're at least going to be able to pay the bills for a while. I wish them luck.

Friday, August 7, 2009


I'm not sure when the heck the submission site for the Android Developer Challenge II will open up. The official site from Google simply says "Beginning in August" developers will be able to upload their apps, and that the last day they'll be able to upload apps is August 31st. But they haven't said a word in a while. It seems a bit strange.

Anyway, I'm continuing to make good progress on Relativia. The combat game is looking much better now, the AI is done (although not particularly smart), and the logic for initiating combat, winning/losing, and updating experience/inventory based on the outcome is all done. I may post another video shortly showing some of the improvements to the UI.

There are several things I'd like to do, but might not have time. There's still a lot of polish that could be added to the combat game. Obviously there's sound, but animations showing actions/spell casts would be nice. But the core functionality is almost there, and until that's all in place, I can't worry too much about polish.

Right now I'm working on the dungeon logic. I've still got to work on the quest system, markets, and inventory...but I've still got three weeks. Stay tuned!

Monday, August 3, 2009

Revenue for July

As expected, it's down. I earned just under $250 for the month of July. Admob revenue continues to slide. Someone else released a dog whistle app this month. I had been earning about $75/month from my dog whistle app, but it's half that this month, presumably from the competition. PetBook continues to be a giant bomb. I had one sale in July. Ah well. The only steady performer was Golf Solitaire, which accounted for nearly half my earnings in July.

None of this is particularly surprising. I've put all my eggs in one basket for the Android Developer Challenge II. I haven't released a new app since the end of May. It would be nice to know what the summer would have been like if I'd spent all my time churning out games with a development time of 2-3 weeks, interspersed with more small utilities, such as medical calculators. Alas, we'll never know.

We'll see how Relativia does in the competition. If it does well, hopefully I can monetize it. If not, I can always chop it up and try to repackage the combat game as a stand-alone app.

This month is still trying to get Relativia finished, so my projection is a further slide in sales, somewhere between $100-200.

Saturday, August 1, 2009

Nondeterministic Search Results in Google Maps

While testing the map functionality in Google Maps, one interesting finding has been that the searches returned are not deterministic. That is, if I set the default location to my home address, enter specific search terms (e.g. "coffee+shop"), and click Search, the results vary from search to search.

Go ahead, try it yourself. Go to Google Maps, set your default location, search for "coffee+shop", and then after searching once just hit the search button again. I don't know if Google Map's search algorithm is somehow adjusting the search criteria from inquiry to inquiry, maybe under the assumption that the first search didn't yield good results because you're searching a second time?

I don't know what's going on here, but I find it a bit strange. I was a bit worried about the case in my game where the player searches for points of interests, locates one at a particular address, then closes the app and goes to the address. Upon arriving, they open the app back up, repeat the search, and then find that location is no longer being produced. That would lead to very frustrated players, and would suck. I may prompt the player to repeat the search if this happens, because I don't particularly want to mess with persisting locations if I don't really have to.

Anybody got any ideas on why results change from search to search on Google Maps? Google's regular search engine doesn't work this way.