Free Games Bandit – FREE amazing new app discovery service for users and developers

July 16, 2014

I’m quite excited to announce a new free mobile games and apps discovery service called Free Games Bandit. Free Games Bandit was invented to serve two purposes:

App discovery from the users point of view

First and foremost, as an avid mobile app user and gamer I have a MASSIVE gripe with app stores such as Google Play and Apple’s App Store. When I visit Google Play and the iOS App Store I am ALWAYS presented with apps and games that I have seen before. Not only that these apps and games rarely change. I can log in every day for a week and see the same old stuff there. I am forced to drill down categories for hours and hours just to find an app or game that’s new or different. I feel very strongly that app discovery at the moment on the major app stores is stagnant and a mind numbing experience.

Free Games Bandit solves this discovery problem by presenting a collection of random games and apps to you the user. It also presents them in an exciting interactive format that feels very game like making app discovery FUN.

App discovery from the game and app developers point of view

So as a mobile game and app developer you created your latest marvel app or game and put it on the app store, did a little PR, posted to various gaming forums, told your friends, announced on Facebook / Twitter etc, maybe a little paid advertising, but where are the sales and downloads?

80% of most new apps and games for Android and iPhone / iPad get buried at the bottom of the app store under the immense weight of the app stores themselves. what are your chances of being discovered? That’s right, virtually 0, which is evident with how many apps are on Google Play / Apple App Store with fewer than 10 downloads. What would your downloads look like if you as a developer had the same chance of getting your app discovered as all other developers? Free Games bandit does not discriminate, all app developers that add an app have the same chance of being discovered

So if you are an app user / gamer looking for a new, unique and interesting way of finding new apps and games or a mobile developer looking for a fair and free way of promoting your apps then pop over to Free Games Bandit. Note that there is no sign up required to use or add apps.

Getting your app featured on Google Play – What to do and not to do

July 10, 2014

Looking at my recent app sales / downloads and feeling quite disappointed I sat wondering why none of my apps have yet been featured on Google Play. I searched around and around and finally found something that could explain why. A recent-ish (2012 to be exact) talk by Dan Galpin and Ian Lewis at the Google I/O conference offered up some dos and donts when it comes to “possibly” being featured on Google Play. The video of the Google I/O event can be watched here.

A basic summary is shown below:

  1. Make sure app works on latest OS release (hide soft buttons too)
  2. Do not enable copy protection in Google Play developer console (this has already been removed)
  3. Use back button to pop up pause menu or return to previous screen
  4. Respect Android life cycle. One tip, when game returns from paused state, pop up a game paused menu and never lose game progress
  5. Don’t use certain permissions if your app doesn’t really use them such as read / write SMS, change wifi state etc..
  6. Conserve system resources (memory, battery etc..)
  7. Follow Google’s rules such as a) dont use other 3rd party IAP API’s b) Do not upload apps that download others apps c) Do not bribe users for 5 star reviews
  8. IAP must be done correctly, including taking into account situation where purchase was not delivered because the app was paused or shut down
  9. Make sure game works and runs well across wide variety of different devices
  10. Get app store listing correct and make sure that the featured images are ok at a low resolution, such as text can be read. Don’t include keyword spamming or phrases such as “if you like xxxx then” or use over salesy type language

There are more tips, so its well worth watching the video.

Good luck with getting your app or game featured on Google Play.

HTML 5 Gotchas

July 7, 2014

On this page I will place all of the gotchas that I come across during my HTML 5 developments.

IndexSizeError: Index or size is negative or greater than the allowed amount

I got this error Firefox and a similar error in Internet Explorer whilst drawing an image to the HTML 5 canvas using drawImage(). The problem turned out to be trying to draw a portion of an image that was outside its bounds. I was drawing what I thought was an 800×600 image, which was actually 798×600 so the source rectangular area that I was drawing was off the edge of the actual image. Doh!

Marmalade SDK 7.3.1 is out now, Fortumo, FBX exporter and other cool additions

July 4, 2014

Yep that’s right, Marmalade 7.3.1 is smoking hot and fresh off the press. In case you have been developing games in a cave somewhere with no internet connection the Marmalade SDK is an awesome piece of technology that enables you to create games that run across many different mobile and desktop platforms with “one single code base”. I cannot stress how wonderful that is in mere words. You can develop products in C++, Objective-C, Lua or HTML / JavaScript, test under simulation on Mac / Windows desktop, deploy to device / store and whole raft of other cool stuff.

