Friday, December 25, 2015

Merry Christmas / Happy Holidays!

To celebrate Christmas we decided to create a specific Android game with Santa, gift boxes, etc.

Rocket Santa is a fun and entertaining horizontal scroller game where your task is to collect gift boxes and dodge chimneys and passing UFOs.

Increasing game difficulty brings additional challenge to Rocket Santa. Also, humorous graphics and animations will bring extra fun factor to the game!

This Christmas themed game requires fast reactions and good timing to achieve excellent results. Put your skills on test and see how far you can fly with Rocket Santa!

Please see the demo video below:

If you want to get your own copy to your brand new Android device, please use this link:
Rocket Santa at Google Play

Merry Christmas and Happy New Year on behalf on WestSloth Games!


Thursday, December 10, 2015

ASO trial: Closing Words

I started App Store Optimization trial in the beginning of September for an Android game called "Del Gibbon's Mad Maths". Based on Google Analytics data, it seems that this trial was not successful at all (what a surprise!).

Target of this trial was to improve the game visibility at app store and get more installations. Both targets failed miserably: there were just handful of new installations during the last 3 months.

This was the first time I was trying to do any sort of keyword research and optimization, so I guess the result was expected.

But what were the reasons for the failure? I guess it was a combined effect of my inexperience in ASO plus usage of related key word research tools. Also, the quality and attractiveness of published game was not too high. If your app is crap, then it is pretty difficult to market it. At least your supporting material, including thumbnails, screenshots and videos should be high quality.

What I can do better next time? Probably it is a good idea to create an attractive and interesting game first. :) Then I should study ASO more and learn to use the tools properly. Some luck will also help, but I don't count on that.

So, there is no silver bullet for this. Of course, if you happen to be lucky, there is a very small possibility that your app will market itself without any extra effort. :)


Sunday, November 29, 2015

Monty Hall Problem Simulator

Have you ever heard abut Monty Hall Problem? Basically, it is kind of a brain teaser that has been named according to the host of the television game show called "Let's Make a Deal".

The starting point for this matter is the situation where there are three closed doors in front of you. Behind one door is a grand prize (money, car, whatever), and behind other two doors there is something less desirable (nothing, goat, etc.). Anyways, you have to pick one door. After selection is done, one door (with less desirable content) is opened for you. Now you have to decide whether you want to stay in your original selection or switch to other door.

There are conflicting opinions which choice is better, but but now you can try it yourselves using this free Android application: Monty Hall Problem Simulator

This was a nice and relaxing weekend project for me, and I already have some improvement ideas in my mind. I probably shoud do an update at some point...

If you are interested to get more details about the problem itself, please check this Wikipedia article.

Edit 11.12.2015: Check also attached video from Youtube:


Friday, November 20, 2015

Construct2 example: Local Leaderboard using array

Friend of mine sent me a question how to create a local leaderboard for Top10 scores/times/results/whatever in Construct 2.

I want to introduce one simple way to implement leaderboard locally (no server required). Solution can be seen in this screenshot:

Brief description of the method used:

  1. Save new score to variable for further use (in this case inputScore)
  2. Check if new score is greater than the lowest value in current array
    => If it is greater, replace lowest value with new score (inputScore)
  3. Sort array contents to descending order using this simple algorithm:
    => Take two consecutive elements from the array, starting from bottom, and compare them
    => If two consecutive elements are not in correct order, swap them

Basically, this is very simple to do if you understand how to access arrays in C2.

You can try HTML5 version to get an idea how this works. Example is using textbox for collecting score values, and it should work on mobile devices too.

Also, if interested about the "source code, there is a Construct2 .capx available for download.

Have fun!


Friday, November 13, 2015

Back to Unity3D

It's about two years since I last time tried to do something with Unity3D. At those days I did not have much gamedev experience. I just took some web based trainings and created couple of demos, but decided to use bit simpler tools for my first game projects.

So far I have created several Flash games with Stencyl, and couple of Android games using Construct 2. Although these games are pretty simple and silly, I feel my level of gamedev knowledge has improved a lot by doing these games from the beginning to the end.

Now I am trying to get familiar with latest Unity3D tool. I decided to start learning with free Unity 2D tutorial from Udemy. Obviously there are plenty of other trainings available, but this seemed like a good intro for using the tool.

