Saturday, December 16, 2017

Prototype makeover

I purchased some large art bundles from the Unity asset store. Backgrounds, icons, and special effects always have been my weaknesses, so just buying royalty free art is a sensible investment. Having the art early on can influence design in unexpected and beneficial ways too.

I will continue to paint and animate my own characters. I use a tool called Spine which allows me to programmatically interchange pieces like weapons and gear. I chose to use animals as the fantasy heroes because it fits better in the premise of the game. Plus, animals are gender-neutral, and it rids having to be politically correct in having a specific number of different races, especially for a game that will be localized worldwide.

Friday, November 24, 2017

Match 3 RPG

I am likely going to make a match-3 RPG. Character abilities can be triggered by placing a pattern on the grid, that must match the locations of previously destroyed cells (illustrated by orange cells in the screenshot below). It will be made in Unity using C# and the Spine animation tool. The same tech was used to make my latest finished and soon to be released game Pizza Bot.


This next match-3 project likely will be fantasy themed because I already have a whole bunch of character art. Painting backgrounds and icons is my weakness, but I can buy some through the Unity asset store. I spotted some great special effect packages too.

Match 3 always will be popular, and is already "fun" from the beginning. The design challenge is going to be crafting all the interesting features that extend out the game, while offering sufficient strategic elements to prevent the experience from getting dull and monotonous.

I believe as long as there is gradual and continuous progression through occasional unlocking of interesting features, then the game will surely be a success. A game like Zombie Guard is not necessarily fun because of say, the weapons, but rather, the unlocking and upgrading of the weapons. This has been a general design focus in all my games. Typically I strive to create the core of the game, and then insert a lot of content with data driven systems for weapons, skills, items, and AI character types.

Since this will be a turn-based match-3 game, I can write some simple AI to play-test the game for me. I have a spare phone to have AI play stable builds 24/7.

From the very beginning I will be setting the game up for easy localization into other languages. If done correctly, all I would have to do is gather translations privately from various people who have already contacted me. Ideally, it will be easy to update and append translated text through external data files.

So, that is that.

Tuesday, November 7, 2017

Two Goats

Goat Mechanic has been updated and Gassy Goat has been released...

Goat Mechanic

I have updated my previous app Goat Mechanic on Google Play and redistributed it on the Apple App Store. It started as a game jam entry that got turned into a standalone app. I integrated Google Admob interstitial (video) ads. Players can wait for in-game currency, or watch a 30 second video ad, or purchase currency with real money. It is a bit shameless, but it works.

This is an older game, written in Lua with the Corona game engine. This project uses a tool called Spriteloq/Animo, used to consolidate the art; the tool no longer exists because it was sold to a company that is no longer in business. Thankfully, I had a backup within the project's depot.

Gassy Goat

At last, Gassy Goat has been released - a game that had been finished for a long time, now available for download on Google Play. I will submit it to the Apple App Store in a week if there are no major issues.

Gassy Goat is an HTML5 game written in Phaser with the language LiveScript that compiles to JavaScript. The code is obfuscated with, and packaged as an Android APK with using the AdMob plugin for interstitial ads. Yes, there are definitely many layers of technology involved here.

...I'm glad to be near the end of list of tasks. Only Pizza Bot remains. There are some older apps that I considered revising, but I have determined it would not be worth the time.

Sunday, October 22, 2017

Zombie Guard update and return to iOS

Zombie Guard has been given a much needed update! I went through and increased the game difficulty, added different controls for vertical movement, updated to the new ads plugin and Corona game engine for many benefits including improved performance.

Updating an app to a new version is a bit slippery. I had to carefully ensure that the game can handle the save files of the previous version. Plus, upgrading to the new AdMob plugin had issues. Is any of this difficult to program? No, but there is zero room for error because the update will gradually affect up to 50,000 current users.

The app recently was declared an Editor's Choice through Google in the category of zombie games. Recognition like this, and all the YouTube videos of players enjoying my work is what motivates me to continue.

Due to this article, I have improved the default controls for movement by allowing pinpointed touch location rather than buttons. Plus, all buttons can be enlarged which might feel more comfortable on smaller phones. Settings can be changed back through the options.

Zombie Guard sits at a million downloads on Google Play. It is making its way back onto the Apple iOS app store (and most of my other apps). Building the app even through the Corona engine requires a modern Mac, so I'll be renting and connecting remotely to one through To my surprise, Corona already is installed.

Saturday, October 14, 2017

All settled in

A few days ago I have settled into a long term apartment in Chiang Mai! Basically everything has gone as planned. My first week in Chiang Mai was enjoyed, taking in as many sights and sounds as possible (photos link) and apartment hunting. Now, the long term lifestyle has kicked in.