Anyways, sales pitch aside, lets take a look at some of the recent changes:

  • Fortumo now integrated with IwBilling and Quick Billing.
  • New FBX to Marmalade converter tool, making it easy to get your 3D assets from tools such as Maya LT, 3ds Max and others that support FBX format into Marmalade.
  • ideviceinstaller now available on Windows (goodbye iTunes!).
  • IwGx now supports the ETC2 and EAC compressed texture formats.
  • IwGx PowerVR texture compression efficiency improved.
  • Initial support for PowerVR Tools (PVRTrace and PVRTune) on Windows Desktop.

I’m majorly excited about three of the new features in particular. The first is the support for Fortumo integration into IwBilling and QBilling. If you don’t know what they are then they are a single unified solution that enables you to “very easily” add in-app purchasing to your app across multiple different app stores. The addition of Fortumo means that in-app purchases can now be accepted by a vast number of different app stores (Android in particular).

Second feature is not having to install apps to an iOS device using the infinitely despised iTunes client on PC. I have never come across such a bug ridden piece of software in all my years. I will be happy to be deploying directly to device from now on!

Lastly, a new FBX converter that converts Maya LT exported FBX files into a lovely Marmalade format, yummy yummy.

By the way, did I mention that the Marmalade SDK is now available on a FREE license!

Click here to download the latest version of the Marmalade SDK

HTML5 cheat sheet

July 3, 2014

This page is basically a dumping ground for all the useful bits of info that relates to HTML5 development.

Useful HTML5 semantic elements

    <article> – Defines an article in the document
    <aside> – Defines content aside from the other page content
    <footer> – Defines the footer for a section in the document
    <header> – Defines the header for a section in the document
    <nav> – Contains page navigation links
    <section> – Defines a section in a document

HTML 5 Journey Part 1 – What is HTML 5 tutorial

June 30, 2014

I’ve always liked web development (from a gaming perspective), but not to the same extent as I have good old solid native development with C++. The main reason being “JavaScript”. To be honest, I did JavaScript years and years ago and it terrified me, I couldn’t get used to not having pointers and variables that have a set type amongst other things. The main problem however for me has always been speed, if I want to make a game I want to provide a good interactive experience without loads of lag, slow frame rates and dodgy access to things like audio playback and input. So, for years I avoided client side JavaScript and the DOM and went with Java Applets, which seemed great, nice and quick, good frame rates, can render 2D and 3D, access to I/O etc.., but if I remember correctly there were browser security issues, oh and it crashed (or refused to load) across different browser versions. After a while mucking around with applets I went to Microsoft Silverlight, followed it for a few years, made some nice things with it but then Microsoft dropped support for it in favour of HTML 5! (How can I ever forgive you Microsoft!) Now everyone and their grand mothers seem to be bending over backwards to support HTML5, so I feel like its time to finally take a good look at this newish technology and see what I can do with it.

This blog series is going to cover my noobish attempts to learn how to use HTML5 / JavaSctipt with possibly a little PHP back-end junk thrown in. At the end o the blog series I will probably revisit the series and tidy up so I can mislead as few developers as possible!

Right waffle over, on with something useful.

What is HTML5

Well, I’ve purchased various HTML5 books and started to read them, missing my C++ and the Marmalade SDK already. I’ve come to the conclusion that HTML5 is a bunch of things:

  • Well it uses HTML5 mark-up to begin with, but some new cool tags have been added to provide access to stuff like a drawing canvas and video playback
  • Cascading style sheets (CSS3), this is a language that you use to add style to the various HTML page elements
  • JavaScript, this is the language used to manipulate the HTML of the page and what not

How do I create an HTML 5 page?

Simple, create a text file using any old text editor (I use Notepad++ as it has syntax highlighting for HTML, CSS and JavaScript) and called it something,html. You can open this file in a browser to view the page which as Mrs Brown says is nice.

Here’s an example HTML5 page that does absolutely nothing useful:

<!DOCTYPE html>
     <meta charset="utf-8">
     <title>HTML5 for absolute noobs (I appear in browser bar)</title>
     <h1>HTML5 for absolute noobs header</h1>
     HTML5 for absolute noobs paragraph

What does all this junk mean? Lets take a look at it in sections.
Line 1 – This tells the browser that this is an HTML 5 document
Line 2 – The html tag tells the browser that the stuff in this section contains HTML
Line 3 – The head tag contains things like the page title, which scripts and style sheets to include
Line 4 – The meta tag describes metadata such as the character set that the document uses
Line 5 – The title tag is the title of the page, this is usually displayed in the browser title bar
Line 6 – Closes the head tag
Line 7 – The body tag contains the main body of the document, basically all of the text, images and so on
Line 8 – The h1 tag designates whatever is inside it as a level 1 header and will be styled as such, usually large and bold unless redefined with a style
Line 9 – The p tag begins a new paragraph on the page
Line 10 – Some content to display in the paragraph
Line 11 – Ends the paragraph
Line 12 – Ends the main body
Line 13 – Ends the html document