My first impression is that there has been lots of improvements in Unity3D since the version 3 I was using last time. Somehow the tool seems to be easier to use now, or my skills have improved a lot in last two years. :)

I have a lot to learn, but I am hoping to get my first Unity3D game ready before end of this year. Let's see how the work progresses. Stay tuned!


Wednesday, November 11, 2015

Fledgling Gamedev's Guidelines

Here are some general guidelines that should help to get your first gamedev projects proceed, and even completed in a reasonable time.

0. Prepare to sacrifice your time and effort
Ok, you have idea for a game. But are you ready to make the effort to implement it? If you want to get your ideas ready, most likely you got to do it yourself. No one else will do it for you.

1. Start with something small and simple. 
If your first game project is large and complex, you probably won't finish it.

2. Select an engine that fits to your game. 
There is no need to shoot birds with cannon. Try different engines and use the one that fits for your purposes.

3. Create lots of prototypes and small games. 
Select the ones that work for further development. Gather experience on suspended and unfinished projects. 

4. Test the mechanics in early phase. 
Find out if game mechanics is working as soon as you have working prototype. Try to define game's "fun factor" and ask what others think.  

5. Build Network. 
Connect with other gamedevs. Find gamedev communities (there are lots of them). 

6. Use your family and friends for testing. 
Aim to get honest feedback. 

7. Team up.
Team up with others to complement your missing skills (in case you have one :) )

8. Share ideas and experiences. 
How did you solve problems? What was the reason for your latest project to fail? People want to hear about your creative work!

9. Don't fear failures. 
Take risks, be unique. You will learn from your mistakes!

10. Finalize your best concepts! 
Don't leave them in a drawer to collect dust. 

11. Prepare for continuous learning.
Actively improve your skills and learn from your doings. Aim to exit from your comfort zone. 

12. Have fun!
Do what you like. Like what you do. Enjoy being creative. If you don't like gamedev, then you probably are not happy when doing it. 

That's it. I have collected these as being Fledgling Game Developer for last couple of years. Personally, I'm not complied with all of these, but I guess following these might help. :)


Wednesday, October 28, 2015

Sorry, no bonus

Now it is about 7 weeks since I started an ASO trial for one of my apps at Google Play. The target was to improve the visibility of "Del Gibbon's Mad Maths" Android game and get more downloads for it.

I have no previous experience on ASO, so this really was the first try to do something for it. I did some keyword research, used a commercial tool for finding primary keyword(s), optimized app description with the findings, and so on. No idea if any of my methods were correct, but I was trying to follow the guidelines obtained from one ASO course from Udemy's collection.

Unfortunately it seems that there were just few new downloads for the app for last 7 weeks, so I guess I was not able to do ASO properly at this time. Another option would be that my app is so bad (or looks so boring) that no-one wants to install it and give it a try. :)

Anyways, I believe ASO alone is not enough to make your app successful. First of all your app should be interesting enough to get installs. Also, all marketing material including thumbnails, videos, screenshots etc. should be good enough quality to attract users. You may get some installations by advertising and promoting your app. But then the retention will be bad if users notice your app is not interesting at all.

I still have a lot to do making my apps attractive, starting from the visual outlook. But believe me, I am trying!

Below is an in-game footage of my latest app. Check it out and possibly go and install it from Google Play! :)


Wednesday, September 9, 2015

App Store Optimization (ASO) trial

Since there has not been too many downloads for "Del Gibbon's Mad Maths" for Android, I started to investigate if there is something to improve app visibility at Play Store.

To begin with something, I decided to get familiar with App Store Optimization (ASO). That is a process to improve app visibility at app store in a similar way than SEO for webpages. This was just to see if that helps at all in this case. In reality it might be that no one wants to play this game, but at least I have to try. :)

After taking a short ASO training from Udemy course selection, I used a keyword tool (whose name I will not mention here) to find out primary keyword for my app. This keyword is now used as my app title at Google Play. Also, I tried to tune app description using the secondary keywords to maximize visibility. I am not too sure how I succeeded, but I guess the result can be seen during next weeks (or months). Who knows.

My plan is to report the result of this ASO trial in this blog after couple of weeks. So then we can see if there is any improvement in my app visibility.

Oh, I almost forgot that I have to do some updates for the game. At least graphics should be modified to correspond the current app name at Goole Play Store...


Sunday, August 23, 2015

Del Gibbon's Mad Maths

Greetings after a long time!