The view from my balcony on the 8th (top) floor.

Inside the furnished room.

This residence is called The Dome, in an ideal location. It allows daily, short-term, and long-term rentals, priced accordingly. I opted for a standard room which is more than enough for me. I viewed about 10 apartment buildings. This one is newer and much cleaner, so it feels more welcoming as a home and office should.

Evidently how this building got its name.
It comes furnished with a king-size bed, flat TV (secondary monitor), wardrobe, large desk, bed side tables, fridge. Additionally, a dedicated router and microwave for heating food and water for coffee and tea. Each unit has its own bathroom. Downstairs is an American style cafe, lounge area, small laundromat, and small gym. Drinking water dispensers, cafes, grocery store, and restaurants are around the corner.

The monthly cost for this standard room is 6000THB a month, which is about 180USD. Plus, electric and additions, so the total is only 220USD a month. If you venture further away from the city center, there are some luxury apartments (video link) at about the same price point.

So far I have been very glad to have made this life changing transition. I have rescheduled my first border run to be in Siem Reap, Cambodia to see the Angkor Wat following a couple days in Bangkok to attend SIGGRAPH Asia 2017 that I just found out about.

Friday, September 22, 2017

New avenues, new inner perspective

So there I was, sitting in the communal lounge area of a New York City hotel. The lobby was filled with chit chat, microwave beeps, and reverberated sound effects of the nearby TV. I made small talk with a few other guests. On the table before me was my laptop, a cup of coffee, and some dinner purchased from around the block. Easily I was typing away code. It was a very comfortable environment; a fresh ambiance with beneficial distractions.

I picked up my approved visa the following morning and stopped in to visit the inside of the United Nations and several shops, between first and second avenue. I was a newcomer to that part of the city. Google Fit recorded over 20 miles walked, where I definitely "stopped to smell the roses" along the way. I allowed my feet to rest while riding on public transit back home to Pennsylvania with my laptop open, and fingers typing away Unity scripts.

Monday, August 28, 2017

Pizza Bot

This next project 16 will be a small arcade style shooter for mobile phones! Control a flying bot that is on a quest to deliver a pizza! Sounds easy enough..? But other competing corporations have deployed their own drones to intervene an otherwise simple task. There will be three bosses and continuous play for competitive high scores.


In-game shop interface

Spine for all animation

Clip Studio for all the art


This game is written in C# using Visual Studio Code which I really like for being lightweight and powerful. Unity is component driven, and I forced myself to embrace the paradigm. It gets easier to implement additional enemies because it is just a matter of dragging and dropping existing components from my library. Also tiny bits of polish like spasm animations and fades can be easily sprinkled on arbitrary game objects.

This small mobile game is serving as a great learning experience for my next ambitious title. Still, despite all the newness, it does not take long until it just becomes a familiar environment, and a huge mountain of work.

I had been using Adobe Animate for HTML5 and CocoonJS to package the web games as apps. It works, but seems like a precarious setup; I am weary of support on particular phones. I wanted to play it safer with Unity - a more recognized and well-funded engine that now has a more stable HTML5 export option, with direct support to build native apps.


The art is an intentional simplified style through Clip Studio Paint, so I would not obsess over the colors and lines in this small project. It is supposed to look like ink and watercolor on grid paper, and it is fairly convincing when viewed on a phone or tablet.

For animation, I bought a license for the Spine tool. It is a rather intimidating tool, but took only a day to get the hang of.


This game is heavily based on the Web game Frantic Frigate with a different theme and style. Actually at first I had started a hotel management game, but that would have been an excessive undertaking because my previous apps need some time and maintenance.

A scrapped prototype

Still, I think most of my games are a bit too casual, easy, simple, and even childish. Frequently I have wanted to branch into deeper territory through darker themes and games that evoke emotional responses. Then there is the other side of me that wants to sell out by making more casual defense-genre games.


I feel secure by continuing to focus on apps for Google Play, monetized with Google AdMob and in-app purchases. Immediately following this project, I will go back and update all my apps with in-game video ads or banners to further boost my income. I came out empty handed with other networks like (*cringe*) RevMob. I am wondering if I can deploy my future Unity games onto the Web with AdMob as well.


It is just a matter of plowing through all this work. I am securing my current and previous projects, in order to create a blank slate when I go abroad. I believe an appropriate environment can play a huge role in being open and creative. Despite being an introvert, I actually draw a great deal of energy from the hustle and bustle of cities - the lights, sounds, aromas; it is incredibly inspiring. Plus on the contrary, having my own furnished and minimal apartment will allow me to be closed, disciplined, and focused.