How do I add some style to my web page?

Well to begin with we will add some style to the previous example to make it look a little colourful. We will use what’s called inline styling. This is when you are too bone idle to create a style sheet and link it into your document. Lets take a look at an impossibly useless example:

<!DOCTYPE html>
     <meta charset="utf-8">
     <title>HTML5 for absolute noobs (I appear in browser bar)</title>
     <h1 style="color:green;">HTML5 for absolute noobs header</h1>
     <p style="color:blue;">
     HTML5 for absolute noobs paragraph

if you are as observant as I then you may notice that two lines in the code have changed:
Line 8 – We have added an attribute called style then stuck some stuff into quotes. We basically tell the browser to change the colour of the text in the h1 tag to green
Line 9 – We have also added the style attribute here, but changed the text colour to blue instead

How do I style stuff using CSS instead of inline styles?

Most web developers prefer to use a style sheet to style elements of the web page, which I am guessing when my web page becomes bulky and very scarey will make it much easier for me to change the look of my web page without having to go through and change every single style that I set. A style sheet is basically a text file with the extension .css that you include in your html document. You include a style sheet like this:

     <meta charset="utf-8">
     <title>HTML5 for absolute noobs (I appear in browser bar)</title>
     <link rel="stylesheet" type="text/css" href="styles.css">

Inside our header tag we have added a link to a style sheet called styles.css. When the page is loaded this style sheet will be loaded and all styles within it will be applied to elements of the page. If the style sheet does not contain styles for elements that are on the page then they will get the good old default ugly style. Lets take a look at an example style sheet:

h1 {
    color: green;
p {
    color: blue;

In the above style sheet we list the h1 tag and then place a bunch of attributes that we want to redefine along with their values separated by the colon character inside braces. The only problem with this is that it will change the colour of all h1 and p tag content that’s on the page, which is great if that’s what you want, but not so good if it isn’t.

To get around this you can name your elements and then simply define a style for the named element. Lets look at an example:

     <h1 id="header1">HTML5 for absolute noobs header</h1>
     <h1>I refuse to have style!</h1>
#header1 {
    color: blue;

We have named the first h1 tag header1 using the id attribute. We can refer to this named element in the css file by placing a hash character in front of the name.

There’s a ton of other stuff that you can do with CSS from what I understand, but I’m not clever enough to go into that just yet, maybe in a later article.

How do I get some JavaScript code into my web page?

There are two ways, you can use inline JavaScript, this is code that you write directly into the html document, which can get rather messy. Theres also the much cleaner and user friendly way of including a JavaScript file into the document rather like we did with the style sheet. Lets take a look at inline JavaScript first. Run the following html:

<!DOCTYPE html>
     <meta charset="utf-8">
     <title>HTML5 for absolute noobs (I appear in browser bar)</title>
     <h1 id="header1">HTML5 for absolute noobs header</h1>
     HTML5 for absolute noobs paragraph
          document.getElementById("header1").style.color = "blue";

At lines 12-14 we have inserted a script tag containing a single line of script. The script itself looks for an element called header1 then changes the color attribute of its style to blue.

Now lets take a look at an example where we use common sense and decide to put our code into a separate script file. Create the following two files (test.html and code.js) then open the html file in a browser:

<!DOCTYPE html>
     <meta charset="utf-8">
     <title>HTML5 for absolute noobs (I appear in browser bar)</title>
     <h1 id="header1">HTML5 for absolute noobs header</h1>
     HTML5 for absolute noobs paragraph
     <script type="text/javascript" src="code.js"></script>
document.getElementById("header1").style.color = "blue";
document.write("Hello World");

At line 12 of the html file we have still got a script tag, but instead of placing our script inside the script tag, we have moved it out into its own file and included the script file into the html document.

Well, I’ve had enough for one evening, my feet ache. I stand at my desk instead of sitting because I’m into self punishment. I hope to cover something a little more interesting next time, maybe take a look at the DOM.

Oh, do I care about typos and bad spelling / grammar? No, if I did then I would have become an English teacher and not a programmer!

Goji Editor the game IDE update

June 25, 2014

Just a quick heads up on the direction of the Goji Editor. With the news of a free Marmalade SDK license becoming available, I am going to rework Goji to integrate much more tightly with the Marmalade SDK. This will include features such as:

  • Integration into the Marmalade build and deployment system, enabling deployment to all Marmalade supported platforms
  • Test / debug using the more capable Marmalade simulator
  • Development using C++ as well as Lua and XOML
  • Deployment to device from the editor
  • In depth publishing options which enable you to set up all of the different Marmalade deployment options more easily
  • Marmalade code snippets / help / tutorials to aid development
  • Code samples / tutorials section
  • EDK builder to assist in the creation of Marmalade extensions

Other game development systems such as Corona and Gideros will still be supported for now. If you strongly want to keep support for Corona / Gideros then let me know

ShinAnimals the Android, iPhone, iPad and iPod game lives!

June 19, 2014

And my latest creation is now live, ShinAnimals a fun Yorkshire themed arcade puzzle game made using AppEasy> (Powered under the hood by the Marmalade SDK) and the Goji Editor. You can download from Google Play at:


Premium -

You can also download for iPHone, iPad and iPod from the Apple App Store at:

Premium -

Word of warning, this game is highly addictive and will put you on the edge of your seat!

Animals ShinAnimals, no longer content with grazing and lounging around all day the animals at the Yorkshire farm are bored to tears and have demanded that the farmer provide them some fun. The farmer has decided to arrange some mild entertainment by constructing 40 puzzles for the animals to crack. Can you help the animals crack all 40 puzzles?

The aim of the game is to crack each puzzle by stacking piles of animals ever higher, the higher the stack the more points the animals score. To beat a puzzle the farm animals must beat the target score set by the farmer. Puzzles start out simple, but soon become difficult including swinging crates, springy bridges, unstable constructions, traps, footballs and more.

Features include:

  • Normal and hard (Yorkshire) game modes
  • 40 unique levels
  • Hi-score tables
  • Pickups, traps and other dangers
  • Cheat system to help pass difficult levels
  • FREE to play
  • Can be enjoyed by kids and adults alike
  • Yorkshire sound effects!

Made in Yorkshire by Yorkshire people, absolutely no Yorkshire animals were harmed during its making.

Marmalade SDK now offering FREE License!

June 4, 2014

Yes you did read that right! The Marmalade SDK can be freely downloaded and used in all its flavours including:

  • C++ – Create native games and apps in blazing pedal to the metal C++
  • Juice – Easily port existing Objective-C based iOS games and apps to Android
  • Quick – Create games and apps rapidly using Lua
  • Web – Combine the power of C++ and HTML5

Sounds too good to be true? No, not at all. There are some restrictions such as:

  • Limited extensions, but most important ones included
  • Shows advert on boot
  • Shows a splash screen on boot

But hey, you get support for the following platforms out of the box:

  • iOS
  • Android
  • Windows Phone
  • Windows Store
  • BlackBerry 10
  • Tizen

Why am I so excited about the Marmalade SDK providing a free license? As most of you are aware I’ve been developing the open source AppEasy Core SDK which is a powerful game and app engine that makes creating games and apps super simple. This move by Marmalade will help to propagate its usage within the developer community. Not only that it opens the door for other developers to create extensions, middleware and tooling based on or around Marmalade.

Exciting times ahead is all I can say! Well done Marmalade.

What next? Well go and download your free copy of the Marmalade SDK right now.

iOS developers, Marmalade Juice is here!

March 19, 2014

The clever bunnies over at Marmalade Technologies have today released an awesome new piece of open source technology called Marmalade Juice that I have no doubt many iOS developers will be thrilled to hear about. Catchy name aside, what is this Marmalade Juice technology all about and what can it do for iOS developers? Lets take a quick look at what is says on the tin.

“Marmalade Juice is a new and innovative technology which gives developers the ability to recompile their iOS projects natively for Android. And, because there is no need for laborious re-writing, you can focus on making your game the best it can be.”

So what does that mean? In essence it means that you can take your existing Objective-C XCode code base, compile and run it on the Android platform. As Marmalade Juice is an evolving technology there are a few areas that Juice does not currently fully support, but using the already existing Marmalade extensions you can still utilise them with a little code rework. Not much to ask considering that its infinitely easier than learning the Java / Android development ecosystem, oh and don’t get me started on Eclipse!

So in essence Marmalade Juice equates to easy porting from iOS to Android (that’s over 1 billion extra devices to target your games at!) for iOS developers around the world and an extra revenue stream, which is always nice for budding indie developers and the big boys alike.

All you need to get going is Marmalade Juice, XCode and the Android SDK.

Oh, even more great news. Juice will now be included in all Marmalade licenses and for a limited amount of time the yearly community license is free, so you get to play with Juice for free!

Interested? then mosey on over to the Marmalade Juice web site and grab a license whilst its free.

Powered by Wordpress and MySQL. Theme by Shlomi Noach,