Stepped into the Android game market

I remember asking my friend “How do they create games” when I was 15 or so. I knew that he was playing games in the arcade and on commodore 64 at home. 2-3 years later when I actually got my hands on a 64 I realized the question was really hard and a stupid one actually. After all my friend was just playing games and his insight into all of these was not beyond the sprite feature of c64 which I had merely grasped when he had explained to me.
Nevermind, then I was more into general programming with the c64 discovering machine language and so on so never got the inspiration to code a game. Later when I was studying in the university I wrote a minesweeper clone in Pascal of which the most interesting part for me was the flood fill algorithm I wrote and the introduction into recursion. Later I tried to write a Nibbly’92 clone which I never finished mostly because I wrote it in C with inline assembly optimizing graphics for the famous 320×200 256 colours graphics mode. Having no protected mode back then game crashing often paved the way to restarting the computer taking away all the enthusiasm I’d put into the project. Along with crappy graphics I painted with deluxe paint of course 🙂
Then this huge flappy bird and then 2048 craze got again got me into game programming, this time in java on android. Initially I transformed two programs I wrote before to android apps :
1.  Romaji to Kana which translates japanese written in latin alphabet to Hiragana and Katakana. Base code for the program was a voluntary homework I made at home for the Compiler course. I had used a state machine to convert Romaji to hiragana. Program looks like this, not too fancy

2. Kanji Wall which was previously named Kanji Desktop written when I was studying japanese. It was using Kanji database of Jim Breen creating desktop wallpapers from randomly selected kanjis. Creating the android app was fun as I had to use database converting previously used access database to sqlite. I learned touch controls on android with this app. Here is how it looks like

Then… I finally came across this nice game library LibGdx and started working on my first game to be published. Tried to create a variation of 2048 game which I nearly completed minus the graphics. But then the resulting game was severely lacking in the touch control compartment and I decided to stop that project. I may transform it into a different game later… Quickly switched to the next game which I got the idea from a stackoverflow question post, the user asking the question was trying to paint a continous curved line on screen. Told to myself, what about a game you control by touching the line and the line keeps moving. You keep following the line.
I wrote the game’s barebones in 3-4 days in my spare time. I especially didn’t search if similar games existed or what elements they used in those games. Then a friend told me there is already a game like mine. The news was not surprising at all, thinking the question I saw may have inspired others let alone the fact that the question holder was possibly writing a similar game 🙂 So a release was imminent and I also published the game on google play store the next day fixing a few loose ends.
Here is the resulting game, still to be a lot polished… The good side is it’s still authentic as I especially avoided looking into  similar games eliminating getting affected by their design. Finding a game idea is like finding a good main melody for a music. You get an inspiration first then you freely improvise upon it.
Name of the game is Tipped, available on google play store : https://play.google.com/store/apps/details?id=com.tepetaklak.tipped.android
Here is a screenshot :

Well, it’s over for this blog post… The worst decision about this game I made was using the name Tipped actually. I wasn’t aware cows were tipped too 🙂 And the tipping word is closely associated with basketball too which I only realized after I published the game and can’t find the game on market searching the game with it’s unique name.

Leave a Reply

Your email address will not be published. Required fields are marked *