This blog has been quiet for a long time and there has been only few updates during this year. I have been extremely busy in my day job, so I have not been able to use enough time for my game development activities.

Anyways, during my summer vacation I started two totally new mobile game projects. The first one was released to Google Play couple of days ago, and it is called "Del Gibbon's Mad Maths".

This game is aimed to test and develop player's mental calculation skills. Concept is very simple: the answer is shown on top of the screen, and player has to select two or more numbers that totals are same than the answer shown on screen. There is a time limit for each assignment. Game gets faster and faster after every round, and assignments will get more difficult also.

Game was developed using Construct 2 tool using some plugins from Cranberrygame. Android version was created from HTLM5 export using Intel XDK (Crosswalk) tool.

I don't know what else to tell about this game. Leaderboard is also included, so just try it yourself and form your own opinion! :)


Sunday, April 19, 2015

SortOut! Android game

Perhaps no one has noticed, but I have had couple of months break in writing this blog. I've been extremely busy with my day job, so my leisure time projects have got less attention.

Anyways, there has been some progress in my game development projects. Our second mobile game (SortOut!) was published at Google Play Store for some weeks ago. Game itself is very simple and easy to play: you just have to use your finger to swipe boxes to the corners with matching colors. Sounds easy, but I promise this no-brainer game is more challenging you first would imagine. :)

We have been looking for game concepts that would suit well to the mobile devices. SortOut! is one of them, and we have couple of others under development. Let's see what comes out next...

Please check video below to get an idea about the SortOut! gameplay and visual look. And of course we would appreciate if you spend couple of minutes your valuable time to install this application to your device. Just give it a try! :)


Monday, February 2, 2015

Crosswalk experiences

Our first Android game "Swing Rocket Dash" was developed using Construct 2 and the Android native build was done with Crosswalk.

As promised in the previous article, I listed some experiences using Crosswalk to build Android application from Construct 2 HTML5 export. There is a great tutorial for using Crosswalk flow at Scirra's webpage. However, there are few things I'd like to add:
  1. On Build Settings (under Cordova 3.x settings) you have to define App ID field. That is used as package name at Google Play, and it is using reverse domain name notation, e.g. com.myhost.myappname. This name is unique for each app, and for "Swing Rocket Dash" we were using com.gamaan.swingrockets ( is our own domain). 
  2. It is important to increment App Version Code field every time you create new version. Google Play wont't accept you new APK if it has same version number than any previously loaded package of your game
  3. You should also check the Plugins and Permissions section and activate permissions you really are going to use in your app. "Swing Rocket Dash" is currently using Device (should be always selected) and Admob plugin (for showing ads)
  4. After successful build you have an opportunity to install your application to your Android device without uploading it to Google Play first: Just open the "build successful" email from html5tools and click the correct architecture (x86 or arm) link to download the APK. This is pretty nice way to try if everything is working as expected. I found this very useful especially when trying to get Google Play Game Services working with my game (it required several iterations).
In general Construct2 + Crosswalk flow is working pretty well as far as you don't try to add anything special like Google Play Services plugin to your app. I struggled with this quite long, and finally the solution was to use Phonegapgame plugin for Game Services in Construct 2. After that there was no need to enable that in XDK. 


Monday, January 19, 2015

Android game published!

I am happy to tell that our first mobile game called "Swing Rocket Dash" was published at Google Play for ten days ago. Since we had no previous experience on creating Android applications, there was all kinds of a problems to be solved along the way. But anyways we got it somehow working.

Game was developed using Construct 2, exported as HTML5, and finally built to Android native app using Crosswalk (Intel XDK). I will later provide separate article on this to clarify technical details and issues we met during the process. 
Game was also published as HTML5 at Newgrounds. Basically, is was quite easy to make the release: HTML5 export was zipped so that index.html was on top level hierarchy, and zip package was uploaded to Newgrounds. I tried to add Newgrounds HTML5 API to this game, but for some reason it did not work as expected. So there are no medals in the game at the moment. Sorry! :)

BTW, Docteur Pi did a video review of HTML5 version and it can be found from Youtube. It is worth watching! :)

Currently, I am trying to create Windows Phone 8.0 version of Swing Rocket Dash. Basically that is already up and running, but I am still trying to get AdMob ads working there also. So far I have tried to make the build using Visual Studio and Crosswalk Legacy Hybrid Platforms, but still no success. Let's see if I can get all the issues solved in close future.