Wednesday, October 9, 2013

Monkey - a programming language for Games Development on multiple platform



Cool. As the title suggests, "Android Gamify", now even the name of "monkey" has been taken for the language of Games development. And it claims to target at Android, iOS, Desktop, HTML5 and XNA.

The download page of the "Monkey" presents a Demo Version (free) and a Full Version ($99 USD). Here, i would only be able to show the Demo Version. In short, the interface is pretty clean and intuitive.



The IDE of Monkey is quite fast to load. For beginners, there are a number of monkey samples available to start with. I am not that familiar with the language, but it looks like Actionscript (from the way it declares the data type).

The red rocket button is the one to build and run your project. Fast and clean.

However, the important question to ask here is that: How to build an Android apk file from this Monkey demo version? To our dismay, the demo version doesn't have the feature. I would personally be better impressed if it is included, so that I could write a little more about the Android Games Development using Monkey, precisely, Monkey programming language.

Beware of how vulnerable your Android Games (.apk files) are!

Ok. This is not a threat, nor a nonsense.



Here, I would like to emphasize on the vulnerability of the Android Games (.apk files), in order to raise the awareness of all the games developers.

Plagiarism takes place everywhere, from websites contents to the games elements, across any industry and brand. But when it comes to the Android Games, it is really sad to reveal that recently there has been cases such as the hard work pieces "Chase Burger" from Elventales Studio had been copied and published on iOS and Android Play Store under the name of Hungry Chase. When i said "copied", i mean it isn't just about the game logo or the genre, but about the duplication of the ENTIRE GAME, from images, buttons location to the character appearance. By changing only "Game Title" and editing a little bit on the color, those jerks simply claim the games as theirs.

What is even more discouraging is that, it happens not only on the famous games (which are from the well known studios). Even the indie games are not spared of. And that definitely poses a question: How on earth are those scumbags be able to reverse engineer the Android games, such that the entire games could be manipulated and re-published so easily? Why the apk files are so vulnerable?

You may argue that this scenario is inevitable, and it actually pesters the iOS game developers as well. But the thing is, as the developers who hope to earn some income for a living through the Android Games development, we are really disturbed by the hacking and stealing prone games ecosystem. And in fact, with the Google search engine (alright, is stackoverflow, etc), you can 'conveniently' get the ideas of how to intelligently reverse engineer de-compiling any Android apk file. I know that they are not to blame. But I wish the play store (such as Google Play Store) would be more vigilant and efficient when handling the apk theft.

Wish to know some demo on how an Android apk file is stolen? I won't show the whole ugly picture, but here's an example:
a) Randomly grab and download an apk file from here.
b) Rename the apk file with a ".zip" at the back
c) Extract / unzip the file

Here you go, i only partially demo how to steal the assets (pictures) of an Android apk file. It could be performed so so easily.

So what to do to enhance the security? No idea. But as observant games developers, the only thing that we can do, is to always keep an eye on the play store, filing reports whenever necessary and pray that those games thieves would be busted without affecting the reputation of your games brand.




Sunday, September 29, 2013

How to create Android Games (.apk file) with HTML5?

I have just updated my list of how to create Android Games, with the newly added HTML5! Yes, i really mean using HTML5 to create Android Games in the format of .apk file which can be uploaded to the Google play store or other app stores. For those who are HTML or HTML5 savvy, I know you have yearned for this possibility. Why learning other languages (such as Java, Lua, Actionscript, etc) while you are already an expert in HTML5? Here, I would have some demo in this post.

Creating Android Games with HTML5 has been made possible and intuitive with the Intel XDK. FYI, the Intel XDK came from the acquisition of AppMobi. It can be downloaded for FREE. In fact, the Intel XDK can be used to create games which are compatible for iOS too.



The XDK is in the format of .jnlp. By following the instructions, you are able to setup the project folder containing the necessary javascript files after registering a new account on the fly. By default, it will use the localhost and port number 58888 as your emulator (better in Chrome browser).


Now, inside the emulator, click "START NEW" to create a new project:


Select "Create a new game app" and Click "Next". Then, to have a reference point, you can choose "Start with an Ejecta*-based Jump and Run sample" and click "Next". Rejoiced, you will reach the screen below:
Basically, you can have a taste on how good / smooth the game is. However, the demo isn't ended yet. Now click the 'Build for app store' (Build only) icon at the toolbar.

 You will reach the appcenter of Intel from where you can build your HTML5 games into an apk file.


Choose "Android Build Test" and click "Build App Now"

Congratulation! You have created an Android Game apk file with Intel XDK successfully! Easy right? Let's start creating Android Games with HTML5!

Wednesday, September 25, 2013

How to handle Back button event in Starling Framework?




When creating mobile games featuring intensive user interactions in Android, it is normal to notice that the players have a higher tendency to touch the back button (or the menu button) which is outside the region of your designed GUI. By default, the back button on the Android devices would immediately minimize your games' UI, without any warning. This is especially unfavorable when the player who intends to 'go back' to the previous game map, finally ends up having his home page popped up, and the game play experience is ruined.

Hence, it is a good practice to handle Back button event properly in Starling Framework. Below shows the necessary code snippets:

1. Import flash UI keyboard and keyboardEvent:
import flash.ui.Keyboard;
import flash.events.KeyboardEvent;
import starling.core.Starling;

2. Add an event listener in your main starling class:
Starling.current.nativeStage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);

3. Handle the Back button event with e.preventDefault function:
private function keyPressed(e:KeyboardEvent):void
{   
     if(e.keyCode == Keyboard.BACK)
     {
          e.preventDefault();
          e.stopImmediatePropagation();


          trace("Back button is pressed");
     }           
}

       

Tuesday, September 24, 2013

Where to download the free Ratebox Adobe ANE for Android?




When you reach this post, let me guess, you must have been spending the last few hours hunting for something like free "Rate My App" Adobe ANE to be used in the Android (with Adobe AIR actionscript).

At the same time, you have pretended not noticing the RateBox Mobile Extension ANE due to the obvious price tag $19.99. Furthermore, you may have temporarily overlooked the Rate App Air Native Extension as you wish you might get one with a much lower price or even a FREE Adobe ANE for the feature of "Rate My App" or "Rate this App". And finally, you could have been strongly determined that getting one that works in Android shouldn't charge any as there is one open source iRate that performs greatly in iOS.

HOWEVER, be ready to brace yourself... There ISN'T any free "Rate this App" Adobe ANE for
Android, at least at the time of writing.

Upset? You are not alone. As mentioned in my previous post, developing Android games with the Adobe AIR is sometimes frustrating.

Solution? I will update the post as soon as I found out the treasure. In the meantime, you are encouraged to create the feature of "Rate this app" by yourselves, since it isn't a very tough one.