Sunday, September 14, 2014

ZombieBird goes Android Wear

So I got an LG G Watch earlier this week and yesterday I decided to try to get my game ZombieBird - The Flapping Dead running on it. It turned out to be easier than I expected. After removing the the ads and facebook support it pretty much ran out-of-the-box. After that all I needed to do was some adjusting for the 1:1 screen dimensions and remove some unneeded buttons.

Today I packaged the Android Wear version with the phone version of the app so if it is installed on a phone that is paired with a Wear device then the Wear device will get the Wear version of the app automatically. I'm not sure how I feel about that any Android app you install on your phone can contain Wear apps that are installed on your Wear device (no questions asked) automatically.

Friday, July 25, 2014

Never settle...

Finally got an invite for the 64Gb version of the Oneplus One.

Now I'm just waiting for the new toy to arrive.

Thursday, April 3, 2014

Thou shalt have no other mobile platforms before me

Apple isn't very welcoming to Android developers that tries to go cross-platform.

It seems they believe that my company logo (that I've used for a couple of years now) isn't healthy for their devoted users.

So I had to replace my logo with something less Android-friendly (for the iOS version) and upload a new binary for ZombieBird 1.1.

I suppose I could point out to them that "mention the name of any other mobile platform" and having a image that is similar to the Android icon isn't really the the same thing. Probably not worth the trouble.

I just find this a bit humorous and silly so I figured that at least I could post it here to warn other Android developers that plan to go cross-platform in the future.

Friday, March 14, 2014

ZombieBird got some new friends

Meet the new friends of ZombieBird in version 0.8 of ZombieBird. Reach a highscore of 25 to unlock FrankenBird and a highscore of 50 to unlock DevilBird.

Note that the iPhone/iPad version is not up to date with the web and the Android version due to the extremely long review times for iOS apps.

Saturday, March 8, 2014

ZombieBird goes iOS

Apple finally approved my ZombieBird app and it can now be player on iPhone/iPad devices. My first iOS app ever. Yay!

Get it here:

Links to all versions (Android, iOS, ChromeOS) can be found here:

Friday, March 7, 2014

ZombieBird goes social

ZombieBird highscores can now be shared using the build in sharing function in Android with compatible apps like Instagram, Google+, Twitter and many more.

ZombieBird can be downloaded for free from Google Play Store or played in an HTML5 compatible web browser on Note that sharing with the Facebook app is currently not working because it cannot handle a "content://" URI and I want to avoid requesting permission to read and write from external storage just to support their broken implementation.

Btw, my best score so far is 47.

Friday, February 28, 2014

ZombieBird goes HTML5

A really nice thing about libGDX is that it is cross-plattform and I managed to get the HTML5 version of ZombieBird running today.

Works fine in recent versions of Google Chrome and Mozilla Firefox but don't even bother trying Internet Explorer. Not sure about other browsers.

Play it here:

Also the graphics has been improved since the last post.

Sunday, February 23, 2014

The flying dead

So I was looking for a crossplatform library to use for game developing and I found libGDX which looked promising. While looking for examples I found a great tutorial by kilobolt. I've been following the tutorial but doing some tweaks of my own and it has been great fun and educating. I strongly recommend this tutorial for anyone who wants to get started with libGDX.

Today I decided to publish what I've done so far on Google Play Store.

Please realize that this is not the finished product and a lot can happen before it reaches version 1.0.

I also do not intend to use my newly acquired knowledge to make Flappy Bird clones, it's just a way to learn libGDX and make something fun at the same time.

I made it a bit harder than the example in the tutorial and now my kids complains that it's even harder than Flappy Bird so I might tweak the gameplay a bit in the next version.

Get it from Google Play Store

Wednesday, January 1, 2014

EKH Tutorial 7 - Enabling Voice Input

With version 6.4 of External Keyboard Helper a new keycode has been added that is called Voice Input. It can be mapped to a key and then that key can be used to start voice input. Exactly how this works out may vary between different devices and Android versions but here I will describe how it works on my Nexus 5 that runs Android 4.4.2.

First of all you need to assign a key to trigger the voice input. Since version 6.5 of the app you find the configuration for this in Advanced Settings > Other settings. In this example I've mapped it to Scancode 57 which is Space and I've checked the checkbox that says it also requires Alt to be held down.

As an alternative way to configure this there is also a keycode that can be used to trigger voice input (this is the only way to map voice input in if you are still on version 6.4 of the app). The example below maps scancode 88 to the keycode that triggers voice input. Scancode 88 is usually F12.

Voice Input can be accessed in two ways. The first way is with Google voice typing enabled.

In this mode you must disable the Physical keyboard switch or voice input will not start.

To be extra clear, you need to turn the above switch to OFF.

In this mode pushing our mapped button (Alt+Space in my case) will automatically switch to the Google voice typing input method and it will looks something like this.


As you speak the text will be continuously added to the input field.

The other mode is when "Google voice input" is disabled.

In this mode it does not matter if Physical keyboard is ON or OFF and when we press our mapped key it will start voice input in a less integrated way.

Once you spoken it will present you with a list of interpretations.

Once you make your choice it will pass that line of text into the active input field.

This is the two ways I got it working on my Nexus 5, it may look and work different on your device so you may need to experiment a bit to get it working.

On one device (ZTE Blade III) that was running an unofficial CyanogenMod version I needed to install this to get it working:

So basically this tutorial doesn't necessarily show the exact solution for your setup but hopefully it will provide enough help to get you going.